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

Terratomorf

Известный
315
58
Почему он не работает? а подбирает совсем что-то другое и сразу кик(должно подбирать чекпоинты)
Код:
{$CLEO}
0000:

repeat
wait 0
until samp.Available()

0b34: "tsync" @SCRIPT_ENABLE
0BE3: raknet setup_incoming_rpc_hook @GET_CHECKPOINT_POS

while true
wait 0

if 4@ == 1
then

gosub @SEND_ONFOOT_DATA

end

end

:SEND_ONFOOT_DATA
alloc 6@ 256
0B2B: samp 5@ = get_player_id_by_actor_handle $player_actor
0BBA: samp store_player 5@ onfoot_data 6@
0C0D: struct 6@ offset 6 size 4 = 1@
0C0D: struct 6@ offset 10 size 4 = 2@
0C0D: struct 6@ offset 14 size 4 = 3@
0BC0: samp send_onfoot_data 6@
free 6@ 256
return

:GET_CHECKPOINT_POS
0BE5: raknet 0@ = get_hook_param 1
if and
0@ == 107
4@ == 1
then
0BE5: raknet 0@ = get_hook_param 0
0BE7: raknet 1@ = bit_stream_read 0@ type 4 // posX
0BE7: raknet 2@ = bit_stream_read 0@ type 4 // posY
0BE7: raknet 3@ = bit_stream_read 0@ type 4 // posZ
end
0BE0: raknet hook_ret 1

:SCRIPT_ENABLE
0B12: 4@ = 4@ XOR 1
cmdret
 

grandpafromghetto

НАСТАЯЩИЙ ДАГИСТАНИЦ
Проверенный
335
119
Почему он не работает? а подбирает совсем что-то другое и сразу кик(должно подбирать чекпоинты)
Код:
{$CLEO}
0000:

repeat
wait 0
until samp.Available()

0b34: "tsync" @SCRIPT_ENABLE
0BE3: raknet setup_incoming_rpc_hook @GET_CHECKPOINT_POS

while true
wait 0

if 4@ == 1
then

gosub @SEND_ONFOOT_DATA

end

end

:SEND_ONFOOT_DATA
alloc 6@ 256
0B2B: samp 5@ = get_player_id_by_actor_handle $player_actor
0BBA: samp store_player 5@ onfoot_data 6@
0C0D: struct 6@ offset 6 size 4 = 1@
0C0D: struct 6@ offset 10 size 4 = 2@
0C0D: struct 6@ offset 14 size 4 = 3@
0BC0: samp send_onfoot_data 6@
free 6@ 256
return

:GET_CHECKPOINT_POS
0BE5: raknet 0@ = get_hook_param 1
if and
0@ == 107
4@ == 1
then
0BE5: raknet 0@ = get_hook_param 0
0BE7: raknet 1@ = bit_stream_read 0@ type 4 // posX
0BE7: raknet 2@ = bit_stream_read 0@ type 4 // posY
0BE7: raknet 3@ = bit_stream_read 0@ type 4 // posZ
end
0BE0: raknet hook_ret 1

:SCRIPT_ENABLE
0B12: 4@ = 4@ XOR 1
cmdret
есть виды чекпоинтов, а еще, возможно, ты имел ввиду что-то другое под "чекпоинтами", а если тебя кикают, извини, ач уже давно фиксанул "голую синхру"
 

Terratomorf

Известный
315
58
Скрипт должен нажимать numpad1 но он почему то просто начинает медленно шагать назад
Код:
{$CLEO}
0000:

while true
wait 0
    if 0C89:  key_just_pressed 112
    then
        repeat
        wait 0
        0B56: set_game_key 61 state 255
        wait 25
       
   until 0C89:  key_just_pressed 112
    end   
end
 
Последнее редактирование:
  • Нравится
Реакции: Siski

DarkL1ght

Новичок
252
112
Каким опкодом можно узнать текущие координаты игрока?
CLEO:
{$CLEO}
0000:

repeat
wait 0
until SAMP.Available()
0B34: samp register_client_command "coord" to_label @coord

repeat
wait 0
    if 0@ == true
    then
        00A0: store_actor $PLAYER_ACTOR position_to 1@ 2@ 3@
        0AF8: samp add_message_to_chat "{FF0000}Coord Position: %f %f %f" color 0xFFFFFF 1@ 2@ 3@
        end
    0@ = false
until false

:coord
0@ = true
SAMP.CmdRet()
 
  • Нравится
Реакции: egorka8

Musaigen

abobusnik
Проверенный
1,583
1,302
Скрипт должен нажимать numpad1 но он почему то просто начинает медленно шагать назад
Код:
{$CLEO}
0000:

while true
wait 0
    if 0C89:  key_just_pressed 112
    then
        repeat
        wait 0
        0B56: set_game_key 61 state 255
        wait 25
      
   until 0C89:  key_just_pressed 112
    end  
end
Потому что игровой клавиши "61" не существует.
 

Musaigen

abobusnik
Проверенный
1,583
1,302
Ребята как сделать чтоб DXUT диалог появлялся и закрывался на команду помогите пожалуйста
CLEO:
0B34: samp register_client_command "dxut" to_label @DXUT

dialog.Create(0@, "Dialog By CMD")
dialog.SetRECT(0@, 450, 450, 450, 232)
Dialog.SetVisible(0@, false)


while true
wait 0
    if 1@ == 1
    then
        0B12: 2@ = 2@ XOR 1
        if 2@ == 1
        then
            Dialog.SetVisible(0@, true)
            Samp.ToggleCursor(true)
            1@ = 0
        else
            Dialog.SetVisible(0@, false)
            Samp.ToggleCursor(false)
            1@ = 0
        end
    end           
end


:DXUT
1@ = 1
samp.CmdRet()
 

itsOkke

Потрачен
86
38
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
ну вместо wait 525 поставь wait 5@
 

kuleer

Участник
86
13
можно ли как то получить последнюю позицию указателя строки в файле, чтобы каждый раз бралась следующая строка?

1
2
3

берём 1, отчищаем переменную от этой строки, берём 2, и тоже самое после 3
 

itsOkke

Потрачен
86
38
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
а нахуй тебе именно Игровая
 

axelino

Участник
110
14
Хочу, чтобы скрипт выключался, когда персонаж находится в воде на мотоцикле и включался, когда персонаж уже не находится в воде, сидя на мотоцикле.

{$CLEO .cs}

0000: NOP

:NONAME_2
wait 0
if
Player.Defined($PLAYER_CHAR)
else_jump @NONAME_2
08C6: set_actor $PLAYER_ACTOR stay_on_bike 1
jump @NONAME_2
 

itsOkke

Потрачен
86
38
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
с хуя ли