我正在尝试制作一个与项目的蛇游戏类似概念的游戏。我要做到这样,当玩家“吃”“食物”时,另一人随机出现在其他地方。
我从这里和其他来源尝试了一些代码,但是我似乎无法使其运行。总是会有不同的错误。
这是我现在使用的代码。我是从网上获得的,它对这个人有用,但对我却不起作用。我的猜测是list.remove
可能是此代码的问题,但我不知道如何编辑它:
food_collide = pygame.sprite.spritecollide(player,food_list,False)
for food in food_collide:
score += 1
food_list.remove(food)
all_sprite_list.remove(food)
food.update()
all_sprite_list.update()
答案 0 :(得分:1)
在我看来,杀死前一个Food()
实例(被玩家吃掉)后,您再也不会创建它的新实例。因此很明显,该游戏不会产生新的食物。
此for food in food_collide
的快速修复应该可以起作用:
for food in food_collide:
score += 1
food_list.remove(food)
newfood = Food()
food_list.add(newfood)
all_sprite_list.add(newfood)
all_sprite_list.remove(food)
food_list.update()
all_sprite_list.update()