Мне удалось создать способ доступа к каждому врагу в списке и определить, был ли он поражен ... Я думаю ... Помимо проблемы. Моя проблема в том, что каждый раз, когда я хочу создать более одного врага, я получаю ошибку «Враг не вызываемый объект»
Честно говоря, я не знаю, что здесь происходит не так. Я просмотрел другие посты, и в одном подобном посте рассказывалось о том, что «я не делаю свой объект = что-то еще». Однако мой объект не вызывается нигде, кроме того, где он добавляется в список.
вне петли
Enemies = []
print("Enemies at start: ",len(Enemies))
Возвращает "0"
Создание врага внутри цикла while
if len(Enemies) <= 5:
Enemies.append(Enemy(random.randint(0,500),-50,70,70))
#Spawns an enemy while the list is still less than 5 not really relevant and should be removed after code below is fixed.
print("Enemies at creation point: ",len(Enemies))
for Enemy in Enemies:
#Enemies.append(Enemy(random.randint(0,500),-50,70,70))
print("Created")
if Enemy.health <= 0:
Enemies.pop(Enemies.index(Enemy))
print("Destroyed")
else:
print("Skipping")
Ошибка: объект «враг» не может быть вызван
Я ожидаю, что вывод просто вызовет этих врагов на экране в случайных позициях. Пока 5 не существуют одновременно. Таким образом, в начале, он не будет больше порождать врагов. Однако, когда один уничтожается, появляется новый.