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

Kristyan

Известный
165
16
Почему вылетает игра, когда пишу два значения?????
CLEO:
:cmd_int
SAMP.IsCommandTyped(20@)
if
0AD4: 20@ = scan_string 20@ format "%s %s %s" 16@v 18@v 25@v
jf @cmd_int
 if
 20@ == 3
then
  say "Text %s %s. ID %s" 16@v 18@v 25@v
else
say "LOH"
end
samp.CmdRet()
 

D3F4LT

Новичок
7
0
Немного оффтопа, Ребзя кто шарит в клео, как вывести на экран числом запас спринта игрока?
 

san0

Известный
Друг
411
267

D3.Pheonix

🎹
Модератор
2,817
1,597
Немного оффтопа, Ребзя кто шарит в клео, как вывести на экран числом запас спринта игрока?
Код готов к компиляции, осталось поменять координаты на свои:
CLEO:
{$CLEO}
0000:

repeat
wait 0
until SAMP.Available()
0@ = Render.CreateFont("Arial", {height}10, {flags}5)
alloc 2@ 24

while true
wait 0
    if and
        SAMP.IsLocalPlayerSpawned()
        8BD5:  samp is_scoreboard_opened
        not ACTOR.Driving($PLAYER_ACTOR)
    then
        {h}0A8D: 1@ = read_memory 0xB7CDB4 size 4 virtual_protect 0
        {n}1@ /= 31.47
        {s}1@ += 4.0
        {y}1@ *= 0.9615384
        format 2@ "%.0f" 1@
        Render.DrawText(0@ 2@ {X}300 {Y}300 {color}-1) // X Y Координаты на экране в пикселях
    end
end
 

NookieONE

Участник
128
1
CLEO:
{$CLEO}
{$I SF}

0000:

const
TOGGLE      = 10@
TOGGLE_MOVE = 11@
BUF         = 12@
end

const
hFONT    = 13@
TEXT     = 14@
SX       = 15@
SY       = 16@
NickName = 17@
end 

SX    = 178
SY    = 756
                                                                                         
const
YELLOW = 0xFFFF5000
end

alloc NickName 20
0AF4: NickName = read_string_from_ini_file "cleo\confing.ini" section "NickName" key ":"

0AC6: BUF = label @buffer offset

if not 0@ = SAMP.Base()
then 0A93: end_custom_thread
end
while not SAMP.Available()
wait 100
end

0B6D: render hFONT = create_font "IMPACT" height 10 flags 4
0BE3: raknet setup_incoming_rpc_hook @hook
0B34: samp register_client_command "sreset" to_label @sreset
0B34: samp register_client_command "en" to_label @toggle
0B34: samp register_client_command "move" to_label @move

while true
    wait 0
    if TOGGLE == false
    then
        call @get_values 1 buff BUF returns TEXT
        0B6F: render font hFONT draw_text TEXT pos SX SY color YELLOW
    end
    while TOGGLE_MOVE == true
        wait 0
        0B5E: get_cursor_pos SX SY
        call @get_values 1 buff BUF returns TEXT
        0B6F: render font hFONT draw_text TEXT pos SX SY color YELLOW
        if key_down 1
        then
            TOGGLE_MOVE = false
        end
    end
end

:hook
0BE5: raknet 0@ = get_hook_param PARAM_PACKETID
IF 0@ == RPC_SCRCLIENTMESSAGE
THEN
    0BE5: raknet 0@ = get_hook_param PARAM_BITSTREAM
    0BE7: raknet 1@ = bit_stream_read 0@ type BS_TYPE_INT
    0BE7: raknet 2@ = bit_stream_read 0@ type BS_TYPE_INT
    alloc 3@ 125
    0BE8: raknet bit_stream 0@ read_array 3@ size 2@
    0C1E: struct 3@ offset 2@ size 1 = 0
    IF 0c18: 33@ = 3@ NickName  // ТУТ ВОТ ОН ПРОВЕРЯЕТ, ЕСЛИ ЕСТЬ В СТРОКЕ НИК, ТО ОН ИДЕТ ДАЛЬШЕ
    THEN
        IF OR
        0C18: 33@ = strstr string1 3@ string2 "ТЕКСТ NICK"  // ПОИСК ТЕКСТА
        0C18: 33@ = strstr string1 3@ string2 "ТЕКСТ1 NICK" // ПОИСК ТЕКСТА1
        THEN
            0AF0: 4@ = get_int_from_ini_file "cleo\confing.ini" section "ПЕРВОЕ" key "Количество"
            000A: 4@ += 1
            0AF1: write_int 4@ to_ini_file "cleo\confing.ini" section "ПЕРВОЕ" key "Количество"
        END
   
        IF 0C18: 33@ = strstr string1 3@ string2 "ДРУГОЙ NICK ТЕКСТ" // ПОИСК ТЕКСТА
        THEN
            0AF0: 4@ = get_int_from_ini_file "cleo\confing.ini" section "ВТОРОЕ" key "Количество"
            000A: 4@ += 1
            0AF1: write_int 4@ to_ini_file "cleo\confing.ini" section "ВТОРОЕ" key "Количество"
        END
    END
    free 3@
END
0BE0: raknet hook_ret TRUE

:sreset
chatmsg "Счётчик обнулен!" -1
0AF1: write_int 0 to_ini_file "cleo\confing.ini" section "ПЕРВОЕ" key "Количество"
0AF1: write_int 0 to_ini_file "cleo\confing.ini" section "ВТОРОЕ" key "Количество"
SAMP.CmdRet()

:toggle
0B12: TOGGLE = TOGGLE XOR 1
SAMP.CmdRet()

:move
0B12: TOGGLE_MOVE = TOGGLE_MOVE XOR 1
SAMP.CmdRet()

:get_values
0AF0: 1@ = get_int_from_ini_file "cleo\confing.ini" section "ПЕРВОЕ" key "Количество"
0AF0: 2@ = get_int_from_ini_file "cleo\confing.ini" section "ВТОРОЕ" key "Количество"
0AD3: 0@ = format "{ec0000}ПЕРВОЕ: {FFFFFF}%d  {ec0000}ВТОРОЕ: {FFFFFF}%d" 1@ 2@
ret 1 0@

:buffer
hex
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0
end
 

BiggySmolz

Новичок
19
2
Ребят, можно ли сделать фейк PIN для АРП ??? Типо я уже ввел все данные и при следующем заходе у меня выдавался фейк ввод пинкода )
Пример:
upload_2018-1-24_16-59-5.png
 

NookieONE

Участник
128
1
CLEO:
{$CLEO}
{$I SF}

0000:

const
TOGGLE      = 10@
TOGGLE_MOVE = 11@
BUF         = 12@
end

const
hFONT    = 13@
TEXT     = 14@
SX       = 15@
SY       = 16@
NickName = 17@
end

SX    = 178
SY    = 756
                                                                                        
const
YELLOW = 0xFFFF5000
end

alloc NickName 20
0AF4: NickName = read_string_from_ini_file "cleo\confing.ini" section "NickName" key ":"

0AC6: BUF = label @buffer offset

if not 0@ = SAMP.Base()
then 0A93: end_custom_thread
end
while not SAMP.Available()
wait 100
end

0B6D: render hFONT = create_font "IMPACT" height 10 flags 4
0BE3: raknet setup_incoming_rpc_hook @hook
0B34: samp register_client_command "sreset" to_label @sreset
0B34: samp register_client_command "en" to_label @toggle
0B34: samp register_client_command "move" to_label @move

while true
    wait 0
    if TOGGLE == false
    then
        call @get_values 1 buff BUF returns TEXT
        0B6F: render font hFONT draw_text TEXT pos SX SY color YELLOW
    end
    while TOGGLE_MOVE == true
        wait 0
        0B5E: get_cursor_pos SX SY
        call @get_values 1 buff BUF returns TEXT
        0B6F: render font hFONT draw_text TEXT pos SX SY color YELLOW
        if key_down 1
        then
            TOGGLE_MOVE = false
        end
    end
end

:hook
0BE5: raknet 0@ = get_hook_param PARAM_PACKETID
IF 0@ == RPC_SCRCLIENTMESSAGE
THEN
    0BE5: raknet 0@ = get_hook_param PARAM_BITSTREAM
    0BE7: raknet 1@ = bit_stream_read 0@ type BS_TYPE_INT
    0BE7: raknet 2@ = bit_stream_read 0@ type BS_TYPE_INT
    alloc 3@ 125
    0BE8: raknet bit_stream 0@ read_array 3@ size 2@
    0C1E: struct 3@ offset 2@ size 1 = 0
    IF 0c18: 33@ = 3@ NickName  // ТУТ ВОТ ОН ПРОВЕРЯЕТ, ЕСЛИ ЕСТЬ В СТРОКЕ НИК, ТО ОН ИДЕТ ДАЛЬШЕ
    THEN
        IF OR
        0C18: 33@ = strstr string1 3@ string2 "ТЕКСТ NICK"  // ПОИСК ТЕКСТА
        0C18: 33@ = strstr string1 3@ string2 "ТЕКСТ1 NICK" // ПОИСК ТЕКСТА1
        THEN
            0AF0: 4@ = get_int_from_ini_file "cleo\confing.ini" section "ПЕРВОЕ" key "Количество"
            000A: 4@ += 1
            0AF1: write_int 4@ to_ini_file "cleo\confing.ini" section "ПЕРВОЕ" key "Количество"
        END
  
        IF 0C18: 33@ = strstr string1 3@ string2 "ДРУГОЙ NICK ТЕКСТ" // ПОИСК ТЕКСТА
        THEN
            0AF0: 4@ = get_int_from_ini_file "cleo\confing.ini" section "ВТОРОЕ" key "Количество"
            000A: 4@ += 1
            0AF1: write_int 4@ to_ini_file "cleo\confing.ini" section "ВТОРОЕ" key "Количество"
        END
    END
    free 3@
END
0BE0: raknet hook_ret TRUE

:sreset
chatmsg "Счётчик обнулен!" -1
0AF1: write_int 0 to_ini_file "cleo\confing.ini" section "ПЕРВОЕ" key "Количество"
0AF1: write_int 0 to_ini_file "cleo\confing.ini" section "ВТОРОЕ" key "Количество"
SAMP.CmdRet()

:toggle
0B12: TOGGLE = TOGGLE XOR 1
SAMP.CmdRet()

:move
0B12: TOGGLE_MOVE = TOGGLE_MOVE XOR 1
SAMP.CmdRet()

:get_values
0AF0: 1@ = get_int_from_ini_file "cleo\confing.ini" section "ПЕРВОЕ" key "Количество"
0AF0: 2@ = get_int_from_ini_file "cleo\confing.ini" section "ВТОРОЕ" key "Количество"
0AD3: 0@ = format "{ec0000}ПЕРВОЕ: {FFFFFF}%d  {ec0000}ВТОРОЕ: {FFFFFF}%d" 1@ 2@
ret 1 0@

:buffer
hex
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0
end
Игра вылетает после 10 минут игры. ХЕЛП