我创建了一个pygame,游戏的目标是避免球在屏幕上移动(随机)
ballpic = pygame.image.load('ball.png').convert_alpha()
我有一个等级函数:
def levels(score):
global enemies
global velocity
enemies = enemies
velocity = velocity
#level one
if score >= 500:
enemies = 6
velocity = 2
#level two
if score >= 1000:
enemies = 6
velocity = 2
#....And so on
缩进游戏:///过期/
如果我尝试这样做,就会出现以下错误:
Traceback (most recent call last):
File "C:\Users\MO\Desktop\Twerk\twerk-bck.py", line 252, in <module>
game()
File "C:\Users\MO\Desktop\Twerk\twerk-bck.py", line 199, in game
positionx[i]=positionx[i]+positionxmove[i]
IndexError: list index out of range
我知道我需要在列表中添加新的值以将它们再扩展3个条目。我想达到的目的是在屏幕上增加更多的球。但我不知道怎么做?你知道吗
谢谢
在主循环147之前的第134行初始化
positionx
和friends。然后在循环内调用levels(score)
,这会更新enemies
计数,但实际上不会在positionx
中为额外的敌人分配更多的空间。levels()
应该负责在增加敌人数量时调整阵列的大小。你知道吗正如Lattyware所评论的那样,为每个敌人使用对象将是一个更好的设计。一般来说,如果要保留任何类型的并行数组,如
positionx
和positiony
,则应该用对象数组替换它们。然后range(enemies)
上所有不同的循环将被一个大循环所取代,如:其中
globalGameState
是一个或多个变量,用于跟踪所有敌人的鼠标位置。你知道吗相关问题 更多 >
编程相关推荐