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

astap_

Известный
Всефорумный модератор
626
601
Сообщение в чат не отправляется, 3Д-текст не создаётся. В чем ошибка?
CLEO:
0AC8: 16@ = allocate_memory_size 256
0AC8: 13@ = allocate_memory_size 256
0AC8: 12@ = allocate_memory_size 256
0AC8: 11@ = allocate_memory_size 256
wait 500
0AD1: show_formatted_text_highpriority "script worked. ID - %d" time 1500 12@
0AD3: 16@ = format "%s" 13@
0AD3: 15@ = format "%s (%d): %s" 11@ 12@ 13@
0AF8: samp add_message_to_chat 15@ color -1
0B44: samp 30@ = create_3d_text 16@ color 0xFFFFFFFF position 0.0 0.0 2.0 view_distance 20.0 show_behind_walls true attached_to_player 12@ -1
wait 2000
0B45: samp destroy_3d_text 30@
0AC9: free_allocated_memory 16@
0AC9: free_allocated_memory 13@
0AC9: free_allocated_memory 12@
0AC9: free_allocated_memory 11@
 

D3.Pheonix

🎹
Модератор
2,867
1,643
Сообщение в чат не отправляется, 3Д-текст не создаётся. В чем ошибка?
CLEO:
0AC8: 16@ = allocate_memory_size 256
0AC8: 13@ = allocate_memory_size 256
0AC8: 12@ = allocate_memory_size 256
0AC8: 11@ = allocate_memory_size 256
wait 500
0AD1: show_formatted_text_highpriority "script worked. ID - %d" time 1500 12@
0AD3: 16@ = format "%s" 13@
0AD3: 15@ = format "%s (%d): %s" 11@ 12@ 13@
0AF8: samp add_message_to_chat 15@ color -1
0B44: samp 30@ = create_3d_text 16@ color 0xFFFFFFFF position 0.0 0.0 2.0 view_distance 20.0 show_behind_walls true attached_to_player 12@ -1
wait 2000
0B45: samp destroy_3d_text 30@
0AC9: free_allocated_memory 16@
0AC9: free_allocated_memory 13@
0AC9: free_allocated_memory 12@
0AC9: free_allocated_memory 11@
- проверь для 0b44 еще раз все параметры;
- перепроверь выделение памяти
 

Terratomorf

Известный
315
58
как сделать чтоб при попадании на координат включался кордмастер на другой координат
 

Kaktyc007

Известный
166
11
при использовании 0224: set_car 20@ health_to 1000 восстанавливается хп у машины, но визуально она не чиниться?
Вопрос: как починить машину не только по хп, но в визуально?
 

ehxqu

Известный
Проверенный
177
155
при использовании 0224: set_car 20@ health_to 1000 восстанавливается хп у машины, но визуально она не чиниться?
Вопрос: как починить машину не только по хп, но в визуально?

да, 0224 только хп восстанавливает

визуально + реген хп через 0A30: repair_car 0@

вот пример:
CLEO:
{$CLEO .cs}

while true
    wait 0
    if and
    00DF: actor $PLAYER_ACTOR driving
    0AB0: key_pressed 78 //key "N"
    then
        03C0: 0@ = actor $PLAYER_ACTOR car
        0A30: repair_car 0@
    end
end
 

D[a]Ni

Участник
63
3
пытался написать клео которое атакует определённого игрока но игра просто зависает и приходиться закрывать

{$CLEO}
0000:

:start
wait 1000
0AFA: is_samp_available
jf @start
0B34: samp register_client_command "atak" to_label @atak
0B35: samp 1@ = get_last_command_params
while true
wait 0
end

