| Calculer la distance entre deux personnages | |
|
|
Auteur | Message |
---|
Shai-la Ouvrière en Chef de la Grande Tasse Bleue
Nombre de messages : 6018
Age : 46
Localisation : Montpellier
Date d'inscription : 17/04/2006
| Sujet: Calculer la distance entre deux personnages Mer 22 Sep 2010 - 9:44 | |
| Je suis trop nulle : : Je souhaiterais calculer simplement la distance entre les coordonnées de deux personnages dans une même room, pour savoir s'ils sont proches ou éloignés, afin de programmer un événement en conséquence. Mais impossible de m'y prendre correctement. Un simple calcul devrait m'aider à résoudre ce problème, par exemple calculer la longueur de la diagonale du triangle rectangle formé par les deux coordonnées, mais je ne m'en sors pas avec les commandes de maths d'AGS. Please help !! : : |
|
| |
Benjiman33 Cliqueur Amateur
Nombre de messages : 312
Age : 38
Localisation : Bordeaux-Toulouse
Date d'inscription : 27/07/2007
| Sujet: Re: Calculer la distance entre deux personnages Mer 22 Sep 2010 - 10:06 | |
| Salut Shai-la La formule de la distance entre deux point A (xa;ya) et B (xb;yb) est racine carré((xb-xa)²+(yb-ya²)) Je ne sais pas comment calculer une racine carré sous AGS donc si toi non plus tu peux utiliser le code ci dessous: if ((cPlayer1.x - cPlayer.x < 100) && (cPlayer1.x - cPlayer.x > -100) && (cPlayer1.y - cPlayer2.y < 100) && (cPlayer1.y - cPlayer2.y > -100)) { Evenement } Tu peux remplacer 100 par la distance qui te convient. C'est comme s'il y avait un carré invisible de côté 100 autour de ton deuxième personnage. L'évènement se déclenche si le perso entre dans ce carré. J'espère ne pas m'être trompé et être clair |
|
| |
Shai-la Ouvrière en Chef de la Grande Tasse Bleue
Nombre de messages : 6018
Age : 46
Localisation : Montpellier
Date d'inscription : 17/04/2006
| Sujet: Re: Calculer la distance entre deux personnages Mer 22 Sep 2010 - 10:16 | |
| Ok je vais essayer, merci |
|
| |
Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Calculer la distance entre deux personnages Mer 22 Sep 2010 - 11:30 | |
| Effectivement, y a juste à appliquer Pythagore La fonction racine carré sous AGS est Maths.Sqrt. - Code:
-
function Distance(Character* c1, Character* c2){ int dx; int dy; if (c1.x > c2.x){ dx = c1.x - c2.x; } else { dx = c2.x - c1.x; } if (c1.y > c2.y){ dy = c1.y - c2.y; } else { dy = c2.y - c1.y; } return FloatToInt(Maths.Sqrt(IntToFloat((dx * dx) + (dy * dy)))); } Pour utiliser cette fonction, par exemple : - Code:
-
if (Distance(player , cEmile) < 50){ player.Say("Vous voulez un chewing gum, Emile ?"); cEmile.Say("Oh, non, merci."); player.Say("Oh si si, prenez un chewing gum, Emile"); }
Dernière édition par Asraroth le Mer 22 Sep 2010 - 20:59, édité 1 fois |
|
| |
Shai-la Ouvrière en Chef de la Grande Tasse Bleue
Nombre de messages : 6018
Age : 46
Localisation : Montpellier
Date d'inscription : 17/04/2006
| Sujet: Re: Calculer la distance entre deux personnages Mer 22 Sep 2010 - 11:56 | |
| Excellent l'exemple ! : : : Mais la proposition de Benjiman marche très bien sinon Asra, la tienne peut être utile pour calculer la distance exacte par exemple ! |
|
| |
-a-timburton-a- Cliqueur Emérite
Nombre de messages : 588
Date d'inscription : 17/05/2010
| Sujet: Re: Calculer la distance entre deux personnages Mer 22 Sep 2010 - 12:24 | |
| Haaan les coordonnées sont plus complexes sous AGS
^^ |
|
| |
flotant Adepte de la Grande Tasse Bleue
Nombre de messages : 168
Age : 48
Date d'inscription : 13/06/2010
| Sujet: Re: Calculer la distance entre deux personnages Mer 22 Sep 2010 - 13:04 | |
| oui mis si emilie mange du chewing gum les distances ne deviennent-elle pas élastique ?? : _________________ Il vaut mieux vivre ses rêves que de rêver sa vie............
|
|
| |
Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Calculer la distance entre deux personnages Mer 22 Sep 2010 - 20:16 | |
| - Shai-la a écrit:
- Asra, la tienne peut être utile pour calculer la distance exacte par exemple !
Pas seulement... cela permet d'avoir un périmètre en forme de cercle plutôt qu'un carré, et aussi de tester si un objet/perso se rapproche ou s'éloigne. - Citation :
- Haaan les coordonnées sont plus complexes sous AGS
Plus complexes que quoi ? - Citation :
- oui mis si emilie mange du chewing gum les distances ne deviennent-elle pas élastique ?? langue
: |
|
| |
Contenu sponsorisé
| Sujet: Re: Calculer la distance entre deux personnages | |
| |
|
| |
| Calculer la distance entre deux personnages | |
|