В теме 1 сообщение

< Всем привет сегодня я солью систему gps >

< Cистему gps была полностью написана с нуля >

< По запросу одного проекта но так как они не заплатили >

< за проделанную работу я решил слить данную систему>

< ========================================================== >

< Функционал как работает >

< Данная система можно так сказать уникальной >

< Так как для игрока это обычное GPS >

< А для admins это быстрый телепорт по точкам >

< ================================================== >

< CODES >

Спойлер

Ко всем New мы вставляем это:

new bool:UseGPS[MAX_PLAYERS];

Затем мы создаём DIALOG_GPS

Затем мы создаём сам DIALOG

        case DIALOG_GPS:

        {

            if(!response) { //нажал закрыть
                return 0;
            }

            switch(listitem)
            {

                   case 1: SPD(playerid, 52, DSL, "{c71616}Работы", "\
                   {c71616}[1] {ffffff}База грузовых тягачей\n\
                   {c71616}[2] {ffffff}Служба автомехаников", "Поиск", "Назад");      

            }
        }

 

Потом мы создаём сами точки для gps

 

 

        case 54:
        {
            if(!response) { // нажал закрыть
                return 0;
            }
            new locname[30], Float:X, Float:Y, Float:Z;
            switch(listitem)
            {

                case 0: X = -3174.6797, Y = -2889.3596, Z = 9.4253, locname = "База грузовых тягачей"; //
                case 1: X = -2707.0796, Y = 1181.7296, Z = 10.8560, locname = "Служба автомехаников";  //
            }
            if(Player[playerid][pAdmin] > 1) GPSAdmin_(playerid, X, Y, Z);
            else GPSPlayer_(playerid, X, Y, Z, locname);
            return 1;
        }

 

Потом мы идём в OnPlayerDisconnect

и вставляем там вот этот код

    if(UseGPS[playerid])
    {
        DisablePlayerRaceCheckpoint(playerid);
        UseGPS[playerid] = false;
    }

 

Потом мы идём в OnPlayerDeath

и так же вставляем код

    if(UseGPS[playerid])
    {
        DisablePlayerRaceCheckpoint(playerid);
        UseGPS[playerid] = false;
    }

 

Потом мы идём в OnPlayerEnterRaceCheckpoint

и вставляем код

    if(UseGPS[playerid])
    {
        SendClientMessage(playerid, 0xFFFFFF, "{c71616}Вы достигли место назначения!");
           DisablePlayerRaceCheckpoint(playerid);
           UseGPS[playerid] = false;
           return 1;
    }

 

Потом мы создаём stock GPSPlayer_

 

stock GPSPlayer_(playerid, Float:X, Float:Y, Float:Z, locname[])
{
    if(X == 0.0) return 1;
    new Float:VPos[3];
    if(Player[playerid][pAdmin] == 0)
    {
        GetPlayerPos(playerid, VPos[0], VPos[1], VPos[2]);
        UseGPS[playerid] = true;
        DisablePlayerRaceCheckpoint(playerid);
        SetPlayerRaceCheckpoint(playerid, 1, X, Y, Z, 0, 0, 0, 5.0);
        new string[128];
        format(string, sizeof(string), "Вы отметили пункт на карте: %s. {c71616}Расстояние: %.1f ì", locname, GetDistanceBetweenPoints(VPos[0], VPos[1], VPos[2], X, Y, Z));
        SendClientMessage(playerid, COLOR_WHITE, string);
    }
    if(Player[playerid][pAdmin] > 1)
    {
        SetPlayerPos(playerid, X, Y, Z);
    }
    return 1;
}

 

Далее так-же мы создаём stock GPSAdmin_

 

stock GPSAdmin_(playerid, Float:X, Float:Y, Float:Z)
{
    if(Player[playerid][pAdmin] > 1)
    {
        SetPlayerPos(playerid, X, Y, Z);
    }
    return 1;
}

 

Ну и под кoнец сама CMD:gps

 

CMD:gps(playerid, params[])
{
    if(Player[playerid][pAdmin] == 0)
    {
        if(GetPlayerInterior(playerid) != 0 || GetPlayerVirtualWorld(playerid) != 0) return SendClientMessage(playerid, COLOR_GREY, "Выйдете на улицу!");
    }
    SPD(playerid, DIALOG_GPS, DSL, "{c71616}GPS навигатор",
    !"\
        {c71616}[1] {ffffff}Местоположение работ\
        ", !"Выбрать", !"Выход\
    ");
    return 1;
}

 

Ну на этом всё думаю кому надо пригодиться

Скриншоты:

На скриншотах уже моя работа так что можете не сравнивать с кодом который тут^

Спойлер

Япикc:Клик

Видео:Клик

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!


Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.


Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • От MrNARTI
      всем привет появилась ошибка со входам в автосалон, ерроров нету но при попытки входа показывает что есть транспорт загруженный хотя его нету. Но когда ввожу /car показывает что есть хотя повторяюсь его нет.
       
      код
       
      команда /саr
       
       
       
      если понадобится что то еще скинуть то скажите я скину.
    • От MrNARTI
      всем привет можете пожалуйста подсказать с командой от анти слива /aban
       
      чтобы банило и администратора который использовал эту кмд и адм которого указал в айди.