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

YaGGod

Новичок
3
0
CLEO:
:Noname_2374
00D6: if
0039:   13@ == 2
004D: jump_if_false @Noname_2501
0AF4: 1@v = read_string_from_ini_file "cleo\config.ini" section "1" key "3"
0AF4: 2@v = read_string_from_ini_file "cleo\config.ini" section "2" key "3"
0AD3: 18@ = format "/%s" 1@
0006: 20@ = 2@
0006: 23@ = 1


Память для переменной освобождена в начале скрипта, все переменные прописаны в .ini файле, однако на практике приводит к этому:
upload_2018-2-19_8-40-5.png
 
1,417
1,029
CLEO:
:Noname_2374
00D6: if
0039:   13@ == 2
004D: jump_if_false @Noname_2501
0AF4: 1@v = read_string_from_ini_file "cleo\config.ini" section "1" key "3"
0AF4: 2@v = read_string_from_ini_file "cleo\config.ini" section "2" key "3"
0AD3: 18@ = format "/%s" 1@
0006: 20@ = 2@
0006: 23@ = 1


Память для переменной освобождена в начале скрипта, все переменные прописаны в .ini файле, однако на практике приводит к этому:Посмотреть вложение 11919
выдели через alloc и лучше кидай полный код.
 

YaGGod

Новичок
3
0
выдели через alloc и лучше кидай полный код.
Это большой скрипт, я его спер из сборки сукре и переделал
CLEO:
// 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 
0001: wait 0 ms 
0AC8: 1@ = allocate_memory_size 20 
0002: jump @Noname_20 

:Noname_20
0001: wait 69 ms 
0AFA:  is_samp_available 
004D: jump_if_false @Noname_20 
0B2D: write_samp_memory offset 2964549 value 0 size 2 
0B34: samp register_client_command "rec" to_label @Noname_4827 
0B34: samp register_client_command "recd" to_label @Noname_4955 
0AC8: 3@ = allocate_memory_size 128 
0AC8: 27@ = allocate_memory_size 128 
0AC8: 12@ = allocate_memory_size 128 
0AC8: 14@ = allocate_memory_size 128 
0AC8: 24@ = allocate_memory_size 128 
0AC8: 17@ = allocate_memory_size 1000 
0AC8: 18@ = allocate_memory_size 30 
0AC8: 16@ = allocate_memory_size 128 
0AC8: 6@ = allocate_memory_size 128 
0AC8: 7@ = allocate_memory_size 128 
0BE3: raknet setup_incoming_rpc_hook @Noname_4907 
0B78: log "{FF0000}Reconnect for Diamond RP by Vovich" 
0B78: log "{FF0000}For activation please, use command {228FFF}/rec [seconds] {FF0000}and use command {228FFF}/recd" 

:Noname_310
0001: wait 0 ms 
00D6: if 
0039:   22@ == 1 
004D: jump_if_false @Noname_409 
0AD3: 12@ = format "Reconnect on ~g~ %d ~w~seconds" 5@  
0ACC: show_text_lowpriority 12@ time 3000 
0B28: samp disconnect_with_reason 1 
0012: 5@ *= 1000 
0001: wait 5@ ms 
0B27: samp set_gamestate 1 
0006: 22@ = 0 

:Noname_409
00D6: if 
0B3C:  samp is_dialog_responded id 1337 button 11@ list_item 13@ input_text 0 
004D: jump_if_false @Noname_738 
00D6: if 
0039:   11@ == 1 
004D: jump_if_false @Noname_738 
00D6: if 
0039:   13@ == 0 
004D: jump_if_false @Noname_578 
0B3B: samp show_dialog id 8888 caption "{FFFFFF}Ваш Ник" text "{FFFFFF}Пожалуйста, укажите ник под которым хотите зайти на сервер." button_1 "Далее" button_2 "Закрыть" style 1 

:Noname_578
00D6: if 
0039:   13@ == 1 
004D: jump_if_false @Noname_738 
0AD3: 24@ = format "Advance RP%cDiamond RP%cSamp RP%cArizona RP%c{FFFF88}Ввести IP сервера" 10 10 10 10  
0B3B: samp show_dialog id 9999 caption "{FFFFFF}Выберете сервер" text 24@ button_1 "Далее" button_2 "Закрыть" style 2 
0AC9: free_allocated_memory 24@ 

:Noname_738
00D6: if 
0B3C:  samp is_dialog_responded id 8888 button 11@ list_item 0 input_text 14@ 
004D: jump_if_false @Noname_938 
00D6: if 
0039:   11@ == 1 
004D: jump_if_false @Noname_938 
0B29: samp set_local_name 14@ 
0AD3: 24@ = format "Advance RP%cDiamond RP%cSamp RP%cВаш список серверов:3%c{FFFF88}Ввести IP сервера" 10 10 10 10  
0B3B: samp show_dialog id 9999 caption "{FFFFFF}Выберете сервер" text 24@ button_1 "Далее" button_2 "Закрыть" style 2 
0AC9: free_allocated_memory 24@ 

:Noname_938
00D6: if 
0B3C:  samp is_dialog_responded id 9999 button 11@ list_item 13@ input_text 0 
004D: jump_if_false @Noname_1857 
00D6: if 
0039:   11@ == 1 
004D: jump_if_false @Noname_1857 
00D6: if 
0039:   13@ == 0 
004D: jump_if_false @Noname_1179 
0AD3: 17@ = format "[1] Red%c[2] Green%c[3] Yellow%c[4] Orange%c[5] Blue%c[6] White%c[7] Silver%c[8] Purple%c[9] Chocolate%c" 10 10 10 10 10 10 10 10 0  
0B3B: samp show_dialog id 4545 caption "{FFFFFF}Выберете сервер" text 17@ button_1 "Далее" button_2 "Закрыть" style 2 

:Noname_1179
00D6: if 
0039:   13@ == 1 
004D: jump_if_false @Noname_1373 
0AD3: 17@ = format "[1] Emerald%c[2] Radiant%c[3] Trilliant%c[4] Crystal%c[5] Sapphire%c[6] Onyx%c[7] Amber%c[8] Quartz%c" 10 10 10 10 10 10 10 0  
0B3B: samp show_dialog id 6565 caption "{FFFFFF}Выберете сервер" text 17@ button_1 "Далее" button_2 "Закрыть" style 2 

:Noname_1373
00D6: if 
0039:   13@ == 2 
004D: jump_if_false @Noname_1553 
0AD3: 17@ = format "Сервер 01%cСервер 02%cСервер 03%cСервер 04%cСервер 05%cСервер 06%cСервер 07%cСервер 08%c" 10 10 10 10 10 10 10 0  
0B3B: samp show_dialog id 7575 caption "{FFFFFF}Выберете сервер" text 17@ button_1 "Далее" button_2 "Еще >>" style 2 

:Noname_1553
00D6: if 
0039:   13@ == 3 
004D: jump_if_false @Noname_1705 
0AD3: 17@ = format "[1]1 сервер%c[2]2 сервер%c[3]3 сервер%c[4]4 сервер%c[5]5 сервер%c" 10 10 10 10 0  
0B3B: samp show_dialog id 8585 caption "{FFFFFF}Выберете сервер" text 17@ button_1 "Далее" button_2 "Закрыть" style 2 

:Noname_1705
00D6: if 
0039:   13@ == 4 
004D: jump_if_false @Noname_1857 
0B3B: samp show_dialog id 7878 caption "{FFFFFF}IP" text "{FFFFFF}Пожалуйста, укажите IP-адрес сервера на который хотите зайти (пример: 5.254.104.136:7777)" button_1 "Далее" button_2 "Закрыть" style 1 

:Noname_1857
00D6: if 
0B3C:  samp is_dialog_responded id 7878 button 11@ list_item 0 input_text 16@ 
004D: jump_if_false @Noname_2078 
00D6: if 
0039:   11@ == 1 
004D: jump_if_false @Noname_2078 
0AA7: call_function 8528045 num_params 4 pop 4 6@ 7@ "%[^:]:%[0-9]" 16@ 10@  
00D6: if 
0039:   10@ == 2 
004D: jump_if_false @Noname_1990 
0AD3: 18@ = format "%s" 7@  
0C1A: 20@ = atoi 6@ 
0006: 23@ = 1 
0002: jump @Noname_2078 

:Noname_1990
0AF8: samp add_message_to_chat "Вы неверно указали IP адрес, попробуйте еще раз — (Пример: 5.254.104.136:7777)" color 11447982  

:Noname_2078
00D6: if 
0B3C:  samp is_dialog_responded id 8585 button 11@ list_item 13@ input_text 0 
004D: jump_if_false @Noname_2750 
00D6: if 
0039:   11@ == 1 
004D: jump_if_false @Noname_2750 
00D6: if 
0039:   13@ == 0 
004D: jump_if_false @Noname_2246 
0AF4: 1@v = read_string_from_ini_file "cleo\recconfig.ini" section "ServersIP" key "1" 
0AF4: 2@v = read_string_from_ini_file "cleo\recconfig.ini" section "ServersPort" key "1" 
0AD3: 18@ = format "/%s" 1@  
0006: 20@ = 2@ 
0006: 23@ = 1 

:Noname_2246
00D6: if 
0039:   13@ == 1 
004D: jump_if_false @Noname_2372 
0AF4: 1@v = read_string_from_ini_file "cleo\recconfig.ini" section "ServersIP" key "2" 
0AF4: 2@v = read_string_from_ini_file "cleo\recconfig.ini" section "ServersPort" key "2" 
0AD3: 18@ = format "/%s" 1@  
0006: 20@ = 2@ 
0006: 23@ = 1 

:Noname_2372
00D6: if 
0039:   13@ == 2 
004D: jump_if_false @Noname_2498 
0AF4: 1@v = read_string_from_ini_file "cleo\recconfig.ini" section "ServersIP" key "3" 
0AF4: 2@v = read_string_from_ini_file "cleo\recconfig.ini" section "ServersPort" key "3" 
0AD3: 18@ = format "/%s" 1@  
0006: 20@ = 2@ 
0006: 23@ = 1 

:Noname_2498
00D6: if 
0039:   13@ == 3 
004D: jump_if_false @Noname_2624 
0AF4: 1@v = read_string_from_ini_file "cleo\recconfig.ini" section "ServersIP" key "4" 
0AF4: 2@v = read_string_from_ini_file "cleo\recconfig.ini" section "ServersPort" key "4" 
0AD3: 18@ = format "%/s" 1@  
0006: 20@ = 2@ 
0006: 23@ = 1 

:Noname_2624
00D6: if 
0039:   13@ == 4 
004D: jump_if_false @Noname_2750 
0AF4: 1@v = read_string_from_ini_file "cleo\recconfig.ini" section "ServersIP" key "5" 
0AF4: 2@v = read_string_from_ini_file "cleo\recconfig.ini" section "ServersPort" key "5" 
0AD3: 18@ = format "/%s" 1@  
0006: 20@ = 2@ 
0006: 23@ = 1 

:Noname_2750
00D6: if 
0B3C:  samp is_dialog_responded id 4545 button 11@ list_item 13@ input_text 0 
004D: jump_if_false @Noname_3272 
00D6: if 
0039:   11@ == 1 
004D: jump_if_false @Noname_3272 
00D6: if 
0039:   13@ == 0 
004D: jump_if_false @Noname_2840 
0AD3: 18@ = format '~1~'  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_2840
00D6: if 
0039:   13@ == 1 
004D: jump_if_false @Noname_2894 
0AD3: 18@ = format "5.254.104.132"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_2894
00D6: if 
0039:   13@ == 2 
004D: jump_if_false @Noname_2948 
0AD3: 18@ = format "5.254.104.133"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_2948
00D6: if 
0039:   13@ == 3 
004D: jump_if_false @Noname_3002 
0AD3: 18@ = format "5.254.104.134"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3002
00D6: if 
0039:   13@ == 4 
004D: jump_if_false @Noname_3056 
0AD3: 18@ = format "5.254.104.135"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3056
00D6: if 
0039:   13@ == 5 
004D: jump_if_false @Noname_3110 
0AD3: 18@ = format "5.254.104.136"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3110
00D6: if 
0039:   13@ == 6 
004D: jump_if_false @Noname_3164 
0AD3: 18@ = format "5.254.104.137"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3164
00D6: if 
0039:   13@ == 7 
004D: jump_if_false @Noname_3218 
0AD3: 18@ = format "5.254.104.138"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3218
00D6: if 
0039:   13@ == 8 
004D: jump_if_false @Noname_3272 
0AD3: 18@ = format "5.254.104.139"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3272
00D6: if 
0B3C:  samp is_dialog_responded id 6565 button 11@ list_item 13@ input_text 0 
004D: jump_if_false @Noname_3736 
00D6: if 
0039:   11@ == 1 
004D: jump_if_false @Noname_3736 
00D6: if 
0039:   13@ == 0 
004D: jump_if_false @Noname_3366 
0AD3: 18@ = format "5.254.123.2"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3366
00D6: if 
0039:   13@ == 1 
004D: jump_if_false @Noname_3418 
0AD3: 18@ = format "5.254.123.3"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3418
00D6: if 
0039:   13@ == 2 
004D: jump_if_false @Noname_3470 
0AD3: 18@ = format "5.254.123.4"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3470
00D6: if 
0039:   13@ == 3 
004D: jump_if_false @Noname_3522 
0AD3: 18@ = format "5.254.123.5"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3522
00D6: if 
0039:   13@ == 4 
004D: jump_if_false @Noname_3574 
0AD3: 18@ = format "5.254.123.6"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3574
00D6: if 
0039:   13@ == 5 
004D: jump_if_false @Noname_3628 
0AD3: 18@ = format "5.254.105.202"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3628
00D6: if 
0039:   13@ == 6 
004D: jump_if_false @Noname_3682 
0AD3: 18@ = format "5.254.105.203"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3682
00D6: if 
0039:   13@ == 7 
004D: jump_if_false @Noname_3736 
0AD3: 18@ = format "5.254.105.204"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3736
00D6: if 
0B3C:  samp is_dialog_responded id 7575 button 11@ list_item 13@ input_text 0 
004D: jump_if_false @Noname_4367 
00D6: if 
0039:   11@ == 1 
004D: jump_if_false @Noname_4217 
00D6: if 
0039:   13@ == 0 
004D: jump_if_false @Noname_3832 
0AD3: 18@ = format "5.254.105.122"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3832
00D6: if 
0039:   13@ == 1 
004D: jump_if_false @Noname_3886 
0AD3: 18@ = format "5.254.105.123"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3886
00D6: if 
0039:   13@ == 2 
004D: jump_if_false @Noname_3940 
0AD3: 18@ = format "5.254.105.124"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3940
00D6: if 
0039:   13@ == 3 
004D: jump_if_false @Noname_3994 
0AD3: 18@ = format "5.254.104.114"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_3994
00D6: if 
0039:   13@ == 4 
004D: jump_if_false @Noname_4048 
0AD3: 18@ = format "5.254.104.115"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_4048
00D6: if 
0039:   13@ == 5 
004D: jump_if_false @Noname_4102 
0AD3: 18@ = format "5.254.104.116"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_4102
00D6: if 
0039:   13@ == 6 
004D: jump_if_false @Noname_4156 
0AD3: 18@ = format "5.254.104.117"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_4156
00D6: if 
0039:   13@ == 7 
004D: jump_if_false @Noname_4210 
0AD3: 18@ = format "5.254.104.118"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_4210
0002: jump @Noname_4367 

:Noname_4217
0AD3: 17@ = format "Сервер 09%cСервер 10%cСервер 11%cСервер 12%cСервер 13%cСервер 14%cСервер 15%c" 10 10 10 10 10 10 0  
0B3B: samp show_dialog id 9191 caption "{FFFFFF}Выберете сервер" text 17@ button_1 "Далее" button_2 "Закрыть" style 2 

:Noname_4367
00D6: if 
0B3C:  samp is_dialog_responded id 9191 button 11@ list_item 13@ input_text 0 
004D: jump_if_false @Noname_4787 
00D6: if 
0039:   11@ == 1 
004D: jump_if_false @Noname_4787 
00D6: if 
0039:   13@ == 0 
004D: jump_if_false @Noname_4463 
0AD3: 18@ = format "5.254.104.119"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_4463
00D6: if 
0039:   13@ == 1 
004D: jump_if_false @Noname_4517 
0AD3: 18@ = format "5.254.104.120"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_4517
00D6: if 
0039:   13@ == 2 
004D: jump_if_false @Noname_4571 
0AD3: 18@ = format "5.254.104.121"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_4571
00D6: if 
0039:   13@ == 3 
004D: jump_if_false @Noname_4625 
0AD3: 18@ = format "5.254.104.122"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_4625
00D6: if 
0039:   13@ == 4 
004D: jump_if_false @Noname_4679 
0AD3: 18@ = format "5.254.104.123"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_4679
00D6: if 
0039:   13@ == 5 
004D: jump_if_false @Noname_4733 
0AD3: 18@ = format "5.254.104.124"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_4733
00D6: if 
0039:   13@ == 6 
004D: jump_if_false @Noname_4787 
0AD3: 18@ = format "5.254.104.125"  
0006: 20@ = 7777 
0006: 23@ = 1 

:Noname_4787
00D6: if 
0039:   23@ == 1 
004D: jump_if_false @Noname_4820 
0B38: samp connect_to_server 18@ port 20@ 
0006: 23@ = 0 

:Noname_4820
0002: jump @Noname_310 

:Noname_4827
0B35: samp 0@ = get_last_command_params 
00D6: if 
0AD4: 4@ = scan_string 0@ format "%d" 5@  
004D: jump_if_false @Noname_4881 
0006: 22@ = 1 
0006: 30@ = 228 
0002: jump @Noname_4905 

:Noname_4881
0ACC: show_text_lowpriority "~r~/rec [seconds]" time 2500 

:Noname_4905
0B43: samp cmd_ret 

:Noname_4907
0BE5: raknet 2@ = get_hook_param 1 
00D6: if and
0039:   2@ == 43 
0039:   30@ == 228 
004D: jump_if_false @Noname_4951 
0BE0: raknet hook_ret 0 
0002: jump @Noname_4955 

:Noname_4951
0BE0: raknet hook_ret 1 

:Noname_4955
0006: 30@ = 228 
0AD3: 27@ = format "[1] Реконект со сменой ника%c[2] Обычный реконект" 10  
0B3B: samp show_dialog id 1337 caption "{FFFFFF}Выберете тип ({f39d77}lite{b4b4b4}hack{FFFFFF} & {dfdfdf}blast{0096cc}hack{FFFFFF})" text 27@ button_1 "Далее" button_2 "Закрыть" style 2 
0AC9: free_allocated_memory 27@ 
0B43: samp cmd_ret
Вот он.
 

hnnssy

Известный
Друг
2,684
2,749
CLEO:
:Noname_2374
00D6: if
0039:   13@ == 2
004D: jump_if_false @Noname_2501
0AF4: 1@v = read_string_from_ini_file "cleo\config.ini" section "1" key "3"
0AF4: 2@v = read_string_from_ini_file "cleo\config.ini" section "2" key "3"
0AD3: 18@ = format "/%s" 1@
0006: 20@ = 2@
0006: 23@ = 1


Память для переменной освобождена в начале скрипта, все переменные прописаны в .ini файле, однако на практике приводит к этому:Посмотреть вложение 11919
Читай в 1@ и 2@, выделив под них сперва память
 

korTa

Участник
37
9
А как перевести клео с SAMPFUNCS 5.1.1 на 5.3.3?
 

Вложения

  • ADMINTOOLS.cs
    663.1 KB · Просмотры: 12
У

Удалённый пользователь 126082

Гость
Существует ли опкод на уменьшение/увеличение дистанции прорисовки?
 

ToPro

Новичок
9
0
Опкод выравнивания камеры к морде сидя в авто(самолете) подскажите
 

romanblinov2013

RB_PRO
Проверенный
212
196
Существует ли опкод на уменьшение/увеличение дистанции прорисовки?
Был когда-то скрипт Fog Distance. Посмотри исходник. Там через память(не точно) можно изменить эту прорисовку.
Отдельно опкода на это нету
 

D3ix

Новичок
4
0
Всем привет. Скинули мне скрипт под названием "Автоответчик", каждый раз когда я заменю там хоть одну букву, даже ту которую будет искать в чате, скрипт сразу слетает и пишет "Загружен" капсом. В чём проблема? Ниже будет код. Заранее спасибо за помощь :)
CLEO:
{$CLEO}
0000:
while not Samp.Available()
    wait 0
end
0af8: "Загружен" -1
0BE3: raknet setup_incoming_rpc_hook @hook

while true
    wait 0 
    if not 6@ == 0
        then
     
        if 6@ == 1
            then         
            wait 1200
            say "/d Передайте мой номер похитителям "79-39-29"."
        end
     
        if 6@ == 2
            then
            wait 1200
            say "/r Агенты, строй в гараже"
        end
     
        if 6@ == 3
            then
            wait 1200
            say "Братан, мы знакомы?"
        end
     
        6@ = 0
    end     
end   

:hook
0BE5: raknet 0@ = get_hook_param 0
0BE5: raknet 1@ = get_hook_param 1
if 1@ == 93
    then
    0BE7: raknet 2@ = bit_stream_read 0@ type 3
    0BE7: raknet 3@ = bit_stream_read 0@ type 3
    alloc 4@ 257
    0C11: memset destination 4@ value 0 size 257
    0BE8: raknet bit_stream 0@ read_array 4@ size 3@
 
    if 0C18: 0 = strstr string1 4@ string2 "Нажал на красную кнопку"
        then
        say "/r Принял"
        6@ = 1
    end
 
    if 0C18: 0 = strstr string1 4@ string2 "Передайте мой номер похитителям"
        then
        6@ = 2
    end
 
    if 0C18: 0 = strstr string1 4@ string2 "Привет"
        then
        say "Привет"
        6@ = 3
    end
             
    free 4@
end
0BE0: raknet hook_ret 1