0

敵を倒すと、さらに 2 体が代わりになるゲームを作成しようとしています。モブの数が無限にあるため、それを打ち負かすことはできません。私の問題は、新しいモブのスポーンを得ることです。また、古いモブの位置にぶつかると、再び現れてプレイヤーを追いかけ始め、殺すことはできません。これが私がこれまでに持っているものです:

【モブクラス】

class MOB(pygame.sprite.Sprite):
    def __init__(self, location):
        self.pos = [0,0]
        self.image = ENEMY
        pygame.sprite.Sprite.__init__(self)
        self.rect = self.image.get_rect()
        self.rect.center = location
        self.speed = random
        self.hp = 4
    def update(self):
        if self.rect.centerx >= Player.rect.centerx:
            self.rect.left = self.rect.left - 4
        if self.rect.centerx <= Player.rect.centerx:
            self.rect.left = self.rect.left + 4
        if self.rect.centery <= Player.rect.centery:
            self.rect.top = self.rect.top + 4
        if self.rect.centery >= Player.rect.centery:
            self.rect.top = self.rect.top - 4

【暴徒を撃つ】

for Mob in mobs:
    if pygame.sprite.collide_rect(Bullet, Mob) == True:
        mobs.remove(Mob)
        Bullet.image = NOBULLET
        Mob.hp = Mob.hp - 2

【モブを倒す】

for Mob in mobs:
    if Mob.hp == 0:
        mobs.remove(Mob)
            new_mobs = MOB([50,50]), MOB([51, 300]) 
            mobs.add(new_mobs)

【更新画面】

mobs.update()
mobs.draw(screen)
4

0 に答える 0