Помогите пройти уровень. Я всю голову сломал, сижу все выходные. Стало очень сложно, может что то упустил?
# Используй цикл `while`, чтобы выбрать огра
while True:
enemies = hero.findEnemies()
enemyIndex = 0
# Расположи это в цикле `while`, чтобы атаковать всех врагов.
# Найди длину массива: len(enemies)
while enemyIndex < len(enemies):
enemy = enemies[enemyIndex]
hero.attack(enemy)
# "!=" значит "не равно".
if enemy.type != "sand-yak":
enemyIndex += 1
# Пока здоровье врага больше 0, атакуй!
if enemy.health > 0:
hero.attack(enemy)
pass
# В перерывах между волнами возвращайся в центр.
hero.moveXY(30, 30)
type or paste code here
# Используй цикл `while`, чтобы выбрать огра
while True:
enemies = hero.findEnemies()
enemyIndex = 0
# Расположи это в цикле `while`, чтобы атаковать всех врагов.
# Найди длину массива: len(enemies)
while enemyIndex < len(enemies):
enemy = enemies[enemyIndex]
# "!=" значит "не равно".
if enemy.type != "sand-yak":
enemyIndex += 1
# Пока здоровье врага больше 0, атакуй!
if enemy.health > 0:
hero.attack(enemy)
pass
# В перерывах между волнами возвращайся в центр.
hero.moveXY(30, 30)
Вы разобрались с пунктом 2, но не сделали 1 или 3:
1 - Все внутри цикла ‘while True’ должно иметь как минимум 1 отступ. На данный момент во втором утверждении ‘while’ этого нет, поэтому оно никогда не выполняется. Всем остальным строкам под этим отступом понадобится ещё один отступ.
3 - Вы увеличиваете ‘enemyIndex’, но только когда враг не является ‘песчаным яком’. Если враг - песчаный як, то enemyIndex не увеличивается, так что код просто продолжает перебираться через этого врага. Это означает, что ваш герой будет стоять там, пока другие враги нападают.
Дженни
You’ve sorted out point 2, but you haven’t done 1 or 3:
1 - Everything inside the ‘while True’ loop needs to have at least 1 indent. At the moment your second ‘while’ statement doesn’t have this, so it never runs. All the other lines below this one will need another indent.
3 - You’re increasing the ‘enemyIndex’, but only when the enemy is not a ‘sand-yak’. If the enemy is a sand-yak, then the enemyIndex isn’t increased, so the code just keeps looping over that enemy. This means your hero will stand there while other enemies attack.