rendered paste body/* ## ## ### ##### ## ## ####### ## ## # # # # # # # # # # # # # # # # # # # # ##### # # # # # # # # # # # #### # # ##### # # ####### # #Version : Beta 1Credits : • SendClientMessage by R@f • strtok by Kyeman Test : • NatiVe • Rider_77 • Lacuisse ----------Ce script a été publier sur GTAOnline.fr & sur mistert-website.e-hg.fr,si vous l'avez télécherger ailleur, merci de me contater a cette adresse : mistert.ws@gmail.com*/#include <a_samp>/*Define*/#define Orange 0xF47A00FF#define Vert 0x00D500FF#define Bleu 0x0000BFFF#define Gris 0xC0C0C0FF#define Rouge 0xD90000FF#define CONNECT_MESSAGE true#define DISCONECT_MESSAGE true/*remplacer 'true' par 'false' si vous ne voulez pas que les message de connetion/deconnection s'affichent*//*New*/new avertissement[MAX_PLAYERS];new pidName[MAX_PLAYER_NAME];new day,month,year,hour,minute,second;new bool:connectmessage = CONNECT_MESSAGE;new bool:disconnectmessage = DISCONECT_MESSAGE;public OnFilterScriptInit(){ print("\n--------------------------------------"); print("M_Admin by MrT as been loaded"); print("--------------------------------------\n"); return 1;}public OnFilterScriptExit(){ return 1;}public OnPlayerConnect(playerid){ if(connectmessage == true) { new string[256]; GetPlayerName(playerid,pidName,sizeof(pidName)); format(string, sizeof(string), "%s (ID:%d) a rejoint le serveur !", pidName); SendClientMessageToAll(Gris, string); print(string); } return 1;}public OnPlayerDisconnect(playerid, reason){ if(disconnectmessage == true) { new string[256]; GetPlayerName(playerid,pidName,sizeof(pidName)); switch(reason) { case 0: format(string, sizeof(string), "%s a quitté le serveur ! [timeout]", pidName); case 1: format(string, sizeof(string), "%s a quitté le serveur ! [parti(e)]", pidName); case 2: format(string, sizeof(string), "%s a quitté le serveur ! [kické(e)/banni(e)", pidName); } } return 1;}public OnPlayerSpawn(playerid){ return 1;}public OnPlayerDeath(playerid, killerid, reason){ return 1;}public OnVehicleSpawn(vehicleid){ return 1;}public OnVehicleDeath(vehicleid, killerid){ return 1;}public OnPlayerText(playerid, text[]){ return 1;}public OnPlayerPrivmsg(playerid, recieverid, text[]){ return 1;}public OnPlayerCommandText(playerid, cmdtext[]){ new string[256]; new cmd[256], idx; cmd = strtok(cmdtext, idx); /*Commande /plainte*/ if (!strcmp(cmd, "/plainte", true,8)) { new pid,tmpp[256]; GetPlayerName(pid, pidName, sizeof(pidName)); tmpp = strtok(cmdtext, idx); if(!strlen(tmpp)) { SendClientMessage(playerid, Vert, "FORMULATION: /plainte [ID] [raison]"); return 1; } format(tmpp, sizeof(tmpp), "[Plainte] %s : %s ",pidName,cmdtext[9]); SendAdminMessage(Gris,tmpp); Plainte(tmpp); SendClientMessage(playerid, Vert, "Message envoyé au admins connectés."); return 1; } if(!strcmp(cmd, "/say", true,4)) { if(IsPlayerAdmin(playerid) == 1) { new tmpp[128]; format(tmpp, sizeof(tmpp), "*** Admin : %s",cmdtext[4]); SendClientMessageToAll(0xFF8000FF, tmpp); } else { SendClientMessage(playerid, 0xD90000FF, "Commande réservée aux Admin"); } return 1; } /*Commande /av*/ if(!strcmp(cmd, "/av", true)) { new pid, temp[256]; new pname[MAX_PLAYER_NAME]; temp = strtok(cmdtext, idx); pid = strval(temp); if(IsPlayerAdmin(playerid) == 1) { if (!strlen(temp)) { SendClientMessage(playerid, Vert, "FORMULATION: /av [ID]"); return 1; } if (!(IsPlayerConnected(pid))) { SendClientMessage(playerid, Rouge, "CE JOUEUR N'EST PAS CONNECTE!"); return 1; } if (avertissement[pid] == 1) { SendClientMessage(pid, Orange, "Dernier avertissement avant le kick !"); } if (avertissement[pid] == 2) { GetPlayerName(pid, pname, sizeof(pname)); getdate(year,month,day); gettime(hour,minute,second); format(temp, sizeof(temp), "%s a été kické(e) pour avoir recu 3 avertissement",pname,day,month,year,hour,minute,second); SendClientMessageToAll(Orange, temp); avertissement[pid] = 0; Kick(pid); Kicked(temp); } else { GetPlayerName(pid, pidName, sizeof(pidName)); format(temp, sizeof(temp), "Vous avez averti %s (ID:%d)",pidName,pid); SendClientMessage(playerid, Orange, temp); avertissement[pid]++; format(string,sizeof(string), "Vous avez recu un avertissement ! (%d/3)",avertissement[pid]); SendClientMessage(pid, Orange, string); } } else { SendClientMessage(playerid, 0xD90000FF, "Commande réservée aux Admin"); } return 1; } /*Commande /cc*/ if (!strcmp(cmd, "/cc", true)) { if(IsPlayerAdmin(playerid) == 1) { SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); SendClientMessageToAll(Vert, " "); } else { SendClientMessage(playerid, 0xD90000FF, "Commande réservée aux Admin"); } return 1; } /*Commande /Out*/ if (!strcmp(cmd, "/out", true,4)) { if (IsPlayerAdmin(playerid) == 1) { new pid, tmpp[256], pName[MAX_PLAYER_NAME]; tmpp = strtok(cmdtext, idx); if (!strlen(tmpp)) { SendClientMessage(playerid, Vert, "FORMULATION: /out [playerid]"); return 1; } pid = strval(tmpp); if (!(IsPlayerConnected(pid))) { SendClientMessage(playerid, Rouge, "Ce joueur n'est pas conecter !"); return 1; } new Float:X, Float:Y, Float:Z; GetPlayerPos(pid,X,Y,Z); CreatePlayerObject(pid, 99999999999999999,X,Y,Z,X,Y,Z); GetPlayerName(pid, pidName, 20); GetPlayerName(playerid, pName, 20); } return 1; } if (!strcmp(cmd, "/outall", true,4)) { if (IsPlayerAdmin(playerid) == 1) { new pid, tmpp[256]; tmpp = strtok(cmdtext, idx); if (!strlen(tmpp)) { SendClientMessage(playerid, Vert, "FORMULATION: /outall"); return 1; } pid = strval(tmpp); if (!(IsPlayerConnected(pid))) { SendClientMessage(playerid, Rouge, "Ce joueur n'est pas conecter !"); return 1; } for(new i = 0; i < MAX_PLAYERS; i ++) { if(IsPlayerConnected(i)) { new Float:X, Float:Y, Float:Z; GetPlayerPos(i,X,Y,Z); CreatePlayerObject(i, 99999999999999999,X,Y,Z,X,Y,Z); } } } else { SendClientMessage(playerid, 0xD90000FF, "Commande réservée aux Admin"); } return 1; } /*Commande /killp*/ if (!strcmp(cmd, "/killp",true, 6)) { if(IsPlayerAdmin(playerid) == 1) { new pid, tmpp[256]; tmpp = strtok(cmdtext, idx); if (!strlen(tmpp)) { SendClientMessage(playerid, Vert, "FORMULATION: /killp [playerid]"); return 1; } pid = strval(tmpp); if (!(IsPlayerConnected(pid))) { SendClientMessage(playerid, Rouge, "Ce joueur n'est pas conecter !"); return 1; } SetPlayerHealth(pid, 0); } else { SendClientMessage(playerid, 0xD90000FF, "Commande réservée aux Admin"); } return 1; } /*Commande /killall*/ if (!strcmp(cmd, "/killall",true, 8)) { if(IsPlayerAdmin(playerid) == 1) { new pid, tmpp[256]; tmpp = strtok(cmdtext, idx); if (!strlen(tmpp)) { SendClientMessage(playerid, Vert, "FORMULATION: /killall"); return 1; } pid = strval(tmpp); if (!(IsPlayerConnected(pid))) { SendClientMessage(playerid, Rouge, "Ce joueur n'est pas conecter !"); return 1; } for(new i = 0; i < MAX_PLAYERS; i ++) { if(IsPlayerConnected(i)) { SetPlayerHealth(i, 0); } } } else { SendClientMessage(playerid, 0xD90000FF, "Commande réservée aux Admin"); } return 1; } /*Commande /Cname*/ if (!strcmp(cmd, "/cname",true, 6)) { if(IsPlayerAdmin(playerid) == 1) { new pid, tmp[256], tmpp[256]; tmpp = strtok(cmdtext, idx); if (!strlen(tmpp)) { SendClientMessage(playerid, Vert, "FORMULATION: /cname [playerid] [Pseudo]"); return 1; } pid = strval(tmpp); if (!(IsPlayerConnected(pid))) { SendClientMessage(playerid, Rouge, "Ce joueur n'est pas conecter !"); return 1; } tmp = strtok(cmdtext, idx); SetPlayerName(pid,tmp); } else { SendClientMessage(playerid, 0xD90000FF, "Commande réservée aux Admin"); } return 1; } /*Commande /GetIn*/ if (!strcmp(cmd, "/getin",true, 6)) { if(IsPlayerAdmin(playerid) == 1) { new pid, tmpp[256], vecl; tmpp = strtok(cmdtext, idx); if (!strlen(tmpp)) { SendClientMessage(playerid, Vert, "FORMULATION: /getin [playerid]"); return 1; } pid = strval(tmpp); if (!(IsPlayerConnected(pid))) { SendClientMessage(playerid, Rouge, "Ce joueur n'est pas conecter !"); return 1; } vecl = GetPlayerVehicleID(playerid); PutPlayerInVehicle(pid, vecl, 1); } else { SendClientMessage(playerid, 0xD90000FF, "Commande réservée aux Admin"); } return 1; } if (!strcmp(cmd, "/ann", true,4)) { if (IsPlayerAdmin(playerid) == 1) { new tmpp[256]; tmpp = strtok(cmdtext, idx); format(tmpp, sizeof(tmpp), "%s",cmdtext[5]); GameTextForAll(tmpp,2500,4); } else { SendClientMessage(playerid, 0xD90000FF, "Commande réservée aux Admin"); } return 1; } new pid, tmpp[256]; tmpp = strtok(cmdtext, idx); pid = strval(tmpp); if (!strcmp(cmd, "/kick", true,5)) { if (IsPlayerAdmin(playerid) == 1) { if (!strlen(tmpp)) { SendClientMessage(playerid, Vert, "FORMULATION: /kick [playerid] [raison]"); return 1; } if (!(IsPlayerConnected(pid))) { SendClientMessage(playerid, Rouge, "Ce joueur n'est pas conecter !"); return 1; } GetPlayerName(pid, pidName, sizeof(pidName)); format(tmpp, sizeof(tmpp), "Vous avez kické %s (ID:%d) [Raison : %s]",pidName,pid,cmdtext[idx]); SendClientMessage(playerid, Orange, tmpp); GetPlayerName(pid, pidName, sizeof(pidName)); format(string, sizeof(string), "Un admin a kické %s ! [Raison : %s]",pidName,cmdtext[idx]); SendClientMessageToAll(Orange, string); Kick(pid); Kicked(tmpp); } else { SendClientMessage(playerid, 0xD90000FF, "Commande réservée aux Admin"); } return 1; } if (!strcmp(cmd, "/ban", true,4)) { if (IsPlayerAdmin(playerid) == 1) { if (!strlen(tmpp)) { SendClientMessage(playerid, Vert, "FORMULATION: /ban [playerid] [raison]"); return 1; } if (!(IsPlayerConnected(pid))) { SendClientMessage(playerid, Rouge, "Ce joueur n'est pas conecter !"); return 1; } GetPlayerName(pid, pidName, sizeof(pidName)); format(tmpp, sizeof(tmpp), "Vous avez banni %s (ID : %d) [Raison : %s]",pidName,pid,cmdtext[idx]); GetPlayerName(pid, pidName, sizeof(pidName)); format(string, sizeof(string), "Un admin a banni %s (ID : %d)! [Raison : %s]",pidName,pid,cmdtext[idx]); SendClientMessageToAll(Orange, string); Ban(pid); Baned(tmpp); } else { SendClientMessage(playerid, 0xD90000FF, "Commande réservée aux Admin"); } return 1; } if (!strcmp(cmd, "/banall", true,7)) { if (IsPlayerAdmin(playerid) == 1) { if (!strlen(tmpp)) { SendClientMessage(playerid, Vert, "FORMULATION: /banall [raison]"); return 1; } for(new i = 0; i < MAX_PLAYERS; i ++) { if(IsPlayerConnected(i)) { format(string, sizeof(string), "Un admin a banni tout les joueurs connectés! [Raison : %s]",cmdtext[idx]); SendClientMessageToAll(Orange, string); Ban(i); Baned(tmpp); } } } else { SendClientMessage(playerid, 0xD90000FF, "Commande réservée aux Admin"); } return 1; } if (!strcmp(cmd, "/kickall", true,8)) { if (IsPlayerAdmin(playerid) == 1) { if (!strlen(tmpp)) { SendClientMessage(playerid, Vert, "FORMULATION: /kickall [raison]"); return 1; } for(new i = 0; i < MAX_PLAYERS; i ++) { if(IsPlayerConnected(i)) { format(string, sizeof(string), "Un admin a kické tout les joueurs connectés! [Raison : %s]",cmdtext[idx]); SendClientMessageToAll(Orange, string); Kick(i); Kicked(tmpp); } } } else { SendClientMessage(playerid, 0xD90000FF, "Commande réservée aux Admin"); } return 1; } if (!strcmp(cmd, "/apm", true,4)) { if (IsPlayerAdmin(playerid) == 1) { if (!strlen(tmpp)) { SendClientMessage(playerid, Vert, "FORMULATION: /apm [playerid] [texte]"); return 1; } if (!(IsPlayerConnected(pid))) { SendClientMessage(playerid, Rouge, "Ce joueur n'est pas conecter !"); return 1; } format(tmpp, sizeof(tmpp), "Pm de Admin : %s",cmdtext[idx]); SendClientMessage(pid, Orange, tmpp); GetPlayerName(pid, pidName, sizeof(pidName)); format(string, sizeof(string), "PM envoyer à %s ! (%s)",pidName,cmdtext[idx]); SendClientMessageToAll(Orange, string); } else { SendClientMessage(playerid, 0xD90000FF, "Commande réservée aux Admin"); } return 1; } if (!strcmp(cmd, "/ahelp", true)) { if(IsPlayerAdmin(playerid) == 1) { SendClientMessage(playerid, Vert, "Commande admins :"); SendClientMessage(playerid, Vert, "/say, /av, /cc, /out, /killp, /cname, /getin, /ann, /kick, /ban"); SendClientMessage(playerid, Vert, "/kickall, /banall, /outall, /killall, /apm"); } else { SendClientMessage(playerid, 0xD90000FF, "Commande réservée aux Admin"); } return 1; } return 0;}public OnPlayerInfoChange(playerid){ return 1;}public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger){ return 1;}public OnPlayerExitVehicle(playerid, vehicleid){ return 1;}public OnPlayerStateChange(playerid, newstate, oldstate){ return 1;}public OnPlayerEnterCheckpoint(playerid){ return 1;}public OnPlayerLeaveCheckpoint(playerid){ return 1;}public OnPlayerEnterRaceCheckpoint(playerid){ return 1;}public OnPlayerLeaveRaceCheckpoint(playerid){ return 1;}public OnRconCommand(cmd[]){ return 1;}public OnObjectMoved(objectid){ return 1;}public OnPlayerObjectMoved(playerid, objectid){ return 1;}public OnPlayerPickUpPickup(playerid, pickupid){ return 1;}public OnPlayerSelectedMenuRow(playerid, row){ return 1;}public OnPlayerExitedMenu(playerid){ return 1;}/*SendAdminMessage By R@f*/SendAdminMessage(color, text[]) { for(new i = 0; i < MAX_PLAYERS; i ++) { if(IsPlayerConnected(i)) { if (IsPlayerAdmin(i)) { SendClientMessage(i, color, text); } } }}Kicked(string[]){ new tmp[256]; format(tmp, sizeof(tmp), "%s \r\n",string); new File:hFile; hFile = fopen("M_Admin/Kick.txt", io_append); fwrite(hFile, tmp); fclose(hFile);}Baned(string[]){ new tmp[256]; format(tmp, sizeof(tmp), "%s \r\n",string); new File:hFile; hFile = fopen("M_Admin/Ban.txt", io_append); fwrite(hFile, tmp); fclose(hFile);}Plainte(string[]){ new tmp[256]; format(tmp, sizeof(tmp), "%s \r\n",string); new File:hFile; hFile = fopen("M_Admin/Plaintes.txt", io_append); fwrite(hFile, tmp); fclose(hFile);}strtok (const string[], &index){ new length = strlen(string); while ((index < length) && (string[index] <= ' ')) { index++; } new offset = index; new result[20]; while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1))) { result[index - offset] = string[index]; index++; } result[index - offset] = EOS; return result;}