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

Hatemaker

Известный
23
6
Создал скрипт на активацию командой определённой анимации. После её активации при написании чего-либо в чат (будь то команда или слово), анимация прекращается. Как сделать её постоянной, но в то же время, чтобы она отключалась только на Enter?

CLEO:
{$CLEO .cs}

//-------------MAIN---------------
0000: NOP

:NONAME_0
wait 0
if
   SAMP.Available
else_jump @NONAME_0
0B34: samp register_client_command "lomka" to label @NONAME_14
0BDE: pause_thread 0

:NONAME_14
wait 0
0812: actor $PLAYER_ACTOR perform_animation "crckdeth2" IFP "CRACK" framedata 4.0 loop 0 lockX 0 lockY 0 lockF 0 time 999999
wait 300
Samp.CmdRet()
 

kawa operand

перерывпятьминут
602
333
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
это анимация такая, в цикле ее включай и будет тебе счастье
 

CLEONewBie

Новичок
20
0
:sad_frog: Как реализовать парсилку аргументов у команды?
0B34: samp register_client_command "r" to_label @r - серверу больше не будет отправляться эта команда? :sad_frog2:
 

Trawer2289

Известный
48
9
Помогите мне ! Как сделать 2 действия в клео! Ну вот я посмотрел клео у одного челла и решил сделать похожее! Вот прописывает чел /fa и у него выполняется действие,а можно сделать так чтоб после прописывания /fa было действие еще например посадить человека в машину это /cput?

Срочно! Я сделать после /cuff команду /cput ,а когда ввожу /fa (фейк команду) то у меня надевает наручники на человека ,а в машину (/cput ) не затаскивает! Почему?
 

kawa operand

перерывпятьминут
602
333
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
я так инфу плохо воспринимаю, давай по коду
 

Caxei

Известный
87
3
Есть клео, до этого работало, после того как добавил 1 команду вообще все перестало работать)
Можете помочь исправить?
Стоишь около игрока, прицеливаешься , пытаешься юзать, а он пишет что рядом никого нет и тд
Скиньте пж .cs если есть возможность
CLEO:
{$CLEO}
0000:

repeat
wait 0
until 0AFA:  is_samp_available

while true
wait 0
    IF 0AD2: 0@ = player $PLAYER_CHAR targeted_actor //IF and SET
    THEN
        0B2B: samp 1@ = get_player_id_by_actor_handle 0@
        IF key_down 69
        THEN       
            say "/knockout %d" 1@
            wait 550
        END
        IF key_down 81
        THEN       
            say "/cuff %d" 1@
            wait 550
        END
        IF key_down 82
        THEN       
            say "/uncuff %d" 1@
            wait 550
        END
        IF key_down 90
        THEN       
            say "/take weapons %d" 1@
            wait 550
        END
        IF key_down 88
        THEN       
            say "/take drugs %d" 1@
            wait 550
        END
        IF key_down 89
        THEN       
            say "/tazer %d" 1@
            wait 550
        END
    END
end // while

Есть клео, до этого работало, после того как добавил 1 команду вообще все перестало работать)
Можете помочь исправить?
Стоишь около игрока, прицеливаешься , пытаешься юзать, а он пишет что рядом никого нет и тд
Скиньте пж .cs если есть возможность
CLEO:
{$CLEO}
0000:

repeat
wait 0
until 0AFA:  is_samp_available

while true
wait 0
    IF 0AD2: 0@ = player $PLAYER_CHAR targeted_actor //IF and SET
    THEN
        0B2B: samp 1@ = get_player_id_by_actor_handle 0@
        IF key_down 69
        THEN      
            say "/knockout %d" 1@
            wait 550
        END
        IF key_down 81
        THEN      
            say "/cuff %d" 1@
            wait 550
        END
        IF key_down 82
        THEN      
            say "/uncuff %d" 1@
            wait 550
        END
        IF key_down 90
        THEN      
            say "/take weapons %d" 1@
            wait 550
        END
        IF key_down 88
        THEN      
            say "/take drugs %d" 1@
            wait 550
        END
        IF key_down 89
        THEN      
            say "/tazer %d" 1@
            wait 550
        END
    END
end // while
Будет хоть один человек который поможет?* ....
 
Последнее редактирование модератором:

san0

Известный
Друг
411
268
Блин, туплю. А как достать арги после отправки КМД? Нужно же где-то взять переменную, хранящую текст команды.
Ты реально думаешь, что за 345 страниц этой темы никому не пришло в голову получить параметры команды ?
Информация - Гайд - Регистрация клиентских команд с помощью SAMPFUNCS(https://blast.hk/threads/17439/)
Информация - Гайд - Форматирование и сканирование строк(https://blast.hk/threads/17449/)
Гайд - Использование функции sscanf напрямую(https://blast.hk/threads/7486/)
 

LaRossa

Потрачен
429
117
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Подскажите что не так делаю. Хотел сделать отправку клавиши N
CLEO:
Key:
alloc 0@ 68
0C11: memset destination 0@ value 0 size 68
1@ = SAMP.GetSAMPPlayerIDByActorHandle($PLAYER_ACTOR)
0BBA: samp store_player 1@ onfoot_data 0@
0C0D: struct 0@ offset 4 size 2 = 8
0BC0: samp send_onfoot_data 0@
free 0@
ret 0

Из RakLogger
Код:
[21:08:59.555] > [Packet Recv] ID_PLAYER_SYNC[207](length: 43 bytes, 344 bits)
> params:
playerId: 690 (0x2B2)
hasLR: 0
hasUD: 1
upDownKeys: 65408 (0xFF80)
keys: 8 (0x8)
position: 2842.47, 1289.65, 11.3906
quat: 0.851909, 0, 0, -0.52369
hp: 84, 0 [192]
weaponId: 0 (0x0)
specialAction: 0 (0x0)
moveSpeed: -0.110911, 0.0486974, -1.84828e-006
hasSurfInfo: 0
hasAnim: 1
animId: 1224 (0x4C8)
animFlags: 32770 (0x8002)
unreadBits: 0
 

BlackKnigga

Известный
BH Team
922
448
Подскажите что не так делаю. Хотел сделать отправку клавиши N
CLEO:
Key:
alloc 0@ 68
0C11: memset destination 0@ value 0 size 68
1@ = SAMP.GetSAMPPlayerIDByActorHandle($PLAYER_ACTOR)
0BBA: samp store_player 1@ onfoot_data 0@
0C0D: struct 0@ offset 4 size 2 = 8
0BC0: samp send_onfoot_data 0@
free 0@
ret 0

Из RakLogger
Код:
[21:08:59.555] > [Packet Recv] ID_PLAYER_SYNC[207](length: 43 bytes, 344 bits)
> params:
playerId: 690 (0x2B2)
hasLR: 0
hasUD: 1
upDownKeys: 65408 (0xFF80)
keys: 8 (0x8)
position: 2842.47, 1289.65, 11.3906
quat: 0.851909, 0, 0, -0.52369
hp: 84, 0 [192]
weaponId: 0 (0x0)
specialAction: 0 (0x0)
moveSpeed: -0.110911, 0.0486974, -1.84828e-006
hasSurfInfo: 0
hasAnim: 1
animId: 1224 (0x4C8)
animFlags: 32770 (0x8002)
unreadBits: 0
Оффсет 36 и размер 1.
А в раклоггере ты зачем то входящий ловишь
 
  • Нравится
Реакции: jenekbueno и LaRossa

Ellines

Известный
5
2
CLEO:
:DefaultVarInit
FOV = 40
AnyDistance = 0
SkinVector = 1
WallShot = 0
WeaponsUpdate = 1
RandomShot = 1
DisableRpcHook = 1
InCarVictim = 0
SendRPC = 1
ModelGroup = 0
DrawBlood = 1
BloodDensity = 20
AutoActivation = 1
ActivationMode = 1
GameKey = -1
ShowMessages = 1
AllowRPC = 0
return

[/cleo]


Если 


AutoActivation = 1 - то автоактивация, а если вместо 1, 0, то отключена получается?

Неверный символ в идентификаторе $PLAYER.DEFINED($PLAYER_CHAR)_84.

Как исправить?
 
Последнее редактирование модератором:

san0

Известный
Друг
411
268
$PLAYER.DEFINED($PLAYER_CHAR)
Обычно такое происходит, когда имя потока ставят "$PLAYER.DEFINED($PLAYER_CHAR)", от этого и метки так называются, что-то по типу защиты от декомпиляции.
Нужно в hex редакторе изменить эту строку на нормальную.