我正在尝试使用Pygame构建一个小游戏,用户将上下移动直升机并按空格键射击子弹。我已经将子弹图像安装到程序中并使用pygame.key.get_pressed
设置起始X和Y,但是我试图这样做,这样可以同时在屏幕上拍摄多个子弹。这是处理我制作的子弹的代码的两个部分,但它们只有一个子弹的容量,当我再次按空格时,子弹再次出现并重新启动它的运动。
pygame.key.get_pressed
...
if keys[pygame.K_SPACE]:
Bullet = pygame.image.load("Images/Bullet.png")
BulletX = HELICOPTERX
BulletY = HelicopterY + 15
BulletShoot = True
...
if BulletShoot == True:
BulletX += 5
SURF.blit(Bullet, (BulletX, BulletY))
if BulletX >= 800: #800 is the width of the screen
BulletShoot = False
答案 0 :(得分:2)
您需要创建项目符号列表,而不是将每个项目符号属性存储在单独的变量中。当子弹的x坐标超过800时,从列表中删除子弹。