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

SeJIya

Новичок
45
2
вроде все правильно сделал, но числа какие-то ебанутые выводятся. может надо через scan_string делать как-то?
y7FBmdP.jpg
Код:
:n_54
wait 0
if
0AB0:  key_pressed 101
jf @n_54
0A8D: 0@ = read_memory 0xBAAF40 size 4 virtual_protect 0                   
0AF8: samp add_message_to_chat "выпало %d" color 16776960 0@
wait 100
0A8D: 0@ = read_memory 0xBAAE40 size 4 virtual_protect 0
0AF8: samp add_message_to_chat "выпало %d" color 16776960 0@
wait 100
0A8D: 0@ = read_memory 0xBAADC0 size 4 virtual_protect 0
0AF8: samp add_message_to_chat "выпало %d" color 16776960 0@
jump @n_54
Попробуй вывести так:
Код:
0AF8: samp add_message_to_chat "выпало %s" color 16776960 1@
Скорее всего там строка, а ты выводишь число(указатель на строку).
 

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,696
1,460
незнаю, в чат просто нули пишет, может разберетесь

Для теста сделай пока так:
Код:
{$CLEO}
 
wait 0
 
while not SAMP.Available()
    wait 400
end
 
0@ = Render.CreateFont("Helvetica", 10, 5)
1@ = Render.FontDrawHeight(0@)
 
SAMP.GetScreenResolution(2@, 3@)
2@ /= 2
3@ = 50
 
0ac8: alloc 5@ 32
0AC6: 6@ = label @addresses offset
 
while true
    wait 0
    for 8@ = 0 to 8 step 1
        0C0E: 7@ = array 6@ element 8@
        0A8D: 9@ = read_memory 7@ size 15 virtual_protect 0
        
        0A90: 4@ = 1@ * 8@
        005a: 4@ += 3@
        0ad3: format 5@ = "%p -> %s" 7@ 9@
        Render.DrawText(0@, 5@, 2@, 4@, -1)
    end
end
 
:addresses
hex
    40B0BA00
    C0AEBA00
    C0AFBA00
    40AFBA00
    40AEBA00
    C0ADBA00
    40ADBA00
    C0ACBA00
    80A4BA00
    00
end
 

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,696
1,460

NarutoUA

NarutoUA
BH Team
692
1,538
Можно ли сделать автозамену текста перед отправкой его в чат? Например, я написал: "Я полный жуй убейте меня" и мопле отправки оно автоматом заменяет слово на "Я полный муж убейте меня". Возножно ли такое реализовать как-то?
 

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,696
1,460
Можно ли сделать автозамену текста перед отправкой его в чат? Например, я написал: "Я полный жуй убейте меня" и мопле отправки оно автоматом заменяет слово на "Я полный муж убейте меня". Возножно ли такое реализовать как-то?

Возможно, но делать за тебя такое никто не будет :)
 

NarutoUA

NarutoUA
BH Team
692
1,538
Возможно, но делать за тебя такое никто не будет :)

Ну примерно как хотябы это реализовать? У меня на уме только такой алгоритм:
1) Проверка в вечном цикле (открыт ли чат инпут)
2) Если открыт - взять в переменную стринг содержимое инпута (вроде такой опкод есть в сампфунксе)
3)В переменной стринг найти наше слово (хз как, проверять по символьно?)
4) Если найдено слово - заменить его
5) В чат инпут вставить новую строку (тоже вроде такой есть опкод в сампфунксе)
6) отправить сообщение
 

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,696
1,460
Ну примерно как хотябы это реализовать? У меня на уме только такой алгоритм:
1) Проверка в вечном цикле (открыт ли чат инпут)
2) Если открыт - взять в переменную стринг содержимое инпута (вроде такой опкод есть в сампфунксе)
3)В переменной стринг найти наше слово (хз как, проверять по символьно?)
4) Если найдено слово - заменить его
5) В чат инпут вставить новую строку (тоже вроде такой есть опкод в сампфунксе)
6) отправить сообщение

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