Вопросы

Здравствуйте! Я решил изменить раздевалку для ВЧ в моде (хочу добавить несколько скинов), но не знаю как, можете помочь пожалуйста ?

Вот коды 

Спойлер

Пикап

    if(pickupid == armskin)
    {
        if(p_info[playerid][pMember] != TEAM_ARMY) return 1;
        if(p_info[playerid][pRank] < 4) return ShowPlayerDialogEx(playerid, 15419, DIALOG_STYLE_LIST, "{ebec86}>> Раздевалка", "1. Полевая\n2. Повседневная", "Выбрать", "Отмена");
        ShowPlayerDialogEx(playerid, 15419, DIALOG_STYLE_LIST, "{ebec86}>> Раздевалка", "1. Полевая\n2. Спортивная\n3. Парадная", "Выбрать", "Отмена");
    }

 

Спойлер

Диалог

 

    case 15419:
        {
            if(!response) return 1;
            static const list_skins[3] = {287,179,255};
            SetPlayerSkin(playerid, list_skins[listitem]);
            SendClientMessage(playerid, COLOR_GREEN, (listitem == 0) ? ("Вы переоделись в постовую форму") :
            (listitem == 1) ? ("Вы переоделись в спортивную форму") : ("Вы переоделись в парадную форму"));
        }

 

Мне нужно сделать так, чтобы 1 и 2 ранги могли видеть и брать соответственно лишь 73 скин (полевая форма) и 287 скин (боевая форма)

3 и 4ранги могли видеть и брать лишь 98 скин (полевая форма) и 287 скин (боевая форма)

5 ранг мог видеть и брать лишь 255 скин (офисная форма) и 206 скин (полевая форма)

6 и 7 ранги могли видеть и брать лишь 250 скин (офисная форма) и 206 скин (полевая форма)

8 и 9 ранги могли видеть и брать лишь 179 скин (офисная форма) и 206 скин (полевая форма)

10 ранг мог видеть и брать лишь 61 скин (офисная форма) и 206 скин (полевая форма)

Отредактировано пользователем Lt.Andrew

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


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

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

  • 0

@Lt.Andrew, что-нибудь вроде такого:

 

Спойлер

if (pickupid == armskin) {
    if (p_info[playerid][pMember] != TEAM_ARMY) {
        return true;
    }
    
    static const texts[][] = {
        "1. Полевая\n2. Боевая",
        "1. Офисная\n2. Полевая"
    };
    
    ShowPlayerDialogEx(playerid, 15419, DIALOG_STYLE_LIST, "{ebec86}>> Раздевалка", texts[p_info[playerid][pRank] >= 5], "Выбрать""Отмена");
}

case 15419: {
    if (!response) {
        return true;
    }
    
    static const skins[][] = {
        {73287}, // 1 rank
        {73287}, // 2 rank
        {98287}, // 3 rank
        {98287}, // 4 rank
        {255206}, // 5 rank
        {250206}, // 6 rank
        {250206}, // 7 rank
        {179206}, // 8 rank
        {179206}, // 9 rank
        {61206}, // 10 rank
    };
    
    SetPlayerSkin(playerid, skins[p_info[playerid][pRank] - 1][listitem]);
       
    static const messages[][] = {
        "Вы переоделись в полевую форму",
        "Вы переоделись в боевую форму",
        "Вы переоделись в офисную форму",
        "Вы переоделись в полевую форму"
    };
    
    new cond = p_info[playerid][pRank] >= 5;
    SendClientMessage(playerid, COLOR_GREEN, messages[2 * cond + listitem]);
}

 

 

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


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

Хмммм...

У меня при вставке этих кодов, выдаёт 2 ошибки.

доки.png

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


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

@Lt.Andrew, только что проверил – ошибок при компиляции нет. Укажите строки, которые не нравятся компилятору.

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


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

32723 в обоих ошибках

Вот эта строчка (отметил красным):

