Structure de base
La structure de base d'un script sur AnkaBot PC.
Définition - Fonction
Une fonction est un terme générique qui désigne une partie d'un programme indépendant qui peut être appelée par un autre programme ou par elle-même. ( dans ce cas, on dit qu'il y a récursivité )
Une fonction ( aussi appelé "routine" ), est une portion de code représentant un bloc et contenant un sous programme.
Suivant le langage utilisé et plus généralement en POO, on parlera aussi de méthode.( voir § suivant )
Mais pour ce qui nous intéresse ici, le langage LUA, nous parlerons tout simplement de fonction.
On envoie à une fonction des "paramètres". (param)
Cette fonction va recevoir et traiter des "arguments". (arg)
Et cette fonction va retourner ( ou pas ), des "résultats". (return)
La syntaxe pour définir une fonction est :
Voici un exemple de fonction appliquée à AnkaBot :
AnkabotPC nécessite une structure de base, de la même manière que la structure de base d’une maison.
Cette structure est la suivante:
Les trois première fonctions sont appelées par AnkaBot à chaque changement de carte.
La fonction stopped() est appelée lorsque le script est arrêté brusquement.
La fonction banned() est appelée lorsque votre compte subi un bannissement.
Fonction « Move »
La fonction move contient plusieurs types d’actions.
Les déplacements sans action.
Les déplacements avec récolte.
Les déplacements avec combat.
Les déplacements avec récolte et combat.
Les actions customisées.
C’est cette fonction qui est la plupart du temps appelée à chaque changement de carte.
Fonction « Bank »
La fonction bank ne contient que trois types d’actions.
Les déplacements sans action en direction de la banque.
Le dialogue avec le banquier pour vider son inventaire.
L’accès au coffre d’une maison.
Les actions customisées.
Elle est appelée lorsque le pourcentage de retour en banque est atteint. Si le pourcentage est à 90%, alors lorsque le personnage atteindra 90% ou plus dans son inventaire, AnkaBot appellera la fonction bank à la place de la fonction move.
Fonction « Phenix »
La fonction phenix ne contient, elle aussi, que trois types d’actions.
Les déplacements sans action en direction du phenix.
L’utilisation du phœnix pour se réanimer.
Les actions customisées.
Elle est appelée lorsque le personnage est un fantôme. La fonction move sera ensuite rappelée lorsque le personnage se sera réanimé avec un phœnix.
Fonction « Mule_lost »
Cette fonction est exécutée si une mule n'a pas rejoint le chef dans le temps requis (ce temps est contrôlé par la variable global ANKABOT_TIMEOUT), et sera exécutée à chaque changement de carte jusqu'à ce que la mule arrive chez le chef.
Pour Dofus 2.0 qui contient l'auto-pilotage, la manière la plus simple est de faire ça :
Selon vos script, le bout de script ci-dessus peut ne pas marcher (peut etre il faut passer par un Zaap, havre sac etc ...) et donc c'est à vous dans ce cas de choisir soigneusement les actions à faire pour rejoindre le chef.
La syntaxe :
return {
{ map = "X", path = "Y" },
}
Ne marche pas pour la fonction mule_lost(), elle est réservée seulement pour move(), bank() et phenix().
Exemple :
Dernière mise à jour