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

Как сделать пикапы под зарплату и раздевалку раздельными?

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

Zai4ik

Новичок
Скажу сразу работа грузчика была вырезанная
C:
#define MAX_UCHECK 2 // Чекпоинты куда несём груз
#define MAX_PCHECK 5 // Чекпоинты где берём груз
#define START_JOB 2 // Колличество мест для начала работы
#define JOB_CASH 10 // Зарплата за 1 ящик

new Float:ucheck[MAX_UCHECK][3] = {// Чекпоинты где нужно брать вещи..
    {2746.9546,-2436.0449,13.6432},
    {2746.5940,-2427.4841,13.6380}
};

new Float:check[MAX_PCHECK][3] = {// Чекпоинты куда нужно нести вещи...
    {2785.3604,-2409.4348,13.6343},
    {2784.9187,-2424.8127,13.6344},
    {2793.5256,-2410.3799,13.6323},
    {2793.3657,-2425.0623,13.6323},
    {2799.1807,-2409.9629,13.6309}
};

new Float:start_job[START_JOB][3] = {// Места, где можно начать работу...
    {2798.4226,-2393.9375,13.9560},
    {2749.2666,-2454.0779,13.8623}
};

for(new gjob; gjob < START_JOB; gjob++)// Цикл на создание пикапа для начала работу
{
    CreatePickup(1275,23,start_job[gjob][0],start_job[gjob][1],start_job[
    gjob][2],-1);// Создаём пикап начала работы, на заданых координатах
}

for(new gjob; gjob < START_JOB; gjob++)// Цикл колличество мест в которых можно начать работу
{
    if(IsPlayerInRangeOfPoint(playerid,2,start_job[gjob][0],start_job[gjob][1],start_job[gjob][2])) GameTextForPlayer(playerid,"~g~PRESS KEY ~r~ALT",5000,4);// Проверяем нахождение игрока в точках начала работы, если он там, выводи GameText
}

if(newkeys == KEY_WALK)// Проверка на кнопку ALT
{
    for(new gjob; gjob < START_JOB; gjob++)// Цикл колличество мест в которых можно начать работу
    {
        if(IsPlayerInRangeOfPoint(playerid,2,start_job[gjob][0],start_job[gjob][1],start_job[gjob][2]))// Проверяем нахождение игрока в точках начала работы
        {
            if(GetPVarInt(playerid,"InJob") == 0) ShowPlayerDialog(playerid,30000,DIALOG_STYLE_MSGBOX,"Начало Работы грузчиком","{FFFFFF}Если вы хотите начать работу грузчиком, нажмите начать","Начать","Отмена");
            // Если игрок уже работает грузчиком, то выводим диалог окончания
            else if(GetPVarInt(playerid,"InJob") == 1) ShowPlayerDialog(playerid,30001,DIALOG_STYLE_MSGBOX,"Окончание Работы грузчиком","{FFFFFF}Если вы хотите завершить работу грузчиком, нажмите конец","Конец","Отмена");
            // Если игрок не работает грузчиком, то выводим диалог начала
        }
    }
}
if(GetPVarInt(playerid,"Job") == 2)
{
    if(newkeys == KEY_SECONDARY_ATTACK || newkeys == KEY_JUMP || newkeys == KEY_SECONDARY_ATTACK || newkeys == KEY_FIRE || newkeys == KEY_CROUCH)
    {
        RemovePlayerAttachedObject(playerid,5);// Удаляем объект из рук
        ApplyAnimation(playerid,"PED","IDLE_tired",4.1,0,1,1,0,1);// Обнуляем анимацию
        SetPVarInt(playerid,"Job",1);// Устанавливаем момент работы игрока на 1..
        new checkp = random(MAX_PCHECK);
        SetPlayerCheckpoint(playerid,pcheck[checkp][0],pcheck[checkp][1],pcheck[
        checkp][2],1.5);// Создаём один из чекпоинтов
    }
}
if(newkeys == KEY_WALK)// Проверка на кнопку ALT
{
    for(new gjob; gjob < START_JOB; gjob++)// Цикл колличество мест в которых можно начать работу
    {
        if(IsPlayerInRangeOfPoint(playerid,2,start_job[gjob][0],start_job[gjob][1],start_job[gjob][2]))// Проверяем нахождение игрока в точках начала работы
        {
            if(GetPVarInt(playerid,"InJob") == 0) ShowPlayerDialog(playerid,30000,DIALOG_STYLE_MSGBOX,"Начало Работы грузчиком","{FFFFFF}Если вы хотите начать работу грузчиком, нажмите начать","Начать","Отмена");
            // Если игрок уже работает грузчиком, то выводим диалог окончания
            else if(GetPVarInt(playerid,"InJob") == 1) ShowPlayerDialog(playerid,30001,DIALOG_STYLE_MSGBOX,"Окончание Работы грузчиком","{FFFFFF}Если вы хотите завершить работу грузчиком, нажмите конец","Конец","Отмена");
            // Если игрок не работает грузчиком, то выводим диалог начала
        }
    }
}
if(GetPVarInt(playerid,"Job") == 2)
{
    if(newkeys == KEY_SECONDARY_ATTACK || newkeys == KEY_JUMP || newkeys == KEY_SECONDARY_ATTACK || newkeys == KEY_FIRE || newkeys == KEY_CROUCH)
    {
        RemovePlayerAttachedObject(playerid,5);// Удаляем объект из рук
        ApplyAnimation(playerid,"PED","IDLE_tired",4.1,0,1,1,0,1);// Обнуляем анимацию
        SetPVarInt(playerid,"Job",1);// Устанавливаем момент работы игрока на 1..
        new checkp = random(MAX_PCHECK);
        SetPlayerCheckpoint(playerid,pcheck[checkp][0],pcheck[checkp][1],pcheck[
        checkp][2],1.5);// Создаём один из чекпоинтов
    }
}

