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

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,695
1,448

Код:
{$CLEO}
 
wait 0
 
repeat
    wait 400
until 0AFA: samp_structs_loaded
 
alloc 1@ 144
alloc 2@ 28
 
while true
    wait 0
    0B75: samp get_chat_string 99 text_to 1@ prefix_to 2@ color_to 3@ prefix_color_to 4@
    if 0C18: 5@ = strstr string1 1@ string2 "Server closed the connection."
    then
        wait 16500
        0B27: samp set_gamestate 1
        wait 250
    end
end
 
  • Нравится
Реакции: a9GqC0p5lGgf

Bilbo

Новичок
7
0
Вообщем привет вам ребят:) Меня настигла такая проблема, что после компиляции скрипта на моём компьютере он напрочь перестаёт работать. При это никакие ошибки в Sanny Builder не появляются, с виду всё проходит гладко, но скрипт после компиляции, повторюсь , не работает. У меня установлен SB 3.2.2, Cleo 4.3.16 и SF 3.2. Пробовал неоднократно переустанавливать всё это, но, увы, результатов это не дало. К тому же, когда я попросил друга скомпилировать код, у него всё прошло успешно и скрипт работал после его компиляции. У меня есть подозрение, что это связано с тем, что у меня Windows 8.1, но это лишь версия. Так что ребят, жду вашей помощи. Надеюсь после неё скрипты будут после компиляции работать.
 

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,695
1,448
Вообщем привет вам ребят:) Меня настигла такая проблема, что после компиляции скрипта на моём компьютере он напрочь перестаёт работать. При это никакие ошибки в Sanny Builder не появляются, с виду всё проходит гладко, но скрипт после компиляции, повторюсь , не работает. У меня установлен SB 3.2.2, Cleo 4.3.16 и SF 3.2. Пробовал неоднократно переустанавливать всё это, но, увы, результатов это не дало. К тому же, когда я попросил друга скомпилировать код, у него всё прошло успешно и скрипт работал после его компиляции. У меня есть подозрение, что это связано с тем, что у меня Windows 8.1, но это лишь версия. Так что ребят, жду вашей помощи. Надеюсь после неё скрипты будут после компиляции работать.

Код скрипта дай.
 

Enjoy

Новичок
Проверенный
164
11
Я чет короче жестко обосрался с этими фор эндами, не доходит там до таймера короче.
+ Скорее всего ещё и метку кмд криво сделал, ну в общем поясните.

Код:
{$CLEO .cs}
 
0000:
Thread 'DrugTimer'
 
repeat
wait 400
until 0afa: is_samp_structures_available
 
0B34: samp register_client_command "dtimer" to_label @cmd
 
while true
wait 0
 
    if 0@ == 1
    then
        alloc 2@ 128
        alloc 3@ 128
        0B75: samp get_chat_string 1@ text_to 2@ prefix_to 3@ color_to 4@ prefix_color_to 5@
            for 1@ = 90 to 99
                6@ = SAMP.GetSAMPPlayerIDByActorHandle($PLAYER_ACTOR)
                7@ = SAMP.GetPlayerNickname(6@)
                if 0C18: 2@ = strstr string1 1@ string2 "%s употребил(а) наркотик" 7@
                then
                    for 8@ = 5 downto 0
                    0AF8: samp add_message_to_chat "Можешь юзать нарко." color 0x99CC00
                    end
                0ac9: 2@
                0ac9: 3@
                end
            end
    end     
end
 
:cmd
0B12: 0@ = 0@ XOR 1
if 0@ = 1
then
    0AF8: samp add_message_to_chat "Таймер вкл." color 0x99CC00
else
    0AF8: samp add_message_to_chat "Таймер выкл." color 0x99CC00
    0@ = 0
end
Samp.CmdRet()
 

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,695
1,448
хаха
0c18 не поддерживает форматирование.
 
  • Нравится
Реакции: Enjoy

DoneUp

Новичок
28
0
Опкод 0AE1: не работает. В конце должно быть не samp.CmdRet(), а джамп в начало цикла. Вообще лучше пиши на высокоуровневом коде


PHP:
{$CLEO}
thread "DoneUp" // Не обязательно
if not 0@ = SAMP.Base()
then 0A93: end_custom_thread
end
while not SAMP.Available()
wait 100
end
:DoneUp
wait 0
if
key_down 114
jf @DoneUp
0B2B: samp 20@ = get_player_id_by_actor_handle $actor // получаем id игрока
0AF9: samp say_msg "/give drugs %s 1" 20@ //Текст имеет идентификатор %s (string)- строка символов.
goto @DoneUp
Теперь крашит(
 

hnnssy

Известный
Друг
2,684
2,748
PHP:
{$CLEO}
thread "DoneUp" // Не обязательно
if not 0@ = SAMP.Base()
then 0A93: end_custom_thread
end
while not SAMP.Available()
wait 100
end
:DoneUp
wait 0
if
key_down 114
jf @DoneUp
0B2B: samp 20@ = get_player_id_by_actor_handle $actor // получаем id игрока
0AF9: samp say_msg "/give drugs %s 1" 20@ //Текст имеет идентификатор %s (string)- строка символов.
goto @DoneUp
Теперь крашит(
Конечно крашит, пытаешься получить ид игрока, которого нет.
 

CallBack

Новичок
11
1
PHP:
{$CLEO}
thread "DoneUp" // Не обязательно
if not 0@ = SAMP.Base()
then 0A93: end_custom_thread
end
while not SAMP.Available()
wait 100
end
:DoneUp
wait 0
if
key_down 114
jf @DoneUp
0B2B: samp 20@ = get_player_id_by_actor_handle $actor // получаем id игрока
0AF9: samp say_msg "/give drugs %s 1" 20@ //Текст имеет идентификатор %s (string)- строка символов.
goto @DoneUp
Теперь крашит(

Я вообще не понял суть твоего клео , и что ты хотел сделать.