Гость stibs

Система автошколы (с Astera RP - вырезка)

В теме 2 сообщения

Внимание! Система писалась для конкретного мода и может не подойти именно на ваш! Подгоняйте переменные и все остальное под себя. Если совсем все туго, создавайте тему с просьбой о помощи в специальном разделе.

Ко всем переменным (new):

new Practice[MAX_PLAYERS];
new PracticeCheckPoint[MAX_PLAYERS];
new DrivingTest[MAX_PLAYERS];
new Vopros1[MAX_PLAYERS];
new Vopros2[MAX_PLAYERS];
new Vopros3[MAX_PLAYERS];
new Vopros4[MAX_PLAYERS];
new Vopros5[MAX_PLAYERS];
new Owibka[MAX_PLAYERS];
new Scul[2];

В OnPlayerConnect:
 

Owibka[playerid] = 0;
Practice[playerid] = 0;
DrivingTest[playerid] = 0;
PracticeCheckPoint[playerid] = 0;

Добавляем машины автошколы в OnGameModeInit:

Scul[0] = AddStaticVehicleEx(516,1919.9209,2222.1807,15.5879,0.0995,3,3,180);
AddStaticVehicleEx(516,1916.3838,2222.4321,15.5890,359.1009,3,3,180);
AddStaticVehicleEx(516,1912.5819,2222.6504,15.5919,359.6546,3,3,180);
AddStaticVehicleEx(516,1909.1499,2222.9431,15.5876,359.1221,3,3,180);
AddStaticVehicleEx(516,1905.5819,2223.1887,15.5888,359.9140,3,3,180);
Scul[1] = AddStaticVehicleEx(516,1901.7316,2223.3223,15.5898,0.3173,3,3,180);

В паблик OnPlayerStateChange:
 

if(newstate == PLAYER_STATE_DRIVER)
{
    if(newcar >= Scul[0] && newcar <= Scul[1])
    {
        if(Practice[playerid] == 1)
        {
            SCM(playerid, COLOR_YELLOW, "_____________________ Практика _____________________");
            SCM(playerid, COLOR_WHITE, "Следуйте по красным маркерам на радаре чтобы сдать практику.");
            SCM(playerid, COLOR_WHITE, "Не забудьте пристегнуть ремень безопасности /sb.");
            SCM(playerid, COLOR_WHITE, "Не выходите из машины иначе практика будет провалено.");
            SCM(playerid, COLOR_WHITE, "Езжайте осторожно, если вы поцарапаете машину вы провалите экзамен.");
            SCM(playerid, COLOR_YELLOW, "____________________________________________________");
            SetPlayerCheckpoint(playerid,1889.2778,2234.1060,16.0040, 5.0);
            PracticeCheckPoint[playerid] = 1;
        }
        else
        {
            SCM(playerid,COLOR_GREY,"У вас нет ключей от этого транспорта");
            TogglePlayerControllable(playerid,1);
            RemovePlayerFromVehicle(playerid);
        }
    }
}

В public OnPlayerCommandText:
 

if(strcmp(cmd, "/test", true) == 0)
{
    if(!PlayerToPoint(1.5, playerid, -2037.0017,-105.1214,1034.3906)) return 1;
    if(Account[playerid][pCarLic] == 1) return SCM(playerid, COLOR_WHITE, "У Вас уже есть права категории 'B'");
    if(DrivingTest[playerid] == 1) return SCM(playerid, COLOR_WHITE, "Вы уже сдаёте на права категории 'B'");
    if(GPVI(playerid,"nesdal") == 1)
    {
        SCM(playerid, COLOR_RED, "Вы провалили экзамен.");
        SCM(playerid, COLOR_RED, "(( Приходите после зарплаты ))");
            return 1;
    }
    DrivingTest[playerid] = 1;
    SCM(playerid, COLOR_GREEN, "_____________Теория_____________");
    SCM(playerid, COLOR_GREY, "Вам будет задано несколько вопросов.");
    SCM(playerid, COLOR_GREY, "У вас есть право на 1 ошибку.");
    SPD(playerid,927,DIALOG_STYLE_LIST,"Вопрос: Максимальная скорость в городе?","1) Безопасная,чтобы справлялся с управлением\
    \n2) Жать на газ пока поршня не вылетят\n3) Такая что б полиция не догнала","Ок","Отмена");
    Vopros1[playerid] = 1;
    return 1;
}

В public OnPlayerEnterCheckpoint:
 

  Длинный текст (открыть спойлер)

В паблик OnDialogResponse:

  Длинный текст (открыть спойлер)

Автор: Roman

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


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

Гость stibs, нужен скриптер для исправление багов

 

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


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

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

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

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

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


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

Войти

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


Войти

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

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