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

444555

Новичок
24
5
На клео будет еще тот заеб сделать. На луа проще будет, на С++ изи. ИМХО. Вот тебе теория, как бы я это сделал. Сложно будет без знаний, конечно.
Создать вектор(в клео их нет, а добавлял ли в СФ их фип я не помню), который будет состоять из структур параметров РПЦ. Для этой же структуры переопределил оператор бы сравнения.
Когда читал бы параметры, то записал бы их в новую структуру, находил бы её в векторе и если она не была найдена, то добавлял в вектор её. Для удобства хранил бы в ини файле и запись делал через библиотеку BOOST, хотя можно и обычный файл записывать. Тут уже кому как удобно. Как-то так
По чтению параметров из файла в клео. Тебе надо не файл сканировать весь, а в цикле до конца файла считывать каждую строку и сканировать её на данные.
Так что советую такое делать на луа или С++.
Этого я и боялся. Я имею некоторые познания на плюсах, поскольку занимался созданием трейнеров, но в клео опыта поболее, вот и хотел реализовать в нём.
Что же, раз так, попробую сделать это на плюсах, или на крайняк на луа. Я планировал через массивы работать, но только уже на втором этапе работы, когда буду заканчивать дело и доделывать скрипт к релизу.
Энивей, спасибо. Отличный повод попрактиковаться с плюсами.
 

Dark_Knight

Me, me and me.
Друг
4,081
2,099
В твоем случаи массивы не очень вариант. Может быть, что ты выйдешь за пределы массива, с динамическими контейнирами такого не будет. СФ апи тебе в помощь. Куда проще будет для твоей задачи.
 

SeReNtiNo

Известный
58
11
Как отослать пакет с нажатием клавиши, после определенного текста в чате? помогите!!
 

ynhhoJ

Известный
102
6
Объясните пожалуйста как правильно форматировать текст.
Есть данный код:
PHP:
{$CLEO}
{$NOSOURCE}
0000:

:1
wait 0
0AFA:  is_samp_available
jf @1
0AC8: 6@ = allocate_memory_size 256
0AC8: 7@ = allocate_memory_size 256
0B6D: render 20@ = create_font "Arial" height 10 flags 12

:2
wait 0
0AB0: key_pressed 49 // 1
jf @2

:3
04C4: store_coords_to 0@ 1@ 2@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
0AE3: 3@ = random_object_near_point 0@ 1@ 2@ in_radius 100.0 find_next 1
jf @2
0400: store_coords_to 0@ 1@ 2@ from_object 3@ with_offset 0.0 0.0 0.0
0B55: convert_3D_coords 0@ 1@ 2@ to_screen 0@ 1@
0B52: samp 5@ = object_id_by_handle 3@   // Для скриптеров.
//0BB4: samp 5@ = get_object_pool_ptr

0984: 15@ = object 3@ model   //  Для мапперов.
if and
5@ >= 0
02CC:   object 3@ bounding_sphere_visible
jf @3
0AD3: 6@ = format "SAMP Object: С %d | Мodel: %d" 5@ 15@
0B6F: render font 20@ draw_text 6@ pos 0@ 1@ color 0x98EC8DFF
jump @3
В процессе я хочу сделать из него стиллер объектов и начинать осваивать CLEO.
Я использую Cleo 4.1 и SAMPFUCNS + библиотеку от неё для CLEO.

Проблема в том, что при нажатие на 1 текст появляется, но он выглядит так:
SAMP Object: C D | Model: D

Посмотрел несколько опкодов, вроде используется правильно, других не нашел...
Тут: https://www.blast.hk/wiki/opcodes:list?dataflt[usage*~]=format
Только один опкод который бы подошел мне: 0ad3

Вообщем, нужен совет или помощь какая-нибудь....
За раннее спасибо.
 

DarkP1xel

Сила воли наше всё.
BH Team
3,635
4,983
Объясните пожалуйста как правильно форматировать текст.
Есть данный код:
PHP:
{$CLEO}
{$NOSOURCE}
0000:

:1
wait 0
0AFA:  is_samp_available
jf @1
0AC8: 6@ = allocate_memory_size 256
0AC8: 7@ = allocate_memory_size 256
0B6D: render 20@ = create_font "Arial" height 10 flags 12

:2
wait 0
0AB0: key_pressed 49 // 1
jf @2

:3
04C4: store_coords_to 0@ 1@ 2@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
0AE3: 3@ = random_object_near_point 0@ 1@ 2@ in_radius 100.0 find_next 1
jf @2
0400: store_coords_to 0@ 1@ 2@ from_object 3@ with_offset 0.0 0.0 0.0
0B55: convert_3D_coords 0@ 1@ 2@ to_screen 0@ 1@
0B52: samp 5@ = object_id_by_handle 3@   // Для скриптеров.
//0BB4: samp 5@ = get_object_pool_ptr

0984: 15@ = object 3@ model   //  Для мапперов.
if and
5@ >= 0
02CC:   object 3@ bounding_sphere_visible
jf @3
0AD3: 6@ = format "SAMP Object: С %d | Мodel: %d" 5@ 15@
0B6F: render font 20@ draw_text 6@ pos 0@ 1@ color 0x98EC8DFF
jump @3
В процессе я хочу сделать из него стиллер объектов и начинать осваивать CLEO.
Я использую Cleo 4.1 и SAMPFUCNS + библиотеку от неё для CLEO.

Проблема в том, что при нажатие на 1 текст появляется, но он выглядит так:
SAMP Object: C D | Model: D

Посмотрел несколько опкодов, вроде используется правильно, других не нашел...
Тут: https://www.blast.hk/wiki/opcodes:list?dataflt[usage*~]=format
Только один опкод который бы подошел мне: 0ad3

Вообщем, нужен совет или помощь какая-нибудь....
За раннее спасибо.
http://prntscr.com/eo3c8p
 

Kaktyc007

Известный
166
11
Хочу сделать мини биндер, но возникла проблема
CLEO:
:1 
wait 0 
if 
0ab0: key_pressed 107
jf @1 
wait 100 
0AF9: samp say_msg "/me надел наручники" 
wait 5000 
0AF9: samp say_msg "/cuff " 
jump @1
как сделать, чтобы после отправки /me надел наручники в строке ввода сообщения уже было введено /cuff и мне оставалось бы написать только ид?
 

BlackKnigga

Известный
BH Team
922
446
Хочу сделать мини биндер, но возникла проблема
CLEO:
:1 
wait 0 
if 
0ab0: key_pressed 107
jf @1 
wait 100 
0AF9: samp say_msg "/me надел наручники" 
wait 5000 
0AF9: samp say_msg "/cuff " 
jump @1
как сделать, чтобы после отправки /me надел наручники в строке ввода сообщения уже было введено /cuff и мне оставалось бы написать только ид?
CLEO:
0B79: samp set_chat_input_enabled 1
0B76: samp set_chat_input_text "/cuff "
 

SR_team

like pancake
BH Team
4,804
6,475
В твоем случаи массивы не очень вариант. Может быть, что ты выйдешь за пределы массива, с динамическими контейнирами такого не будет. СФ апи тебе в помощь. Куда проще будет для твоей задачи.
векторы изи написать в клео без всяких сф
 

ynhhoJ

Известный
102
6
Как определить координаты X Y Z объектов?
CLEO:
:3
04C4: store_coords_to 0@ 1@ 2@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
0AE3: 3@ = random_object_near_point 0@ 1@ 2@ in_radius 100.0 find_next 1
jf @2
0400: store_coords_to 0@ 1@ 2@ from_object 3@ with_offset 0.0 0.0 0.0
0B55: convert_3D_coords 0@ 1@ 2@ to_screen 0@ 1@
0B52: samp 5@ = object_id_by_handle 3@   // Для скриптеров.
0984: 15@ = object 3@ model   //  Для мапперов.
0C43: 10@ = render get_texture 11@ size_to 12@ 13@
if and
5@ >= 0
02CC:   object 3@ bounding_sphere_visible
jf @3
0AD3: 6@ = format "Object: Мodel ID: %i |X:%.4f Y:%.4f Z:%.4f" 15@ 0@ 1@ 2@
0B6F: render font 20@ draw_text 6@ pos 0@ 1@ color 0xFFFFFFFF
jump @3

В игре выдает 0.0000 0.0000 и лишь у Z координаты другие, но не больше 50

И вообще, возможно ли на CLEO сделать стиллер объектов и текстур?
 

oolol

Новичок
16
1
CLEO:
0B35: samp 1@ = get_last_command_params
if 0AD4: 2@ = scan_string 1@ format "%d" 3@
then
    if  actor.Driving(3@)
    then  
        03C0: 4@ = actor 3@ car
        02E3: 5@ = Car 4@ speed
        chatmsg "Ñêîðîñòü: %.1f " -1 5@
    else
        chatmsg "Èãðîê íå â êàðå" -1
    end
else
    0AF8: samp add_message_to_chat "/kek id" color 0xFFD700
end

что не так?
 

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,696
1,468
actor.Driving не принимает аргумент в виде ид игрока/автомобиля сампа