尝试将敌人随机生成到我的平台游戏中时,我当前遇到问题。我有一个具有class Enemy(pygame.sprite.Sprite):
和__init__
功能的敌军阶级move(self)
。目前,我已经分别定义了每个敌人实例:
enemy1 = Enemy(210,515,"Enemy.png")
enemy2 = Enemy(705,515,"Enemy.png")
enemy3 = Enemy(1505,515,"Enemy.png")
在主游戏循环中,我将每个实例附加到组中:
enemy_list = pygame.sprite.Group()
enemy_list.add(enemy1)
enemy_list.add(enemy2)
enemy_list.add(enemy3)
但是我宁愿敌人在随机的时间随机出现在一个随机的位置,所以我希望我可以像这样进行检查:
if random.randrange(0,100) < 1:
spawnEnemy = Enemy(400, 515, "Enemy.png")
我的问题是,我现在不知道如何将随机字符添加到敌人列表中。有什么想法吗?
答案 0 :(得分:0)
如果输入的坐标不正确,则将其传递到class Enemy(pygame.sprite.Sprite):
中进行实例化
在这种情况下,可以通过以下方式进行随机定位:
enemy4 = Enemy(random.randrange(100,1000),random.randrange(100,1000),"Enemy.png")
enemy_list.add(enemy4)
如果您不能对敌人标识符进行硬编码,请尝试不加提示直接添加到敌人组列表中:
enemy_list.add(Enemy(random.randrange(100,1000),random.randrange(100,1000),"Enemy.png"))