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

iTz_WEEZY

Известный
298
88
Как в этом скрипте сделать так, чтобы на нажатие клавиши давалось 5 секунд, если не нажимаешь, то отправляет скрипт в начало. Уже сделал, всё)
у таира есть видео "Отрицательные опкоды"
CLEO:
if
wait 5000
8AB0: key_pressed 228 //-Если не нажата клавиша
then 
jump //-Куда-то
Наверное так
 

iTz_WEEZY

Известный
298
88
почему игнорит пробелы? выдает весь текст слитно без пробелов
CLEO:
:help_210
wait 0
0AC6: 33@ = label @help_211 offset
0B3B: samp show_dialog id 1 caption "Статистика игрового аккаунта" text 33@ button_1 "Ок" button_2 "" style 0        
0B43: samp cmd_ret

:help_211

hex
7B "FFFFFF" 7D "{00FF04}__________________________________________________" A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{ffffff}Имя:                    {9ACD32}Ueban" A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{ffffff}Уровень:                3" A
7B "FFFFFF" 7D "{ffffff}Exp:                    12/{FF6347}16" A
7B "FFFFFF" 7D "{ffffff}Часов в игре:                32" A
7B "FFFFFF" 7D "{ffffff}Пол:                    Мужчина" A
7B "FFFFFF" 7D "{ffffff}Статус в штате:                Новичёк" A
7B "FFFFFF" 7D "{ffffff}Статус {FFFF00}VIP{ffffff}:                НЕТ" A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{00FF04}__________________________________________________" A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{ffffff}Донат:                    0" A
7B "FFFFFF" 7D "{ffffff}Законопослушность:            80" A
7B "FFFFFF" 7D "{ffffff}Арестов:                0" A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{ffffff}Варн(ов):                0/{FF6347}3" A
7B "FFFFFF" 7D "{ffffff}Уровень Преступлений:            0/{FF6347}6" A
7B "FFFFFF" 7D "{ffffff}Смертей в розыске:            0" A
7B "FFFFFF" 7D "{ffffff}Наркозависимость:            0" A
7B "FFFFFF" 7D "{ffffff}нарко при себе:            0/{FF6347}150" A
7B "FFFFFF" 7D "{ffffff}Материалы при себе:            0/{FF6347}1500" A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{00FF04}__________________________________________________" A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{ffffff}Работа:                    Инкассатор" A
7B "FFFFFF" 7D "{ffffff}Безработица:                0 час." A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{ffffff}Денег:                    2818{FFFF00} $" A
7B "FFFFFF" 7D "{ffffff}В банке:                59857{FFFF00} $" A
7B "FFFFFF" 7D "{ffffff}Телефон:                2005641" A
7B "FFFFFF" 7D "{ffffff}Баланс на телефоне:            6560{FFFF00} $" A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{00FF04}__________________________________________________" A
7B "FFFFFF" 7D " " A
end
да и еще в самом конце списка приписываются какие то символы
 

BlackKnigga

Известный
BH Team
922
446
почему игнорит пробелы? выдает весь текст слитно без пробелов
CLEO:
:help_210
wait 0
0AC6: 33@ = label @help_211 offset
0B3B: samp show_dialog id 1 caption "Статистика игрового аккаунта" text 33@ button_1 "Ок" button_2 "" style 0       
0B43: samp cmd_ret

:help_211

hex
7B "FFFFFF" 7D "{00FF04}__________________________________________________" A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{ffffff}Имя:                    {9ACD32}Ueban" A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{ffffff}Уровень:                3" A
7B "FFFFFF" 7D "{ffffff}Exp:                    12/{FF6347}16" A
7B "FFFFFF" 7D "{ffffff}Часов в игре:                32" A
7B "FFFFFF" 7D "{ffffff}Пол:                    Мужчина" A
7B "FFFFFF" 7D "{ffffff}Статус в штате:                Новичёк" A
7B "FFFFFF" 7D "{ffffff}Статус {FFFF00}VIP{ffffff}:                НЕТ" A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{00FF04}__________________________________________________" A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{ffffff}Донат:                    0" A
7B "FFFFFF" 7D "{ffffff}Законопослушность:            80" A
7B "FFFFFF" 7D "{ffffff}Арестов:                0" A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{ffffff}Варн(ов):                0/{FF6347}3" A
7B "FFFFFF" 7D "{ffffff}Уровень Преступлений:            0/{FF6347}6" A
7B "FFFFFF" 7D "{ffffff}Смертей в розыске:            0" A
7B "FFFFFF" 7D "{ffffff}Наркозависимость:            0" A
7B "FFFFFF" 7D "{ffffff}нарко при себе:            0/{FF6347}150" A
7B "FFFFFF" 7D "{ffffff}Материалы при себе:            0/{FF6347}1500" A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{00FF04}__________________________________________________" A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{ffffff}Работа:                    Инкассатор" A
7B "FFFFFF" 7D "{ffffff}Безработица:                0 час." A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{ffffff}Денег:                    2818{FFFF00} $" A
7B "FFFFFF" 7D "{ffffff}В банке:                59857{FFFF00} $" A
7B "FFFFFF" 7D "{ffffff}Телефон:                2005641" A
7B "FFFFFF" 7D "{ffffff}Баланс на телефоне:            6560{FFFF00} $" A
7B "FFFFFF" 7D " " A
7B "FFFFFF" 7D "{00FF04}__________________________________________________" A
7B "FFFFFF" 7D " " A
end
да и еще в самом конце списка приписываются какие то символы
Заменяй пробелы табуляцией(0x09) и в самом конце добавь нуль.
 

kraft1k

Вынь х*й из головы и все получится © hnnssy
Друг
1,480
1,167
Всё сработало, но всё записывает в одну строку(да пох) и вылет после записи

просто вместо .ini написть .txd ?


CLEO:
{$CLEO}

const
DIALOG_STYLE_LIST = 2 // Ñî ñïèñêîì
end

0000:
0662: "by Dominic"
0662: "Dominic - binder for MZ"

while not SAMP.Available()
wait 400
end

while true
wait 0
if 0ab0: key_down 66
then
while 0ab0: key_down 66
wait 0
if 0ab0: key_down 51
then
0ac8: alloc 0@ size 256
0ad3: format_stirng 0@ = "Ïåðâûé ïóíêò%cÂòîðîé ïóíêò%cÒðåòèé ïóíêò%c×åòâ¸ðòûé ïóíêò%cÏÿòûé ïóíêò" 0xA 0xA 0xA 0xA
0B3B: samp show_dialog id 47 caption "Òðåòèé äèàëîã" text 0@ button_1 "Âûáðàòü" button_2 "Çàêðûòü" style DIALOG_STYLE_LIST
0ac9: free 0@
break
end
end

while 0ab0: key_down 66
wait 0
end
end

// DIALOG_STYLE_LIST
if 0B3C: samp is_dialog_responded id 47 button 1@ list_item 5@ input_text 0 // Ëîããèðóåì íàæàòèå êíîïêè äèàëîãà è âûáðàííîãî ýëåìåíòà èç ñïèñêà äèàëîãà 47
then
if 1@ == 1 // Áûëà íàæàòà ïåðâàÿ êíîïêà
then
0af8: chat "Áûëà íàæàòà ïåðâàÿ êíîïêà: {ffff00}Óðÿ" -1
0af8: chat "Áûë âûáðàí ýëåìåíò íîìåð: {ffff00}%d" -1 5@
if 5@ == 0
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Ïåðâûé ïóíêò" -1
end

if 5@ == 1
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Âòîðîé ïóíêò" -1
end

if 5@ == 2
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Òðåòèé ïóíêò" -1
end

if 5@ == 3
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}×åòâ¸ðòûé ïóíêò" -1
end

if 5@ == 4
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Ïÿòûé ïóíêò" -1
end
end
0ac9: free 2@
end
{$CLEO}

const
DIALOG_STYLE_LIST = 2 // Ñî ñïèñêîì
end

0000:
0662: "by Dominic"
0662: "Dominic - binder for MZ"

while not SAMP.Available()
wait 400
end

while true
wait 0
if 0ab0: key_down 66
then
while 0ab0: key_down 66
wait 0
if 0ab0: key_down 51
then
0ac8: alloc 0@ size 256
0ad3: format_stirng 0@ = "Ïåðâûé ïóíêò%cÂòîðîé ïóíêò%cÒðåòèé ïóíêò%c×åòâ¸ðòûé ïóíêò%cÏÿòûé ïóíêò" 0xA 0xA 0xA 0xA
0B3B: samp show_dialog id 47 caption "Òðåòèé äèàëîã" text 0@ button_1 "Âûáðàòü" button_2 "Çàêðûòü" style DIALOG_STYLE_LIST
0ac9: free 0@
break
end
end

while 0ab0: key_down 66
wait 0
end
end

// DIALOG_STYLE_LIST
if 0B3C: samp is_dialog_responded id 47 button 1@ list_item 5@ input_text 0 // Ëîããèðóåì íàæàòèå êíîïêè äèàëîãà è âûáðàííîãî ýëåìåíòà èç ñïèñêà äèàëîãà 47
then
if 1@ == 1 // Áûëà íàæàòà ïåðâàÿ êíîïêà
then
0af8: chat "Áûëà íàæàòà ïåðâàÿ êíîïêà: {ffff00}Óðÿ" -1
0af8: chat "Áûë âûáðàí ýëåìåíò íîìåð: {ffff00}%d" -1 5@
if 5@ == 0
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Ïåðâûé ïóíêò" -1
end

if 5@ == 1
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Âòîðîé ïóíêò" -1
end

if 5@ == 2
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Òðåòèé ïóíêò" -1
end

if 5@ == 3
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}×åòâ¸ðòûé ïóíêò" -1
end

if 5@ == 4
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Ïÿòûé ïóíêò" -1
end
end
0ac9: free 2@
end
Нет,создаёшь name.txt , дальше выделяешь память и записываешь в name.txt , потом читаешь из name.txt ( если нужно )
Запись:

CLEO:
alloc 0@ 1024
alloc 2@ 1024
alloc 3@ 1024
  memset 0@ 0x0 1024
  0BD7: samp get_dialog_text 0@
  0A9A: 1@ = openfile "CLEO\dialogtext.txt" mode "wt"
  0AD8: write_string_to_file 1@ from 0@
  0A9B: closefile 1@
 
  • Нравится
Реакции: iTz_WEEZY

Cerberus

Режим чтения
13
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Есть ли опкод который узнает FPS?
 

Cerberus

Режим чтения
13
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Спасибо) А можете еще сказать опкод, который узнает дату и время?

----------------------------------------------------------------------------------------

Как сделать, чтобы одна переменная обновлялась раз в секунду, а все остальные как обычно?
 
Последнее редактирование:

Kolya_Kortez

Участник
49
3
Всё сработало, но всё записывает в одну строку(да пох) и вылет после записи

просто вместо .ini написть .txd ?


CLEO:
{$CLEO}

const
DIALOG_STYLE_LIST = 2 // Ñî ñïèñêîì
end

0000:
0662: "by Dominic"
0662: "Dominic - binder for MZ"

while not SAMP.Available()
wait 400
end

while true
wait 0
if 0ab0: key_down 66
then
while 0ab0: key_down 66
wait 0
if 0ab0: key_down 51
then
0ac8: alloc 0@ size 256
0ad3: format_stirng 0@ = "Ïåðâûé ïóíêò%cÂòîðîé ïóíêò%cÒðåòèé ïóíêò%c×åòâ¸ðòûé ïóíêò%cÏÿòûé ïóíêò" 0xA 0xA 0xA 0xA
0B3B: samp show_dialog id 47 caption "Òðåòèé äèàëîã" text 0@ button_1 "Âûáðàòü" button_2 "Çàêðûòü" style DIALOG_STYLE_LIST
0ac9: free 0@
break
end
end

while 0ab0: key_down 66
wait 0
end
end

// DIALOG_STYLE_LIST
if 0B3C: samp is_dialog_responded id 47 button 1@ list_item 5@ input_text 0 // Ëîããèðóåì íàæàòèå êíîïêè äèàëîãà è âûáðàííîãî ýëåìåíòà èç ñïèñêà äèàëîãà 47
then
if 1@ == 1 // Áûëà íàæàòà ïåðâàÿ êíîïêà
then
0af8: chat "Áûëà íàæàòà ïåðâàÿ êíîïêà: {ffff00}Óðÿ" -1
0af8: chat "Áûë âûáðàí ýëåìåíò íîìåð: {ffff00}%d" -1 5@
if 5@ == 0
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Ïåðâûé ïóíêò" -1
end

if 5@ == 1
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Âòîðîé ïóíêò" -1
end

if 5@ == 2
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Òðåòèé ïóíêò" -1
end

if 5@ == 3
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}×åòâ¸ðòûé ïóíêò" -1
end

if 5@ == 4
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Ïÿòûé ïóíêò" -1
end
end
0ac9: free 2@
end
{$CLEO}

const
DIALOG_STYLE_LIST = 2 // Ñî ñïèñêîì
end

0000:
0662: "by Dominic"
0662: "Dominic - binder for MZ"

while not SAMP.Available()
wait 400
end

while true
wait 0
if 0ab0: key_down 66
then
while 0ab0: key_down 66
wait 0
if 0ab0: key_down 51
then
0ac8: alloc 0@ size 256
0ad3: format_stirng 0@ = "Ïåðâûé ïóíêò%cÂòîðîé ïóíêò%cÒðåòèé ïóíêò%c×åòâ¸ðòûé ïóíêò%cÏÿòûé ïóíêò" 0xA 0xA 0xA 0xA
0B3B: samp show_dialog id 47 caption "Òðåòèé äèàëîã" text 0@ button_1 "Âûáðàòü" button_2 "Çàêðûòü" style DIALOG_STYLE_LIST
0ac9: free 0@
break
end
end

while 0ab0: key_down 66
wait 0
end
end

// DIALOG_STYLE_LIST
if 0B3C: samp is_dialog_responded id 47 button 1@ list_item 5@ input_text 0 // Ëîããèðóåì íàæàòèå êíîïêè äèàëîãà è âûáðàííîãî ýëåìåíòà èç ñïèñêà äèàëîãà 47
then
if 1@ == 1 // Áûëà íàæàòà ïåðâàÿ êíîïêà
then
0af8: chat "Áûëà íàæàòà ïåðâàÿ êíîïêà: {ffff00}Óðÿ" -1
0af8: chat "Áûë âûáðàí ýëåìåíò íîìåð: {ffff00}%d" -1 5@
if 5@ == 0
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Ïåðâûé ïóíêò" -1
end

if 5@ == 1
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Âòîðîé ïóíêò" -1
end

if 5@ == 2
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Òðåòèé ïóíêò" -1
end

if 5@ == 3
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}×åòâ¸ðòûé ïóíêò" -1
end

if 5@ == 4
then
0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Ïÿòûé ïóíêò" -1
end
end
0ac9: free 2@
end
что изменил? -_-
 

Cerberus

Режим чтения
13
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Что делать, когда закончились переменные? (Их уже 29)
 

DarkP1xel

Сила воли наше всё.
BH Team
3,635
4,979
Что делать, когда закончились переменные? (Их уже 29)
CLEO:
0AC8: 0@ = allocate_memory_size 512
0C11: memset destination 0@ value 0x0 size 512

0AB1: call_scm_func @CallBuffer Params 4 {ID Ячейки}0 {Указатель на Buffer}0@ {Тип функции}1 {Число}420 || {Result}1@

:CallBuffer
// 0@ - ID Ячейки.
// 1@ - Указатель на Buffer .
// 2@ - Тип функции {1 - Write, Other - Read}.
// 3@ - Число для записи.
0012: 0@ *= 4 // Получаем смещение на указанную ячейку.
005A: 0@ += 1@ // Получаем указатель на ячейку.
IF 0039:   2@ == 1 // Проверяем тип вызова.
THEN 0A8C: write_memory 0@ size 4 value 3@ virtual_protect TRUE // Запись данных в ячейку.
ELSE 0A8D: 25@ = read_memory 0@ size 4 virtual_protect TRUE // Считывание данных.
END
0AB2: RET_ 1 {Result}25@