GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: piki le 28 Février 2008, 19:23:03
-
bonjour à tous j'ai pris exemple sur un gm bien connu du /w( whisper), mais le probléme c'est qu'il est utilisé comme un pm. ce que je voudrais faire c'est que lorque je fais /w id message, le champs d'action de cette commande ne dépasse pas 2-3métres. un peu comme si un cercle translucide m'entourai. si vous pouviez m'éclairer sur la "fonction" à utiliser pour cela
merci
-
Bah dans OnPLayerInArea ça devrait le faire... Je pense
-
Non, Y'a une fonction très simple.
LimitGlobalChatRadius(100);
C'est toi qui choisit la longueur de la zone autour du joueur, Exemple 1 = 1 mettre.
-
ok merci il me faut un testeur , je vous tiens au courant
-
Urban, je ne pense pas que le fonction LimitGlobalChatRadius puisse être utilisée dans ce cas.
Cette fonction permet de limiter le chat globalement. Ce qui veut dire, pour tous les joueurs.
Donc lorsque d'un joueur va faire /w, tous les joueurs seront impactés.
De plus, je ne suis pas sur que l'on puisse utiliser cette fonction ailleurs que dans OnGameModeInit.
L'idée de StaffMan est la bonne, lorsqu'un joueur "JOUEUR" fait /w, il faut faire une boucle de cette façon :
Pour chaque joueur "J"
Si le joueur "J" est dans un rayon de X mètre autour du joueur "JOUEUR"
Afficher le message du joueur "JOUEUR" au joueur "J" (On pourra certainement utiliser la fonction IsPlayerInArea (http://www.gtaonline.fr/forums/index.php/topic,2105.0.html) de Urban ici)
FinSi
FinPour
++
Syg
-
c'est bon j'ai mis if(GetDistanceBetweenPlayers(playerid,giveplayerid) < distance) et sa fonctionne merci