:atak
0C1A: 0@ = atoi 1@
if
Actor.DrivingVehicleType($PLAYER_ACTOR, #HYDRA)
jf @start
0B20: samp 2@ = actor_handle_by_samp_player_id 0@
03C0: 3@ = actor $PLAYER_ACTOR car
03C0: 4@ = actor 2@ car
070E: hydra 3@ attack_player_car 4@ radius 10.0
jump @start

и ещё один вопрос есть опкод 0745: set_hydra 1@ thrust_to_horizontal - Повернуть турбины гидры 1@ в горизонтальное положение, а как в вертикальное не знаю, и в переменную 1@ надо же вставлять хендл моего транспорта? или может быть есть опкод считывать хендл гидры
 

astap_

Известный
Всефорумный модератор
626
601
пытался написать клео которое атакует определённого игрока но игра просто зависает и приходиться закрывать

{$CLEO}
0000:

:start
wait 1000
0AFA: is_samp_available
jf @start
0B34: samp register_client_command "atak" to_label @atak
0B35: samp 1@ = get_last_command_params
while true
wait 0
end

:atak
0C1A: 0@ = atoi 1@
if
Actor.DrivingVehicleType($PLAYER_ACTOR, #HYDRA)
jf @start
0B20: samp 2@ = actor_handle_by_samp_player_id 0@
03C0: 3@ = actor $PLAYER_ACTOR car
03C0: 4@ = actor 2@ car
070E: hydra 3@ attack_player_car 4@ radius 10.0
jump @start

и ещё один вопрос есть опкод 0745: set_hydra 1@ thrust_to_horizontal - Повернуть турбины гидры 1@ в горизонтальное положение, а как в вертикальное не знаю, и в переменную 1@ надо же вставлять хендл моего транспорта? или может быть есть опкод считывать хендл гидры
для начала тебе нужно изучить азы клео, ибо твой код слеплен из хуй пойми чего
CLEO:
{$CLEO}
0000:

:start
wait 0
if
0AFA: is_samp_available
jf @start
0B34: samp register_client_command "atak" to_label @atack
0BDE: pause_thread 0

:atack
0B35: samp 1@ = get_last_command_params
if
    0AD4: 1@ = scan_string 1@ format "%d" 2@ // 2@ - player ID
jf @error
0B20: samp 3@ = actor_handle_by_samp_player_id 2@ // 3@ - handle
03C0: 10@ = actor $PLAYER_ACTOR car
03C0: 11@ = actor 3@ car
if and
    Actor.DrivingVehicleType($PLAYER_ACTOR, #HYDRA)
    056D:   actor $PLAYER_ACTOR defined
    056D:   actor 3@ defined
jf @error
070E: hydra 10@ attack_player_car 11@ radius 10.0
0AD1: show_formatted_text_highpriority "~Y~target: ~S~%d ~n~ was attacked!" time 2000 2@
0B43: samp cmd_ret

:error
0ACD: show_text_highpriority "error" time 1000
0B43: samp cmd_ret
 
Последнее редактирование:

D[a]Ni

Участник
63
3
для начала тебе нужно изучить азы клео, ибо твой код слеплен из хуй пойми чего
CLEO:
{$CLEO}
0000:

:start
wait 0
if
0AFA: is_samp_available
jf @start
0B34: samp register_client_command "atak" to_label @atack
0BDE: pause_thread 0

:atack
0B35: samp 1@ = get_last_command_params
if
    0AD4: 1@ = scan_string 1@ format "%d" 2@ // 2@ - player ID
jf @error
0B20: samp 3@ = actor_handle_by_samp_player_id 2@ // 3@ - handle
03C0: 10@ = actor $PLAYER_ACTOR car
03C0: 11@ = actor 3@ car
if and
    Actor.DrivingVehicleType($PLAYER_ACTOR, #HYDRA)
    056D:   actor $PLAYER_ACTOR defined
    056D:   actor 3@ defined
jf @error
070E: hydra 10@ attack_player_car 11@ radius 10.0
0AD1: show_formatted_text_highpriority "~Y~target: ~S~%d ~n~ was attacked!" time 2000 2@
0B43: samp cmd_ret

:error
0ACD: show_text_highpriority "error" time 1000
0B43: samp cmd_ret
не работает
 

D[a]Ni

Участник
63
3
что именно? ничего не происходит или зависает игра? Если второе, то я забыл добавить проверки на то , подключён ли игрок и есть ли у него машина.
да нет, я находил сам игроков он лишь пишет текст который должен, но не каких действий и если раз 10 ввести то краш

хм щас кое что чекну тут просто есть похожий опкод на этот, типо атака но ракетами
 

astap_

Известный
Всефорумный модератор
626
601
Возможно ли сделать условие "если игрок использует определённую анимацию" ?
 

ehxqu

Известный
Проверенный
177
155
Возможно ли сделать условие "если игрок использует определённую анимацию" ?

да

CLEO:
while true
    wait 0
    0B2B: samp 1@ = get_player_id_by_actor_handle $PLAYER_ACTOR
    0B57: samp 2@ = player 1@ animation_id
    if 2@ == 536 //ид анимации
    then
        //Действие
        //0AFD: samp set_special_action 0
        wait 1000
    end
end
 
  • Нравится
Реакции: astap_