Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- j_admin system by Jarnu!
- Features:
- -Over 50 commands
- -MySQL based saving system
- -Great register system
- -Advanced admin commands
- -Player commands available too!
- -Anti-High ping
- -Anti-AFK system
- Don't be selfish and don't remove credits!
- */
- #include <a_samp>
- #include <zcmd> //Credits to Zeex
- #include <a_mysql> //Credits to BlueG
- #include <sscanf2> //Credits to Y_Less
- #include <SII> //Credits to the author
- //===============MySQL DB Connection information================================
- #define MYSQL_HOST "127.0.0.1"
- #define MYSQL_USER "root"
- #define MYSQL_PASS ""
- #define MYSQL_DB "sa-mp"
- //==============================================================================
- //------- Config Editable----------
- #define MAX_WARNS 5 // Maximum warnings
- #define MAX_AFK_TIME 120000 //Maximum away time limit (in mili-seconds) 1 second = 1000 mili-seconds
- #define MSG_TIME_LIMIT 1000 //Counted in miliseconds-------
- //----------Dialog ID-----------------
- #define L_DIALOG 554 //Login dialog id
- #define R_DIALOG 555 //Register dialog id
- //----------------------------------
- //----Credits------
- /*
- All of the credits goes to JARNU for making script
- Y_Less for sscanf
- BlueG for MySQL (FTW!)
- */
- #define WEBSITE "Your website here" // Edit it to change your website
- //----------------
- #pragma tabsize 0 //Removes Loose indentation warning!
- //=========================Register system stocks, enums ,variables=============
- //----Enumerators------
- enum sInfo
- {
- DCHAT,
- Ping,
- Spam,
- AFK,
- AllowedPing,
- MaxLevel
- };
- enum pData
- {
- pAdmin,
- pHelper,
- pJailed,
- pJailTime,
- pMuted,
- pMuteTime,
- pBanned,
- pWarns,
- pKills,
- pScores,
- pSpamTime,
- pPingTime,
- pPingCount,
- pMoney,
- pLogged,
- Paused,
- AdminDuty,
- pDeaths
- };
- //-------Variable------
- new PlayerInfo[MAX_PLAYERS][pData];
- new SInfo[sInfo];
- new HasSpawnedCar[MAX_PLAYERS];
- new JailTimer[MAX_PLAYERS];
- new DND[MAX_PLAYERS];
- new Spectating[MAX_PLAYERS];
- new SpecTime[MAX_PLAYERS];
- new Float:pHealth;
- new PauseKickTimer[MAX_PLAYERS];
- new unmute[MAX_PLAYERS];
- new PingTimer[MAX_PLAYERS];
- //==============================================================================
- //----Colors--------
- #define cred "{E10000}"
- #define corange "{FF7E19}"
- #define cyellow "{FF9E00}"
- #define cblue "{0087FF}"
- #define cwhite "{FFFFFF}"
- #define cgreen "{00FF28}"
- #define cgrey "{969696}"
- //------------------------------------------------------------------------------
- #define GREEN 0x15FF00AA
- #define RED 0xFF0000FF
- #define BLUE 0x375FFFFF
- #define WHITE 0xFFFFFFFF
- #define YELLOW 0xF2FF00AA
- #define GREY 0xAAAAAAAA
- #define LIGHTBLUE 0x515BC7AA
- //------------------------------------------------------------------------------
- //-------Change me!!--------------------
- #define SERVERNAME "My Server" //Change this to change the server name for login dialog!
- //--------Extra stocks----------------------------------------------------------
- //------------ [ Valid Weapon ] ---------
- stock IsValidWeapon(weaponid)
- {
- if (weaponid > 0 && weaponid < 19 || weaponid > 21 && weaponid < 47 || weaponid != 38 || weaponid != 44 || weaponid != 45 || weaponid != 36) return 1;
- return 0;
- }
- //------------- [ Start Spectate ] ------------------
- stock Spectate(playerid, player1)
- {
- new world = GetPlayerVirtualWorld(player1), interior = GetPlayerInterior(player1),invehicle = IsPlayerInAnyVehicle(player1), Float:x, Float:y, Float:z;
- GetPlayerPos(player1, x, y, z);
- TogglePlayerSpectating(playerid, true);
- SetPlayerPos(playerid, x, y, z);
- SetPlayerVirtualWorld(playerid, world);
- SetPlayerInterior(playerid, interior);
- if(invehicle == 1)
- {
- PlayerSpectateVehicle(playerid, GetPlayerVehicleID(player1));
- Spectating[playerid] = 1;
- }
- else
- {
- PlayerSpectatePlayer(playerid, player1);
- Spectating[playerid] = 1;
- }
- new str[150], name[MAX_PLAYER_NAME], Float:health, Float:armour;
- GetPlayerHealth(playerid, health);
- GetPlayerArmour(playerid, armour);
- GetPlayerName(player1, name, MAX_PLAYER_NAME);
- format(str, sizeof(str),"~n~~n~~n~~n~~n~~n~~n~~n~~g~ID:%d ~y~Name:%s~n~~b~Health: %0.1f ~g~Armour:%0.1f~n~~r~Money:$%d", player1, name, health, armour, GetPlayerMoney(playerid));
- GameTextForPlayer(playerid, str, 250000, 3);
- return 1;
- }
- stock StopSpectate(playerid)
- {
- Spectating[playerid] = 0;
- TogglePlayerSpectating(playerid, false);
- SpawnPlayer(playerid);
- return 1;
- }
- //==============================================================================
- stock MySQL_BanCheck(playerid)
- {
- new query[200], admin[50], pname[50], IP[16], string1[100];
- GetPlayerIp(playerid, IP, 16);
- format(query, sizeof(query),"SELECT * FROM `bandata` WHERE(`player`='%s' OR `IP`='%s') AND `banned`=1 LIMIT 1", escpname(playerid), IP);
- mysql_query(query);
- mysql_store_result();
- if(mysql_num_rows() != 0)
- {
- while(mysql_fetch_row(query))
- {
- mysql_fetch_field_row(admin, "admin");
- mysql_fetch_field_row(pname, "player");
- mysql_fetch_field_row(string1, "reason");
- }
- new string[50], str[50], str1[100];
- format(string, sizeof(string),"Admin: {FFFFFF}%s", admin);
- format(str, sizeof(str),"Player: {FFFFFF}%s", pname);
- format(str1, sizeof(str1),"Reason: {FFFFFF}%s", string1);
- SendClientMessage(playerid, RED,"You are banned from this server!");
- SendClientMessage(playerid, RED,"___________________");
- SendClientMessage(playerid, RED, str);
- SendClientMessage(playerid, RED, string);
- SendClientMessage(playerid, RED, str1);
- SendClientMessage(playerid, RED,"___________________");
- SendClientMessage(playerid, RED, "If you think you this is a mistake please visit our website");
- SendClientMessage(playerid, RED, WEBSITE); //Change ME!
- Kick(playerid);
- }
- mysql_free_result();
- return 1;
- }
- //===================Saving and login stocks====================================
- stock MySQL_Login(playerid)
- {
- new query[300], pname[24], savingstring[20];
- GetPlayerName(playerid, pname, 24);
- format(query, sizeof(query), "SELECT * FROM playerdata WHERE user = '%s'", pname);
- mysql_query(query);
- mysql_store_result();
- while(mysql_fetch_row_format(query,"|"))
- {
- mysql_fetch_field_row(savingstring, "scores"); SetPlayerScore(playerid, strval(savingstring));
- mysql_fetch_field_row(savingstring, "money"); GivePlayerMoney(playerid, strval(savingstring));
- mysql_fetch_field_row(savingstring, "adminlevel"); PlayerInfo[playerid][pAdmin] = strval(savingstring);
- mysql_fetch_field_row(savingstring, "helperlevel"); PlayerInfo[playerid][pHelper] = strval(savingstring);
- mysql_fetch_field_row(savingstring, "kills"); PlayerInfo[playerid][pKills] = strval(savingstring);
- mysql_fetch_field_row(savingstring, "deaths"); PlayerInfo[playerid][pDeaths] = strval(savingstring);
- }
- mysql_free_result();
- new string[400];
- PlayerInfo[playerid][pLogged] = 1;
- format(string, sizeof(string),""cwhite"Scores: "corange"%d\n\n"cwhite"Money: "cyellow"$%d\n\n"cwhite"Kills: "cred"%d\n\n"cwhite"Deaths: "cred"%d\n\n"cwhite"Level: "cblue"%d\n\n"cwhite"Helper: "corange"%d\n\n"cwhite"Welcome to "cred"%s", GetPlayerScore(playerid), GetPlayerMoney(playerid), PlayerInfo[playerid][pKills], PlayerInfo[playerid][pDeaths], PlayerInfo[playerid][pAdmin], PlayerInfo[playerid][pHelper], SERVERNAME);
- ShowPlayerDialog(playerid, 1111, DIALOG_STYLE_MSGBOX,""cgreen"Logged in", string,"Close","");
- return 1;
- }
- stock MySQL_Save(playerid)
- {
- if(PlayerInfo[playerid][pLogged] == 1)
- {
- new query[200], scores = GetPlayerScore(playerid), money = GetPlayerMoney(playerid), level = PlayerInfo[playerid][pAdmin], helper = PlayerInfo[playerid][pHelper], kills = PlayerInfo[playerid][pKills], deaths = PlayerInfo[playerid][pDeaths];
- format(query, sizeof(query),"UPDATE `playerdata` SET scores=%d, kills=%d ,deaths=%d ,money=%d ,adminlevel=%d ,helperlevel=%d WHERE user='%s'",scores, kills, deaths, money, level, helper, PlayerName(playerid));
- mysql_query(query);
- }
- return 1;
- }
- //==============================================================================
- //-----------admin stocks-------------------------
- stock MessageToAdmins(color, const string[])
- {
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- if(PlayerInfo[i][pAdmin] >= 1)
- {
- SendClientMessage(i, color, string);
- }
- }
- }
- return 1;
- }
- stock MessageToHelpers(color, const string[])
- {
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- if(PlayerInfo[i][pAdmin] >= 1 || PlayerInfo[i][pHelper] == 1)
- {
- SendClientMessage(i, color, string);
- }
- }
- }
- return 1;
- }
- stock TargetCMDMessage(playerid, target, command[])
- {
- new name[MAX_PLAYER_NAME], name1[MAX_PLAYER_NAME];
- GetPlayerName(target, name, sizeof(name));
- GetPlayerName(playerid, name1, sizeof(name1));
- new string[128];
- format(string, sizeof(string),"[ADM.CMD] Administrator %s[%i] has used %s on %s[%i]", name1, playerid, command, name, target);
- return MessageToAdmins(BLUE, string);
- }
- stock CMDMessage(playerid, command[])
- {
- new name1[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name1, sizeof(name1));
- new string[128];
- format(string, sizeof(string),"[ADM.CMD] Administrator %s[%i] has used %s", name1, playerid, command);
- return MessageToHelpers(BLUE, string);
- }
- stock escpname(playerid)
- {
- new escname[24], Pname[24];
- GetPlayerName(playerid, Pname, 24);
- mysql_real_escape_string(Pname, escname);
- return escname;
- }
- stock PlayerName(playerid)
- {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, MAX_PLAYER_NAME);
- return name;
- }
- stock CreateConfig()
- {
- new file[100];
- format(file, sizeof(file),"JADMIN/config.cfg");
- if(!fexist(file))
- {
- INI_Open(file);
- INI_WriteInt("AntiHighPing", 0);
- INI_WriteInt("AntiAFK", 0);
- INI_WriteInt("ChatDisabled", 0);
- INI_WriteInt("AntiSpam", 0);
- INI_WriteInt("MaxLevel", 7);
- INI_Save();
- INI_Close();
- }
- else
- {
- INI_Open(file);
- SInfo[DCHAT] = INI_ReadInt("ChatDisabled");
- SInfo[Ping] = INI_ReadInt("AntiHighPing");
- SInfo[AFK] = INI_ReadInt("AntiAFK");
- SInfo[MaxLevel] = INI_ReadInt("MaxLevel");
- SInfo[Spam] = INI_ReadInt("AntiSpam");
- INI_Close();
- print(" ");
- print(" -------------[ J_Admin configuration ] ---------");
- printf(" ChatDisabled: %d | AntiHighPing: %d | AntiAFK: %d ", SInfo[DCHAT], SInfo[Ping], SInfo[AFK]);
- printf(" MaxAdminLevel: %d | AntiSpam: %d", SInfo[MaxLevel], SInfo[Spam]);
- print(" ");
- }
- return 1;
- }
- stock UpdateConfig()
- {
- new file[100];
- format(file, sizeof(file),"JADMIN/config.cfg");
- INI_Open(file);
- INI_WriteInt("AntiHighPing", SInfo[Ping]);
- INI_WriteInt("AntiAFK", SInfo[AFK]);
- INI_WriteInt("ChatDisabled", SInfo[DCHAT]);
- INI_WriteInt("MaxLevel", SInfo[MaxLevel]);
- INI_WriteInt("AntiSpam", SInfo[Spam]);
- INI_Save();
- INI_Close();
- return 1;
- }
- //------------------------------------------------------------------------------
- public OnFilterScriptInit()
- {
- mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_DB, MYSQL_PASS);
- mysql_query("CREATE TABLE IF NOT EXISTS playerdata(user VARCHAR(24), password VARCHAR(40), IP VARCHAR(16), money INT(20), scores INT(30), adminlevel INT(10), helperlevel INT(10), kills INT(20), deaths INT(20))");
- mysql_query("CREATE TABLE IF NOT EXISTS bandata(admin VARCHAR(20), player VARCHAR(20), reason VARCHAR(50), IP VARCHAR(16), banned INT(10))");
- mysql_debug();
- CreateConfig();
- return 1;
- }
- public OnFilterScriptExit()
- {
- print("\n--------------------------------------");
- print("J_ADMIN unloaded by JARNU version BETA");
- print("--------------------------------------\n");
- UpdateConfig();
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- //--------------------------------
- PlayerInfo[playerid][pAdmin] = 0;
- PlayerInfo[playerid][pHelper] = 0;
- PlayerInfo[playerid][pJailed] = 0;
- PlayerInfo[playerid][pKills] = 0;
- PlayerInfo[playerid][pDeaths] = 0;
- PlayerInfo[playerid][pScores] = 0;
- PlayerInfo[playerid][pMoney] = 0;
- PlayerInfo[playerid][AdminDuty] = 0;
- PlayerInfo[playerid][pWarns] = 0;
- PlayerInfo[playerid][pSpamTime] = 0;
- PlayerInfo[playerid][pPingTime] = 0;
- PlayerInfo[playerid][pPingCount] = 0;
- PlayerInfo[playerid][Paused] = 0;
- HasSpawnedCar[playerid] = 0;
- DND[playerid] = 0;
- Spectating[playerid] = 0;
- //--------------------------------
- MySQL_BanCheck(playerid);
- //--------------------------------
- PingTimer[playerid] = SetTimerEx("PingChecker", 1000, true,"d", playerid);
- //--------Account registration----
- new query[200];
- format(query, sizeof(query),"SELECT IP FROM `playerdata` WHERE user = '%s' LIMIT 1", escpname(playerid));
- mysql_query(query);
- mysql_store_result();
- new rows = mysql_num_rows();
- if(!rows)
- {
- ShowPlayerDialog(playerid, R_DIALOG, DIALOG_STYLE_PASSWORD,""cgreen"Register",""corange"Your account is "cred"not "corange"registered\n"cgreen"Please type your password to register","Register","Quit");
- }
- if(rows == 1)
- {
- ShowPlayerDialog(playerid, L_DIALOG, DIALOG_STYLE_PASSWORD,""cgreen"Login",""corange"Your account is already registered\n"cgreen"Please type your password to login","Login","Quit");
- }
- mysql_free_result();
- //---------------------------------
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- if(PlayerInfo[playerid][pLogged] == 1 && SInfo[AFK] == 1)
- {
- /*
- Do not edit the following timer's time till you know what you are doing!
- */
- SetTimer("IsPaused", MAX_AFK_TIME, true); //If the player paused for more than a minute!
- }
- if(PlayerInfo[playerid][AdminDuty] == 1)
- {
- SetPlayerHealth(playerid, 99999.0);
- GivePlayerWeapon(playerid, 38, 20000);
- SetPlayerSkin(playerid, 217);
- SetPlayerColor(playerid, 0xFD01FDAA);
- }
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- MySQL_Save(playerid); //-----------------To Save--------------------------//
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- PlayerInfo[playerid][pDeaths] ++;
- PlayerInfo[killerid][pKills] ++;
- MySQL_Save(playerid); //-----------------To Save--------------------------//
- SendClientMessage(playerid, 0xAAAAAAAA,"--------------");
- SendClientMessage(playerid, GREEN,"Stats saved");
- SendClientMessage(playerid, 0xAAAAAAAA,"---------------");
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- //-------REGISTER SYSTEM------------------
- if(dialogid == R_DIALOG)
- {
- if(!response) return Kick(playerid);
- if(!strlen(inputtext) || strlen(inputtext) > 100)
- {
- SendClientMessage(playerid, RED,"[JADMIN]: Password lenght must be greater than 1 and lesser than 100 words!");
- ShowPlayerDialog(playerid, R_DIALOG, DIALOG_STYLE_PASSWORD,""cgreen"Register",""corange"Your account is "cred"not "corange"registered\n"cgreen"Please type your password to register","Register","");
- }
- else if(strlen(inputtext) > 0 && strlen(inputtext) < 100)
- {
- new escapepass[100];
- mysql_real_escape_string(inputtext, escapepass);
- new query[200], IP[16];
- GetPlayerIp(playerid, IP, 16);
- format(query, sizeof(query),"INSERT INTO playerdata(user, password, IP, money, scores, adminlevel, helperlevel, kills, deaths) VALUES('%s', SHA1('%s'), '%s', 0, 0, 0, 0, 0, 0)", escpname(playerid), escapepass, IP);
- mysql_query(query);
- PlayerInfo[playerid][pLogged] = 1;
- SendClientMessage(playerid, GREEN,"[ACCOUNT]: You have been successfully registered!");
- SendClientMessage(playerid, -1,"Generating your password...");
- new string[100];
- format(string, sizeof(string),"Your password is: "cgreen"%s", inputtext);
- SendClientMessage(playerid, RED, string);
- }
- }
- if(dialogid == L_DIALOG)
- {
- if(!response) return Kick(playerid);
- 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)
- {
- SendClientMessage(playerid, RED,"[JADMIN]: Incorrect password!");
- ShowPlayerDialog(playerid, L_DIALOG, DIALOG_STYLE_PASSWORD,""cgreen"Login",""corange"Your account is already registered\n"cgreen"Please type your password to login","Login","");
- }
- mysql_free_result();
- }
- }
- return 1;
- }
- //------------------------------------------------------------------------------
- CMD:jcredits(playerid, params[])
- {
- SendClientMessage(playerid, -1, " | --------------- jAdmin [ BETA ] ------------ | ");
- SendClientMessage(playerid, GREEN,"[JADMIN]: All credits to Jarnu for creating this admin system!");
- SendClientMessage(playerid, GREEN,"[JADMIN]: Y_Less - sscanf and BlueG - MySQL");
- return 1;
- }
- CMD:ahelp(playerid, params[])
- {
- new string[300];
- strcat(string,""cwhite" | ----------- J_Admin by Jarnu --------- | ");
- strcat(string," Use /acmds to see all the commands!");
- strcat(string," If you use this admin system you must not remove the credits!");
- SendClientMessage(playerid, GREEN, string);
- return 1;
- }
- CMD:acmds(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] == 0)
- {
- SendClientMessage(playerid, RED,"[JADMIN]: You have nothing to do with this command! :)");
- }
- else if(PlayerInfo[playerid][pAdmin] == 1)
- {
- SendClientMessage(playerid, LIGHTBLUE,"========= Level 1 Commands!========");
- SendClientMessage(playerid, BLUE,"Access to helper commands!");
- SendClientMessage(playerid, BLUE,"/kick /warn /mute /unmute /adminduty /acar /jail");
- SendClientMessage(playerid, BLUE,"/unjail /muted /jailed /jspec /jspecoff /goto /get");
- }
- else if(PlayerInfo[playerid][pAdmin] == 2)
- {
- SendClientMessage(playerid, LIGHTBLUE,"========= Level 2 Commands!========");
- SendClientMessage(playerid, BLUE,"Access to level 1 and helper commands!");
- SendClientMessage(playerid, BLUE,"/ban /unban /spawn /slap /clearchat");
- SendClientMessage(playerid, BLUE,"/sban /explode /abike /admincmds");
- }
- else if(PlayerInfo[playerid][pAdmin] == 3)
- {
- SendClientMessage(playerid, LIGHTBLUE,"========= Level 3 Commands!========");
- SendClientMessage(playerid, BLUE,"Access to level 1, level 2 and helper commands!");
- SendClientMessage(playerid, BLUE,"/armourall /healall /giveweapon /sethealth /carhealth");
- SendClientMessage(playerid, BLUE,"/givecash /givescore /vheli");
- }
- else if(PlayerInfo[playerid][pAdmin] == 4)
- {
- SendClientMessage(playerid, LIGHTBLUE,"========= Level 4 Commands!========");
- SendClientMessage(playerid, BLUE,"Access to level 1, level 2, level 3 and helper commands!");
- SendClientMessage(playerid, BLUE,"/giveallweapon /giveallscore /giveallcash /setcash /setdeaths");
- SendClientMessage(playerid, BLUE,"/setkills /setscore");
- }
- else if(PlayerInfo[playerid][pAdmin] >= 5)
- {
- SendClientMessage(playerid, LIGHTBLUE,"========= Level 5 Commands!========");
- SendClientMessage(playerid, BLUE,"Access to level 1, level 2, level 3, level 4 and helper commands!");
- SendClientMessage(playerid, BLUE,"/setadmin /sethelper /unsethelper /disablechat /disablespam");
- SendClientMessage(playerid, BLUE,"/disableafk /setping /enableping");
- }
- return 1;
- }
- CMD:admincmds(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 2)
- {
- SendClientMessage(playerid, LIGHTBLUE,"========= Level 1 Commands!========");
- SendClientMessage(playerid, BLUE,"Access to helper commands!");
- SendClientMessage(playerid, BLUE,"/kick /warn /mute /unmute /adminduty /acar /jail");
- SendClientMessage(playerid, BLUE,"/unjail /muted /jailed /jspec /jspecoff /goto /get");
- SendClientMessage(playerid, LIGHTBLUE,"========= Level 2 Commands!========");
- SendClientMessage(playerid, BLUE,"Access to level 1 and helper commands!");
- SendClientMessage(playerid, BLUE,"/ban /unban /spawn /slap /clearchat");
- SendClientMessage(playerid, BLUE,"/sban /explode /abike");
- SendClientMessage(playerid, LIGHTBLUE,"========= Level 3 Commands!========");
- SendClientMessage(playerid, BLUE,"Access to level 1, level 2 and helper commands!");
- SendClientMessage(playerid, BLUE,"/armourall /healall /giveweapon /sethealth /carhealth");
- SendClientMessage(playerid, BLUE,"/givecash /givescore /vheli");
- SendClientMessage(playerid, LIGHTBLUE,"========= Level 4 Commands!========");
- SendClientMessage(playerid, BLUE,"Access to level 1, level 2, level 3 and helper commands!");
- SendClientMessage(playerid, BLUE,"/giveallweapon /giveallscore /giveallcash /setcash /setdeaths");
- SendClientMessage(playerid, BLUE,"/setkills /setscore");
- SendClientMessage(playerid, LIGHTBLUE,"========= Level 5 Commands!========");
- SendClientMessage(playerid, BLUE,"Access to level 1, level 2, level 3, level 5 and helper commands!");
- SendClientMessage(playerid, BLUE,"/setadmin /sethelper /unsethelper /disablechat /disablespam");
- SendClientMessage(playerid, BLUE,"/disableafk /setping /enableping");
- }
- return 1;
- }
- //------------------------------------------------------------------------------
- //========== [ NORMAL PLAYER COMMANDS ] ========================================
- //------------------------------------------------------------------------------
- CMD:admins(playerid, params[])
- {
- new count = 0, string[256];
- SendClientMessage(playerid, BLUE,"Current online admins:");
- for(new i = 0; i < MAX_PLAYERS; i ++)
- {
- if(IsPlayerConnected(i))
- {
- if(PlayerInfo[i][pAdmin] >= 1)
- {
- format(string, sizeof(string),"Admin ID:[%d] %s Level: %d", i, PlayerName(i), PlayerInfo[i][pAdmin]);
- SendClientMessage(playerid, BLUE, string);
- count++;
- }
- }
- }
- if(count == 0)
- {
- SendClientMessage(playerid, BLUE,"No admins are online right now!");
- }
- return 1;
- }
- CMD:helpers(playerid, params[])
- {
- new count = 0, string[256];
- SendClientMessage(playerid, BLUE,"Current online helpers:");
- for(new i = 0; i < MAX_PLAYERS; i ++)
- {
- if(IsPlayerConnected(i))
- {
- if(PlayerInfo[i][pHelper] == 1)
- {
- format(string, sizeof(string),"Helper ID:[%d] %s", i, PlayerName(i));
- SendClientMessage(playerid, BLUE, string);
- count++;
- }
- }
- }
- if(count == 0)
- {
- SendClientMessage(playerid, BLUE,"No helpers are online right now!");
- }
- return 1;
- }
- CMD:changepass(playerid, params[])
- {
- new pass[30];
- if(sscanf(params,"s[30]", pass)) return SendClientMessage(playerid, RED,"[USAGE]: /changepass [new password]");
- new query[200];
- format(query, sizeof(query),"UPDATE `playerdata` SET password=SHA1('%s') WHERE `user`='%s'", pass, escpname(playerid));
- mysql_query(query);
- mysql_free_result();
- new str[120];
- format(str, sizeof(str),"Your password has been successfully changed to "cred"%s", pass);
- SendClientMessage(playerid, GREEN,str);
- return 1;
- }
- CMD:changename(playerid, params[])
- {
- new name[50];
- if(sscanf(params,"s[50]", name)) return SendClientMessage(playerid, RED,"[USAGE]: /changename [ New name ]");
- new uquery[200];
- format(uquery, sizeof(uquery),"SELECT `user` FROM `playerdata` WHERE `user`='%s' LIMIT 1",name);
- mysql_query(uquery);
- mysql_store_result();
- new rows = mysql_num_rows();
- if(rows == 1)
- {
- SendClientMessage(playerid, RED,"[JADMIN]: This name already exists in our database! Try any other name");
- }
- else
- {
- new query[200];
- format(query, sizeof(query),"UPDATE `playerdata` SET user='%s' WHERE user='%s'", name, escpname(playerid));
- mysql_query(query);
- SetPlayerName(playerid, name);
- new str[120];
- format(str, sizeof(str),"Your name has been changed to "cred"'%s'", name);
- SendClientMessage(playerid, GREEN, str);
- }
- mysql_free_result();
- return 1;
- }
- CMD:report(playerid, params[])
- {
- new player1, str[150], reason[66];
- if(sscanf(params,"ds[66]", player1, reason)) return SendClientMessage(playerid, RED,"[USAGE]: /report [playerid] [reason]");
- if(IsPlayerConnected(player1))
- {
- format(str, sizeof(str),"@New Report| Reporter: %s | Victim: %s | Reason: %s", PlayerName(playerid), PlayerName(player1), reason);
- MessageToAdmins(GREEN, str);
- SendClientMessage(playerid, YELLOW,"Your report has been sent to online administrators!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected!");
- return 1;
- }
- //------------------------------------------------------------------------------
- //---------Admin system commands and stocks-------------------------------------
- //---------------Level 5 Admin Commands-----------------------------------------
- CMD:setadmin(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 5 || IsPlayerAdmin(playerid))
- {
- new string[125], level, player1;
- if(sscanf(params,"dd",player1, level)) return SendClientMessage(playerid, RED,"[USAGE]: /setadmin ( playerid ) ( level )");
- if(!IsPlayerConnected(playerid) && player1 != INVALID_PLAYER_ID)
- {
- SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected");
- }
- if(level > SInfo[MaxLevel])
- {
- SendClientMessage(playerid, RED,"[JADMIN]: Incorrect level");
- }
- else if(level >= PlayerInfo[playerid][pAdmin])
- {
- new aname[MAX_PLAYER_NAME];
- GetPlayerName(playerid, aname, sizeof(aname));
- format(string, sizeof(string),""cblue"Administrator "cgreen"'%s' "cblue"has "cgreen"promoted "cblue"you to "cgreen"[Level %d]", aname,level);
- SendClientMessage(player1, BLUE, string);
- GameTextForPlayer(player1,"Promoted", 1500, 3);
- TargetCMDMessage(playerid, player1,"SETADMIN");
- PlayerPlaySound(player1,1057,0.0,0.0,0.0); //Will send a sound to player 1
- PlayerInfo[player1][pAdmin] = level;
- MySQL_Save(player1);
- }
- else if(level < PlayerInfo[playerid][pAdmin] && level != 0)
- {
- new aname[MAX_PLAYER_NAME];
- GetPlayerName(playerid, aname, sizeof(aname));
- format(string, sizeof(string),""cblue"Administrator "cgreen"'%s' "cblue"has "cred"demoted "cblue"you to "cgreen"[Level %d]", aname,level);
- SendClientMessage(player1, BLUE, string);
- GameTextForPlayer(player1,"Demoted", 1500, 3);
- PlayerPlaySound(player1,1057,0.0,0.0,0.0); //Will send a sound to player1
- TargetCMDMessage(playerid, player1,"SETADMIN");
- PlayerInfo[player1][pAdmin] = level;
- MySQL_Save(player1);
- }
- else if(level == 0)
- {
- new aname[MAX_PLAYER_NAME];
- GetPlayerName(playerid, aname, sizeof(aname));
- format(string, sizeof(string),""cblue"Administrator "cgreen"'%s' "cblue"has "cred"fired "cblue"you from your admin status", aname);
- SendClientMessage(player1, BLUE, string);
- GameTextForPlayer(player1,"Fired", 1500, 3);
- PlayerPlaySound(player1,1057,0.0,0.0,0.0); //Will send a notification sound to player1
- TargetCMDMessage(playerid, player1,"SETADMIN");
- PlayerInfo[player1][pAdmin] = 0;
- MySQL_Save(player1);
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be RCON admin or level 5 admin to use this command");
- return 1;
- }
- CMD:sethelper(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 5 || IsPlayerAdmin(playerid))
- {
- new string[125], player1;
- if(sscanf(params,"d",player1)) return SendClientMessage(playerid, RED,"[USAGE]: /sethelper ( playerid )");
- if(!IsPlayerConnected(playerid) && player1 != INVALID_PLAYER_ID)
- {
- SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected");
- }
- else
- {
- new aname[MAX_PLAYER_NAME];
- GetPlayerName(playerid, aname, sizeof(aname));
- format(string, sizeof(string),""cblue"Administrator "cgreen"'%s' "cblue"has set you to helper status", aname);
- SendClientMessage(player1, BLUE, string);
- TargetCMDMessage(playerid, player1,"SETHELPER");
- PlayerPlaySound(player1,1057,0.0,0.0,0.0);
- PlayerInfo[player1][pHelper] = 1;
- GameTextForPlayer(player1,"Promoted to Helper Status", 1500, 3);
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be RCON admin or level 5 admin to use this command");
- return 1;
- }
- CMD:unsethelper(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 5 || IsPlayerAdmin(playerid))
- {
- new string[125], player1;
- if(sscanf(params,"d",player1)) return SendClientMessage(playerid, RED,"[USAGE]: /unsethelper ( playerid )");
- if(!IsPlayerConnected(playerid) && player1 != INVALID_PLAYER_ID)
- {
- SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected");
- }
- else
- {
- new aname[MAX_PLAYER_NAME];
- GetPlayerName(playerid, aname, sizeof(aname));
- format(string, sizeof(string),""cblue"Administrator "cgreen"'%s' "cblue"has "cred"fired "cblue"you from your helper status", aname);
- SendClientMessage(player1, BLUE, string);
- TargetCMDMessage(playerid, player1,"UNSETHELPER");
- PlayerPlaySound(player1,1057,0.0,0.0,0.0);
- PlayerInfo[player1][pHelper] = 0;
- GameTextForPlayer(player1,"Fired from Helper Status", 1500, 3);
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be RCON admin or level 5 admin to use this command");
- return 1;
- }
- CMD:disablechat(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 5)
- {
- if(SInfo[DCHAT] == 1)
- {
- SInfo[DCHAT] = 0;
- new str[128];
- format(str, sizeof(str),"Administrator %s has enabled the chat!", PlayerName(playerid));
- CMDMessage(playerid,"DISABLECHAT");
- SendClientMessageToAll(BLUE, str);
- UpdateConfig();
- }
- else if(SInfo[DCHAT] == 0)
- {
- SInfo[DCHAT] = 1;
- CMDMessage(playerid,"DISABLECHAT");
- new str[128];
- format(str, sizeof(str),"Administrator %s has disabled the chat!", PlayerName(playerid));
- SendClientMessageToAll(BLUE, str);
- UpdateConfig();
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- return 1;
- }
- CMD:disableafk(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 5)
- {
- if(SInfo[AFK] == 1)
- {
- SInfo[AFK] = 0;
- new str[128];
- format(str, sizeof(str),"Administrator %s has disabled the anti-afk!", PlayerName(playerid));
- CMDMessage(playerid,"DISABLEAFK");
- SendClientMessageToAll(BLUE, str);
- UpdateConfig();
- }
- else if(SInfo[AFK] == 0)
- {
- SInfo[AFK] = 1;
- CMDMessage(playerid,"DISABLEAFK");
- new str[128];
- format(str, sizeof(str),"Administrator %s has enabled the anti-afk!", PlayerName(playerid));
- SendClientMessageToAll(BLUE, str);
- UpdateConfig();
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- return 1;
- }
- CMD:disablespam(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 5)
- {
- if(SInfo[Spam] == 1)
- {
- SInfo[Spam] = 0;
- new str[128];
- format(str, sizeof(str),"Administrator %s has disabled the anti-spam!", PlayerName(playerid));
- CMDMessage(playerid,"DISABLESPAM");
- SendClientMessageToAll(BLUE, str);
- UpdateConfig();
- }
- else if(SInfo[Spam] == 0)
- {
- SInfo[Spam] = 1;
- CMDMessage(playerid,"DISABLESPAM");
- new str[128];
- format(str, sizeof(str),"Administrator %s has enabled the anti-spam!", PlayerName(playerid));
- SendClientMessageToAll(BLUE, str);
- UpdateConfig();
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- return 1;
- }
- CMD:enableping(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 5)
- {
- SInfo[Ping] = 1;
- new str[128];
- format(str, sizeof(str),"Administrator %s has enabled the anti-highping!", PlayerName(playerid));
- CMDMessage(playerid,"ENABLEPING");
- SendClientMessageToAll(BLUE, str);
- UpdateConfig();
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- return 1;
- }
- CMD:setping(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 5)
- {
- if(SInfo[Ping] == 1)
- {
- new ping;
- if(sscanf(params,"d",ping)) return SendClientMessage(playerid, RED,"[USAGE]: /setping [ping]");
- if(ping == 0)
- {
- SInfo[Ping] = 0;
- new str[100];
- format(str, sizeof(str),"Administrator %s has disable high ping kick", PlayerName(playerid));
- SendClientMessageToAll(BLUE, str);
- }
- else
- {
- SInfo[AllowedPing] = ping;
- new str[100];
- format(str, sizeof(str),"Administrator %s has set maximum ping to %d", PlayerName(playerid), ping);
- SendClientMessageToAll(BLUE, str);
- }
- }
- else return SendClientMessage(playerid, RED,"High ping kick is disabled! use /enableping first!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not level 5!");
- return 1;
- }
- //---------------Level 2 admin commands-----------------------------------------
- CMD:clearchat(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 2)
- {
- for(new i = 0; i < 15; i++)
- {
- SendClientMessageToAll(WHITE," ");
- }
- }
- else return SendClientMessage(playerid, RED,"[ERROR]: You need to be admin level 2 to use this command!");
- return 1;
- }
- CMD:vbike(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 2)
- {
- if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, RED,"[ERROR]: You already have a vehicle!");
- new Float:X, Float:Y, Float:Z;
- GetPlayerPos(playerid, X, Y, Z);
- PutPlayerInVehicle(playerid, CreateVehicle(522, X, Y, Z, 0.0,0, 1, 60), 0);
- SendClientMessage(playerid, BLUE,"Enjoy your new admin bike!");
- HasSpawnedCar[playerid] = 1;
- }
- else return SendClientMessage(playerid, RED,"[ERROR]: You need to be admin level 2 to use this command!");
- return 1;
- }
- CMD:spawn(playerid, params[])
- {
- new player1;
- if(PlayerInfo[playerid][pAdmin] >= 2)
- {
- if(IsPlayerConnected(player1))
- {
- new str[100];
- if(sscanf(params,"d",player1)) return SendClientMessage(playerid, RED,"[USAGE]: /spawn [playerid] ");
- SpawnPlayer(player1);
- format(str, sizeof(str),"Administrator %s has spawned you!", PlayerName(player1));
- SendClientMessage(player1, BLUE, str);
- TargetCMDMessage(playerid, player1, "SPAWN");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You cannot use this command!");
- return 1;
- }
- CMD:explode(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 2)
- {
- new player1, Float:x, Float:y, Float:z, str[70];
- if(sscanf(params,"d", player1)) return SendClientMessage(playerid, RED,"[USAGE]: /explode [playerid] ");
- if(IsPlayerConnected(player1))
- {
- GetPlayerPos(player1, x, y, z);
- CreateExplosion(x, y, z, 7, 10.0);
- format(str, sizeof(str),"You have exploded %s!", PlayerName(player1));
- SendClientMessage(playerid, BLUE, str);
- TargetCMDMessage(playerid, player1,"EXPLODE");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be level 2 admin to use this command!");
- return 1;
- }
- CMD:slap(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 2)
- {
- new player1, Float:x, Float:y, Float:z, str[70];
- if(sscanf(params,"d", player1)) return SendClientMessage(playerid, RED,"[USAGE]: /slap [playerid] ");
- if(IsPlayerConnected(player1))
- {
- GetPlayerPos(player1, x, y, z);
- SetPlayerPos(player1, x, y, z+6);
- format(str, sizeof(str),"You have slapped %s!", PlayerName(player1));
- SendClientMessage(playerid, BLUE, str);
- TargetCMDMessage(playerid, player1,"SLAP");
- PlayerPlaySound(player1,1190,0.0,0.0,0.0);
- PlayerPlaySound(playerid,1190,0.0,0.0,0.0);
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be level 2 admin to use this command!");
- return 1;
- }
- CMD:ban(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
- {
- new targetid, reason[100];
- if(sscanf(params,"ds[100]", targetid, reason)) return SendClientMessage(playerid, RED,"[USAGE]: /ban [playerid][reason]");
- if(!IsPlayerConnected(playerid) && targetid != INVALID_PLAYER_ID)
- {
- SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected!");
- }
- if(PlayerInfo[targetid][pAdmin] > PlayerInfo[playerid][pAdmin])
- {
- SendClientMessage(playerid, RED,"You have been kicked for trying to ban your senior!");
- Kick(playerid);
- }
- else
- {
- new bquery[200], IP[16];
- GetPlayerIp(targetid, IP, 16);
- format(bquery, sizeof(bquery),"INSERT INTO bandata(admin, player, reason, IP, banned) VALUES('%s', '%s', '%s','%s', 1)", PlayerName(playerid),PlayerName(targetid), reason, IP);
- mysql_query(bquery);
- CMDMessage(playerid,"BAN");
- new string[256];
- format(string, sizeof(string),"%s has been banned by Admin %s [Reason: %s]", PlayerName(targetid), PlayerName(playerid), reason);
- SendClientMessageToAll(RED, string);
- mysql_free_result();
- Kick(targetid);
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be RCON admin or level 2 admin to use this command!");
- return 1;
- }
- CMD:unban(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
- {
- new target[50];
- if(sscanf(params,"s[50]", target)) return SendClientMessage(playerid, RED,"[USAGE]: /unban [player name]");
- new query[200];
- format(query, sizeof(query),"SELECT * FROM `bandata` WHERE `player`='%s' AND `banned`=1 LIMIT 1", target);
- mysql_query(query);
- mysql_store_result();
- new rows = mysql_num_rows();
- if(rows == 1)
- {
- new uquery[200];
- format(uquery, sizeof(uquery),"DELETE FROM `bandata` WHERE player='%s'", target);
- mysql_query(uquery);
- mysql_store_result();
- new string[200];
- CMDMessage(playerid,"UNBAN");
- format(string, sizeof(string),"You have unbanned %s", target);
- SendClientMessage(playerid, BLUE,string);
- }
- else if(!rows)
- {
- new str[128];
- format(str, sizeof(str),"[JADMIN]: No ban found on this name %s", target);
- SendClientMessage(playerid, RED, str);
- mysql_free_result();
- }
- } else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be RCON admin or level 2 admin to use this command!");
- return 1;
- }
- CMD:sban(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
- {
- new target[50], admin[50], player[50], reason[100], IP[16];
- if(sscanf(params,"s[50]", target)) return SendClientMessage(playerid, RED,"[USAGE]: /sban [player name]");
- new query[200];
- format(query, sizeof(query),"SELECT admin,player,reason,IP FROM `bandata` WHERE `player`='%s' AND `banned`=1 LIMIT 1", target);
- mysql_query(query);
- mysql_store_result();
- new rows = mysql_num_rows();
- if(rows == 1)
- {
- while(mysql_fetch_row(query))
- {
- mysql_fetch_field_row(admin, "admin");
- mysql_fetch_field_row(player, "player");
- mysql_fetch_field_row(IP, "IP");
- mysql_fetch_field_row(reason, "reason");
- }
- new string[128];
- format(string, sizeof(string),"Admin: %s | Player: %s | Reason: %s | IP: %s " , admin, player, reason, IP);
- SendClientMessage(playerid, RED, string);
- print(string); // DEBUG!
- }
- if(!rows)
- {
- SendClientMessage(playerid, RED,"[JADMIN]: No ban found on this name!");
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- return 1;
- }
- //==============================================================================
- //-----------------------------------ADMIN COMMANDS STARTING--------------------
- //---------------------Helper Commands------------------------------------------
- CMD:jspec(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pHelper] == 1)
- {
- new specid, str[120];
- if(sscanf(params,"d", specid)) return SendClientMessage(playerid, RED,"[USAGE]: /jspec [playerid] ");
- if(PlayerInfo[specid][pAdmin] != SInfo[MaxLevel])
- {
- if(GetPlayerState(specid) != PLAYER_STATE_SPECTATING || specid != INVALID_PLAYER_ID)
- {
- Spectate(playerid, specid);
- Spectating[playerid] = 1;
- TargetCMDMessage(playerid, specid, "JSPEC");
- format(str, sizeof(str),"You are now spectating id %d", specid);
- SendClientMessage(playerid, BLUE,str);
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Invalid playerid");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You cannot use this command on this admin!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not admin or helper!");
- return 1;
- }
- CMD:jspecoff(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pHelper] == 1)
- {
- if(Spectating[playerid] == 0)
- {
- KillTimer(SpecTime[playerid]);
- SendClientMessage(playerid, BLUE,"Spectating off");
- Spectating[playerid] = 0;
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not spectating!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not helper or admin!");
- return 1;
- }
- CMD:warn(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pHelper] == 1)
- {
- new reason[100], player1, str[100], dstr[102];
- if(sscanf(params,"ds[100]", player1, reason)) return SendClientMessage(playerid, RED,"[USAGE]: /warn [playerid] [reason]");
- if(IsPlayerConnected(player1))
- {
- if(PlayerInfo[playerid][pAdmin] >= 1)
- {
- PlayerInfo[player1][pWarns] ++;
- format(str, sizeof(str),"Administrator %s has warned %s [Reason: %s] (Warnings: %d/%d)", PlayerName(playerid),PlayerName(player1),reason,PlayerInfo[playerid][pWarns], MAX_WARNS);
- SendClientMessageToAll(YELLOW, str);
- format(dstr, sizeof(dstr),""cwhite"Warnings: %d/%d\nAdmin: %s\nReason:%s\n",PlayerInfo[playerid][pWarns], MAX_WARNS, PlayerName(playerid), reason);
- ShowPlayerDialog(player1, 1100, DIALOG_STYLE_MSGBOX,""cwhite"Recieved a warning!",dstr,"Close","");
- if(PlayerInfo[player1][pWarns] >= MAX_WARNS)
- {
- format(str, sizeof(str),"Administrator %s has kicked %s [Reason: %s] (Warnings: %d/%d)", PlayerName(playerid),PlayerName(player1),reason,PlayerInfo[playerid][pWarns], MAX_WARNS);
- SendClientMessageToAll(RED, str);
- format(dstr, sizeof(dstr),""cwhite"Warnings: %d/%d\nAdmin: %s\nReason:%s\n",PlayerInfo[playerid][pWarns], MAX_WARNS, PlayerName(playerid), reason);
- ShowPlayerDialog(player1, 1100, DIALOG_STYLE_MSGBOX,""cwhite"Recieved a warning!",dstr,"Close","");
- Kick(player1);
- }
- }
- else if(PlayerInfo[playerid][pHelper] == 1)
- {
- PlayerInfo[player1][pWarns] ++;
- format(str, sizeof(str),"Helper %s has warned %s [Reason: %s] (Warnings: %d/%d)", PlayerName(playerid),PlayerName(player1),reason,PlayerInfo[playerid][pWarns], MAX_WARNS);
- SendClientMessageToAll(YELLOW, str);
- format(dstr, sizeof(dstr),""cwhite"Warnings: %d/%d\nHelper: %s\nReason:%s\n",PlayerInfo[playerid][pWarns], MAX_WARNS, PlayerName(playerid), reason);
- ShowPlayerDialog(player1, 1100, DIALOG_STYLE_MSGBOX,""cwhite"Recieved a warning!",dstr,"Close","");
- if(PlayerInfo[player1][pWarns] >= MAX_WARNS)
- {
- format(str, sizeof(str),"Helper %s has kicked %s [Reason: %s] (Warnings: %d/%d)", PlayerName(playerid),PlayerName(player1),reason,PlayerInfo[playerid][pWarns], MAX_WARNS);
- SendClientMessageToAll(RED, str);
- format(dstr, sizeof(dstr),""cwhite"Warnings: %d/%d\nHelper: %s\nReason:%s\n",PlayerInfo[playerid][pWarns], MAX_WARNS, PlayerName(playerid), reason);
- ShowPlayerDialog(player1, 1100, DIALOG_STYLE_MSGBOX,""cwhite"Recieved a warning!",dstr,"Close","");
- Kick(player1);
- }
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- return 1;
- }
- CMD:kick(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pHelper] == 1)
- {
- new player1, reason[100], str[100];
- if(sscanf(params,"ds[100]", player1, reason)) return SendClientMessage(playerid, RED,"[USAGE]: /kick [playerid] [reason]");
- if(IsPlayerConnected(player1))
- {
- if(PlayerInfo[playerid][pAdmin] >= 1)
- {
- format(str, sizeof(str),"%s has been kicked by Admin %s [Reason: %s]", PlayerName(player1), PlayerName(playerid), reason);
- SendClientMessageToAll(RED, str);
- TargetCMDMessage(playerid, player1,"KICK");
- Kick(player1);
- }
- else if(PlayerInfo[playerid][pHelper] == 1)
- {
- format(str, sizeof(str),"%s has been kicked by Helper %s [Reason: %s]", PlayerName(player1), PlayerName(playerid), reason);
- SendClientMessageToAll(RED, str);
- CMDMessage(playerid,"KICK");
- Kick(player1);
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- return 1;
- }
- CMD:hh(playerid, params[])
- {
- if(PlayerInfo[playerid][pHelper] == 1 || PlayerInfo[playerid][pAdmin] >= 1)
- {
- SendClientMessage(playerid, -1, "--------| JADMIN [Helper Commands] | -------");
- SendClientMessage(playerid, BLUE,"/kick /warn /jspec /jspecoff");
- SendClientMessage(playerid, -1, "----------- | | ----------------- | | -------");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- return 1;
- }
- //-------------------Level 3 commands-------------------------------------------
- CMD:vheli(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 3)
- {
- if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, RED,"[ERROR]: You already have a vehicle!");
- new Float:X, Float:Y, Float:Z;
- GetPlayerPos(playerid, X, Y, Z);
- PutPlayerInVehicle(playerid, CreateVehicle(487, X, Y, Z, 0.0,0, 1, 60), 0);
- SendClientMessage(playerid, BLUE,"Enjoy your new helicopter!");
- HasSpawnedCar[playerid] = 1;
- }
- else return SendClientMessage(playerid, RED,"[ERROR]: You need to be admin level 3 to use this command!");
- return 1;
- }
- CMD:sethealth(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 3)
- {
- new player1, str[120], amount;
- if(sscanf(params,"dd", player1, amount)) return SendClientMessage(playerid, RED,"[USAGE]: /sethealth [playerid] [health]");
- if(IsPlayerConnected(player1))
- {
- SetPlayerHealth(player1, amount);
- format(str, sizeof(str),"You have setted %s's health to %d", PlayerName(player1), amount);
- SendClientMessage(playerid, BLUE, str);
- TargetCMDMessage(playerid, player1,"SETHEALTH");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- return 1;
- }
- CMD:carhealth(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 3)
- {
- new player1, str[120], amount;
- if(sscanf(params,"dd", player1, amount)) return SendClientMessage(playerid, RED,"[USAGE]: /carhealth [playerid] [health]");
- if(IsPlayerConnected(player1) && IsPlayerInAnyVehicle(playerid))
- {
- SetVehicleHealth(GetPlayerVehicleID(player1), amount);
- format(str, sizeof(str),"You have setted %s's vehicle's health to %d", PlayerName(player1), amount);
- SendClientMessage(playerid, BLUE, str);
- TargetCMDMessage(playerid, player1,"CARHEALTH");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected or is not in any vehicle!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- return 1;
- }
- CMD:healall(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 3)
- {
- for(new i =0; i < MAX_PLAYERS; i ++ )
- {
- if(IsPlayerConnected(i))
- {
- SetPlayerHealth(i, 100.0);
- new str[100];
- format(str, sizeof(str),"Administrator %s has healed all players!", PlayerName(playerid));
- SendClientMessage(i, BLUE, str);
- CMDMessage(playerid,"HEALALL");
- }
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be admin level 3 to use this command!");
- return 1;
- }
- CMD:armourall(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 3)
- {
- for(new i =0; i < MAX_PLAYERS; i ++ )
- {
- if(IsPlayerConnected(i))
- {
- SetPlayerArmour(i, 100.0);
- new str[100];
- format(str, sizeof(str),"Administrator %s has armoured all players!", PlayerName(playerid));
- SendClientMessage(i, BLUE, str);
- CMDMessage(playerid,"ARMOURALL");
- }
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be admin level 3 to use this command!");
- return 1;
- }
- CMD:giveweapon(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 3)
- {
- new target, weapid, ammo;
- if(sscanf(params,"ddd", target, weapid, ammo)) return SendClientMessage(playerid, RED,"[USAGE]: /giveweapon [playerid] [weapon] [ammo]");
- if(IsValidWeapon(weapid))
- {
- if(IsPlayerConnected(target))
- {
- GivePlayerWeapon(target, weapid, ammo);
- new str[150];
- format(str, sizeof(str),"Administrator %s has given you %d ammo of weapon %d", PlayerName(playerid), ammo, weapid);
- SendClientMessage(target, BLUE, str);
- TargetCMDMessage(playerid, target,"GIVEWEAPON");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not allowed to give this weapon!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- return 1;
- }
- CMD:givecash(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 3)
- {
- new player1, amount, string[128];
- if(sscanf(params,"dd", player1, amount)) return SendClientMessage(playerid, RED,"[USAGE]: /givecash [playerid] [amount]");
- if(IsPlayerConnected(player1))
- {
- GivePlayerMoney(player1, amount);
- format(string, sizeof(string),"Administrator %s has given you $%d amount of cash!", PlayerName(playerid), amount);
- SendClientMessage(player1, BLUE, string);
- TargetCMDMessage(playerid, player1,"GIVECASH");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- return 1;
- }
- CMD:givescore(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 3)
- {
- new player1, amount, string[128];
- if(sscanf(params,"dd", player1, amount)) return SendClientMessage(playerid, RED,"[USAGE]: /givescore [playerid] [amount]");
- if(IsPlayerConnected(player1))
- {
- SetPlayerScore(player1, GetPlayerScore(player1)+amount);
- format(string, sizeof(string),"Administrator %s has given you %d score(s)!", PlayerName(playerid), amount);
- SendClientMessage(player1, BLUE, string);
- TargetCMDMessage(playerid, player1,"GIVESCORE");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- return 1;
- }
- //--------------Level 1 commands------------------------------------------------
- CMD:muted(playerid, params[])
- {
- new mutedcount = 0, string[152];
- if(PlayerInfo[playerid][pAdmin] >= 1)
- {
- SendClientMessage(playerid, WHITE,"Muted Players:");
- for(new i = 0; i < MAX_PLAYERS; i ++)
- {
- if(IsPlayerConnected(i))
- {
- if(PlayerInfo[i][pMuted] == 1)
- {
- format(string, sizeof(string),"%s", PlayerName(i));
- SendClientMessage(playerid, WHITE, string);
- mutedcount++;
- }
- }
- }
- if(mutedcount == 0)
- {
- SendClientMessage(playerid, WHITE,"No player is muted right now!");
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be admin level 1 to use this command!");
- return 1;
- }
- CMD:jailed(playerid, params[])
- {
- new jailedcount = 0, string[152];
- if(PlayerInfo[playerid][pAdmin] >= 1)
- {
- SendClientMessage(playerid, BLUE,"Jailed Players:");
- for(new i = 0; i < MAX_PLAYERS; i ++)
- {
- if(IsPlayerConnected(i))
- {
- if(PlayerInfo[i][pJailed] == 1)
- {
- format(string, sizeof(string),"%s", PlayerName(i));
- SendClientMessage(playerid, WHITE, string);
- jailedcount++;
- }
- }
- }
- if(jailedcount == 0)
- {
- SendClientMessage(playerid, BLUE,"No player is jailed right now!");
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be admin level 1 to use this command!");
- return 1;
- }
- CMD:mute(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 1)
- {
- new player1, time, str[123], reason[30];
- if(sscanf(params,"dds[30]", player1, time)) return SendClientMessage(playerid, RED,"[USAGE]: /mute [playerid] [time (counted in minutes)] [reason]");
- if(IsPlayerConnected(player1))
- {
- if(PlayerInfo[player1][pMuted] == 0)
- {
- PlayerInfo[player1][pMuted] = 1;
- PlayerInfo[player1][pMuteTime] = time*60000;
- format(str, sizeof(str),"Administrator %s has muted %s for %i minutes [Reason: %s]", PlayerName(playerid), PlayerName(player1), time, reason);
- SendClientMessageToAll(BLUE, str);
- unmute[player1] = SetTimerEx("UnMuteMe", PlayerInfo[player1][pMuteTime], false, "d", playerid);
- TargetCMDMessage(playerid, player1,"MUTE");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is already muted!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- return 1;
- }
- CMD:unmute(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 1)
- {
- new player1, str[123];
- if(sscanf(params,"d", player1)) return SendClientMessage(playerid, RED,"[USAGE]: /unmute [playerid]");
- if(IsPlayerConnected(player1))
- {
- if(PlayerInfo[player1][pMuted] == 1)
- {
- PlayerInfo[player1][pMuted] = 0;
- PlayerInfo[player1][pMuteTime] = 0;
- format(str, sizeof(str),"Administrator %s has unmuted %s", PlayerName(playerid), PlayerName(player1));
- SendClientMessageToAll(BLUE, str);
- TargetCMDMessage(playerid, player1,"UNMUTE");
- KillTimer(unmute[player1]);
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not muted!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- return 1;
- }
- CMD:goto(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 1)
- {
- new player1, Float:X, Float:Y, Float:Z,str[123];
- if(sscanf(params,"d", player1)) return SendClientMessage(playerid, RED,"[USAGE]: /goto [playerid]");
- if(IsPlayerConnected(player1))
- {
- GetPlayerPos(player1, X, Y, Z);
- new interior = GetPlayerInterior(player1);
- new world = GetPlayerVirtualWorld(player1);
- SetPlayerInterior(playerid, interior);
- SetPlayerVirtualWorld(playerid, world);
- SetPlayerPos(playerid, X, Y, Z);
- format(str, sizeof(str),"You have been teleported to %s", PlayerName(player1));
- SendClientMessage(playerid, BLUE, str);
- TargetCMDMessage(playerid, player1,"GOTO");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be level 1 to use this command!");
- return 1;
- }
- CMD:get(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 1 )
- {
- new player1, Float:X, Float:Y, Float:Z;
- new string[120];
- if(sscanf(params,"d", player1)) return SendClientMessage(playerid, RED,"[USAGE]: /get [playerid]");
- if(IsPlayerConnected(player1))
- {
- GetPlayerPos(playerid, X, Y, Z);
- new interior = GetPlayerInterior(playerid);
- new world = GetPlayerVirtualWorld(playerid);
- SetPlayerInterior(playerid, interior);
- SetPlayerPos(player1, X, Y, Z);
- SetPlayerVirtualWorld(player1, world);
- format(string, sizeof(string),"Administrator %s has teleported you to his position!", PlayerName(playerid));
- SendClientMessage(player1, BLUE, string);
- TargetCMDMessage(playerid, player1,"GET");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- return 1;
- }
- CMD:acar(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 1)
- {
- if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, RED,"[JADMIN]: You already have a vehicle!");
- new Float:X, Float:Y, Float:Z;
- GetPlayerPos(playerid, X, Y, Z);
- PutPlayerInVehicle(playerid, CreateVehicle(415, X, Y, Z, 0.0,0, 1, 60), 0);
- CMDMessage(playerid, "ACAR");
- SendClientMessage(playerid, BLUE,"Enjoy your admin car");
- HasSpawnedCar[playerid] = 1;
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be admin level 1 to use this command");
- return 1;
- }
- CMD:jail(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 1)
- {
- new player1, jtime, reason[100], adminname[MAX_PLAYER_NAME], playername[MAX_PLAYER_NAME], string[256];
- GetPlayerName(playerid, adminname, MAX_PLAYER_NAME);
- GetPlayerName(player1, playername, MAX_PLAYER_NAME);
- if(sscanf(params,"dds[24]", player1, jtime, reason)) return SendClientMessage(playerid, RED,"[USAGE]: /jail [playerid][minutes][reason]");
- if(IsPlayerConnected(player1) && PlayerInfo[player1][pAdmin] < SInfo[MaxLevel])
- {
- if(PlayerInfo[player1][pJailed] == 0)
- {
- TargetCMDMessage(playerid, player1,"JAIL");
- TogglePlayerControllable(player1,true);
- SetPlayerPos(player1,197.6661,173.8179,1003.0234);
- SetPlayerInterior(player1,3);
- SetCameraBehindPlayer(player1);
- JailTimer[player1] = SetTimerEx("ReleaseFromJail",jtime*60000,0,"d",player1);
- PlayerInfo[player1][pJailed] = 1;
- format(string, sizeof(string),"Administrator %s has jailed %s for %i minutes [Reason: %s]", adminname, playername, jtime, reason);
- return SendClientMessageToAll(BLUE, string);
- }
- else return SendClientMessage(playerid,RED,"[JADMIN]: Player is already in jail!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected or is the highest level admin");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- }
- CMD:unjail(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 1)
- {
- new player1, adminname[MAX_PLAYER_NAME], playername[MAX_PLAYER_NAME], string[256];
- GetPlayerName(playerid, adminname, MAX_PLAYER_NAME);
- GetPlayerName(player1, playername, MAX_PLAYER_NAME);
- if(sscanf(params,"d", player1)) return SendClientMessage(playerid, RED,"[USAGE]: /unjail [playerid]");
- if(IsPlayerConnected(player1))
- {
- if(PlayerInfo[player1][pJailed] == 1)
- {
- TargetCMDMessage(playerid, player1,"UNJAIL");
- ReleaseFromJail(player1);
- PlayerInfo[player1][pJailed] = 0;
- format(string, sizeof(string),"Administrator %s has unjailed %s", adminname, playername);
- return SendClientMessageToAll(BLUE, string);
- }
- else return SendClientMessage(playerid,RED,"[JADMIN]: Player is not in jail!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected or is the highest level admin");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- }
- CMD:adminduty(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 1)
- {
- if(PlayerInfo[playerid][AdminDuty] == 0)
- {
- new string[100];
- format(string, sizeof(string),"%s is now on admin duty!", PlayerName(playerid));
- SendClientMessageToAll(RED, string);
- PlayerInfo[playerid][AdminDuty] = 1;
- SetPlayerHealth(playerid, 99999.0);
- GivePlayerWeapon(playerid, 38, 20000);
- SetPlayerSkin(playerid, 217);
- SetPlayerColor(playerid, 0xFD01FDAA);
- }
- else if(PlayerInfo[playerid][AdminDuty] == 1)
- {
- new string[100];
- format(string, sizeof(string),"%s is now off admin duty!", PlayerName(playerid));
- SendClientMessageToAll(RED, string);
- PlayerInfo[playerid][AdminDuty] = 0;
- SetPlayerHealth(playerid, 0.0);
- ForceClassSelection(playerid);
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be admin to use this command!");
- return 1;
- }
- //---------------------Level 4+ Commands----------------------------------------
- CMD:giveallcash(playerid, params[])
- {
- for(new i = 0; i < MAX_PLAYERS; i ++)
- {
- if(PlayerInfo[playerid][pAdmin] >= 4)
- {
- new ammount;
- if(sscanf(params,"d", ammount)) return SendClientMessage(playerid, RED,"[USAGE]: /giveallcash [ammount]");
- if(IsPlayerConnected(i))
- {
- GivePlayerMoney(i, ammount);
- new str[150];
- format(str, sizeof(str),"Administrator %s has given everyone $%d money", PlayerName(playerid), ammount);
- SendClientMessage(i, BLUE, str);
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- }
- return 1;
- }
- CMD:giveallscore(playerid, params[])
- {
- for(new i = 0; i < MAX_PLAYERS; i ++)
- {
- if(PlayerInfo[playerid][pAdmin] >= 4)
- {
- new ammount;
- if(sscanf(params,"d", ammount)) return SendClientMessage(playerid, RED,"[USAGE]: /giveallscore [ammount]");
- if(IsPlayerConnected(i))
- {
- SetPlayerScore(i, GetPlayerScore(i)+ammount);
- new str[150];
- format(str, sizeof(str),"Administrator %s has given everyone %d score(s)", PlayerName(playerid), ammount);
- SendClientMessage(i, BLUE, str);
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- }
- return 1;
- }
- CMD:giveallweapon(playerid, params[])
- {
- for(new i = 0; i < MAX_PLAYERS; i ++)
- {
- if(PlayerInfo[playerid][pAdmin] >= 4)
- {
- new weapid, ammo;
- if(sscanf(params,"dd", weapid, ammo)) return SendClientMessage(playerid, RED,"[USAGE]: /giveallweapon [weapon] [ammo]");
- if(IsValidWeapon(weapid))
- {
- if(IsPlayerConnected(i))
- {
- GivePlayerWeapon(i, weapid, ammo);
- new str[150];
- format(str, sizeof(str),"Administrator %s has given everyone %d ammo of weapon %d", PlayerName(playerid), ammo, weapid);
- SendClientMessage(i, BLUE, str);
- }
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not allowed to give this weapon!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You are not high enough level to use this command!");
- }
- return 1;
- }
- CMD:setscore(playerid, params[])
- {
- new player1, amount;
- if(PlayerInfo[playerid][pAdmin] >= 4)
- {
- if(sscanf(params,"dd", player1, amount)) return SendClientMessage(playerid, RED,"USAGE: /setscore [playerid][amount]");
- if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, RED,"[JADMIN]: Player not connected!");
- SetPlayerScore(player1, amount);
- TargetCMDMessage(playerid, player1,"SETSCORE");
- new str[100], str1[100];
- format(str, sizeof(str),"Administrator %s has setted your score(s) to %d", PlayerName(playerid),amount);
- format(str1, sizeof(str1),"You have setted %s's score(s) to %d", PlayerName(player1), amount);
- SendClientMessage(player1, BLUE, str);
- SendClientMessage(playerid, BLUE, str1);
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be admin level 4 to use this command!");
- return 1;
- }
- CMD:setcash(playerid, params[])
- {
- new player1, amount;
- if(PlayerInfo[playerid][pAdmin] >= 4)
- {
- if(sscanf(params,"dd", player1, amount)) return SendClientMessage(playerid, RED,"USAGE: /setcash [playerid][amount]");
- if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, RED,"[JADMIN]: Player not connected!");
- GivePlayerMoney(player1, amount);
- TargetCMDMessage(playerid, player1,"SETCASH");
- new str[100], str1[100];
- format(str, sizeof(str),"Administrator %s has setted your cash to $%d", PlayerName(playerid),amount);
- format(str1, sizeof(str1),"You have setted %s's cash to $%d", PlayerName(player1), amount);
- SendClientMessage(player1, BLUE, str);
- SendClientMessage(playerid, BLUE, str1);
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be admin level 4 to use this command!");
- return 1;
- }
- CMD:setkills(playerid, params[])
- {
- new player1, amount;
- if(PlayerInfo[playerid][pAdmin] >= 4)
- {
- if(sscanf(params,"dd", player1, amount)) return SendClientMessage(playerid, RED,"USAGE: /setkills [playerid][amount]");
- if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, RED,"[JADMIN]: Player not connected!");
- PlayerInfo[playerid][pKills] = amount;
- TargetCMDMessage(playerid, player1,"SETKILLS");
- new str[100], str1[100];
- format(str, sizeof(str),"Administrator %s has setted your kill(s) to %d", PlayerName(playerid),amount);
- format(str1, sizeof(str1),"You have setted %s's kill(s) to %d", PlayerName(player1), amount);
- SendClientMessage(player1, BLUE, str);
- SendClientMessage(playerid, BLUE, str1);
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be admin level 4 to use this command!");
- return 1;
- }
- CMD:setdeaths(playerid, params[])
- {
- new player1, amount;
- if(PlayerInfo[playerid][pAdmin] >= 4)
- {
- if(sscanf(params,"dd", player1, amount)) return SendClientMessage(playerid, RED,"USAGE: /setdeaths [playerid][amount]");
- if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, RED,"[JADMIN]: Player not connected!");
- PlayerInfo[playerid][pDeaths] = amount;
- TargetCMDMessage(playerid, player1,"SETDEATHS");
- new str[100], str1[100];
- format(str, sizeof(str),"Administrator %s has setted your death(s) to %d", PlayerName(playerid),amount);
- format(str1, sizeof(str1),"You have setted %s's death(s) to %d", PlayerName(player1), amount);
- SendClientMessage(player1, BLUE, str);
- SendClientMessage(playerid, BLUE, str1);
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You need to be admin level 4 to use this command!");
- return 1;
- }
- //--------------------- [ Ping Check ] -----------------------------------------
- forward PingChecker(playerid);
- public PingChecker(playerid)
- {
- if(PlayerInfo[playerid][pAdmin] < 7 && SInfo[AllowedPing] != 0)
- {
- new ping = GetPlayerPing(playerid);
- if(ping > SInfo[AllowedPing])
- {
- new str[100];
- format(str, sizeof(str),"%s has been kicked for exceeding ping limit ( Ping: %d | Allowed: %d )", PlayerName(playerid), ping, SInfo[AllowedPing]);
- SendClientMessageToAll(RED, str);
- Kick(playerid);
- }
- }
- return 1;
- }
- //---------------------- [ UnMuteMe] -------------------------------------------
- forward UnMuteMe(playerid);
- public UnMuteMe(playerid)
- {
- PlayerInfo[playerid][pMuted] = 0;
- PlayerInfo[playerid][pMuteTime] = 0;
- SendClientMessage(playerid, BLUE,"You have been 'Un-Muted'");
- return 1;
- }
- //-------------- [ OnPlayerPause ] ---------------------------------------------
- forward IsPaused(playerid);
- public IsPaused(playerid)
- {
- for(new p = 0; p != GetMaxPlayers(); p ++)
- {
- if(!IsPlayerConnected(p)) continue;
- {
- GetPlayerHealth(p, pHealth);
- if(pHealth < 0) continue;
- /*
- i = interger (p)
- f = float (pHealth)
- */
- SetTimerEx("CheckPlayerPaused", 1500, false, "if", p, pHealth); //Checking that player is paused
- SetPlayerHealth(p, pHealth-0.1);
- }
- }
- return 1;
- }
- forward CheckPlayerPaused(playerid, Float:health);
- public CheckPlayerPaused(playerid, Float:health)
- {
- GetPlayerHealth(playerid, pHealth);
- if(!floatcmp(pHealth, health))
- {
- if(PlayerInfo[playerid][Paused] == 0)
- {
- PlayerInfo[playerid][Paused] = 1;
- PauseKickTimer[playerid] = SetTimerEx("PauseKick", 1000, false, "d", playerid);
- }
- }
- else
- {
- if(PlayerInfo[playerid][Paused] == 1)
- {
- PlayerInfo[playerid][Paused] = 0;
- KillTimer(PauseKickTimer[playerid]);
- }
- }
- SetPlayerHealth(playerid, pHealth+0.1);
- return 1;
- }
- forward PauseKick(playerid);
- public PauseKick(playerid)
- {
- if(PlayerInfo[playerid][Paused] == 1)
- {
- new str[120], name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, MAX_PLAYER_NAME);
- format(str, sizeof(str),"%s has been kicked from server for being Away from Keyboard for more than %d seconds!", name, MAX_AFK_TIME);
- SendClientMessageToAll(RED, str);
- KillTimer(PauseKickTimer[playerid]);
- Kick(playerid);
- }
- return 1;
- }
- //--------------------Jail CMD forwards and stocks------------------------------
- forward ReleaseFromJail(player1);
- public ReleaseFromJail(player1)
- {
- KillTimer( JailTimer[player1] );
- PlayerInfo[player1][pJailTime] = 0; PlayerInfo[player1][pJailed] = 0;
- SetPlayerInterior(player1,0); SetPlayerPos(player1, 0.0, 0.0, 0.0); SpawnPlayer(player1);
- PlayerPlaySound(player1,1057,0.0,0.0,0.0);
- GameTextForPlayer(player1,"~g~Released",3000,3);
- SendClientMessage(player1,RED, "You have been released from jail by admin!");
- }
- //---------------------------------------------Normal players-------------------
- CMD:pm(playerid, params[])
- {
- new player1, str[100], pstr[100], astr[102], msg[133];
- if(sscanf(params,"ds[133]", player1, msg)) return SendClientMessage(playerid, RED,"[USAGE]: /pm [ id ] [ message ]");
- if(IsPlayerConnected(player1))
- {
- if(player1 != playerid)
- {
- if(DND[player1] != 1)
- {
- format(str, sizeof(str),"PM [TO] %s[%d]: %s", PlayerName(player1), player1, msg);
- format(pstr, sizeof(str),"PM [FROM] %s[%d]: %s", PlayerName(playerid), playerid, msg);
- format(astr, sizeof(astr),"PM [FROM] %s[%d] [TO] %s[%d]: %s", PlayerName(playerid), playerid, PlayerName(player1), player1, msg);
- SendClientMessage(playerid, YELLOW, str);
- SendClientMessage(player1, YELLOW, pstr);
- MessageToAdmins(GREY, astr);
- }
- else return SendClientMessage(playerid, RED,"User is in [NO PM] mode!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: You cannot PM yourself!");
- }
- else return SendClientMessage(playerid, RED,"[JADMIN]: Player is not connected!");
- return 1;
- }
- CMD:nopm(playerid, params)
- {
- if(DND[playerid] == 0)
- {
- DND[playerid] = 1;
- SendClientMessage(playerid, GREEN,"No PM mode enabled! "cred"You will not recieve any more PMs");
- }
- else if(DND[playerid] == 1)
- {
- DND[playerid] = 0;
- SendClientMessage(playerid, RED,"No PM mode disabled! "cgreen"You will now recieve PMs");
- }
- return 1;
- }
- //=================== [ OnPlayerCommandRecieved ] =============================
- public OnPlayerCommandReceived(playerid, cmdtext[])
- {
- if(PlayerInfo[playerid][pJailed] == 1 && PlayerInfo[playerid][pAdmin] < 1) return SendClientMessage(playerid,RED,"[JADMIN]: You cannot use commands in jail");
- if(PlayerInfo[playerid][pLogged] == 0) return SendClientMessage(playerid, RED,"[JADMIN]: You need to be logged-in before using any command!");
- new string[128], pnamee[MAX_PLAYER_NAME];
- GetPlayerName(playerid, pnamee, sizeof(pnamee));
- format(string, sizeof(string), "*** %s [%d] used: %s", pnamee,playerid,cmdtext);
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- if( (PlayerInfo[i][pAdmin] > PlayerInfo[playerid][pAdmin]) && (PlayerInfo[i][pAdmin] > 5) && (i != playerid) )
- {
- SendClientMessage(i, 0xAAAAAAFF, string);
- }
- }
- }
- return 1;
- }
- //================ [ OnPlayerText ] ============================================
- public OnPlayerText(playerid, text[])
- {
- if(text[0] == '.' && PlayerInfo[playerid][pAdmin] >= 1)
- {
- new str[128];
- format(str, sizeof(str),"A.Chat %s: %s", PlayerName(playerid), text[1]);
- MessageToAdmins(0x690069AA, str);
- return 0;
- }
- if(SInfo[DCHAT] == 1)
- {
- SendClientMessage(playerid, RED,"Chat has been disabled!");
- return 0;
- }
- if(SInfo[Spam] == 1 && !IsPlayerAdmin(playerid) && PlayerInfo[playerid][pAdmin] < 7)
- {
- if(GetTickCount() - PlayerInfo[playerid][pSpamTime] < MSG_TIME_LIMIT)
- {
- new string[128];
- format(string, sizeof(string),"[JADMIN]: Anti-Spam warning! You must wait for %d seconds for each message!", MSG_TIME_LIMIT/1000);
- SendClientMessage(playerid, RED,string);
- return 0;
- }
- PlayerInfo[playerid][pSpamTime] = GetTickCount();
- }
- if(PlayerInfo[playerid][pMuted] == 1)
- {
- SendClientMessage(playerid, RED,"[JADMIN]: You cannot speak! you are muted!");
- return 0;
- }
- switch(PlayerInfo[playerid][AdminDuty])
- {
- case 0:
- {
- new str[128];
- format(str, sizeof(str),"%s [%d]: {FFFFFF}%s", PlayerName(playerid), playerid, text);
- SendClientMessageToAll(GetPlayerColor(playerid),str);
- return 0;
- }
- case 1:
- {
- new string[128];
- format(string, sizeof(string),"Admin %s: %s", PlayerName(playerid), text);
- SendClientMessageToAll(0xFD01FDAA, string);
- return 0;
- }
- }
- return 1;
- }
- //==================== [ OnPlayerStateChange ] =================================
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- return 1;
- }
- //================ [ OnPlayerExitVehicle ] =====================================
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- if(HasSpawnedCar[playerid] == 1)
- {
- DestroyVehicle(vehicleid);
- }
- return 1;
- }
- //=========Thank you============================================================
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement