GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: yah00078 le 09 Août 2009, 23:43:05
-
Salut a tous ,
Je viens demander juste une précision utile : comment peut on recuperer l'id du véhicule que le serveur lui attribut?
Merci d'avance =)
-
Pour cette commande le joueur doit être dans le véhicule :
new vehid;
vehid = GetPlayerVehicleID(playerid);
-
Sinon, si tu veux récupérer directement le VehicleId sans attendre qu'un joueur monte dedans :
new MaMoto;
MaMoto = AddStaticVehicle (522, -1563.7227, 1174.5029, 6.7559, 88.9771, -1, -1);
Ceci fonctionne aussi avec AddStaticVehicleEx et CreateVehicle.
++
Syg
-
Et ensuite il me suffi pour l'afficher aux joeur de metrre un SendClientMessage(playerid, "Id de ton véhicule : %d");VehiculeId , si je ne me trompe?
Sa fais un an que j'ai pas coder alros bon =D
Merci
-
oui tu peux faire ça
-
Oki =)
Impeccable merci a vous tous =D
EDIT:
Je m'acharne sur le bout de code mais n'y arrive pas j'ai des warnings =(
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
new Vehicleid ;
vehicleid = GetPlayerVehicleID(playerid);
SendClientMessage(playerid,0xFF000000,"Ta voiture a comme Numéro Le %s . Retiens le bien il peux te servir !",Vehicleid);
return 1;
}
voila le code
voila les warning :
warning 202: number of arguments does not match definition
warning 217: loose indentation
warning 203: symbol is never used: "Vehicleid"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
3 Warnings.
Pouvez vous m'aider a resoudre ces warning?
Merci =)
-
Utilise un "format", puis un SendClientMessage. Plus d'infos sur le Wiki :happy http://wiki.sa-mp.com/wiki/Format (http://wiki.sa-mp.com/wiki/Format)
-
Merci =D
Par contre j'ai refais mon script melé a un autre
public OnPlayerEnterVehicle(playerid)
{
new result[128];
new NumVeh ;
NumVeh = GetPlayerVehicleID(playerid);
SendClientMessage(playerid, 0x2641FEAA, ".::CIBI ON::.");
SendClientMessage(playerid, 0x2641FEAA, ".::CANAL 77 SELECTED::.");
SendClientMessage(playerid, 0x2641FEAA, "Pour parler /r [message], aide: /cibihelp");
format(result,sizeof(result), "Ta voiture a comme Numéro Le %d . Retiens le bien il peux te servir !.",NumVeh); //-> The number is 42.
Line[playerid] = 77;
OnOff[playerid] = 0;
return 1;
}
Et il me rste un warning ='( ,
pwn(126) : warning 217: loose indentation
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
Merci de votre aide =)
-
Indente ton code ( aligne les lignes lol )
-
Ah oui =) , c'est tout simple ,
Voila pour cete partie de code , tout est résolu , merci =)
-
Tout est résolu peut-être mais ça ne fera pas ce que tu veux.
La fonction format, comme son nom l'indique, sert à formater (mettre dans le bon format) une chaîne de caractères.
Par contre, cette chaîne ne sera pas affichée.
Donc, à la ligne juste après l'appel à la fonction format, il faut que tu rajoute :
SendClientMessage(playerid, 0x2641FEAA, result);pour que la chaîne soit affichée.
++
Syg
-
Oui merci =D je suis tombé sur le probleme mais j'ai observer d'autre script et vu le probleme =d
Merci a toiv :angelnot
-
Salut ,
Je reviens car j'ai un probleme , j'ai tester mon script sur mon gm , et le serveur me renvoi a chaque foi l'id 0 , comme si tous els véhicules avaient pour ID 0?
Mon gm est le sftdm reloaded 2.0
merci d'avance =) de votre aide
-
Salut,
normalement la callback donne déjà le vehicleid, tu n'as pas besoin de le récupérer...de plus, en le récupérant tu fais face à un problème, cette callback est appelée suite à un appel à la touche pour entrer/sortir d'un véhicule (le joueur se dirige vers la voiture quand la callback est appelée), donc en récupérant via GetPlayerVehicleID, tu récupère un numéro invalide (0) car le joueur ne se trouve dans aucun véhicule...
soit tu utilise le paramètre vehicleid, soit tu utilise la callback OnPlayerStateChange
++Sim++
-
Salut ,
Je viens de modifier le code , mais le problème (je m'y attendais) OnPlayerStateChange , c'est que lorsque que je sort du véhicule sa m'affiche aussi mon message ! aisin qu'a chaque changement de state du player , que faire , =S
-
tu regarde si son state change de foot a vehicle
-
Oki je vais regarder =D merci