if(dialogid == 30000)
{
    if(!response) return 1;// Если нажал отмена
    SendClientMessage(playerid,0xFFFFFFAA,"* Вы начали работу {ff0000}грузчиком");// Выводим текст
    SetPVarInt(playerid,"PSkin",GetPlayerSkin(playerid));// Сохраним скин игрока
    SetPlayerSkin(playerid,268);// Установим игроку скин
    SetPVarInt(playerid,"InJob",1);// Устанавливаем игроку работу.
    SetPVarInt(playerid,"Job",1);// Устанавливаем момент работы, 1 - идём брать вещи. 2 - несём вещи.
    new checkp = random(MAX_PCHECK);// Рандомно выдаём координаты где брать груз
    SetPlayerCheckpoint(playerid,pcheck[checkp][0],pcheck[checkp][1],pcheck[
    checkp][2],1.5);// Создаём один из чекпоинтов
}
if(dialogid == 30001)
{
    if(!response) return 1;
    new str[128];
    format(str,sizeof(str),"* Вы завершили работу {ff0000}грузчиком.{ffffff}Вы получаете: {ff0000}$%d",GetPVarInt(playerid,"JobY")*JOB_CASH);
    SendClientMessage(playerid,0xFFFFFFAA,str);// Выводим текст
    DisablePlayerCheckpoint(playerid);// Удаляем чекпоинт
    ApplyAnimation(playerid,"PED","IDLE_tired",4.1,0,1,1,0,1);// Обнуляем анимацию
    RemovePlayerAttachedObject(playerid,5);// Удаляем объект из рук
    GivePlayerMoney(playerid,GetPVarInt(playerid,"JobY")*JOB_CASH);// Выдаём деньги
    SetPlayerSkin(playerid,GetPVarInt(playerid,"PSkin"));// Возвращаем скин
    DeletePVar(playerid,"Job");// Удаляем PVar с моментом работы
    DeletePVar(playerid,"InJob");// Удаляем PVar с работой
    DeletePVar(playerid,"JobY");// Удаляем PVar с колличеством вещей
    DeletePVar(playerid,"PSkin");// Удаляем PVar с одеждой
}

if(GetPVarInt(playerid,"Job") == 1)// Если момент работы игрока 1..
{
    new checku = random(MAX_UCHECK);// Рандомно выдаём координаты куда нести груз
    SetPlayerCheckpoint(playerid,ucheck[checku][0],ucheck[checku][1],ucheck[
    checku][2],1.5);// Создаём один из чекпоинтов
    ApplyAnimation(playerid,"CARRY","crry_prtial",4.1,0,1,1,1,1);// Анимация, типо что то несём..
    SetPVarInt(playerid,"Job",2);// Устанавливаем момент работы игрока на 2..
    new objectr = random(3);// Выдаём в руки объект
    if(objectr == 0) return SetPlayerAttachedObject(playerid,5,1221,1,0.135011,0.463495,-0.024351,357.460632,87.350753,88.068374,0.434164,0.491270,0.368655);
    if(objectr == 1) return SetPlayerAttachedObject(playerid,5,2226,1,0.000708,0.356461,0.000000,186.670364,87.529838,0.000000,1.000000,1.000000,1.000000);
    if(objectr == 2) return SetPlayerAttachedObject(playerid,5,1750,1,0.013829,0.131155,0.145773,185.651550,86.201354,345.922180,0.693442,0.873942,0.577291);
}
if(GetPVarInt(playerid,"Job") == 2)
{
    RemovePlayerAttachedObject(playerid,5);// Удаляем объект из рук
    ApplyAnimation(playerid,"PED","IDLE_tired",4.1,0,1,1,0,1);// Обнуляем анимацию
    SetPVarInt(playerid,"Job",1);// Устанавливаем момент работы игрока на 1..
    SetPVarInt(playerid,"JobY",GetPVarInt(playerid,"JobY")+1);// Прибавим к вещам игрока 1
    new str[128],checkp = random(MAX_PCHECK);
    format(str,sizeof(str),"* Вещей перетащенно: {ff0000}%d",GetPVarInt(playerid,"JobY"));
    SendClientMessage(playerid,0xFFFFFFAA,str);// Выведем сообщение
    SetPlayerCheckpoint(playerid,pcheck[checkp][0],pcheck[checkp][1],pcheck[checkp][2],1.5);// Создаём один из чекпоинтов
}
Как сделать так, чтобы переодеваться можно было на одном пикапе, а зарплату забирать на другом?
 
Последнее редактирование модератором:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу