#include // Pragma's #pragma tabsize 0 // Colors #define GREEN 0x21DD00FF #define RED 0xE60000FF #define WHITE 0xFFFFFFAA #define YELLOW 0xFFFF00FF #define ORANGE 0xF97804FF #define GRAY 0xCECECEFF #define DBLUE 0x2641FEAA #define LIGHTBLUE 0x00C2ECFF // Forwarding forward DelPrint(string1[]); forward LoadPlayer(loaderid,const string[]); forward SavePlayer(loaderid,const string[]); forward OnPlayerLogin(playerid,const string[]); forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z); forward IsStringAName(string[]); forward GetPlayerID(string[]); forward SendAdminMessage(color, string[]); forward CountDown(); forward CheckCash(playerid); forward TextDrawTimer(); // new new gPlayerLogged[MAX_PLAYERS]; new upgradepickup; new Menu:Upgrades; new Menu:WeaponUpgrades; new Menu:PistolUpgrades; new Menu:ShotgunUpgrades; new Menu:SubMachineUpgrades; new Menu:AssaultUpgrades; new Menu:RifleUpgrades; new permission[MAX_PLAYERS]; new Mute[MAX_PLAYERS]; new Text:Textdraw0[MAX_PLAYERS]; new minutes = 4; new seconds = 59; new stats[500]; // Skins new Peds[281][1] = { {102}, {103}, {104}, {105}, {106}, {107}, {108}, {109}, {110}, {114}, {115}, {116}, {121}, {122}, {123}, {173}, {174}, {175}, {124}, {125}, {126}, {127}, {111}, {112}, {113}, {117}, {118}, {120}, {247}, {248}, {100}, {256}, {263}, {262}, {261}, {260}, {259}, {258}, {257}, {256}, {255}, {253}, {252}, {251}, {250}, {249}, {246}, {245}, {244}, {243}, {242}, {241}, {240}, {239}, {238}, {237}, {236}, {235}, {234}, {233}, {232}, {231}, {230}, {229}, {228}, {227}, {226}, {225}, {224}, {223}, {222}, {221}, {220}, {219}, {218}, {217}, {216}, {215}, {214}, {213}, {212}, {211}, {210}, {209}, {207}, {206}, {205}, {204}, {203}, {202}, {201}, {200}, {199}, {198}, {197}, {196}, {195}, {194}, {193}, {192}, {191}, {190}, {189}, {188}, {187}, {186}, {185}, {184}, {183}, {182}, {181}, {180}, {179}, {178}, {177}, {176}, {172}, {171}, {170}, {169}, {168}, {167}, {162}, {161}, {160}, {159}, {158}, {157}, {156}, {155}, {154}, {153}, {152}, {151}, {150}, {148}, {147}, {146}, {145}, {144}, {143}, {142}, {141}, {140}, {139}, {138}, {137}, {136}, {135}, {134}, {133}, {132}, {131}, {130}, {129}, {128}, {101}, {254}, {99}, {98}, {97}, {96}, {95}, {94}, {93}, {92}, {91}, {90}, {89}, {88}, {87}, {85}, {84}, {83}, {82}, {81}, {80}, {79}, {78}, {77}, {76}, {75}, {73}, {72}, {69}, {68}, {67}, {66}, {64}, {63}, {62}, {61}, {60}, {59}, {58}, {57}, {56}, {55}, {54}, {53}, {52}, {51}, {50}, {49}, {48}, {47}, {46}, {45}, {44}, {43}, {41}, {40}, {39}, {38}, {37}, {36}, {35}, {34}, {33}, {32}, {31}, {30}, {29}, {28}, {27}, {26}, {25}, {24}, {23}, {22}, {21}, {20}, {19}, {18}, {17}, {16}, {15}, {14}, {13}, {12}, {11}, {10}, {1}, {2}, {290}, {291}, {292}, {293}, {294}, {187}, {296}, {297}, {298}, {299}, {71}, {70}, {274}, {275}, {276}, {163}, {164}, {165}, {166}, {295}, {246}, {186}, {147}, {288}, {286}, {285}, {284}, {283}, {282}, {281}, {280}, {265}, {266}, {267}, {277}, {278}, {279} }; // Server countdown new CountNumber = 35; new CountText[35][0] ={ "~r~Server Restarting~n~~w~In 1 Second", "~r~Server Restarting~n~~w~In 2 Seconds", "~r~Server Restarting~n~~w~In 3 Seconds", "~r~Server Restarting~n~~w~In 4 Seconds", "~r~Server Restarting~n~~w~In 5 Seconds", "~r~Server Restarting~n~~w~In 6 Seconds", "~r~Server Restarting~n~~w~In 7 Seconds", "~r~Server Restarting~n~~w~In 8 Seconds", "~r~Server Restarting~n~~w~In 9 Seconds", "~r~Server Restarting~n~~w~In 10 Seconds", "~r~Server Restarting~n~~w~In 11 Seconds", "~r~Server Restarting~n~~w~In 12 Seconds", "~r~Server Restarting~n~~w~In 13 Seconds", "~r~Server Restarting~n~~w~In 14 Seconds", "~r~Server Restarting~n~~w~In 15 Seconds", "~r~Server Restarting~n~~w~In 16 Seconds", "~r~Server Restarting~n~~w~In 17 Seconds", "~r~Server Restarting~n~~w~In 18 Seconds", "~r~Server Restarting~n~~w~In 19 Seconds", "~r~Server Restarting~n~~w~In 20 Seconds", "~r~Server Restarting~n~~w~In 21 Seconds", "~r~Server Restarting~n~~w~In 22 Seconds", "~r~Server Restarting~n~~w~In 23 Seconds", "~r~Server Restarting~n~~w~In 24 Seconds", "~r~Server Restarting~n~~w~In 25 Seconds", "~r~Server Restarting~n~~w~In 26 Seconds", "~r~Server Restarting~n~~w~In 27 Seconds", "~r~Server Restarting~n~~w~In 28 Seconds", "~r~Server Restarting~n~~w~In 29 Seconds", "~r~Server Restarting~n~~w~In 30 Seconds", "~r~Server Restarting~n~Make all your work done~n~In 30 Seconds!", "~r~Server Restarting~n~Make all your work done~n~In 30 Seconds!", "~r~Server Restarting~n~Make all your work done~n~In 30 Seconds!", "~r~Server Restarting~n~Make all your work done~n~In 30 Seconds!", "~r~Server Restarting~n~Make all your work done~n~In 30 Seconds!" }; // Server welcomes message if you login #define motd "Your logged in onto San Andreas Death Match v1" //strtok 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; } public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z) { new Float:oldposx, Float:oldposy, Float:oldposz; new Float:tempposx, Float:tempposy, Float:tempposz; GetPlayerPos(playerid, oldposx, oldposy, oldposz); tempposx = (oldposx -x); tempposy = (oldposy -y); tempposz = (oldposz -z); //printf("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz); if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi))) { return 1; } return 0; } public CountDown() { if (CountNumber > 0){ GameTextForAll( CountText[CountNumber-1], 2500, 3); CountNumber--; SetTimer("CountDown", 1000, 0); } else{ GameTextForAll("~r~Server Restarting!", 10000, 3); GameModeExit(); CountNumber = 35; } return 1; } public IsStringAName(string[]) { for(new i = 0; i <= MAX_PLAYERS; i++) { if(IsPlayerConnected(i) == 1) { new testname[MAX_PLAYER_NAME]; GetPlayerName(i, testname, sizeof(testname)); //printf("IsS:testname = %s : string = %s",testname,string); if(strcmp(testname, string, true, strlen(string)) == 0) { //printf("TRUE IsS:testname = %s : string = %s",testname,string); return 1; } } } return 0; } public GetPlayerID(string[]) { for(new i = 0; i <= MAX_PLAYERS; i++) { if(IsPlayerConnected(i) == 1) { new testname[MAX_PLAYER_NAME]; GetPlayerName(i, testname, sizeof(testname)); //printf("GetP:testname = %s : string = %s",testname,string); if(strcmp(testname, string, true, strlen(string)) == 0) { //printf("TRUE GetP:testname = %s : string = %s playerid %d",testname,string, i); return i; } } } return INVALID_PLAYER_ID; } // All the players info saved into accounts enum pInfo { pPassword[128], pCash, pAdmin, pKills, pDeaths, pGun1, pGun2, pGun3, pGun4, pGun5, pGun6, }; new PlayerInfo[MAX_PLAYERS][pInfo]; // Printing shit public DelPrint(string1[]) { strmid(string1, string1, 0, strlen(string1)-1, 255); } //Admin chat public SendAdminMessage(color, string[]) { for(new i = 0; i <= MAX_PLAYERS; i++) { if(IsPlayerConnected(i) == 1 && PlayerInfo[i][pAdmin] > 1) { SendClientMessage(i, color, string); } } } // Player gets saved and loaded public LoadPlayer(loaderid,const string[]) { new string2[64]; new loaded = loaderid; new valtmp[128]; format(string2, sizeof(string2), "/users/%s.user", string); new File: file = fopen(string2, io_read); if (file) { fread(file, valtmp);strmid(PlayerInfo[loaded][pPassword], valtmp, 0, strlen(valtmp)-1, 255); fread(file, valtmp);PlayerInfo[loaded][pCash] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[loaded][pAdmin] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[loaded][pKills] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[loaded][pDeaths] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[loaded][pGun1] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[loaded][pGun2] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[loaded][pGun3] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[loaded][pGun4] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[loaded][pGun5] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[loaded][pGun6] = strval(valtmp);DelPrint(valtmp); SendClientMessage(loaderid, WHITE, "SERVER: Account Loaded"); } else { SendClientMessage(loaderid, WHITE, "SERVER: No account found by that name"); return 0; } return 1; } public SavePlayer(loaderid,const string[]) { new string3[32]; new saved = loaderid; format(string3, sizeof(string3), "/%s.user", string); new File: pFile = fopen(string3, io_write); if (pFile) { new var[32]; format(var, 32, "%s\n", PlayerInfo[saved][pPassword]);fwrite(pFile, var); fclose(pFile); new File: hFile = fopen(string3, io_append); format(var, 32, "%d pCash\n",PlayerInfo[saved][pCash]);fwrite(hFile, var); format(var, 32, "%d pAdmin\n",PlayerInfo[saved][pAdmin]);fwrite(hFile, var); format(var, 32, "%d pKills\n",PlayerInfo[saved][pKills]);fwrite(hFile, var); format(var, 32, "%d pDeaths\n",PlayerInfo[saved][pDeaths]);fwrite(hFile, var); format(var, 32, "%d pGun1\n",PlayerInfo[saved][pGun1]);fwrite(hFile, var); format(var, 32, "%d pGun2\n",PlayerInfo[saved][pGun2]);fwrite(hFile, var); format(var, 32, "%d pGun3\n",PlayerInfo[saved][pGun3]);fwrite(hFile, var); format(var, 32, "%d pGun4\n",PlayerInfo[saved][pGun4]);fwrite(hFile, var); format(var, 32, "%d pGun5\n",PlayerInfo[saved][pGun5]);fwrite(hFile, var); format(var, 32, "%d pGun6\n",PlayerInfo[saved][pGun6]);fwrite(hFile, var); fclose(hFile); } return 1; } public OnPlayerUpdate(playerid) { if (gPlayerLogged[playerid] != 0) { new string3[32]; new playername3[MAX_PLAYER_NAME]; GetPlayerName(playerid, playername3, sizeof(playername3)); format(string3, sizeof(string3), "/users/%s.user", playername3); new File: pFile = fopen(string3, io_write); if (pFile) { new var[32]; format(var, 32, "%s\n", PlayerInfo[playerid][pPassword]);fwrite(pFile, var); fclose(pFile); new File: hFile = fopen(string3, io_append); PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid); format(var, 32, "%d pCash\n",PlayerInfo[playerid][pCash]);fwrite(hFile, var); format(var, 32, "%d pAdmin\n",PlayerInfo[playerid][pAdmin]);fwrite(hFile, var); format(var, 32, "%d pKills\n",PlayerInfo[playerid][pKills]);fwrite(hFile, var); format(var, 32, "%d pDeaths\n",PlayerInfo[playerid][pDeaths]);fwrite(hFile, var); format(var, 32, "%d pGun1\n",PlayerInfo[playerid][pGun1]);fwrite(hFile, var); format(var, 32, "%d pGun2\n",PlayerInfo[playerid][pGun2]);fwrite(hFile, var); format(var, 32, "%d pGun3\n",PlayerInfo[playerid][pGun3]);fwrite(hFile, var); format(var, 32, "%d pGun4\n",PlayerInfo[playerid][pGun4]);fwrite(hFile, var); format(var, 32, "%d pGun5\n",PlayerInfo[playerid][pGun5]);fwrite(hFile, var); format(var, 32, "%d pGun6\n",PlayerInfo[playerid][pGun6]);fwrite(hFile, var); fclose(hFile); } } else { } return 1; } public OnPlayerLogin(playerid,const string[]) { new string2[64]; new playername2[MAX_PLAYER_NAME]; new tmp2[256]; GetPlayerName(playerid, playername2, sizeof(playername2)); format(string2, sizeof(string2), "/%s.user", playername2); new File: file = fopen(string2, io_read); if (file) { new valtmp[128]; fread(file, valtmp);strmid(PlayerInfo[playerid][pPassword], valtmp, 0, strlen(valtmp)-1, 255); if ((strcmp(PlayerInfo[playerid][pPassword], string, true, strlen(valtmp)-1) == 0))// && (strlen(string) == strlen(password))) { fread(file, valtmp);PlayerInfo[playerid][pCash] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[playerid][pAdmin] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[playerid][pKills] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[playerid][pDeaths] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[playerid][pGun1] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[playerid][pGun2] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[playerid][pGun3] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[playerid][pGun4] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[playerid][pGun5] = strval(valtmp);DelPrint(valtmp); fread(file, valtmp);PlayerInfo[playerid][pGun6] = strval(valtmp);DelPrint(valtmp); fclose(file); ResetPlayerMoney(playerid); GivePlayerMoney(playerid,PlayerInfo[playerid][pCash]); new string3[128]; if (PlayerInfo[playerid][pAdmin] == 1337) { format(string3, sizeof(string3), " Head Admin: %s logged in",playername2); SendClientMessageToAll(RED,string3); } if (PlayerInfo[playerid][pAdmin] == 101) { format(string3, sizeof(string3), " Admin: %s logged in",playername2); SendClientMessageToAll(RED,string3); } gPlayerLogged[playerid] = 1; GetPlayerName(playerid, playername2, sizeof(playername2)); format(tmp2, sizeof(tmp2), "~r~Welcome ~n~~b~ %s", playername2); GameTextForPlayer(playerid, tmp2, 5000, 1); SendClientMessage(playerid, ORANGE, motd); return 1; } else { SendClientMessage(playerid, WHITE, "SERVER: Password does not match your name"); printf("%s is hacking a password",playername2); fclose(file); return 1; } // return 1; } else { SendClientMessage(playerid, WHITE, "SERVER: You do not have an account, type /register "); } return 1; } // The print in the console when starting this gamemode main() { print("/ San Andreas DeathMatch v1 \\"); print("/ Designed by Pandabeer \\"); print("/ Idea from Eric \\"); } public OnGameModeInit() { for(new i = 0; i <= sizeof(Peds)-1; i++) { AddPlayerClass(Peds[i][0],-2423.9541,336.7465,36.8859, 270,0,0,0,0,0,0); } for(new i=0; i 0) { GivePlayerWeapon(playerid, PlayerInfo[playerid][pGun1], 60); } if (PlayerInfo[playerid][pGun2] > 0) { GivePlayerWeapon(playerid, PlayerInfo[playerid][pGun2], 50); } if (PlayerInfo[playerid][pGun3] > 0) { GivePlayerWeapon(playerid, PlayerInfo[playerid][pGun3], 80); } if (PlayerInfo[playerid][pGun4] > 0) { GivePlayerWeapon(playerid, PlayerInfo[playerid][pGun4], 80); } if (PlayerInfo[playerid][pGun5] > 0) { GivePlayerWeapon(playerid, PlayerInfo[playerid][pGun5], 20); } if (PlayerInfo[playerid][pGun6] > 0) { GivePlayerWeapon(playerid, PlayerInfo[playerid][pGun6], 100); } return 1; } public OnPlayerDeath(playerid, killerid, reason) { SendDeathMessage(killerid, playerid, reason); new dmessage[256]; new deathreason[100]; GetWeaponName(reason, deathreason, 100); new killer[MAX_PLAYER_NAME]; GetPlayerName(killerid, killer, sizeof(killer)); new name[MAX_PLAYER_NAME]; GetPlayerName(playerid, name, sizeof(name)); new string[256]; PlayerInfo[playerid][pDeaths]++; PlayerInfo[killerid][pKills]++; format(dmessage, sizeof(dmessage), "~r~Wasted"); if (killerid == INVALID_PLAYER_ID) { switch (reason) { case WEAPON_DROWN: { format(string, sizeof(string), "%s drowned", name); SendClientMessageToAll(RED, string); GameTextForPlayer(playerid, dmessage, 5000, 2); } case WEAPON_COLLISION: { format(string, sizeof(string), "%s felled to his death", name); SendClientMessageToAll(RED, string); GameTextForPlayer(playerid, dmessage, 5000, 2); } default: { format(string, sizeof(string), "%s died", name); SendClientMessageToAll(RED, string); GameTextForPlayer(playerid, dmessage, 5000, 2); } } } else if (strlen(deathreason) > 0) // checks if its not a bug { format(string, sizeof(string), "%s murdered %s. (%s)", killer, name, deathreason); SendClientMessageToAll(RED, string); } return 1; } public OnPlayerText(playerid, text[]) { if(Mute[playerid] == 1) { SendClientMessage(playerid, GRAY, "You cannot speak, you have been silenced"); return 0; } return 1; } public OnPlayerPrivmsg(playerid, recieverid, text[]) { return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { new cmd[256]; new tmp[256]; new sendername[MAX_PLAYER_NAME]; new giveplayer[MAX_PLAYER_NAME]; new playername[MAX_PLAYER_NAME]; new idx; new string[256]; cmd = strtok(cmdtext, idx); if(strcmp(cmd, "/register", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, GRAY, "USAGE: /register [password]"); return 1; } strmid(PlayerInfo[playerid][pPassword], tmp, 0, strlen(cmdtext), 255); GetPlayerName(playerid, playername, sizeof(playername)); format(string, sizeof(string), "/%s.user", playername); PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid); new File: file = fopen(string, io_read); if (file) { SendClientMessage(playerid, GRAY, " That nick is registered"); fclose(file); return 1; } new File:hFile; hFile = fopen(string, io_append); new var[32];// format(var, 32, "%s\n", PlayerInfo[playerid][pPassword]);fwrite(hFile, var); format(var, 32, "%d pCash\n", PlayerInfo[playerid][pCash]);fwrite(hFile, var); format(var, 32, "%d pAdmin\n", PlayerInfo[playerid][pAdmin]);fwrite(hFile, var); format(var, 32, "%d pKills\n", PlayerInfo[playerid][pKills]);fwrite(hFile, var); format(var, 32, "%d pDeaths\n", PlayerInfo[playerid][pDeaths]);fwrite(hFile, var); format(var, 32, "%d pGun1\n", PlayerInfo[playerid][pGun1]);fwrite(hFile, var); format(var, 32, "%d pGun2\n", PlayerInfo[playerid][pGun2]);fwrite(hFile, var); format(var, 32, "%d pGun3\n", PlayerInfo[playerid][pGun3]);fwrite(hFile, var); format(var, 32, "%d pGun4\n", PlayerInfo[playerid][pGun4]);fwrite(hFile, var); format(var, 32, "%d pGun5\n", PlayerInfo[playerid][pGun5]);fwrite(hFile, var); format(var, 32, "%d pGun6\n", PlayerInfo[playerid][pGun6]);fwrite(hFile, var); fclose(hFile); SendClientMessage(playerid, WHITE, "SERVER: Next time you connect, type (/login ) to log in."); OnPlayerLogin(playerid,PlayerInfo[playerid][pPassword]); return 1; } //-------------------------------[Login]-------------------------------------------------------------------------- if (strcmp(cmd, "/login", true) ==0 ) { new tmppass[64]; if (gPlayerLogged[playerid] == 1) { SendClientMessage(playerid, WHITE, "SERVER: You are already logged in."); return 1; } tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, GRAY, "USAGE: /login [password]"); return 1; } strmid(tmppass, tmp, 0, strlen(cmdtext), 255); OnPlayerLogin(playerid,tmppass); return 1; } if(strcmp(cmdtext,"/jetpack",true) == 0) { if ((IsPlayerAdmin(playerid))) { new Float:X; new Float:Y; new Float:Z; GetPlayerPos(playerid,X,Y,Z); CreatePickup(370,2,X,Y,Z); SendClientMessage(playerid, GRAY, "* Spawned jetpack"); SetCameraBehindPlayer(playerid); } return 1; } if(strcmp(cmd, "/time", true) == 0) { new hour,minuite,second; gettime(hour,minuite,second); format(string, sizeof(string), "~g~|~w~%d:%d~g~:%d~g~|", hour, minuite, second); GameTextForPlayer(playerid, string, 5000, 1); return 1; } if((strcmp(cmd,"/upgrade",true)==0)&&IsPlayerConnected(playerid)) { if(permission[playerid] == 0) { SendClientMessage(playerid,YELLOW,"You must be in the pauze."); return 1; } if(IsValidMenu(Upgrades) && permission[playerid] == 1 && PlayerToPoint(5.0, playerid, -2706.2937,376.3174,4.9685)) { if(PlayerInfo[playerid][pCash] >= 1) { ShowMenuForPlayer(Upgrades,playerid); TogglePlayerControllable(playerid,0); permission[playerid] = 0; } else { SendClientMessage(playerid,YELLOW,"You must have cash to upgrade."); } } return 1; } //----------------------------------[MAKEADMIN]------------------------------------------------ if(strcmp(cmd, "/makeadmin", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, GRAY, "USAGE: /makeadmin [playerid] [level]"); return 1; } new para1; new level; if(IsStringAName(tmp)) { para1 = GetPlayerID(tmp); } else { para1 = strval(tmp); } tmp = strtok(cmdtext, idx); level = strval(tmp); if ((IsPlayerAdmin(playerid))) { GetPlayerName(para1, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); PlayerInfo[para1][pAdmin] = level; format(string, sizeof(string), " You have been promoted to a level %d admin by %s", level, sendername); SendClientMessage(para1, RED, string); format(string, sizeof(string), " You have promoted %s to a level %d admin.", giveplayer,level); SendClientMessage(playerid, RED, string); } else { SendClientMessage(playerid, GRAY, " you are not authorized to use that command!"); } return 1; } //----------------------------------[GiveHealth]------------------------------------------------ if(strcmp(cmd, "/sethealth", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, GRAY, "USAGE: /sethealth [playerid] [health]"); return 1; } new playa; new health; if(IsStringAName(tmp)) { playa = GetPlayerID(tmp); } else { playa = strval(tmp); } tmp = strtok(cmdtext, idx); health = strval(tmp); GetPlayerName(playa, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); if ((IsPlayerAdmin(playerid)) || PlayerInfo[playerid][pAdmin] >= 1337) { SetPlayerHealth(playa, health); printf("AdmCmd: %s gave %s %d Health",sendername, giveplayer, health); } else { SendClientMessage(playerid, GRAY, " you are not authorized to use that command!"); } return 1; } //----------------------------------[GiveArmor]------------------------------------------------ if(strcmp(cmd, "/setarmor", true) == 0 || strcmp(cmd, "/setarmour", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, GRAY, "USAGE: /setarmor [playerid] [armor]"); return 1; } new playa; new health; if(IsStringAName(tmp)) { playa = GetPlayerID(tmp); } else { playa = strval(tmp); } tmp = strtok(cmdtext, idx); health = strval(tmp); GetPlayerName(playa, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); if ((IsPlayerAdmin(playerid)) || PlayerInfo[playerid][pAdmin] >= 1337) { SetPlayerArmour(playa, health); printf("AdmCmd: %s gave %s %d Armor",sendername, giveplayer, health); } else { SendClientMessage(playerid, GRAY, " you are not authorized to use that command!"); } return 1; } if(strcmp(cmd, "/warn", true) == 0 && IsPlayerConnected(playerid)) { new Hours; new Minutes; new Seconds; new Days; new Months; new Years; gettime(Hours, Minutes, Seconds); getdate(Years, Months, Days); tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, GRAY, "USAGE: /warn [playerid] [reason]"); return 1; } if(!cmdtext[7]) { SendClientMessage(playerid, GRAY, "USAGE: /warn [playerid] [reason]"); } new playa = strval(tmp); GetPlayerName(playa, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); if ((IsPlayerAdmin(playerid)) || PlayerInfo[playerid][pAdmin] >= 101) { format(string, sizeof(string), "AdmCmd: %s Warned %s",sendername, giveplayer); printf("%s",string); format(string, sizeof(string), "AdmCmd: %s has been Warned by %s (Reason: %s).",giveplayer ,sendername,cmdtext[7]); SendClientMessageToAll(RED, string); SendClientMessage(playa,GREEN,"____________________________________________________"); format(string, sizeof(string), "You have been warned by an admin. Admin that warned You: %s", sendername); SendClientMessage(playa,GREEN, string); format(string, sizeof(string),"Reason: %s", cmdtext[7]); SendClientMessage(playa,GRAY, string); format(string, sizeof(string), "Date: %d/%d/%d, Time %d:%d:%d", Days,Months,Years,Hours,Minutes,Seconds); SendClientMessage(playa,GRAY,string); SendClientMessage(playa,GREEN,"____________________________________________________"); } else { SendClientMessage(playerid, GRAY, "AdmCmd: You are not authorized to use that command!"); } return 1; } //----------------------------------[Kick]------------------------------------------------ if(strcmp(cmd, "/kick", true) == 0) { new Hours; new Minutes; new Seconds; new Days; new Months; new Years; gettime(Hours, Minutes, Seconds); getdate(Years, Months, Days); tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, GRAY, "USAGE: /kick [playerid] [reason]"); return 1; } new length = strlen(cmdtext); while ((idx < length) && (cmdtext[idx] <= ' ')) { idx++; } new offset = idx; new reason[64]; while ((idx < length) && ((idx - offset) < (sizeof(reason) - 1))) { reason[idx - offset] = cmdtext[idx]; idx++; } reason[idx - offset] = EOS; new playa = strval(tmp); GetPlayerName(playa, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); if ((IsPlayerAdmin(playerid)) || PlayerInfo[playerid][pAdmin] >= 101) { if(PlayerInfo[playa][pAdmin] == 1337) { format(string, sizeof(string), "AdmNote: %s is level %d",playa, PlayerInfo[playa][pAdmin]); SendClientMessage(playerid,RED, string); return 1; } format(string, sizeof(string), "AdmCmd: %s kicked %s. Reason: %s",sendername, giveplayer, reason); printf("%s",string); format(string, sizeof(string), "AdmCmd: %s was kicked by %s. Reason: %s",giveplayer ,sendername, reason); SendClientMessageToAll(RED, string); SendClientMessage(playa,RED,"--------------------------------------------------------------"); format(string, sizeof(string), "You got kicked from the server. Admin that Kicked you: %s", sendername); SendClientMessage(playa,GREEN, string); format(string, sizeof(string),"Given Reason: %s ", reason); SendClientMessage(playa,GRAY, string); format(string, sizeof(string), "Date: %d/%d/%d, Time %d:%d:%d", Days,Months,Years,Hours,Minutes,Seconds); SendClientMessage(playa,GRAY,string); SendClientMessage(playa,RED,"--------------------------------------------------------------"); Kick(playa); return 1; } else { SendClientMessage(playerid, GRAY, " you are not authorized to use that command!"); } return 1; } //----------------------------------[Ban]------------------------------------------------ if(strcmp(cmd, "/ban", true) == 0) { new Hours; new Minutes; new Seconds; new Days; new Months; new Years; gettime(Hours, Minutes, Seconds); getdate(Years, Months, Days); tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, GRAY, "USAGE: /ban [playerid] [reason]"); return 1; } new length = strlen(cmdtext); while ((idx < length) && (cmdtext[idx] <= ' ')) { idx++; } new offset = idx; new reason[64]; while ((idx < length) && ((idx - offset) < (sizeof(reason) - 1))) { reason[idx - offset] = cmdtext[idx]; idx++; } reason[idx - offset] = EOS; new playa = strval(tmp); GetPlayerName(playa, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); if ((IsPlayerAdmin(playerid)) || PlayerInfo[playerid][pAdmin] >= 101) { if(PlayerInfo[playa][pAdmin] == 1337) { SendClientMessage(playerid, RED, "You can't kick or ban the headadmin!"); return 1; } format(string, sizeof(string), "AdmCmd: %s was Banned by %s. Reason: %s",giveplayer ,sendername, reason); SendClientMessageToAll(RED, string); SendClientMessage(playa,GREEN,"____________________________________________________"); format(string, sizeof(string), "You have been Banned from the server. Admin that Banned You: %s", sendername); SendClientMessage(playa,GREEN, string); format(string, sizeof(string),"Reason: %s ", reason); SendClientMessage(playa,GRAY, string); format(string, sizeof(string), "Date: %d/%d/%d, Time %d:%d:%d", Days,Months,Years,Hours,Minutes,Seconds); SendClientMessage(playa,GRAY,string); SendClientMessage(playa,GREEN,"____________________________________________________"); Ban(playa); return 1; } else { SendClientMessage(playerid, GRAY, " you are not authorized to use that command!"); } return 1; } //----------------------------------[Slap]------------------------------------------------ if(strcmp(cmd, "/slap", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, GRAY, "USAGE: /slap [playerid]"); return 1; } new playa; new Float:shealth; new Float:slx, Float:sly, Float:slz; if(IsStringAName(tmp)) { playa = GetPlayerID(tmp); } else { playa = strval(tmp); } GetPlayerName(playa, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); if ((IsPlayerAdmin(playerid)) || PlayerInfo[playerid][pAdmin] >= 101) { GetPlayerHealth(playa, shealth); SetPlayerHealth(playa, shealth-5); GetPlayerPos(playa, slx, sly, slz); SetPlayerPos(playa, slx, sly, slz+5); for(new i = 0; i <= MAX_PLAYERS; i++) { if(IsPlayerConnected(i) == 1) { PlayerPlaySound(i, 1130, slx, sly, slz+5); } } printf("AdmCmd: %s slapped %s",sendername, giveplayer); format(string, sizeof(string), "AdmCmd: %s was slapped by %s",giveplayer ,sendername); SendClientMessageToAll(RED, string); } else { SendClientMessage(playerid, GRAY, " you are not authorized to use that command!"); } return 1; } //----------------------------------[AdminChat]----------------------------------------------- if(strcmp(cmd, "/admin", true) == 0 || strcmp(cmd, "/a", true) == 0) { GetPlayerName(playerid, sendername, sizeof(sendername)); new length = strlen(cmdtext); new admstring[256]; while ((idx < length) && (cmdtext[idx] <= ' ')) { idx++; } new offset = idx; new result[64]; while ((idx < length) && ((idx - offset) < (sizeof(result) - 1))) { result[idx - offset] = cmdtext[idx]; idx++; } result[idx - offset] = EOS; if(!strlen(result)) { SendClientMessage(playerid, GRAY, "USAGE: (/a)dmin [admin chat]"); return 1; } format(string, sizeof(string), "Admin %s: %s", sendername, result); format(admstring, sizeof(admstring), "HeadAdmin %s: %s", sendername, result); if (PlayerInfo[playerid][pAdmin] == 101) { SendAdminMessage(YELLOW, string); } else if(PlayerInfo[playerid][pAdmin] == 1337) { SendAdminMessage(YELLOW, admstring); } printf("Admin %s: %s", sendername, result); return 1; } if(strcmp(cmd, "/amess", true) == 0 && IsPlayerConnected(playerid) || strcmp(cmd, "/am", true) == 0 && IsPlayerConnected(playerid)) { GetPlayerName(playerid, sendername, sizeof(sendername)); new length = strlen(cmdtext); while ((idx < length) && (cmdtext[idx] <= ' ')) { idx++; } new offset = idx; new result[64]; while ((idx < length) && ((idx - offset) < (sizeof(result) - 1))) { result[idx - offset] = cmdtext[idx]; idx++; } result[idx - offset] = EOS; if(!strlen(result)) { SendClientMessage(playerid, GRAY, "USAGE: /am [message]"); return 1; } if (PlayerInfo[playerid][pAdmin] >= 101) { format(string, sizeof(string), "** Admin: %s: %s **", sendername, result); SendClientMessageToAll(DBLUE, string); printf("** Admin: %s: %s **", sendername, result); } else { SendClientMessage(playerid, GRAY, " You are Not Authorized to use that command."); return 1; } } if(strcmp(cmd, "/setweather", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, GRAY, "USAGE: /setweather [weatherid]"); return 1; } new hour; hour = strval(tmp); if ((IsPlayerAdmin(playerid)) || PlayerInfo[playerid][pAdmin] >= 101) { SetWeather(hour); GetPlayerName(playerid, sendername, sizeof(sendername)); format(string, sizeof(string), "AdmCmd: %s has set the weather to %d.", sendername, hour); SendClientMessageToAll(RED, string); } else { SendClientMessage(playerid, GRAY, " you are not authorized to use that command!"); } return 1; } if(strcmp(cmd, "/gmx", true) == 0) { if ((IsPlayerAdmin(playerid)) && IsPlayerConnected(playerid)) { for(new i = 0; i <= MAX_PLAYERS; i++) { OnPlayerUpdate(i); SendClientMessageToAll(GRAY, "Emergency Command: All Server progress saved by admin!"); } GameModeExit(); } else { SendClientMessage(playerid, GRAY, " you are not authorized to use that command!"); } return 1; } if(strcmp("/restart", cmd, true, 10) == 0 && IsPlayerAdmin(playerid) == 1) { if(CountNumber >= 35) { GetPlayerName(playerid, sendername, sizeof(sendername)); format(string, sizeof(string), "AdmCmd: %s Has started a countdown to restart the server",sendername); SendClientMessageToAll(RED, string); CountDown(); return 1; } else { SendClientMessage(playerid, RED, "Sorry but countdown in progress"); return 1; } } if(strcmp(cmd, "/mute", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, GRAY, "USAGE: /mute [playerid]"); return 1; } new playa; if(IsStringAName(tmp)) { playa = GetPlayerID(tmp); } else { playa = strval(tmp); } GetPlayerName(playa, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); if ((IsPlayerAdmin(playerid)) || PlayerInfo[playerid][pAdmin] >= 101) { if(Mute[playa] == 0) { Mute[playa] = 1; printf("AdmCmd: %s silenced %s",sendername, giveplayer); format(string, sizeof(string), "AdmCmd: %s was silenced by %s",giveplayer ,sendername); SendClientMessageToAll(RED, string); } else { Mute[playa] = 0; printf("AdmCmd: %s unsilenced %s",sendername, giveplayer); format(string, sizeof(string), "AdmCmd: %s was unsilenced by %s",giveplayer ,sendername); SendClientMessageToAll(RED, string); } } else { SendClientMessage(playerid, GRAY, " you are not authorized to use that command!"); } return 1; } //----------------------------------[GiveGun]------------------------------------------------ if(strcmp(cmd, "/givegun", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, 0xB4B5B7FF, "USAGE: /givegun [playerid] [weaponid] [ammo]"); SendClientMessage(playerid, 0xB4B5B7FF,"[1 Brass Knuckles][2 Golf Club][3 Night Stick][4 Knife][5 Baseball Bat][6 Shovel][7 Pool cue][8 Katana][9 Chainsaw]"); SendClientMessage(playerid, 0xB4B5B7FF,"[10 Purple Dildo][11 White Dildo][12 Long White Dildo][13 White Dildo 2][14 Flowers][15 Cane][16 Grenades][17 Tear Gas]"); SendClientMessage(playerid, 0xB4B5B7FF,"[18 Molotovs][22 Pistol][23 Silenced Pistol][24 Desert Eagle][25 Shotgun][26 Sawn Off Shotgun][27 Combat Shotgun]"); SendClientMessage(playerid, 0xB4B5B7FF,"[28 Micro Uzi (Mac 10)][29 MP5][30 AK47][31 M4][32 Tec9][33 Rifle[34 Sniper Rifle][35 RPG][36 Missile Launcher]"); SendClientMessage(playerid, 0xB4B5B7FF,"[37 Flame Thrower][38 Minigun][39 Sachel Charges][40 Detonator][41 Spray Paint][42 Fire Extinguisher][43 Camera]"); SendClientMessage(playerid, 0xB4B5B7FF,"[44 Nightvision Goggles][45 Thermal Goggles][46 Parachute]"); return 1; } new playa; new gun; new ammo; if(IsStringAName(tmp)) { playa = GetPlayerID(tmp); } else { playa = strval(tmp); } tmp = strtok(cmdtext, idx); gun = strval(tmp); tmp = strtok(cmdtext, idx); ammo = strval(tmp); GetPlayerName(playa, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); if ((IsPlayerAdmin(playerid)) || PlayerInfo[playerid][pAdmin] >= 1337) { GivePlayerWeapon(playa, gun, ammo); printf("AdmCmd: %s gave %s Weapon %d",sendername, giveplayer, gun); } else { SendClientMessage(playerid, GRAY, " you are not authorized to use that command!"); } return 1; } //----------------------------------[GiveMoney]------------------------------------------------ if(strcmp(cmd, "/setmoney", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, GRAY, "USAGE: /setmoney [playerid] [money]"); return 1; } new playa; new money; if(IsStringAName(tmp)) { playa = GetPlayerID(tmp); } else { playa = strval(tmp); } tmp = strtok(cmdtext, idx); money = strval(tmp); GetPlayerName(playa, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); if ((IsPlayerAdmin(playerid)) || PlayerInfo[playerid][pAdmin] >= 1337) { ResetPlayerMoney(playa); GivePlayerMoney(playa, money); PlayerInfo[playa][pCash] = PlayerInfo[playa][pCash]+money; printf("AdmCmd: %s set %s to $%d",sendername, giveplayer, money); } else { SendClientMessage(playerid, GRAY, " you are not authorized to use that command!"); } return 1; } if(strcmp(cmd, "/givemoney", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, GRAY, "USAGE: /givemoney [playerid] [money]"); return 1; } new playa; new money; if(IsStringAName(tmp)) { playa = GetPlayerID(tmp); } else { playa = strval(tmp); } tmp = strtok(cmdtext, idx); money = strval(tmp); GetPlayerName(playa, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); if ((IsPlayerAdmin(playerid)) || PlayerInfo[playerid][pAdmin] >= 1337) { GivePlayerMoney(playa, money); printf("AdmCmd: %s set %s to $%d",sendername, giveplayer, money); } else { SendClientMessage(playerid, GRAY, " you are not authorized to use that command!"); } return 1; } //----------------------------------[TOD]----------------------------------------------- if(strcmp(cmd, "/settime", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, GRAY, "USAGE: /settime [time]"); return 1; } new hour; hour = strval(tmp); if ((IsPlayerAdmin(playerid)) || PlayerInfo[playerid][pAdmin] >= 101) { SetWorldTime(hour); GetPlayerName(playerid, sendername, sizeof(sendername)); format(string, sizeof(string), "AdmCmd: %s has set the time to %d:00", sendername, hour); SendClientMessageToAll(RED, string); } else { SendClientMessage(playerid, GRAY, " you are not authorized to use that command!"); } return 1; } if(strcmp(cmd, "/setskin", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, GRAY, "USAGE: /setskin [skinid]"); return 1; } new skinid; skinid = strval(tmp); if ((IsPlayerAdmin(playerid)) || PlayerInfo[playerid][pAdmin] >= 101) { if(skinid >= 0 && skinid <= 287) { SetPlayerSkin(playerid, skinid); } } else { SendClientMessage(playerid, GRAY, " you are not authorized to use that command!"); } return 1; } if(strcmp(cmd, "/acon", true) == 0 || strcmp(cmd, "/ah", true) == 0) { SendClientMessage(playerid, RED,"_______________________________________"); if (PlayerInfo[playerid][pAdmin] >= 101) { SendClientMessage(playerid, GRAY, "Admin: /setskin /mute /kick /ban /warn /a"); } if (PlayerInfo[playerid][pAdmin] >= 1337) { SendClientMessage(playerid, GRAY,"Head Admin: /setarmor /sethealth /givegun /givemoney /setmoney /settime /setweather"); } if ((IsPlayerAdmin(playerid)) && IsPlayerConnected(playerid)) { SendClientMessage(playerid, GRAY,"RCON Admin: /gmx /makeadmin /restart /jetpack"); } SendClientMessage(playerid, RED,"_______________________________________"); return 1; } return 0; } public OnPlayerEnterCheckpoint(playerid) { return 1; } public OnPlayerLeaveCheckpoint(playerid) { return 1; } public OnPlayerPickUpPickup(playerid, pickupid) { if(pickupid == upgradepickup || pickupid == 0) { GameTextForPlayer(playerid, "~p~To ~R~upgrade ~P~your weapons ~N~~p~type ~b~/upgrade", 5000,4); permission[playerid] = 1; } return 1; } public OnPlayerSelectedMenuRow(playerid, row) { new Menu:mymenu; mymenu=GetPlayerMenu(playerid); if(mymenu==Upgrades) { switch(row) { case 0: { ShowMenuForPlayer(WeaponUpgrades,playerid);TogglePlayerControllable(playerid, 0); } } } if(mymenu==WeaponUpgrades) { switch(row) { case 0: { ShowMenuForPlayer(PistolUpgrades,playerid);TogglePlayerControllable(playerid, 0);} case 1: { ShowMenuForPlayer(ShotgunUpgrades,playerid);TogglePlayerControllable(playerid, 0);} case 2: { ShowMenuForPlayer(SubMachineUpgrades,playerid);TogglePlayerControllable(playerid, 0);} case 3: { ShowMenuForPlayer(AssaultUpgrades,playerid);TogglePlayerControllable(playerid, 0);} case 4: { ShowMenuForPlayer(RifleUpgrades,playerid);TogglePlayerControllable(playerid, 0);} } } if(mymenu==PistolUpgrades) { if(PlayerInfo[playerid][pCash] >= 1) { if(row==0){if(PlayerInfo[playerid][pCash]>=0){PlayerInfo[playerid][pGun1] = 23;TogglePlayerControllable(playerid, 1);TogglePlayerControllable(playerid, 1);}} if(row==1){if(PlayerInfo[playerid][pCash] >= 100){PlayerInfo[playerid][pGun1] = 22;GivePlayerMoney(playerid, -100);PlayerInfo[playerid][pCash] = PlayerInfo[playerid][pCash]-100;TogglePlayerControllable(playerid, 1);}} if(row==2){if(PlayerInfo[playerid][pCash] >= 150){PlayerInfo[playerid][pGun1] = 24;GivePlayerMoney(playerid, -150);PlayerInfo[playerid][pCash] = PlayerInfo[playerid][pCash]-150;TogglePlayerControllable(playerid, 1);}} } else{SendClientMessage(playerid,GRAY,"You have no money.");TogglePlayerControllable(playerid,1);} } if(mymenu==ShotgunUpgrades) { if(PlayerInfo[playerid][pCash] >= 1) {//if(row==){if(PlayerInfo[playerid][pCash]>=){}} //EXAMPLE TO COPY if(row==0){if(PlayerInfo[playerid][pCash]>=200){PlayerInfo[playerid][pGun2] = 25;GivePlayerMoney(playerid, -200);PlayerInfo[playerid][pCash] = PlayerInfo[playerid][pCash]-200;TogglePlayerControllable(playerid, 1);}}//shotgun if(row==1){if(PlayerInfo[playerid][pCash]>=300){PlayerInfo[playerid][pGun2] = 26;GivePlayerMoney(playerid, -300);PlayerInfo[playerid][pCash] = PlayerInfo[playerid][pCash]-300;TogglePlayerControllable(playerid, 1);}} if(row==2){if(PlayerInfo[playerid][pCash]>=320){PlayerInfo[playerid][pGun2] = 27;GivePlayerMoney(playerid, -320);PlayerInfo[playerid][pCash] = PlayerInfo[playerid][pCash]-320;TogglePlayerControllable(playerid, 1);}} } else{SendClientMessage(playerid,GRAY,"You have no money.");TogglePlayerControllable(playerid,1);} } if(mymenu==SubMachineUpgrades) { if(PlayerInfo[playerid][pCash] >= 1) { if(row==0){if(PlayerInfo[playerid][pCash]>=350){PlayerInfo[playerid][pGun3] = 32;GivePlayerMoney(playerid, -350);PlayerInfo[playerid][pCash] = PlayerInfo[playerid][pCash]-350;TogglePlayerControllable(playerid, 1);}} if(row==1){if(PlayerInfo[playerid][pCash]>=250){PlayerInfo[playerid][pGun3] = 28;GivePlayerMoney(playerid, -250);PlayerInfo[playerid][pCash] = PlayerInfo[playerid][pCash]-250;TogglePlayerControllable(playerid, 1);}} if(row==2){if(PlayerInfo[playerid][pCash]>=200){PlayerInfo[playerid][pGun3] = 29;GivePlayerMoney(playerid, -200);PlayerInfo[playerid][pCash] = PlayerInfo[playerid][pCash]-200;TogglePlayerControllable(playerid, 1);}} } else{SendClientMessage(playerid,GRAY,"You have no money.");TogglePlayerControllable(playerid,1);} } if(mymenu==RifleUpgrades) { if(PlayerInfo[playerid][pCash] >= 1) { if(row==0){if(PlayerInfo[playerid][pCash]>=400){PlayerInfo[playerid][pGun5] = 33;GivePlayerMoney(playerid, -400);PlayerInfo[playerid][pCash] = PlayerInfo[playerid][pCash]-400;TogglePlayerControllable(playerid, 1);}} if(row==1){if(PlayerInfo[playerid][pCash]>=550){PlayerInfo[playerid][pGun5] = 34;GivePlayerMoney(playerid, -550);PlayerInfo[playerid][pCash] = PlayerInfo[playerid][pCash]-550;TogglePlayerControllable(playerid, 1);}} } else{SendClientMessage(playerid,GRAY,"You have no money.");TogglePlayerControllable(playerid,1);} } if(mymenu==AssaultUpgrades) { if(PlayerInfo[playerid][pCash] >= 1) { if(row==0){if(PlayerInfo[playerid][pCash]>=500){PlayerInfo[playerid][pGun4] = 30;GivePlayerMoney(playerid, -500);PlayerInfo[playerid][pCash] = PlayerInfo[playerid][pCash]-500;TogglePlayerControllable(playerid, 1);}} if(row==1){if(PlayerInfo[playerid][pCash]>=600){PlayerInfo[playerid][pGun4] = 31;GivePlayerMoney(playerid, -600);PlayerInfo[playerid][pCash] = PlayerInfo[playerid][pCash]-600;TogglePlayerControllable(playerid, 1);}} } else{SendClientMessage(playerid,GRAY,"You have no money.");TogglePlayerControllable(playerid,1);TogglePlayerControllable(playerid, 1);}} } public OnPlayerExitedMenu(playerid) { TogglePlayerControllable(playerid,1); return 1; } public CheckCash(playerid) { new b00n = GetPlayerMoney(playerid); if(GetPlayerMoney(playerid) != PlayerInfo[playerid][pCash]) { GivePlayerMoney(playerid, -b00n); GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]); } } public TextDrawTimer() { seconds--; if(seconds < 0) { minutes--; seconds = 59; } if(seconds < 0 && minutes <= 0) { minutes = 5; seconds = 00; } for(new i=0; i