首页 > 解决方案 > 在pygame中制作游戏

问题描述

您好,我正在 pygame 上为大学制作一个典型的防御者街机游戏。我目前的目标是让游戏在玩家失去生命时暂停并显示一条消息,并在按下一个键时恢复下一个生命。这是 hp 和生命的代码:

hit = pygame.sprite.spritecollide(shuttle,sprites, True)
if hit:
   shuttle.damage += 10 #increase damage
   tesla_sprite1 = aliens.Alien(screen, ai_settings, random.randrange(800, 
   ai_settings.screen_width),random.randrange(0, ai_settings.screen_height))
   sprites.add(tesla_sprite1)

if shuttle.damage == 100:
       shuttle.damage = 0
       you_crashed = "You have crashed!"
       you_crashed_label = crash_font.render(f"{you_crashed}",1, (255,0,0))
       screen.blit(you_crashed_label, (ai_settings.screen_width - 800, ai_settings.screen_height / 2))

Shuttle 是一个类的实例,damage 是 hp,sprites 是一个包含敌人的 sprite 组。ai_settings 是一个不同的模块,我从中借用变量。有什么建议么?

标签: pythonpygame

解决方案


要创建弹出菜单并停止游戏,您必须实现按钮并在主循环中嵌入内部 while 循环。您可以在该循环中绘制按钮,还可以检测鼠标输入。当按钮被按下时,只需改变游戏状态并从内部循环中中断。


推荐阅读