Ice Hunter with soldiers [Python]

I wanted to solve this level by summoning soldiers but I got an error message when the first yak die.
TypeError Need a object
for the ligne : hero.attack(enemy)

If you have any insight I would be glad


# Hunt for 4 yaks. Choose only the small ones.
# Small yak names contain a "bos" substring.

# This function checks if a word contains a substring.
def isSubstring(word, substring):
    # We iterate through the start indexes only.
    rightEdge = len(word) - len(substring)
    # Loop through the indexes of the word.
    for i in range(rightEdge + 1):
        # For each of them loop through the substring
        for j in range(len(substring)):
            # Use an offset for the word's indexes.
            shiftedIndex = i + j
            # If letters aren't the same:
            if word[shiftedIndex] != substring[j]:
                # Check the next start index in the word.
            # If it was the last letter in the substring:
            if j == len(substring) - 1:
                # Then the substring is in the word.
                return True
    # We haven't found the substring in the word.
    return False

# Loop through all enemies.
enemies = hero.findEnemies()
for e  in range(len(enemies)):
    enemy = enemies[e]
    # Use the function isSubstring to check
    # if an contains "bos":
    if isSubstring(, "bos"):
        # Then defeat it.
        while > 0:
            while hero.costOf("soldier") <
                soldiers = hero.findFriends()
                for i in len(soldiers):    
                    hero.command(soldiers[i], "attack", enemy)

Bonjour @Nico, et bienvenue au forum CodeCombat!
La problem est sur cette ligne:

Ceci n’est pas exactement comment le for loop fonctionne. On doit utiliser range() aussi, comme dans l’autre for loop.
Par exemple:

for x in range(len(enemies)):

Mais avec friends dans le place d’enemies.
J’espère que ça vous aidez.

1 Like

This topic was automatically closed 12 hours after the last reply. New replies are no longer allowed.