Projet

Général

Profil

commande de escape et simulate

Ajouté par Gael Hamot il y a plus de 4 ans

La fonction "function AI_do_fight(moi_meme, autre_joueur)" sert-elle seulement a accepter ou refuser un combat contre un ennemi ou allié?

Si c'est bien le cas il faut cree une autre fonction "do_escape(ma_flotte, planète_locale, autres_flottes)" pour utiliser la techno Evasion?
Toujours si c'est bien le cas il faudra changé le commentaire de la fonction "do_fight" car il parle de "fuite" qui peux être confondue avec l'Evasion.

L'action "simulates(ma_flotte, planète, autre_flottes)" peut-elle etre utilisé dans do_fight, do_escape ou bien les 2? Dans les 2 cas elle fait appelle a une/des variables, notamment "planete" qui n'ont pas étais défini plus tot, peut-on juste les ajoutés au départ et dans la parenthèse de "do_escape"?
Pourquoi s'appelle t-elle "planete" et pas "planete_locale" ? peux on simuler un combat contre quelque chose sur une case différente?

l'action "Simulate" rend un résultat entre 0 et 1 ou bien entre 0 et 100?


Réponses (1)

RE: commande de escape et simulate - Ajouté par Loïc HAMOT il y a plus de 4 ans

La fonction "function AI_do_fight(moi_meme, autre_joueur)" sert-elle seulement a accepter ou refuser un combat contre un ennemi ou allié?

Oui.
Le refus de combat ne seras pris en compte que si les deux partis répondent non.
Si c'est bien le cas il faut cree une autre fonction "do_escape(ma_flotte, planète_locale, autres_flottes)" pour utiliser la techno Evasion?

Oui.
Toujours si c'est bien le cas il faudra changé le commentaire de la fonction "do_fight" car il parle de "fuite" qui peux être confondue avec l'Evasion.

Ah oui.
L'action "simulates(ma_flotte, planète, autre_flottes)" peut-elle etre utilisé dans do_fight, do_escape ou bien les 2?

Il n'y as pas de restriction sur l'endroit ou elle est utilisable, mais en pratique, on as besoin des arguments (ma_flotte, planète, autre_flottes) pour l'appeler, donc on ne peut l'utiliser que dans do_escape et action.
Dans les 2 cas elle fait appelle a une/des variables, notamment "planete" qui n'ont pas étais défini plus tot, peut-on juste les ajoutés au départ et dans la parenthèse de "do_escape"?

Les noms des arguments de simulates sont donnés à titre indicatif. Cela pourrait très bien être simulates(titi, toto, tata).
Ce qu'il faut retenir c'est que cette fonction attend en entré :
  1. une flotte : Supposée être la flotte testée.
  2. une planète : Planète qui se trouve au lieu du combat.
  3. une liste de flotte : La liste des autres flottes. (Pouvant contenir des flottes ennemies et alliées)

Concrètement, les variables passées à cette fonction seront généralement (ma_flotte, planète_locale, autres_flottes), c'est à dire celles fournis par la fonction do_escape.

Pourquoi s'appelle t-elle "planete" et pas "planete_locale" ? peux on simuler un combat contre quelque chose sur une case différente?

Comme je l'ai dit, dans une fonction que l'on appel, le noms des arguments donnés n'as pas d'importance, ce qui compte c'est de passer le bon type. En l'occurrence une planète.
Mais au final c'est bien la variable planete_locale que tu vas passer.
Il faudra que je remplace planète par planete_locale dans l'API lua, car je vois que c'est assez perturbant ^^.
l'action "Simulate" rend un résultat entre 0 et 1 ou bien entre 0 et 100?

Une valeur entière entre 0 et 100.
Je vais le préciser, çà évitera que d'autre ce pose la question.
    (1-1/1)