Спойлер

    case 15419: {
        if (!response) {
            return true;
         }

        static const skins[][] = {
            {73, 287}, // 1 rank
            {73, 287}, // 2 rank
            {98, 287}, // 3 rank
            {98, 287}, // 4 rank
            {255, 206}, // 5 rank
            {250, 206}, // 6 rank
            {250, 206}, // 7 rank
            {179, 206}, // 8 rank
            {179, 206}, // 9 rank
            {61, 206}, // 10 rank
            
           };

    SetPlayerSkin(playerid, skins[p_info[playerid][pRank] - 1][listitem]);

 

    static const messages[][] = {
        "Вы переоделись в полевую форму",
        "Вы переоделись в боевую форму",
        "Вы переоделись в офисную форму",
        "Вы переоделись в полевую форму"
    };

    new cond = p_info[playerid][pRank] >= 5;
    SendClientMessage(playerid, COLOR_GREEN, messages[2 * cond + listitem]);
    }

 

Отредактировано пользователем Lt.Andrew

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


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

@Lt.Andrew, ну, как вариант, задайте явно размер вектора массива и уберите запятую после последнего вектора:

static const skins[][2] = {
    {73287}, // 1 rank
    {73287}, // 2 rank
    {98287}, // 3 rank
    {98287}, // 4 rank
    {255206}, // 5 rank
    {250206}, // 6 rank
    {250206}, // 7 rank
    {179206}, // 8 rank
    {179206}, // 9 rank
    {61206// 10 rank
};

 

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


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

Хмммм...
Да, теперь всё заработало. Спасибо Вам большое! :3

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


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

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

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

    • nazpol9
      От nazpol9
      Привет всем.

      У меня имеется мод для самп сервера и VPS с Ubuntu, на котором я пытаюсь его запустить.

      В чем суть проблемы: при запуске samp03svr, сервер запускается, но на версии 0.3.DL R-1. Когда я пытаюсь запустить этот же мод локально на Windows, сервер работает на версии 0.3.7 и я могу зайти на него без клиента 0.3.DL.

      Для решения этой проблемы я уже пробовал заменять инклуды и исполнительные файлы теми, что есть в архивах на официальном сайте сампа, перекомпилировал мод, и ничего не изменилось.

      Если у кого-то будут какие-либо догадки, прошу ими поделиться, если понадобится больше информации - я постараюсь её предоставить.
    • Talex
      От Talex
      Всем привет, сливаю первый мод!
      Информация о моде:

      — Основа Gamenix.
      — Мод переведен на Mysql R39, теперь ни каких слётов нет, мод работает стабильно с онлайном 160+.
      — Новый автосалон на TextDraw.
      — Система 3-х автомобилей (1 можно купить по дефолту, 2 и 3 за донат).
      — Автомобили у игроков теперь не пропадают (Id'ы авто сбивались, с номерами теперь тоже всё в порядке).
      — Оформление сервера полностью переработано, теперь оно более красивое.
      — Защита от копирования карты.
      — в меню сервера добавлен пункт визуальных настроек.
      — Номера на транспорт теперь можно приобрести в /donate.
      — Сделан новый красивый спидометр.
      — При получении номера, добавлен выбор региона.
      — Сделана система радаров и промокодов, создание прямо из игры.
      — Новый интерьер казино.
      — Магазин скинов теперь на TextDraw.
      — Автошкола полностью функционирует.
      — Добавлена информация после коннекта о последнем входе в собственный аккаунт.
      — Приватная защита от всех видов DDoS атак и DoS атак.                                                                                                                                    
      — пароль от АП (/alog) теперь у каждого администратора индивидуальный.
      — Изменено оформление самого мода
      Это не все изменения мода, их ещё очень много. все не упомнишь. 
      Автор мода: Неизвестен
      CUNBERS RP 8.4.3.rar
       

    • Tufxgod
      От Tufxgod
      Пойду на проект в качестве разработчика.
      Опыт в павн 2 года, умею писать системы любой сложности, владею mysql.
      Пишите в лс!