SA-MP Forums Archive
Offline jail? - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: Offline jail? (/showthread.php?tid=611864)



Offline jail? - canip0000 - 11.07.2016

pawn Код:
CMD:jail(playerid, params[])
{
        if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][trialAdmin]) {
        new reason[36];
        if(sscanf(params, "uis[36]", params[0], params[1], reason)) return SendClientMessage(playerid, -1, "usage: /jail [playerid] [time] [reason]");
        if(IsPlayerConnected(params[0]) && params[0] != INVALID_PLAYER_ID) // The player jailed is connected
        {
            if(jailed[params[0]][player_jailed] != true) // The player jailed not is already jailed
            {
                if(params[1] >= 10)
                {
                    if(strlen(reason) >= 3 && strlen(reason) < 36) // The reason is valid, 3 - 35 charactes
                    {
                        new INI:File = INI_Open(players_jailed(params[0])); // save data jailed
                        INI_SetTag(File, "Information Jail");
                        INI_WriteString(File, "Admin", Name(playerid));
                        INI_WriteString(File, "Reason", reason);
                        INI_WriteInt(File, "Time", params[1]*1);
                        INI_Close(File);

                        new i_admin[24];
                        GetPlayerName(playerid, i_admin, 24);
                        jailed[params[0]][administrator] = i_admin;
                        jailed[params[0]][time_jailed] = params[1]*1;
                        jailed[params[0]][reason_jailed] = reason;
                        jailed[params[0]][player_jailed] = true;
                        defer animation_jail(params[0]);
                        defer timer_jail(params[0]);

                        new string[156];
                        format(string, sizeof(string), "AdmCmd: %s has been a-jailed for %d seconds, by %s %s %s. Reason: %s.", Name(params[0]), params[1]*1,tLevel(playerid),aLevel(playerid), Name(playerid), reason);
                        SendClientMessageToAll(COLOR_LIGHTRED, string);
                    }
                    else
                    {
                        SendClientMessage(playerid, -1, "Reason incorrect, mнn 3 characters, max 35");
                    }
                }
                else
                {
                    SendClientMessage(playerid, -1, "Time incorrect, min 10 seconds");
                }
            }
            else
            {
                SendClientMessage(playerid, -1, "The player that you have entered is already in prison");
            }
        }
        else
        {
            SendClientMessage(playerid, -1, "Player not connected");
        }
    }
    else
    {
        SendClientMessage(playerid, COLOR_LIGHTRED, "[ ! ] You do not have access to this command. (Trial Admins+)");
    }
    return true;
}
Is there any possible way I can turn this command into a offline jail command? If yes, please help me out. I'm really lost in this one.