如何解决Pygame - 在按键时更改图像文件夹中的图像
这是我迄今为止尝试过的代码,
filesList = [x for x in os.listdir(".\\images")]
fileNames = [x.split(".")[0] for x in os.listdir(".\\images")]
itemsDict = {k: v for k,v in zip(filesList,fileNames)}
itemList = list(itemsDict.keys())
shuffle(itemList)
for item in itemList:
image = pygame.image.load(item)
#Game Loop
running = True
while running:
# Background Image
screen.blit(background,(0,0))
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit(0)
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_SPACE:
running = False
每次我打破游戏循环加载下一张图片时。而且我不想在 Class(sprite) 中使用 random.choice 或选择,基于按键更新图像(以避免重复图像)。
寻找解决方案,例如在不中断循环的情况下,让精灵类在按键时从文件夹中一个一个地更新图像(如果 event.key == pygame.K_SPACE :)
解决方法
我认为您不应该在 foreach 循环中运行多个 while 循环,而是创建一个图像对象,您可以在其中保存当前图像,然后在按键时将该图像更改为下一个图像。
要获得下一张图像,您可以使用一些索引变量并将其计数
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。