All pastes #483195 Raw Edit

DragSta's Jail/Unjai

public text v1 · immutable
·published 2007-05-11 16:33 UTC
rendered paste body
//ABOVE MAIN():
new jailed[MAX_PLAYERS];

//UNDER ONPLAYERCONNECT:
jailed[playerid] = 0;


//UNDER ONPLAYERCOMMANDTEXT
if(strcmp(cmd, "/jail", true) == 0) {
             
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp)) {
                        SendClientMessage(playerid, COLOR_GREEN, "Usage: /jail [Player ID]");
                        return 1;
                }
        giveplayerid = strval(tmp);

	if(jailed[giveplayerid]==0) {
        if (gTeam[playerid] == TEAM_COP) {                    // this can be changed to admin if you wish
            if (IsPlayerConnected(giveplayerid)) {
				
					GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                                format(string, sizeof(string), "You have been jailed by Cop %s!", sendername, playerid);
                                SendClientMessage(giveplayerid, COLOR_RED1, string);
                                format(string, sizeof(string), "%s has been jailed by Cop %s!", giveplayer, giveplayerid, sendername, playerid);
                                SendClientMessageToAll(COLOR_RED1, string);
                                printf(string);
                                SetPlayerInterior(giveplayerid,3);
								jailed[giveplayerid] = 1;
							    SetPlayerPos(giveplayerid,198.3797,160.8905,1003.0300);
                                SetPlayerFacingAngle(giveplayerid,177.0350);
                                SetCameraBehindPlayer(giveplayerid);
                                PlayerPlaySound(giveplayerid,1082,198.3797,160.8905,1003.0300);
                                TogglePlayerControllable(giveplayerid,0);   // so that can't /kill
                                DisablePlayerCheckpoint(giveplayerid);
                                return 1;
                                        }else{
        format(string, sizeof(string), "id %d is not an active player.", giveplayerid);
                                SendClientMessage(playerid, COLOR_YELLOW, string);
}
                }else{
        format(string, sizeof(string), "You Are Not official Police!!", giveplayerid);
                                SendClientMessage(playerid, COLOR_YELLOW, string);
}
}else{
format(string, sizeof(string), "This person(id:%d) is alreadyy jailed!", giveplayerid);
                                SendClientMessage(playerid, COLOR_YELLOW, string);

}

return 1;
}

if(strcmp(cmd, "/unjail", true) == 0) {
             
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp)) {
                        SendClientMessage(playerid, COLOR_GREEN, "Usage: /unjail [Player ID]");
                        return 1;
                }
        giveplayerid = strval(tmp);
	if(jailed[giveplayerid]==1) {
        if (gTeam[playerid] == TEAM_COP) {
            if (IsPlayerConnected(giveplayerid)) {
                      GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                                format(string, sizeof(string), "You have been unjailed by %s (ID:%d)!", sendername, playerid);
                                SendClientMessage(giveplayerid, COLOR_GREEN, string);
                                format(string, sizeof(string), "%s (ID:%d) has been unjailed by %s (ID:%d)", giveplayer, giveplayerid, sendername, playerid);
                                SendClientMessageToAll(COLOR_GREEN, string);
                                printf(string);
                                jailed[giveplayerid] = 0;
								SetPlayerInterior(giveplayerid,0);
                                SetPlayerFacingAngle(giveplayerid,90.00);
                                SetPlayerPos(giveplayerid,2296.4031,2468.7754,10.8203);
                                SetPlayerFacingAngle(giveplayerid,177.0350);
                                SetCameraBehindPlayer(giveplayerid);
                                TogglePlayerControllable(giveplayerid,1);
                                return 1;
                                        }else{
        format(string, sizeof(string), "id %d is not an active player.", giveplayerid);
                                SendClientMessage(playerid, COLOR_YELLOW, string);
}
                }else{
        format(string, sizeof(string), "You Are not official Police!!", giveplayerid);
                                SendClientMessage(playerid, COLOR_WHITE, string);
}
}else{
format(string, sizeof(string), "This person(id:%d) is Not jailed!", giveplayerid);
                                SendClientMessage(playerid, COLOR_WHITE, string);
}

return 1;
}