Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <dudb>
- #define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
- /// CJAdmin 1.0 By CJ101
- #define COLOR_GREY 0xAFAFAFAA
- #define COLOR_GREEN 0x009700AA
- #define COLOR_RED 0xFF0000AA
- #define COLOR_LIGHTRED 0xFF0000AA
- #define COLOR_YELLOW 0xFFFF00AA
- #define COLOR_PINK 0xFF66FFAA
- #define COLOR_WHITE 0xFFFFFFAA
- #define COLOR_BLUE 0x0000BBAA
- #define COLOR_LIGHTBLUE 0x33CCFFAA
- #define COLOR_DARKRED 0x660000AA
- #define COLOR_ORANGE 0xFF9900AA
- enum Account
- {
- Password[128],LoggedIn,Cash,AdminLvl,
- Kills,Deaths,Color,IP[16],God,DrunkLvl,FS
- }
- new Stats[MAX_PLAYERS][Account];
- new cd;
- #define ADMIN_SPEC_TYPE_NONE 0
- #define ADMIN_SPEC_TYPE_PLAYER 1
- #define ADMIN_SPEC_TYPE_VEHICLE 2
- new gSpectateID[MAX_PLAYERS];
- new gSpectateType[MAX_PLAYERS];
- new GodTimer;
- new Failed[MAX_PLAYERS];
- new bool:Muted[MAX_PLAYERS];
- forward GodUpdate();
- forward IsPlayerAdminLevel(playerid,ALevel);
- forward SendMessageToAdmins(string[]);
- forward countdown();
- forward ACUpdate(playerid);
- forward OnPlayerDeath(playerid,killerid, reason);
- public ACUpdate(playerid)
- {
- new string[128],pName[90];
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- new wpn = GetPlayerWeapon(i);
- new Float:health;
- GetPlayerHealth(i,health);
- GetPlayerName(i, pName, sizeof pName);
- if(wpn == 38 || wpn == 36)
- {
- if(Stats[playerid][AdminLvl] > 0) return 0;
- if(IsPlayerNPC(playerid)) return 0;
- format(string, sizeof(string), "%s has been banned for weapon hacking.",pName);
- SendClientMessage(i,COLOR_RED,"You have been banned. (Reason: Weapon Hacking)");
- SendClientMessageToAll(COLOR_RED,string);
- BanEx(i,"Weapon Hacking");
- }
- if(health > 100)
- {
- if(Stats[playerid][AdminLvl] > 0) return 0;
- if(IsPlayerNPC(playerid)) return 0;
- format(string, sizeof(string), "%s has been banned for godmode.",pName);
- SendClientMessage(i,COLOR_RED,"You have been banned. (Reason: GodMode)");
- print(string); //send the message to consule
- SendClientMessageToAll(COLOR_RED,string);
- BanEx(i,"GodMode");
- }
- }
- return 1;
- }
- public countdown()
- {
- if(cd==4) GameTextForAll("~g~Starting",1000,4);
- cd--;
- if(cd==0)
- {
- GameTextForAll("~b~GO~ r~!",1000,4);
- cd = -1;
- for(new i = 0; i < MAX_PLAYERS; i++) {
- PlayerPlaySound(i, 1057, 0.0, 0.0, 0.0);
- }
- return 0;
- }
- else
- {
- new text[7]; format(text,sizeof(text),"~g~ %d",cd);
- for(new i = 0; i < MAX_PLAYERS; i++) {
- PlayerPlaySound(i, 1056, 0.0, 0.0, 0.0);
- }
- GameTextForAll(text,1000,4);
- }
- SetTimer("countdown",1000,0);
- return 0;
- }
- public SendMessageToAdmins(string[])
- {
- for(new i = 0; i < MAX_VEHICLES; i++)
- {
- if(Stats[i][AdminLvl] > 0)
- {
- new string2[256];
- format(string2, sizeof(string2), "[AdminMsg] %s ",string);
- if(IsPlayerConnected(i)) SendClientMessage(i,COLOR_YELLOW,string2);
- }
- }
- }
- public IsPlayerAdminLevel(playerid,ALevel)
- {
- if(Stats[playerid][AdminLvl] >= ALevel) { return true; }
- else { return false; }
- }
- public GodUpdate()
- {
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i) && Stats[i][God] == 1)
- {
- if(IsPlayerInAnyVehicle(i)) SetVehicleHealth(GetPlayerVehicleID(i),10000);
- SetPlayerHealth(i,1000);
- }
- }
- }
- public OnFilterScriptInit()
- {
- print("<===> CJAdmin by CJ101 Loaded <===>");
- GodTimer = SetTimer("GodUpdate",2000,1);
- SetTimer("ACUpdate",1000,true);
- return 1;
- }
- public OnFilterScriptExit()
- {
- KillTimer(GodTimer);
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- Stats[playerid][Kills] = 0; Stats[playerid][Deaths] = 0;
- Stats[playerid][LoggedIn] = 0; Stats[playerid][AdminLvl] = 0;
- new name[120], str[180],tmpip[16];
- GetPlayerIp(playerid,tmpip,sizeof(tmpip));
- GetPlayerName(playerid, name, sizeof name);
- format(str,sizeof(str),"%s has joined the server.",name);
- SendClientMessageToAll(COLOR_GREY,str);
- format(str, sizeof str, "%s.dudb.sav", name);
- if(fexist(str))
- {
- new tmp2[256]; tmp2 = dini_Get(str,"ip");
- if(!strcmp(tmpip,tmp2,true))
- {
- Login(playerid);
- SendClientMessage(playerid,COLOR_GREEN,"Automatically Logged In.");
- }
- else
- {
- SendClientMessage(playerid,COLOR_GREEN,"Please use login - we could not automatially log you in.");
- }
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You are not registered, please register.");
- }
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- new pName[90],string[256];
- GetPlayerName(playerid,pName,sizeof(pName));
- switch(reason)
- {
- case 0: format(string, sizeof(string), "%s has left the server. (Crashed)", pName);
- case 1: format(string, sizeof(string), "%s has left the server. (Leaving)", pName);
- case 2: format(string, sizeof(string), "%s has left the server. (Kicked)", pName);
- }
- SendClientMessageToAll(COLOR_GREY,string);
- Save(playerid);
- return 1;
- }
- dcmd_register(playerid,params[])
- {
- new name[90];
- GetPlayerName(playerid,name,sizeof(name));
- if (Stats[playerid][LoggedIn] == 1) return SendClientMessage(playerid,COLOR_RED,"You are logged in!");
- if (udb_Exists(name)) return SendClientMessage(playerid,COLOR_RED,"This account already exists, please login.");
- if (strlen(params) == 0) return SendClientMessage(playerid,COLOR_RED,"USAGE: /register <password>");
- if (udb_Create(name,params))
- {
- new file[256],ip[100],tmp[260];
- GetPlayerName(playerid,name,sizeof(name)); format(file,sizeof(file),"%s.ini",udb_encode(name));
- GetPlayerIp(playerid,ip,100);
- dini_Set(file,"ip",tmp);
- dUserSetINT(name).("AdminLvl",0);
- dUserSetINT(name).("Money",0);
- dUserSetINT(name).("Kills",0);
- dUserSetINT(name).("Deaths",0);
- Stats[playerid][LoggedIn] = 1;
- SendClientMessage(playerid,COLOR_GREEN, "You have been registered and logged in.");
- PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
- return 1;
- }
- return 1;
- }
- dcmd_login(playerid,params[])
- {
- new name[90];
- GetPlayerName(playerid,name,sizeof(name));
- if (Stats[playerid][LoggedIn] == 1) return SendClientMessage(playerid,COLOR_RED,"You are already logged in.");
- if (!udb_Exists(name)) return SendClientMessage(playerid,COLOR_RED,"Account doesn't exist, please use '/register [password]'.");
- if (strlen(params)==0) return SendClientMessage(playerid,COLOR_RED,"Usage: login <password>");
- if (udb_CheckLogin(name,params))
- {
- new file[256], tmp3[100];
- format(file,sizeof(file),"%s.ini",udb_encode(name));
- GetPlayerIp(playerid,tmp3,100);
- dini_Set(file,"ip",tmp3);
- Login(playerid);
- SendClientMessage(playerid,COLOR_GREEN,"ACCOUNT: Successfully Logged In");
- }
- else
- {
- Failed[playerid]++;
- if(Failed[playerid] == 5)
- {
- new string[128];
- format(string, sizeof(string), "%s has been kicked for bad login attempts.",name);
- SendClientMessageToAll(COLOR_RED, string);
- Kick(playerid);
- }
- return SendClientMessage(playerid,COLOR_RED,"Login failed! Incorrect Password.");
- }
- return 1;
- }
- dcmd_announce(playerid,params[]) {
- if(IsPlayerAdminLevel(playerid,3))
- {
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"USAGE: /announce <text>");
- return GameTextForAll(params,4000,3);
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be admin level 3 to do this.");
- }
- return 1;
- }
- dcmd_kick(playerid,params[])
- {
- new tmp2[300],tmp[300], Index;
- tmp = strtok(params,Index), tmp2 = strtok(params,Index);
- new id = strval(tmp);
- if(IsPlayerAdminLevel(playerid,1))
- {
- if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_RED,"That Player Is Not Connected");
- if(Stats[id][AdminLvl] >= Stats[playerid][AdminLvl]) return SendClientMessage(playerid,COLOR_RED,"You cant kick this admin.");
- new string2[156], pname[24], pname2[24];
- GetPlayerName(playerid, pname, 24);
- GetPlayerName(id, pname2, 24);
- format(string2, sizeof(string2), "%s Has Been Kicked By Admin %s (Reason: %s)",pname2,pname,tmp2);
- SendClientMessageToAll(COLOR_RED,string2);
- Kick(id);
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be admin to do this.");
- }
- return 1;
- }
- dcmd_level(playerid,params[])
- {
- new tmp2[300],tmp[300], Index;
- tmp = strtok(params,Index), tmp2 = strtok(params,Index);
- new id = strval(tmp), level = strval(tmp2);
- if(IsPlayerAdminLevel(playerid,5))
- {
- if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_RED,"That Player Is Not Connected");
- new str[256],aname[128];
- GetPlayerName(playerid,aname,sizeof(aname));
- format(str,sizeof(str),"Admin %s has made you admin level %d.",aname);
- SendClientMessage(id,COLOR_YELLOW,str);
- Stats[id][AdminLvl] = level;
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be admin level 5 to do this.");
- }
- return 1;
- }
- dcmd_ban(playerid,params[]) {
- if(Stats[playerid][AdminLvl] >= 1)
- {
- new tmp[256], tmp2[256], Index;
- tmp = strtok(params,Index), tmp2 = strtok(params,Index);
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED, "USAGE: /ban <playerid> <reason>");
- if(!strlen(tmp2)) return SendClientMessage(playerid,COLOR_RED, "ERROR: No Reason Specified.");
- new id, pn[120], aname[120], string[128];
- id = strval(tmp);
- if(Stats[id][AdminLvl] >= Stats[playerid][AdminLvl]) return SendClientMessage(playerid,COLOR_RED,"You cant ban this admin.");
- GetPlayerName(id, pn, sizeof(pn));
- GetPlayerName(playerid, aname, sizeof(aname));
- format(string,sizeof(string),"%s has been banned by Admin %s <Reason: %s>",pn,aname,params[2]);
- SendClientMessageToAll(COLOR_RED,string);
- BanEx(id, string);
- }
- else return SendClientMessage(playerid,COLOR_RED,"You must be admin to do this.");
- return 1;
- }
- dcmd_info(playerid,params[])
- {
- new tmp[300], Index;
- tmp = strtok(params,Index);
- new id = strval(tmp);
- if(IsPlayerAdminLevel(playerid,1))
- {
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED, "USAGE: /info <playerid>");
- if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_RED,"That Player Is Not Connected");
- new str[256],name[128],Float:health,Float:armor;
- GetPlayerName(id,name,sizeof(name));
- GetPlayerHealth(id,health);
- format(str,sizeof(str),"(%s)(ID:%d) Health: %f - Armour: %f - Vehicle: %d - Model: %d - Drunk: %d",name,id,floatround(health),floatround(armor),GetPlayerVehicleID(id),GetVehicleModel(GetPlayerVehicleID(id)),GetPlayerDrunkLevel(id));
- SendClientMessage(playerid,COLOR_YELLOW,str);
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be admin to do this.");
- }
- return 1;
- }
- dcmd_settime(playerid,params[])
- {
- new Index, tmp[300];
- tmp = strtok(params,Index);
- new time = strval(tmp);
- if(IsPlayerAdminLevel(playerid,2))
- {
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"Usage: /settime <time>");
- if(time > 24) return SendClientMessage(playerid,COLOR_RED,"Invalid time. Maximum time is 24.");
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i)) SetPlayerTime(i,time,0);
- }
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be admin level 2 to do this.");
- }
- return 1;
- }
- dcmd_goto(playerid,params[])
- {
- new Index, tmp[300];
- tmp = strtok(params,Index);
- new id = strval(tmp);
- if(IsPlayerAdminLevel(playerid,2))
- {
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"Usage: /goto <playerid>");
- if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_RED,"That player is not connected.");
- new Float:X,Float:Y,Float:Z;
- GetPlayerPos(id,X,Y,Z);
- SetPlayerPos(playerid,X,Y,Z);
- SetPlayerInterior(playerid,GetPlayerInterior(id));
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be admin level 2 to do this.");
- }
- return 1;
- }
- dcmd_gethere(playerid,params[])
- {
- new Index, tmp[300];
- tmp = strtok(params,Index);
- new id = strval(tmp);
- if(IsPlayerAdminLevel(playerid,2))
- {
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"Usage: /gethere <id>");
- if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_RED,"That player is not connected.");
- new Float:X,Float:Y,Float:Z;
- GetPlayerPos(playerid,X,Y,Z);
- SetPlayerPos(id,X,Y,Z);
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be admin level 2 to do this.");
- }
- return 1;
- }
- dcmd_setcash(playerid,params[])
- {
- new tmp2[300],tmp[300], Index;
- tmp = strtok(params,Index), tmp2 = strtok(params,Index);
- new id = strval(tmp);
- new pcash = strval(tmp2);
- if(IsPlayerAdminLevel(playerid,3))
- {
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"Usage: /setcash <playerid> <amount>");
- if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_RED,"That Player Is Not Connected");
- new string[456],pname[24], pname2[24];
- GetPlayerName(playerid, pname, 24);
- GetPlayerName(id, pname2, 24);
- format(string, sizeof(string), "Your Cash Has Been Set To $%d by Admin %s",pcash,pname);
- SendClientMessage(id,COLOR_YELLOW,string);
- format(string, sizeof(string), "You Set %s's Cash to $%d",pname2,pcash);
- SendClientMessage(playerid,COLOR_YELLOW,string);
- ResetPlayerMoney(id);
- GivePlayerMoney(id,pcash);
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be level 3 to do this.");
- }
- return 1;
- }
- dcmd_giveallcash(playerid,params[])
- {
- new tmp[300], Index;
- tmp = strtok(params,Index);
- new pcash = strval(tmp);
- if(IsPlayerAdminLevel(playerid,3))
- {
- new string[456],string2[456], pname[24];
- GetPlayerName(playerid, pname, 24);
- format(string, sizeof(string), "You were given $%d by Admin %s",pcash,pname);
- format(string2, sizeof(string2), "You Gave All Players $%d",pcash);
- SendClientMessage(playerid,COLOR_YELLOW,string2);
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i) && i != playerid)
- {
- SendClientMessage(i,COLOR_YELLOW,string);
- GivePlayerMoney(i,pcash);
- }
- }
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be level 3 to do this.");
- }
- return 1;
- }
- dcmd_freezeall(playerid,params[])
- {
- #pragma unused params
- if(IsPlayerAdminLevel(playerid,3))
- {
- new string[456],pname[24];
- GetPlayerName(playerid, pname, 24);
- format(string, sizeof(string), "Admin %s has frozen all players.",pname);
- SendClientMessage(playerid,COLOR_YELLOW,string);
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- TogglePlayerControllable(i,false);
- }
- }
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be level 3 to do this.");
- }
- return 1;
- }
- dcmd_unfreezeall(playerid,params[])
- {
- #pragma unused params
- if(IsPlayerAdminLevel(playerid,3))
- {
- new string[456],pname[24];
- GetPlayerName(playerid, pname, 24);
- format(string, sizeof(string), "Admin %s has unfrozen all players.",pname);
- SendClientMessage(playerid,COLOR_YELLOW,string);
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- TogglePlayerControllable(i,true);
- }
- }
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be level 3 to do this.");
- }
- return 1;
- }
- dcmd_setscore(playerid,params[])
- {
- new tmp2[300],tmp[300], Index;
- tmp = strtok(params,Index), tmp2 = strtok(params,Index);
- new id = strval(tmp);
- new score = strval(tmp2);
- if(IsPlayerAdminLevel(playerid,3))
- {
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"Usage: /setscore <id> <score>");
- if(id == playerid) return SendClientMessage(playerid,COLOR_RED,"You cannot set your own score.");
- if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_RED,"That Player Is Not Connected");
- new string[456],pname[24], pname2[24];
- GetPlayerName(playerid, pname, 24);
- GetPlayerName(id, pname2, 24);
- format(string, sizeof(string), "Your Score Has Been Set To %d by Admin %s",score,pname);
- SendClientMessage(id,COLOR_YELLOW,string);
- format(string, sizeof(string), "You Set %s's Score to %d",pname2,score);
- SendClientMessage(playerid,COLOR_YELLOW,string);
- SetPlayerScore(id,score);
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be level 3 to do this.");
- }
- return 1;
- }
- dcmd_setwantedlevel(playerid,params[])
- {
- new tmp2[300],tmp[300], Index;
- tmp = strtok(params,Index), tmp2 = strtok(params,Index);
- new id = strval(tmp);
- new level = strval(tmp2);
- if(IsPlayerAdminLevel(playerid,3))
- {
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"Usage: /setwantedlevel <id> <cash>");
- if(id == playerid) return SendClientMessage(playerid,COLOR_RED,"You cannot set your own score.");
- if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_RED,"That Player Is Not Connected");
- if(level > 50000) return SendClientMessage(playerid,COLOR_RED,"Invalid Wanted Level.");
- new string[456],pname[24], pname2[24];
- GetPlayerName(playerid, pname, 24);
- GetPlayerName(id, pname2, 24);
- format(string, sizeof(string), "Your Wanted Level Has Been Set To %d by Admin %s",level,pname);
- SendClientMessage(id,COLOR_YELLOW,string);
- format(string, sizeof(string), "You Set %s's Wanted Level to %d",pname2,level);
- SendClientMessage(playerid,COLOR_YELLOW,string);
- SetPlayerWantedLevel(playerid,level);
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be level 3 to do this.");
- }
- return 1;
- }
- dcmd_freeze(playerid,params[])
- {
- new tmp2[300],tmp[300], Index;
- tmp = strtok(params,Index), tmp2 = strtok(params,Index);
- new id = strval(tmp);
- if(IsPlayerAdminLevel(playerid,1))
- {
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"Usage: /freeze <id>");
- if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_RED,"That Player Is Not Connected");
- if(Stats[id][AdminLvl] >= Stats[playerid][AdminLvl]) return SendClientMessage(playerid,COLOR_RED,"You cant freeze this admin.");
- new string[256], pname[24], pname2[24];
- GetPlayerName(playerid, pname, 24);
- GetPlayerName(id, pname2, 24);
- format(string, sizeof(string), "%s Has Been Frozen by Admin %s (Reason: %s)",pname2,pname,tmp2);
- SendClientMessageToAll(COLOR_RED,string);
- TogglePlayerControllable(id,false);
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be admin to do this.");
- }
- return 1;
- }
- dcmd_unfreeze(playerid,params[])
- {
- new tmp2[300],tmp[300], Index;
- tmp = strtok(params,Index), tmp2 = strtok(params,Index);
- new id = strval(tmp);
- if(IsPlayerAdminLevel(playerid,1))
- {
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"Usage: /unfreeze <id>");
- if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_RED,"That Player Is Not Connected");
- new string[256], pname[24], pname2[24];
- GetPlayerName(playerid, pname, 24);
- GetPlayerName(id, pname2, 24);
- format(string, sizeof(string), "%s Has Been UnFrozen by Admin %s",pname2,pname);
- SendClientMessageToAll(COLOR_YELLOW,string);
- TogglePlayerControllable(id,true);
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be admin to do this.");
- }
- return 1;
- }
- dcmd_cb(playerid,params[])
- {
- new tmp[300], Index;
- tmp = strtok(params,Index);
- new string[256];
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"Usage: /cb <text>");
- format(string, sizeof(string), "Chat Bubble Set To %s",tmp);
- SendClientMessage(playerid,COLOR_YELLOW,string);
- SetPlayerChatBubble(playerid,tmp,COLOR_YELLOW,100,50000);
- return 1;
- }
- dcmd_countdown(playerid,params[]) {
- #pragma unused params
- if(IsPlayerAdminLevel(playerid,1))
- {
- if(cd == -1)
- {
- cd = 4;
- new string[256],pname[90];
- GetPlayerName(playerid, pname, 24);
- format(string, sizeof(string), "Admin %s has started a countdown.",pname);
- SendClientMessageToAll(COLOR_YELLOW,string);
- SetTimer("countdown",1000,0);
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"Countdown already in progress..");
- }
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be admin to do this.");
- }
- return 1;
- }
- dcmd_sethealth(playerid,params[])
- {
- new tmp2[300],tmp[300], Index;
- tmp = strtok(params,Index), tmp2 = strtok(params,Index);
- new id = strval(tmp);
- new health = strval(tmp2);
- if(IsPlayerAdminLevel(playerid,4))
- {
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"Usage: /sethealth <id> <health>");
- if(!IsPlayerConnected(id)) SendClientMessage(playerid,COLOR_RED,"That Player Not Connected!");
- if(health > 100) return SendClientMessage(playerid,COLOR_RED,"Cant be higher than 100!");
- new string[256],pname[24], pname2[24];
- GetPlayerName(playerid, pname, 24);
- GetPlayerName(id, pname2, 24);
- format(string, sizeof(string), "You Set %s's Health To %d",pname2,health);
- SendClientMessage(playerid,COLOR_YELLOW,string);
- format(string, sizeof(string), "Your Health Has Been Set To %d by Admin %s",health,pname);
- SendClientMessage(id,COLOR_YELLOW,string);
- SetPlayerHealth(id,health);
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be level 3 admin to do this.");
- }
- return 1;
- }
- dcmd_setdrunklevel(playerid,params[])
- {
- new tmp2[300],tmp[300], Index;
- tmp = strtok(params,Index), tmp2 = strtok(params,Index);
- new id = strval(tmp);
- new lvl = strval(tmp2);
- if(IsPlayerAdminLevel(playerid,2))
- {
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"Usage: /setdrunklevel <id> <drunk>");
- if(!IsPlayerConnected(id)) SendClientMessage(playerid,COLOR_RED,"That Player Not Connected!");
- new string[256],pname[24], pname2[24];
- GetPlayerName(playerid, pname, 24);
- GetPlayerName(id, pname2, 24);
- format(string, sizeof(string), "You Set %s's Drunk Level To %d",pname2,lvl);
- SendClientMessage(playerid,COLOR_YELLOW,string);
- format(string, sizeof(string), "Your Drunk Level Was Set To %d by Admin %s",lvl,pname);
- SendClientMessage(id,COLOR_YELLOW,string);
- SetPlayerDrunkLevel(playerid,lvl);
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be level 2 admin to do this.");
- }
- return 1;
- }
- dcmd_setinterior(playerid,params[])
- {
- new tmp2[300],tmp[300], Index;
- tmp = strtok(params,Index), tmp2 = strtok(params,Index);
- new id = strval(tmp);
- new intr = strval(tmp2);
- if(IsPlayerAdminLevel(playerid,2))
- {
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"Usage: /setinterior <id> <interior>");
- if(!IsPlayerConnected(id)) SendClientMessage(playerid,COLOR_RED,"That Player Not Connected!");
- new string[256],pname[24], pname2[24];
- GetPlayerName(playerid, pname, 24);
- GetPlayerName(id, pname2, 24);
- format(string, sizeof(string), "You Set %s's Interior To %d",pname2,intr);
- SendClientMessage(playerid,COLOR_YELLOW,string);
- format(string, sizeof(string), "Your Interior Has Been Set To %d by Admin %s",intr,pname);
- SendClientMessage(id,COLOR_YELLOW,string);
- SetPlayerInterior(playerid,intr);
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be level 2 admin to do this.");
- }
- return 1;
- }
- dcmd_giveweapon(playerid,params[])
- {
- if(Stats[playerid][AdminLvl] >= 3)
- {
- new tmp[256], tmp2[256], tmp3[256],Index;
- tmp = strtok(params,Index);
- tmp2 = strtok(params,Index);
- tmp3 = strtok(params,Index);
- if(!strlen(tmp) || !strlen(tmp2)) return SendClientMessage(playerid,COLOR_RED, "USAGE: /giveweapon [playerid] [weapon id/name] [ammo]");
- new id = strval(tmp), weap, ammo1, WeapName[32], string[128];
- if(!strlen(tmp3) || !IsNumeric(tmp3) || strval(tmp3) <= 0 || strval(tmp3) > 99999) ammo1 = 500; else ammo1 = strval(tmp3);
- if(!IsNumeric(tmp2)) weap = GetWeaponIDFromName(tmp2); else weap = strval(tmp2);
- if(IsPlayerConnected(id) && id != INVALID_PLAYER_ID)
- {
- if(!IsValidWeapon(weap)) return SendClientMessage(playerid,COLOR_RED,"ERROR: Invalid weapon ID");
- GetWeaponName(weap,WeapName,32);
- new admin[90];
- GetPlayerName(playerid,admin,sizeof(admin));
- format(string, sizeof(string), "You gave that player a %s [ %d Ammo ]", WeapName,ammo1);
- SendClientMessage(playerid,COLOR_GREEN,string);
- if(id != playerid)
- {
- format(string,sizeof(string),"Admin %s has given you a %s.", admin, WeapName);
- SendClientMessage(id,COLOR_GREEN,string);
- }
- return GivePlayerWeapon(id, weap, ammo1);
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"That player is not connected.");
- }
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be admin level 2 to do this.");
- }
- return 1;
- }
- dcmd_giveallweapon(playerid,params[])
- {
- new tmp2[300],tmp[300], Index;
- tmp = strtok(params,Index), tmp2 = strtok(params,Index);
- new id = strval(tmp);
- if(Stats[playerid][AdminLvl] >= 3)
- {
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"Usage: /giveallweapon <weapon name/id>");
- if(!IsNumeric(tmp)) id = GetWeaponIDFromName(tmp); else id = strval(tmp);
- if(!IsValidWeapon(id)) return SendClientMessage(playerid,COLOR_RED,"ERROR: Invalid Weapon.");
- if(id == 36 || id == 38) return SendClientMessage(playerid,COLOR_RED,"You cannot give players miniguns/heatseekers.");
- new string[256],string2[256], pname[24], pname2[24],wpnname[90];
- GetWeaponName(id,wpnname,90);
- GetPlayerName(playerid, pname, 24);
- GetPlayerName(id, pname2, 24);
- format(string, sizeof(string), "You Gave All Players The Weapon.");
- format(string2, sizeof(string2), "~y~%s",wpnname);
- SendClientMessage(playerid,COLOR_YELLOW,string);
- GameTextForAll(string2,700,3);
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- PlayerPlaySound(i,1057,0.0,0.0,0.0);
- GivePlayerWeapon(i,id,400);
- }
- }
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be admin level 2 to do this.");
- }
- return 1;
- }
- dcmd_unmute(playerid,params[])
- {
- new tmp2[300],tmp[300], Index;
- tmp = strtok(params,Index), tmp2 = strtok(params,Index);
- new id = strval(tmp);
- if(IsPlayerAdminLevel(playerid,1))
- {
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"Usage: /unmute <id>");
- if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_RED,"That Player Is Not Connected");
- new string[256],pname[24], pname2[24];
- GetPlayerName(playerid, pname, 24);
- GetPlayerName(id, pname2, 24);
- format(string, sizeof(string), "%s Has Been UnMuted by Admin %s.",pname2,pname);
- SendClientMessageToAll(COLOR_YELLOW,string);
- Muted[id] = false;
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be admin to do this.");
- }
- return 1;
- }
- dcmd_mute(playerid,params[])
- {
- new tmp2[300],tmp[300], Index;
- tmp = strtok(params,Index), tmp2 = strtok(params,Index);
- new id = strval(tmp);
- if(IsPlayerAdminLevel(playerid,1))
- {
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"Usage: /mute <id>");
- if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_RED,"That Player Is Not Connected");
- if(Stats[id][AdminLvl] >= Stats[playerid][AdminLvl]) return SendClientMessage(playerid,COLOR_RED,"You cant mute this admin.");
- new string[256],pname[24], pname2[24];
- GetPlayerName(playerid, pname, 24);
- GetPlayerName(id, pname2, 24);
- format(string, sizeof(string), "%s Has Been Muted by Admin %s.",pname2,pname);
- SendClientMessageToAll(COLOR_RED,string);
- Muted[id] = true;
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be admin to do this.");
- }
- return 1;
- }
- dcmd_explode(playerid,params[])
- {
- new tmp2[300],tmp[300], Index;
- tmp = strtok(params,Index), tmp2 = strtok(params,Index);
- new id = strval(tmp);
- if(IsPlayerAdminLevel(playerid,3))
- {
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED,"Usage: /explode <id>");
- if(!IsPlayerConnected(id)) return SendClientMessage(playerid,COLOR_RED,"That Player Is Not Connected");
- if(Stats[id][AdminLvl] >= Stats[playerid][AdminLvl]) return SendClientMessage(playerid,COLOR_RED,"You cant explode this admin.");
- new string[256],pname[24], pname2[24];
- GetPlayerName(playerid, pname, 24);
- GetPlayerName(id, pname2, 24);
- format(string, sizeof(string), "%s Has Been Exploded by Admin %s.",pname2,pname);
- SendClientMessageToAll(COLOR_RED,string);
- new Float:x,Float:y,Float:z;
- GetPlayerPos(playerid,x,y,z);
- CreateExplosion(x,y,z,5,5);
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be admin level 3 to do this.");
- }
- return 1;
- }
- dcmd_gmx(playerid,params[])
- {
- #pragma unused params
- if(IsPlayerAdminLevel(playerid,5))
- {
- new string2[256], pname[24];
- GetPlayerName(playerid, pname, 24);
- format(string2, sizeof(string2), "Admin %s Is Reloading The Server...",pname);
- SendClientMessageToAll(COLOR_YELLOW,string2);
- SendRconCommand("gmx");
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be level 5 admin to do this.");
- }
- return 1;
- }
- dcmd_reloadbans(playerid,params[])
- {
- #pragma unused params
- if(IsPlayerAdminLevel(playerid,4))
- {
- SendClientMessage(playerid,COLOR_YELLOW,"Ban List Reloaded.");
- SendRconCommand("reloadbans");
- }
- else
- {
- SendClientMessage(playerid,COLOR_RED,"You must be level 4 admin to do this.");
- }
- return 1;
- }
- dcmd_report(playerid,params[])
- {
- new reported, tmp[256], tmp2[256], Index;
- tmp = strtok(params,Index), tmp2 = strtok(params,Index);
- if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED, "USAGE: /report [playerid] [reason]");
- reported = strval(tmp);
- if(IsPlayerConnected(reported) && reported != INVALID_PLAYER_ID) {
- if(IsPlayerAdminLevel(reported,1)) return SendClientMessage(playerid,COLOR_RED,"You can't report an admin.");
- if(playerid == reported) return SendClientMessage(playerid,COLOR_RED,"Why Would You Report Yourself??");
- if(strlen(params) > 7)
- {
- new reportedname[MAX_PLAYER_NAME], reporter[MAX_PLAYER_NAME], str[128];
- GetPlayerName(reported, reportedname, sizeof(reportedname)); GetPlayerName(playerid, reporter, sizeof(reporter));
- format(str, sizeof(str), "%s(%d) Reported %s(%d) : %s",reporter,playerid, reportedname, reported, params[strlen(tmp)+1]);
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerAdminLevel(reported,1))
- {
- GameTextForPlayer(i,"New Report",400,6);
- SendClientMessage(i,COLOR_GREEN,str);
- PlayerPlaySound(i,1057,0,0,0);
- }
- }
- return SendClientMessage(playerid,COLOR_YELLOW, "Report Sent. Admin's Will Review It And Get Back To You.");
- } else return SendClientMessage(playerid,COLOR_RED,"Not A Valid Reason.");
- } else return SendClientMessage(playerid,COLOR_RED, "That Player Is Not Connected.");
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- new cmd[300],idx,tmp[300];
- cmd = strtok(cmdtext, idx);
- new specp;
- dcmd(ban,3,cmdtext);
- dcmd(kick,4,cmdtext);
- dcmd(level,5,cmdtext);
- dcmd(announce,8,cmdtext);
- dcmd(info,4,cmdtext);
- dcmd(settime,7,cmdtext);
- dcmd(goto,4,cmdtext);
- dcmd(gethere,7,cmdtext);
- dcmd(setcash,7,cmdtext);
- dcmd(giveallcash,11,cmdtext);
- dcmd(freezeall,9,cmdtext);
- dcmd(unfreezeall,11,cmdtext);
- dcmd(setscore,8,cmdtext);
- dcmd(setwantedlevel,14,cmdtext);
- dcmd(freeze,6,cmdtext);
- dcmd(unfreeze,8,cmdtext);
- dcmd(sethealth,9,cmdtext);
- dcmd(giveweapon,10,cmdtext);
- dcmd(giveallweapon,13,cmdtext);
- dcmd(mute,4,cmdtext);
- dcmd(unmute,6,cmdtext);
- dcmd(gmx,3,cmdtext);
- dcmd(reloadbans,10,cmdtext);
- dcmd(setinterior,11,cmdtext);
- dcmd(explode,7,cmdtext);
- dcmd(login,5,cmdtext);
- dcmd(countdown,9,cmdtext);
- dcmd(register,8,cmdtext);
- dcmd(report,6,cmdtext);
- dcmd(setdrunklevel,13,cmdtext);
- dcmd(cb,2,cmdtext);
- if(strcmp(cmd, "/cmds", true) == 0)
- {
- SendClientMessage(playerid,COLOR_WHITE,"CMDS: /report, /sober, /stats, /fstyles, /admins, /cb");
- return 1;
- }
- if(strcmp(cmd, "/acmds", true) == 0)
- {
- if(Stats[playerid][AdminLvl] == 1)
- {
- SendClientMessage(playerid,COLOR_YELLOW,"Level 1: /mute, /unmute, /countdown, /freeze, /unfreeze, /info, /ban, /kick");
- }
- if(Stats[playerid][AdminLvl] == 2)
- {
- SendClientMessage(playerid,COLOR_YELLOW,"Level 2: /mute, /unmute, /countdown, /freeze, /unfreeze, /info, /ban, /kick, /settime, /goto, /gethere, /setinterior, /setdrunklevel");
- }
- if(Stats[playerid][AdminLvl] == 3)
- {
- SendClientMessage(playerid,COLOR_YELLOW,"Level 3: /mute, /unmute, /countdown, /freeze, /unfreeze, /info, /ban, /kick, /settime, /goto, /gethere, /explode");
- SendClientMessage(playerid,COLOR_YELLOW,"Level 3: /announce, /setscore, /setwantedlevel, /setcash, /giveallcash, /giveweapon, /giveallweapon, /setinterior, /setdrunklevel");
- }
- if(Stats[playerid][AdminLvl] == 4)
- {
- SendClientMessage(playerid,COLOR_YELLOW,"Level 4: /mute, /unmute, /countdown, /freeze, /unfreeze, /info, /ban, /kick, /settime, /goto, /gethere, /setinterior, /explode");
- SendClientMessage(playerid,COLOR_YELLOW,"Level 4: /announce, /setscore, /setwantedlevel, /setcash, /giveallcash, /giveweapon, /giveallweapon, /sethealth, /reloadbans, /setdrunklevel");
- }
- if(Stats[playerid][AdminLvl] == 5)
- {
- SendClientMessage(playerid,COLOR_YELLOW,"Level 5: /mute, /unmute, /countdown, /freeze, /unfreeze, /info, /ban, /kick, /settime, /goto, /gethere, /level, /gmx, /setinterior, /setdrunklevel");
- SendClientMessage(playerid,COLOR_YELLOW,"Level 5: /announce, /setscore, /setwantedlevel, /setcash, /giveallcash, /giveweapon, /giveallweapon, /sethealth, /reloadbans, /explode");
- }
- return 0;
- }
- if(strcmp(cmd, "/spec", true) == 0)
- {
- tmp = adminspec_strtok(cmdtext, idx);
- if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "USAGE: /spec [playerid]");
- specp = strval(tmp);
- if(!IsPlayerConnected(specp)) return SendClientMessage(playerid, COLOR_RED, "That player is not connected!");
- new sn[70];
- GetPlayerName(specp,sn,sizeof(sn));
- TogglePlayerSpectating(playerid, 1);
- PlayerSpectatePlayer(playerid, specp);
- SetPlayerInterior(playerid,GetPlayerInterior(specp));
- gSpectateID[playerid] = specp;
- gSpectateType[playerid] = ADMIN_SPEC_TYPE_PLAYER;
- new st[75];
- format(st,sizeof(st),"Specing %s. Type /specoff to stop.",sn);
- SendClientMessage(playerid,COLOR_WHITE,st);
- return 1;
- }
- if(strcmp(cmd, "/specoff", true) == 0)
- {
- TogglePlayerSpectating(playerid, 0);
- gSpectateID[playerid] = INVALID_PLAYER_ID;
- gSpectateType[playerid] = ADMIN_SPEC_TYPE_NONE;
- return 1;
- }
- if(strcmp(cmd, "/normalfs", true) == 0)
- {
- SetPlayerFightingStyle(playerid,FIGHT_STYLE_NORMAL);
- Stats[playerid][FS] = 4;
- GameTextForPlayer(playerid,"~g~ Normal~n~ Fighting",900,3);
- return 1;
- }
- if(strcmp(cmd, "/boxingfs", true) == 0)
- {
- SetPlayerFightingStyle(playerid,FIGHT_STYLE_BOXING);
- Stats[playerid][FS] = 5;
- GameTextForPlayer(playerid,"~g~ Boxing~n~ Fighting",900,3);
- return 1;
- }
- if(strcmp(cmd, "/kungfufs", true) == 0)
- {
- SetPlayerFightingStyle(playerid,FIGHT_STYLE_KUNGFU);
- Stats[playerid][FS] = 6;
- GameTextForPlayer(playerid,"~g~ KungFu ~n~ Fighting",900,3);
- return 1;
- }
- if(strcmp(cmd, "/kneeheadfs", true) == 0)
- {
- SetPlayerFightingStyle(playerid,FIGHT_STYLE_KNEEHEAD);
- Stats[playerid][FS] = 7;
- GameTextForPlayer(playerid,"~g~ KneeHead ~n~ Fighting",900,3);
- return 1;
- }
- if(strcmp(cmd, "/grabkickfs", true) == 0)
- {
- SetPlayerFightingStyle(playerid,FIGHT_STYLE_GRABKICK);
- Stats[playerid][FS] = 15;
- GameTextForPlayer(playerid,"~g~ GrabKick ~n~ Fighting",900,3);
- return 1;
- }
- if(strcmp(cmd, "/elbowfs", true) == 0)
- {
- SetPlayerFightingStyle(playerid,FIGHT_STYLE_ELBOW);
- Stats[playerid][FS] = 26;
- GameTextForPlayer(playerid,"~g~ Elbow ~n~ Fighting",900,3);
- return 1;
- }
- if(strcmp(cmd, "/sober", true) == 0)
- {
- SetPlayerDrunkLevel(playerid,0);
- GameTextForPlayer(playerid,"Sober!",900,3);
- return 1;
- }
- if(strcmp(cmd, "/fstyles", true) == 0)
- {
- SendClientMessage(playerid,COLOR_YELLOW,"FS: /grabkickfs, /elbowfs, /kneeheadfs, /kungfufs, /boxingfs, /normalfs");
- return 1;
- }
- if(strcmp(cmd, "/stats", true) == 0)
- {
- new str[128];
- format(str,sizeof(str),"Kills: %d - Deaths: %d - Admin Level: %d - Cash: $%d",Stats[playerid][Kills],Stats[playerid][Deaths],Stats[playerid][AdminLvl],GetPlayerMoney(playerid));
- SendClientMessage(playerid,COLOR_WHITE,str);
- return 1;
- }
- if(strcmp(cmd, "/stats", true) == 0)
- {
- new str[128];
- format(str,sizeof(str),"Kills: %d - Deaths: %d - Admin Level: %d - Cash: $%d",Stats[playerid][Kills],Stats[playerid][Deaths],Stats[playerid][AdminLvl],GetPlayerMoney(playerid));
- SendClientMessage(playerid,COLOR_WHITE,str);
- return 1;
- }
- if(strcmp(cmd, "/admininfo", true) == 0)
- {
- SendClientMessage(playerid,COLOR_YELLOW,"Admin Script Written by CJ101");
- return 1;
- }
- if(strcmp(cmd, "/admins", true) == 0)
- {
- new str[128];
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(Stats[i][AdminLvl] > 0 && IsPlayerConnected(i))
- {
- new name[90];
- GetPlayerName(i,name,sizeof(name));
- format(str,sizeof(str),"%s(id:%d) is Online.",name,i);
- SendClientMessage(i,COLOR_YELLOW,str);
- }
- }
- return 1;
- }
- if (strcmp("/rconadmin", cmdtext, true, 10) == 0)
- {
- if(!IsPlayerAdmin(playerid)) return 1;
- Stats[playerid][AdminLvl] = 5;
- SendClientMessage(playerid,COLOR_WHITE,"You have been made admin by the rcon consule.");
- return 1;
- }
- return 0;
- }
- public OnPlayerText(playerid, text[])
- {
- if(Muted[playerid] == true) { SendClientMessage(playerid,COLOR_RED,"You are not allowed to talk!"); return 0; }
- //admin chat
- if(text[0] == '#' && Stats[playerid][AdminLvl] >= 1)
- {
- new string[128]; GetPlayerName(playerid,string,sizeof(string));
- format(string,sizeof(string),"%s: %s",string,text[1]);
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(Stats[i][AdminLvl] > 0 && IsPlayerConnected(i))
- {
- SendClientMessage(i,COLOR_YELLOW,string);
- }
- }
- return 0;
- }
- return 1;
- }
- public OnPlayerDeath(playerid,killerid, reason)
- {
- Stats[playerid][Deaths]++;
- Stats[killerid][Kills]++;
- SendDeathMessage(killerid,playerid,reason);
- SetPlayerScore(killerid,Stats[killerid][Kills]);
- if(Stats[killerid][God] == 1 && Stats[playerid][AdminLvl] == 0)
- { //cant kill normal players with your godmode on!
- SendClientMessage(killerid,COLOR_RED,"Don't kill people with your godmode on!");
- Stats[killerid][God] = 0;
- SetPlayerHealth(killerid,100);
- }
- new string[100],pName[90];
- new wpn = GetPlayerWeapon(killerid);
- new Float:health;
- GetPlayerHealth(killerid,health);
- GetPlayerName(killerid, pName, sizeof pName);
- if(wpn == 38)
- {
- if(Stats[killerid][AdminLvl] > 0) return 0;
- if(IsPlayerNPC(playerid)) return 0;
- format(string, sizeof(string), "%s has been banned for having a minigun.",pName);
- SendClientMessage(killerid,COLOR_RED,"You have been banned. (Reason: Minigun)");
- SendClientMessageToAll(COLOR_RED,string);
- BanEx(killerid,"Minigun");
- }
- if(wpn == 36)
- {
- if(Stats[killerid][AdminLvl] > 0) return 0;
- if(IsPlayerNPC(playerid)) return 0;
- GetPlayerName(killerid, pName, sizeof pName);
- format(string, sizeof(string), "%s has been banned for having a heatseeking rpg.",pName);
- SendClientMessage(killerid,COLOR_RED,"You have been banned. (Reason: Heatseek RPG)");
- SendClientMessageToAll(COLOR_RED,string);
- BanEx(killerid,"Heetseek");
- }
- if(health > 100 || health == 250)
- {
- if(Stats[killerid][AdminLvl] > 0) return 0;
- format(string, sizeof(string), "Warning: Player %s has health more than 100... (Possible Health Hacks)",pName);
- SendMessageToAdmins(string);
- }
- return 1;
- }
- stock IsValidWeapon(weaponid)
- {
- if (weaponid > 0 && weaponid < 19 || weaponid > 21 && weaponid < 47) return 1;
- return 0;
- }
- IsNumeric(string1[])
- {
- for (new i = 0, j = strlen(string1); i < j; i++)
- {
- if (string1[i] > '9' || string1[i] < '0')
- {
- return 0;
- }
- }
- return 1;
- }
- stock Save(playerid)
- {
- new name[90];
- GetPlayerName(playerid,name,sizeof(name));
- dUserSetINT(name).("Money",GetPlayerMoney(playerid));
- dUserSetINT(name).("Kills",Stats[playerid][Kills]);
- dUserSetINT(name).("Deaths",Stats[playerid][Deaths]);
- dUserSetINT(name).("AdminLvl",Stats[playerid][AdminLvl]);
- dUserSetINT(name).("DrunkLevel",Stats[playerid][AdminLvl]);
- dUserSetINT(name).("FightStyle",Stats[playerid][FS]);
- new file[256];
- format(file,sizeof(file),"%s.ini",udb_encode(name));
- }
- stock Login(playerid)
- {
- new name[90];
- GetPlayerName(playerid,name,sizeof(name));
- ResetPlayerMoney(playerid);
- GivePlayerMoney(playerid, dUserINT(name).("Money"));
- Stats[playerid][Deaths] = dUserINT(name).("Deaths");
- Stats[playerid][Kills] = dUserINT(name).("Kills");
- Stats[playerid][AdminLvl] = dUserINT(name).("AdminLvl");
- Stats[playerid][DrunkLvl] = dUserINT(name).("DrunkLevel");
- Stats[playerid][FS] = dUserINT(name).("FightStyle");
- if(Stats[playerid][DrunkLvl] != 0) SetPlayerDrunkLevel(playerid,Stats[playerid][DrunkLvl]);
- if(Stats[playerid][FS] != 0) SetPlayerFightingStyle(playerid,Stats[playerid][FS]);
- }
- stock GetWeaponIDFromName(WeaponName[])
- {
- if(strfind("molotov",WeaponName,true)!=-1) return 18;
- for(new i = 0; i <= 46; i++)
- {
- switch(i)
- {
- case 0,19,20,21,44,45: continue;
- default:
- {
- new name[32]; GetWeaponName(i,name,32);
- if(strfind(name,WeaponName,true) != -1) return i;
- }
- }
- }
- return -1;
- }
- adminspec_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;
- }
Advertisement
Add Comment
Please, Sign In to add comment