Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "a_samp"
- #include "dini"
- new bool:Chat = true;
- new CD[MAX_PLAYERS], CoD[MAX_PLAYERS], bool:CDS = false;
- enum aInfo
- {
- AdminLevel,
- bool:Hide,
- bool:Muted
- }
- new AdminSystem[MAX_PLAYERS][aInfo];
- new RandomColors[200] = {
- 0xFF8C13FF,0xC715FFFF,0x20B2AAFF,0xDC143CFF,0x6495EDFF,0xf0e68cFF,0x778899FF,0xFF1493FF,0xF4A460FF,
- 0xEE82EEFF,0xFFD720FF,0x8b4513FF,0x4949A0FF,0x148b8bFF,0x14ff7fFF,0x556b2fFF,0x0FD9FAFF,0x10DC29FF,
- 0x534081FF,0x0495CDFF,0xEF6CE8FF,0xBD34DAFF,0x247C1BFF,0x0C8E5DFF,0x635B03FF,0xCB7ED3FF,0x65ADEBFF,
- 0x5C1ACCFF,0xF2F853FF,0x11F891FF,0x7B39AAFF,0x53EB10FF,0x54137DFF,0x275222FF,0xF09F5BFF,0x3D0A4FFF,
- 0x22F767FF,0xD63034FF,0x9A6980FF,0xDFB935FF,0x3793FAFF,0x90239DFF,0xE9AB2FFF,0xAF2FF3FF,0x057F94FF,
- 0xB98519FF,0x388EEAFF,0x028151FF,0xA55043FF,0x0DE018FF,0x93AB1CFF,0x95BAF0FF,0x369976FF,0x18F71FFF,
- 0x4B8987FF,0x491B9EFF,0x829DC7FF,0xBCE635FF,0xCEA6DFFF,0x20D4ADFF,0x2D74FDFF,0x3C1C0DFF,0x12D6D4FF,
- 0x48C000FF,0x2A51E2FF,0xE3AC12FF,0xFC42A8FF,0x2FC827FF,0x1A30BFFF,0xB740C2FF,0x42ACF5FF,0x2FD9DEFF,
- 0xFAFB71FF,0x05D1CDFF,0xC471BDFF,0x94436EFF,0xC1F7ECFF,0xCE79EEFF,0xBD1EF2FF,0x93B7E4FF,0x3214AAFF,
- 0x184D3BFF,0xAE4B99FF,0x7E49D7FF,0x4C436EFF,0xFA24CCFF,0xCE76BEFF,0xA04E0AFF,0x9F945CFF,0xDCDE3DFF,
- 0x10C9C5FF,0x70524DFF,0x0BE472FF,0x8A2CD7FF,0x6152C2FF,0xCF72A9FF,0xE59338FF,0xEEDC2DFF,0xD8C762FF,
- 0xD8C762FF,0xFF8C13FF,0xC715FFFF,0x20B2AAFF,0xDC143CFF,0x6495EDFF,0xf0e68cFF,0x778899FF,0xFF1493FF,
- 0xF4A460FF,0xEE82EEFF,0xFFD720FF,0x8b4513FF,0x4949A0FF,0x148b8bFF,0x14ff7fFF,0x556b2fFF,0x0FD9FAFF,
- 0x10DC29FF,0x534081FF,0x0495CDFF,0xEF6CE8FF,0xBD34DAFF,0x247C1BFF,0x0C8E5DFF,0x635B03FF,0xCB7ED3FF,
- 0x65ADEBFF,0x5C1ACCFF,0xF2F853FF,0x11F891FF,0x7B39AAFF,0x53EB10FF,0x54137DFF,0x275222FF,0xF09F5BFF,
- 0x3D0A4FFF,0x22F767FF,0xD63034FF,0x9A6980FF,0xDFB935FF,0x3793FAFF,0x90239DFF,0xE9AB2FFF,0xAF2FF3FF,
- 0x057F94FF,0xB98519FF,0x388EEAFF,0x028151FF,0xA55043FF,0x0DE018FF,0x93AB1CFF,0x95BAF0FF,0x369976FF,
- 0x18F71FFF,0x4B8987FF,0x491B9EFF,0x829DC7FF,0xBCE635FF,0xCEA6DFFF,0x20D4ADFF,0x2D74FDFF,0x3C1C0DFF,
- 0x12D6D4FF,0x48C000FF,0x2A51E2FF,0xE3AC12FF,0xFC42A8FF,0x2FC827FF,0x1A30BFFF,0xB740C2FF,0x42ACF5FF,
- 0x2FD9DEFF,0xFAFB71FF,0x05D1CDFF,0xC471BDFF,0x94436EFF,0xC1F7ECFF,0xCE79EEFF,0xBD1EF2FF,0x93B7E4FF,
- 0x3214AAFF,0x184D3BFF,0xAE4B99FF,0x7E49D7FF,0x4C436EFF,0xFA24CCFF,0xCE76BEFF,0xA04E0AFF,0x9F945CFF,
- 0xDCDE3DFF,0x10C9C5FF,0x70524DFF,0x0BE472FF,0x8A2CD7FF,0x6152C2FF,0xCF72A9FF,0xE59338FF,0xEEDC2DFF,
- 0xD8C762FF,0xD8C762FF
- };
- main() print("Admin mode loaded by ZiPoNz.");
- public OnPlayerConnect(playerid)
- {
- AdminSystem[playerid][Muted] = false;
- AdminSystem[playerid][Hide] = false;
- if(dini_Exists(CheckFile(playerid))) AdminSystem[playerid][AdminLevel] = dini_Int(CheckFile(playerid), "AdminLevel");
- else AdminSystem[playerid][AdminLevel] = 0;
- return true;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- KillTimer(CoD[playerid]);
- switch(AdminSystem[playerid][AdminLevel])
- {
- case 0: if(dini_Exists(CheckFile(playerid))) dini_Remove(CheckFile(playerid));
- case 1..10:
- {
- if(dini_Exists(CheckFile(playerid))) dini_IntSet(CheckFile(playerid), "AdminLevel", AdminSystem[playerid][AdminLevel]);
- if(!dini_Exists(CheckFile(playerid))) dini_Create(CheckFile(playerid)), dini_IntSet(CheckFile(playerid), "AdminLevel", AdminSystem[playerid][AdminLevel]);
- }
- }
- return true;
- }
- public OnPlayerText(playerid, text[])
- {
- if(!Chat || AdminSystem[playerid][Muted]) return SendClientMessage(playerid, 0xFFFFFF00, "{F2000C}[Error]{FFFFFF} You can't to write in this chat right now."), 0;
- return true;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- new cmd[256], string[256], idx;
- cmd = strtok(cmdtext, idx);
- if(!strcmp(cmd, "/chat", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 5) return AdminError(playerid);
- Chat = Chat == true ? false : true;
- format(string, 256, Chat == true ? ("{FF9500}[Server]{FFFFFF} The administrator %s opened the chat.") : ("{FF9500}[Server]{FFFFFF} The administrator %s closed the chat."), CheckName(playerid));
- return SendClientMessageToAll(0xFFFFFF00, string);
- }
- if(!strcmp(cmd, "/hideme", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 5) return AdminError(playerid);
- AdminSystem[playerid][Hide] = AdminSystem[playerid][Hide] == true ? false : true;
- format(string, 256, AdminSystem[playerid][Hide] == true ? ("{005EFF}[System]{FFFFFF} You are now hidden from the admin list.") : ("{005EFF}[System]{FFFFFF} You are not anymore hidden from the admin list."), CheckName(playerid));
- return SendClientMessageToAll(0xFFFFFF00, string);
- }
- if(!strcmp(cmd, "/admins", true))
- {
- new count = 0;
- SendClientMessage(playerid, 0xFFA20000, "Administrators online in the server:");
- for(new p = 0; p < MAX_PLAYERS; p++) if(IsPlayerConnected(p) && AdminSystem[p][AdminLevel] != 0 && AdminSystem[p][Hide] == false) count++, format(string, 256, "%d. Name: %s - Level: %d.", count, CheckName(p), AdminSystem[p][AdminLevel]);
- return SendClientMessage(playerid, 0xFFFFFF00, count == 0 ? ("None.") : string);
- }
- if(!strcmp(cmd, "/clearchat", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 3) return AdminError(playerid);
- for(new c = 0; c < 101; c++) SendClientMessageToAll(0xFFFFFF00, " ");
- format(string, 256, "{FF9500}[Server]{FFFFFF} The administrator %s cleared the chat.", CheckName(playerid));
- return SendClientMessageToAll(0xFFFFFF00, string);
- }
- if(!strcmp(cmd, "/setadmin", true))
- {
- if(!IsPlayerAdmin(playerid) && AdminSystem[playerid][AdminLevel] != 5) return SendClientMessage(playerid, 0xFFFFFF00, "{F2000C}[Error]{FFFFFF} You are not administrator(/rcon) to use it.");
- new cmd2[256];
- cmd = strtok(cmdtext, idx);
- cmd2 = strtok(cmdtext, idx);
- if(!strlen(cmd) || !strlen(cmd2)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /setadmin [PlayerID] [Admin level 1-5]");
- if(strval(cmd2) < 0 || strval(cmd2) > 5 || !IsNumeric(cmd) || !IsNumeric(cmd2)) return SendClientMessage(playerid, 0xFFFFFF00, "{F2000C}[Error]{FFFFFF} Please write the currect admin level.");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- AdminSystem[strval(cmd)][AdminLevel] = strval(cmd2);
- format(string, 256, "{005EFF}[System]{FFFFFF} You invited the player %s to the admins team as admin level %d.", CheckName(strval(cmd)), strval(cmd2));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s invited you to the admins team as admin level %d.", CheckName(playerid), strval(cmd2));
- return SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- }
- if(!strcmp(cmd, "/respawnvehicles", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 5) return AdminError(playerid);
- new bool:unused[MAX_VEHICLES];
- for(new player=0; player<MAX_PLAYERS; player++) if(IsPlayerInAnyVehicle(player)) unused[GetPlayerVehicleID(player)]=true;
- for(new car = 1; car <= 268; car++) if(!unused[car]) SetVehicleToRespawn(car);
- format(string, 256, "{FF9500}[Server]{FFFFFF} The administrator %s respawned all vehicles in the server.", CheckName(playerid));
- return SendClientMessageToAll(0xFFFFFF00, string);
- }
- if(!strcmp(cmd, "/say", true))
- {
- new text[256];
- if(AdminSystem[playerid][AdminLevel] < 1) return AdminError(playerid);
- text = strrest(cmdtext, idx);
- if(!strlen(text)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /say [Text for all players]");
- format(string, 256, "Administrator %s: %s", CheckName(playerid), text);
- return SendClientMessageToAll(0x006BFFFF, string);
- }
- if(!strcmp(cmd, "/report", true))
- {
- new reason[256];
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /report [PlayerID] [Reason]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- reason = strrest(cmdtext,idx);
- if(!strlen(reason)) return SendClientMessage(playerid,0xFFFFFF00,"[Command] /report [PlayerID] [Reason]");
- format(string,sizeof(string),"[Reports] %s[%d] reported the player %s[%d], reason: %s.", CheckName(playerid),playerid,CheckName(strval(cmd)),strval(cmd),reason);
- for(new i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i) && AdminSystem[i][AdminLevel] != 0) SendClientMessage(i,0xFFFFFF00,string);
- return SendClientMessage(playerid, 0xFFFFFF00, "{005EFF}[System]{FFFFFF} Please wait, your report sent to the online admins.");
- }
- if(!strcmp(cmd, "//", true))
- {
- new text[256];
- if(!AdminSystem[playerid][AdminLevel]) return AdminError(playerid);
- text = strrest(cmdtext,idx);
- if(!strlen(text)) return SendClientMessage(playerid,0xFFFFFF00,"[Command] // [Admin chat]");
- format(string,sizeof(string),"[Admin chat] %s[%d]: %s.", CheckName(playerid),playerid, text);
- for(new i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i) && AdminSystem[i][AdminLevel] != 0) SendClientMessage(i,0xFFA200FF,string);
- return true;
- }
- if(!strcmp(cmd, "/flip", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 3) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /flip [PlayerID]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- format(string, 256, "{005EFF}[System]{FFFFFF} You flipped the vehicle of the player %s.", CheckName(strval(cmd)));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s flipped your vehicle.", CheckName(playerid));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- new Float:Angle;
- GetVehicleZAngle(GetPlayerVehicleID(strval(cmd)), Angle);
- return SetVehicleZAngle(GetPlayerVehicleID(strval(cmd)), Angle);
- }
- if(!strcmp(cmd, "/respawn", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 2) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /respawn [PlayerID]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- format(string, 256, "{005EFF}[System]{FFFFFF} You respawned the player %s.", CheckName(strval(cmd)));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s respawned your character.", CheckName(playerid));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- return SpawnPlayer(strval(cmd));
- }
- if(!strcmp(cmd, "/mute", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 1) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /mute [PlayerID]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- format(string, 256, "{005EFF}[System]{FFFFFF} You muted the player %s.", CheckName(strval(cmd)));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s muted your character.", CheckName(playerid));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- return AdminSystem[strval(cmd)][Muted] = true;
- }
- if(!strcmp(cmd, "/unmute", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 1) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /unmute [PlayerID]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- format(string, 256, "{005EFF}[System]{FFFFFF} You unmuted the player %s.", CheckName(strval(cmd)));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s unmuted your character.", CheckName(playerid));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- AdminSystem[strval(cmd)][Muted] = false;
- return true;
- }
- if(!strcmp(cmd, "/settime", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 4) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /settime [Hour]");
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s changed the time of the server to %d.", CheckName(playerid), strval(cmd));
- SendClientMessageToAll(0xFFFFFF00, string);
- for(new p = 0; p < MAX_PLAYERS; p++) if(IsPlayerConnected(p)) SetPlayerTime(p, strval(cmd), 30);
- return true;
- }
- if(!strcmp(cmd, "/setweather", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 4) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /setweather [Weather 0-45]");
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s changed the weather of the server to %d.", CheckName(playerid), strval(cmd));
- SendClientMessageToAll(0xFFFFFF00, string);
- SetWeather(strval(cmd));
- return true;
- }
- if(!strcmp(cmd, "/resetweapons", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 4) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /resetweapons [PlayerID]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- format(string, 256, "{005EFF}[System]{FFFFFF} You reset the weapons of the player %s.", CheckName(strval(cmd)));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s reset the weapons of your character.", CheckName(playerid));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- return ResetPlayerWeapons(strval(cmd));
- }
- if(!strcmp(cmd, "/cd", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 1) return AdminError(playerid);
- if(CDS) return SendClientMessage(playerid, 0xFFFFFF00, "{F2000C}[Error]{FFFFFF} The countdown already turned on, please wait.");
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /cd [PlayerID]");
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(!IsPlayerConnected(i)) continue;
- CD[i] = strval(cmd)+1;
- CoD[i] = SetTimerEx("CountDown", 1000, true, "%i", i);
- }
- CDS = true;
- return true;
- }
- if(!strcmp(cmd, "/inv", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 1) return AdminError(playerid);
- SendClientMessage(strval(cmd), 0xFFFFFF00, "{005EFF}[System]{FFFFFF} You are now invisible on the map.");
- return SetPlayerColor(playerid, 0xFFFFFFAA);
- }
- if(!strcmp(cmd, "/uninv", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 1) return AdminError(playerid);
- SendClientMessage(strval(cmd), 0xFFFFFF00, "{005EFF}[System]{FFFFFF} You are now invisible on the map.");
- new randcolor = random(sizeof(RandomColors));
- return SetPlayerColor(playerid, RandomColors[randcolor]);
- }
- if(!strcmp(cmd, "/checkip", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 3) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /checkip [PlayerID]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- new IP[16];
- GetPlayerIp(strval(cmd), IP, 16);
- format(string, 256, "{005EFF}[System]{FFFFFF} The player %s's IP is: %s.", CheckName(strval(cmd)), IP);
- return SendClientMessage(playerid, 0xFFFFFF00, string);
- }
- if(!strcmp(cmd, "/freeze", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 1) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /freeze [PlayerID]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- format(string, 256, "{005EFF}[System]{FFFFFF} You frozen the player %s.", CheckName(strval(cmd)));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s frozen your character.", CheckName(playerid));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- return TogglePlayerControllable(strval(cmd), false);
- }
- if(!strcmp(cmd, "/unfreeze", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 1) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /unfreeze [PlayerID]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- format(string, 256, "{005EFF}[System]{FFFFFF} You unfrozen the player %s.", CheckName(strval(cmd)));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s unfrozen your character.", CheckName(playerid));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- return TogglePlayerControllable(strval(cmd), true);
- }
- if(!strcmp(cmd, "/ban", true))
- {
- new reason[256];
- if(AdminSystem[playerid][AdminLevel] < 2) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /ban [PlayerID] [Reason]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- reason = strrest(cmdtext, idx);
- if(!strlen(reason)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /ban [PlayerID] [Reason]");
- format(string, 256, "{FF9500}[Server]{FFFFFF} The administrator %s banned the player %s, reason: %s.", CheckName(playerid), CheckName(strval(cmd)), reason);
- SendClientMessageToAll(0xFFFFFF00, string);
- return BanEx(strval(cmd), reason);
- }
- if(!strcmp(cmd, "/kick", true))
- {
- new reason[256];
- if(AdminSystem[playerid][AdminLevel] < 1) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /kick [PlayerID] [Reason]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- reason = strrest(cmdtext, idx);
- if(!strlen(reason)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /kick [PlayerID] [Reason]");
- format(string, 256, "{FF9500}[Server]{FFFFFF} The administrator %s kicked the player %s, reason: %s.", CheckName(playerid), CheckName(strval(cmd)), reason);
- SendClientMessageToAll(0xFFFFFF00, string);
- return Kick(strval(cmd));
- }
- if(!strcmp(cmd, "/repair", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 2) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /repair [PlayerID]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- if(!IsPlayerInAnyVehicle(playerid)) return NotIV(playerid);
- format(string, 256, "{005EFF}[System]{FFFFFF} You repaired the vehicle of the player %s.", CheckName(strval(cmd)));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s repaired your vehicle.", CheckName(playerid));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- RepairVehicle(GetPlayerVehicleID(strval(cmd)));
- return true;
- }
- if(!strcmp(cmd, "/setworld", true))
- {
- new cmd2[256];
- if(AdminSystem[playerid][AdminLevel] < 2) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /setworld [PlayerID] [World]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- cmd2 = strtok(cmdtext, idx);
- if(!strlen(cmd2)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /setworld [PlayerID] [Virtual World ID]");
- format(string, 256, "{005EFF}[System]{FFFFFF} You changed for the player %s his virtual world to %d.", CheckName(strval(cmd)), strval(cmd2));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s changed your virtual world to %d.", CheckName(playerid), strval(cmd2));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- return SetPlayerVirtualWorld(strval(cmd), strval(cmd2));
- }
- if(!strcmp(cmd, "/setskin", true))
- {
- new cmd2[256];
- if(AdminSystem[playerid][AdminLevel] < 2) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /setskin [PlayerID] [Skin]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- cmd2 = strtok(cmdtext, idx);
- if(!strlen(cmd2)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /setskin [PlayerID] [Skin ID]");
- format(string, 256, "{005EFF}[System]{FFFFFF} You changed for the player %s his skin to %d.", CheckName(strval(cmd)), strval(cmd2));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s changed your skin to %d.", CheckName(playerid), strval(cmd2));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- return SetPlayerSkin(strval(cmd), strval(cmd2));
- }
- if(!strcmp(cmd, "/sethealth", true))
- {
- new cmd2[256];
- if(AdminSystem[playerid][AdminLevel] < 3) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /sethealth [PlayerID] [Health]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- cmd2 = strtok(cmdtext, idx);
- if(!strlen(cmd2)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /sethealth [PlayerID] [Health amount]");
- format(string, 256, "{005EFF}[System]{FFFFFF} You changed for the player %s his health to %d.", CheckName(strval(cmd)), strval(cmd2));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s changed your health to %d.", CheckName(playerid), strval(cmd2));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- return SetPlayerHealth(strval(cmd), strval(cmd2));
- }
- if(!strcmp(cmd, "/setarmour", true))
- {
- new cmd2[256];
- if(AdminSystem[playerid][AdminLevel] < 3) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /setarmour [PlayerID] [Armour]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- cmd2 = strtok(cmdtext, idx);
- if(!strlen(cmd2)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /setarmour [PlayerID] [Armour]");
- format(string, 256, "{005EFF}[System]{FFFFFF} You changed for the player %s his armour to %d.", CheckName(strval(cmd)), strval(cmd2));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s changed your armour to %d.", CheckName(playerid), strval(cmd2));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- return SetPlayerArmour(strval(cmd), strval(cmd2));
- }
- if(!strcmp(cmd, "/unbanip", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 3) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /unbanip [IP]");
- format(string,sizeof(string),"unbanip %s", cmd);
- SendRconCommand(string);
- SendRconCommand("reloadbans");
- format(string, 256, "{005EFF}[System]{FFFFFF} You unbanned the ip: %s.", cmd);
- return SendClientMessage(playerid, 0xFFFFFF00, string);
- }
- if(!strcmp(cmd, "/setmoney", true))
- {
- new cmd2[256];
- if(AdminSystem[playerid][AdminLevel] < 5) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /setmoney [PlayerID] [Money]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- cmd2 = strtok(cmdtext, idx);
- if(!strlen(cmd2)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /setmoney [PlayerID] [Money amount]");
- format(string, 256, "{005EFF}[System]{FFFFFF} You changed for the player %s his money amount to %d.", CheckName(strval(cmd)), strval(cmd2));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s changed your money amount to %d.", CheckName(playerid), strval(cmd2));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- ResetPlayerMoney(strval(cmd));
- return GivePlayerMoney(strval(cmd), strval(cmd2));
- }
- if(!strcmp(cmd, "/givemoney", true))
- {
- new cmd2[256];
- if(AdminSystem[playerid][AdminLevel] < 5) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /givemoney [PlayerID] [Money]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- cmd2 = strtok(cmdtext, idx);
- if(!strlen(cmd2)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /give money [PlayerID] [Money amount]");
- format(string, 256, "{005EFF}[System]{FFFFFF} You gave to the player %s amount of money(%d).", CheckName(strval(cmd)), strval(cmd2));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s gave to you amount of money(%d).", CheckName(playerid), strval(cmd2));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- return GivePlayerMoney(strval(cmd), strval(cmd2));
- }
- if(!strcmp(cmd, "/giveweapon", true))
- {
- new cmd2[256], cmd3[256], wname[64];
- if(AdminSystem[playerid][AdminLevel] < 4) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /giveweapon [PlayerID] [Weapon ID] [Ammo]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- cmd2 = strtok(cmdtext, idx);
- if(!strlen(cmd2)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /giveweapon [PlayerID] [Weapon ID] [Ammo]");
- cmd3 = strtok(cmdtext, idx);
- if(!strlen(cmd3)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /giveweapon [PlayerID] [Weapon ID] [Ammo]");
- GetWeaponName(strval(cmd2), wname, 64);
- format(string, 256, "{005EFF}[System]{FFFFFF} You gave to the player %s the weapon %s with %d bullets.", CheckName(strval(cmd)), wname, strval(cmd3));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s gave you the weapon %s with %d bullets.", CheckName(playerid), wname, strval(cmd3));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- return GivePlayerWeapon(strval(cmd), strval(cmd2), strval(cmd3));
- }
- if(!strcmp(cmd, "/takemoney", true))
- {
- new cmd2[256];
- if(AdminSystem[playerid][AdminLevel] < 4) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /takemoney [PlayerID] [Money]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- cmd2 = strtok(cmdtext, idx);
- if(!strlen(cmd2)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /take money [PlayerID] [Money amount]");
- format(string, 256, "{005EFF}[System]{FFFFFF} You took from the player %s amount of money(%d).", CheckName(strval(cmd)), strval(cmd2));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s took from you amount of money(%d).", CheckName(playerid), strval(cmd2));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- return GivePlayerMoney(strval(cmd), -strval(cmd2));
- }
- if(!strcmp(cmd, "/setinterior", true))
- {
- new cmd2[256];
- if(AdminSystem[playerid][AdminLevel] < 2) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /setinterior [PlayerID] [Interior]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- cmd2 = strtok(cmdtext, idx);
- if(!strlen(cmd2)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /setinterior [PlayerID] [Interior ID]");
- format(string, 256, "{005EFF}[System]{FFFFFF} You changed for the player %s his interior to %d.", CheckName(strval(cmd)), strval(cmd2));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s changed your interior to %d.", CheckName(playerid), strval(cmd2));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- return SetPlayerInterior(strval(cmd), strval(cmd2));
- }
- if(!strcmp(cmd, "/spec", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 1) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /spec [PlayerID/Off]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- if(!strcmp(cmd, "off", true)) return TogglePlayerSpectating(playerid, 0), SpawnPlayer(playerid);
- format(string, 256, "{005EFF}[System]{FFFFFF} You are now watching on the player %s.", CheckName(strval(cmd)));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- TogglePlayerSpectating(playerid,1);
- return PlayerSpectatePlayer(playerid,strval(cmd));
- }
- if(!strcmp(cmd, "/goto", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 1) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /goto [PlayerID]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- format(string, 256, "{005EFF}[System]{FFFFFF} You teleported to the player %s.", CheckName(strval(cmd)));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s teleported to you.", CheckName(playerid));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- new Float:Pos[3];
- GetPlayerPos(strval(cmd), Pos[0], Pos[1], Pos[2]);
- if(GetPlayerState(playerid) != 2) SetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- else SetVehiclePos(GetPlayerVehicleID(playerid), Pos[0], Pos[1], Pos[2]);
- return true;
- }
- if(!strcmp(cmd, "/get", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 1) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /get [PlayerID]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- format(string, 256, "{005EFF}[System]{FFFFFF} You teleported the player %s to you.", CheckName(strval(cmd)));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s teleported you to his position.", CheckName(playerid));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- new Float:Pos[3];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- if(GetPlayerState(strval(cmd)) != 2) SetPlayerPos(strval(cmd), Pos[0], Pos[1], Pos[2]);
- else SetVehiclePos(GetPlayerVehicleID(strval(cmd)), Pos[0], Pos[1], Pos[2]);
- return true;
- }
- if(!strcmp(cmd, "/slap", true))
- {
- if(AdminSystem[playerid][AdminLevel] < 3) return AdminError(playerid);
- cmd = strtok(cmdtext, idx);
- if(!strlen(cmd)) return SendClientMessage(playerid, 0xFFFFFF00, "[Command] /slap [PlayerID]");
- if(!IsPlayerConnected(strval(cmd))) return InvalidID(playerid);
- format(string, 256, "{005EFF}[System]{FFFFFF} You teleported to the player %s.", CheckName(strval(cmd)));
- SendClientMessage(playerid, 0xFFFFFF00, string);
- format(string, 256, "{005EFF}[System]{FFFFFF} The administrator %s teleported to you.", CheckName(playerid));
- SendClientMessage(strval(cmd), 0xFFFFFF00, string);
- new Float:Pos[3];
- GetPlayerPos(strval(cmd), Pos[0], Pos[1], Pos[2]);
- return SetPlayerPos(strval(cmd), Pos[0], Pos[1], Pos[2]+3);
- }
- if(!strcmp(cmd, "/adminhelp", true))
- {
- if(!AdminSystem[playerid][AdminLevel]) return SendClientMessage(playerid, 0xFFFFFF00, "[Error] You aren't administrator.");
- if(AdminSystem[playerid][AdminLevel] >= 1) SendClientMessage(playerid, 0xFFFFFF00, "[Admin level 1] mute, unmute, inv, uninv, freeze, unfreeze, kick, cd, spec (off), say, goto, get, //.");
- if(AdminSystem[playerid][AdminLevel] >= 2) SendClientMessage(playerid, 0xFFFFFF00, "[Admin level 2] ban, repair, setskin, setinterior, setworld, respawn.");
- if(AdminSystem[playerid][AdminLevel] >= 3) SendClientMessage(playerid, 0xFFFFFF00, "[Admin level 3] checkip, unbanip, clearchat, slap, flip, sethealth, setarmour.");
- if(AdminSystem[playerid][AdminLevel] >= 4) SendClientMessage(playerid, 0xFFFFFF00, "[Admin level 4] settime, setweather, resetweapons, giveweapon, takemoney.");
- if(AdminSystem[playerid][AdminLevel] >= 5) SendClientMessage(playerid, 0xFFFFFF00, "[Admin level 5] setadmin, setmoney, givemoney, hideme, chat, respawnvehicles.");
- return true;
- }
- if(!strcmp(cmd, "/credit", true) || !strcmp(cmd, "/credits", true)) SendClientMessage(playerid, 0xFFFFFF00, "Admin mode by: {FF0000}ZiPoNz{FFFFFF}.");
- return false;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- return true;
- }
- stock CheckName(playerid)
- {
- new PName[24];
- GetPlayerName(playerid, PName, 24);
- return PName;
- }
- stock CheckFile(playerid)
- {
- new file[64];
- format(file, 64, "/Z-AdminMode/%s.ini", CheckName(playerid));
- return file;
- }
- stock NotIV(playerid) return SendClientMessage(playerid, 0xFFFFFF00, "{F2000C}[Error]{FFFFFF} The player isn't in a vehicle.");
- stock InvalidID(playerid) return SendClientMessage(playerid, 0xFFFFFF00, "{F2000C}[Error]{FFFFFF} The player isn't connected.");
- stock AdminError(playerid) return SendClientMessage(playerid, 0xFFFFFF00, "{F2000C}[Error]{FFFFFF} You don't have the permissions to use this command.");
- IsNumeric(const string[])
- {
- for (new i = 0, j = strlen(string); i < j; i++)
- {
- if (string[i] > '9' || string[i] < '0') return false;
- }
- return true;
- }
- stock strrest(const string[], &index)
- {
- new length = strlen(string);
- while ((index < length) && (string[index] <= ' ')) index++;
- new offset = index;
- new result[128];
- while ((index < length) && ((index - offset) < (sizeof(result) - 1))) result[index - offset] = string[index], index++;
- result[index - offset] = EOS;
- return result;
- }
- stock NoneVehicle(vehicleid)
- {
- for(new i=0;i<MAX_PLAYERS;i++) if(IsPlayerInVehicle(i,vehicleid)) return true;
- return false;
- }
- forward CountDown(playerid);
- public CountDown(playerid)
- {
- new string[256];
- CD[playerid]--;
- if(!CD[playerid]) GameTextForPlayer(playerid, "~g~GO!", 1000, 4), KillTimer(CoD[playerid]), CDS = false;
- else format(string, 64, "~y~%d", CD[playerid]), GameTextForPlayer(playerid, string, 1000, 4);
- return true;
- }
Advertisement
Add Comment
Please, Sign In to add comment