Рекомендованные сообщения



4 posts in this topic

Привет, я делал работу, но я хочу сделать что бы выдавался скин и когда человек заканчивал работать у него он пропадал

 

Спойлер

new LesJob[MAX_PLAYERS];

 

Спойлер

public OnPlayerDisconnect(playerid, reason)
{
    LesJob[playerid] = 0;
}

 

Спойлер

        if(LesJob[playerid] == 1)
        {
            if(IsPlayerAttachedObjectSlotUsed(playerid, 1))
            {
                SendClientMessage(playerid, COLOR_YELLOW, "Информация: {ffffff}Вы уронили древесину.");
                RemovePlayerAttachedObject(playerid,1);// Удаляем объект из рук
                RemovePlayerAttachedObject(playerid,2);// Удаляем объект из рук
                SetPlayerAttachedObject(playerid,0,341,6);
                DisablePlayerCheckpoint(playerid);//Удаляем старый чекпоинт
                pLes[playerid]=cLesIN;//Показываем снова откуда брать
                  ApplyAnimation(playerid,"PED","IDLE_tired",4.1,0,1,1,0,1);
                switch(random(8))
                {
                    case 0: SetPlayerCheckpoint(playerid, 1777.4689,1376.9280,9.7621, 2.0);
                    case 1: SetPlayerCheckpoint(playerid, 1770.4738,1370.3153,9.7621, 2.0);
                    case 2: SetPlayerCheckpoint(playerid, 1765.9247,1347.9548,9.7556, 2.0);
                    case 3: SetPlayerCheckpoint(playerid, 1747.8583,1343.0192,9.7556, 2.0);
                    case 4: SetPlayerCheckpoint(playerid, 1751.6307,1335.2753,9.7556, 2.0);
                    case 5: SetPlayerCheckpoint(playerid, 1758.4377,1415.1527,9.7621, 2.0);
                    case 6: SetPlayerCheckpoint(playerid, 1776.0068,1406.7897,9.7814, 2.0);
                    case 7: SetPlayerCheckpoint(playerid, 1808.8218,1417.3912,9.7621, 2.0);
                }
            }
        }
        ////////////////////////////////////////////////////////////////////////////
    }

 

Спойлер

      if(LesJob[playerid] == 1)
    {
        switch(pLes[playerid])
         {
                case cLesIN://Пришли,взяли,нам показали куда идти.
                {
                    SetPlayerSkin(playerid,161);
                    new player_state = GetPlayerState(playerid);
                    if(player_state == PLAYER_STATE_DRIVER || player_state == PLAYER_STATE_PASSENGER) return false;
                    DisablePlayerCheckpoint(playerid);
                    pLes[playerid]=cLesOUT;
                    if(pila[playerid] == 1)
                    {
                        ApplyAnimation(playerid,"CHAINSAW","WEAPON_csaw",1.0,1,0,0,0,3000,0);
                        SetTimerEx("WoodLoaded",3000,false,"i",playerid);
                    }
                    else
                    {
                        ApplyAnimation(playerid,"CHAINSAW","WEAPON_csaw",1.0,1,0,0,0,9000,0);
                        SetTimerEx("WoodLoaded",9000,false,"i",playerid);
                    }
                }
                case cLesOUT:
                {
                    bag[playerid] = 20 + random(60);
                    DisablePlayerCheckpoint(playerid);//Удаляем старый чекпоинт
                    pLes[playerid]=cLesIN;//Показываем снова откуда брать
                    RemovePlayerAttachedObject(playerid,1);// Удаляем объект из рук
                    RemovePlayerAttachedObject(playerid,2);// Удаляем объект из рук
                    SetPlayerAttachedObject(playerid,0,341,6);
                       ApplyAnimation(playerid,"PED","IDLE_tired",4.1,0,1,1,0,1);
                    switch(random(8))
                    {
                        case 0: SetPlayerCheckpoint(playerid, 1777.4689,1376.9280,9.7621, 2.0);
                        case 1: SetPlayerCheckpoint(playerid, 1770.4738,1370.3153,9.7621, 2.0);
                        case 2: SetPlayerCheckpoint(playerid, 1765.9247,1347.9548,9.7556, 2.0);
                        case 3: SetPlayerCheckpoint(playerid, 1747.8583,1343.0192,9.7556, 2.0);
                        case 4: SetPlayerCheckpoint(playerid, 1751.6307,1335.2753,9.7556, 2.0);
                        case 5: SetPlayerCheckpoint(playerid, 1758.4377,1415.1527,9.7621, 2.0);
                        case 6: SetPlayerCheckpoint(playerid, 1776.0068,1406.7897,9.7814, 2.0);
                        case 7: SetPlayerCheckpoint(playerid, 1808.8218,1417.3912,9.7621, 2.0);
                    }
                    new stri[512];
                    bagALL[playerid] += bag[playerid];
                    format(stri, 512, "Информация: {ffffff}Вы принесли: %d древесины.", bag[playerid]);//Простейший формат.
                    SendClientMessage(playerid, COLOR_YELLOW, stri);//Отошлем сколько в итоге мы перенесли
                }
          }
      }

 

Спойлер

      if(LesJob[playerid] == 1)
    {
        switch(pLes[playerid])
         {
                case cLesIN://Пришли,взяли,нам показали куда идти.
                {
                    SetPlayerSkin(playerid,161);
                    new player_state = GetPlayerState(playerid);
                    if(player_state == PLAYER_STATE_DRIVER || player_state == PLAYER_STATE_PASSENGER) return false;
                    DisablePlayerCheckpoint(playerid);
                    pLes[playerid]=cLesOUT;
                    if(pila[playerid] == 1)
                    {
                        ApplyAnimation(playerid,"CHAINSAW","WEAPON_csaw",1.0,1,0,0,0,3000,0);
                        SetTimerEx("WoodLoaded",3000,false,"i",playerid);
                    }
                    else
                    {
                        ApplyAnimation(playerid,"CHAINSAW","WEAPON_csaw",1.0,1,0,0,0,9000,0);
                        SetTimerEx("WoodLoaded",9000,false,"i",playerid);
                    }
                }
                case cLesOUT:
                {
                    bag[playerid] = 20 + random(60);
                    DisablePlayerCheckpoint(playerid);//Удаляем старый чекпоинт
                    pLes[playerid]=cLesIN;//Показываем снова откуда брать
                    RemovePlayerAttachedObject(playerid,1);// Удаляем объект из рук
                    RemovePlayerAttachedObject(playerid,2);// Удаляем объект из рук
                    SetPlayerAttachedObject(playerid,0,341,6);
                       ApplyAnimation(playerid,"PED","IDLE_tired",4.1,0,1,1,0,1);
                    switch(random(8))
                    {
                        case 0: SetPlayerCheckpoint(playerid, 1777.4689,1376.9280,9.7621, 2.0);
                        case 1: SetPlayerCheckpoint(playerid, 1770.4738,1370.3153,9.7621, 2.0);
                        case 2: SetPlayerCheckpoint(playerid, 1765.9247,1347.9548,9.7556, 2.0);
                        case 3: SetPlayerCheckpoint(playerid, 1747.8583,1343.0192,9.7556, 2.0);
                        case 4: SetPlayerCheckpoint(playerid, 1751.6307,1335.2753,9.7556, 2.0);
                        case 5: SetPlayerCheckpoint(playerid, 1758.4377,1415.1527,9.7621, 2.0);
                        case 6: SetPlayerCheckpoint(playerid, 1776.0068,1406.7897,9.7814, 2.0);
                        case 7: SetPlayerCheckpoint(playerid, 1808.8218,1417.3912,9.7621, 2.0);
                    }
                    new stri[512];
                    bagALL[playerid] += bag[playerid];
                    format(stri, 512, "Информация: {ffffff}Вы принесли: %d древесины.", bag[playerid]);//Простейший формат.
                    SendClientMessage(playerid, COLOR_YELLOW, stri);//Отошлем сколько в итоге мы перенесли
                }
          }
      }

 

