Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //============================================================================//
- // Credits: //
- // Markx for blank mysql script //
- // mobiliz for making the script //
- // BlueG for mysql plugin //
- // Zeex for zcmd plugin //
- // Y_Less for foreach plugin //
- // Y_Less for sscanf2 plugin //
- //============================================================================//
- #define SERVER_NAME "Street Wars"
- //============================================================================//
- // Includes //
- //============================================================================//
- #include <a_samp>
- #include <zcmd>
- #include <sscanf2>
- #include <foreach>
- #include <a_mysql>
- //============================================================================//
- // Color Define s //
- //============================================================================//
- #define COLOR_GREEN 0x008000FF
- #define COLOR_BLUE 0x0000FFFF
- #define COLOR_BRIGHTRED 0xFF000AAA
- #define COLOR_AQUA 0x00FFFFAA
- #define COLOR_GREY 0xAFAFAFAA
- #define COLOR_BEIGE 0xFFF8DCAA
- #define COLOR_BLACK 0x000000AA
- #define COLOR_LIGHTERBLUE 0x00BFFFAA
- #define COLOR_BLUELIGHT 0x1E90FFAA
- #define COLOR_BLUEMEDIUM 0x0000CDAA
- #define COLOR_BLUEDARK 0x00008BAA
- #define COLOR_PINK 0xFF1493AA
- #define COLOR_PINKDARK 0xFF00FFAA
- #define COLOR_GREENLIGHT 0x00FF00AA
- #define COLOR_GREENDARK 0x006400AA
- #define COLOR_MAROON 0x800000AA
- #define COLOR_OKER 0x808000AA
- #define COLOR_ORANGE 0xFF4500AA
- #define COLOR_ORANGELIGHT 0xFF8C00AA
- #define COLOR_PURPLE 0x800080AA
- #define COLOR_VIOLETDARK 0x9400D3AA
- #define COLOR_INDIGO 0xAB0082AA
- #define COLOR_RED 0xFF0000AA
- #define COLOR_SAND 0xFFDEADAA
- #define COLOR_SILVER 0xC0C0C0AA
- #define COLOR_TEAL 0x008080AA
- #define COLOR_WHITE 0xFFFFFFAA
- #define COLOR_YELLOW 0xFFFF00AA
- #define COLOR_GOLD 0xFFD700AA
- #define COLOR_BROWN 0x8B4513AA
- #define COLOR_BROWNLIGHT 0xA0522DAA
- #define COLOR_GRAY 0xA9A9A9AA
- #define COLOR_GRAYDARK 0x696969AA
- #define COLOR_INVISIBLE 0xFFFFFF00
- #define COLOR_INDIA 0x80000096
- #define COLOR_PAKISTAN 0x40808096
- #define COLOR_NEPAL 0x8000FF96
- #define COLOR_BRAZIL 0xB7B70096
- #define COLOR_CHINA 0x80808096
- #define COLOR_GREECE 0x00000096
- #define COLOR_SINGAPORE 0x00FFFF96
- #define COLOR_IRAQ 0x8080C096
- //============================================================================//
- // Team s //
- //============================================================================//
- #define TEAM_TRIADS 1
- #define TEAM_AZTECAS 2
- #define TEAM_GROVE 3
- #define TEAM_POLICE 4
- #define TEAM_BALLAS 5
- //============================================================================//
- // Team Spawns //
- //============================================================================//
- #define TRIADSSPAWN "1878.4596,-1223.3022,16.7139"
- #define AZTECASSPAWN "584.0753,-1862.7878,4.6869"
- #define GROVESPAWN "2512.7720,-1669.8339,13.4894"
- #define POLICESPAWN "1542.8073,-1661.2494,13.5619"
- #define BALLASSPAWN "761.4307,-1356.0966,13.5205"
- #define SPECIAL_ACTION_PISSING 68
- //============================================================================//
- // Define s //
- //============================================================================//
- #define SQL_HOST "changenow"
- #define SQL_USER "changenow"
- #define SQL_PASS "changenow"
- #define SQL_DB "changenow"
- #define Blue "{003DF5}"
- #define Red "{FF0000}"
- #define Green "{66FF00}"
- #define White "{FFFFFF}"
- #define DIALOG_REGISTER 100
- #define DIALOG_LOGIN 101
- #define DIALOG_ADMINS 2000
- #define DIALOG_KICK 2500
- //big defines
- #define SendErrorMessage(%1,%2) SendClientMessage(%1,0xFF0000AA,%2)
- #define levelerror(%1) if(AdminLevel(playerid) < %1) return SendErrorMessage(playerid, "You're admin level is too low to use this command!")
- #define GetAdminLevel(%1) GetPVarInt(%1, "AdminLevel")
- #define stringempty(%1) format(%1,sizeof(%1), "")
- //============================================================================//
- // New's //
- //============================================================================//
- new MoneyGiven[MAX_PLAYERS];
- new IsRegistered[MAX_PLAYERS];
- new Logged[MAX_PLAYERS];
- new JustLogged[MAX_PLAYERS];
- new gTeam[MAX_PLAYERS];
- new AdminLevel[MAX_PLAYERS];
- new Spectating[MAX_PLAYERS];
- new Text:Stats[MAX_PLAYERS];
- new playersAliveCount;
- new WarnedTimes[MAX_PLAYERS];
- new IsInGunShop[MAX_PLAYERS];
- new GunShopID[MAX_PLAYERS];
- new gunshop[8];
- new AdminDuty[MAX_PLAYERS];
- //global vars
- new Pname[24];
- new Float:posxx[3];
- //some new's I don't know
- new plid;
- new estring[200];
- //temp strings
- new reports[5][100];
- new reportnumber;
- enum pInfo
- {
- Kills,
- Deaths
- }
- new PlayerInfo[MAX_PLAYERS][pInfo];
- //============================================================================//
- // Forwards //
- //============================================================================//
- forward HideMessage1(playerid);
- forward SendClientMessageToAdmins(color,string[],level);
- //============================================================================//
- // Main //
- //============================================================================//
- main(){}
- //============================================================================//
- // Team Stuff //
- //============================================================================//
- SetPlayerTeamFromClass(playerid, classid)
- {
- if (classid == 0)
- {
- gTeam[playerid] = TEAM_TRIADS;
- }
- else
- {
- gTeam[playerid] = TEAM_AZTECAS;
- gTeam[playerid] = TEAM_GROVE;
- gTeam[playerid] = TEAM_POLICE;
- gTeam[playerid] = TEAM_BALLAS;
- }
- }
- GetTeamPlayersAlive(teamid)
- {
- new count;
- for(new i; i < playersAliveCount; i++)
- {
- if(IsPlayerConnected(i) && gTeam[i] == teamid) count++;
- }
- return count;
- }
- stock GetTeamName(playerid)
- {
- new name[30];
- switch(GetPlayerTeam(playerid))
- {
- case 1: format(name, sizeof(name), "Triads");
- case 2: format(name, sizeof(name), "Aztecas");
- case 3: format(name, sizeof(name), "Grove");
- case 4: format(name, sizeof(name), "Police");
- case 5: format(name, sizeof(name), "Ballas");
- case 6: format(name, sizeof(name), "Admin");
- //..etc
- }
- return name;
- }
- //============================================================================//
- // Publics //
- //============================================================================//
- public OnGameModeInit()
- {
- UsePlayerPedAnims();
- DisableInteriorEnterExits();
- SetGameModeText("Street Wars v0.1");
- //============================================================================//
- // Classes //
- //============================================================================//
- //Triads
- AddPlayerClass(118,2256.8662,-1441.0958,24.0642,85.5409,25,200,22,320,29,320);
- AddPlayerClass(120,2257.8333,-1433.9274,24.0255,83.3475,25,200,22,320,29,320);
- //Aztecas
- AddPlayerClass(115,866.9608,-1226.8621,15.7337,271.9548,28,320,24,200,30,320);
- AddPlayerClass(116,876.1880,-1220.5654,16.9766,266.0015,28,320,24,200,30,320);
- //Grove
- AddPlayerClass(106,2512.7720,-1669.8339,13.4894,82.7207,32,320,24,200,31,320);
- AddPlayerClass(107,2492.7803,-1651.1484,13.4963,84.6008,32,320,24,200,31,320);
- //Police
- AddPlayerClass(280,1542.2534,-1690.1072,13.5503,88.9682,34,200,27,320,29,320);
- AddPlayerClass(281,1542.8073,-1661.2494,13.5619,85.5215,34,200,27,320,29,320);
- //Police
- AddPlayerClass(102,760.9393,-1346.6837,13.5121,268.8192,30,320,26,200,29,320);
- AddPlayerClass(104,761.4307,-1356.0966,13.5205,273.5192,30,320,26,200,29,320);
- //veh
- AddStaticVehicleEx(598,1535.90002441,-1666.59997559,13.30000019,0.00000000,-1,79,180); //Police Car (LVPD)
- AddStaticVehicleEx(598,1535.90002441,-1678.90002441,13.30000019,0.00000000,-1,79,180); //Police Car (LVPD)
- AddStaticVehicleEx(490,1606.09997559,-1616.69995117,13.89999962,0.00000000,-1,79,180); //FBI Rancher
- AddStaticVehicleEx(415,841.59997559,-1209.30004883,16.79999924,270.00000000,3,1,180); //Cheetah
- AddStaticVehicleEx(415,841.70001221,-1215.69995117,16.79999924,270.00000000,-1,1,180); //Cheetah
- AddStaticVehicleEx(415,841.59997559,-1223.19995117,16.20000076,270.00000000,2,1,180); //Cheetah
- AddStaticVehicleEx(411,2233.39990234,-1415.80004883,23.60000038,90.00000000,6,1,180); //Infernus
- AddStaticVehicleEx(411,2270.69995117,-1433.59997559,23.60000038,359.00000000,49,1,180); //Infernus
- AddStaticVehicleEx(411,2230.69995117,-1451.59997559,23.60000038,90.00000000,91,1,180); //Infernus
- AddStaticVehicleEx(541,2508.19995117,-1667.00000000,13.10000038,12.00000000,86,1,180); //Bullet
- AddStaticVehicleEx(541,2485.89990234,-1682.80004883,13.00000000,90.00000000,86,1,180); //Bullet
- AddStaticVehicleEx(541,2484.69995117,-1655.09997559,13.00000000,90.00000000,86,1,180); //Bullet
- AddStaticVehicleEx(481,1931.30004883,-1436.90002441,13.19999981,0.00000000,-1,-1,180); //BMX
- AddStaticVehicleEx(481,1898.00000000,-1437.59997559,13.19999981,0.00000000,-1,-1,180); //BMX
- AddStaticVehicleEx(513,1449.30004883,-2485.89990234,14.30000019,270.00000000,-1,1,180); //Stunt
- AddStaticVehicleEx(513,1449.19995117,-2505.69995117,14.30000019,270.00000000,-1,1,180); //Stunt
- AddStaticVehicleEx(506,740.29998779,-1339.69995117,13.30000019,270.00000000,157,1,180); //Super GT
- AddStaticVehicleEx(506,740.29998779,-1345.50000000,13.30000019,270.00000000,157,1,180); //Super GT
- AddStaticVehicleEx(506,740.29998779,-1351.19995117,13.30000019,270.00000000,157,1,180); //Super GT
- //gun shops
- gunshop[7] = CreatePickup(1254, 23, 1368.1334,-1279.7281,13.5469);
- //================================================================//
- // MySQL part //
- //================================================================//
- mysql_connect(SQL_HOST, SQL_USER, SQL_DB, SQL_PASS);
- mysql_query("CREATE TABLE IF NOT EXISTS playerdata(user VARCHAR(24), password VARCHAR(40), score INT(20), kills INT(20), deaths INT(20), money INT(20), level INT(20), IP VARCHAR(15) )");
- mysql_debug(1);
- return 1;
- }
- public OnGameModeExit()
- {
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- SetPlayerPos(playerid, 1220.1063,-1410.3185,13.1395);
- SetPlayerFacingAngle(playerid, 354.7488);
- SetPlayerCameraPos(playerid, 1220.2598,-1407.5026,13.1717);
- SetPlayerCameraLookAt(playerid, 1220.1063,-1410.3185,13.1395);
- SetPlayerTeamFromClass(playerid, classid);
- switch(classid)
- {
- case 0 .. 1:
- {
- GameTextForPlayer(playerid,"~w~Triads",5000,5);
- SetPlayerTeam(playerid, TEAM_TRIADS);
- gTeam[playerid] = TEAM_TRIADS;
- SetPlayerColor(playerid, COLOR_WHITE);
- }
- case 2 .. 3:
- {
- GameTextForPlayer(playerid,"~b~~h~~h~~h~Aztecas",5000,5);
- SetPlayerTeam(playerid, TEAM_AZTECAS);
- gTeam[playerid] = TEAM_AZTECAS;
- SetPlayerColor(playerid, COLOR_AQUA);
- }
- case 4 .. 5:
- {
- GameTextForPlayer(playerid,"~g~Grove",5000,5);
- SetPlayerTeam(playerid, TEAM_GROVE);
- gTeam[playerid] = TEAM_GROVE;
- SetPlayerColor(playerid, COLOR_GREEN);
- }
- case 6 .. 7:
- {
- GameTextForPlayer(playerid,"~b~Police",5000,5);
- SetPlayerTeam(playerid, TEAM_POLICE);
- gTeam[playerid] = TEAM_POLICE;
- SetPlayerColor(playerid, COLOR_BLUE);
- }
- case 8 .. 9:
- {
- GameTextForPlayer(playerid,"~p~Ballas",5000,5);
- SetPlayerTeam(playerid, TEAM_BALLAS);
- gTeam[playerid] = TEAM_BALLAS;
- SetPlayerColor(playerid, COLOR_PURPLE);
- }
- }
- return 1;
- }
- //================================================================//
- // PlayerToTeamColor //
- //================================================================//
- SetPlayerToTeamColour(playerid)
- {
- if(gTeam[playerid] == TEAM_TRIADS)
- {
- SetPlayerColor(playerid, COLOR_WHITE);
- }
- else if(gTeam[playerid] == TEAM_AZTECAS)
- {
- SetPlayerColor(playerid, COLOR_AQUA);
- }
- else if(gTeam[playerid] == TEAM_GROVE)
- {
- SetPlayerColor(playerid, COLOR_GREEN);
- }
- else if(gTeam[playerid] == TEAM_POLICE)
- {
- SetPlayerColor(playerid, COLOR_BLUE);
- }
- else if(gTeam[playerid] == TEAM_BALLAS)
- {
- SetPlayerColor(playerid, COLOR_PURPLE);
- }
- }
- public OnPlayerRequestSpawn(playerid)
- {
- //================================================================//
- // MySQL part //
- //================================================================//
- if(!Logged[playerid])
- {
- if(!IsRegistered[playerid])
- {
- ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, ""Blue"Please register",""White"Welcome to "Red""SERVER_NAME""White"!\n"White"In order to start playing, you have to register!\n\n"White"Please insert a password below:", "Register", "Cancel");
- return 0;
- }
- if(IsRegistered[playerid] == 1)
- {
- ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, ""Blue"Please log-in", ""White"Welcome back to "Red""SERVER_NAME""White"!\n"White"In order to start playing, you have to log-in!\n\n"White"Please insert "Red"your"White" password below:", "Login", "Cancel");
- return 0;
- }
- }
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- //================================================================//
- // Teams & stats:textdraw //
- //================================================================//
- playersAliveCount++;
- TextDrawShowForPlayer(playerid,Text:Stats[playerid]);
- SetPlayerToTeamColour(playerid);
- //================================================================//
- // MySQL part //
- //================================================================//
- if(MoneyGiven[playerid] != -1)
- {
- GivePlayerMoney(playerid, MoneyGiven[playerid]);
- MoneyGiven[playerid] = -1;
- }
- if(JustLogged[playerid] == 1)
- {
- SendClientMessage(playerid, COLOR_RED, "You have successfully logged in");
- JustLogged[playerid] = 0;
- }
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- AdminDuty[playerid] = 0;
- RemoveUnderScore(playerid);
- SetPlayerMapIcon(playerid, 1, 1370.5306,-1279.9824,33.5305, 6, 6, MAPICON_LOCAL);
- //================================================================//
- // Stats Textdraw //
- //================================================================//
- Stats[playerid] = TextDrawCreate(18.000000,428.000000,"~w~xfreeroam.tk ~w~Team: ~w~0 ~w~Score: ~w~0 ~w~Kills: ~w~0 ~w~Deaths: ~w~0 ~w~Money: ~w~0");
- TextDrawAlignment(Stats[playerid],0);
- TextDrawBackgroundColor(Stats[playerid],255);
- TextDrawFont(Stats[playerid],1);
- TextDrawLetterSize(Stats[playerid],0.355555,0.955555);
- TextDrawColor(Stats[playerid],-1);
- TextDrawSetOutline(Stats[playerid],1);
- TextDrawSetProportional(Stats[playerid],1);
- TextDrawSetShadow(Stats[playerid],1);
- //================================================================//
- // PlayerConnect //
- //================================================================//
- new string[64], pName[MAX_PLAYER_NAME];
- GetPlayerName(playerid,pName,MAX_PLAYER_NAME);
- format(string,sizeof string,"[Server] %s[%d] has joined the server.",pName, playerid);
- SendClientMessageToAll(COLOR_GREY,string);
- //================================================================//
- // MySQL part //
- //================================================================//
- MoneyGiven[playerid] = -1;
- JustLogged[playerid] = 0;
- new query[300], pname[24];
- GetPlayerName(playerid, pname, 24);
- format(query, sizeof(query), "SELECT IP FROM `playerdata` WHERE `user` = '%s' LIMIT 1", pname);
- mysql_query(query);
- mysql_store_result();
- new rows = mysql_num_rows();
- if(!rows)
- {
- ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, ""Blue"Please register",""White"Welcome to "Red""SERVER_NAME""White"!\n"White"In order to start playing, you have to register!\n\n"White"Please insert a password below:", "Register", "Cancel");
- }
- if(rows == 1)
- {
- new IP[2][15];
- mysql_fetch_field_row(IP[0],"IP");
- GetPlayerIp(playerid, IP[1], 15);
- if(strlen(IP[0]) != 0 && !strcmp(IP[0], IP[1], true))
- {
- MySQL_Login(playerid);
- }
- else if(!strlen(IP[0]) || strcmp(IP[0], IP[1], true))
- {
- ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, ""Blue"Please log-in", ""White"Welcome back to "Red""SERVER_NAME""White"!\n"White"In order to start playing, you have to log-in!\n\n"White"Please insert "Red"your"White" password below:", "Login", "Cancel");
- IsRegistered[playerid] = 1;
- }
- }
- mysql_free_result();
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- //================================================================//
- // PlayerDisconnect //
- //================================================================//
- new string[64], pName[MAX_PLAYER_NAME];
- GetPlayerName(playerid,pName,MAX_PLAYER_NAME);
- switch(reason)
- {
- case 0: format(string,sizeof string,"[Server] %s[%d] left the server. (TimeOut)", pName, playerid);
- case 1: format(string,sizeof string,"[Server] %s[%d] left the server. (Leaving)", pName, playerid);
- case 2: format(string,sizeof string,"[Server] %s[%d] left the server. (Kicked/Banned)", pName, playerid);
- }
- SendClientMessageToAll(COLOR_GREY,string);
- //================================================================//
- // MySQL part //
- //================================================================//
- if(Logged[playerid] == 1)
- {
- new score = GetPlayerScore(playerid);
- new money = GetPlayerMoney(playerid);
- new kills = PlayerInfo[playerid][Kills];
- new deaths = PlayerInfo[playerid][Deaths];
- new query[300], pname[24];
- GetPlayerName(playerid, pname, 24);
- format(query, sizeof(query), "UPDATE `playerdata` SET `score` = '%d', `kills` = '%d', `deaths` = '%d', `money` = '%d' WHERE `user` ='%s'", score, kills, deaths, money, pname);
- mysql_query(query);
- }
- AdminDuty[playerid] = 0;
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- new string[128], killed[MAX_PLAYER_NAME];
- SendDeathMessage(killerid,playerid,reason);
- GetPlayerName(playerid,killed,sizeof(killed));
- playersAliveCount--;
- GivePlayerMoney(killerid,1250);
- SetPlayerScore(killerid, GetPlayerScore(killerid)+1);
- PlayerInfo[killerid][Kills]++;
- PlayerInfo[playerid][Deaths]++;
- format(string,sizeof(string),"You have killed %s, you gain +1 score also +1250 cash",killed);
- SendClientMessage(killerid,COLOR_RED,string);
- return 1;
- }
- public OnVehicleSpawn(vehicleid)
- {
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- new string[128], playername[MAX_PLAYER_NAME];
- GetPlayerName(playerid, playername, sizeof(playername));
- format(string, sizeof(string), "[%d]%s: %s",playerid, playername, text);
- SendClientMessageToAll(GetPlayerColor(playerid),string);
- if(text[0] == '.' && AdminLevel[playerid] >= 1)
- {
- GetPlayerName(playerid, string, MAX_PLAYER_NAME);
- format(string, sizeof string, "[AdminChat] [%d]%s: %s",playerid, playername, text[1]);
- SendMessageToAllAdmins(string, COLOR_ORANGE);
- return 0;
- }
- return 0;
- }
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- return 1;
- }
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- return 1;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- return 1;
- }
- public OnPlayerEnterCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerEnterRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnRconCommand(cmd[])
- {
- return 1;
- }
- public OnObjectMoved(objectid)
- {
- return 1;
- }
- public OnPlayerObjectMoved(playerid, objectid)
- {
- return 1;
- }
- public OnPlayerPickUpPickup(playerid, pickupid)
- {
- if(pickupid == gunshop[7])
- {
- SetPlayerInterior(playerid, 7);
- SetPlayerVirtualWorld(playerid, 1);
- SetPlayerPos(playerid, 314.820983,-141.431991,999.601562);
- SendClientMessage(playerid, COLOR_BROWNLIGHT, "Type /exit to exit the gun shop");
- SendClientMessage(playerid, COLOR_BROWNLIGHT, "To buy guns use /buygun");
- IsInGunShop[playerid] = 1;
- GunShopID[playerid] = 1;
- }
- return 1;
- }
- public OnVehicleMod(playerid, vehicleid, componentid)
- {
- return 1;
- }
- public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
- {
- return 1;
- }
- public OnVehicleRespray(playerid, vehicleid, color1, color2)
- {
- return 1;
- }
- public OnPlayerSelectedMenuRow(playerid, row)
- {
- return 1;
- }
- public OnPlayerExitedMenu(playerid)
- {
- return 1;
- }
- public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
- {
- return 1;
- }
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- return 1;
- }
- public OnRconLoginAttempt(ip[], password[], success)
- {
- return 1;
- }
- public OnPlayerUpdate(playerid)
- {
- new str[256];
- format(str,sizeof(str),"~w~xfreeroam.tk ~w~Team: ~w~%s ~w~Score: ~w~%d ~w~Kills: ~w~%d ~w~Deaths: ~w~%d ~w~Money: ~w~%d",GetTeamName(playerid), GetPlayerScore(playerid), PlayerInfo[playerid][Kills], PlayerInfo[playerid][Deaths], GetPlayerMoney(playerid));
- TextDrawSetString(Text:Stats[playerid],str);
- return 1;
- }
- public OnPlayerStreamIn(playerid, forplayerid)
- {
- return 1;
- }
- public OnPlayerStreamOut(playerid, forplayerid)
- {
- return 1;
- }
- public OnVehicleStreamIn(vehicleid, forplayerid)
- {
- return 1;
- }
- public OnVehicleStreamOut(vehicleid, forplayerid)
- {
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- //================================================================//
- // Gun Shop //
- //================================================================//
- if(dialogid == 100)
- {
- if(response)
- {
- if(listitem == 0)
- {
- if(GetPlayerMoney(playerid) >= 10000)
- {
- GivePlayerMoney(playerid, -10000);
- SetPlayerHealth(playerid, 100);
- SendClientMessage(playerid, COLOR_BEIGE, "[Server] You bought Health!");
- }
- else
- {
- SendClientMessage(playerid, COLOR_GREY, "[Server] You dont have enough money!");
- }
- }
- if(listitem == 1)
- {
- if(GetPlayerMoney(playerid) >= 11500)
- {
- GivePlayerMoney(playerid, -11500);
- SetPlayerArmour(playerid, 100);
- SendClientMessage(playerid, COLOR_BEIGE, "[Server] You bought Armour!");
- }
- else
- {
- SendClientMessage(playerid, COLOR_GREY, "[Server] You dont have enough money!");
- }
- }
- if(listitem == 2)
- {
- if(GetPlayerMoney(playerid) >= 2000)
- {
- GivePlayerMoney(playerid, -2000);
- GivePlayerWeapon(playerid, 22, 250);
- SendClientMessage(playerid, COLOR_BEIGE, "[Server] You bought a 9mm!");
- }
- else
- {
- SendClientMessage(playerid, COLOR_GREY, "[Server] You dont have enough money!");
- }
- }
- if(listitem == 3)
- {
- if(GetPlayerMoney(playerid) >= 5000)
- {
- GivePlayerMoney(playerid, -5000);
- GivePlayerWeapon(playerid, 24, 250);
- SendClientMessage(playerid, COLOR_BEIGE, "[Server] You bought a Desert Eagle!");
- }
- else
- {
- SendClientMessage(playerid, COLOR_GREY, "[Server] You dont have enough money!");
- }
- }
- if(listitem == 4)
- {
- if(GetPlayerMoney(playerid) >= 8500)
- {
- GivePlayerMoney(playerid, -8500);
- GivePlayerWeapon(playerid, 29, 250);
- SendClientMessage(playerid, COLOR_BEIGE, "[Server] You bought a MP5!");
- }
- else
- {
- SendClientMessage(playerid, COLOR_GREY, "[Server] You dont have enough money!");
- }
- }
- if(listitem == 5)
- {
- if(GetPlayerMoney(playerid) >= 10000)
- {
- GivePlayerMoney(playerid, -10000);
- GivePlayerWeapon(playerid, 27, 250);
- SendClientMessage(playerid, COLOR_BEIGE, "[Server] You bought a Combat Shotgun!");
- }
- else
- {
- SendClientMessage(playerid, COLOR_GREY, "[Server] You dont have enough money!");
- }
- }
- if(listitem == 6)
- {
- if(GetPlayerMoney(playerid) >= 10000)
- {
- GivePlayerMoney(playerid, -10000);
- GivePlayerWeapon(playerid, 34, 250);
- SendClientMessage(playerid, COLOR_BEIGE, "[Server] You bought a Sniper Rifle!");
- }
- else
- {
- SendClientMessage(playerid, COLOR_GREY, "[Server] You dont have enough money!");
- }
- }
- if(listitem == 7)
- {
- if(GetPlayerMoney(playerid) >= 12000)
- {
- GivePlayerMoney(playerid, -12000);
- GivePlayerWeapon(playerid, 28, 250);
- SendClientMessage(playerid, COLOR_BEIGE, "[Server] You bought a Uzi!");
- }
- else
- {
- SendClientMessage(playerid, COLOR_GREY, "[Server] You dont have enough money!");
- }
- }
- if(listitem == 8)
- {
- if(GetPlayerMoney(playerid) >= 12500)
- {
- GivePlayerMoney(playerid, -12500);
- GivePlayerWeapon(playerid, 31, 250);
- SendClientMessage(playerid, COLOR_BEIGE, "[Server] You bought a M4!");
- }
- else
- {
- SendClientMessage(playerid, COLOR_GREY, "[Server] You dont have enough money!");
- }
- }
- }
- }
- //================================================================//
- // MySQL part //
- //================================================================//
- if(dialogid == DIALOG_REGISTER)
- {
- if(response)
- {
- if(!strlen(inputtext) || strlen(inputtext) > 25)
- {
- SendClientMessage(playerid, COLOR_RED,"~r~Error: ~w~You must insert a password between 1-25 characters!");
- ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, ""Blue"Please register",""White"Welcome to "Red""SERVER_NAME""White"!\n"White"In order to start playing, you have to register!\n\n"White"Please insert a password below:", "Register", "Cancel");
- }
- else if(strlen(inputtext) > 0 && strlen(inputtext) < 25)
- {
- new escpass[100];
- mysql_real_escape_string(inputtext, escpass);
- MySQL_Register(playerid, escpass);
- }
- }
- if(!response)
- {
- SendClientMessage(playerid, COLOR_RED,"~r~Error: ~w~You must register before logging in!");
- ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, ""Blue"Please register",""White"Welcome to "Red""SERVER_NAME""White"!\n"White"In order to start playing, you have to register!\n\n"White"Please insert a password below:", "Register", "Cancel");
- }
- }
- if(dialogid == DIALOG_LOGIN)
- {
- if(!response)
- {
- SendClientMessage(playerid, COLOR_RED,"~r~Error: ~w~You must login before you spawn!");
- ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, ""Blue"Please log-in", ""White"Welcome back to "Red""SERVER_NAME""White"!\n"White"In order to start playing, you have to log-in!\n\n"White"Please insert "Red"your"White" password below:", "Login", "Cancel");
- }
- if(response)
- {
- new query[200], pname[24], escapepass[100];
- GetPlayerName(playerid, pname, 24);
- mysql_real_escape_string(inputtext, escapepass);
- format(query, sizeof(query), "SELECT `user` FROM `playerdata` WHERE `user` = '%s' AND password = `SHA1`('%s')", pname, escapepass);
- mysql_query(query);
- mysql_store_result();
- new numrows = mysql_num_rows();
- if(numrows == 1) MySQL_Login(playerid);
- if(!numrows)
- {
- ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, ""Blue"Please log-in", ""White"Welcome back to "Red""SERVER_NAME""White"!\n"White"In order to start playing, you have to log-in!\n\n"White"Please insert "Red"your"White" password below:", "Login", "Cancel");
- SendClientMessage(playerid, COLOR_RED,"~r~Error: ~w~Incorrect password!");
- }
- mysql_free_result();
- }
- }
- return 1;
- }
- public OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- return 1;
- }
- //============================================================================//
- // Player Commands //
- //============================================================================//
- CMD:commands(playerid, params[])
- {
- return cmd_cmds(playerid, params);
- }
- CMD:cmds(playerid, params[])
- {
- SendClientMessage(playerid, COLOR_YELLOW, "***************Commands***************");
- SendClientMessage(playerid, COLOR_YELLOW, "[Reg] /rules /kill /pm /stats /buygun /teams /myteam");
- SendClientMessage(playerid, COLOR_YELLOW, "[Reg] /anims /st /changename");
- return 1;
- }
- CMD:rules(playerid, params[])
- {
- SendClientMessage(playerid, COLOR_YELLOW, "***************Rules***************");
- SendClientMessage(playerid, COLOR_YELLOW, "•Do Not Hack ");
- SendClientMessage(playerid, COLOR_YELLOW, "•Do Not Passanger Seat Abuse");
- SendClientMessage(playerid, COLOR_YELLOW, "•Do Not C-Bug");
- SendClientMessage(playerid, COLOR_YELLOW, "•Respect All Players ");
- SendClientMessage(playerid, COLOR_YELLOW, "•Respect The Admins ");
- SendClientMessage(playerid, COLOR_YELLOW, "•Don't Spawn-Kill");
- SendClientMessage(playerid, COLOR_YELLOW, "•Don't Abuse /changename");
- SendClientMessage(playerid, COLOR_YELLOW, "•All other rules are on our forum, xfreeroam.tk");
- SendClientMessage(playerid, COLOR_YELLOW, "•If You Hack/Rulebreak You Be Punished");
- return 1;
- }
- //normal commands
- CMD:kill(playerid, params[])
- {
- SetPlayerHealth(playerid, 0.0);
- PlayerInfo[playerid][Deaths]++;
- return 1;
- }
- CMD:st(playerid, params[])
- {
- ForceClassSelection(playerid);
- SetPlayerHealth(playerid, 0.0);
- PlayerInfo[playerid][Deaths]++;
- return 1;
- }
- CMD:stats(playerid, params[])
- {
- new target=playerid; //default our target var as playerid
- if(!isnull(params)) sscanf(params, "r", target); //if the params aren't null, we sscanf the params
- new string[200];
- format(string, sizeof(string), "Name: %s | ID: %d | Team: %s | Score: %d | Kills: %i | Deaths: %i | Money: %d | Adminlevel: %s", PlayerName(target), target, GetTeamName(target), GetPlayerScore(target), PlayerInfo[target][Kills], PlayerInfo[target][Deaths], GetPlayerMoney(target), AdminLevel[target]);
- SendClientMessage(playerid ,COLOR_BROWN, string);
- return 1;
- }
- CMD:buygun(playerid,params[])
- {
- if(IsPlayerInRangeOfPoint(playerid, 20, 314.820983,-141.431991,999.601562))
- {
- ShowPlayerDialog(playerid, 100, DIALOG_STYLE_LIST, "Ammu-Nation", "Health ($10,000)\nArmour ($11,500)\n9mm ($2,000)\nDesert Eagle ($5,000)\nMP5 ($8,500)\nCombat Shotgun ($10,000)\nSniper Rifle ($10,000)\nUzi ($12,000)\nM4 ($12,500)", "Select", "Cancel");
- }
- else
- {
- SendClientMessage(playerid, COLOR_RED, "[Server] You are not in a gun shop!");
- }
- return 1;
- }
- CMD:pm(playerid,params[])
- {
- new pid; //the player(id) defined
- new message[128]; //the string for the main-message
- if(sscanf(params, "us[32]", pid, message)) //detects the wrong parameters, and if wrong, shows the usage
- {
- return SendClientMessage(playerid, COLOR_RED, "USAGE: /pm <playerid> <message>");//displays the usage, if parameters are wrong
- }
- if(!IsPlayerConnected(pid)) //when the ID is wrong/the player's not connected
- return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected!"); //send him this message to know that it's a wrong ID
- new pmsg[256]; //the message for player 1
- new pname[MAX_PLAYER_NAME]; //the name of player 1
- GetPlayerName(playerid,pname,sizeof(pname)); //get (receive the info) of the player's name
- format(pmsg,sizeof(pmsg),"PM from %s(%d): %s",pname,playerid,message); //this will receive the message from the player, with the first message-string
- new pidmsg[256]; //the message for player 2
- new pidname[MAX_PLAYER_NAME]; //the name of player 2
- GetPlayerName(pid,pidname,sizeof(pidname)); //get (receive the info) of the player's name
- format(pidmsg,sizeof(pidmsg),"PM to %s(%d): %s",pidname,pid,message); //this will let the player know, that he has sent successfully a message to his destination
- SendClientMessage(pid, COLOR_YELLOW, pmsg); //the message for player 1 should appear in orange, the first message-string is used here
- PlayerPlaySound(pid,1057,0.0,0.0,0.0); //play a "success-sound"
- SendClientMessage(playerid, COLOR_YELLOW, pidmsg); //the message for player 2 should also appear in orange, the second message-string is used here
- return 1;
- }
- CMD:teams(playerid, params[])
- {
- new string[128];
- format(string,sizeof(string), "Triads : %d | Aztecas: %d | Grove: %d | Police: %d | Ballas: %d",GetTeamPlayersAlive(TEAM_TRIADS), GetTeamPlayersAlive(TEAM_AZTECAS), GetTeamPlayersAlive(TEAM_GROVE), GetTeamPlayersAlive(TEAM_POLICE), GetTeamPlayersAlive(TEAM_BALLAS));
- SendClientMessage(playerid ,COLOR_GREENLIGHT, string);
- return 1;
- }
- CMD:myteam(playerid, params[])
- {
- new string[128];
- format(string, sizeof(string), "You're a part of %s", GetTeamName(playerid));
- SendClientMessage(playerid, 0x00CCCCAA, string);
- return 1;
- }
- CMD:changename(playerid, params[])
- {
- new newname[24];
- new string[128];
- new pname[MAX_PLAYER_NAME];
- if(sscanf(params, "s[24]",newname))return SendClientMessage(playerid, COLOR_RED,"Usage: /changename <New Name>");
- GetPlayerName(playerid,pname,24);
- new query1[256],escapename[24];
- mysql_real_escape_string(newname, escapename);
- format(query1, sizeof(query1), "SELECT `user` FROM `playerdata` WHERE `user` = '%s'", escapename);
- mysql_query(query1);
- mysql_store_result();
- new rows = mysql_num_rows();
- if(!rows)
- {
- new query[256];
- format(query, sizeof(query), "UPDATE `playerdata` SET `user`= '%s' WHERE `user` ='%s'",escapename,pname);
- mysql_query(query);
- SetPlayerName(playerid ,newname);
- format(string, sizeof(string),"You have changed your name to %s", newname);
- SendClientMessage(playerid, COLOR_GRAYDARK, string);
- format(string, sizeof(string),"%s has changed their name into %s", pname, newname);
- SendMessageToAllAdmins(string, COLOR_GRAYDARK);
- }
- else if(rows == 1)
- {
- SendClientMessage(playerid, COLOR_RED, "This name already exists!");
- }
- mysql_free_result();
- return 1;
- }
- CMD:report(playerid, params[])
- {
- new string[128];
- if (sscanf(params, "us[200]", plid, estring)) return SendClientMessage(playerid, 0xFF0000AA, "Usage: /report <playerid> <reason>");
- if (!IsPlayerConnected(plid)) return SendClientMessage(playerid, 0xFF0000AA, "The player you have tried to report is not connected!");
- if (plid == playerid) return SendClientMessage(playerid, 0xFF0000AA, "You cannot report yourself!");
- format(string, sizeof(string), "REPORT: %s(%d) has reported %s(%d) for %s", PlayerName(playerid), playerid, PlayerName(plid), plid, estring);
- SendMessageToAllAdmins(string, 0xFF0000AA);
- SendClientMessage(playerid, 0x99FF66, "Your report has been sent.");
- if(reportnumber != 5)
- {
- format(reports[reportnumber], 100, "%s", string);
- reportnumber++;
- return 1;
- }
- if(reportnumber == 5)
- {
- reportnumber = 0;
- format(reports[reportnumber], 100, "%s", string);
- reportnumber ++;
- }
- return 1;
- }
- CMD:exit(playerid, params[])
- {
- if(IsInGunShop[playerid] == 1)
- {
- if( GetPlayerInterior(playerid) != 0 )
- {
- IsInGunShop[playerid] = 0;
- SetPlayerVirtualWorld(playerid, 0);
- SetPlayerInterior(playerid, 0);
- if(GunShopID[playerid] == 1)
- {
- SetPlayerPos(playerid, 1366.1251,-1279.5922,13.5469);
- }
- GunShopID[playerid] = 0;
- }
- }
- return 1;
- }
- CMD:anims(playerid, params[])
- {
- SendClientMessage(playerid, COLOR_INDIGO, "***************Anims***************");
- SendClientMessage(playerid, COLOR_INDIGO, "/stopanim /handsup /smoke /piss /wank /scratch /cellin /cellout /robman");
- SendClientMessage(playerid, COLOR_INDIGO, "/injured /die /die2 /lookout /aim");
- return 1;
- }
- CMD:stopanim(playerid, params[])
- {
- ApplyAnimation(playerid, "CARRY", "crry_prtial", 2.0, 0, 0, 0, 0, 0);
- return 1;
- }
- CMD:handsup(playerid, params[])
- {
- SetPlayerSpecialAction(playerid,SPECIAL_ACTION_HANDSUP);
- return 1;
- }
- CMD:smoke(playerid, params[])
- {
- ApplyAnimation(playerid,"SMOKING", "M_smklean_loop", 4.0, 1, 0, 0, 0, 0);
- return 1;
- }
- CMD:piss(playerid,params[])
- {
- SetPlayerSpecialAction(playerid,SPECIAL_ACTION_PISSING);
- return 1;
- }
- CMD:wank(playerid, params[])
- {
- ApplyAnimation(playerid,"PAULNMAC", "wank_loop", 1.800001, 1, 0, 0, 1, 600);
- return 1;
- }
- CMD:scratch(playerid, params[])
- {
- ApplyAnimation(playerid,"MISC","Scratchballs_01", 4.0, 1, 0, 0, 0, 0);
- return 1;
- }
- CMD:cellin(playerid, params[])
- {
- SetPlayerSpecialAction(playerid,SPECIAL_ACTION_USECELLPHONE);
- return 1;
- }
- CMD:cellout(playerid, params[])
- {
- SetPlayerSpecialAction(playerid,SPECIAL_ACTION_STOPUSECELLPHONE);
- return 1;
- }
- CMD:robman(playerid, params[])
- {
- ApplyAnimation(playerid, "SHOP", "ROB_Loop_Threat", 4.0, 1, 0, 0, 0, 0);
- return 1;
- }
- CMD:injured(playerid, params[])
- {
- ApplyAnimation(playerid,"SWEET","Sweet_injuredloop", 4.0, 1, 0, 0, 0, 0);
- return 1;
- }
- CMD:die(playerid, params[])
- {
- ApplyAnimation(playerid,"KNIFE","KILL_Knife_Ped_Die",4.1,0,1,1,1,1);
- return 1;
- }
- CMD:die2(playerid, params[])
- {
- ApplyAnimation(playerid, "PARACHUTE", "FALL_skyDive_DIE", 4.0, 0, 1, 1, 1, -1);
- return 1;
- }
- CMD:lookout(playerid, params[])
- {
- ApplyAnimation(playerid, "SHOP", "ROB_Shifty", 4.0, 0, 0, 0, 0, 0);
- return 1;
- }
- CMD:aim(playerid, params[])
- {
- ApplyAnimation(playerid, "SHOP", "SHP_Gun_Aim", 4.0, 0, 1, 1, 1, -1);
- return 1;
- }
- //============================================================================//
- // Admin Commands //
- //============================================================================//
- CMD:ahelp(playerid, params[])
- {
- if (AdminLevel[playerid] < 1) {
- SendClientMessage(playerid,COLOR_RED, " [Server] You don't have permission for this command !");
- }
- if (AdminLevel[playerid] >= 1) {
- SendClientMessage(playerid,COLOR_PINK, " [Admin]: /cc /kick /spec(off) /warn /slap /ip");
- }
- if (AdminLevel[playerid] >= 2) {
- SendClientMessage(playerid,COLOR_PINK, " [Senior Admin]: /ban /goto /healall /armourall");
- }
- if (AdminLevel[playerid] >= 3) {
- SendClientMessage(playerid,COLOR_PINK, " [Lead Admin]: /announce");
- }
- if (AdminLevel[playerid] >= 4) {
- SendClientMessage(playerid,COLOR_PINK, " [Admin manager]:");
- }
- if (AdminLevel[playerid] >= 5) {
- SendClientMessage(playerid,COLOR_PINK, " [Hiring Managing]: /rac");
- }
- if (AdminLevel[playerid] == 6) {
- SendClientMessage(playerid,COLOR_PINK, " [Owner]:");
- }
- return 1;
- }
- CMD:healall(playerid, params[])
- {
- new sendername[16], string[128];
- GetPlayerName(playerid, sendername, sizeof(sendername));
- if(AdminLevel[playerid] >= 2)
- {
- format(string, sizeof(string), "Administrator %s has healed everyone", sendername);
- SendClientMessageToAll(COLOR_ORANGE, string);
- foreach(Player, i)
- {
- SetPlayerHealth(i, 100);
- }
- }
- else
- {
- SendClientMessage(playerid, COLOR_RED, "You do not have permission to use that command!");
- }
- return 1;
- }
- CMD:ban(playerid, params[])
- {
- if(AdminLevel[playerid] < 2) return SendClientMessage(playerid, COLOR_RED, "You're not a level 2+ admin!");
- new target, reason[128];
- if(sscanf(params, "us[128]", target, reason)) return SendClientMessage(playerid, COLOR_RED, "Usage: /ban [playerid/name] [reason]");
- else if(target == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, "Enter a valid player ID/name!");
- new pName[MAX_PLAYER_NAME], gName[MAX_PLAYER_NAME], string[300]; //Immediately the query as well.
- GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
- GetPlayerName(target, gName, MAX_PLAYER_NAME);
- format(string, sizeof string, "Administrator %s has banned %s [Reason: %s]", pName, gName, reason);
- SendClientMessageToAll(COLOR_RED, string);
- SendClientMessage(target, COLOR_RED, "You've been banned!");
- SendClientMessage(target, COLOR_RED, "Visit xfreeroam.tk if you want to appeal your ban.");
- new ip[16];
- GetPlayerIp(target, ip, sizeof ip);
- Ban(target);
- return 1;
- }
- CMD:adminduty(playerid)
- {
- if(AdminLevel[playerid] >=1 || IsPlayerAdmin(playerid))
- {
- if (AdminDuty[playerid] == 0)
- {
- new string[128];
- new Float:x,Float:y,Float:z;
- new Text3D:label = Create3DTextLabel("Admin On Duty!", COLOR_GREEN,x,y,z, 40.0, 0, 0);
- GetPlayerPos(playerid,x,y,z);
- SetPlayerHealth(playerid,999999);
- SetPlayerColor(playerid,COLOR_RED);
- SetPlayerSkin(playerid,116);
- format(string,sizeof(string), "%s is now on Admin Duty!",GetPlayerNameEx(playerid));
- SendClientMessageToAll(COLOR_RED,string);
- SendClientMessage(playerid,COLOR_RED,"You are now on duty!");
- Attach3DTextLabelToPlayer(label,playerid,0.0, 0.0, 0.7);
- AdminDuty[playerid] = 1;
- }
- else if (AdminDuty[playerid] == 1)
- {
- new string[128];
- new Float:x,Float:y,Float:z;
- new Text3D:label = Create3DTextLabel("Admin On Duty!", COLOR_GREEN,x,y,z, 40.0, 0, 0);
- Delete3DTextLabel(label);
- SetPlayerHealth(playerid,100);
- format(string,sizeof(string)," %s is now off Admin Duty!",GetPlayerNameEx(playerid));
- SendClientMessageToAll(COLOR_RED,string);
- SendClientMessage(playerid, COLOR_RED,"You are now off duty!");
- AdminDuty[playerid] = 0;
- }
- }
- else
- SendClientMessage(playerid,COLOR_RED,"You need to be admin level 1!");
- return 1;
- }
- CMD:armourall(playerid, params[])
- {
- new sendername[16], string[128];
- GetPlayerName(playerid, sendername, sizeof(sendername));
- if(AdminLevel[playerid] >= 2)
- {
- format(string, sizeof(string), "Administrator %s has armoured everyone", sendername);
- SendClientMessageToAll(COLOR_ORANGE, string);
- foreach(Player, i)
- {
- SetPlayerArmour(i, 100);
- }
- }
- else
- {
- SendClientMessage(playerid, COLOR_RED, "You do not have permission to use that command!");
- }
- return 1;
- }
- CMD:warn(playerid, params[])
- {
- if(AdminLevel[playerid] < 1)
- {
- SendClientMessage(playerid, COLOR_RED, "You do not have permission to use that command!");
- return 1;
- }
- // Our player is an admin and has the rights to use this command, so parse the parameters
- new giveplayerid, reason[32];
- new giveplayer[16];
- new sendername[16];
- new str[128];
- if(sscanf(params, "us[128]", giveplayerid, reason))
- {
- SendClientMessage(playerid, COLOR_RED, "Correct Usage: /warn [PlayerID] [Reason]");
- return 1;
- }
- // Check if the given player ID/name is connected/found
- if(giveplayerid == INVALID_PLAYER_ID)
- {
- SendClientMessage(playerid, COLOR_RED, "This player is not connected!");
- return 1;
- }
- GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
- if(WarnedTimes[giveplayerid] == 0)
- {
- WarnedTimes[giveplayerid]+=1;
- GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
- GetPlayerName(playerid, sendername, sizeof (sendername));
- format(str, sizeof (str), "Administrator %s has warned %s [Reason: %s] [1/3 Warnings]", sendername, giveplayer, reason);
- SendClientMessageToAll(COLOR_RED, str);
- print(str);
- return 1;
- }
- if(WarnedTimes[giveplayerid] == 1)
- {
- WarnedTimes[giveplayerid]+=1;
- GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
- GetPlayerName(playerid, sendername, sizeof (sendername));
- format(str, sizeof (str), "Administrator %s has warned %s [Reason: %s] [2/3 Warnings]", sendername, giveplayer, reason);
- SendClientMessageToAll(COLOR_RED, str);
- print(str);
- return 1;
- }
- else if(WarnedTimes[giveplayerid] == 2)
- {
- GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
- GetPlayerName(playerid, sendername, sizeof (sendername));
- format(str, sizeof (str), "Administrator %s has kicked %s [Reason: %s] [3/3 Warnings]", sendername, giveplayer, reason);
- SendClientMessageToAll(COLOR_RED, str);
- Kick(giveplayerid);
- return 1;
- }
- return 1;
- }
- CMD:slap(playerid, params[])
- {
- new Float:x, Float:y, Float:z,Float:health;
- new string[128],
- pname[MAX_PLAYER_NAME],
- victimname[MAX_PLAYER_NAME],
- victimid;
- if (AdminLevel[playerid] >= 1)
- {
- if(sscanf(params, "us[30]", victimid)) return SendClientMessage(playerid, COLOR_RED, "SYNTAX: /slap <playerid/name>");
- GetPlayerPos(victimid, x, y, z);
- GetPlayerName(playerid, pname, sizeof(pname));
- GetPlayerName(victimid, victimname, sizeof(victimname));
- GetPlayerHealth(victimid, health);
- SetPlayerHealth(victimid, health-25);
- SetPlayerPos(victimid, x, y, z+5);
- format(string, sizeof(string), "You have slaped %s", victimname);
- SendClientMessage(playerid, COLOR_RED, string);
- }
- return 1;
- }
- CMD:goto(playerid, params[])
- {
- new giveplayer[16];
- new sendername[16];
- if(AdminLevel[playerid] < 2) return SendClientMessage(playerid, COLOR_RED, "You're not a level 2+ admin!");
- new target;
- if(sscanf(params, "u", target)) return SendClientMessage(playerid, COLOR_RED, "Usage: /goto [playerid/name]");
- else if(target == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, "Enter a valid player ID/name!");
- new Float:Pos[3];
- GetPlayerPos(target, Pos[0], Pos[1], Pos[2]);
- if(!IsPlayerInAnyVehicle(playerid)) SetPlayerPos(playerid, Pos[0] + 2, Pos[1] + 2, Pos[2] + 2);
- else SetVehiclePos(GetPlayerVehicleID(playerid), Pos[0] + 2, Pos[1] + 2, Pos[2] + 2);
- SetPlayerInterior(playerid, GetPlayerInterior(target));
- if(IsPlayerInAnyVehicle(playerid)) LinkVehicleToInterior(GetPlayerVehicleID(playerid), GetPlayerInterior(target));
- SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(target));
- if(IsPlayerInAnyVehicle(playerid)) SetVehicleVirtualWorld(GetPlayerVehicleID(playerid), GetPlayerVirtualWorld(target));
- new string[128], pName[MAX_PLAYER_NAME], gName[MAX_PLAYER_NAME];
- GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
- GetPlayerName(target, gName, MAX_PLAYER_NAME);
- format(string, sizeof string, "Administrator %s has teleported to %s", sendername, giveplayer);
- SendMessageToAllAdmins(string, COLOR_GRAYDARK);
- return 1;
- }
- CMD:get(playerid, params[])
- {
- new giveplayer[16];
- new sendername[16];
- if(AdminLevel[playerid] < 2) return SendClientMessage(playerid, COLOR_RED, "You're not a level 2+ admin!");
- new target;
- if(sscanf(params, "u", target)) return SendClientMessage(playerid, COLOR_RED, "Usage: /get(here) [playerid/name]");
- else if(target == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, "Enter a valid player ID/name!");
- new Float:Pos[3];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- if(!IsPlayerInAnyVehicle(target)) SetPlayerPos(target, Pos[0] + 2, Pos[1] + 2, Pos[2] + 2);
- else SetVehiclePos(GetPlayerVehicleID(target), Pos[0] + 2, Pos[1] + 2, Pos[2] + 2);
- SetPlayerInterior(target, GetPlayerInterior(playerid));
- if(IsPlayerInAnyVehicle(target)) LinkVehicleToInterior(GetPlayerVehicleID(target), GetPlayerInterior(playerid));
- SetPlayerVirtualWorld(target, GetPlayerVirtualWorld(playerid));
- if(IsPlayerInAnyVehicle(target)) SetVehicleVirtualWorld(GetPlayerVehicleID(target), GetPlayerVirtualWorld(playerid));
- new string[128], pName[MAX_PLAYER_NAME], gName[MAX_PLAYER_NAME];
- GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
- GetPlayerName(target, gName, MAX_PLAYER_NAME);
- format(string, sizeof string, "Administrator %s has teleported %s to him", sendername, giveplayer);
- SendMessageToAllAdmins(string, COLOR_GRAYDARK);
- return 1;
- }
- CMD:rac(playerid, params[])
- {
- new sendername[16];
- if(AdminLevel[playerid] < 4)
- SendClientMessage(playerid,COLOR_RED," [!] You don't have permission for this command !");
- new bool:vehicleused[MAX_VEHICLES];
- for(new i=0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i) && IsPlayerInAnyVehicle(i))
- {
- vehicleused[GetPlayerVehicleID(i)] = true;
- }
- }
- for(new i=1; i < MAX_VEHICLES; i++)
- {
- if(!vehicleused[i])
- {
- SetVehicleToRespawn(i);
- }
- }
- new msg[128];
- format(msg, sizeof(msg), "Administrator %d has respawned all unused vehicles", sendername);
- SendClientMessageToAll(COLOR_YELLOW, msg);
- return 1;
- }
- CMD:unbanip(playerid, params[])
- {
- if(AdminLevel[playerid] < 3) return SendClientMessage(playerid, COLOR_RED, "You aren't a level 3+ admin!");
- new ip[16];
- new sendername[16];
- if(sscanf(params, "s[16]", ip)) return SendClientMessage(playerid, COLOR_RED, "Usage: /unbanip [ip]");
- new string[128], pName[MAX_PLAYER_NAME];
- GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
- format(string, sizeof string, "Administrator %s has unbanned an ip: %s", sendername, ip);
- SendMessageToAllAdmins(string, COLOR_GRAYDARK);
- format(string, sizeof string, "unbanip %s", ip);
- SendRconCommand(string);
- return 1;
- }
- CMD:ip(playerid, params[])
- {
- if(AdminLevel[playerid] < 1) return SendClientMessage(playerid, COLOR_RED, "You're not a level 1+ admin!");
- new target;
- if(sscanf(params, "u", target)) return SendClientMessage(playerid, COLOR_RED, "Usage: /ip [playerid/name]");
- else if(target == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, "Enter a valid player ID/name!");
- new string[128], IP[16];
- GetPlayerName(target, string, MAX_PLAYER_NAME);
- GetPlayerIp(target, IP, 16);
- format(string, sizeof string, "%s's IP: %s", string, IP);
- SendClientMessage(playerid, COLOR_TEAL, string);
- return 1;
- }
- CMD:kick(playerid, params[])
- {
- if (AdminLevel[playerid] < 1) {
- SendClientMessage(playerid, COLOR_RED, "[Server] You don't have permission for this command !");
- }
- else {
- if (AdminLevel[playerid] >= 1) {
- new pos;
- if(!params[0] || !(pos = chrfind(' ', params) + 1) || !params[pos]) return SendClientMessage(playerid, COLOR_RED, "[!] Usage: /kick [ID] [Reason]");
- new id = strval(params);
- if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, " [!] Player with this ID is not on the server !");
- if(strlen(params[pos]) > 50) return SendClientMessage(playerid, COLOR_RED, " [!] Reason is too long !");
- new string[150];
- format(string, sizeof(string), "Administrator %s kicked %s [Reason: %s]", PlayerName(playerid), PlayerName(id), params[pos]);
- SendClientMessageToAll(COLOR_RED, string);
- Kick(id);
- }
- }
- return 1;
- }
- CMD:announce(playerid, params[])
- {
- new pName[MAX_PLAYER_NAME];
- GetPlayerName(playerid,pName,MAX_PLAYER_NAME);
- new string[128];
- if(AdminLevel[playerid] < 3) return SendClientMessage(playerid, COLOR_RED, "You're not a level 3+ admin!");
- if(isnull(params)) return SendClientMessage(playerid, COLOR_RED, "Usage: /announce [message]");
- GameTextForAll(params, 3800, 6);
- format(string, sizeof(string), "Administrator %s used announce", pName);
- SendMessageToAllAdmins(string, COLOR_GRAYDARK);
- return 1;
- }
- CMD:cc(playerid, params[])
- {
- if (AdminLevel[playerid] < 1) {
- SendClientMessage(playerid, COLOR_RED, "[Server] You don't have permission for this command !");
- }
- else {
- if (AdminLevel[playerid] >= 1)
- {
- #pragma unused params
- #pragma unused playerid
- for(new c=0;c<65;c++) SendClientMessageToAll(COLOR_WHITE," ");
- new string[200];
- SendClientMessageToAll(COLOR_BLUE, string);
- }
- }
- return 1;
- }
- CMD:v(playerid, params[])
- {
- new sendername[16];
- if(AdminLevel[playerid] < 3) return SendClientMessage(playerid, COLOR_RED, "You aren't a level 3+ admin!");
- new veh[24], color[2];
- if(sscanf(params, "s[24]I(-1)I(-1)", veh, color[0], color[1])) return SendClientMessage(playerid, COLOR_RED, "Usage: /veh [vehicleid/name]");
- new VehicleNames[212][] = {
- {"Landstalker"},{"Bravura"},{"Buffalo"},{"Linerunner"},{"Perrenial"},{"Sentinel"},{"Dumper"},
- {"Firetruck"},{"Trashmaster"},{"Stretch"},{"Manana"},{"Infernus"},{"Voodoo"},{"Pony"},{"Mule"},
- {"Cheetah"},{"Ambulance"},{"Leviathan"},{"Moonbeam"},{"Esperanto"},{"Taxi"},{"Washington"},
- {"Bobcat"},{"Mr Whoopee"},{"BF Injection"},{"Hunter"},{"Premier"},{"Enforcer"},{"Securicar"},
- {"Banshee"},{"Predator"},{"Bus"},{"Rhino"},{"Barracks"},{"Hotknife"},{"Trailer 1"},{"Previon"},
- {"Coach"},{"Cabbie"},{"Stallion"},{"Rumpo"},{"RC Bandit"},{"Romero"},{"Packer"},{"Monster"},
- {"Admiral"},{"Squalo"},{"Seasparrow"},{"Pizzaboy"},{"Tram"},{"Trailer 2"},{"Turismo"},
- {"Speeder"},{"Reefer"},{"Tropic"},{"Flatbed"},{"Yankee"},{"Caddy"},{"Solair"},{"Berkley's RC Van"},
- {"Skimmer"},{"PCJ-600"},{"Faggio"},{"Freeway"},{"RC Baron"},{"RC Raider"},{"Glendale"},{"Oceanic"},
- {"Sanchez"},{"Sparrow"},{"Patriot"},{"Quad"},{"Coastguard"},{"Dinghy"},{"Hermes"},{"Sabre"},
- {"Rustler"},{"ZR-350"},{"Walton"},{"Regina"},{"Comet"},{"BMX"},{"Burrito"},{"Camper"},{"Marquis"},
- {"Baggage"},{"Dozer"},{"Maverick"},{"News Chopper"},{"Rancher"},{"FBI Rancher"},{"Virgo"},{"Greenwood"},
- {"Jetmax"},{"Hotring"},{"Sandking"},{"Blista Compact"},{"Police Maverick"},{"Boxville"},{"Benson"},
- {"Mesa"},{"RC Goblin"},{"Hotring Racer A"},{"Hotring Racer B"},{"Bloodring Banger"},{"Rancher"},
- {"Super GT"},{"Elegant"},{"Journey"},{"Bike"},{"Mountain Bike"},{"Beagle"},{"Cropdust"},{"Stunt"},
- {"Tanker"}, {"Roadtrain"},{"Nebula"},{"Majestic"},{"Buccaneer"},{"Shamal"},{"Hydra"},{"FCR-900"},
- {"NRG-500"},{"HPV1000"},{"Cement Truck"},{"Tow Truck"},{"Fortune"},{"Cadrona"},{"FBI Truck"},
- {"Willard"},{"Forklift"},{"Tractor"},{"Combine"},{"Feltzer"},{"Remington"},{"Slamvan"},
- {"Blade"},{"Freight"},{"Streak"},{"Vortex"},{"Vincent"},{"Bullet"},{"Clover"},{"Sadler"},
- {"Firetruck LA"},{"Hustler"},{"Intruder"},{"Primo"},{"Cargobob"},{"Tampa"},{"Sunrise"},{"Merit"},
- {"Utility"},{"Nevada"},{"Yosemite"},{"Windsor"},{"Monster A"},{"Monster B"},{"Uranus"},{"Jester"},
- {"Sultan"},{"Stratum"},{"Elegy"},{"Raindance"},{"RC Tiger"},{"Flash"},{"Tahoma"},{"Savanna"},
- {"Bandito"},{"Freight Flat"},{"Streak Carriage"},{"Kart"},{"Mower"},{"Duneride"},{"Sweeper"},
- {"Broadway"},{"Tornado"},{"AT-400"},{"DFT-30"},{"Huntley"},{"Stafford"},{"BF-400"},{"Newsvan"},
- {"Tug"},{"Trailer 3"},{"Emperor"},{"Wayfarer"},{"Euros"},{"Hotdog"},{"Club"},{"Freight Carriage"},
- {"Trailer 3"},{"Andromada"},{"Dodo"},{"RC Cam"},{"Launch"},{"Police Car (LSPD)"},{"Police Car (SFPD)"},
- {"Police Car (LVPD)"},{"Police Ranger"},{"Picador"},{"S.W.A.T. Van"},{"Alpha"},{"Phoenix"},{"Glendale"},
- {"Sadler"},{"Luggage Trailer A"},{"Luggage Trailer B"},{"Stair Trailer"},{"Boxville"},{"Farm Plow"},
- {"Utility Trailer"}
- }, vehicle = -1;
- for(new v; v < 212; v++) if(strfind(VehicleNames[v], veh, true) != -1) { vehicle = v + 400; break; }
- if(vehicle == -1) vehicle = strval(veh);
- if(vehicle < 400 || vehicle > 611) return SendClientMessage(playerid, COLOR_RED, "Enter a valid vehicle name or an ID between 400 and 611!");
- new Float:Pos[4];
- if(IsPlayerInAnyVehicle(playerid))
- {
- GetVehiclePos(GetPlayerVehicleID(playerid), Pos[0], Pos[1], Pos[2]);
- GetVehicleZAngle(GetPlayerVehicleID(playerid), Pos[3]);
- }
- else
- {
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- GetPlayerFacingAngle(playerid, Pos[3]);
- }
- PutPlayerInVehicle(playerid, CreateVehicle(vehicle, Pos[0], Pos[1], Pos[2], Pos[3], color[0], color[1], 120), 0);
- new string[128];
- GetPlayerName(playerid, veh, MAX_PLAYER_NAME);
- format(string, sizeof string, "Administrator %s spawned %s", sendername, VehicleNames[vehicle - 400]);
- SendMessageToAllAdmins(string, COLOR_GRAYDARK);
- return 1;
- }
- CMD:setlevel(playerid, params[])
- {
- new iD, Level, query[300], pName[24], gMessage[250], gVictim[24];
- if (AdminLevel[playerid] >= 5)
- {
- if(sscanf(params, "ui", iD, Level))
- SendClientMessage(playerid, COLOR_RED, "Usage: /setlevel [playerid] [level]");
- else if(iD == playerid)
- SendClientMessage(playerid, COLOR_RED, "You cannot use that command on yourself");
- else if(!IsPlayerConnected(iD))
- SendClientMessage(playerid, COLOR_RED, "That player is offline.");
- else
- {
- GetPlayerName(playerid, pName, sizeof(pName));
- GetPlayerName(iD, gVictim, sizeof(gVictim));
- format(query, sizeof(query), "UPDATE `playerdata` SET `level` = '%d' WHERE `user` ='%s'", AdminLevel[playerid], gVictim);
- mysql_query(query);
- format(gMessage, sizeof(gMessage), "You have set %s an admin. Level: %d", gVictim, Level);
- SendClientMessage(playerid, COLOR_RED, gMessage);
- }
- }
- else
- {
- SendClientMessage(playerid, COLOR_RED, "You are not high enough admin to use this.");
- }
- return 1;
- }
- CMD:spec(playerid,params[])
- {
- new giveplayer[16], pID;
- new sendername[16];
- new string[128];
- if (AdminLevel[playerid] >= 1) {
- if(sscanf(params,"u",pID)) return SendClientMessage(playerid,COLOR_RED,"Usage: /spec [ID]");
- if(pID == playerid) return SendClientMessage(playerid,COLOR_RED,"[Server] You can not watch yourself.");
- if(pID == INVALID_PLAYER_ID) return SendClientMessage(playerid,COLOR_RED,"[Sever] Invalid ID.");
- if(IsPlayerInAnyVehicle(pID))
- {
- TogglePlayerSpectating(playerid,1);
- PlayerSpectateVehicle(playerid,GetPlayerVehicleID(pID));
- Spectating[playerid] = pID;
- }
- else
- {
- TogglePlayerSpectating(playerid,1);
- PlayerSpectatePlayer(playerid,pID);
- Spectating[playerid] = pID;
- }
- format(string, sizeof(string), "Administrator %s is specing %s", sendername, giveplayer);
- SendMessageToAllAdmins(string, COLOR_GRAYDARK);
- }
- return 1;
- }
- CMD:specoff(playerid,params[])
- {
- if (AdminLevel[playerid] >= 1) {
- if(Spectating[playerid] == -1) SendClientMessage(playerid,COLOR_RED,"[Server] You are not watching anyone.");
- else
- {
- SetPlayerInterior(playerid,0);
- SetPlayerVirtualWorld(playerid,0);
- TogglePlayerSpectating(playerid,0);
- SpawnPlayer(playerid);
- Spectating[playerid] = -1;
- }
- }
- return 1;
- }
- //============================================================================//
- // Stocks / Publics //
- //============================================================================//
- stock RemoveUnderScore(playerid)
- {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- for(new i = 0; i < MAX_PLAYER_NAME; i++)
- {
- if(name[i] == '_') name[i] = ' ';
- }
- return name;
- }
- stock GetPlayerNameEx(playerid) //This is stock i made to make Getting players name easier
- {
- new Name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
- return Name;
- }
- stock chrfind(needle, haystack[], start = 0)
- {
- while (haystack[start])
- if (haystack[start++] == needle)
- return start - 1;
- return -1;
- }
- stock PlayerName(playerid)
- {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,MAX_PLAYER_NAME);
- return name;
- }
- stock ErrorMessage(playerid, message[])
- {
- new string[128];
- format(string, sizeof string, ""Red"[Error] "White"%s", message);
- SendClientMessage(playerid, -1, string);
- return 1;
- }
- stock escpname(playerid)
- {
- new escname[24];
- GetPlayerName(playerid, Pname, 24);
- mysql_real_escape_string(Pname, escname);
- return escname;
- }
- stock escstring(stri[])
- {
- new escstr[200];
- mysql_real_escape_string(stri, escstr);
- return escstr;
- }
- stock MySQL_Register(playerid, passwordstring[])
- {
- new query[350], pname[24], IP[15];
- new Bannedby[20];
- format(Bannedby, 20, "Not Banned");
- GetPlayerName(playerid, pname, 24);
- GetPlayerIp(playerid, IP, 15);
- format(query, sizeof(query), "INSERT INTO playerdata (user, password, score, kills, deaths, money, level, IP) VALUES('%s', SHA1('%s'), 0, 0, 0, 0, 0, '%s')", pname, passwordstring, IP);
- mysql_query(query);
- SendClientMessage(playerid, COLOR_RED,"Info: You have been registered on this server!");
- Logged[playerid] = 1;
- return 1;
- }
- stock MySQL_Login(playerid)
- {
- new query[300], pname[24], savingstring[20];
- GetPlayerName(playerid, pname, 24);
- format(query, sizeof(query), "SELECT score, kills, deaths, money, level FROM playerdata WHERE user = '%s'", pname);
- mysql_query(query);
- mysql_store_result();
- while(mysql_fetch_row_format(query,"|"))
- {
- mysql_fetch_field_row(savingstring, "score"); SetPlayerScore(playerid, strval(savingstring));
- mysql_fetch_field_row(savingstring, "kills"); PlayerInfo[playerid][Kills] = strval(savingstring);
- mysql_fetch_field_row(savingstring, "deaths"); PlayerInfo[playerid][Deaths] = strval(savingstring);
- mysql_fetch_field_row(savingstring, "money"); MoneyGiven[playerid] = strval(savingstring);
- mysql_fetch_field_row(savingstring, "level"); AdminLevel[playerid] = strval(savingstring);
- }
- mysql_free_result();
- JustLogged[playerid] = 1;
- Logged[playerid] = 1;
- SendClientMessage(playerid, COLOR_RED,"Info: You have been logged-in!");
- return 1;
- }
- stock SendPlayerToAnother(sendingplayer, receivingplayer)
- {
- GetPlayerPos(receivingplayer, posxx[0], posxx[1], posxx[2]);
- SetPlayerPos(sendingplayer, posxx[0], posxx[1]+2, posxx[2]);
- SetPlayerVirtualWorld(sendingplayer, GetPlayerVirtualWorld(receivingplayer));
- SetPlayerInterior(sendingplayer, GetPlayerInterior(receivingplayer));
- return 1;
- }
- stock SendMessageToAllAdmins(message[], color)
- {
- foreach(Player, i)
- {
- if (AdminLevel[i] >= 1)
- {
- SendClientMessage(i, color, message);
- }
- }
- return 1;
- }
- stock GetName(playerid)
- {
- new pname[24];
- GetPlayerName(playerid, pname, 24);
- return pname;
- }
- stock PlayerAdmin(pid)
- {
- if( GetPVarInt(pid, "AdminLevel" ) >= 1) return 1;
- return 0;
- }
- public SendClientMessageToAdmins(color,string[],level)
- {
- foreach(Player, i)
- {
- if (AdminLevel[i] >= 1)
- {
- SendClientMessage(i, color, string);
- printf("%s", string);
- }
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment