J'ai un peu la flemme de lire la commande que t'as donné. Voici une commande /lock normale et commentée ;)
if (strcmp(cmdtext, "/lock", true)==0)
{
/*On vérifie si le joueur est dans le véhicule*/
if(IsPlayerInAnyVehicle(playerid))
{
/*On créé une nouvelle variable qui aura la valeure de GetPlayerState*/
new State=GetPlayerState(playerid);
/*Si State n'est pas égal à PLAYER_STATE_DRIVER, ce qui veux dire que la personne qui a fait la commande n'est pas le conducteur*/
if(State!=PLAYER_STATE_DRIVER)
{
/*On envoie un message lui disant que seulement le conducteur peut fermer les portes*/
SendClientMessage(playerid,COLOR_GREY,"Seulement le conducteur peut fermer les portes");
return 1;
}
/*On fait une boucle sur tous les joueurs*/
for(new i=0;i<MAX_PLAYERS;i++)
{
/*On verrouille le véhicule*/
SetVehicleParamsForPlayer(GetPlayerVehicleID(i),i, 0, 1);
}
}
/*On lui envoie un petit message pour dire que son véhicule est verrouillé*/
SendClientMessage(playerid, COLOR_GREY, "Véhicule vérouillé");
/*On lui envoie un petit son pour faire joli*/
PlayerPlaySound(playerid,1056,0,0,0);
}
/*Si il n'est pas dans un véhicule - Voir la condition plus haut*/
else
{
/*On envoi un petit message pour lui dire qu'il n'est pas dans un véhicule*/
SendClientMessage(playerid, COLOR_GREY, "Tu n'es pas dans un véhicule");
}
return 1;
}
Pour vérouiller c'est pareil, sauf qu'il faut changer SetVehicleParamsForPlayer(GetPlayerVehicleID(i),i, 0, 1); par zéro ;)
Je pense que depuis ceci tu peux te faire une commande toi même, un truc perso que tu comprends mieux ;)
PS : Les commandes sont entre des slash + étoile (/* ou */)
++
R@f