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

astap_

Известный
Всефорумный модератор
626
597
и будет одинаково реагировать на разные команды, спс, удались

if .. "/ans"
then code
end
if .. "/cmd2"
then code
end
if .. "/cmd3"
then code
end
ты сам для себя додумал, с какой целью он решил добавить еще несколько команд? в вопросе не уточнялось
 

Bananious

Известный
238
17
Мне нужен opcode который будет каждые 5 секунд отнимать у меня 3хп.
 

NoNameCoder

Известный
40
12
Как можно получить значение "550" из диалога, и записать это значение в переменную?
39292
 

shtcinc

Известный
127
22
Здравствуйте, хотелось бы уточнить/узнать я хочу сделать в игре уже существующий и расположенный на карте нужный мне объект (В моем случае провода) невидимым, опкод я знаю, но вот проблема в чем: Я не знаю нужно ли как то подгружать этот объект или как это вообще должно делаться. Пробовал присваивать к лабелу id объекта и даже где то видел похожий вариант, но это не работало. Или может есть какие то тонкости которых я не знаю. К примеру все хорошо работает если я создам какой либо объект и на него сделаю невидимость, но как в игре работать с уже имеющимися объектами я не знаю/не понимаю/не догадываюсь. Явно кто то уже таким занимался и возможно мне подскажет в каком направлении работать. Возможно это как то сделать взяв во внимание адреса памяти, но тут уже будет другая проблема как найти адрес памяти объекта ;с
 

GreenArrow

Новичок
21
6
Здравствуйте. Как удалять последний символ? Например нажал Backspace, удалился, ещё раз, удалился.
 

Vovich

HOT
Проверенный
717
197
Здравствуйте. Как удалять последний символ? Например нажал Backspace, удалился, ещё раз, удалился.
Возможно это извращение, но я бы получил длину строки в переменную, сделал бы цикл FOR от 0 до последнего символа (переменную) и перезаписывал бы в переменную с размером на -1 символ меньше.
 

MISTER_GONWIK

Всефорумный гонщик
Всефорумный модератор
1,260
1,740
Возможно это извращение, но я бы получил длину строки в переменную, сделал бы цикл FOR от 0 до последнего символа (переменную) и перезаписывал бы в переменную с размером на -1 символ меньше.
Достаточно получить длину строки и обнулить крайний символ
 
  • Нравится
Реакции: Vovich

chapo

🫡 В армии с 17.10.2023. В ЛС НЕ ОТВЕЧАЮ
Друг
8,768
11,210
Помогите сделать прикрепленный к т/с 3д текс, или скажите, что в моем коде не так.
CLEO:
{$CLEO}
0000:

:if
wait 0
if
0ADC:   test_cheat "3d"
jf @reload
jump @main

:main
wait 0
03C0: 1@ = actor $PLAYER_ACTOR car
0C45: samp create_3d_text id 98124 text "privet" color 0xFFFFFF position 0.0 0.0 0.0 view_distance 20 show_behind_walls false attached_to_player -1 attached_to_vehicle 2@


:reload
0ADC:   test_cheat "0"
004D: jump_if_false @main
0A92: create_custom_thread "!3dsp.CS"
0A93: end_custom_thread
 

Romelo

dev.
Проверенный
540
624
Помогите сделать прикрепленный к т/с 3д текс, или скажите, что в моем коде не так.
CLEO:
{$CLEO}
0000:

:if
wait 0
if
0ADC:   test_cheat "3d"
jf @reload
jump @main

:main
wait 0
03C0: 1@ = actor $PLAYER_ACTOR car
0C45: samp create_3d_text id 98124 text "privet" color 0xFFFFFF position 0.0 0.0 0.0 view_distance 20 show_behind_walls false attached_to_player -1 attached_to_vehicle 2@


:reload
0ADC:   test_cheat "0"
004D: jump_if_false @main
0A92: create_custom_thread "!3dsp.CS"
0A93: end_custom_thread
CLEO:
{$CLEO .cs}

//-------------MAIN---------------
00D6: if 
8AF7:   not samp 0@ = get_base 
004D: jump_if_false @Noname_18 
0A93: end_custom_thread 

:Noname_18
0001: wait 400 ms 
0AFA:  is_samp_available 
004D: jump_if_false @Noname_18 
0006: 0@ = 0 

