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

AWRage

Активный
642
141
Как изменить angle_X car? Опкода не нашёл чет.
 
Последнее редактирование:

Dark_Knight

Me, me and me.
Друг
4,067
2,081
Когда я навожу на игрока, то он срабатывает, а когда отвожу прицел от игрока в сторону, то он ещё на протяжении 2-3 секунд работает, а не моментально пропадает.
Обрати внимание на треугольник над головой.
 

nikita_cheater

Новичок
13
3
Обрати внимание на треугольник над головой.
Он поэтому и попросил другой опкод, потому что висящий над головой ещё несколько секунд треугольник ему не подходит.
Как сделать проверку на то, что мой игрок целится на чей-то скин?
Этот опкод не подходит, так работает с задержкой.
Код:
0AD2: $actor = player $PLAYER_CHAR targeted_actor //IF and SET
Код автошота посмотри, там найдёшь функцию
 
  • Нравится
Реакции: AWRage

AWRage

Активный
642
141
Он поэтому и попросил другой опкод, потому что висящий над головой ещё несколько секунд треугольник ему не подходит.

Код автошота посмотри, там найдёшь функцию
Спасибо!


редактировать матрицу углов разворота авто
Это работа с памятью?
 

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,696
1,462
вот вроде скомпилировал, но почему-то кидает только 2 варнинга в чат, что не так?)
Код:
{$CLEO}
0000:
0AC8: 0@ = allocate_memory_size 256
0AC8: 2@ = allocate_memory_size 256
0AC8: 3@ = allocate_memory_size 256
0AC8: 6@ = allocate_memory_size 256

:1
wait 1000
0AD3: 0@ = format "Номинация происходит в данном кабинете"
0C17: 1@ = strlen "происходит"
0C18: 2@ = strstr string1 0@ string2 "происходит"
0085: 6@ = 0@
0062: 6@ -= 2@
0085: 3@ = 6@ // 3@ = 0@ - 2@ // Размер строки до "происходит"
0AC8: 4@ = allocate_memory_size 512 // буффер
0C24: strncpy destination 4@ source 0@ size 3@ // Копируем в новый буфер первые 3@ символа из 0@ в 4@
0C13: strcpy destination 4@ source "проходит" // -> "Номинация проходит"
005a: 2@ += 1@ // Вычисляем оставшуюся часть строки
0C17: 5@ = strlen 2@ // и её размер
0C24: strncpy destination 4@ source 2@ size 5@
0AF8: samp add_message_to_chat "%s" color 0xFFFF00 4@ // 4@ - edited string = "Номинация проходит в данном кабинете"
0A93: end_custom_thread
Т.к. ранее я писал теорию, то на практике пришлось изменить кое-что:
CLEO:
alloc 0@ 256
format 0@ = "Номинация происходит в данном кабинете" // Стандартная строка

0C17: 1@ = strlen "происходит" // Длина "заменяемого слова"
0C18: 2@ = strstr string1 0@ string2 "происходит" // Находим начальную позицию слова
0A8F: 3@ = 2@ - 0@ // Находим длину до "заменяемого слова"

alloc 4@ 256 // Выделяем новый буфер
memset 4@ 0 256 // safe
0C24: strncpy destination 4@ source 0@ size 3@ // Вставляем строку, которая находится до "заменяемого слова"
0C15: strcat destination 4@ source "проходит" // Вставляем новое слово

005A: 2@ += 1@ // Находим длину после "заменяемого слова"
0C15: strcat destination 4@ source 2@ // ...вставляем оставшийся текст
chat "%s" -1 4@ // Вывод
free 0@ // unused
 
  • Нравится
Реакции: Избранный

next23012

Новичок
59
6
0B3B: samp show_dialog id 1@ caption 2@ text 3@ button_1 "ОК" button_2 "" style 0
Как записать текст в 3@ из .txt файла в папке клео? Какие опкоды за считывание и записывание отвечают?
 

DarkP1xel

Сила воли наше всё.
BH Team
3,635
4,964
Какие опкоды за считывание и записывание отвечают?
0A9D: readfile $hFILE size 2 to $150
0AD7: read_string_from_file $hFile to 0@v size 15 // IF and SET
0A9E: writefile $hFILE size 128 from 0@
0AD8: write_string_to_file $hFile from 0@v //IF and SET
0AD9: write_formatted_text "CLEO version: %d.%d.%d.%d" in_file $hFile 4 0 0 1
 

Pawka_SS

Новичок
7
1
Как правильно делать условие с массивами СФ? Вот например
CLEO:
if
0C0E:  array 1@ element 2@ == 1
then
say "1"
end
if
0C0E:  array 1@ element 2@ == 2
then
say "2"
end
 

next23012

Новичок
59
6
Как правильно конвертировать игровые координаты в оконные?
CLEO:
0B60: convert_game_screen_coords 1050.0 800.0 to_window_screen_coords 4@ 5@
0016: 4@ /= 2
0016: 5@ /= 2
^ Таким способом работает, но не очень точно. При маленьком окне текст уходит немного вниз, и его не полностью видно, если поставить рендер текст внизу экрана
 

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,696
1,462
Как правильно делать условие с массивами СФ? Вот например
CLEO:
if
0C0E:  array 1@ element 2@ == 1
then
say "1"
end
if
0C0E:  array 1@ element 2@ == 2
then
say "2"
end
Сначала прочитать значение, потом сравнить.

Как правильно конвертировать игровые координаты в оконные?
CLEO:
0B60: convert_game_screen_coords 1050.0 800.0 to_window_screen_coords 4@ 5@
0016: 4@ /= 2
0016: 5@ /= 2
^ Таким способом работает, но не очень точно. При маленьком окне текст уходит немного вниз, и его не полностью видно, если поставить рендер текст внизу экрана
GameCoords имеют макс. разрешение 640x480
 

Избранный

Новичок
198
30
Пацаны, я не понимаю почему у меня строка в чат не выводится? тупо варнинг в чат кидает. пробовал и 4.1 и 4.3 ставить, раньше вроде выводилось все
Код:
{$CLEO}
0000:
0AC8: 0@ = allocate_memory_size 256
:1
wait 1000
0AD3: 0@ = format "Номинация происходит в данном кабинете"
0AF8: samp add_message_to_chat "%s" color 0xFFFF00 0@
0A93: end_custom_thread
 

AWRage

Активный
642
141
Пацаны, я не понимаю почему у меня строка в чат не выводится? тупо варнинг в чат кидает. пробовал и 4.1 и 4.3 ставить, раньше вроде выводилось все
Код:
{$CLEO}
0000:
0AC8: 0@ = allocate_memory_size 256
:1
wait 1000
0AD3: 0@ = format "Номинация происходит в данном кабинете"
0AF8: samp add_message_to_chat "%s" color 0xFFFF00 0@
0A93: end_custom_thread
Попробуй wait 2000.