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


Python Sprite.kill方法代码示例

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


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

示例1: update

# 需要导入模块: from pygame.sprite import Sprite [as 别名]
# 或者: from pygame.sprite.Sprite import kill [as 别名]
    def update(self, dt):
        vx = self.vx
        vy = self.vy

        dt /= 1000.0
        dx = int(self.vx * dt)
        dy = int(self.vy * dt)
        self.rect.x += dx
        self.rect.y += dy

        if self.rect.left < self.bounds.left or self.rect.right > self.bounds.right:
            self.vx = -self.vx
            self.rect.x += -2 * dx

        if self.rect.top < self.bounds.top :
            self.vy = -self.vy
            self.rect.y += -2 * dy
        if self.rect.top > self.bounds.bottom+20:
            Sprite.kill(self)
            death_sub()

        if vx != self.vx or vy != self.vy:
            if vx != self.vx:
                vx = self.vx
                vy = -vy
            else:
                vx = -vx
                vy = self.vy
开发者ID:jackerma,项目名称:CS112-Spring2012,代码行数:30,代码来源:main.py

示例2: update

# 需要导入模块: from pygame.sprite import Sprite [as 别名]
# 或者: from pygame.sprite.Sprite import kill [as 别名]
    def update(self, current_time):
        '''The skeleton has three states (not implemented through a state machine): 
          * In free fall without touching any floor
          * Over some floor, being slowly buried. It scares the cavemen.
          * Deep into the ground. When the skeleton reaches this state it stops being a sprite and it becomes an fixed image. It also stops scaring the Cavemen.'''
        if hasattr(self,'current_floor'):
            #If it is here, then it means it is over some floor.
            if self.get_position()[1]<self.current_floor.get_position()[1]+5:
                #If the skeleton is not deep enough, it gets burried at a fixed rate
                if current_time>self.last_update+self.update_interval:
                    self.set_position([self.get_position()[0], self.get_position()[1]+1])
                    self.last_update=current_time
                    return
            else:
                #if the skeleton is deep enough, it stops scaring Cavemen and becomes a fixed image instead of a sprite.
                self.current_floor.death_toll-=1
                self.current_floor.image.blit(self.image, [self.rect[0]-self.current_floor.rect[0], self.rect[1]-self.current_floor.rect[1]])
                del self.body
                Basic_Actor.level.with_body.remove(self)
                Basic_Actor.level.all.remove(self)
                Basic_Actor.level.visible.remove(self)
                Sprite.kill(self)
        elif hasattr(self, 'body') and (self.body.get_velocity()-vec2d(0,0)).get_length()<0.01:
            #If the skeleton has a physical body and is not falling then it must mean it is over a floor, and gets attached to it, increasing its death_toll. It also removes its body so the physics engine doesn't affect it anymore. 
            floor_collisions=Basic_Actor.State_Machine.floor_collisions
            collision_data=floor_collisions.pop(self.id, None)
            if collision_data is None: return
            self.current_floor=self.get_sprite(collision_data[1])
            space=Basic_Actor.level.space
            space.remove_shape(self.shape)
            space.remove_body(self.body)

            self.current_floor.death_toll+=1
        else:
            return
开发者ID:kakila,项目名称:cavemen,代码行数:37,代码来源:sprites.py

示例3: shieldcheck

# 需要导入模块: from pygame.sprite import Sprite [as 别名]
# 或者: from pygame.sprite.Sprite import kill [as 别名]
 def shieldcheck(self):
     if self.duration == 1:
         coll = pygame.sprite.spritecollide(self, ShieldGroup.shields, False, collide_meteor_shield)
         for shield in coll:
             if shield.kind == "cigar":
                 Sprite.kill(self)
                 pygame.draw.line(pygame.display.get_surface(), (255,0,0), self.rect.center, shield.rect.center, 3)
开发者ID:Grug16,项目名称:Save-the-Robots-Game,代码行数:9,代码来源:meteors.py

示例4: update

# 需要导入模块: from pygame.sprite import Sprite [as 别名]
# 或者: from pygame.sprite.Sprite import kill [as 别名]
    def update(self, dt):
        vx = self.vx
        vy = self.vy
        if randrange(60) == 0:
            self.vx = -self.vx

        if self.vx > 0:
            self.image = self.orig_image
        else:
            self.image = self.flipped_image

        dt /= 1000.0
        dx = int(self.vx * dt)
        dy = int(self.vy * dt)
        self.rect.x += dx
        self.rect.y += dy

        if self.rect.left < self.bounds.left or self.rect.right > self.bounds.right:
            self.vx = -self.vx
            self.rect.x += -2 * dx

        if self.rect.top < self.bounds.top:
            self.vy = -self.vy
            self.rect.y += -2 * dy
        if self.rect.top > self.bounds.bottom + 20:
            Sprite.kill(self)
            death_sub()

        if vx != self.vx or vy != self.vy:
            if vx != self.vx:
                vx = self.vx
                vy = -vy
            else:
                vx = -vx
                vy = self.vy
开发者ID:jwsander,项目名称:CS112-Spring2012,代码行数:37,代码来源:main.py

示例5: checkshield

