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

Lobber

Известный
178
57
да пробовал вроде, уже не помню, голова не соображает. Там этого одного опкода явно маловато будет, опять чет очевидное упускаю, на отдых пойду.
Код ниже оставлю если любопытно.
Это довольно интересная поделка, но если честно я не понимаю, зачем тут есть массив и создание указателя на него, ведь он вообще нигде не задействован. А так, с виду это дело должно рендерить пикапы и некую инфу о них. Возможно из их структуры, судя по оффсетам. Не могу разобрать из-за иероглифов.

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

Если тебе нужен образец поиска и вытаскивания координат из структуры, код ниже
CLEO:
{$CLEO}
0000:

REPEAT
0001: 0
UNTIL 0AFA:
0BB9: samp 0@ = get_pickup_pool_ptr

WHILE TRUE
0001: 0

    FOR 1@ = 0 TO 4096 [STEP = 1]
        IF 0B51: samp 2@ = pickup_handle_by_id 1@
        THEN
        0A90: 2@ = 1@ * 20
        000A: 2@ += 61444
        000A: 2@ += 0@ // stPickup
        0A8D: 3@ = read_memory 2@ size 4 virtual_protect TRUE
            IF 0039:   3@ == ??? //ModelID
            THEN
            0C0C: 3@ = struct 2@ offset 8 size 4 // X
            0C0C: 4@ = struct 2@ offset 12 size 4 // Y
            0C0C: 5@ = struct 2@ offset 16 size 4 // Z
                IF 00C2:   sphere_onscreen 3@ 4@ 5@ radius 5.0
                THEN
                0B55: convert_3D_coords 3@ 4@ 5@ to_screen 3@ 4@
                00A0: store_actor $PLAYER_ACTOR position_to 5@ 6@ 7@
                0B55: convert_3D_coords 5@ 6@ 7@ to_screen 5@ 6@
                0B68: render draw_line_point1 5@ 6@ point2 3@ 4@ width 1 color 0xFFFFA500
                END
            END
        END
    END   
END
 
Последнее редактирование:
  • Bug
Реакции: MAHEKEH

Lobber

Известный
178
57
К слову о рендере, мб кто знает. В оригинальном луа скрипте был рендер текста с информацией об авто и его же хпбар. На клео с баром проблем нет, а вот центровка текста (не та, которая через перезапись GXT а рендер SF) не хочет работать. Мб кто чего посоветует, как фиксануть...
 

Jake228

Новичок
21
0
Я бы хотел спросить, можете отправить опкод, в котором при нажатии клавиши, в чат что-то писалось, опкод нажатия клавиши я нашёл, а вот отправки в чат - нет, помогите пожалуйста
 
У

Удалённый пользователь 123482

Гость
Я бы хотел спросить, можете отправить опкод, в котором при нажатии клавиши, в чат что-то писалось, опкод нажатия клавиши я нашёл, а вот отправки в чат - нет, помогите пожалуйста
0AF9: samp say_msg "1337"
 
У

Удалённый пользователь 123482

Гость
у меня не получается, вот мой код:

{$CLEO}
0000:

:1
wait 0
0AB0: is_key_pressed 49
jf @1
0AF9: samp say_msg "/armour"
jump @1
end
я нажимаю цифру 1 , ничего не получается
CLEO:
{$CLEO .CS}
0000: NOP

REPEAT
0001: WAIT 0 MS
UNTIL 0AFA:  is_samp_available

WHILE TRUE
0001: WAIT 0 MS
    IF 0C89:  key_just_pressed 0x31
    THEN 0AF9: samp say_msg "/armour"
    END
END
 
  • Нравится
Реакции: MAHEKEH

MAHEKEH

Известный
1,991
495
у меня не получается, вот мой код:

{$CLEO}
0000:

:1
wait 0
0AB0: is_key_pressed 49
jf @1
0AF9: samp say_msg "/armour"
jump @1
end
я нажимаю цифру 1 , ничего не получается
условие не стоит

[Label] :1
[Мин. Задержка] 0001: 0
[Если] if
[Нажата клавиша] key_down 49 // 0AB0: is_key_pressed 49
[Если НЕ нажата, тогда обратно] jf @1
[Если нажата тогда] say "/armour" // 0AF9: samp say_msg "/armour"
[Желательна задержка] 0001: 300
[Прыжок назад, end не нужен] jump @1

Вроде можно даже без условия я подзабыл уже
как то так там

:1
0001: 0
key_down 49
else_jump @1
say "/armour"
0001: 300
jump @1
 

Jake228

Новичок
21
0
условие не стоит

[Label] :1
[Мин. Задержка] 0001: 0
[Если] if
[Нажата клавиша] key_down 49 // 0AB0: is_key_pressed 49
[Если НЕ нажата, тогда обратно] jf @1
[Если нажата тогда] say "/armour" // 0AF9: samp say_msg "/armour"
[Желательна задержка] 0001: 300
[Прыжок назад, end не нужен] jump @1

Вроде можно даже без условия я подзабыл уже
как то так там

:1
0001: 0
key_down 49
else_jump @1
say "/armour"
0001: 300
jump @1
У меня не получается, я сделал, при заходе в игру, игра намертво зависает
{$CLEO}
0000:

:1
if
0AB0: is_key_pressed 49
jf @1
0AF9: samp say_msg "/armour"
0001:300
jump @1
 

Bili Djin

Активный
137
67
Как найти корды этого красного маркера, который чуть выше змейки.
1619213222606.png