Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Небольшая гонка

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

vistecter

Ученик
Команда для создания небольшой гонки.
З.Ы. Префикс добавьте, я его не нашел о_О
PHP:
if(strcmp(cmd, "/joinrace", true) == 0)
    {
        tmp = strtok(cmdtext, idx);
        giveplayerid = ReturnUser(tmp);
        new Float:X,Float:Y,Float:Z;//создаем координаты
        GetPlayerPos(giveplayerid, X,Y,Z);//забираем позицию приглашенного в гонку
        new carid = CreateVehicle(502, X,Y+4,Z, 0.0, 1, 0, 6000120);//Выдаем автомобиль
        //Gas[carid] = 12340; эта строка для мода Real-Life. Он показывает кол-во бензина
        PutPlayerInVehicle(giveplayerid, carid, 0); //"кладем" человека в машину, ранее созданную
        JoiningRace[giveplayerid] = 1;//переменная для старта
        format(string,256,"Вы приняли %s в гонку",GetPlayerNameEx(giveplayerid));
        SendClientMessage(playerid,0x00CCFFFF,string);
        format(string,256,"Вас принял %s в гонку",GetPlayerNameEx(playerid));
        SendClientMessage(giveplayerid,0x00CCFFFF,string);
        SetPlayerCheckpoint(giveplayerid,-1445.1101,-283.6136,13.6253,7.0);//ставим первый чекпоинт гонки
        TogglePlayerControllable(giveplayerid, 0);//отключаем способность двигатся 
        SetPlayerColor(giveplayerid,0x708090AA);//Врубаем цвет мероприятия
    }
     if(strcmp(cmd, "/startrace", true) == 0)
    {
        for(new i=0;i<MAX_PLAYERS;i++)//Перебор всех
        {
            if(JoiningRace[i] == 1)//Если есть переменная принятия, то...
            {
                TogglePlayerControllable(i,1);//врубаем способность двигатся
                OnPlayerCommandText(i,"/engine");//заводим двигатель
                GameTextForPlayer(i, "Go Go Go !!!", 7500, 6);//Даем старт
            }
        }
    }
Вот это класть в OnPlayerEnterCheckpoint:

PHP:
if(JoiningRace[playerid] == 8 && PlayerToPoint(177.0, playerid,2273.6084,1389.1791,42.8203))
    {
        format(string,256,"%s выиграл в гонке!!!",GetPlayerNameEx(playerid));
        SendClientMessageToAll(0xFF0000FF,string);
        for(new i=0;i<MAX_PLAYERS;i++)
        {
            if(JoiningRace[i] > 0)
            {
                DisablePlayerCheckpoint(i);
            }
        }
    }
    if(JoiningRace[playerid] == 1 && PlayerToPoint(10.0, playerid,-1445.1101,-283.6136,13.6253))
    {
        JoiningRace[playerid] = 2;
        SetPlayerCheckpoint(playerid,484.7154,-323.8127,38.0634,6.0);
    }
    if(JoiningRace[playerid] == 2 && PlayerToPoint(10.0, playerid,484.7154,-323.8127,38.0634))
    {
        JoiningRace[playerid] = 3;
        SetPlayerCheckpoint(playerid,-446.9496,1750.2645,72.4370,6.0);
    }
    if(JoiningRace[playerid] == 3 && PlayerToPoint(10.0, playerid,-446.9496,1750.2645,72.4370))
    {
        JoiningRace[playerid] = 4;
        SetPlayerCheckpoint(playerid,212.6311,24.6719,2.5708,6.0);
    }
    if(JoiningRace[playerid] == 4 && PlayerToPoint(10.0, playerid,212.6311,24.6719,2.5708))
    {
        JoiningRace[playerid] = 5;
        SetPlayerCheckpoint(playerid,786.1040,-1629.6522,13.3828,6.0);
    }
    if(JoiningRace[playerid] == 5 && PlayerToPoint(10.0, playerid,786.1040,-1629.6522,13.3828))
    {
        JoiningRace[playerid] = 6;
        SetPlayerCheckpoint(playerid,-2391.5522,-582.1194,131.7923,6.0);
    }
    if(JoiningRace[playerid] == 6 && PlayerToPoint(10.0, playerid,-2391.5522,-582.1194,131.7923))
    {
        JoiningRace[playerid] = 7;
        SetPlayerCheckpoint(playerid,984.6868,2562.9238,10.7517,6.0);
    }
    if(JoiningRace[playerid] == 7 && PlayerToPoint(10.0, playerid,984.6868,2562.9238,10.7517))
    {
        JoiningRace[playerid] = 8;
        SetPlayerCheckpoint(playerid,2273.6084,1389.1791,42.8203,6.0);
    }
Автор: Cliffka. Благодарю за просмотр.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу