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

Woofing Giraffe

Активный
402
49
{$VERSION 3.1.0027}
{$CLEO .cs}
0000:
repeat
wait 400
until Samp.Available

repeat
:sbiv1
wait 0
if
0B21: samp is_chat_opened
then
wait 0
jf @sbiv1
if and
0AB0: key_pressed 16
0AB0: key_ptessed 69
jf @sbiv1
wait 100
0af9: "/anim 63"
wait 100
0af9: "/healme"
wait 100
0af9: "/w Biiiiiirds"
wait 100
0af9: "/anim 63"
wait 100
0B56: set_game_key 16 state 255
wait 0
jump @sbiv1
end
Код:
{$CLEO}
0000:

:1
wait 0
    SAMP.Available()
jf @1

while true
    wait 0
    if 0B21: samp is_chat_opened
    then
        if and
        0AB0: key_pressed 16
        0AB0: key_ptessed 69
        then
            0af9: "/anim 63"
            wait 100
            0af9: "/healme"
            wait 100
            0af9: "/w Biiiiiirds"
            wait 100
            0af9: "/anim 63"
            wait 100
            0B56: set_game_key 16 state 255
        end
    end
end
 
  • Нравится
Реакции: zhekazh

Art4D

Новичок
87
13
Ребят, как в аиме поменять, на что он должен целиться? Например на ноги/голову/туловище

Код:
// This file was decompiled using SASCM.ini published by GTAG (http://gtag.gtagaming.com/opcode-database) on 14.6.2013
{$CLEO .cs}

//-------------MAIN---------------
if
0@ = SAMP.Base()
jf @Ronyka_53
0A93: end_custom_thread

:Ronyka_53
   not SAMP.Available
jf @Ronyka_73
wait 100
goto @Ronyka_53

:Ronyka_73
alloc 16@ 256
if
8AE4:   not directory_exists "Cleo\INI"
jf @Ronyka_272
0AE5: create_directory "Cleo\INI" // IF and SET
chatmsg "[Aim Bot] {ffcc00}Äåðèêòîðèÿ ñîçäàíà.{EAEAEA} Ïåðåçàïóñòèòå èãðó." 16763904
goto @Ronyka_272

:Ronyka_272
if
0AAB:   file_exists "CLEO\INI\aim.ini"
jf @Ronyka_343
0AF0: 16@ = get_int_from_ini_file "CLEO\INI\aim.ini" section "AIM" key "Key"
goto @Ronyka_454

:Ronyka_343
0AF1: write_int 82 to_ini_file "CLEO\INI\aim.ini" section "AIM" key "Key"
chatmsg "[Aim Bot] {ffcc00}Ôàéë íàñòðîåê çàãðóæåí.{EAEAEA} Ïåðåçàïóñòèòå èãðó." 16763904

:Ronyka_454
wait 0
goto @Ronyka_465

:Ronyka_465
wait 0
0A8D: 0@ = read_memory 11987996 size 4 virtual_protect 0
0A8D: 1@ = read_memory 11987992 size 4 virtual_protect 0
if
8045:   not  0@ == 1@ // (float)
jf @Ronyka_465
0A8C: write_memory 11987992 size 4 value 0@ virtual_protect 0
goto @Ronyka_560

:Ronyka_537
wait 0
if
0AD2: 2@ = player $PLAYER_CHAR targeted_actor //IF and SET
jf @Ronyka_537

:Ronyka_560
wait 0
if and
056D:   actor 2@ defined
key_down 16@
key_down 2
jf @Ronyka_537
if or
   Actor.HasWeapon($PLAYER_ACTOR, 24)
   Actor.HasWeapon($PLAYER_ACTOR, 25)
jf @Ronyka_537
if or
02D8:   actor $PLAYER_ACTOR current_weapon == 24
02D8:   actor $PLAYER_ACTOR current_weapon == 25
jf @Ronyka_537
if and
   not Actor.Dead(2@)
02CB:   actor 2@ bounding_sphere_visible
jf @Ronyka_537
0A96: 6@ = actor 2@ struct
6@ += 68
0A8D: 3@ = read_memory 6@ size 4 virtual_protect 0
6@ += 4
0A8D: 4@ = read_memory 6@ size 4 virtual_protect 0
6@ += 4
0A8D: 5@ = read_memory 6@ size 4 virtual_protect 0
Actor.StorePos(2@, 6@, 7@, 8@)
10@ = 35
0093: 10@ = integer 10@ to_float
12@ = 17.0
12@ /= 360.0
006B: 3@ *= 12@ // (float)
006B: 4@ *= 12@ // (float)
006B: 5@ *= 12@ // (float)
006B: 3@ *= 10@ // (float)
006B: 4@ *= 10@ // (float)
006B: 5@ *= 10@ // (float)
005B: 6@ += 3@ // (float)
005B: 7@ += 4@ // (float)
005B: 8@ += 5@ // (float)
Actor.StorePos($PLAYER_ACTOR, 3@, 4@, 5@)
if
06BD:   no_obstacles_between 3@ 4@ 5@ and 6@ 7@ 8@ solid 1 car 1 actor 0 object 1 particle 0
jf @Ronyka_923
call @Ronyka_930 4 2@ 6@ 7@ 8@

:Ronyka_923
goto @Ronyka_560

:Ronyka_930
0087: 4@ = 1@ // (float)
0087: 5@ = 2@ // (float)
0087: 6@ = 3@ // (float)
068D: get_camera_position_to 1@ 2@ 3@
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
0063: 1@ -= 4@ // (float)
0063: 2@ -= 5@ // (float)
0096: make 1@ absolute_float
0096: make 2@ absolute_float
0087: 10@ = 1@ // (float)
0087: 11@ = 2@ // (float)
006B: 10@ *= 10@ // (float)
006B: 11@ *= 11@ // (float)
005B: 10@ += 11@ // (float)
01FB: 10@ = square_root 10@
0087: 11@ = 1@ // (float)
0087: 12@ = 10@ // (float)
0073: 11@ /= 12@ // (float)
0AA5: call 4327328 num_params 1 pop 1 11@ 
0AE9: pop_float 12@
0AA5: call 4775488 num_params 1 pop 1 11@ 
0AE9: pop_float 13@
if
call @Ronyka_1664 0 16@
jf @Ronyka_1225
if
call @Ronyka_1230 7 4@ 5@ 7@ 8@ 12@ 13@ 16@ 15@
jf @Ronyka_1225
15@ += 0.0389
0A8C: write_memory 11989592 size 4 value 15@ virtual_protect 0

:Ronyka_1225
ret 0

:Ronyka_1230
if
  6@ == 5
jf @Ronyka_1295
7@ = 0.01
8@ = 0.01
9@ = 1.5607
10@ = 1.5807
goto @Ronyka_1400

:Ronyka_1295
if
  6@ == 6
jf @Ronyka_1360
7@ = 0.018
8@ = 0.02
9@ = 1.5507
10@ = 1.5907
goto @Ronyka_1400

:Ronyka_1360
7@ = 0.0
8@ = 0.0
9@ = 1.5707
10@ = 1.5707

:Ronyka_1400
if and
0025:   2@ > 0@ // (float)
0025:   3@ > 1@ // (float)
jf @Ronyka_1443
0063: 5@ -= 8@ // (float)
0087: 15@ = 5@ // (float)

:Ronyka_1443
if and
0025:   2@ > 0@ // (float)
8035:   not  3@ >= 1@ // (float)
jf @Ronyka_1496
5@ *= -1.0
0063: 5@ -= 7@ // (float)
0087: 15@ = 5@ // (float)

:Ronyka_1496
if and
8035:   not  2@ >= 0@ // (float)
0025:   3@ > 1@ // (float)
jf @Ronyka_1539
005B: 4@ += 9@ // (float)
0087: 15@ = 4@ // (float)

:Ronyka_1539
if and
8035:   not  2@ >= 0@ // (float)
8035:   not  3@ >= 1@ // (float)
jf @Ronyka_1592
4@ *= -1.0
0063: 4@ -= 10@ // (float)
0087: 15@ = 4@ // (float)

:Ronyka_1592
0A8D: 11@ = read_memory 11989592 size 4 virtual_protect 0
0063: 11@ -= 15@ // (float)
if and
   not 11@ >= 0.18
  11@ > -0.18
jf @Ronyka_1654
return_true
goto @Ronyka_1656

:Ronyka_1654
return_false

:Ronyka_1656
ret 1 15@

:Ronyka_1664
0A96: 0@ = actor $PLAYER_ACTOR struct
0@ += 1816
0A8D: 1@ = read_memory 0@ size 1 virtual_protect 0
if or
  1@ == 2
  1@ == 3
  1@ == 4
  1@ == 5
  1@ == 6
  1@ == 7
jf @Ronyka_1754
return_true
goto @Ronyka_1756

:Ronyka_1754
return_false

:Ronyka_1756
ret 1 1@
 

zhekazh

Новичок
12
0
Код:
{$CLEO}
0000:

