我知道使用get\u pressed方法来测试是否有任何按钮被按下,但是我不能让它在类函数中工作。你知道吗
class MainCharacter (pg.sprite.Sprite):
def __init__(self, pos, direction, images, *groups):
pg.sprite.Sprite.__init__(self, *groups)
self.direction = direction
self.images = images
self.image = self.images[self.direction]
self.rect = self.image.get_rect(topleft=pos)
def get_event(self, event):
keys = pg.key.get_pressed()
if keys[pg.K_a]:
self.direction = "left"
self.rect.move_ip(-6, 0)
elif keys[pg.K_d]:
self.direction = "right"
self.rect.move_ip(6, 0)
elif keys[pg.K_w]:
self.rect.move_ip(0, -6)
self.direction = "up"
elif keys[pg.K_s]:
self.direction = "down"
self.rect.move_ip(0, 6)
self.image = self.images[self.direction]
每次我按下一个按钮,精灵仍然会移动6个空格,而且不会流畅地移动。你知道吗
从您的代码中,我只能猜测只有在处理(keydown)事件时才调用
get_event
。你知道吗将
get_event
重命名为update
,并将其称为everyframe,如下所示:而不是
相关问题 更多 >
编程相关推荐