Remove <id>
#3

Try this:
pawn Код:
COMMAND:cuff(playerid, params[])
{
    if(!playerData[playerid][playerLoggedIn]) return SendClientMessage(playerid, COLOR_WHITE, "{B7B7B7}[SERVER] {FFFFFF}You must be logged in to use commands.");
    {
        switch(playerData[playerid][playerClass])
        {
            case CLASS_POLICE, CLASS_ARMY, CLASS_CIA, CLASS_FBI, CLASS_SECRETSERVICE:
            {
                if(playerData[playerid][playerJailTime])
                    return SendClientMessage(playerid, COLOR_WHITE, "{B7B7B7}[SERVER] {FFFFFF}You cannot cuff people when you are jailed.");
                   
                new targetid;
                if(sscanf(params, "u", targetid))
                {
                    targetid = GetClosestSuspect(playerid, 6);
                    if(targetid == INVALID_PLAYER_ID || !IsPlayerConnected(targetid))
                        return SendClientMessage(playerid, COLOR_WHITE, "{B7B7B7}[SERVER] {FFFFFF}You are not close enough to a suspect.");
                }
                else if(targetid == INVALID_PLAYER_ID || !IsPlayerConnected(targetid))
                    return SendClientMessage(playerid, COLOR_WHITE, "{B7B7B7}[SERVER] {FFFFFF}That player is not connected.");

                if(!playerData[targetid][playerLoggedIn])
                    return SendClientMessage(playerid, COLOR_WHITE, "{B7B7B7}[SERVER] {FFFFFF}You cannot cuff players who are not logged in.");
                   
                if(playerData[targetid][playerClass] != CLASS_CIVILIAN && playerData[targetid][playerClass] != CLASS_MEDIC)
                    return SendClientMessage(playerid, COLOR_WHITE, "{B7B7B7}[SERVER] {FFFFFF}You cannot cuff law enforcement players.");

                if(playerData[targetid][playerWantedLevel] < 6)
                    return SendClientMessage(playerid, COLOR_WHITE, "{B7B7B7}[SERVER] {FFFFFF}This player does not have a high enough wanted level.");

                if(playerData[targetid][playerJailTime])
                    return SendClientMessage(playerid, COLOR_WHITE, "{B7B7B7}[SERVER] {FFFFFF}You cannot cuff people when they're jailed.");

                if(!isPlayerInRangeOfPlayer(playerid, targetid, 4.0))
                    return SendClientMessage(playerid, COLOR_WHITE, "{B7B7B7}[SERVER] {FFFFFF}You are not close enough to that player.");

                if(playerData[targetid][playerAdminDuty])
                    return SendClientMessage(playerid, COLOR_WHITE, "{B7B7B7}[SERVER] {FFFFFF}That player is currently performing admin duties and cannot be cuffed!");
                   
                if(IsPlayerInAnyVehicle(targetid))
                    return SendClientMessage(playerid, COLOR_WHITE, "{B7B7B7}[SERVER] {FFFFFF}The player you're trying to cuff is in a vehicle.");

                if(IsPlayerInAnyVehicle(playerid))
                    return SendClientMessage(playerid, COLOR_WHITE, "{B7B7B7}[SERVER] {FFFFFF}You cannot cuff people while you are in a vehicle.");
                   
                if(playerData[targetid][playerIsCuffed])
                    return SendClientMessage(playerid, COLOR_WHITE, "{B7B7B7}[SERVER] {FFFFFF}That player is already cuffed.");

                if(!playerData[playerid][playerCanCuff])
                    return SendClientMessage(playerid, COLOR_WHITE, "{B7B7B7}[SERVER] {FFFFFF}Please wait before cuffing a player again.");

                if(playerData[playerid][playerIsTied])
                    return SendClientMessage(playerid, COLOR_WHITE, "{B7B7B7}[SERVER] {FFFFFF}You cannot do this whilst tied.");

                ClearAnimations(targetid);
                new Name[MAX_PLAYER_NAME], pCuff[80];
                GetPlayerName(playerid, Name, sizeof(Name));
                format(pCuff, sizeof(pCuff), "{FFDC2E}[CUFFED] {FFFFFF}You have been cuffed by %s(%i)", Name, playerid);
                SendClientMessage(targetid, COLOR_WHITE, pCuff);
                GetPlayerName(targetid, Name, sizeof(Name));
                format(pCuff, sizeof(pCuff), "{FFDC2E}[CUFFED] {FFFFFF}You have placed cuffs on %s(%i)", Name, targetid);
                SendClientMessage(playerid, COLOR_WHITE, pCuff);
                SetPlayerSpecialAction(targetid, SPECIAL_ACTION_CUFFED);
                playerData[targetid][uncuffTimer] = SetTimerEx("uncuff", 60000, false, "i", targetid);
                playerData[playerid][recuffTimer] = SetTimerEx("recuff", 5000, false, "i", playerid);
                playerData[playerid][playerCanCuff] = false;
                playerData[targetid][playerIsCuffed] = true;
                if(playerData[targetid][playerIsTied])
                {
                    playerData[targetid][playerIsTied] = false;
                    KillTimer(playerData[targetid][untieTimer]);
                }
            }
            default: SendClientMessage(playerid, COLOR_WHITE, "{B7B7B7}[SERVER] {FFFFFF}This command can only be used by the LEO classes.");
        }
    }
    return 1;
}

GetClosestSuspect(playerid, minimum_wantedlevel)
{
    new Float:dist = 1000.0, targetid = INVALID_PLAYER_ID, Float:x1, Float:y1, Float:z1, Float:x2, Float:y2, Float:z2, Float:tmpdis;
    GetPlayerPos(playerid, x1, y1, z1);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
        if(!IsPlayerConnected(i)) continue;
        if(i == playerid) continue;
        if(playerData[i][playerClass] != CLASS_CIVILIAN && playerData[i][playerClass] != CLASS_MEDIC) continue;
        if(playerData[i][playerWantedLevel] < minimum_wantedlevel) continue;
        GetPlayerPos(i, x2, y2, z2);
        tmpdis = floatsqroot(floatpower(floatabs(floatsub(x2, x1)), 2) + floatpower(floatabs(floatsub(y2, y1)), 2) + floatpower(floatabs(floatsub(z2, z1)), 2));
        if(tmpdis < dist)
        {
            dist = tmpdis;
            targetid = i;
        }
    }
    return targetid;
}
Reply


Messages In This Thread
Remove <id> - by PowerF - 20.04.2015, 11:36
Re: Remove <id> - by SilverSkill - 20.04.2015, 12:31
Re: Remove <id> - by Threshold - 21.04.2015, 06:52
Re: Remove <id> - by PowerF - 21.04.2015, 09:21
Re: Remove <id> - by Threshold - 21.04.2015, 19:37

Forum Jump:


Users browsing this thread: 1 Guest(s)