:1
wait 0
    SAMP.Available()
jf @1

while true
    wait 0
    if 0B21: samp is_chat_opened
    then
        if and
        0AB0: key_pressed 16
        0AB0: key_ptessed 69
        then
            0af9: "/anim 63"
            wait 100
            0af9: "/healme"
            wait 100
            0af9: "/w Biiiiiirds"
            wait 100
            0af9: "/anim 63"
            wait 100
            0B56: set_game_key 16 state 255
        end
    end
end
Ууух,Спасибо ! Чет я протупил,как сделать,чтобы когда чат ЗАКРЫТ скрипт работал,а когда открыт,то нет ?
 

01EG

Известный
Проверенный
631
345
Ууух,Спасибо ! Чет я протупил,как сделать,чтобы когда чат ЗАКРЫТ скрипт работал,а когда открыт,то нет ?
Используй опкод на проверку открыт ли чат.
0B21: samp is_chat_opened
Например:
Код:
:1
wait 0
if and \\ если и
8B21: not samp is_chat_opened \\ если, чат не открыт (в некоторых опкодах в которых юзается проверку и начинается с 0, мы меняем 0 на 8 тем самым меняя функцию скрипта на нет и пожеланию прописываем not после ":") - не знаю понял ты или нет, но вроде доходчиво описал.
0ab0: 91 \\ если нажата какая то клавиша
jf @1
Actor.PutAt($PLAYER_ACTOR, 0.0 0.0 0.0) \\ например такая функция будет выполняться.
jump @1
 

Sempati

Новичок
19
0
Нее.. ну такого... такого у меня никогда не было.))
Просто не работает опкод:
Код:
0AF5: write_string "new string value" to_ini_file "cleo\config.ini" section "SectionName" key "stringKey"

Крашит на 0x000000. SF стоит, но думаю он тут и не нужен.)

А другие опкоды записи int, float значения работают на ура.
 

Woofing Giraffe

Активный
402
49
Вот допустим у меня есть такой диалог стиля msgbox:
https://sampwiki.blast.hk/wroot/images2/a/a1/Dialog_style_msgbox.png
Как извлечь текст из него я знаю, а вот как мне получить из этого текста слово например display?
 

zhekazh

Новичок
12
0
спасибо что сказали) а то я уже тут намудрил)
Код:
hex
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15
end

{$CLEO}
0000:

:1
wait 0
    SAMP.Available()
jf @1
wait 6000
0af8: "{37AF75}[Birds]: {6937AF}Сбив  By Birds Family. {F5EC3D}Активация SHIT+E"
wait 5000

repeat
    wait 0
    if 0B21: samp is_chat_opened
    then
    wait 0
    else
        if and
        0AB0: key_pressed 16
        0AB0: key_ptessed 69
        then
            0af9: "/anim 63"
            wait 100
            0af9: "/healme"
            wait 100
            0af9: "/w Biiiiiirds"
            wait 100
            0af9: "/anim 63"
            wait 100
            0B56: set_game_key 16 state 255
            wait 1000
            0af8: "{37AF75}[Birds]: {6937AF}Good luck {F5EC3D}Have fun!"
            wait 1000
        end
    end
until false
 

Sempati

Новичок
19
0
А все. Сам решил проблему. Может кому полезно будет:
Оказалось, что записываемый текст надо указывать через переменную, так:
Код:
1@v = "Текст"
0AF5: write_string 1@v to_ini_file "cleo\config.ini" section "SectionName" key "stringKey"
Странно, что так не работает:
Код:
0AF5: write_string "Текст" to_ini_file "cleo\config.ini" section "SectionName" key "stringKey"
 

Woofing Giraffe

Активный
402
49
Использую такую функцию:
Код:
0AA7: call 0x8220AD num_params 6 pop 6 params 3@v 2@v 1@ 0@ "SMS: %[0-9a-zA-Zа-яА-Я^\ \_] | Отправитель: %[\_a-zA-Z][%d] [т.%d]" 4@ read_params_to 6@
Вопрос: как сделать чтобы оно ещё читало символы типо {} `/ и т.д.
 

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,696
1,454
А все. Сам решил проблему. Может кому полезно будет:
Оказалось, что записываемый текст надо указывать через переменную, так:
Код:
1@v = "Текст"
0AF5: write_string 1@v to_ini_file "cleo\config.ini" section "SectionName" key "stringKey"
Странно, что так не работает:
Код:
0AF5: write_string "Текст" to_ini_file "cleo\config.ini" section "SectionName" key "stringKey"
Вполне ж работает. Через консоль, по крайней мере.