| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425 |
- /*
- /$$ /$$ /$$$$$$ /$$$$$$$ /$$$$$$$
- | $$$ | $$ /$$__ $$ | $$__ $$| $$__ $$
- | $$$$| $$| $$ \__/ | $$ \ $$| $$ \ $$
- | $$ $$ $$| $$ /$$$$ /$$$$$$| $$$$$$$/| $$$$$$$/
- | $$ $$$$| $$|_ $$|______/| $$__ $$| $$____/
- | $$\ $$$| $$ \ $$ | $$ \ $$| $$
- | $$ \ $$| $$$$$$/ | $$ | $$| $$
- |__/ \__/ \______/ |__/ |__/|__/
- Server Offences System
- Next Generation Gaming, LLC
- (created by Next Generation Gaming Development Team)
- * Copyright (c) 2016, Next Generation Gaming, LLC
- *
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are not permitted in any case.
- *
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
- * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
- #include <YSI\y_hooks>
- CMD:prison(playerid, params[])
- {
- if(PlayerInfo[playerid][pAdmin] >= 2 || PlayerInfo[playerid][pWatchdog] >= 2)
- {
- new giveplayerid, minutes, reason[64];
- if(sscanf(params, "uds[64]", giveplayerid, minutes, reason)) return SendClientMessageEx(playerid, COLOR_GREY, "USAGE: /prison [player] [minutes] [reason]");
- if(giveplayerid != INVALID_PLAYER_ID)
- {
- if((PlayerInfo[giveplayerid][pAdmin] && PlayerInfo[giveplayerid][pAdmin] >= PlayerInfo[playerid][pAdmin]) || (PlayerInfo[playerid][pAdmin] == 1 && PlayerInfo[giveplayerid][pWatchdog] >= 2)) return SendClientMessageEx(playerid, COLOR_WHITE, "You can't perform this action on an equal or higher level administrator.");
- if(PrisonPlayer(playerid, giveplayerid, reason, minutes, .custom=1) == 0) return 1;
- }
- }
- else SendClientMessageEx(playerid, COLOR_GRAD1, "You are not authorized to use that command.");
- return 1;
- }
- CMD:reverse(playerid, params[])
- {
- new string[128], reason[24], giveplayerid;
- if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pHelper] >= 2 || PlayerInfo[playerid][pWatchdog] >= 2) {
- if(!sscanf(params, "us[24]", giveplayerid, reason)) {
- if(!IsPlayerConnected(giveplayerid)) return SendClientMessageEx(playerid, COLOR_GRAD1, "Invalid player.");
- if(GetPlayerSQLId(playerid) != PlayerInfo[giveplayerid][pJailedInfo][0] && PlayerInfo[playerid][pAdmin] < 3 && PlayerInfo[playerid][pASM] < 1)
- return SendClientMessageEx(playerid, COLOR_WHITE, "You have not acted against this person, therefor you can not reverse any actions for them.");
- if(PlayerInfo[giveplayerid][pJailTime] == 0) return SendClientMessageEx(playerid, COLOR_GRAD2, "You cannot do this to someone not currently prisoned.");
- if(PlayerInfo[playerid][pAdmin] == 1 || PlayerInfo[playerid][pHelper] >= 2 || (PlayerInfo[playerid][pWatchdog] >= 2 && PlayerInfo[playerid][pAdmin] < 3)) {
- SetPVarInt(playerid, "ReverseReport", 1);
- SetPVarInt(playerid, "ReverseID", giveplayerid);
- SetPVarString(playerid, "ReverseReason", reason);
- SendReportToQue(playerid, "Reverse Report", 2, 4);
- SendClientMessageEx(playerid, COLOR_WHITE, "Please wait for an administrator to review your request.");
- return 1;
- }
- if(PlayerInfo[giveplayerid][pJailedInfo][1] > 0) GivePlayerCash(giveplayerid, PlayerInfo[giveplayerid][pJailedInfo][1]);
- if(PlayerInfo[giveplayerid][pJailedInfo][3] == 1) PlayerInfo[giveplayerid][pWarns]--;
- if(PlayerInfo[giveplayerid][pJailedInfo][4] > 0) PlayerInfo[giveplayerid][pWRestricted] = 0;
- format(string, 128, "AdmCmd: %s(%d) has been released from prison (/reverse) by %s, reason: %s", GetPlayerNameEx(giveplayerid), GetPlayerSQLId(giveplayerid), GetPlayerNameEx(playerid), reason);
- Log("logs/admin.log", string);
- format(string, 128, "AdmCmd: %s has been released from prison by %s, reason: %s", GetPlayerNameEx(giveplayerid), GetPlayerNameEx(playerid), reason);
- SendClientMessageToAllEx(COLOR_LIGHTRED, string);
- PhoneOnline[giveplayerid] = 0;
- //PlayerInfo[giveplayerid][pWantedLevel] = 0;
- PlayerInfo[giveplayerid][pBeingSentenced] = 0;
- SetPlayerToTeamColor(giveplayerid);
- SetHealth(giveplayerid, 100);
- //SetPlayerWantedLevel(giveplayerid, 0);
- PlayerInfo[giveplayerid][pJailTime] = 0;
- SetPlayerPos(giveplayerid, 1529.6,-1691.2,13.3);
- SetPlayerInterior(giveplayerid,0);
- PlayerInfo[giveplayerid][pInt] = 0;
- SetPlayerVirtualWorld(giveplayerid, 0);
- PlayerInfo[giveplayerid][pVW] = 0;
- strcpy(PlayerInfo[giveplayerid][pPrisonReason], "None", 128);
- SetPlayerToTeamColor(giveplayerid);
- for(new x = 0; x < 12; x++) GivePlayerValidWeapon(giveplayerid, PlayerInfo[giveplayerid][pJailedWeapons][x]);
- for(new y = 0; y < 5; y++) PlayerInfo[giveplayerid][pJailedInfo][y] = 0;
- for(new z = 0; z < 12; z++) PlayerInfo[giveplayerid][pJailedWeapons][z] = 0;
- SendClientMessageEx(giveplayerid, COLOR_LIGHTBLUE, "Your punishment has been reversed by the administrator who jailed you.");
- }
- else SendClientMessageEx(playerid, COLOR_GREY, "USAGE: /reverse [playerid] [reason]");
- }
- else SendClientMessageEx(playerid, COLOR_GREY, "You are not authorized to use this command.");
- return 1;
- }
- CMD:dprison(playerid, params[])
- {
- if((PlayerInfo[playerid][pAdmin] >= 2 && (PlayerInfo[playerid][pFactionModerator] > 0 || PlayerInfo[playerid][pGangModerator] > 0 ||
- PlayerInfo[playerid][pBM] > 0)) || PlayerInfo[playerid][pAdmin] >= 1337) {
- new giveplayerid, mintues;
- if(!sscanf(params, "ud", giveplayerid, mintues)) {
- if(PlayerInfo[giveplayerid][pAdmin] >= 2 || PlayerInfo[giveplayerid][pWatchdog] >= 2) return SendClientMessageEx(playerid, COLOR_WHITE, "You cannot use this on admins or watchdogs!");
- if(mintues > 120) return SendClientMessageEx(playerid, COLOR_WHITE, "Time cannot be above 120 minutes.");
- if(PrisonPlayer(playerid, giveplayerid, "Violation of DGA Policies", .time=mintues, .custom=1) == 0) return 1;
- }
- else SendClientMessageEx(playerid, COLOR_GREY, "USAGE: /dprison [playerid] [time]");
- }
- else SendClientMessageEx(playerid, COLOR_GRAD1, "You are not authorized to use this command!");
- return 1;
- }
- PrisonPlayer(playerid, giveplayerid, reason[], time=0, silent=0, custom=0)
- {
- new string[128], shortreason[5], jailtime, twarn, warn, fine, nonrp;
- new rand = random(sizeof(OOCPrisonSpawns));
- // Reset.
- PlayerInfo[giveplayerid][pJailedInfo][0] = PlayerInfo[playerid][pId];
- PlayerInfo[giveplayerid][pJailedInfo][1] = 0;
- PlayerInfo[giveplayerid][pJailedInfo][2] = 0;
- PlayerInfo[giveplayerid][pJailedInfo][3] = 0;
- PlayerInfo[giveplayerid][pJailedInfo][4] = 0;
- for(new i = 0; i < 12; i++) PlayerInfo[giveplayerid][pJailedWeapons][i] = 0;
- if(time > 0) jailtime = time;
- if(!strcmp(reason, "Deathmatching", true) && !custom) {
- strcpy(shortreason, "DM", 5);
- if(!time) {
- new hours = PlayerInfo[giveplayerid][pConnectHours];
- if(hours > 2 && hours <= 24) {
- PlayerInfo[giveplayerid][pWRestricted] = 4;
- jailtime = 30;
- twarn = 1;
- }
- else if(hours > 24 && hours <= 72) {
- PlayerInfo[giveplayerid][pWRestricted] = 8;
- PlayerInfo[giveplayerid][pWarns] += 1;
- jailtime = 60;
- warn = 1;
- fine = 15;
- }
- else if(hours > 72 && hours <= 140) {
- PlayerInfo[giveplayerid][pWRestricted] = 12;
- PlayerInfo[giveplayerid][pWarns] += 1;
- warn = 1;
- jailtime = 90;
- fine = 15;
- }
- else if(hours > 140) {
- PlayerInfo[giveplayerid][pWRestricted] = 16;
- PlayerInfo[giveplayerid][pWarns] += 1;
- warn = 1;
- jailtime = 120;
- fine = 15;
- }
- }
- }
- else if(!strcmp(reason, "Revenge Killing", true) && !custom) {
- strcpy(shortreason, "RK", 5);
- if(!time) {
- new hours = PlayerInfo[giveplayerid][pConnectHours];
- if(hours > 2 && hours <= 24) {
- PlayerInfo[giveplayerid][pWRestricted] = 2;
- jailtime = 30;
- twarn = 1;
- }
- else if(hours > 24 && hours <= 72) {
- PlayerInfo[giveplayerid][pWRestricted] = 4;
- PlayerInfo[giveplayerid][pWarns] += 1;
- jailtime = 60;
- warn = 1;
- fine = 10;
- }
- else if(hours > 72 && hours <= 140) {
- PlayerInfo[giveplayerid][pWRestricted] = 6;
- PlayerInfo[giveplayerid][pWarns] += 1;
- warn = 1;
- jailtime = 90;
- fine = 10;
- }
- else if(hours > 140) {
- PlayerInfo[giveplayerid][pWRestricted] = 8;
- PlayerInfo[giveplayerid][pWarns] += 1;
- warn = 1;
- jailtime = 120;
- fine = 10;
- }
- }
- }
- else if(!strcmp(reason, "Non-Roleplay Behaviour", true) && !custom) {
- strcpy(shortreason, "NONRP", 5);
- if(!time) {
- new hours = PlayerInfo[giveplayerid][pConnectHours];
- if(hours > 2 && hours <= 24) {
- twarn = 1;
- jailtime = 30;
- }
- else if(hours > 24 && hours <= 72) {
- twarn = 1;
- jailtime = 60;
- fine = 10;
- }
- else if(hours > 72 && hours <= 140) {
- twarn = 1;
- jailtime = 90;
- fine = 10;
- }
- else if(hours > 140) {
- jailtime = 120;
- fine = 10;
- }
- }
- }
- else if(!strcmp(reason, "Metagaming", true) && !custom) {
- strcpy(shortreason, "MG", 5);
- if(!time) {
- new hours = PlayerInfo[giveplayerid][pConnectHours];
- if(hours > 2 && hours <= 24) {
- jailtime = 15;
- twarn = 1;
- }
- else if(hours > 24 && hours <= 72) {
- jailtime = 30;
- twarn = 1;
- }
- else if(hours > 72 && hours <= 140) {
- jailtime = 45;
- }
- else if(hours > 140) {
- jailtime = 60;
- }
- }
- }
- else if(!strcmp(reason, "Powergaming", true) && !custom) {
- strcpy(shortreason, "PG", 5);
- if(!time) {
- new hours = PlayerInfo[giveplayerid][pConnectHours];
- if(hours > 2 && hours <= 24) {
- jailtime = 15;
- twarn = 1;
- }
- else if(hours > 24 && hours <= 72) {
- jailtime = 30;
- twarn = 1;
- fine = 10;
- }
- else if(hours > 72 && hours <= 140) {
- jailtime = 45;
- fine = 10;
- }
- else if(hours > 140) {
- jailtime = 60;
- fine = 10;
- }
- }
- }
- else if(!strcmp(reason, "Killing On Sight", true) && !custom) {
- strcpy(shortreason, "KOS", 5);
- if(!time) {
- new hours = PlayerInfo[giveplayerid][pConnectHours];
- if(hours > 2 && hours <= 24) {
- PlayerInfo[giveplayerid][pWRestricted] = 2;
- jailtime = 30;
- twarn = 1;
- }
- else if(hours > 24 && hours <= 72) {
- PlayerInfo[giveplayerid][pWRestricted] = 4;
- PlayerInfo[giveplayerid][pWarns] += 1;
- jailtime = 60;
- warn = 1;
- fine = 10;
- }
- else if(hours > 72 && hours <= 140) {
- PlayerInfo[giveplayerid][pWRestricted] = 8;
- PlayerInfo[giveplayerid][pWarns] += 1;
- warn = 1;
- jailtime = 90;
- fine = 10;
- }
- else if(hours > 140) {
- PlayerInfo[giveplayerid][pWRestricted] = 12;
- PlayerInfo[giveplayerid][pWarns] += 1;
- warn = 1;
- jailtime = 120;
- fine = 10;
- }
- }
- }
- PlayerInfo[giveplayerid][pJailedInfo][2] = jailtime;
- if(!custom) {
- PlayerInfo[giveplayerid][pJailedInfo][4] = PlayerInfo[giveplayerid][pWRestricted];
- PlayerInfo[giveplayerid][pJailedInfo][3] = warn;
- }
- for(new x = 0; x < 12; x++) PlayerInfo[giveplayerid][pJailedWeapons][x] = PlayerInfo[giveplayerid][pGuns][x];
- ResetPlayerWeaponsEx(giveplayerid);
- if(fine > 0) {
- new totalwealth = PlayerInfo[giveplayerid][pAccount] + GetPlayerCash(giveplayerid);
- if(PlayerInfo[giveplayerid][pPhousekey] != INVALID_HOUSE_ID && HouseInfo[PlayerInfo[giveplayerid][pPhousekey]][hOwnerID] == GetPlayerSQLId(giveplayerid)) totalwealth += HouseInfo[PlayerInfo[giveplayerid][pPhousekey]][hSafeMoney];
- if(PlayerInfo[giveplayerid][pPhousekey2] != INVALID_HOUSE_ID && HouseInfo[PlayerInfo[giveplayerid][pPhousekey2]][hOwnerID] == GetPlayerSQLId(giveplayerid)) totalwealth += HouseInfo[PlayerInfo[giveplayerid][pPhousekey2]][hSafeMoney];
- if(PlayerInfo[giveplayerid][pPhousekey3] != INVALID_HOUSE_ID && HouseInfo[PlayerInfo[giveplayerid][pPhousekey3]][hOwnerID] == GetPlayerSQLId(giveplayerid)) totalwealth += HouseInfo[PlayerInfo[giveplayerid][pPhousekey3]][hSafeMoney];
- if(totalwealth > 0) fine = fine*totalwealth/100;
- if(fine > 0) {
- GivePlayerCash(giveplayerid, -fine);
- PlayerInfo[giveplayerid][pJailedInfo][1] = fine;
- }
- }
- if(PlayerInfo[giveplayerid][pAccountRestricted] == 1) {
- CreateBan(playerid, PlayerInfo[giveplayerid][pId], giveplayerid, PlayerInfo[giveplayerid][pIP], "Punished Whilst Restricted", 14);
- return 0;
- }
- if(PlayerInfo[giveplayerid][pWarns] >= 3) {
- PlayerInfo[playerid][pWarns] = 0;
- CreateBan(playerid, PlayerInfo[giveplayerid][pId], giveplayerid, PlayerInfo[giveplayerid][pIP], "3 Warnings", 14);
- return 0;
- }
- if(GetPVarInt(giveplayerid, "Injured") == 1) {
- KillEMSQueue(giveplayerid);
- ClearAnimationsEx(giveplayerid);
- }
- if(GetPVarType(giveplayerid, "IsInArena")) LeavePaintballArena(giveplayerid, GetPVarInt(giveplayerid, "IsInArena"));
- if(silent) format(string, 128, "AdmCmd: %s has been prisoned by an admin, reason: %s", GetPlayerNameEx(giveplayerid), reason);
- else format(string, 128, "AdmCmd: %s has been prisoned by %s, reason: %s", GetPlayerNameEx(giveplayerid), GetPlayerNameEx(playerid), reason);
- SendClientMessageToAllEx(COLOR_LIGHTRED, string);
- StaffAccountCheck(giveplayerid, GetPlayerIpEx(giveplayerid));
- //PlayerInfo[giveplayerid][pWantedLevel] = 0;
- //SetPlayerWantedLevel(giveplayerid, 0);
- PlayerInfo[giveplayerid][pJailTime] = jailtime*60;
- SetPVarInt(giveplayerid, "_rAppeal", gettime()+60);
- if(!custom) format(PlayerInfo[giveplayerid][pPrisonReason], 128, "[OOC][PRISON][%s]", shortreason);
- else format(PlayerInfo[giveplayerid][pPrisonReason], 128, "[OOC][PRISON][ADM] %s", reason);
- strcpy(PlayerInfo[giveplayerid][pPrisonedBy], GetPlayerNameEx(playerid), MAX_PLAYER_NAME);
- PhoneOnline[giveplayerid] = 1;
- SetPlayerInterior(giveplayerid, 1);
- SetHealth(giveplayerid, 0x7FB00000);
- PlayerInfo[giveplayerid][pInt] = 1;
- Streamer_UpdateEx(giveplayerid, OOCPrisonSpawns[rand][0], OOCPrisonSpawns[rand][1], OOCPrisonSpawns[rand][2]);
- SetPlayerPos(giveplayerid, OOCPrisonSpawns[rand][0], OOCPrisonSpawns[rand][1], OOCPrisonSpawns[rand][2]);
- SetPlayerSkin(giveplayerid, 50);
- SetPlayerColor(giveplayerid, TEAM_APRISON_COLOR);
- Player_StreamPrep(giveplayerid, OOCPrisonSpawns[rand][0], OOCPrisonSpawns[rand][1], OOCPrisonSpawns[rand][2], FREEZE_TIME);
- if(silent) format(string, 128, "You have been prisoned by an admin for %d minutes, reason: %s.", jailtime, reason);
- else format(string, 128, "You have been prisoned by %s for %d minutes, reason: %s.", GetPlayerNameEx(playerid), jailtime, reason);
- SendClientMessageEx(giveplayerid, COLOR_LIGHTBLUE, string);
- if(fine > 0) {
- format(string, 128, "You have been fined a total of $%s for this action", number_format(fine));
- SendClientMessageEx(giveplayerid, COLOR_WHITE, string);
- }
- if(twarn) {
- SendClientMessageEx(giveplayerid, COLOR_LIGHTRED, "WARNING: As your hours, not level, progress, the punishments increase. Please mind the rules.");
- }
- format(szMiscArray, sizeof(szMiscArray), "AdmCmd: %s(%d) has been prisoned by %s, reason: %s (F:%s|W:%d|WR:%d|NonRP:%d)", GetPlayerNameEx(giveplayerid), GetPlayerSQLId(giveplayerid), GetPlayerNameEx(playerid), reason, number_format(fine), warn, PlayerInfo[giveplayerid][pWRestricted], nonrp);
- Log("logs/admin.log", szMiscArray);
- DeletePVar(playerid, "PendingAction");
- DeletePVar(playerid, "PendingAction2");
- if(AlertTime[GetPVarInt(playerid, "PendingAction3")] != 0) AlertTime[GetPVarInt(playerid, "PendingAction3")] = 0;
- DeletePVar(playerid, "PendingAction3");
- return 1;
- }
- hook OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
- if(arrAntiCheat[playerid][ac_iFlags][AC_DIALOGSPOOFING] > 0) return 1;
- new string[128];
- if(dialogid == DIALOG_REVERSE) {
- new rPlayerID = GetPVarInt(playerid, "ReverseFromID");
- new releasedID = GetPVarInt(rPlayerID, "ReverseID");
- if(response) {
- if(PlayerInfo[releasedID][pJailedInfo][1] > 0) GivePlayerCash(releasedID, PlayerInfo[releasedID][pJailedInfo][1]);
- if(PlayerInfo[releasedID][pJailedInfo][3] == 1) PlayerInfo[releasedID][pWarns]--;
- format(string, 128, "AdmCmd: %s(%d) has been released from prison (/reverse) by %s, reason: Reversed (%s)", GetPlayerNameEx(releasedID), GetPlayerSQLId(releasedID), GetPlayerNameEx(playerid), GetPlayerNameEx(rPlayerID));
- Log("logs/admin.log", string);
- format(string, 128, "AdmCmd: %s has been released from prison by %s, reason: Reversed (%s)", GetPlayerNameEx(releasedID), GetPlayerNameEx(playerid), GetPlayerNameEx(rPlayerID));
- SendClientMessageToAllEx(COLOR_LIGHTRED, string);
- //PlayerInfo[releasedID][pWantedLevel] = 0;
- PlayerInfo[releasedID][pBeingSentenced] = 0;
- SetPlayerToTeamColor(releasedID);
- SetHealth(releasedID, 100);
- //SetPlayerWantedLevel(releasedID, 0);
- PlayerInfo[releasedID][pJailTime] = 0;
- SetPlayerPos(releasedID, 1529.6,-1691.2,13.3);
- SetPlayerInterior(releasedID,0);
- PlayerInfo[releasedID][pInt] = 0;
- SetPlayerVirtualWorld(releasedID, 0);
- PlayerInfo[releasedID][pVW] = 0;
- strcpy(PlayerInfo[releasedID][pPrisonReason], "None", 128);
- SetPlayerToTeamColor(releasedID);
- for(new x = 0; x < 12; x++) GivePlayerValidWeapon(releasedID, PlayerInfo[releasedID][pJailedWeapons][x]);
- for(new y = 0; y < 5; y++) PlayerInfo[releasedID][pJailedInfo][y] = 0;
- for(new z = 0; z < 12; z++) PlayerInfo[releasedID][pJailedWeapons][z] = 0;
- SendClientMessageEx(releasedID, COLOR_LIGHTBLUE, "Your punishment has been reversed by the administrator who jailed you.");
- }
- else {
- format(string, 128, "Administrator %s has denied your request to reverse your action.", GetPlayerNameEx(playerid));
- SendClientMessageEx(rPlayerID, COLOR_RED, string);
- }
- DeletePVar(playerid, "ReverseFromID");
- DeletePVar(rPlayerID, "ReverseReason");
- DeletePVar(rPlayerID, "ReverseID");
- }
- return 0;
- }
|