salut Splinter,
;D
bon, premièrement, tu doit mettre ta commande dans la callback OnPlayerCommandText où est-ce??? ???
c'est la où il y a une liste de ligne commençant par dcmd ;)
comme ceci
OnPlayerComamndText(playerid,cmdtext){
dcmd(giveme2,7,cmdtext);pour t'aider: dcmd(la commande,longueur de la commande(nb de caractère a regarder), le texte de commande que le joueur a tapé); :cheers
et euh.... il manque un bout su script......(conseil: ne met pas le script au complet, seulement les bouts utiles...)
tu doit créer une ligne :
dcmd_giveme2(playerid,params[]){
if(IsPlayerCommandLevel(playerid,"giveme"){ //on test si le joueur est un admin avec un level suffisant pour faire cette commande
if(Spec[playerid][Spectating]) return SendClientMessage(playerid,red,"ERROR: You must not be spectating."); //on teste si l'admin est en train d'observer un autre joueur
if(!IsPlayerInAnyVehicle(playerid){ //on test si l'admin est dans un vehicle, auquel cas il ne sert a rien de lui en donner un 2e
TogglePlayerControllable(playerid,false); //on empêche l'admin de bouger lorsque le menu est visible
SetCameraBehindPlayer(playerid); // on place la camera derrière l'admin
return ShowMenuForPlayer(GiveMe2,playerid); //on lui fait voir le menu de sélection des vehicle
} else return SendClientMessage(playerid,red,"ERROR: You can not be in a vehicle."); //on lui dit qu'il ne doit aps être dans un vehicle
} else return SendLevelErrorMessage(playerid,"giveme"); //le joueur n'est pas admin, il ne peut faire cette commande, il doit le savoir....
et finalement le menu..... :happy le bout que je connais le moins...a vrai dire je n,en ai jamais fait.. :lmfao :lmfao
public OnPlayerSelectedMenuRow(playerid, row) { //la callback des menus
new Menu:Current = GetPlayerMenu(playerid); //on regarde quel menu il demande a voir
if(Current == GiveMe2) { //s'il demande le menu giveme2......
new car[20],Float:X,Float:Y,Float:Z,Float:Angle,id,carid; //on crée des variable où stocker les informations sur le joueur
GetPlayerPos(playerid,X,Y,Z); GetPlayerFacingAngle(playerid,Angle); //on amasse les donnés en question et on les stock dans les variables....
switch(row) { //ici, il s'agira des différentes possibilité de choix dans le menu
case 0: car = "Infernus", id = 411; //en premier une infernus(change cela sinon tu aura deux commandes pareil, mdr)
case 1: car = "NRG500", id = 522; //ensuite une nrg....
case 2: car = "Monster Truck", id = 444; //et ainsi de suite
case 3: car = "Packer", id = 443;
case 4: car = "RC Car", id = 441;
case 5: car = "Rancher", id = 489;
case 6: car = "Roadtrain", id = 515;
case 7: car = "Dumper", id = 406;
case 8: car = "Sultan", id = 560;
case 9: car = "Maverick", id = 487;
case 10: car = "Vortex", id = 539;
case 11: car = "Hydra", id = 520;
}
SendCommandMessageToAdmins(playerid,"GIVEME"); //on dit aux autres admins que cette commande a été utilisée
new string[256]; format(string,sizeof(string),"You have selected \'%s\'.",car); SendClientMessage(playerid,yellow,string); //on dit à l'admin ce qu'il a choisi
carid = CreateVehicle(id,X,Y,Z,Angle,-1,-1,50000); //on crée le vehicle du joueur sur lui
PutPlayerInVehicle(playerid,carid,0); //on met le joueur dans le vehicle
TogglePlayerControllable(playerid,true); //on lui permet de bouger à nouveau
if(GetPlayerInterior(playerid)) LinkVehicleToInterior(carid,GetPlayerInterior(playerid)); //si le joueur est dans un intérieur, on place le vehicle dans le même
SetVehicleVirtualWorld(carid,GetPlayerVirtualWorld(playerid)); //on place le vehicle dans le même monde virtuel que l'admin
}
et voila c'est a peu près ca......
je n'ai pas tester mais ca ne semble pas trop mauvais, tu n'as qu'a changer les vehicles présents sur le menu, ;)
en passant je n,ai fait que prendre la commande du XtremeAdmin, donc tu peut en faire tout autant pour créer des commandes semblables a celles qui existent déjà,
d'ailleurs, c'est ce que j'ai toujours fait pour ajouter des commandes sur mon xtreme, comme vehicle invincible 8)
donc bonne chance et j,espère que tu comprend les commentaires que j'ai insérer et que tu n'aura plus besoin d'aide sur au moins certaines de ces fonctions.... :cheers
++Sim++