# 需要导入模块: from pygame.sprite import Sprite [as 别名]
# 或者: from pygame.sprite.Sprite import kill [as 别名]
 def checkshield(self):
     coll = pygame.sprite.spritecollide(self, ShieldGroup.shields, False, collide_meteor_shield)
     for shield in coll:
         for shield in coll:
         #Turn into objects later on.
             if shield.kind == "cigar":
                 Sprite.kill(self)
                 pygame.draw.line(pygame.display.get_surface(), (255,0,0), self.rect.center, shield.rect.center, 3)
开发者ID:Grug16,项目名称:Save-the-Robots-Game,代码行数:10,代码来源:meteors.py

示例6: kill

# 需要导入模块: from pygame.sprite import Sprite [as 别名]
# 或者: from pygame.sprite.Sprite import kill [as 别名]
    def kill(self):
        burger2 = Burger(self.rect.x, self.rect.y, self.bounds)
        burger3 = Burger(self.rect.x, self.rect.y, self.bounds)

        for group in self.groups():
            group.add(burger2)
            group.add(burger3)

        Sprite.kill(self)
开发者ID:Werefriend,项目名称:CS112-Spring2012,代码行数:11,代码来源:shmup.py

示例7: kill

# 需要导入模块: from pygame.sprite import Sprite [as 别名]
# 或者: from pygame.sprite.Sprite import kill [as 别名]
    def kill(self):
        #self.explode = Surface(self.size)
        if self.kind == "rock":
            ImpactGroup.impacts.add(Impact (self.rect.center, self.bounds, 4, self.kind))
        if self.kind == "ice":
            ImpactGroup.impacts.add(IceImpact (self.rect.center, self.bounds, 30, self.kind, 0))
            ImpactGroup.impacts.add(IceImpact (self.rect.center, self.bounds, 30, self.kind, 1))
            ImpactGroup.impacts.add(IceImpact (self.rect.center, self.bounds, 30, self.kind, 2))
            ImpactGroup.impacts.add(IceImpact (self.rect.center, self.bounds, 30, self.kind, 3))

            
        Sprite.kill(self)
开发者ID:Grug16,项目名称:Save-the-Robots-Game,代码行数:14,代码来源:meteors.py

示例8: update

# 需要导入模块: from pygame.sprite import Sprite [as 别名]
# 或者: from pygame.sprite.Sprite import kill [as 别名]
    def update(self, dt):
        dt /= 1000.0
        dx = int(self.vx * dt)
        dy = int(self.vy * dt)
        self.rect.x += dx
        self.rect.y += dy

        if self.rect.left < self.bounds.left or self.rect.right > self.bounds.right:
            self.vx = -self.vx
            self.rect.x += -2 * dx

        if self.rect.top < self.bounds.top :
            self.vy = -self.vy
            self.rect.y += -2 * dy
        if self.rect.top > self.bounds.bottom+20:
            Sprite.kill(self)
开发者ID:jwsander,项目名称:CS112-Spring2012,代码行数:18,代码来源:ships.py

示例9: kill

# 需要导入模块: from pygame.sprite import Sprite [as 别名]
# 或者: from pygame.sprite.Sprite import kill [as 别名]
 def kill(self):
     ImpactGroup.impacts.add(RadiationImpact (self.rect.center, self.bounds, 300, self.kind))
     Sprite.kill(self)
开发者ID:jlevey3,项目名称:Save-the-Robots-Game,代码行数:5,代码来源:meteors.py

示例10: remove_from_groups

# 需要导入模块: from pygame.sprite import Sprite [as 别名]
# 或者: from pygame.sprite.Sprite import kill [as 别名]
 def remove_from_groups(self):
     Sprite.kill(self)
开发者ID:hectorsanchez,项目名称:acheckersgame,代码行数:4,代码来源:checker.py

示例11: on_death

# 需要导入模块: from pygame.sprite import Sprite [as 别名]
# 或者: from pygame.sprite.Sprite import kill [as 别名]
	def on_death(self):
		Sprite.kill(self)
开发者ID:ceronman,项目名称:twsitemall,代码行数:4,代码来源:character.py

示例12: kill

# 需要导入模块: from pygame.sprite import Sprite [as 别名]
# 或者: from pygame.sprite.Sprite import kill [as 别名]
 def kill(self):
     Sprite.kill(self)
     Ship.death_count.inc()
     return self.explosion_type(self)
开发者ID:HampshireCS,项目名称:cs143-Spring2012,代码行数:6,代码来源:shiphunt.py

示例13: kill

# 需要导入模块: from pygame.sprite import Sprite [as 别名]
# 或者: from pygame.sprite.Sprite import kill [as 别名]
	def kill( self ): 
		log.debug( 'stripe getting killed' )
		Sprite.kill(self)
		controller = mvcState.GetController()
		controller.gameEventListeners.remove(self)
开发者ID:sjbrown,项目名称:steam_jet_blower,代码行数:7,代码来源:objects.py

示例14: kill

# 需要导入模块: from pygame.sprite import Sprite [as 别名]
# 或者: from pygame.sprite.Sprite import kill [as 别名]
 def kill(self):
     xplo = self.explosion_type(self.rect.center, self.explosion_radius)
     Explosion.group.add(xplo)
     Sprite.kill(self)
开发者ID:jlevey3,项目名称:CS112-Spring2012,代码行数:6,代码来源:main.py


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