Вопросы по CLEO-скриптингу

Bogach

Активный
558
27
Привет ребят.
Такая просьба, если не сложно, может кто-нибудь написать простенький пример DXUT диалогов с использованием listbox'a и двумя пунктами выбора в листбоксе, на ":Label".. Заранее спасибо.
Ну допустим
Код:
{$CLEO}

0000:

:Dialog_1
wait 300 ms
0AFA:  is_samp_available
jf @Dialog_1
0B34: samp register_client_command "dialog" to_label @Dialog_2
0BDE: pause_thread 0

:Dialog_2
0B80: dialog 0@ = create "Dialog"
0B84: dialog 0@ set_pos_XY 900 500 size 300 300
0B99: dialog 0@ add_listbox id 6 pos_XY 0 0 size 300 260
jump @Dialog_3

:Dialog_3
0B43: samp cmd_ret
А дальше не пойму, как сделать что было 2 пункта выбора в listbox'e и как сделать действия на на выбор какого-то пункта из listbox'a, допустим я выбрал 1-ый пункт два раза кликнул по нему и появился какой-нибудь текст в чате.
 

Lightkiller

Известный
Всефорумный модератор
557
398
Привет ребят.
Такая просьба, если не сложно, может кто-нибудь написать простенький пример DXUT диалогов с использованием listbox'a и двумя пунктами выбора в листбоксе, на ":Label".. Заранее спасибо.
Ну допустим
Код:
{$CLEO}

0000:

:Dialog_1
wait 300 ms
0AFA:  is_samp_available
jf @Dialog_1
0B34: samp register_client_command "dialog" to_label @Dialog_2
0BDE: pause_thread 0

:Dialog_2
0B80: dialog 0@ = create "Dialog"
0B84: dialog 0@ set_pos_XY 900 500 size 300 300
0B99: dialog 0@ add_listbox id 6 pos_XY 0 0 size 300 260
jump @Dialog_3

:Dialog_3
0B43: samp cmd_ret
А дальше не пойму, как сделать что было 2 пункта выбора в listbox'e и как сделать действия на на выбор какого-то пункта из listbox'a, допустим я выбрал 1-ый пункт два раза кликнул по нему и появился какой-нибудь текст в чате.
https://www.blast.hk/wiki/tutorials:dxut_dialogs
 

Bogach

Активный
558
27
https://www.blast.hk/wiki/tutorials:dxut_dialogs
Я смотрел, но там немного иначе сделано и не могу понять, как во первых сделать два и более пункта в меню и действия на выбор пункта в листбоксе где писать незнаю, в другом ли лабеле или в том же, где и создание диалогов и т.д Поэтому и попросил примерчик.
 

AWRage

Активный
642
141
Как работает антиАФК, на чем основан? Хотел код глянуть, но скрипты закриптованы.
 

Evgeniy13

Новичок
40
1
Ребят, подскажите как можно записать часть строки в переменную? Например у меня есть предложение:"растет зеленая трава". И мне нужно записать в переменную то, что находится между словом "растет" и "зеленая".
 

Bogach

Активный
558
27
Привет ребят.
Такая просьба, если не сложно, может кто-нибудь написать простенький пример DXUT диалогов с использованием listbox'a и двумя пунктами выбора в листбоксе, на ":Label".. Заранее спасибо.
Ну допустим
Код:
{$CLEO}

0000:

:Dialog_1
wait 300 ms
0AFA:  is_samp_available
jf @Dialog_1
0B34: samp register_client_command "dialog" to_label @Dialog_2
0BDE: pause_thread 0

:Dialog_2
0B80: dialog 0@ = create "Dialog"
0B84: dialog 0@ set_pos_XY 900 500 size 300 300
0B99: dialog 0@ add_listbox id 6 pos_XY 0 0 size 300 260
jump @Dialog_3

:Dialog_3
0B43: samp cmd_ret
А дальше не пойму, как сделать что было 2 пункта выбора в listbox'e и как сделать действия на на выбор какого-то пункта из listbox'a, допустим я выбрал 1-ый пункт два раза кликнул по нему и появился какой-нибудь текст в чате.
Поможет кто-нибудь? Буду очень благодарен.
 

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,696
1,463
Поможет кто-нибудь? Буду очень благодарен.
CLEO:
{$CLEO}

0000:

:Dialog_1
wait 300 ms
0AFA:  is_samp_available
jf @Dialog_1
0B34: samp register_client_command "dialog" to_label @Dialog_2

while true
    wait 0
    if 0BAB: dialog 0@ is_exists
    then
        if 0B81: dialog 0@ pop_event_to 1@ control_id_to 2@
        then
            if 1@ == 1793 // EVENT_LISTBOX_ITEM_DBLCLK
            then
                0B9B: dialog 0@ listbox 2@ selected_element_to 3@ elements_count_to 0
              
                0AC8: 4@ = allocate_memory_size 64
                0B9D: dialog 0@ listbox 2@ element 3@ store_text_to 4@ data_to 5@
                0AF8: samp add_message_to_chat "Double click: listbox %d, element %d(name: \"%s\", data: %p)" color -1 params 2@ 3@ 4@ 5@
                0AC9: free_allocated_memory 4@
            end
        end
    end
end

:Dialog_2
0B80: dialog 0@ = create "Dialog"
0B84: dialog 0@ set_pos_XY 900 500 size 300 300
0B99: dialog 0@ add_listbox id 6 pos_XY 0 0 size 300 260
0B9A: dialog 0@ listbox 6 insert_element "Element #1" with_data 1 after -1
0B9A: dialog 0@ listbox 6 insert_element "Element #2" with_data 2 after -1
0B43: samp cmd_ret
 
  • Нравится
Реакции: artF

Bogach

Активный
558
27
CLEO:
{$CLEO}

0000:

:Dialog_1
wait 300 ms
0AFA:  is_samp_available
jf @Dialog_1
0B34: samp register_client_command "dialog" to_label @Dialog_2

while true
    wait 0
    if 0BAB: dialog 0@ is_exists
    then
        if 0B81: dialog 0@ pop_event_to 1@ control_id_to 2@
        then
            if 1@ == 1793 // EVENT_LISTBOX_ITEM_DBLCLK
            then
                0B9B: dialog 0@ listbox 2@ selected_element_to 3@ elements_count_to 0
             
                0AC8: 4@ = allocate_memory_size 64
                0B9D: dialog 0@ listbox 2@ element 3@ store_text_to 4@ data_to 5@
                0AF8: samp add_message_to_chat "Double click: listbox %d, element %d(name: \"%s\", data: %p)" color -1 params 2@ 3@ 4@ 5@
                0AC9: free_allocated_memory 4@
            end
        end
    end
end

:Dialog_2
0B80: dialog 0@ = create "Dialog"
0B84: dialog 0@ set_pos_XY 900 500 size 300 300
0B99: dialog 0@ add_listbox id 6 pos_XY 0 0 size 300 260
0B9A: dialog 0@ listbox 6 insert_element "Element #1" with_data 1 after -1
0B9A: dialog 0@ listbox 6 insert_element "Element #2" with_data 2 after -1
0B43: samp cmd_ret
Элементы не выделяются, не кликаются.
 

Bogach

Активный
558
27
Да. Я Нажимал F6 и курсором кликал по элементу, так не выделяется, а если через ТАБ, то выделяется и работает, но суть не в этом.
Допустим, я хочу чтобы, нажав на первый элемент в чате появился один текст, нажав на другой элемент появился в чате совершенно другой текст, не название элемента, не какая - то характеристика элемента, а именно текст который будет указан, я в коде сделал такое для первого элемента, но текст при клике не показывается, подскажите, что я сделал не так? Заранее спасибо.
Код:
{$CLEO}
0000:

:Dialog_1
wait 300 ms
0AFA:  is_samp_available
jf @Dialog_1
0B34: samp register_client_command "dialog" to_label @Dialog_2

While true
wait 0 ms
if 0BAB:     dialog 0@ is_exists
then
    if 0B81: dialog 0@ pop_event_to 1@ control_id_to 1
    then
        if 1@ ==1793 // EVENT_LISTBOX_ITEM_DBLCLK
        then
            if 0B9B: dialog 0@ listbox 6 selected_element_to 1 elements_count_to 2
            then
                0AF8: samp add_message_to_chat "Выбран Element #1" color -1
             end
          end
      end
   end
end

                
:Dialog_2
0B80: dialog 0@ = create "текст"
0B84: dialog 0@ set_pos_XY 900 500 size 300 300
0B99: dialog 0@ add_listbox id 6 pos_XY 0 0 size 300 260
0B9A: dialog 0@ listbox 6 insert_element "Element #1" with_data 1 after -1
0B9A: dialog 0@ listbox 6 insert_element "Element #2" with_data 2 after -1
0B43: samp cmd_ret
 
Последнее редактирование:

hnnssy

Известный
Друг
2,684
2,753
Да. Я Нажимал F6 и курсором кликал по элементу, так не выделяется, а если через ТАБ, то выделяется и работает, но суть не в этом.
Допустим, я хочу чтобы, нажав на первый элемент в чате появился один текст, нажав на другой элемент появился в чате совершенно другой текст, не название элемента, не какая - то характеристика элемента, а именно текст который будет указан, я в коде сделал такое для первого элемента, но текст при клике не показывается, подскажите, что я сделал не так? Заранее спасибо.
Код:
{$CLEO}
0000:

:Dialog_1
wait 300 ms
0AFA:  is_samp_available
jf @Dialog_1
0B34: samp register_client_command "dialog" to_label @Dialog_2

while true
    wait 0
    if 0BAB: dialog 0@ is_exists
    then
        if 0B81: dialog 0@ pop_event_to 1@ control_id_to 2@
        then
            if 1@ == 1793 // EVENT_LISTBOX_ITEM_DBLCLK
            then
                if 0B9B: dialog 0@ listbox 2@ selected_element_to 1 elements_count_to 1
                then
                    0AF8: samp add_message_to_chat " Нажат Элемент 1" color -1
                end
            end
        end
    end
end

:Dialog_2
0B80: dialog 0@ = create "Test"
0B84: dialog 0@ set_pos_XY 900 500 size 300 300
0B99: dialog 0@ add_listbox id 6 pos_XY 0 0 size 300 260
0B9A: dialog 0@ listbox 6 insert_element "Element #1" with_data 1 after -1
0B9A: dialog 0@ listbox 6 insert_element "Element #2" with_data 2 after -1
0B43: samp cmd_ret
А ты хоть справку читал?
 

Bogach

Активный
558
27
Да. Нет ничего, что могло бы мне помочь в этой маленькой проблеме, поэтому и прошу вас.
 

Evgeniy13

Новичок
40
1
Ребят, мне нужно узнать ID игрока который пишет в чат и записать его в переменную. Как это сделать? Или если ID уже пишется в чате в скобках []. Как его из скобок вырезать и записать в чат?