• Уважаемый Гость.
    - Прежде чем создать свою тему, пожалуйста, попробуй воспользоваться этим -> ПОИСКОМ !!!
    - После решения Вашего вопроса (проблемы) - нажмите "Лучший ответ", на сообщении, которое его решило. За игнорирование этого действия - Вы получите соответствующее предупреждение. Мы - стараемся Вам помочь. Уделите 10 секунд - чтобы нажать кнопку. (Если у Вас нет такой возможности - укажите в последнем своем сообщении какой ответ Вы считаете лучшим. Наши модераторы сделают это за Вас)
    ЗАПРЕЩЕНО:
    - Cоздавать темы с названиями "Помогите", "Плиз", "Ошибка", "Не могу найти", "Хелп" и тому подобное;
    - Cоздавать темы без детального описания того, что нужно исправить.
    - Cоздавать темы из одного скриншота.
    За игнор правил форума - Ваша тема будет удалена, а Вы получите системное предупреждение.

При аресте и перезаходе в игру, персонаж появляется дома, а не в тюрьме

Статус
В этой теме нельзя размещать новые ответы.

Sharki

Новичок
Здравствуйте, заметил проблему с CMD:arrest. Вся система ареста игроков работает нормально, только, после того как игрок был посажен за решётку с помощью команды /arrest, при перезаходе игрока на сервер - он появляется не в тюрьме, а на спавне/доме.
Помогите решить проблему, спасибо!
PHP:
CMD:arrest(playerid, params[])
{
    if(IsCop(playerid) || player[playerid][pmember] == 4 && member_form{playerid} == true)
    {
        if(sscanf(params,"i", params[0])) return
            SCM(playerid, COLOR_YELLOW, !"[ПОДСКАЗКА]: {FFFFFF}Введите команду /arrest [ID]");
        if(!IsPlayerConnected(params[0]))
        {
            PlayerPlaySound(playerid, 31203, 0.0, 0.0, 0.0);
            SCM(playerid, COLOR_RED, !"[ОШИБКА]: {B4B4B4}Игрок не найден!");
            return true;
        }
        if(login_check{params[0]} == false)
        {
            PlayerPlaySound(playerid, 31203, 0.0, 0.0, 0.0);
            SCM(playerid, COLOR_RED, !"[ОШИБКА]: {B4B4B4}Игрок не авторизован!");
            return true;
        }
        if(params[0] == playerid)
        {
            PlayerPlaySound(playerid, 31203, 0.0, 0.0, 0.0);
            SCM(playerid, COLOR_RED, !"[ОШИБКА]: {B4B4B4}Вы указали свой ID!");
            return true;
        }
        if(player[params[0]][pwanted] == 0)
        {
            PlayerPlaySound(playerid, 31203, 0.0, 0.0, 0.0);
            SCM(playerid, COLOR_RED, "[ОШИБКА]: {B4B4B4}Игрок должен находиться в розыске!");
            return true;
        }
        if(plot_check{params[0]} == false)
        {
            PlayerPlaySound(playerid, 31203, 0.0, 0.0, 0.0);
            SCM(playerid, COLOR_RED, "[ОШИБКА]: {B4B4B4}Игрок не числится в списке подозреваемых!");
            return true;
        }
        if(GetDistanceBetweenPlayers(playerid, params[0]) > 7.0)
        {
            PlayerPlaySound(playerid, 31203, 0.0, 0.0, 0.0);
            SCM(playerid, COLOR_RED, !"[ОШИБКА]: {B4B4B4}Игрок далеко от вас!");
            return true;
        }
        switch(player[playerid][pmember])
        {
            case 1:
            {
                if(!IsPlayerInRangeOfPoint(playerid, 30.0, 247.0862,79.2242,1003.6406))
                {
                    PlayerPlaySound(playerid, 31203, 0.0, 0.0, 0.0);
                    SCM(playerid, COLOR_RED, "[ОШИБКА]: {B4B4B4}Вы не в полицейском участке!");
                    return true;
                }
                SetPlayerPos(params[0], 264.1721,77.7296,1001.0391);
                SetPlayerFacingAngle(params[0], 269.3602);
                Freeze(params[0], 1);
                 SetPlayerWantedLevel(params[0], 0);
                 switch(player[params[0]][pwanted])
                {
                    case 1: player[params[0]][parrest_time] = 1200;
                    case 2: player[params[0]][parrest_time] = 2400;
                    case 3: player[params[0]][parrest_time] = 3600;
                    case 4: player[params[0]][parrest_time] = 4800;
                    case 5: player[params[0]][parrest_time] = 6000;
                    case 6: player[params[0]][parrest_time] = 7200;
                }
                SavePlayer(params[0], "Arrest Time", player[params[0]][parrest_time], "d");
                if(follow_id[playerid] == params[0])
                {
                    follow_id[playerid] = -1;
                    follow_id[params[0]] = -1;
                    GameTextForPlayer(params[0],"~g~unfollow", 5000, 3);
                    GameTextForPlayer(playerid,"~g~unfollow", 5000, 3);
                    plot_check{params[0]} = false;
                    follow_check{params[0]} = false;
                    TogglePlayerControllable(params[0], 1);
                    KillTimer(follow_timer[params[0]]);
                }
                player[params[0]][pwanted] = 0;
                SetCameraBehindPlayer(params[0]);
                SetPlayerSpecialAction(params[0],SPECIAL_ACTION_NONE);
                RemovePlayerAttachedObject(params[0], 0);
                handcuffs_check{params[0]} = false;
                plot_check{params[0]} = false;
                PlayerTextDrawShow(params[0], shelf_time_td[params[0]]);
                jail_timer[params[0]] = SetTimerEx("@_UnArrestTimer", 1000, false, "i", params[0]);
                static const fmt_str_50[] = "%s заключён под стражу сотрудником полиции %s";
                new string_50[sizeof(fmt_str_50)+MAX_PLAYER_NAME*2-3];
                format(string_50, sizeof(string_50), fmt_str_50
                ,
                    GN(params[0]),
                    GN(playerid)
                );
                MembersCop(0xFF5252FF, string_50);
            }
            case 2:
            {
                if(!IsPlayerInRangeOfPoint(playerid, 30.0, 219.5400,109.9767,999.0156))
                {
                    PlayerPlaySound(playerid, 31203, 0.0, 0.0, 0.0);
                    SCM(playerid, COLOR_RED, "[ОШИБКА]: {B4B4B4}Вы не в полицейском участке!");
                    return true;
                }
                SetPlayerPos(params[0], 214.9153,109.5791,999.0156);
                SetPlayerFacingAngle(params[0], 1.2141);
                Freeze(params[0], 1);
                 SetPlayerWantedLevel(params[0], 0);
                 switch(player[params[0]][pwanted])
                {
                    case 1: player[params[0]][parrest_time] = 1200;
                    case 2: player[params[0]][parrest_time] = 2400;
                    case 3: player[params[0]][parrest_time] = 3600;
                    case 4: player[params[0]][parrest_time] = 4800;
                    case 5: player[params[0]][parrest_time] = 6000;
                    case 6: player[params[0]][parrest_time] = 7200;
                }
                SavePlayer(params[0], "Arrest Time", player[params[0]][parrest_time], "d");
                if(follow_id[playerid] == params[0])
                {
                    follow_id[playerid] = -1;
                    follow_id[params[0]] = -1;
                    GameTextForPlayer(params[0],"~g~unfollow", 5000, 3);
                    GameTextForPlayer(playerid,"~g~unfollow", 5000, 3);
                    plot_check{params[0]} = false;
                    follow_check{params[0]} = false;
                    TogglePlayerControllable(params[0], 1);
                    KillTimer(follow_timer[params[0]]);
                }
                player[params[0]][pwanted] = 0;
                SetCameraBehindPlayer(params[0]);
                SetPlayerSpecialAction(params[0],SPECIAL_ACTION_NONE);
                RemovePlayerAttachedObject(params[0], 0);
                handcuffs_check{params[0]} = false;
                plot_check{params[0]} = false;
                PlayerTextDrawShow(params[0], shelf_time_td[params[0]]);
                jail_timer[params[0]] = SetTimerEx("@_UnArrestTimer", 1000, false, "i", params[0]);
                static const fmt_str_50[] = "%s заключён под стражу сотрудником полиции %s";
                new string_50[sizeof(fmt_str_50)+MAX_PLAYER_NAME*2-3];
                format(string_50, sizeof(string_50), fmt_str_50
                ,
                    GN(params[0]),
                    GN(playerid)
                );
                MembersCop(0xFF5252FF, string_50);
            }
            case 3:
            {
                if(!IsPlayerInRangeOfPoint(playerid, 30.0, 198.3940,157.9389,1003.0234))
                {
                    PlayerPlaySound(playerid, 31203, 0.0, 0.0, 0.0);
                    SCM(playerid, COLOR_RED, "[ОШИБКА]: {B4B4B4}Вы не в полицейском участке!");
                    return true;
                }
                SetPlayerPos(params[0], 197.5288,174.8450,1003.0234);
                SetPlayerFacingAngle(params[0], 357.7671);
                Freeze(params[0], 1);
                 SetPlayerWantedLevel(params[0], 0);
                 switch(player[params[0]][pwanted])
                {
                    case 1: player[params[0]][parrest_time] = 1200;
                    case 2: player[params[0]][parrest_time] = 2400;
                    case 3: player[params[0]][parrest_time] = 3600;
                    case 4: player[params[0]][parrest_time] = 4800;
                    case 5: player[params[0]][parrest_time] = 6000;
                    case 6: player[params[0]][parrest_time] = 7200;
                }
                SavePlayer(params[0], "Arrest Time", player[params[0]][parrest_time], "d");
                if(follow_id[playerid] == params[0])
                {
                    follow_id[playerid] = -1;
                    follow_id[params[0]] = -1;
                    GameTextForPlayer(params[0],"~g~unfollow", 5000, 3);
                    GameTextForPlayer(playerid,"~g~unfollow", 5000, 3);
                    plot_check{params[0]} = false;
                    follow_check{params[0]} = false;
                    TogglePlayerControllable(params[0], 1);
                    KillTimer(follow_timer[params[0]]);
                }
                player[params[0]][pwanted] = 0;
                SetCameraBehindPlayer(params[0]);
                SetPlayerSpecialAction(params[0],SPECIAL_ACTION_NONE);
                RemovePlayerAttachedObject(params[0], 0);
                handcuffs_check{params[0]} = false;
                plot_check{params[0]} = false;
                PlayerTextDrawShow(params[0], shelf_time_td[params[0]]);
                jail_timer[params[0]] = SetTimerEx("@_UnArrestTimer", 1000, false, "i", params[0]);
                static const fmt_str_50[] = "%s заключён под стражу сотрудником полиции %s";
                new string_50[sizeof(fmt_str_50)+MAX_PLAYER_NAME*2-3];
                format(string_50, sizeof(string_50), fmt_str_50
                ,
                    GN(params[0]),
                    GN(playerid)
                );
                MembersCop(0xFF5252FF, string_50);
            }
            case 4:
            {
                if(!IsPlayerInRangeOfPoint(playerid, 20.0, 198.4007,179.1959,1003.0308))
                {
                    PlayerPlaySound(playerid, 31203, 0.0, 0.0, 0.0);
                    SCM(playerid, COLOR_RED, "[ОШИБКА]: {B4B4B4}Вы не в федеральном участке!");
                    return true;
                }
                SetPlayerPos(params[0], 197.5288,174.8450,1003.0234);
                SetPlayerFacingAngle(params[0], 357.7671);
                Freeze(params[0], 1);
                 SetPlayerWantedLevel(params[0], 0);
                 switch(player[params[0]][pwanted])
                {
                    case 1: player[params[0]][parrest_time] = 1200;
                    case 2: player[params[0]][parrest_time] = 2400;
                    case 3: player[params[0]][parrest_time] = 3600;
                    case 4: player[params[0]][parrest_time] = 4800;
                    case 5: player[params[0]][parrest_time] = 6000;
                    case 6: player[params[0]][parrest_time] = 7200;
                }
                SavePlayer(params[0], "Arrest Time", player[params[0]][parrest_time], "d");
                player[params[0]][pwanted] = 0;
                SetCameraBehindPlayer(params[0]);
                SetPlayerSpecialAction(params[0],SPECIAL_ACTION_NONE);
                RemovePlayerAttachedObject(params[0], 0);
                handcuffs_check{params[0]} = false;
                plot_check{params[0]} = false;
                PlayerTextDrawShow(params[0], shelf_time_td[params[0]]);
                jail_timer[params[0]] = SetTimerEx("@_UnArrestTimer", 1000, false, "i", params[0]);
                static const fmt_str_50[] = "%s заключён под стражу сотрудником FBI %s";
                new string_50[sizeof(fmt_str_50)+MAX_PLAYER_NAME*2-3];
                format(string_50, sizeof(string_50), fmt_str_50
                ,
                    GN(params[0]),
                    GN(playerid)
                );
                MembersCop(0xFF5252FF, string_50);
            }
        }
    }
    else
    {
        PlayerPlaySound(playerid, 31203, 0.0, 0.0, 0.0);
        SCM(playerid, COLOR_RED, !"[ОШИБКА]: {B4B4B4}Вы не уполномочены использовать данную команду!");
        return true;
    }
    return true;
}
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу