GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: semih_turko58 le 19 Juin 2014, 17:15:49

Titre: warning a la ligne de tp
Posté par: semih_turko58 le 19 Juin 2014, 17:15:49
Bonjour alors voila j'ai un script de téléportation et j'ai cette erreur: warning 202: number of arguments does not match definition sur la ligne 5
1if(strcmp(cmdtext, "/sf", true) == 0)
2 {
3  if(IsPlayerInAnyVehicle(playerid))
4 {
5  SetVehiclePos(GetPlayerVehicleID(playerid),-1225.8894,46.9308,14.1332,231.3632);
6  SendClientMessage(playerid, 0x00FF40FF, "Vous vous êtes téléporté(e) à l'aeroport de San Fierro.");
7 return 1;
8  }
9  SetPlayerInterior(playerid,0);
10  SetPlayerPos(playerid,-1225.8894,46.9308,14.1332,231.3632);
11  SendClientMessage(playerid, 0x00FF40FF, "Vous vous êtes téléporté(e) à l'aeroport de San Fierro.");
12  return 1;
13  }


Merci de bien vouloir m'aider  :happy:
Titre: Re : warning a la ligne de tp
Posté par: Gzsume le 19 Juin 2014, 18:06:18
Le nombre d'arguments ne correspond pas au prototype de la fonction. Je pense que tu veux passer l'angle en argument de la fonction, mais elle ne le permet pas. Utilises SetVehicleZAngle() (http://wiki.sa-mp.com/wiki/SetVehicleZAngle) en complément.
Titre: Re : warning a la ligne de tp
Posté par: semih_turko58 le 19 Juin 2014, 18:47:46
le warning est toujours la je veux juste téléporter un vehiclule a la destination si il est dedans mais si il est a pied le téléporter au même endroit sans vehicule
Titre: Re : warning a la ligne de tp
Posté par: Gzsume le 19 Juin 2014, 20:11:13
Il te suffit d'une condition, tu peux utiliser la fonction IsPlayerInAnyVehicle() (http://wiki.sa-mp.com/wiki/IsPlayerInAnyVehicle) pour ça.
Titre: Re : warning a la ligne de tp
Posté par: Kiloutre le 19 Juin 2014, 20:19:55
Tu utilises 5 paramètres dans SetVehiclePos alors qu'il n'y en a que 4
Le 5ème paramètre est sans doute destiné à être utilisé dans SetVehicleZAngle (http://wiki.sa-mp.com/wiki/SetVehicleZAngle_FR)
Titre: Re : warning a la ligne de tp
Posté par: semih_turko58 le 19 Juin 2014, 21:28:42
Bon je suis encore "nul" en pawn du coup il faut que j'enlève quoi pour que je n'ai plus de warning ?
Titre: Re : warning a la ligne de tp
Posté par: Kiloutre le 19 Juin 2014, 22:15:22
Tu remplaces ça
Code: (pawn) [Sélectionner]
SetVehiclePos(GetPlayerVehicleID(playerid),-1225.8894,46.9308,14.1332,231.3632);
par:
Code: (pawn) [Sélectionner]
new vehicleid = GetPlayerVehicleID(playerid);
SetVehiclePos(vehicleid,-1225.8894,46.9308,14.1332);
SetVehicleZAngle(vehicleid, 231.3632);
Titre: Re : warning a la ligne de tp
Posté par: semih_turko58 le 20 Juin 2014, 22:34:55
Merci beaucoup ça marche  :smile:
Titre: Re : warning a la ligne de tp
Posté par: Aiko le 20 Juin 2014, 23:07:00
J'ai un conseil pour toi, quand tu prends une position tu a

264,1771.4752,-1701.0153,18.8955,274.3976,0,0,0,0,0,0

ID du Skin/Veh,Position X,Position Y, Position Z,Sens/Angle du veh/skin

Si tu veux moin te prendre la tête, pour éviter les warnings, dans les commande de TP met juste le x, y et z.
Titre: Re : warning a la ligne de tp
Posté par: CarCrasher le 20 Juin 2014, 23:40:48
Ou bien au lieu d'utiliser /save, il peut utiliser /rs (raw save), qui donne plus que x, y, z, a :laugh: