Цвета /clist (Full Copy SAMP RP)

Добро пожаловать!

Зарегистрировавшись у нас, вы сможете обсуждать, делиться и отправлять личные сообщения другим участникам нашего сообщества.

Зарегистрироваться!
  • Если Вы желаете помогать развитию проекта, готовы заполнять раздел(-ы) и подсказывать другим пользователям на портале, есть возможность попасть в команду редакторов. Для этого следует обратиться в техническую поддержку
Пользователь
Регистрация
24 Окт 2023
Сообщения
53
Ко всем define добавьте
Pawn:
#define Cvet_1 0x00ff00FF
#define Cvet_2 0xbfff00FF
#define Cvet_3 0x66ff00FF
#define Cvet_4 0x30d5c8FF
#define Cvet_5 0xadff2fFF
#define Cvet_6 0x013220FF
#define Cvet_7 0x5da130FF
#define Cvet_8 0xff0000FF
#define Cvet_9 0xff2400FF
#define Cvet_10 0xffa500FF
#define Cvet_11 0x964b00FF
#define Cvet_12 0xc41e3aFF
#define Cvet_13 0xbb4488FF
#define Cvet_14 0xff9900FF
#define Cvet_15 0xdc143cFF
#define Cvet_16 0xffc0cbFF
#define Cvet_17 0x0000ffFF
#define Cvet_18 0x42aaffFF
#define Cvet_19 0x1e90ffFF
#define Cvet_20 0x008080FF
#define Cvet_21 0x4169E1FF
#define Cvet_22 0x8b00ffFF
#define Cvet_23 0xcd00cdFF
#define Cvet_24 0xa2a0f6FF
#define Cvet_25 0xffff00FF
#define Cvet_26 0xfbec5dFF
#define Cvet_27 0xffd700FF
#define Cvet_28 0xcfb53bFF
#define Cvet_29 0x808000FF
#define Cvet_30 0xbbbbbbFF
#define Cvet_31 0xc0c0c0FF
#define Cvet_32 0x000000FF
#define Cvet_33 0xffffffFF

Потом,добавим команду
Pawn:
if(strcmp("/clist", cmdtext, true) == 0) {
    if(!gPlayerLogged[playerid])
        return 1;
    
    new rabotadialog[1024];
    for(new i; i < sizeof(clist); i++) {
        new tmp_str[30];
        format(tmp_str, sizeof tmp_str, "%s\n", clist[i]);
        strcat(rabotadialog, tmp_str);
    }
    return ShowPlayerDialog(playerid,56,DIALOG_STYLE_LIST,"Меню цвета",rabotadialog,"Выбрать","Отмена");
}

Ко всем new
Pawn:
new clist[35][] = {
/*0*/ {"[0]Выключить цвет\n"},
/*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] Жёлто-оранжевый\n"},
/*15*/ {"[15] Малиновый\n"},
/*16*/ {"[16] Розовый\n"},
/*17*/ {"[17] Синий\n"},
/*18*/ {"[18] Голубой\n"},
/*19*/ {"[19] Синяя сталь\n"},
/*20*/ {"[20] Сине-зелёный\n"},
/*21*/ {"[21] Темно-синий\n"},
/*22*/ {"[22] Фиолетовый\n"},
/*23*/ {"[23] Индиго\n"},
/*24*/ {"[24] Серо-синий\n"},
/*25*/ {"[25] Желтый\n"},
/*26*/ {"[26] Кукурузный\n"},
/*27*/ {"[27] Золотой\n"},
/*28*/ {"[28] Старое золото\n"},
/*29*/ {"[29] Оливковый\n"},
/*30*/ {"[30] Серый\n"},
/*31*/ {"[31] Серебро\n"},
/*32*/ {"[32] Черный\n"},
/*33*/ {"[33] Белый\n"},
/*34*/ {""}
};

Потом в public OnDialogResponse
Pawn:
if(dialogid == 56)//цвета
{
    if(response) {
        switch(listitem) {
            case 0: SetPlayerColor(playerid,Cvet_1);
            case 1: SetPlayerColor(playerid,Cvet_2);
            case 2: SetPlayerColor(playerid,Cvet_3);
            case 3: SetPlayerColor(playerid,Cvet_4);
            case 4: SetPlayerColor(playerid,Cvet_5);
            case 5: SetPlayerColor(playerid,Cvet_6);
            case 6: SetPlayerColor(playerid,Cvet_7);
            case 7: SetPlayerColor(playerid,Cvet_8);
            case 8: SetPlayerColor(playerid,Cvet_9);
            case 9: SetPlayerColor(playerid,Cvet_10);
            case 10: SetPlayerColor(playerid,Cvet_11);
            case 11: SetPlayerColor(playerid,Cvet_12);
            case 12: SetPlayerColor(playerid,Cvet_13);
            case 13: SetPlayerColor(playerid,Cvet_14);
            case 14: SetPlayerColor(playerid,Cvet_15);
            case 15: SetPlayerColor(playerid,Cvet_16);
            case 16: SetPlayerColor(playerid,Cvet_17);
            case 17: SetPlayerColor(playerid,Cvet_18);
            case 18: SetPlayerColor(playerid,Cvet_19);
            case 19: SetPlayerColor(playerid,Cvet_20);
            case 20: SetPlayerColor(playerid,Cvet_21);
            case 21: SetPlayerColor(playerid,Cvet_22);
            case 22: SetPlayerColor(playerid,Cvet_23);
            case 23: SetPlayerColor(playerid,Cvet_24);
            case 24: SetPlayerColor(playerid,Cvet_25);
            case 25: SetPlayerColor(playerid,Cvet_26);
            case 26: SetPlayerColor(playerid,Cvet_27);
            case 27: SetPlayerColor(playerid,Cvet_28);
            case 28: SetPlayerColor(playerid,Cvet_29);
            case 29: SetPlayerColor(playerid,Cvet_30);
            case 30: SetPlayerColor(playerid,Cvet_31);
            case 31: SetPlayerColor(playerid,Cvet_32);
            case 32: SetPlayerColor(playerid,Cvet_33);
        }
    }
    return 1;
}
Урок закончен спасибо за внимание
Вырезал из мода Real*Game
Идея : Samp-Rp
 
pawn love
Активный
Регистрация
26 Сен 2023
Сообщения
245
делай код не через спойлер, а через кнопку кода, так и подсветка будет и понятней сам код будет
 
pawn love
Активный
Регистрация
26 Сен 2023
Сообщения
245
немного не так сделал, смотри

Pawn:
во, так
if(PI[playerid][pAdmin] < 7)
к примеру
 
Заблокированный
Активный
Регистрация
30 Дек 2023
Сообщения
210
выколите мне глаза и сотрите память
 
Активный
Регистрация
20 Окт 2023
Сообщения
125
Pawn:
CMD:clist(playerid, params[])
{
    ShowDialog(playerid, 858, DIALOG_STYLE_LIST, "Выбор цвета", [1] Белый\n[2] Зеленый", "Ок", "Отмена");
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(GetPVarInt(playerid,"Dialogid") != dialogid) return true;
    DeletePVar(playerid, "Dialogid");
    for(new position = 0; (position = strfind(inputtext, "%", true, position)) != -1;) inputtext[position] = '#';
    switch(dialogid)
    {
        case 858:
        {
            if(!response) return 1;
            switch(listitem)
            {
                case 0: SetPlayerColor(playerid, 0xFFFFFFAA);
                case 1: SetPlayerColor(playerid, 0x00FF06AA);
            }  
        }
    }
}

Вот так бы код выглядел бы намного лучше...
 
Последнее редактирование модератором:
Создатель WayDev
Команда форума
Администратор
Регистрация
13 Мар 2022
Сообщения
865
Переписал команду, имхо это ужас. К коду диалога даже притрагиваться не стал.
 
Пользователь
Регистрация
28 Мар 2022
Сообщения
88
@UNDEADIX, да нахуя вам этот диалог то нужен когда через enum можно все красивенько сделать

хотя ладно беру свои слова обратно щас скажете предлагаешь сделай, а мне ваще лень даже это сообщение писать
 
Последнее редактирование:
Сверху