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

LinkelnAweil

Участник
122
7
Вопрос, таков, кто-нибудь может скинуть код автоотыгровки оружия? Именно код. А если нет, то подскажите почему не юзается так
CLEO:
0470: 2@ = actor $PLAYER_ACTOR current_weapon
if not 0039:   2@ == 3
then
end
В чем ошибка?
 

Makkoy1708

Новичок
18
4
Вопрос, таков, кто-нибудь может скинуть код автоотыгровки оружия? Именно код. А если нет, то подскажите почему не юзается так
CLEO:
0470: 2@ = actor $PLAYER_ACTOR current_weapon
if not 0039:   2@ == 3
then
end
В чем ошибка?
CLEO:
{$CLEO .cs}
0000: NOP
repeat
wait 0
until samp.Available()
0B34: samp register_client_command "cmd" to_label @cmd

repeat
wait 0
    if 0@ == 1
    then
    0470: 1@ = actor $PLAYER_ACTOR current_weapon
        if 8039:   not 1@ == 3
        then
            {
            code
            }
        else
        chatmsg "Нельзя держать в руках оружие под номером '3'" 0xFFFFFF
        end
    0@ = 0
    end
until false  

:cmd
0@ = 1
samp.CmdRet()
 

HUGERAIN

Новичок
26
4
есть какой-то опкод, который записывает в переменную дамаг, который я кому-то нанёс
 

01EG

Известный
Проверенный
631
345
есть какой-то опкод, который записывает в переменную дамаг, который я кому-то нанёс
нет, но можно использовать вот это для написания функции:

