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

DubStep_

Известный
292
52
Что за опкод? Как работает?
0B12: 0@ = 1@ XOR 1
XOR – операция, которая принимает значение «истина» только если всего один из аргументов имеет значение «истина». В языке JAVA (а также в С, С++, C#, Ruby, PHP, JavaScript) операция обозначается символом «^».
 
  • Нравится
Реакции: AWRage

hnnssy

Известный
Друг
2,684
2,750
Вот щас сделал,нормально работает. ( Другой скрипт,без стринга )
Код:
{$CLEO}

Thread "AdvBot"
wait 2000
0B34: samp register_client_command "advb" to_label @cb

While True
wait 0
if 0@ == 1
then
SAMP.IsDialogActive(3448)
if 1@ <= 3448
then
wait 999
0af9: "/adv"
0AC8: 4@ = allocate_memory_size 210
0AF4: 4@ = read_string_from_ini_file "CLEO\Adv.ini" section "data" key "Say"
SAMP.SetDialogInputBoxText(4@)
SAMP.CloseDialog(3448)
0AC9: free_allocated_memory 4@
end
end
end

:cb
0B12: 0@ = 0@ XOR 1
if 0@ == 1
then
0acd: "[Kraft1k]ADV BOT ~r~ON" 1500
else
0acd: "[Kraft1k]ADV BOT ~r~OFF" 1500
end
SAMP.Cmdret()
Дурак что ли? 0AF4: 4@ = read_string_from_ini_file "CLEO\Adv.ini" section "data" key "Say"
Ты стринг считываешь.
 
  • Нравится
Реакции: kraft1k

valdan666

Известный
Проверенный
941
357
Еще раз пробую спросить.....Пацаны, кто подскажет, как эмулировать нажатие ЛКМ ? Опкод 0C72: set_virtual_key 0x01 down 1 работает,но работает только с клавишами клавиатуры, а вот мышку эмулировать не хочет....в чем может быть причина? Или есть другие способы?
 

Art4D

Новичок
87
13
Подскажите, за что отвечают вот эти коды синхронизаций?
Код:
//uint16_t sLeftRightKeys;
//uint16_t sUpDownKeys; +2
//uint16_t sKeys; +4
 

Immunity

Активный
210
44
Знатоки, помогите сделать сие чудо.
Нужен cleo auto frisk только, чтобы не палил игроков которые в маске. Буду очень благодарен.
 

nname

Новичок
66
5
Как сделать чтобы
CLEO:
{$CLEO}
{$INCLUDE SF}

0001: wait 0 ms
0662: "by legend2360"
0662: "BlastHack - cheating is art"

while not SAMP.Available()
    wait 400
end

0BE3: raknet setup_incoming_rpc_hook @inrpc_hook

0AC8: 3@ = allocate_memory_size 144
0C11: memset destination 3@ value 0 size 144

0C74: 4@ = create_timer_interval 120000 on_label @reload_message
0C78: set_timer 4@ active false

0BDE: pause_thread 0

:inrpc_hook
0BE5: raknet 0@ = get_hook_param PARAM_PACKETID
if 0@ == RPC_SCRCLIENTMESSAGE
then
    0BE5: raknet 1@ = get_hook_param PARAM_BITSTREAM

    0BEB: raknet bit_stream 1@ ignore_bits 32 // skip string's color
    0BE7: raknet 2@ = bit_stream_read 1@ type BS_TYPE_INT // message len

    0BE8: raknet bit_stream 1@ read_array 3@ size 2@ // read message
    0C1E: array 3@ element 2@ el_size 1 = 0x0 // \0

    if 0C14: strcmp string1 3@ string2 "_KoToFei_ достал пакетик, насыпал белого порошка, свернул стодолларовую купюру в трубочку и начал нюхать."
    then
        0C78: set_timer 4@ active true
        0C76: reset_timer 4@
    end
end
0BE0: raknet hook_ret true

:reload_message
0AF9: samp say_msg "/c Наркотики можно принимать снова!"
0C78: set_timer 4@ active false
0B43: samp cmd_ret
считывал только начало строки, т.е. только _KoToFei_
И далее так же запускал таймер.
up
P.S. как сделать, чтобы скрипт включался автоматически после захода в игру?
 
Последнее редактирование:

Xample

Новичок
89
1
Подправьте пожалуйста код, нужно чтобы при нажатии F2 в чате писал ID ближайшего игрока в радиусе 3.0. Если в этом радиусе нет, то 0af8: "No players"

Код:
0000: NOP
wait 5000

:NONAME_2
wait 0
if
0AB0:   key_pressed 113
else_jump @NONAME_2
wait 1000
if
call @NearPlayer 0 0@
   then
   0af8: "Id: %d" -1 0@
   else
   0af8: "No players" -1
end

:NearPlayer
for 0@ = 0 to 999 step 1
    if 0B23:  samp is_player_connected 0@
    then
        if 0B20: samp 2@ = actor_handle_by_samp_player_id 0@
        then ret 0@
        end
    end
end
ret 0