Спойлер

    if(LesJob[playerid] == 1)
    {
        if(IsPlayerAttachedObjectSlotUsed(playerid, 1))
        {
             if((newkeys & KEY_JUMP) && !(oldkeys & KEY_JUMP) || (newkeys & KEY_FIRE) || (newkeys & KEY_CROUCH))
            {
                SendClientMessage(playerid, COLOR_YELLOW, "Информация: {ffffff}Вы уронили древесину.");
                DisablePlayerCheckpoint(playerid);//Удаляем старый чекпоинт
                pLes[playerid]=cLesIN;//Показываем снова откуда брать
                RemovePlayerAttachedObject(playerid,1);// Удаляем объект из рук
                RemovePlayerAttachedObject(playerid,2);
                SetPlayerAttachedObject(playerid,0,341,6);
                  ApplyAnimation(playerid,"PED","IDLE_tired",4.1,0,1,1,0,1);
                switch(random(8))
                {
                    case 0: SetPlayerCheckpoint(playerid, 1777.4689,1376.9280,9.7621, 2.0);
                    case 1: SetPlayerCheckpoint(playerid, 1770.4738,1370.3153,9.7621, 2.0);
                    case 2: SetPlayerCheckpoint(playerid, 1765.9247,1347.9548,9.7556, 2.0);
                    case 3: SetPlayerCheckpoint(playerid, 1747.8583,1343.0192,9.7556, 2.0);
                    case 4: SetPlayerCheckpoint(playerid, 1751.6307,1335.2753,9.7556, 2.0);
                    case 5: SetPlayerCheckpoint(playerid, 1758.4377,1415.1527,9.7621, 2.0);
                    case 6: SetPlayerCheckpoint(playerid, 1776.0068,1406.7897,9.7814, 2.0);
                    case 7: SetPlayerCheckpoint(playerid, 1808.8218,1417.3912,9.7621, 2.0);
                }
            }
        }
    }

 

Спойлер

      if(IsPlayerInRangeOfPoint(playerid,2.0,1831.1531,1450.1713,9.7621))
    {
          if(newkeys == KEY_WALK)
          {
               if(LesJob[playerid] == 0)
             {
                  ShowPlayerDialogFix(playerid,d3,DIALOG_STYLE_MSGBOX,""hEVENCE"Лесопилка","{ffffff}Вы прибыли на работу "hEVENCE"лесоруба.\n{ffffff}Ваша задача состоит в том, чтобы срубать деревья и носить древесину на склад.\n\n{FFFFFF}Вы желаете начать работу?","Да","Нет");//Покажем диалог если зашли на пикап
            }
            if(LesJob[playerid] == 1)
            {
                ShowPlayerDialogFix(playerid,d4,DIALOG_STYLE_MSGBOX,""hEVENCE"Лесопилка","{ffffff}Вы желаете закончить рабочий день и забрать деньги?","Да","Нет");//Покажем диалог если зашли на пикап
            }
        }
      }

 

Спойлер

        case d3:
        {
            if(!response) return true;
              if(response)//Если нажали на левую кнопку
             {
                 if(LesJob[playerid] == 0)
                 {
                        SetPlayerSkin(playerid,161);
                        SendClientMessage(playerid, COLOR_YELLOW, "Информация: {ffffff}Теперь отправляйтесь срубать деревья в лес.");
                        LesJob[playerid] = 1;
                        pLes[playerid]=cLesIN;//Установим значения чекпоинта на показ его.
                        SetPlayerAttachedObject(playerid,0,341,6);
                        switch(random(8))
                        {
                            case 0: SetPlayerCheckpoint(playerid, 1777.4689,1376.9280,9.7621, 2.0);
                            case 1: SetPlayerCheckpoint(playerid, 1770.4738,1370.3153,9.7621, 2.0);
                            case 2: SetPlayerCheckpoint(playerid, 1765.9247,1347.9548,9.7556, 2.0);
                            case 3: SetPlayerCheckpoint(playerid, 1747.8583,1343.0192,9.7556, 2.0);
                            case 4: SetPlayerCheckpoint(playerid, 1751.6307,1335.2753,9.7556, 2.0);
                            case 5: SetPlayerCheckpoint(playerid, 1758.4377,1415.1527,9.7621, 2.0);
                            case 6: SetPlayerCheckpoint(playerid, 1776.0068,1406.7897,9.7814, 2.0);
                            case 7: SetPlayerCheckpoint(playerid, 1808.8218,1417.3912,9.7621, 2.0);
                        }
                  }
             }
        }
        case d4:
        {
            if(!response) return true;
              if(response)//Если нажали на левую кнопку
             {
                if(LesJob[playerid] == 1)
                {

                    LesJob[playerid] = 0;//Вернем на 0 чтобы мы могли снова работать
                    new string[512];
                    format(string, 512, "Информация: {ffffff}Вы заработали: {63BD4E}%d рублей{ffffff}.", bagALL[playerid]*3);//Кол-во умноженное на то же число что и зп.
                    SendClientMessage(playerid, COLOR_GREEN, string);
                    if(PLAYER_DATA[playerid][data_MEMBER] != 0 && PLAYER_DATA[playerid][data_JOBIN] == 1)SetPlayerSkinAC(playerid,PLAYER_DATA[playerid][data_SKINM]);
                       else SetPlayerSkinAC(playerid,PLAYER_DATA[playerid][data_OSNSLOT]);
                    give_player_money(playerid,bagALL[playerid]*3,"#5");
                    bagALL[playerid] = 0;
                    bag[playerid] = 0;
                    DisablePlayerCheckpoint(playerid);//Удаляем старый чекпоинт
                    RemovePlayerAttachedObject(playerid,1);// Удаляем объект из рук
                    RemovePlayerAttachedObject(playerid,0);// Удаляем объект из рук
                    RemovePlayerAttachedObject(playerid,2);// Удаляем объект из рук
                  }
             }
        }
        case d5:
        {
              if(response)//Если нажали на левую кнопку
             {
                if(pila[playerid] == 1) return SendClientMessage(playerid, COLOR_GREY, "У Вас уже есть новая бензопила!");
                if(LesJob[playerid] != 1) return SendClientMessage(playerid, COLOR_GREY, "Только для лесорубов!");
                if(get_player_money(playerid) < 1000) return SendClientMessage(playerid, COLOR_YELLOW, "Ошибка: {ffffff}У Вас недостаточно средств!");
                give_player_money(playerid,-1000,"#5");
                 pila[playerid] = 1;
                 SendClientMessage(playerid, COLOR_YELLOW, "Спасибо за покупку! Удачи тебе в работе...");
             }
         }

 