:Noname_39
0001: wait 0 ms 
00D6: if and
00DF:   actor $PLAYER_ACTOR driving 
0ADC:   test_cheat "3d" 
004D: jump_if_false @Noname_39 
00D6: if 
0039:   0@ == 0 
004D: jump_if_false @Noname_119 
0AF8: samp add_message_to_chat "3D TEXT cоздан!" color -1  
0006: 0@ = 1 
0002: jump @Noname_153 

:Noname_119
0006: 0@ = 0 
0AF8: samp add_message_to_chat "3D TEXT удален!" color -1  
0B45: samp destroy_3d_text 4@ 

:Noname_153
0002: jump @Noname_160 

:Noname_160
0001: wait 0 ms 
00D6: if and
00DF:   actor $PLAYER_ACTOR driving 
0039:   0@ == 1 
004D: jump_if_false @Noname_39 
03C0: 1@ = actor $PLAYER_ACTOR car 
0B2C: samp 2@ = get_vehicle_id_by_car_handle 1@ 
0AC8: 3@ = allocate_memory_size 8 
0AD3: 3@ = format "Privet"  
0B44: samp 4@ = create_3d_text 3@ color -1 position 0.0 0.0 0.0 view_distance 20.0 show_behind_walls -1 attached_to_player -1 attached_to_vehicle 2@ 
0006: 0@ = 2 
0AC9: free_allocated_memory 3@
0002: jump @Noname_39

Как вызвать Loading через CLEO? Это ещё возможно сделать?
Посмотреть вложение 39546
Закинуть актера в ......
CLEO:
00A1: put_actor $PLAYER_ACTOR at 0.0 0.0 -10000
 

Snoopcheg

Известный
151
82
Хай! Хочу через опкод 0c72 с эмулировать нажатие клавиши "down" (стрелочки вниз), но ничего не выходит. всё что пробовал эмулируется, а вот стрелочки нет, как это можно исправить?
 

hnnssy

Известный
Друг
2,684
2,748
CLEO:
{$CLEO .cs}

//-------------MAIN---------------
00D6: if 
8AF7:   not samp 0@ = get_base 
004D: jump_if_false @Noname_18 
0A93: end_custom_thread 

:Noname_18
0001: wait 400 ms 
0AFA:  is_samp_available 
004D: jump_if_false @Noname_18 
0006: 0@ = 0 

:Noname_39
0001: wait 0 ms 
00D6: if and
00DF:   actor $PLAYER_ACTOR driving 
0ADC:   test_cheat "3d" 
004D: jump_if_false @Noname_39 
00D6: if 
0039:   0@ == 0 
004D: jump_if_false @Noname_119 
0AF8: samp add_message_to_chat "3D TEXT cоздан!" color -1  
0006: 0@ = 1 
0002: jump @Noname_153 

:Noname_119
0006: 0@ = 0 
0AF8: samp add_message_to_chat "3D TEXT удален!" color -1  
0B45: samp destroy_3d_text 4@ 

:Noname_153
0002: jump @Noname_160 

:Noname_160
0001: wait 0 ms 
00D6: if and
00DF:   actor $PLAYER_ACTOR driving 
0039:   0@ == 1 
004D: jump_if_false @Noname_39 
03C0: 1@ = actor $PLAYER_ACTOR car 
0B2C: samp 2@ = get_vehicle_id_by_car_handle 1@ 
0AC8: 3@ = allocate_memory_size 8 
0AD3: 3@ = format "Privet"  
0B44: samp 4@ = create_3d_text 3@ color -1 position 0.0 0.0 0.0 view_distance 20.0 show_behind_walls -1 attached_to_player -1 attached_to_vehicle 2@ 
0006: 0@ = 2 
0AC9: free_allocated_memory 3@
0002: jump @Noname_39
шёл 2019 год, ромело всё ещё писал код на метках, а по его маня-мирку бродили динозавры
нужно сделать авто открытие диалога и перелистывание на нужный пункт и его открытие. Ну открытие по комбинации клавиш, а диалог - say, дальше перелистывание и открытие нужного пункта
танцы с бубном, мм
этот опкод выбирает пункт диалога, вместо 1@ номер пункта
0B49: samp set_current_dialog_list_item 1@