C'est pas une fonction, c'est un groupe de fonction ..
NV.

désolé, mais je suis pas sur de comprendre de quel groupe de fonction tu parle, et puis comment ferait tu la distinction entre cheater et ceux qui vont au transfender??
je sais qu'il existe la callback OnVehicleMod mais sinon....ton ban est peut-être excessif... un simple kick....
ah je vien de comprendre lol
tien voilà le code, pas tester:
new Avert[MAX_PLAYERS];//en haut de ton script
#define MAX_AVERT 4//en haut de ton script
public OnVehicleMod(playerid,vehicleid,componentid)
{
if(componentid == 1010 || componentid == 1009 || componentid == 1008){//si le joueur s'est mit de la nitro
if(GetPlayerInterior(playerid) == 0){//si il est à l'extérieur (les transfender sont intérieur
RemoveVehicleComponent(vehicleid,componentid);//on lui enlève sa nitro
Avert[playerid]++;//la variable pour lui laissé des chances...
if(Avert[playerid] == MAX_AVERT){//s'il l'a fait trop de fois
new string[64],name[MAX_PLAYER_NAME];//les variables pour le message P.S. les string trop longs servent à rien
GetPlayerName(playerid,name,sizeof(name));//on récupère son nom
format(string,sizeof(string),"%s [ID %d] a été kické pour cheat!",name,playerid);//on compose les message
SendClientMessageToAll(COLOR_YELLOW,string);//on envoie le message à tout le monde
Kick(playerid);//on le kick
return 1;
}else SendClientMessage(playerid,COLOR_RED,"CHEAT: ne te met plus de nitro ou tu sera kické!");//on l'averti s'il n'as pas le nombre max d'avertissements
}
}
return 1;
}
et voilà

, c'est si simple, essaie de comprendre le code, les commentaires sont pas là pour rien...

++Sim++