GTAG :: OpcodeDB - Opcode 051A(https://www.gtagmodding.com/opcode-database/opcode/051A/)
opcodes - 0ad2 | BlastHack — DEV_WIKI(https://blast.hk/wiki/opcodes:0ad2)
пользуйся этими опкодами, не забудь прочитатьть хп актёра и сравнивай их до и после актёра.
 

клешь рояль

Известный
1,255
551
CLEO:
{$CLEO}
{$NOSOURCE}
0000:
8028:   not $707 >= 16
jf @1
0A93: вырубить_скрипт

:1
wait 0
0AFA:  is_samp_available
jf @1
0B34: samp register_client_command "Bullet" to_label @Bullet
0BDE: pause_thread 0

:Bullet
0006: 0@ = -1

:BulletMainLoop
0@ += 1
not 0@ == 1001
jf @BulletExitLoop
if and
0B23:  samp is_player_connected 0@
8B5C:  not samp is_player 0@ paused
8B64:  not samp is_player 0@ npc
jf @BulletMainLoop
0B20: samp 1@ = actor_handle_by_samp_player_id 0@
056D:   actor 1@ defined
jf @BulletMainLoop
00A0: store_actor 1@ position_to 2@ 3@ 4@
00A0: store_actor $PLAYER_ACTOR position_to 5@ 6@ 7@
0470: 8@ = actor $PLAYER_ACTOR current_weapon
0AB1: call_scm_func @BulletSync 12 byteType 1 sTargetID 0@ fOrigin 5@ 6@ 7@ fTarget 2@ 3@ 4@ fCenter 0.0 0.0 0.5 byteWeaponID 8@
0AB1: call_scm_func @BulletSync 12 byteType 1 sTargetID 0@ fOrigin 5@ 6@ 7@ fTarget 2@ 3@ 4@ fCenter 0.0 0.0 0.5 byteWeaponID 8@
0AB1: call_scm_func @BulletSync 12 byteType 1 sTargetID 0@ fOrigin 5@ 6@ 7@ fTarget 2@ 3@ 4@ fCenter 0.0 0.0 0.5 byteWeaponID 8@
0AB1: call_scm_func @BulletSync 12 byteType 1 sTargetID 0@ fOrigin 5@ 6@ 7@ fTarget 2@ 3@ 4@ fCenter 0.0 0.0 0.5 byteWeaponID 8@
0AB1: call_scm_func @BulletSync 12 byteType 1 sTargetID 0@ fOrigin 5@ 6@ 7@ fTarget 2@ 3@ 4@ fCenter 0.0 0.0 0.5 byteWeaponID 8@
0AB1: call_scm_func @BulletSync 12 byteType 1 sTargetID 0@ fOrigin 5@ 6@ 7@ fTarget 2@ 3@ 4@ fCenter 0.0 0.0 0.5 byteWeaponID 8@
0AB1: call_scm_func @BulletSync 12 byteType 1 sTargetID 0@ fOrigin 5@ 6@ 7@ fTarget 2@ 3@ 4@ fCenter 0.0 0.0 0.5 byteWeaponID 8@
0AB1: call_scm_func @BulletSync 12 byteType 1 sTargetID 0@ fOrigin 5@ 6@ 7@ fTarget 2@ 3@ 4@ fCenter 0.0 0.0 0.5 byteWeaponID 8@
0AB1: call_scm_func @BulletSync 12 byteType 1 sTargetID 0@ fOrigin 5@ 6@ 7@ fTarget 2@ 3@ 4@ fCenter 0.0 0.0 0.5 byteWeaponID 8@
0AB1: call_scm_func @BulletSync 12 byteType 1 sTargetID 0@ fOrigin 5@ 6@ 7@ fTarget 2@ 3@ 4@ fCenter 0.0 0.0 0.5 byteWeaponID 8@
jump @BulletMainLoop

:BulletExitLoop
0B43: samp cmd_ret

:BulletSync // 0AB1: call_scm_func @BulletSync 12 byteType 1 sTargetID 0@ fOrigin 5@ 6@ 7@ fTarget 2@ 3@ 4@ fCenter 0.0 0.0 0.5 byteWeaponID 8@
0AC8: 25@ = allocate_memory_size 40 // sizeof_stBulletData
0C0D: struct 25@ offset 0 size 1 = 0@ // uint8_t        byteType;
0C0D: struct 25@ offset 1 size 2 = 1@ // uint16_t    sTargetID;
0C0D: struct 25@ offset 3 size 4 = 2@ // float        fOrigin[3];
0C0D: struct 25@ offset 7 size 4 = 3@ // float         fOrigin[3];
0C0D: struct 25@ offset 11 size 4 = 4@ // float         fOrigin[3];
0C0D: struct 25@ offset 15 size 4 = 5@ // float        fTarget[3];
0C0D: struct 25@ offset 19 size 4 = 6@ // float        fTarget[3];
0C0D: struct 25@ offset 23 size 4 = 7@ // float        fTarget[3];
0C0D: struct 25@ offset 27 size 4 = 8@ // float        fCenter[3];
0C0D: struct 25@ offset 31 size 4 = 9@ // float        fCenter[3];
0C0D: struct 25@ offset 35 size 4 = 10@ // float        fCenter[3];
0C0D: struct 25@ offset 39 size 1 = 11@ // uint8_t        byteWeaponID;
0BC4: samp send_bullet_data 25@
0AC9: free_allocated_memory 25@
0AB2: ret 0
Компилирую код без изменения, всё отлично. Захожу в игру клео не работает. В theards, active = false
 

ae1c2a

Известный
195
6
где я включил ашота?
Код:
{$CLEO}
0000: NOP

repeat
wait 8000
until 0AFA:  is_samp_available

while true
wait 0
    if and
        8B21:     samp chat_is_not_opened
        0ADC:   test_cheat "123"
            then
                alloc 0@ 64
                format 0@ "1%c2%c3%c4%c" 0xA 0xA 0xA
                0B3B: samp show_dialog id 47 caption "123" text 0@ button_1 "Âûáðàòü" button_2 "Îòìåíà" style 2
                free 0@
            end
    if 0B3C: samp is_dialog_responded id 47 button 3@ list_item 4@ input_text 0
            then
    if 3@ == 1
            then
                018C: play_sound 1058 at 0.0 0.0 0.0
    if 4@ == 0
            then
        
                end
         if 4@ == 1
            then
          
                end
         if 4@ == 2
            then
          
                end
           if 4@ == 3
                then
              
                end
            end
        end
Imgur(https://imgur.com/a/fobaEpb)
 

san0

Известный
Друг
411
267
где я включил ашота?
CLEO:
{$CLEO}
0000: NOP

repeat
    wait 40
until 0AFA:  is_samp_available

while true
:loop
    wait 0
    if and
    8B21: not samp chat_is_not_opened
    0ADC: test_cheat "123"
    then
        format 0@v "1%c2%c3%c4" 0xA 0xA 0xA
        0B3B: samp show_dialog id 47 caption "123" text 0@v button_1 "Выбрать" button_2 "Отмена" style 2
    end
    if 0B3C: samp is_dialog_responded id 47 button 0@ list_item 1@ input_text 0
    then
        if 8039: not 0@ == 1
        then
            continue
        end
        018C: play_sound 1058 at 0.0 0.0 0.0
      
        0012: 1@ *= 4
        0AC6: 0@ = label @_jump_table_ offset
        005A: 0@ += 1@
        0A8D: 1@ = read_memory 0@ size 4 virtual_protect 0
        gosub 1@
      
        jump @loop
      
        :_jump_table_
        hex
        @_choise_1_
        @_choise_2_
        @_choise_3_
        @_choise_4_
        end
      
        :_choise_1_
        0af8: "The first item has been selected" 0xFF0000
        return
      
        :_choise_2_
        0af8: "The second item has been selected" 0x00FF00
        return
      
        :_choise_3_
        0af8: "The third item has been selected" 0x0000FF
        return
      
        :_choise_4_
        0af8: "The fourth item has been selected" 0xFFFFFF
        return    
    end
end
Хотя можно и стандартный scm's switch
 

neonpro5

Новичок
3
0
Есть ли возможность реализовать перемещение в другой виртуальный мир с любого места? Если да, то как реализовать?