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

Azller Lollison

я узбек
Друг
1,342
2,265
Почему не показывается диалог?
первый диалог с 5 ид есть, но второй не пашет..
CLEO:
{$CLEO}
{$INCLUDE SF}
0000:
repeat
wait 0
until 0AFA:

WHILE TRUE
wait 0
    IF 0B3C: samp is_dialog_responded id 5 button 1@ list_item 3@ input_text 0
    THEN
        if 1@ == 1
        then
              log "открылся" -1
              log "%d" -1 3@
              if 3@ == 0
              then
                      alloc 6@ 128
                      alloc 4@ 128
                      0AF1: write_int 1 to_ini_file "cleo\at.ini" section "Ans" key "Test"
                      0AF0: 5@ = get_int_from_ini_file "cleo\at.ini" section "Ans" key "AnsPoint"
                      0AF4: 6@ = read_string_from_ini_file "cleo\at.ini" section "Ans" key "AnsStr"
                      0AA5: call 0x8220AD num_params 4 pop 4 params 4@ 3@v "%d %s" 6@
                      0ad3: format_stirng 0@ = "Кол-во ответов:%d %cПоследний ответ:%s %cКакому ID был ответ:%d%c" 5@ 0xA 4@ 0xA 3@ 0x0
                      0B3B: samp show_dialog id 314 caption "{FBBC3C}AT by Azller v1.0a | Ans Stats" text 0@ button_1 "Выбрать" button_2 "Закрыть" style DIALOG_STYLE_LIST
              end
              if 3@ == 1
              then
                      0af8: chat "Был выбран элемент: {ffff00}Второй пункт" -1
              end
              if 3@ == 2
              then
                      0af8: chat "Был выбран элемент: {ffff00}Третий пункт" -1
              end
        else

            0af8: chat "Была нажата вторая кнопка: {ffff00}Закрыть" -1
        end
    END
END
 

hnnssy

Известный
Друг
2,684
2,754
весь код дай
Почему не показывается диалог?
первый диалог с 5 ид есть, но второй не пашет..
CLEO:
{$CLEO}
{$INCLUDE SF}
0000:
repeat
wait 0
until 0AFA:

WHILE TRUE
wait 0
    IF 0B3C: samp is_dialog_responded id 5 button 1@ list_item 3@ input_text 0
    THEN
        if 1@ == 1
        then
              log "открылся" -1
              log "%d" -1 3@
              if 3@ == 0
              then
                      alloc 6@ 128
                      alloc 4@ 128
                      0AF1: write_int 1 to_ini_file "cleo\at.ini" section "Ans" key "Test"
                      0AF0: 5@ = get_int_from_ini_file "cleo\at.ini" section "Ans" key "AnsPoint"
                      0AF4: 6@ = read_string_from_ini_file "cleo\at.ini" section "Ans" key "AnsStr"
                      0AA5: call 0x8220AD num_params 4 pop 4 params 4@ 3@v "%d %s" 6@
                      0ad3: format_stirng 0@ = "Кол-во ответов:%d %cПоследний ответ:%s %cКакому ID был ответ:%d%c" 5@ 0xA 4@ 0xA 3@ 0x0
                      0B3B: samp show_dialog id 314 caption "{FBBC3C}AT by Azller v1.0a | Ans Stats" text 0@ button_1 "Выбрать" button_2 "Закрыть" style DIALOG_STYLE_LIST
              end
              if 3@ == 1
              then
                      0af8: chat "Был выбран элемент: {ffff00}Второй пункт" -1
              end
              if 3@ == 2
              then
                      0af8: chat "Был выбран элемент: {ffff00}Третий пункт" -1
              end
        else

            0af8: chat "Была нажата вторая кнопка: {ffff00}Закрыть" -1
        end
    END
END
 
1,417
1,030
Почему не показывается диалог?
первый диалог с 5 ид есть, но второй не пашет..
CLEO:
{$CLEO}
{$INCLUDE SF}
0000:
repeat
wait 0
until 0AFA:

WHILE TRUE
wait 0
    IF 0B3C: samp is_dialog_responded id 5 button 1@ list_item 3@ input_text 0
    THEN
        if 1@ == 1
        then
              log "открылся" -1
              log "%d" -1 3@
              if 3@ == 0
              then
                      alloc 6@ 128
                      alloc 4@ 128
                      0AF1: write_int 1 to_ini_file "cleo\at.ini" section "Ans" key "Test"
                      0AF0: 5@ = get_int_from_ini_file "cleo\at.ini" section "Ans" key "AnsPoint"
                      0AF4: 6@ = read_string_from_ini_file "cleo\at.ini" section "Ans" key "AnsStr"
                      0AA5: call 0x8220AD num_params 4 pop 4 params 4@ 3@v "%d %s" 6@
                      0ad3: format_stirng 0@ = "Кол-во ответов:%d %cПоследний ответ:%s %cКакому ID был ответ:%d%c" 5@ 0xA 4@ 0xA 3@ 0x0
                      0B3B: samp show_dialog id 314 caption "{FBBC3C}AT by Azller v1.0a | Ans Stats" text 0@ button_1 "Выбрать" button_2 "Закрыть" style DIALOG_STYLE_LIST
              end
              if 3@ == 1
              then
                      0af8: chat "Был выбран элемент: {ffff00}Второй пункт" -1
              end
              if 3@ == 2
              then
                      0af8: chat "Был выбран элемент: {ffff00}Третий пункт" -1
              end
        else

            0af8: chat "Была нажата вторая кнопка: {ffff00}Закрыть" -1
        end
    END
END
если ты использовал тот код, который я скинул и он не работает, то у тебя что-то с руками
 

Azller Lollison

я узбек
Друг
1,342
2,265
если ты использовал тот код, который я скинул и он не работает, то у тебя что-то с руками
Скорее всего так и есть..

Приготовся увидеть порцию быдлокода..
Сделал в двух клео ибо руки не позволяют в одном сделать.
CLEO:
{$CLEO}
{$NOSOURCE}
0C6A: 22@ = create_custom_thread_at_label @render
0000:

const
    DIALOG_STYLE_MSGBOX = 0 // С текстом
    DIALOG_STYLE_INPUT = 1 // С полем для ввода текста
    DIALOG_STYLE_LIST = 2 // Со списком
    DIALOG_STYLE_PASSWORD = 3 // С полем для ввода текста, текст заменяется точками
    DIALOG_STYLE_TABLIST = 4 // Похож на DIALOG_STYLE_LIST, но может быть разбит на несколько колонок
    DIALOG_STYLE_TABLIST_HEADERS = 5 // Тот же, что и DIALOG_STYLE_TABLIST, но имеет заголовки для колонок
end

:Samp
wait 600
   SAMP.Available
jf @Samp
wait 5000
0AF8: "{FBBC3C}AT | {FFFFFF}Автор: Azller." 0xFBBC3C
0AF8: "{FBBC3C}AT | {FFFFFF}Скрипт был успешно загружен." 0xFBBC3C
0AF8: "{FBBC3C}AT | {FFFFFF}Большая просьба, не пытаться подкручивать себе значения." 0xFBBC3C
0AF8: "{FBBC3C}AT | {FFFFFF}Старшая администрация может смотреть Вашу точную статистику." 0xFBBC3C
0AF8: "{FBBC3C}AT | {FFFFFF}Приятного администрирования <3" 0xFBBC3C
0B34: samp register_client_command "ans" to_label @ans
0B34: samp register_client_command "mute" to_label @mute
0B34: samp register_client_command "kick" to_label @kick
0B34: samp register_client_command "warn" to_label @warn
0B34: samp register_client_command "ban" to_label @ban
0B34: "dlg" @dialog
0AAC: 15@ = load_audiostream "cleo\Song\smb_jump-small.mp3"
0AAC: 16@ = load_audiostream "cleo\Song\smb_coin.mp3"
0BDE: pause_thread 0


:ans
   SAMP.IsCommandTyped(0@)
alloc 5@ 256
0B35: samp 4@ = get_last_command_params
0AD3: 5@ = format "%s" 4@
0AD4: 14@ = scan_string 0@ format "%d %s" 12@ 13@
if
14@ == 2
jf @error
0AF9: samp say_msg "./ans %s" 4@
0AAD: set_mp3 16@ perform_action 1
0AF0: 3@ = get_int_from_ini_file "cleo\at.ini" section "Ans" key "AnsPoint"
0A8E: 6@ = 3@ + 1
0AF1: write_int 6@ to_ini_file "cleo\at.ini" section "Ans" key "AnsPoint"
0AF5: write_string 4@ to_ini_file "cleo\at.ini" section "Ans" key "AnsStr"
0AC9: free_allocated_memory 5@
SAMP.CmdRet()

:mute
   SAMP.IsCommandTyped(0@)
alloc 5@ 256
0B35: samp 4@ = get_last_command_params
0AD3: 5@ = format "%s" 4@
0AD4: 14@ = scan_string 0@ format "%d %d %s" 12@ 13@ 15@
if
14@ == 3
jf @error
0AF9: samp say_msg "./mute %s" 4@
0AAD: set_mp3 16@ perform_action 1
0AF0: 3@ = get_int_from_ini_file "cleo\at.ini" section "Mute" key "MutePoint"
0A8E: 6@ = 3@ + 1
0AF1: write_int 6@ to_ini_file "cleo\at.ini" section "Mute" key "MutePoint"
0AF5: write_string 4@ to_ini_file "cleo\at.ini" section "Mute" key "MuteStr"
0AC9: free_allocated_memory 5@
SAMP.CmdRet()

:kick
   SAMP.IsCommandTyped(0@)
alloc 5@ 256
0B35: samp 4@ = get_last_command_params
0AD3: 5@ = format "%s" 4@
0AD4: 14@ = scan_string 0@ format "%d %s" 12@ 13@
if
14@ == 2
jf @error
0AF9: samp say_msg "./kick %s" 4@
0AAD: set_mp3 16@ perform_action 1
0AF0: 3@ = get_int_from_ini_file "cleo\at.ini" section "Kick" key "KickPoint"
0A8E: 6@ = 3@ + 1
0AF1: write_int 6@ to_ini_file "cleo\at.ini" section "Kick" key "KickPoint"
0AF5: write_string 4@ to_ini_file "cleo\at.ini" section "Kick" key "KickStr"
0AC9: free_allocated_memory 5@
SAMP.CmdRet()

:warn
   SAMP.IsCommandTyped(0@)
alloc 5@ 256
0B35: samp 4@ = get_last_command_params
0AD3: 5@ = format "%s" 4@
0AD4: 14@ = scan_string 0@ format "%d %s" 12@ 13@
if
14@ == 2
jf @error
0AF9: samp say_msg "./warn %s" 4@
0AAD: set_mp3 16@ perform_action 1
0AF0: 3@ = get_int_from_ini_file "cleo\at.ini" section "Warn" key "WarnPoint"
0A8E: 6@ = 3@ + 1
0AF1: write_int 6@ to_ini_file "cleo\at.ini" section "Warn" key "WarnPoint"
0AF5: write_string 4@ to_ini_file "cleo\at.ini" section "Warn" key "WarnStr"
0AC9: free_allocated_memory 5@
SAMP.CmdRet()

:ban
   SAMP.IsCommandTyped(0@)
alloc 5@ 256
0B35: samp 4@ = get_last_command_params
0AD3: 5@ = format "%s" 4@
0AD4: 14@ = scan_string 0@ format "%d %d %s" 12@ 13@ 15@
if
14@ == 3
jf @error
0AF9: samp say_msg "./ban %s" 4@
0AAD: set_mp3 16@ perform_action 1
0AF0: 3@ = get_int_from_ini_file "cleo\at.ini" section "Ban" key "BanPoint"
0A8E: 6@ = 3@ + 1
0AF1: write_int 6@ to_ini_file "cleo\at.ini" section "Ban" key "BanPoint"
0AF5: write_string 4@ to_ini_file "cleo\at.ini" section "Ban" key "BanStr"
0AC9: free_allocated_memory 5@
SAMP.CmdRet()

:render
wait 0
0AF0: 7@ = get_int_from_ini_file "cleo\at.ini" section "Ans" key "AnsPoint"
0AF0: 8@ = get_int_from_ini_file "cleo\at.ini" section "Mute" key "MutePoint"
0AF0: 9@ = get_int_from_ini_file "cleo\at.ini" section "Kick" key "KickPoint"
0AF0: 10@ = get_int_from_ini_file "cleo\at.ini" section "Warn" key "WarnPoint"
0AF0: 11@ = get_int_from_ini_file "cleo\at.ini" section "Ban" key "BanPoint"
printf "A[%d] ~B~M[%d] ~P~K[%d] ~Y~W[%d] ~R~B[%d]" 100 7@ 8@ 9@ 10@ 11@
jump @render

:error
0AAD: set_mp3 15@ perform_action 1
0AF8: "{FBBC3C}AT | {FFFFFF}Вы ввели неверное кол-во аргументов. Команда не была засчитана." 0xFBBC3C
SAMP.CmdRet()

:dialog
0ac8: alloc 30@ size 128
0AC6: 30@ = label @hex offset
0B3B: samp show_dialog id 5 caption "{FBBC3C}Admin Tools by Azller v1.0a" text 30@ button_1 "Выбрать" button_2 "Закрыть" style DIALOG_STYLE_LIST
SAMP.CmdRet()

:hex
hex
"Информация об ответах\n"
"Информация об мутах\n"
"Информация об киках\n"
"Информация об jail\n"
"Информация об варнах\n"
"Информация об банах\0"
end

И второе клео, для вывода инфы с 1-го диалога:

CLEO:
{$CLEO}
{$INCLUDE SF}
0000:
repeat
wait 0
until 0AFA:

WHILE TRUE
wait 0
    IF 0B3C: samp is_dialog_responded id 5 button 1@ list_item 3@ input_text 0
    THEN
        if 1@ == 1
        then
              log "открылся" -1
              log "%d" -1 3@
              if 3@ == 0
              then
                      alloc 6@ 128
                      alloc 4@ 128
                      0AF1: write_int 1 to_ini_file "cleo\at.ini" section "Ans" key "Test"
                      0AF0: 5@ = get_int_from_ini_file "cleo\at.ini" section "Ans" key "AnsPoint"
                      0AF4: 6@ = read_string_from_ini_file "cleo\at.ini" section "Ans" key "AnsStr"
                      0AA5: call 0x8220AD num_params 4 pop 4 params 4@ 3@v "%d %s" 6@
                      0ad3: format_stirng 0@ = "Кол-во ответов:%d %cПоследний ответ:%s %cКакому ID был ответ:%d%c" 5@ 0xA 4@ 0xA 3@ 0x0
                      0B3B: samp show_dialog id 314 caption "{FBBC3C}AT by Azller v1.0a | Ans Stats" text 0@ button_1 "Выбрать" button_2 "Закрыть" style DIALOG_STYLE_LIST
              end
              if 3@ == 1
              then
                      0af8: chat "Был выбран элемент: {ffff00}Второй пункт" -1
              end
              if 3@ == 2
              then
                      0af8: chat "Был выбран элемент: {ffff00}Третий пункт" -1
              end
        else

            0af8: chat "Была нажата вторая кнопка: {ffff00}Закрыть" -1
        end
    END
END
 
Последнее редактирование модератором:

Azller Lollison

я узбек
Друг
1,342
2,265
Кто бы ещё под форматирование 0@ память бы выделял.
Поставь:
CLEO:
alloc 0@ 128
И free 0@, free 6@, free 4@ не забывай ставить, ибо нагрузка на пк будет, вроде.
Всё поставил, но теперь при вводе /dlg, начинает мигать вода и моргает экран черным..
 
1,417
1,030
Всё поставил, но теперь при вводе /dlg, начинает мигать вода и моргает экран черным..
CLEO:
{$CLEO}
{$NOSOURCE}
0000:

const
    DIALOG_STYLE_MSGBOX = 0 // Ñ òåêñòîì
    DIALOG_STYLE_INPUT = 1 // Ñ ïîëåì äëÿ ââîäà òåêñòà
    DIALOG_STYLE_LIST = 2 // Ñî ñïèñêîì
    DIALOG_STYLE_PASSWORD = 3 // Ñ ïîëåì äëÿ ââîäà òåêñòà, òåêñò çàìåíÿåòñÿ òî÷êàìè
    DIALOG_STYLE_TABLIST = 4 // Ïîõîæ íà DIALOG_STYLE_LIST, íî ìîæåò áûòü ðàçáèò íà íåñêîëüêî êîëîíîê
    DIALOG_STYLE_TABLIST_HEADERS = 5 // Òîò æå, ÷òî è DIALOG_STYLE_TABLIST, íî èìååò çàãîëîâêè äëÿ êîëîíîê
end

:Samp
wait 600
   SAMP.Available
jf @Samp
wait 5000
0AF8: "{FBBC3C}AT | {FFFFFF}Àâòîð: Azller." 0xFBBC3C
0AF8: "{FBBC3C}AT | {FFFFFF}Ñêðèïò áûë óñïåøíî çàãðóæåí." 0xFBBC3C
0AF8: "{FBBC3C}AT | {FFFFFF}Áîëüøàÿ ïðîñüáà, íå ïûòàòüñÿ ïîäêðó÷èâàòü ñåáå çíà÷åíèÿ." 0xFBBC3C
0AF8: "{FBBC3C}AT | {FFFFFF}Ñòàðøàÿ àäìèíèñòðàöèÿ ìîæåò ñìîòðåòü Âàøó òî÷íóþ ñòàòèñòèêó." 0xFBBC3C
0AF8: "{FBBC3C}AT | {FFFFFF}Ïðèÿòíîãî àäìèíèñòðèðîâàíèÿ <3" 0xFBBC3C
0B34: samp register_client_command "ans" to_label @ans
0B34: samp register_client_command "mute" to_label @mute
0B34: samp register_client_command "kick" to_label @kick
0B34: samp register_client_command "warn" to_label @warn
0B34: samp register_client_command "ban" to_label @ban
0B34: "dlg" @dialog
0AAC: 15@ = load_audiostream "cleo\Song\smb_jump-small.mp3"
0AAC: 16@ = load_audiostream "cleo\Song\smb_coin.mp3"


WHILE TRUE
wait 0
    IF 0B3C: samp is_dialog_responded id 5 button 1@ list_item 3@ input_text 0
    THEN
        if 1@ == 1
        then
              log "îòêðûëñÿ"
              log "%d" 3@
              if 3@ == 0
              then
                      alloc 6@ 128
                      alloc 4@ 128
                      0AF1: write_int 1 to_ini_file "cleo\at.ini" section "Ans" key "Test"
                      0AF0: 5@ = get_int_from_ini_file "cleo\at.ini" section "Ans" key "AnsPoint"
                      0AF4: 6@ = read_string_from_ini_file "cleo\at.ini" section "Ans" key "AnsStr"
                      0AA5: call 0x8220AD num_params 4 pop 4 params 4@ 3@v "%d %s" 6@
                      0ad3: format_stirng 0@ = "Êîë-âî îòâåòîâ:%d %cÏîñëåäíèé îòâåò:%s %cÊàêîìó ID áûë îòâåò:%d%c" 5@ 0xA 4@ 0xA 3@ 0x0
                      0B3B: samp show_dialog id 314 caption "{FBBC3C}AT by Azller v1.0a | Ans Stats" text 0@ button_1 "Âûáðàòü" button_2 "Çàêðûòü" style DIALOG_STYLE_LIST
                      0AC9: free_allocated_memory 4@
                      0AC9: free_allocated_memory 6@
              end
              if 3@ == 1
              then
                      0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Âòîðîé ïóíêò" -1
              end
              if 3@ == 2
              then
                      0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Òðåòèé ïóíêò" -1
              end
        else

            0af8: chat "Áûëà íàæàòà âòîðàÿ êíîïêà: {ffff00}Çàêðûòü" -1
        end
    END
    0AF0: 7@ = get_int_from_ini_file "cleo\at.ini" section "Ans" key "AnsPoint"
    0AF0: 8@ = get_int_from_ini_file "cleo\at.ini" section "Mute" key "MutePoint"
    0AF0: 9@ = get_int_from_ini_file "cleo\at.ini" section "Kick" key "KickPoint"
    0AF0: 10@ = get_int_from_ini_file "cleo\at.ini" section "Warn" key "WarnPoint"
    0AF0: 11@ = get_int_from_ini_file "cleo\at.ini" section "Ban" key "BanPoint"
    printf "A[%d] ~B~M[%d] ~P~K[%d] ~Y~W[%d] ~R~B[%d]" 100 7@ 8@ 9@ 10@ 11@
END


:ans
   SAMP.IsCommandTyped(0@)
alloc 5@ 256
0B35: samp 4@ = get_last_command_params
0AD3: 5@ = format "%s" 4@
0AD4: 14@ = scan_string 0@ format "%d %s" 12@ 13@
if
14@ == 2
jf @error
0AF9: samp say_msg "./ans %s" 4@
0AAD: set_mp3 16@ perform_action 1
0AF0: 3@ = get_int_from_ini_file "cleo\at.ini" section "Ans" key "AnsPoint"
0A8E: 6@ = 3@ + 1
0AF1: write_int 6@ to_ini_file "cleo\at.ini" section "Ans" key "AnsPoint"
0AF5: write_string 4@ to_ini_file "cleo\at.ini" section "Ans" key "AnsStr"
0AC9: free_allocated_memory 5@
SAMP.CmdRet()

:mute
   SAMP.IsCommandTyped(0@)
alloc 5@ 256
0B35: samp 4@ = get_last_command_params
0AD3: 5@ = format "%s" 4@
0AD4: 14@ = scan_string 0@ format "%d %d %s" 12@ 13@ 15@
if
14@ == 3
jf @error
0AF9: samp say_msg "./mute %s" 4@
0AAD: set_mp3 16@ perform_action 1
0AF0: 3@ = get_int_from_ini_file "cleo\at.ini" section "Mute" key "MutePoint"
0A8E: 6@ = 3@ + 1
0AF1: write_int 6@ to_ini_file "cleo\at.ini" section "Mute" key "MutePoint"
0AF5: write_string 4@ to_ini_file "cleo\at.ini" section "Mute" key "MuteStr"
0AC9: free_allocated_memory 5@
SAMP.CmdRet()

:kick
   SAMP.IsCommandTyped(0@)
alloc 5@ 256
0B35: samp 4@ = get_last_command_params
0AD3: 5@ = format "%s" 4@
0AD4: 14@ = scan_string 0@ format "%d %s" 12@ 13@
if
14@ == 2
jf @error
0AF9: samp say_msg "./kick %s" 4@
0AAD: set_mp3 16@ perform_action 1
0AF0: 3@ = get_int_from_ini_file "cleo\at.ini" section "Kick" key "KickPoint"
0A8E: 6@ = 3@ + 1
0AF1: write_int 6@ to_ini_file "cleo\at.ini" section "Kick" key "KickPoint"
0AF5: write_string 4@ to_ini_file "cleo\at.ini" section "Kick" key "KickStr"
0AC9: free_allocated_memory 5@
SAMP.CmdRet()

:warn
   SAMP.IsCommandTyped(0@)
alloc 5@ 256
0B35: samp 4@ = get_last_command_params
0AD3: 5@ = format "%s" 4@
0AD4: 14@ = scan_string 0@ format "%d %s" 12@ 13@
if
14@ == 2
jf @error
0AF9: samp say_msg "./warn %s" 4@
0AAD: set_mp3 16@ perform_action 1
0AF0: 3@ = get_int_from_ini_file "cleo\at.ini" section "Warn" key "WarnPoint"
0A8E: 6@ = 3@ + 1
0AF1: write_int 6@ to_ini_file "cleo\at.ini" section "Warn" key "WarnPoint"
0AF5: write_string 4@ to_ini_file "cleo\at.ini" section "Warn" key "WarnStr"
0AC9: free_allocated_memory 5@
SAMP.CmdRet()

:ban
   SAMP.IsCommandTyped(0@)
alloc 5@ 256
0B35: samp 4@ = get_last_command_params
0AD3: 5@ = format "%s" 4@
0AD4: 14@ = scan_string 0@ format "%d %d %s" 12@ 13@ 15@
if
14@ == 3
jf @error
0AF9: samp say_msg "./ban %s" 4@
0AAD: set_mp3 16@ perform_action 1
0AF0: 3@ = get_int_from_ini_file "cleo\at.ini" section "Ban" key "BanPoint"
0A8E: 6@ = 3@ + 1
0AF1: write_int 6@ to_ini_file "cleo\at.ini" section "Ban" key "BanPoint"
0AF5: write_string 4@ to_ini_file "cleo\at.ini" section "Ban" key "BanStr"
0AC9: free_allocated_memory 5@
SAMP.CmdRet()

:error
0AAD: set_mp3 15@ perform_action 1
0AF8: "{FBBC3C}AT | {FFFFFF}Âû ââåëè íåâåðíîå êîë-âî àðãóìåíòîâ. Êîìàíäà íå áûëà çàñ÷èòàíà." 0xFBBC3C
0AC9: free_allocated_memory 5@
SAMP.CmdRet()

:dialog
0AC6: 30@ = label @hex offset
0B3B: samp show_dialog id 5 caption "{FBBC3C}Admin Tools by Azller v1.0a" text 30@ button_1 "Âûáðàòü" button_2 "Çàêðûòü" style DIALOG_STYLE_LIST
SAMP.CmdRet()

:hex
hex
"Èíôîðìàöèÿ îá îòâåòàõ\n"
"Èíôîðìàöèÿ îá ìóòàõ\n"
"Èíôîðìàöèÿ îá êèêàõ\n"
"Èíôîðìàöèÿ îá jail\n"
"Èíôîðìàöèÿ îá âàðíàõ\n"
"Èíôîðìàöèÿ îá áàíàõ\0"
end
 

Azller Lollison

я узбек
Друг
1,342
2,265
CLEO:
{$CLEO}
{$NOSOURCE}
0000:

const
    DIALOG_STYLE_MSGBOX = 0 // Ñ òåêñòîì
    DIALOG_STYLE_INPUT = 1 // Ñ ïîëåì äëÿ ââîäà òåêñòà
    DIALOG_STYLE_LIST = 2 // Ñî ñïèñêîì
    DIALOG_STYLE_PASSWORD = 3 // Ñ ïîëåì äëÿ ââîäà òåêñòà, òåêñò çàìåíÿåòñÿ òî÷êàìè
    DIALOG_STYLE_TABLIST = 4 // Ïîõîæ íà DIALOG_STYLE_LIST, íî ìîæåò áûòü ðàçáèò íà íåñêîëüêî êîëîíîê
    DIALOG_STYLE_TABLIST_HEADERS = 5 // Òîò æå, ÷òî è DIALOG_STYLE_TABLIST, íî èìååò çàãîëîâêè äëÿ êîëîíîê
end

:Samp
wait 600
   SAMP.Available
jf @Samp
wait 5000
0AF8: "{FBBC3C}AT | {FFFFFF}Àâòîð: Azller." 0xFBBC3C
0AF8: "{FBBC3C}AT | {FFFFFF}Ñêðèïò áûë óñïåøíî çàãðóæåí." 0xFBBC3C
0AF8: "{FBBC3C}AT | {FFFFFF}Áîëüøàÿ ïðîñüáà, íå ïûòàòüñÿ ïîäêðó÷èâàòü ñåáå çíà÷åíèÿ." 0xFBBC3C
0AF8: "{FBBC3C}AT | {FFFFFF}Ñòàðøàÿ àäìèíèñòðàöèÿ ìîæåò ñìîòðåòü Âàøó òî÷íóþ ñòàòèñòèêó." 0xFBBC3C
0AF8: "{FBBC3C}AT | {FFFFFF}Ïðèÿòíîãî àäìèíèñòðèðîâàíèÿ <3" 0xFBBC3C
0B34: samp register_client_command "ans" to_label @ans
0B34: samp register_client_command "mute" to_label @mute
0B34: samp register_client_command "kick" to_label @kick
0B34: samp register_client_command "warn" to_label @warn
0B34: samp register_client_command "ban" to_label @ban
0B34: "dlg" @dialog
0AAC: 15@ = load_audiostream "cleo\Song\smb_jump-small.mp3"
0AAC: 16@ = load_audiostream "cleo\Song\smb_coin.mp3"


WHILE TRUE
wait 0
    IF 0B3C: samp is_dialog_responded id 5 button 1@ list_item 3@ input_text 0
    THEN
        if 1@ == 1
        then
              log "îòêðûëñÿ"
              log "%d" 3@
              if 3@ == 0
              then
                      alloc 6@ 128
                      alloc 4@ 128
                      0AF1: write_int 1 to_ini_file "cleo\at.ini" section "Ans" key "Test"
                      0AF0: 5@ = get_int_from_ini_file "cleo\at.ini" section "Ans" key "AnsPoint"
                      0AF4: 6@ = read_string_from_ini_file "cleo\at.ini" section "Ans" key "AnsStr"
                      0AA5: call 0x8220AD num_params 4 pop 4 params 4@ 3@v "%d %s" 6@
                      0ad3: format_stirng 0@ = "Êîë-âî îòâåòîâ:%d %cÏîñëåäíèé îòâåò:%s %cÊàêîìó ID áûë îòâåò:%d%c" 5@ 0xA 4@ 0xA 3@ 0x0
                      0B3B: samp show_dialog id 314 caption "{FBBC3C}AT by Azller v1.0a | Ans Stats" text 0@ button_1 "Âûáðàòü" button_2 "Çàêðûòü" style DIALOG_STYLE_LIST
                      0AC9: free_allocated_memory 4@
                      0AC9: free_allocated_memory 6@
              end
              if 3@ == 1
              then
                      0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Âòîðîé ïóíêò" -1
              end
              if 3@ == 2
              then
                      0af8: chat "Áûë âûáðàí ýëåìåíò: {ffff00}Òðåòèé ïóíêò" -1
              end
        else

            0af8: chat "Áûëà íàæàòà âòîðàÿ êíîïêà: {ffff00}Çàêðûòü" -1
        end
    END
    0AF0: 7@ = get_int_from_ini_file "cleo\at.ini" section "Ans" key "AnsPoint"
    0AF0: 8@ = get_int_from_ini_file "cleo\at.ini" section "Mute" key "MutePoint"
    0AF0: 9@ = get_int_from_ini_file "cleo\at.ini" section "Kick" key "KickPoint"
    0AF0: 10@ = get_int_from_ini_file "cleo\at.ini" section "Warn" key "WarnPoint"
    0AF0: 11@ = get_int_from_ini_file "cleo\at.ini" section "Ban" key "BanPoint"
    printf "A[%d] ~B~M[%d] ~P~K[%d] ~Y~W[%d] ~R~B[%d]" 100 7@ 8@ 9@ 10@ 11@
END


:ans
   SAMP.IsCommandTyped(0@)
alloc 5@ 256
0B35: samp 4@ = get_last_command_params
0AD3: 5@ = format "%s" 4@
0AD4: 14@ = scan_string 0@ format "%d %s" 12@ 13@
if
14@ == 2
jf @error
0AF9: samp say_msg "./ans %s" 4@
0AAD: set_mp3 16@ perform_action 1
0AF0: 3@ = get_int_from_ini_file "cleo\at.ini" section "Ans" key "AnsPoint"
0A8E: 6@ = 3@ + 1
0AF1: write_int 6@ to_ini_file "cleo\at.ini" section "Ans" key "AnsPoint"
0AF5: write_string 4@ to_ini_file "cleo\at.ini" section "Ans" key "AnsStr"
0AC9: free_allocated_memory 5@
SAMP.CmdRet()

:mute
   SAMP.IsCommandTyped(0@)
alloc 5@ 256
0B35: samp 4@ = get_last_command_params
0AD3: 5@ = format "%s" 4@
0AD4: 14@ = scan_string 0@ format "%d %d %s" 12@ 13@ 15@
if
14@ == 3
jf @error
0AF9: samp say_msg "./mute %s" 4@
0AAD: set_mp3 16@ perform_action 1
0AF0: 3@ = get_int_from_ini_file "cleo\at.ini" section "Mute" key "MutePoint"
0A8E: 6@ = 3@ + 1
0AF1: write_int 6@ to_ini_file "cleo\at.ini" section "Mute" key "MutePoint"
0AF5: write_string 4@ to_ini_file "cleo\at.ini" section "Mute" key "MuteStr"
0AC9: free_allocated_memory 5@
SAMP.CmdRet()

:kick
   SAMP.IsCommandTyped(0@)
alloc 5@ 256
0B35: samp 4@ = get_last_command_params
0AD3: 5@ = format "%s" 4@
0AD4: 14@ = scan_string 0@ format "%d %s" 12@ 13@
if
14@ == 2
jf @error
0AF9: samp say_msg "./kick %s" 4@
0AAD: set_mp3 16@ perform_action 1
0AF0: 3@ = get_int_from_ini_file "cleo\at.ini" section "Kick" key "KickPoint"
0A8E: 6@ = 3@ + 1
0AF1: write_int 6@ to_ini_file "cleo\at.ini" section "Kick" key "KickPoint"
0AF5: write_string 4@ to_ini_file "cleo\at.ini" section "Kick" key "KickStr"
0AC9: free_allocated_memory 5@
SAMP.CmdRet()

:warn
   SAMP.IsCommandTyped(0@)
alloc 5@ 256
0B35: samp 4@ = get_last_command_params
0AD3: 5@ = format "%s" 4@
0AD4: 14@ = scan_string 0@ format "%d %s" 12@ 13@
if
14@ == 2
jf @error
0AF9: samp say_msg "./warn %s" 4@
0AAD: set_mp3 16@ perform_action 1
0AF0: 3@ = get_int_from_ini_file "cleo\at.ini" section "Warn" key "WarnPoint"
0A8E: 6@ = 3@ + 1
0AF1: write_int 6@ to_ini_file "cleo\at.ini" section "Warn" key "WarnPoint"
0AF5: write_string 4@ to_ini_file "cleo\at.ini" section "Warn" key "WarnStr"
0AC9: free_allocated_memory 5@
SAMP.CmdRet()

:ban
   SAMP.IsCommandTyped(0@)
alloc 5@ 256
0B35: samp 4@ = get_last_command_params
0AD3: 5@ = format "%s" 4@
0AD4: 14@ = scan_string 0@ format "%d %d %s" 12@ 13@ 15@
if
14@ == 3
jf @error
0AF9: samp say_msg "./ban %s" 4@
0AAD: set_mp3 16@ perform_action 1
0AF0: 3@ = get_int_from_ini_file "cleo\at.ini" section "Ban" key "BanPoint"
0A8E: 6@ = 3@ + 1
0AF1: write_int 6@ to_ini_file "cleo\at.ini" section "Ban" key "BanPoint"
0AF5: write_string 4@ to_ini_file "cleo\at.ini" section "Ban" key "BanStr"
0AC9: free_allocated_memory 5@
SAMP.CmdRet()

:error
0AAD: set_mp3 15@ perform_action 1
0AF8: "{FBBC3C}AT | {FFFFFF}Âû ââåëè íåâåðíîå êîë-âî àðãóìåíòîâ. Êîìàíäà íå áûëà çàñ÷èòàíà." 0xFBBC3C
0AC9: free_allocated_memory 5@
SAMP.CmdRet()

:dialog
0AC6: 30@ = label @hex offset
0B3B: samp show_dialog id 5 caption "{FBBC3C}Admin Tools by Azller v1.0a" text 30@ button_1 "Âûáðàòü" button_2 "Çàêðûòü" style DIALOG_STYLE_LIST
SAMP.CmdRet()

:hex
hex
"Èíôîðìàöèÿ îá îòâåòàõ\n"
"Èíôîðìàöèÿ îá ìóòàõ\n"
"Èíôîðìàöèÿ îá êèêàõ\n"
"Èíôîðìàöèÿ îá jail\n"
"Èíôîðìàöèÿ îá âàðíàõ\n"
"Èíôîðìàöèÿ îá áàíàõ\0"
end

Копировал-вставил, теперь при вводе /dlg появляется первый диалог, и при нажатии на пункт 1 раз мигает вода, и прекращает..
 
1,417
1,030
Копировал-вставил, теперь при вводе /dlg появляется первый диалог, и при нажатии на пункт 1 раз мигает вода, и прекращает..
перед форматированием в цикле выдели память под переменную 0 и после вывода диалога освободи её
 

Zefir2511

Активный
277
32
Помогите дописать клео,которые просто выведет надпись в чат после нескольих секунд запуска игры
Код:
// This file was decompiled using SASCM.ini published by GTAG (http://gtag.gtagaming.com/opcode-database) on 14.6.2013
{$CLEO .cs}

//-------------MAIN---------------
0000: NOP
wait 8000
chatmsg "Скачено с ***** {CC0000}****{33FF33}]: {FF00CC}Specially for *****" 3407667
.
 
1,417
1,030
Помогите дописать клео,которые просто выведет надпись в чат после нескольих секунд запуска игры.
CLEO:
{$CLEO}
0000:
repeat
wait 100
until 0afa:
wait 8000// через сколько появится
chatmsg "Скачено с ***** {CC0000}****{33FF33}]: {FF00CC}Specially for *****" 3407667
0A93: end_custom_thread
 

Azller Lollison

я узбек
Друг
1,342
2,265
Теперь короче траблы, 1(ans) и последний (ban) прекрасно прогружаются, сразу.
Но остальные нет. Т.е фризит именно персонажа, игра же нормально работает, и не появляется диалог. + нажимаю на jail, открывается warn, жму на warn - открывается warn..
CLEO:
WHILE TRUE
wait 0
    IF 0B3C: samp is_dialog_responded id 5 button 1@ list_item 3@ input_text 0
    THEN
        if 1@ == 1
        then
              log "открылся"
              log "%d" 3@
              if 3@ == 0
              then
                      alloc 0@ 512
                      alloc 6@ 512
                      alloc 4@ 512
                      alloc 8@ 512
                      0AF0: 5@ = get_int_from_ini_file "cleo\at.ini" section "Ans" key "AnsPoint"
                      0AF4: 6@ = read_string_from_ini_file "cleo\at.ini" section "Ans" key "AnsStr"
                      0AA5: call 0x8220AD num_params 4 pop 4 params 4@ 3@v "%d %s" 6@
                      0B36: samp 8@ = get_player_nickname 3@
                      0AF5: write_string 8@ to_ini_file "cleo\at.ini" section "Ans" key "AnsNick"
                      0AF4: 8@ = read_string_from_ini_file "cleo\at.ini" section "Ans" key "AnsNick"
                      0ad3: format_stirng 0@ = "Текст ответа смотреть в .ini!%cКол-во ответов: %d%cКакому был ответ: {FBBC3C}%s" 0xA 5@ 0xA 8@
                      0B3B: samp show_dialog id 100 caption "{FBBC3C}AT by Azller v1.0a | Ans Stats" text 0@ button_1 "Выбрать" button_2 "Закрыть" style DIALOG_STYLE_LIST
                      free 0@
                      free 6@
                      free 4@
                      free 8@
              end
              if 3@ == 1
              then
                      alloc 0@ 512
                      alloc 6@ 512
                      alloc 4@ 512
                      alloc 7@ 512
                      alloc 8@ 512
                      0AF0: 5@ = get_int_from_ini_file "cleo\at.ini" section "Mute" key "MutePoint"
                      0AF4: 6@ = read_string_from_ini_file "cleo\at.ini" section "Mute" key "MuteStr"
                      0AA5: call 0x8220AD num_params 5 pop 5 params 7@ 2@v 3@v "%d %d %s" 6@
                      0B36: samp 8@ = get_player_nickname 3@
                      0AF5: write_string 8@ to_ini_file "cleo\at.ini" section "Mute" key "MuteNick"
                      0AF4: 8@ = read_string_from_ini_file "cleo\at.ini" section "Mute" key "MuteNick"
                      0ad3: format_stirng 0@ = "Причину последнего мута смотреть в .ini!%cКол-во мутов: %d%cНа сколько минут был выдан мут: %d%cКому был выдан мут: {FBBC3C}%s" 0xA 5@ 0xA 2@ 0xA 3@
                      0B3B: samp show_dialog id 101 caption "{FBBC3C}AT by Azller v1.0a | Mute Stats" text 0@ button_1 "Выбрать" button_2 "Закрыть" style DIALOG_STYLE_LIST
                      free 0@
                      free 6@
                      free 4@
                      free 7@
                      free 8@
              end
              if 3@ == 2
              then
                      alloc 0@ 512
                      alloc 6@ 512
                      alloc 4@ 512
                      alloc 8@ 512
                      0AF0: 5@ = get_int_from_ini_file "cleo\at.ini" section "Kick" key "KickPoint"
                      0AF4: 6@ = read_string_from_ini_file "cleo\at.ini" section "Kick" key "KickStr"
                      0AA5: call 0x8220AD num_params 4 pop 4 params 4@ 3@v "%d %s" 6@
                      0B36: samp 8@ = get_player_nickname 3@
                      0AF5: write_string 8@ to_ini_file "cleo\at.ini" section "Kick" key "KickNick"
                      0AF4: 8@ = read_string_from_ini_file "cleo\at.ini" section "Kick" key "KickNick"
                      0ad3: format_stirng 0@ = "Причину последнего кика смотреть в .ini!%cКол-во киков: %d%cКого кикнули: {FBBC3C}%s" 0xA 5@ 0xA 3@
                      0B3B: samp show_dialog id 102 caption "{FBBC3C}AT by Azller v1.0a | Kick Stats" text 0@ button_1 "Выбрать" button_2 "Закрыть" style DIALOG_STYLE_LIST
                      free 0@
                      free 6@
                      free 4@
                      free 8@
              end
              if 3@ == 3
              then
                      alloc 0@ 512
                      alloc 6@ 512
                      alloc 4@ 512
                      alloc 7@ 512
                      alloc 8@ 512
                      0AF0: 5@ = get_int_from_ini_file "cleo\at.ini" section "Jail" key "JailPoint"
                      0AF4: 6@ = read_string_from_ini_file "cleo\at.ini" section "Jail" key "JailStr"
                      0AA5: call 0x8220AD num_params 5 pop 5 params 7@ 2@v 3@v "%d %d %s" 6@
                      0B36: samp 8@ = get_player_nickname 3@
                      0AF5: write_string 8@ to_ini_file "cleo\at.ini" section "Jail" key "JailNick"
                      0AF4: 8@ = read_string_from_ini_file "cleo\at.ini" section "Jail" key "JailNick"
                      0ad3: format_stirng 0@ = "Причину последнего jail`a смотреть в .ini!%cКол-во jail`ов: %d%cНа сколько минут был посажен игрок: %d%cКого посадили: {FBBC3C}%s" 0xA 5@ 0xA 2@ 0xA 3@
                      0B3B: samp show_dialog id 103 caption "{FBBC3C}AT by Azller v1.0a | Jail Stats" text 0@ button_1 "Выбрать" button_2 "Закрыть" style DIALOG_STYLE_LIST
                      free 0@
                      free 6@
                      free 4@
                      free 7@
                      free 8@
              end
              if 3@ == 4
              then
                      alloc 0@ 512
                      alloc 6@ 512
                      alloc 4@ 512
                      alloc 8@ 512
                      0AF0: 5@ = get_int_from_ini_file "cleo\at.ini" section "Warn" key "WarnPoint"
                      0AF4: 6@ = read_string_from_ini_file "cleo\at.ini" section "Warn" key "WarnStr"
                      0AA5: call 0x8220AD num_params 4 pop 4 params 4@ 3@v "%d %s" 6@
                      0B36: samp 8@ = get_player_nickname 3@
                      0AF5: write_string 8@ to_ini_file "cleo\at.ini" section "Warn" key "WarnNick"
                      0AF4: 8@ = read_string_from_ini_file "cleo\at.ini" section "Warn" key "WarnNick"
                      0ad3: format_stirng 0@ = "Текст причины смотреть в .ini!%cКол-во варнов: %d%cКому выдали варн: {FBBC3C}%s%c" 0xA 5@ 0xA 8@ 0x0
                      0B3B: samp show_dialog id 104 caption "{FBBC3C}AT by Azller v1.0a | Warn Stats" text 0@ button_1 "Выбрать" button_2 "Закрыть" style DIALOG_STYLE_LIST
                      free 0@
                      free 6@
                      free 4@
                      free 8@
              end
              if 3@ == 5
              then
                      alloc 0@ 512
                      alloc 6@ 512
                      alloc 4@ 512
                      alloc 7@ 512
                      alloc 8@ 512
                      0AF0: 5@ = get_int_from_ini_file "cleo\at.ini" section "Ban" key "BanPoint"
                      0AF4: 6@ = read_string_from_ini_file "cleo\at.ini" section "Ban" key "BanStr"
                      0AA5: call 0x8220AD num_params 5 pop 5 params 7@ 2@v 3@v "%d %d %s" 6@
                      0B36: samp 8@ = get_player_nickname 3@
                      0AF5: write_string 8@ to_ini_file "cleo\at.ini" section "Ban" key "BanNick"
                      0AF4: 8@ = read_string_from_ini_file "cleo\at.ini" section "Ban" key "BanNick"
                      0ad3: format_stirng 0@ = "Причину последнего бана смотреть в .ini!%cКол-во банов: %d%cНа сколько дней был выдан бан: %d%cКому дали бан: %s" 0xA 5@ 0xA 2@ 0xA 8@
                      0B3B: samp show_dialog id 105 caption "{FBBC3C}AT by Azller v1.0a | Ban Stats" text 0@ button_1 "Выбрать" button_2 "Закрыть" style DIALOG_STYLE_LIST
                      free 0@
                      free 6@
                      free 4@
                      free 7@
                      free 8@  
              end
        end
    END
END
 

Azller Lollison

я узбек
Друг
1,342
2,265
Под 8@ память не надо выделять, в SampFuncs всё предусмотрено.
И вообще судя по моей логике, ты с каждым разом будешь перезаписывать ник, ID игрока может поменяться после перезахода, получается ты будешь брать ид другого игрока и представлять его забаненым. На твоём месте я записывал бы в ини в той части кода где у тебя есть все эти команды, а в этом коде просто тупо считывал.
Всмысле в сампфункс? Т.е мне нужно будет подгружать сф? Я просто его не подгрузил))