当前位置: 首页>>代码示例>>Python>>正文


Python Actor.take_damage方法代码示例

本文整理汇总了Python中actor.Actor.take_damage方法的典型用法代码示例。如果您正苦于以下问题:Python Actor.take_damage方法的具体用法?Python Actor.take_damage怎么用?Python Actor.take_damage使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在actor.Actor的用法示例。


在下文中一共展示了Actor.take_damage方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: take_damage

# 需要导入模块: from actor import Actor [as 别名]
# 或者: from actor.Actor import take_damage [as 别名]
 def take_damage(self, damage):
     newProj = []
     if damage < 0:
         #spawn new things
         if self.split == 0:
             newProj.append(WhiteCellProj(self.rect.x + 52, self.rect.y, self.xvel, self.yvel, 1))
             newProj.append(WhiteCellProj(self.rect.x + 52, self.rect.y + 16, self.xvel/2, self.xvel/2, 2))
             newProj.append(WhiteCellProj(self.rect.x + 52, self.rect.y - 16, self.xvel/2, -self.xvel/2, 2))
         elif self.split == 1:
             newProj.append(WhiteCellProj(self.rect.x + 52, self.rect.y + 16, self.xvel/2, self.xvel/2, 2))
             newProj.append(WhiteCellProj(self.rect.x + 52, self.rect.y  - 16, self.xvel/2, -self.xvel/2, 2))
             
         Actor.take_damage(self, damage)
     return newProj
开发者ID:Ahumm,项目名称:Tumor-Raider,代码行数:16,代码来源:WhiteBloodCell.py

示例2: take_damage

# 需要导入模块: from actor import Actor [as 别名]
# 或者: from actor.Actor import take_damage [as 别名]
 def take_damage(self, damage):
     if self.immortal > 0:
         pass
     else:
         if self.shield:
             thp = self.health
             self.health = -1
             Actor.take_damage(self, damage)
             if self.health != 0:
                 self.health = thp
         else:
             Actor.take_damage(self, damage)
             #if self.health <= 0:
             #    print "died"
             #elif self.buzzcount == 0:
             if self.health > 0 and self.buzzcount == 0:
                 self.buzzcount = self.buzzcountmax
                 self.buzz.play()
开发者ID:Ahumm,项目名称:Tumor-Raider,代码行数:20,代码来源:player.py

示例3: collide

# 需要导入模块: from actor import Actor [as 别名]
# 或者: from actor.Actor import take_damage [as 别名]
 def collide(self, a):
     if isinstance(a, Player):
         if self.phase == 1:
             for i in self.arms:
                 for j in i:
                     radius1 = a.rect.width // 2
                     radius2 = j.rect.width // 2
                     if sqrt(((a.rect.x + radius1)-(j.rect.x + radius2))**2 + ((a.rect.y + radius1)-(j.rect.y + radius2))**2) < (radius1 + radius2):
                         a.take_damage(j.damage)
         radius1 = a.rect.width // 2
         radius2 = self.rect.width // 2
         if sqrt(((a.rect.x + radius1)-(self.rect.x + radius2))**2 + ((a.rect.y + radius1)-(self.rect.y + radius2))**2) < (radius1 + radius2):
             a.take_damage(self.damage)
     else:
         if self.phase == 1:
             for i in self.arms:
                 for j in i:
                     radius1 = a.rect.width // 2
                     radius2 = j.rect.width // 2
                     if sqrt(((a.rect.x + radius1)-(j.rect.x + radius2))**2 + ((a.rect.y + radius1)-(j.rect.y + radius2))**2) < (radius1 + radius2):
                         j.take_damage(a.damage)
                         proj = a.take_damage(-1)
                         if proj:
                             return proj
         if self.phase == 0:
             radius1 = a.rect.width // 2
             radius2 = self.eyerect.width // 2
             if sqrt(((a.rect.x + radius1)-(self.eyerect.x + radius2))**2 + ((a.rect.y + radius1)-(self.eyerect.y + radius2))**2) < (radius1 + radius2):
                 a.take_damage(-1)
                 Actor.take_damage(self, a.damage)
         radius1 = a.rect.width // 2
         radius2 = self.rect.width
         if sqrt(((a.rect.x + radius1)-(self.rect.x + radius2))**2 + ((a.rect.y + radius1)-(self.rect.y + radius2))**2) < (radius1 + radius2):
             a.take_damage(-1)
             if self.phase == 2:
                 Actor.take_damage(self, a.damage)
开发者ID:Ahumm,项目名称:Tumor-Raider,代码行数:38,代码来源:boss.py

示例4: take_damage

# 需要导入模块: from actor import Actor [as 别名]
# 或者: from actor.Actor import take_damage [as 别名]
 def take_damage(self, damage=0):
     Actor.take_damage(self, damage)
开发者ID:Ahumm,项目名称:Tumor-Raider,代码行数:4,代码来源:projectile.py


注:本文中的actor.Actor.take_damage方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。