[RÈSOLU] Laisse le au Couperet

Je suis coincé sur le niveau “Laisse le au Couperet” (Python)
Est ce que quelqu’un peut m’aider ?

Salut @Qwerty039 et bienvenue sur le forum! :partying_face:

Pourriez-vous nous envoyer votre code afin que nous puissions l'examiner et vous dire ce qui ne va pas?

Ceci montre comment définir une fonction appelée cleaveWhenClose

Cette fonction définit un paramètre appelé target

def cleaveWhenClose(target):
if hero.distanceTo(target) < 5:
pass
# Mets ton code d’attaque ici
# Si fendre (cleave) est prêt (isReady), alors cleave target
while True:
target
if hero.isReady(“cleave”):
hero.cleave(“target”)

    else:
                hero.attack("target")

Ce code ne fait pas partie de la fonction.

while True:
enemy = hero.findNearestEnemy()
if enemy:
# Note qu’à l’intérieur de la fonction cleaveWhenClose, nous faison référence à enemy sous l’appellation target.
cleaveWhenClose(enemy)

Pourriez-vous formater votre code comme il est expliqué ici?

Je formate le code pour vous, mais c’est la seule fois que je le fais.

# Ceci montre comment définir une fonction appelée cleaveWhenClose

# Cette fonction définit un paramètre appelé `target`

def cleaveWhenClose(target):
    if hero.distanceTo(target) < 5:
        pass
        # Mets ton code d’attaque ici
        # Si fendre (cleave) est prêt (isReady), alors cleave target
        while True
            target
            if hero.isReady(“cleave”):
                hero.cleave(“target”)
            else:
                hero.attack("target")

# Ce code ne fait pas partie de la fonction.

while True:
    enemy = hero.findNearestEnemy()
    if enemy:
        # Note qu’à l’intérieur de la fonction c leaveWhenClose, nous faison référence à `enemy` sous l’appellation `target` .
        cleaveWhenClose(enemy)

Si vous supprimez les deux lignes qui contiennent ces mots et supprimez 4 espaces avant ces lignes, votre code devrait fonctionner correctement.

Faites-moi savoir si vous avez besoin d’aide à ce niveau, d’accord?

1 Like

Bonjour.
Merci pour votre réponse mais je n’y arrive toujours pas.
Pouvez-vous m’aider ?
Voilà mon code :

enemy = hero.findNearestEnemy()
def cleaveWhenClose(target):
    if hero.distanceTo(enemy)< 5 :
        
        # Mets ton code d’attaque ici
        # Si fendre (cleave) est prêt (isReady), alors cleave target
        while True:
                if hero.isReady("cleave"):
                    hero.cleave(target)
                else:
                    enemy = hero.findNearestEnemy()
                    hero.attack(target)
                    hero.attack(target)
                    hero.maxHealth
                    
                    
                    

         
               
    
# Ce code ne fait pas partie de la fonction.
while True:
    enemy = hero.findNearestEnemy()
    if enemy:
        # Note qu'à l'intérieur de la fonction cleaveWhenClose, nous faison référence à `enemy` sous l'appellation `target`.
        cleaveWhenClose("target")

Merci d’avance ! :slightly_smiling_face:

Cette boucle s’exécute à l’infini mais vous ne le voulez pas, n’est-ce pas?

Ici, mettez uniquement l’attaque la partie cible du code.

Andrei

1 Like

Non.
Apparament le probleme semble se situer a la 3 eme ligne.

Pourquoi utilisez-vous l’ennemi au lieu d’utiliser la cible?

Andrei

Ca ne marche pas non plus !

Pouvez-vous m’indiquer tout ce qu’il faut faire ?

Mon code actualisé : ( la 3 eme ligne buegue)

enemy = hero.findNearestEnemy()
def cleaveWhenClose(target):
   if hero.distanceTo(target)< 5 :
       
       # Mets ton code d’attaque ici
       # Si fendre (cleave) est prêt (isReady), alors cleave target
       while True:
               if hero.isReady("cleave"):
                   hero.cleave(target)
               else:
                   enemy = hero.findNearestEnemy()
                   hero.attack(target)
                   hero.attack(target)
                   hero.maxHealth
                   
                  

Vous avez supprimé le mauvais. Supprimez celui de la fonction à la place et mettez cela alors que Vrai que vous avez supprimé.

Andrei

Mais ne supprimez pas le texte qui se trouve dans la boucle while True.

Andrei

Merci @AnSeDra , je vais essayer.

1 Like

J’AI GAGNE !!! :smiley: :smiley: :smiley: :smiley:

Merci @AnSeDra !!!

1 Like

Aucun problème! Et félicitations pour avoir terminé le niveau! :partying_face:

Andrei

1 Like

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