所以基本上我只是想创建一个以pygames.sprite.Sprite为父类的敌人类。但后来我想移动我创建的精灵对象,并将其添加到屏幕上。但它说blit不是“Enemy”类的属性。抱歉新问题,但我该如何做呢?
阶级敌人:
class Enemy(pygame.sprite.Sprite):
#Class for falling enemys
def __init__(self):
# initialize the pygame sprite
pygame.sprite.Sprite.__init__(self)
# set image and rect
self.image = pygame.image.load("enemysprite.png").convert()
self.rect = self.image.get_rect()
我打算尝试将精灵广告到屏幕
enemy = Enemy()
enemy.blit(100,100)
pygame.display.update()
答案 0 :(得分:2)
尝试这种方式:
pygame.init()
screen = pygame.display.set_mode([320, 240])
enemy = Enemy()
screen.blit(enemy.image, enemy.rect)
pygame.display.update()
你必须在pygame屏幕中显示精灵图像才能显示它。
答案 1 :(得分:0)
Sprite
可以放在SpriteGroup
s中,它具有很好的功能,但也可以在一批中进行blit。
要移动敌人,请移动Sprite
的矩形。
Enemy.rect.topleft = (100,100)
#draw
Enemy.rect.center = (400,400)
#draw