Вопросы

egooor4ik1
Новичок

Добрый день! не могу правильно вставить команду changeskin для лидеров(команда не моя) не понимаю что нужно вставить в PINFO, pModel, pRank, pMember, pLeader.

Помогите пожалуйста..Очень нужно!

Сама команда:

 

CMD:changeskin(playerid, params[])
{
       if(PINFO[playerid][pLeader] >= 1 || PINFO[playerid][pRank] >= 9)
                                                {
                        new skinid;
                        tmp = strtok(cmdtext, idx);
                        if (PINFO[playerid][pLeader] == 0) return SendClientMessage(playerid, COLOR_WHITE, "Вы не лидер");
                        if(!strlen(tmp)) return SendClientMessage(playerid, -1, " Используй: /changeskin [id игрока]");
                        skinid = ReturnUser(tmp);
                        new leader;
                        if(PINFO[playerid][pLeader] > 0) leader = PINFO[playerid][pLeader];
                        else leader = PINFO[playerid][pMember];
                        if(leader == PINFO[skinid][pMember]){
                        SetPVarInt(playerid,"SKIN",skinid);
                                                new rank = PINFO[playerid][pRank];
                                                switch(leader)
                                                {
                                                case 1, 10, 21: // 1, 10, 21 - это id организаций (у меня это ЛСПД, СФПД и ЛВПД)
                                                {
                                                if(rank < 14) return SendClientMessage(playerid, COLOR_WHITE, "Вы должны иметь не меньше 14 ранга для понижения/повышения членов фракции.");
                                                ShowPlayerDialog(playerid, 2350, DIALOG_STYLE_LIST, "Изменение внешности", "\ // диалог 2350 заменить на свой
                                                1. Кадет (1)\n\
                                                2. Офицер (2)\n\
                                                3. Мл. Сержант (3)\n\
                                                4. Сержант (4)\n\
                                                5. Ст. Сержант (5)\n\
                                                6. Прапорщик (6)\n\
                                                7. Ст. Прапорщик (7)\n\
                                                8. Мл. Лейтенант (8)\n\
                                                9. Лейтенант (9)\n\
                                                10. Ст. Лейтенант (10)\n\
                                                11. Капитан (11)\n\
                                                12. Майор (12)\n\
                                                13. Подполковник (13)\n\
                                                14. Полковник (14)", "Выбрать", "Отмена");
                                                }
                // тут продолжаем, т.е case 2:, case 3: и т.д.
return 1;}else{SendClientMessage(playerid, COLOR_WHITE, "Этот человек не в вашей фракции!");return 1;}}return true;}

Case:

case 2350:
                        {
                        if(response)
                        {
                                switch(listitem)
                                {
                           case 0: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 266); //кадет
                           case 1: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 267); //офицер
                           case 2: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 265); //мл.сержант
                           case 3: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 265); //сержант
                           case 4: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 265); //ст.сержант
                           case 5: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 280); //прапорщик
                           case 6: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 280); //ст.прапорщик
                           case 7: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 281); //мл.лейтенант
                           case 8: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 281); //лейтенант
                           case 9: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 281); //ст.лейтенант
                           case 10: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 311); //капитан
                           case 11: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 310); //майор
                           case 12: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 282); //подполковник
                           case 13: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 288); //полковник
                           case 14: SetPlayerSkin(GetPVarInt(playerid,"SKIN"), 283); // шериф
                           }
                                PINFO[GetPVarInt(playerid,"SKIN")][pModel] = GetPlayerSkin(playerid); // меняем скин игрока
                        }
                                }

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


Ссылка на сообщение

2 ответа на этот вопрос

  • 0
Roy Weezy
Старожил

pRank - ранг игрока во фракции
pMember - ид фракции, в которой состоит игрок
pLeader - ид фракции, которой руководит игрок
pModel - ид скина игрока

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


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

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

  • Похожий контент

    • watson
      От watson
      Привет всем!

      Выкладываю рабочий инструмент, который лично писал под задачи для крупных бонусных проектов. От меня недавно произошла доработка - теперь при записи маршрута сохраняются все сообщения, которые вы пишете в чат.
       
      Как это работает Запуск записи:
      Вводите /route с названием скрипта (или биндите на клавишу) — скрипт начинает фиксировать всё ваше передвижение (onfoot/incar/aim пакеты) и любые ваши сообщения в чат. Завершение:
      Ещё раз /route с названием скрипта или /stop — сохраняется маршрут вместе с чатом в файл формата .rt в папке MoonLoader/rakbotRoutes. Воспроизведение:
      Через команду !play <название> в консоли RakSamp LITE — бот воспроизводит маршрут один в один с вашими действиями, повторяет весь ввод, а так-же отправляет в чат все сохранённые сообщения (имитация через Enter). Поддержка цикла:
      Можно включить повтор маршрута (!loop), пока не надоест. Что важно в коде
      Запись всех синк-пакетов (движения, анимации, aim и т.д.):
      Пакеты по движению (onfoot/incar/aim) записываются подробно — никакой халтуры, каждое значение (позиция, кватернион, скорость, анимации, флаги и т.д.) фиксируется для полной копии.  

       
      Запись сообщений чата по индексам
      Каждое сообщение, которое отправляется в чат во время записи маршрута, сохраняется в отдельную таблицу с текущим индексом (counter). То есть при воспроизведении бот знает, на каком этапе какой текст нужно “цитировать” в чат.  

       
      Воспроизведение маршрута и чата
      На каждом этапе воспроизведения проверяется, было ли сообщение в этот момент — если да, оно “отправляется” как будто в оригинале, без задержек и рассинхрона. Пакеты проигрываются по индексу — как только доходит до конца, скрипт сам решает, останавливать ли выполнение или запускать по кругу (если включен loop).  

       
      Формат сохранения
      Файл маршрута содержит не только действия, но и отдельную секцию [chat], что позволяет воспроизвести всё как было, а не только беготню.  

       
       
      Если кому-то реально нужна автоматизация для бонусных серверов и не только как например фейковые игроки и вам важна последовательность действий и чата — этот инструмент сэкономит часы времени. Всё написано максимально просто для внедрения.

      P.S. Если есть определённые проблемы, вопросы или даже идеи для доработки — пишите.
      Desktop.zip
    • gooding
      От gooding
      Всем здравствуйте, уважаемые читатели. Я много времени потратил на доработку данного игрового мода, чтобы его выставить на форум.
      Лог доработок можно посмотреть внизу, а скриншоты игрового мода внизу и верху.
       
       

    • gooding
      От gooding


      Скачать файл PAR RP | Уникальный мод без багов
      Всем здравствуйте, уважаемые читатели. Я много времени потратил на доработку данного игрового мода, чтобы его выставить на форум.
      Лог доработок можно посмотреть внизу, а скриншоты игрового мода внизу и верху.
       
       

      Добавил gooding Добавлено 20.11.2024 Категория Моды Автор GOODING (Я)  
    • bezd2rr
      От bezd2rr
      Как по итогу то забилдить свой лаунчер с гта са? Взять за основу дефолт гта са и засунуть либку билд 69 и все?