GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: Romeo_Urbano le 01 Juillet 2010, 12:36:22
-
Bonjour,
J'aimerai savoir comment faire cette chose là:
Quand je fais par exemple /kill tous les joueurs qui sont accoter de moi pour le Prox 50 par ex auront le health 0!
svp comment je fais!
-
Il y a une fonction IsPlayerInRangeOfPoint je crois, il te suffit de récupérer la position du joueur qui fait la commande et de tuer tout le monde autour (La fonction fait une "sphère" autour du joueur avec comme rayon, la distance que tu as indiquée)
-
Salut il faut que tu créé une boucle donc :
for(new i = 0; i<MAX_PLAYERS; i++)
puis tu prend la position de i et tu la compare à toi donc playerid ( celui qui tape la commande) puis si i est dans un rayon de 50 autour du joueur
tu met la santé de i à 0
Sam. :cheers
Double post
Tout à fait gilux, ou le playertopoint fonctionne aussi, mais prefere IsPlayerInRangeOfPoint je pense que c'est mieux, comme c'est une fonction de sa:mp
Sam
-
Merci je vais essayé
-
Tout à fait gilux, ou le playertopoint fonctionne aussi, mais prefere IsPlayerInRangeOfPoint je pense que c'est mieux, comme c'est une fonction de sa:mp
C'est ce que j'ai marqué :ninja
-
Je confirmais ce que je disais et conseiller de ne pas utiliser PlayerToPoint, bien que faudrait faire des tests ;)
-
j'ai essayé et ca marche pas tu peux me donner le code pour test pck moi j'ai crée un mais marche po :wall
-
Poste le code, si on te le donne sa serais trop facile ;)
-
je l'ai supprimer ^^ trop tard :)
-
if(strcmp(cmd, "/kill", true) == 0)
{
new Float:PX,Float:PY,Float:PZ;
GetPlayerPos(playerid, PX, PY, PZ);
for(new i = 0; i<MAX_PLAYERS; i++)
{
if(IsPlayerInRangeOfPoint(i, 50.0, PX, PY, PZ);{ SetPlayerHealth(i, 0); }
}
}
-
Merci Chneubeul pour le scripte je vais le tester :)
Double post
j'ai compiler et j'ai trouver ca error 036: empty statement
J'ai régler une erreur déjà ta oublier d'ajouter une ) mais celle la je connais pas
et l'erreur viens de cette ligne
if(IsPlayerInRangeOfPoint(i, 50.0, PX, PY, PZ));
-
Oui sayé ca marche s'est ce que j'ai fais merci de vôtres aides :)
-
:o Désolé j'étais partis ^^ Merci gzsume d'avoir répondu...