Share this post


Link to post
Share on other sites

В case d3: добавь SetPlayerSkin(playerid,ИД СКИНА);

Share this post


Link to post
Share on other sites

@Lil Pokemon А как сделать после как игрок закончит работать скин обратно давался?

Share this post


Link to post
Share on other sites

@Lil Pokemon Извиняюсь, я понял, Спасибо огромное!

 

p.s С Наступающим :3

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • Nate_Weny
      By Nate_Weny
      Компиляция: 
      C:\Users\Àäìèí\Desktop\enerhy\gamemodes\evolution.pwn(57653) : error 021: symbol already defined: "pc_cmd_goadminka"
      C:\Users\Àäìèí\Desktop\enerhy\gamemodes\evolution.pwn(57654) : warning 211: possibly unintended assignment
      C:\Users\Àäìèí\Desktop\enerhy\gamemodes\evolution.pwn(57665) : loose indentation
      C:\Users\Àäìèí\Desktop\enerhy\gamemodes\evolution.pwn(57669) : loose indentation
      Нашел команду сделал в мод, поменял пару параметров. Вылазит эта ошибка.
      Код:
      new adminkaon[MAX_PLAYERS]; new adminka; cmd:adminkaon(playerid, params[]) {         new adminaa[64];         if(PlayerInfo[playerid][pAlcoInvenxua] <= 12) return SendClientMessage(playerid, 0xBFC0C2FF, "Òû íå ìîæåøü èñïîëüçîâàòü ýòó êîìàíäó!");         if(sscanf(params,"i",params[0])) return SendClientMessage(playerid, -1, "Ââåäèòå /adminkaon [óðîâåíü]");         SetTimer("adminkaoon", 3000, 0);         adminka = params[0];         SendClientMessage(playerid, 0xFF0000, "Âû óñïåøíî çàïóñòèëè ðàçäà÷ó àäìèíêè");         format(adminaa,sizeof(adminaa),"Âíèìàíèå! Ðàçäà÷à àäìèíêè %s óðîâíÿ íà÷àëàñü!",params[0]);         SendClientMessageToAll(0xFFAAAA,adminaa);         return 1; } cmd:goadminka(playerid, params[]) {         if(adminkaon[playerid] = 0) return 1;         PlayerInfo[playerid][pAlcoInvenxua] = adminka;         SendClientMessage(playerid, 0xFF0000, "Ïîçäðàâëÿåì! Âû ïîëó÷èëè àäìèíêó. Ââåäèòå /alogin!");         return 1; } forward adminkaoon(playerid); public adminkaoon(playerid) {         for(new p; p < GetMaxPlayers(); p++)         {                 if(!IsPlayerConnected(p))continue;         {                         adminkaon[playerid] = 1;                 }         }     return 1; }  
    • Антон Нолмадов
      By Антон Нолмадов


      Просмотр файла ATOM ROLEPLAY | 0.3.7 ОРИГИНАЛ ОТ ВЛАДЕЛЬЦА
      И снова всем здраствуйте, сегодня в продажу входит игровой мод моего бывшего сервера Atom RolePlay 0.3.7 
      Что входит в продажу:
       
      Мод -
      Сборка сервера с худом -
      Сайт -
      Форум -
      Оформление вк
       
      Вкратце про функционал мода: 
      Система домов. 
      Система бизнеса. 
      Система атм. 
      Система радаров. 
      Система транспорта. 
      Система квестов. 
      Есть водный салон где каждый игрок сможет себе покупать лодку и яхту. 
      Есть воздушный транспорт. 
      Мод сделан под бонусник (точнее переделан), многие товары (яхты, автомобили, самолеты, скины) за донат.
       
      ВНИМАТЕЛЬНО!!!!!!!      ПОСЛЕ ПОКУПКИ ИГРОВОГО МОДА ОТПИШИТЕ МНЕ В ВК vk.com/jakenolman (НЕ РЕКЛАМА)
      Добавил Антон Нолмадов Добавлено 23.06.2021 Категория Моды Автор Anton Nolmadov  
    • Антон Нолмадов
      By Антон Нолмадов


      Просмотр файла SUPREME ROLEPLAY | CRMP 0.3.e
      И снова всем здраствуйте, сегодня в продажу входит игровой мод сервера Supreme RolePlay 0.3.e
      Что входит в продажу:
       
      Мод -
      Мод-пак
      Оформление вк
       
      Вкратце про функционал мода: 
      Система домов. 
      Система бизнеса. 
      Система атм. 
      Система радаров. 
      Система транспорта. 
      Система квестов. 
      Есть водный салон где каждый игрок сможет себе покупать лодку и яхту.
      Покупка вертолёта
      Личный мапинг
      Красивая карта 
      Много систем в фракциях
      Система тюнинга
      Есть воздушный транспорт. 
      Мод сделан под бонусник, многие товары (яхты, автомобили, самолеты, скины) за донат.
      Данный мод продавался примерной ценой 1000+
       
      ВНИМАТЕЛЬНО!!!!!!!      ПОСЛЕ ПОКУПКИ ИГРОВОГО МОДА ОТПИШИТЕ МНЕ В ВК vk.com/jakenolman (НЕ РЕКЛАМА)
      Добавил Антон Нолмадов Добавлено 23.06.2021 Категория Моды Автор Anton Nolmadov  
    • Антон Нолмадов
      By Антон Нолмадов
      И снова всем здраствуйте, сегодня в продажу входит игровой мод сервера Supreme RolePlay 0.3.e
      Что входит в продажу:
       
      Мод -
      Мод-пак
      Оформление вк
       
      Вкратце про функционал мода: 
      Система домов. 
      Система бизнеса. 
      Система атм. 
      Система радаров. 
      Система транспорта. 
      Система квестов. 
      Есть водный салон где каждый игрок сможет себе покупать лодку и яхту.
      Покупка вертолёта
      Личный мапинг
      Красивая карта 
      Много систем в фракциях
      Система тюнинга
      Есть воздушный транспорт. 
      Мод сделан под бонусник, многие товары (яхты, автомобили, самолеты, скины) за донат.
      Данный мод продавался примерной ценой 1000+
       
      ВНИМАТЕЛЬНО!!!!!!!      ПОСЛЕ ПОКУПКИ ИГРОВОГО МОДА ОТПИШИТЕ МНЕ В ВК vk.com/jakenolman (НЕ РЕКЛАМА)
    • Антон Нолмадов
      By Антон Нолмадов
      И снова всем здраствуйте, сегодня в продажу входит игровой мод моего бывшего сервера Atom RolePlay 0.3.7 
      Что входит в продажу:
       
      Мод -
      Сборка сервера с худом -
      Сайт -
      Форум -
      Оформление вк
       
      Вкратце про функционал мода: 
      Система домов. 
      Система бизнеса. 
      Система атм. 
      Система радаров. 
      Система транспорта. 
      Система квестов. 
      Есть водный салон где каждый игрок сможет себе покупать лодку и яхту. 
      Есть воздушный транспорт. 
      Мод сделан под бонусник (точнее переделан), многие товары (яхты, автомобили, самолеты, скины) за донат.
       
      ВНИМАТЕЛЬНО!!!!!!!      ПОСЛЕ ПОКУПКИ ИГРОВОГО МОДА ОТПИШИТЕ МНЕ В ВК vk.com/jakenolman (НЕ РЕКЛАМА)