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

AWRage

Активный
642
141
Почему не могу поднять пикап командой? Хук работает, а команда нет.
CLEO:
{$CLEO}
0000: //131

while 8AFA:
wait 0
end
0BE1: setup_outcoming_rpc_hook @PickedUpPickup
0B34: "sendrpc" @SendRPC
0BDE: pause_thread 0

:PickedUpPickup
0BE5: 0@ = get_hook_param 1
if 0@ == 131
then
    0BE5: 0@ = get_hook_param 0
    0BE7: 1@ = bit_stream_read 0@ type 3
    0AF8: "Send - {FFAA00}RPC_PickedUpPickup {FFFFFF}| PickupID - {FFAA00}%i.." 0xFFFFFF 1@
end
0BE0: hook_ret true

:SendRPC
0B35: 0@ = get_last_command_params
0C1A: 0@ = atoi 0@
0BD1: send_picked_up_pickup 0@
0B43: cmd_ret
 

ackman31

Новичок
35
0
Лол, я что-то подправил в настройках Sanny Builder'a и все заработало.Спасибо всем за ответы.
 

ackman31

Новичок
35
0
Так посоны теперь вопрос такой: Как подключить к клео скрипту файл ини с настройками?
 

ackman31

Новичок
35
0
Код:
{$CLEO}
0000:
wait 2000

0AF8: "Cleo Fake arrest by ackman31 успешно загружено." color 0xADFF2F
while 8AFA: // Пока структуры SA:MP не загружены
wait 0
end

if 0AB0: 53 // если нажал клавишу '53'
0AF4: 0@ = read_string_from_ini_file "CLEO\ini\fakeareest" section "ini" key "Звание:"  // опкод для чтения строки
0AF4: 1@ = read_string_from_ini_file "CLEO\ini\fakeareest" section "ini" key "Ваш ник:" // опкод для чтения строки
0AF4: 1@ = read_string_from_ini_file "CLEO\ini\fakeareest" section "ini" key "Ник преступника:" // опкод для чтения строки
then
    while 0AB0: 53 // ждем пока её отпустишь
    wait 500
    end
    0AF8: "%d %d передает преступника %d в полицейский участок " color 0x00B2EE 0@ 1@ 2@
    0AF8: "%d был доставлен в тюрьму для отбытия наказания" color 0xFFFFFF 2@
    0AF8: "Время заключения: 6:55  " color 0x32CD32
end
wait 0
end
 
Последнее редактирование:

AWRage

Активный
642
141
Код:
{$CLEO}
0000:
wait 2000

0AF8: "Cleo Fake arrest by ackman31 успешно загружено." color 0xADFF2F
while 8AFA: // Пока структуры SA:MP не загружены
wait 0
end

if 0AB0: 53 // если нажал клавишу '53'
0AF4: 0@ = read_string_from_ini_file "CLEO\ini\fakeareest" section "ini" key "Звание"  // опкод для чтения строки
0AF4: 1@ = read_string_from_ini_file "CLEO\ini\fakeareest" section "ini" key "Ваш ник" // опкод для чтения строки
0AF4: 1@ = read_string_from_ini_file "CLEO\ini\fakeareest" section "ini" key "Ник преступника" // опкод для чтения строки
then
    while 0AB0: 53 // ждем пока её отпустишь
    wait 0
    end
    0AF8: "%d %d передает преступника %d в полицейский участок " color 0x00B2EE 0@ 1@ 2@
    0AF8: "%d был доставлен в тюрьму для отбытия наказания" color 0xFFFFFF 2@
    0AF8: "Время заключения: 6:55  " color 0x32CD32
end
wait 0
end
CLEO:
{$CLEO}
0000:

while 8AFA: // Пока структуры SA:MP не загружены
wait 0
end
0AF8: "Cleo Fake arrest by ackman31 успешно загружено." color 0xADFF2F

while true
if 0AB0: 53 // если нажал клавишу '53'
then
    while 0AB0: 53 // ждем пока её отпустишь
    wait 0
    end
    alloc 0@ 64
    alloc 1@ 64
    alloc 2@ 64
    0AF4: 0@ = read_string_from_ini_file "CLEO\fakeareest.ini" section "Main" key "Звание"  // опкод для чтения строки
    0AF4: 1@ = read_string_from_ini_file "CLEO\fakeareest.ini" section "Main"key "Ваш ник" // опкод для чтения строки
    0AF4: 2@ = read_string_from_ini_file "CLEO\fakeareest.ini" section "Main" key "Ник преступника" // опкод для чтения строки
    0AF8: "%s %s передает преступника %d в полицейский участок " color 0x00B2EE 0@ 1@ 2@
    0AF8: "%s был доставлен в тюрьму для отбытия наказания" color 0xFFFFFF 2@
    0AF8: "Время заключения: 6:55  " color 0x32CD32
    free 0@
    free 1@
    free 2@
end
wait 0
end
 

ackman31

Новичок
35
0
CLEO:
{$CLEO}
0000:

while 8AFA: // Пока структуры SA:MP не загружены
wait 0
end
0AF8: "Cleo Fake arrest by ackman31 успешно загружено." color 0xADFF2F

while true
if 0AB0: 53 // если нажал клавишу '53'
then
    while 0AB0: 53 // ждем пока её отпустишь
    wait 0
    end
    alloc 0@ 64
    alloc 1@ 64
    alloc 2@ 64
    0AF4: 0@ = read_string_from_ini_file "CLEO\fakeareest.ini" section "Main" key "Звание"  // опкод для чтения строки
    0AF4: 1@ = read_string_from_ini_file "CLEO\fakeareest.ini" section "Main"key "Ваш ник" // опкод для чтения строки
    0AF4: 2@ = read_string_from_ini_file "CLEO\fakeareest.ini" section "Main" key "Ник преступника" // опкод для чтения строки
    0AF8: "%s %s передает преступника %d в полицейский участок " color 0x00B2EE 0@ 1@ 2@
    0AF8: "%s был доставлен в тюрьму для отбытия наказания" color 0xFFFFFF 2@
    0AF8: "Время заключения: 6:55  " color 0x32CD32
    free 0@
    free 1@
    free 2@
end
wait 0
end
При компиляции пишет: Неизвестная команда alloc 0@64
 

AWRage

Активный
642
141
Как можно упросить такую конструкцию?
CLEO:
if and
0039: 0@ == 0
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 0
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 1
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 1
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 2
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 2
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 3
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 3
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 4
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 4
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 5
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 5
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 6
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 6
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 7
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 7
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 8
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 8
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 9
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 9
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 10
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 10
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
// ... там еще 200+ строчек
 

hnnssy

Известный
Друг
2,684
2,766
Как можно упросить такую конструкцию?
CLEO:
if and
0039: 0@ == 0
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 0
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 1
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 1
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 2
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 2
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 3
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 3
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 4
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 4
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 5
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 5
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 6
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 6
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 7
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 7
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 8
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 8
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 9
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 9
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 10
0039: 1@ == 0
then
    0006: 0@ = 1
    0006: 1@ = 0
end
if and
0039: 0@ == 10
0039: 1@ == 30
then
    0006: 0@ = 1
    0006: 1@ = 0
end
// ... там еще 200+ строчек
Что это за бред? И зачем столько проверок, если исход всегда один — в 0@ пишем 1, в 1@ - 0.