#K$ ADerriere

Syntaxe 

Booléen ADerriere(Vecteur P, Réel D)
Description

Renvoie VRAI si 
	1) si D>=0 et si le point P est au moins à une distance D derrière le perso courant  (dans son repère local)
	2) si D<0 et si le point P est à moins d’une distance -D derrière le perso courant (dans son repère local)
Exemple(s)
Cette condition est assez puissante à condition d’avoir à l’esprit le schéma ci dessous :

On peut en effet savoir si un perso2 est dans les zones 1 ou 2 par rapport au perso1. Les zones 3 et 4 ne servent
que pour la condition ADevant.

	Dessin à faire : Patience, c’est le même genre que pour AAGauche mais pivote les 1 2 3 4 de 90 degrés

Si on veut tester que le perso2 est derrière le perso1 dans la zone 1 à une distance supérieure ou égale à d sur l’axe Y, on écrira :

    d :=3							; d est une variable designer de type réel
    Pos2 := “ Perso2 ”.PositionAbsoluePerso()		; Pos2 est une variable designer de type vecteur 
    Si “ Perso1 ”.ADevant(Pos2,d)				; qui stocke la position du perso2
    Alors ......

Si on veut tester que le perso2 est derrière le perso1 dans la zone 2 à une distance inférieure ou égale à d sur l’axe Y, on écrira :

    d :=3							; d est une variable designer de type réel
    Pos2 := “ Perso2 ”.PositionAbsoluePerso()		; Pos2 est une variable designer de type vecteur 
    Si “ Perso1 ”.ADerriere(Pos2,-d)			; le signe - est la seule différence
    Alors ......

En résumé, le signe du paramètre D sert à savoir si on utilise l’intérieure ou l’extérieure d’une bande de largeur |D| à droite du perso1 ! ! ! ! 

Pour tester simplement si le perso2 est derrière du perso1 (donc dans les zones 1 ou 2), il faut passer 0.0 comme paramétre D ! ! ! !

Cette condition est évidemment utilisable avec des WayPoints, il suffit de remplacer la ligne 
Pos2 := “ Perso2 ”.PositionAbsoluePerso()
par 
Pos2 := PositionAbsolueWP(“ MonWayPoint ”)