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

LaRossa

Потрачен
429
117
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Почему у меня действия записанные в коде повторяются 10 раз?
CLEO:
{$CLEO  .cs}
0000:
:Av
wait 0
0AFA:  is_samp_available
jf @Av

:1
wait 0
if and
0AB0:   key_pressed 17
0AB0:   key_pressed 50
jf @2
0AF9: samp say_msg "Âèäíî íå ñóäüáà, âèäíî íå ñóäüáà..."
jump @1


:2
wait 0
if and
0AB0:   key_pressed 17
0AB0:   key_pressed 50
0AB0:   key_pressed 49
jf @1
0AF9: samp say_msg "/f Âèäíî íå ñóäüáà, âèäíî íå ñóäüáà..."
jump @1
Задержку поставь после выполнения. Или что клавиша отпущена
 

AMAHACLA

Новичок
44
3
И как их юзать? Допустим, я хочу отправить фейк анимацию серверу, какая data мне нужна будет для этого?
0BC0: samp send_onfoot_data 0@
0@ [int] - заполненная структура. Как ее заполнить так, чтобы эта структура была заполнена моей фейк анимкой?
 

DarkP1xel

Сила воли наше всё.
BH Team
3,637
5,026
0BBA: samp store_player 0@ onfoot_data 1@ - Получение OnFootData текущей по ID игрока.
0BC0: samp send_onfoot_data 0@ - Отправляет OnFootData на сервер. Чтобы заполнить структуру, нужно выделять место в памяти игры (allocate, buffer) равную размером с OnFootData и по байтам заполнять данные основываясь на оригинальной структуре.
 
  • Нравится
Реакции: romanblinov2013

MArkoas_Gonzaleees

Новичок
22
0
Почему у меня действия записанные в коде повторяются 10 раз?
CLEO:
{$CLEO  .cs}
0000:
:Av
wait 0
0AFA:  is_samp_available
jf @Av

:1
wait 0
if and
0AB0:   key_pressed 17
0AB0:   key_pressed 50
jf @2
0AF9: samp say_msg "Âèäíî íå ñóäüáà, âèäíî íå ñóäüáà..."
jump @1


:2
wait 0
if and
0AB0:   key_pressed 17
0AB0:   key_pressed 50
0AB0:   key_pressed 49
jf @1
0AF9: samp say_msg "/f Âèäíî íå ñóäüáà, âèäíî íå ñóäüáà..."
jump @1
после активации на кнопку поставь проверку на отжатие кнопки.Вот мой пример
CLEO:
{$CLEO .cs}
0000:

repeat
wait 100
until samp.Available()

:label
wait 0
if and
0AB0:   key_pressed 18
0AB0:   key_pressed 49
jf @label
repeat
wait 0
until 8AB0:  not key_pressed 49
0AF9: samp say_msg "И запомни имя Асала, не забывай как твоя армия у нас сосала!"
jump @label
 

jenekbueno

Известный
156
69
И как их юзать? Допустим, я хочу отправить фейк анимацию серверу, какая data мне нужна будет для этого?
0BC0: samp send_onfoot_data 0@
0@ [int] - заполненная структура. Как ее заполнить так, чтобы эта структура была заполнена моей фейк анимкой?
Структуры SA:MP(http://ru.cleo.wikia.com/wiki/%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_SA:MP)
создаешь битстрим, заполняешь его, отправляешь
 
Последнее редактирование модератором:

MArkoas_Gonzaleees

Новичок
22
0
Ребят. Какой оппкод может выводить на экран время( на компьютере). И как узнать позицию куда я хочу его поставить
 

NW91827364550

Новичок
7
0
Покажите пример как написать клео для мта например мне надо при вводе команды в мта /123 сказать в чат 901A как это сделать ?
 

Lord

Новичок
236
42
Как сделать к примеру,что то запутался и не выходит.
Пишу /usedrugs , выходит диалоговое окно , выбираю там в диалоговом окне пунк 4, нажимаю enter и там в окне диалоговом надо написать "15" и enter?
Вопрос - Вопросы по CLEO-скриптингу(https://blast.hk/threads/13410/page-8#post-10351)
 

wuc

Известный
16
4
Возможно ли реализовать подобный скрипт? Если да, то как?
у одного и у другого игрока должен быть установлен один и тот же файл, в котором есть команда,
если один введет команду, то выведет список скриптов второго, которые хранятся в запущенной гта.
 

MArkoas_Gonzaleees

Новичок
22
0
05E2: AS_actor 65@ kill_actor 50@
Вот опкод
Что писать вместо kill_actor 50@
Помогите. хочу чтобы он работал если я убью человека(любого)
 
1,417
1,037
если ты убьешь кого-то, то будет работать полиция(не факт), а не опкод.
по теме: обе переменные принимают хендл, в первую помещаешь свой $PLAYER_ACTOR, а во вторую переменную - хендл игрока, но в сампе это скорее всего не будет работать
 

MArkoas_Gonzaleees

Новичок
22
0
Ребята, помогите с кодом. Хочу сделать бота, чтобы после активации он создавался, и когда я по нему попадаю с дигла. Звенел колокольчик. Что-то вроде Aim training
Код:
{$CLEO .cs}
0000:

repeat
wait 100
until Samp.Available()

0B34: samp register_client_command "botc" to_label @create


:create
wait 0
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0 0 0
009A: 10@ = create_actor_pedtype 9 model #LSV3 at 1@ 2@ 3@
02AB: set_actor 10@ immunities BP 1 FP 1 EP 1 CP 1 MP 1

gosub @proverka
0AAC: $hMP3 = load_audiostream "cleo\hitbot.mp3"
jf @create

:sound
wait 0
if
031D:   actor 10@ hit_by_weapon 24
jf @sound
0AAD: set_audiostream $hMP3 perform_action 1

:lbexit
wait 0
if
0ADC:   test_cheat "off"
jf @lbexit
0AAE: release_audiostream $hMP3
Samp.CmdRet()




:proverka
if
0AAB:   file_exists "cleo\hitbot.mp3"
jf @proverka
0051: return
 

LaRossa

Потрачен
429
117
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Надеюсь проверку на дигл сам добавить сможешь
Ребята, помогите с кодом. Хочу сделать бота, чтобы после активации он создавался, и когда я по нему попадаю с дигла. Звенел колокольчик. Что-то вроде Aim training
Код:
{$CLEO .cs}
0000:

repeat
wait 100
until Samp.Available()

0B34: samp register_client_command "botc" to_label @create


:create
wait 0
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0 0 0
009A: 10@ = create_actor_pedtype 9 model #LSV3 at 1@ 2@ 3@
02AB: set_actor 10@ immunities BP 1 FP 1 EP 1 CP 1 MP 1

gosub @proverka
0AAC: $hMP3 = load_audiostream "cleo\hitbot.mp3"
jf @create

:sound
wait 0
if
031D:   actor 10@ hit_by_weapon 24
jf @sound
0AAD: set_audiostream $hMP3 perform_action 1

:lbexit
wait 0
if
0ADC:   test_cheat "off"
jf @lbexit
0AAE: release_audiostream $hMP3
Samp.CmdRet()




:proverka
if
0AAB:   file_exists "cleo\hitbot.mp3"
jf @proverka
0051: return
CLEO:
{$CLEO}
0000:
while not Samp.Available()
    wait 0
end
0AAC: 0@ = load_audiostream "CLEO\название.mp3"
0B34: samp register_client_command "kolokol" to_label @cmd
0BE1: raknet setup_outcoming_rpc_hook @hook
0BDE: pause_thread 0

:cmd
0B12: 1@ = 1@ XOR 1
if 0@ == 1
    then
    chatmsg "ON" -1
else
    chatmsg "OFF" -1
end
Samp.CmdRet()

:Hook
0BE5: raknet 2@ = get_hook_param 1
if and
1@ == 1
2@ == 115 {RPC_GIVETAKEDAMAGE}
    then
    0BE5: raknet 3@ = get_hook_param 0
    0BE7: raknet 4@ = bit_stream_read 3@ type 1
    if 4@ == 0
        then
        0AAD: set_mp3 0@ perform_action 1
    end
end
0BE0: raknet hook_ret 1