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

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

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

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

[Мануал] Работа мусоровозчика (Orio-N 100%)

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

xCKAYTz

Умник
Дело было вечером, делать было нечего....
Ещё один мануальчик. Постарался сделать максимально приближеным к работе аналогичной работе на сервере Orio-N.

Скриншот снят на сервере Orio-N'a, но моя работа ни капли не отличается
Приступим, чтоль.
В начало мода:
PHP:
new musorjob[2];
new musorpick;
new Float:muspos[][3] = {
{2074.246094,2657.932129,10.820300},
{1469.314575,2812.470459,10.820300},
{1978.834106,2601.388428,10.820300},
{1920.749878,2375.422363,10.820300},
{2294.200195,2377.146973,10.820300},
{2183.397461,2716.846191,10.820300}
};
В public OnGameModeInit()
PHP:
    musorpick = CreatePickup(1275,23,2206.517334,2723.938721,10.820300);
    musorjob[0] = AddStaticVehicle(408,2210.9563,2733.3315,11.3793,269.3751,3,1);
    AddStaticVehicle(408,2210.9099,2739.3459,11.3705,270.1040,3,1);
    AddStaticVehicle(408,2210.9578,2745.3464,11.3708,270.1266,3,1);
    AddStaticVehicle(408,2210.9885,2751.3662,11.3354,270.3341,3,1);
    musorjob[1] = AddStaticVehicle(408,2210.9004,2757.3435,11.3585,269.9995,3,1);
В public OnPlayerConnect(playerid)
PHP:
SetPVarInt(playerid,"mWork", 0);
B public OnPlayerSpawn(playerid)
PHP:
    SetPVarInt(playerid,"mWork", 0);
    DisablePlayerCheckpoint(playerid);
B public OnPlayerEnterCheckpoint(playerid)
PHP:
    if(GetPVarInt(playerid,"mWork") >= 1) {
        if(GetPVarInt(playerid,"mWork") == sizeof(muspos)) {
            SetPVarInt(playerid,"mWork",0);
            GivePlayerMoney(playerid,29000);
            GameTextForPlayer(playerid, "~g~+29000$", 5000, 1);
            SendClientMessage(playerid,-1,"Спасибо за работу, приходи ещё!");
            SetVehicleToRespawn(GetPlayerVehicleID(playerid));
            SetPlayerSkin(playerid,GetPVarInt(playerid,"mSkin"));
            DisablePlayerCheckpoint(playerid);
            return 1;
        }
        TogglePlayerControllable(playerid,0);
        SendClientMessage(playerid,-1,"{e3be88}Выполняется погрузка мусора в контейнер мусоровоза...");
        SetPlayerCheckpoint(playerid,muspos[GetPVarInt(playerid,"mWork")][0],muspos[GetPVarInt(playerid,"mWork")][1],muspos[GetPVarInt(playerid,"mWork")][2],3.0);
        SetPVarInt(playerid,"mWork",GetPVarInt(playerid,"mWork")+1);
        SetTimerEx("UnFreeze",10000,0,"d",playerid);
        return 1;
    }
B public OnPlayerExitVehicle(playerid,vehicleid)
PHP:
    if(GetPVarInt(playerid,"mWork") > 0) {
        SetPVarInt(playerid,"mWork", 0);
        DisablePlayerCheckpoint(playerid);
        SetPlayerSkin(playerid,GetPVarInt(playerid,"mSkin"));
    }
B public OnPlayerPickUpPickup(playerid, pickupid)
PHP:
    if(pickupid == musorpick) {
        ShowPlayerDialog(playerid, 1984, DIALOG_STYLE_MSGBOX,"Работа мусоровозчика", "Ты хочешь приступить к вывозу мусора?", "Начать", "Завершить");
        return 1;
    }
B public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
PHP:
    if(dialogid == 1984 && response) {
        SetPVarInt(playerid,"mWork", 1);
        SetPVarInt(playerid,"mSkin", GetPlayerSkin(playerid));
        SetPlayerSkin(playerid,73);
        SendClientMessage(playerid,-1,"{e3be88}[Начальник свалки]{ffffff} Рабочий день начат. Твоя задача вывезти мусор из этого города!");
        SetPlayerCheckpoint(playerid,muspos[0][0],muspos[0][1],muspos[0][2],3.0);
    }
Ну и в конец мода:
PHP:
forward UnFreeze(playerid);
public UnFreeze(playerid) {
    TogglePlayerControllable(playerid,1);
    SendClientMessage(playerid,-1,"Погрузка завершена. Направляйся к следующей мусорке.");
}
Спасибо за внимание, обо всех недочётах пишите в теме.
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу