Hi everyone, I don’t understand my code for this level
# Gather coins to summon soldiers and have them attack the enemy. while True: # Move to the nearest coin. # Use move instead of moveXY so you can command constantly. coin = hero.findNearestItem() if coin: hero.move(coin.pos) hero.say("I need coins!") # If you have funds for a soldier, summon one. if hero.gold > hero.costOf("soldier"): hero.say("I should summon something here!") hero.summon("soldier") enemy = hero.findNearest(hero.findEnemies()) if enemy: soldiers = hero.findFriends() soldierIndex = 0 # Loop over all your soldiers and order them to attack. while soldierIndex < len(soldiers): soldier = soldiers[soldierIndex] hero.command(soldier, "attack", enemy) soldierIndex += 1 # Use the 'attack' command to make your soldiers attack. #hero.command(soldier, "attack", enemy)
This was my original code but my soldiers were not attacking enemies and my hero was stuck.
hero.say("I need coins!") and
hero.say("I should summon something here!") and it worked but I don’t understand why.
I thought the say function shouldn’t affect other functions.