Bili Djin
Известный
- 138
- 67
Я вчера пробовал так делать, то ли я тупой, то ли этот оркод работает, когда диалог открыт0BC9: samp send_dialog_response dialog 0@ button 1@ listitem 2@ input 3@
SendDialogResponse - 62
Я вчера пробовал так делать, то ли я тупой, то ли этот оркод работает, когда диалог открыт0BC9: samp send_dialog_response dialog 0@ button 1@ listitem 2@ input 3@
SendDialogResponse - 62
Если правильно понял, наверное, можно сделать шо-нить вроде этого:Как сделать так, чтобы эти данные записывались из игры?
0AD3: 0@v = format "admin%d" 1
0AF5: write_string "phone_number_1" to_ini_file "cleo\config.ini" section "admins" key 0@v
0AD3: 0@v = format "admin%d" 2
0AF5: write_string "phone_number_2" to_ini_file "cleo\config.ini" section "admins" key 0@v
{$CLEO .cs}
{$USE CLEO+}
{$USE INI}
{$USE bitwise}
{$INCLUDE SF}
0000: NOP
While true
wait 0
if and
samp.Available()
0B61: samp is_local_player_spawned
then
if 8AAB: file_exists "cleo\Player Management by Bili Djin.ini"
then
alloc 0@ 128
0AD3: 0@ = format "Nikolay_Hatov"
0AF5: write_string 0@ to_ini_file "cleo\Player Management by Bili Djin.ini" section "Config" key "Adm_Name"
free 0@
end
break
end
end
0AF8: samp add_message_to_chat "{73b461}[Player Management] {FFFFFF}Loaded! Use: {DC4747}/pmg {73b461}by Bili Djin" color -1
0B34: samp register_client_command "pmg" to_label @cmd
29@ = 0
While true
wait 0
if 29@ == 1
then
29@ = 0
alloc 0@ 128
0AF4: 0@ = read_string_from_ini_file "cleo\Player Management by Bili Djin.ini" section "Config" key "Adm_Name"
alloc 30@ 256
0AD3: 30@ = format "{FFFFFF}Change Admin's Nickname:%c[{73b461}%s{FFFFFF}]%c" 09 0@ 10
0AD3: 30@ = format "%s %c %c" 30@ 09 10
0AD3: 30@ = format "%s %c %c" 30@ 09 10
0AD3: 30@ = format "%s{FFBB33}Author{FFFFFF}:%c{6A65FF}Bili Djin {FFFFFF}aka {6A65FF}Nikolay Hatov%c" 30@ 09 10
0B3B: samp show_dialog id 901500 caption "Player Management {73b461}by {DC4747}Bili Djin" text 30@ button_1 "Select" button_2 "Exit" style 4
While SAMP.IsDialogActive(-1)
wait 0
end
0B3C: samp is_dialog_responded id 901500 button 1@ list_item 3@ input_text 0
SAMP.CloseDialog(0)
free 0@
free 30@
if 1@ == 0
then
continue
end
29@ = 1
if 3@ == 0
then
0ac8: alloc 4@ size 64
0B3B: samp show_dialog id 901501 caption "Player Managementr {73b461}by {DC4747}Bili Djin" text "Enter the Administrator's Nickname" button_1 "Enter" button_2 "Back" style 1
While SAMP.IsDialogActive(-1)
wait 0
end
0B3C: samp is_dialog_responded id 901501 button 1@ list_item 0 input_text 4@
if 1@ == 0
then
free 4@
continue
end
if not 4@ == 0
then
free 4@
0AF5: write_string 4@ to_ini_file "cleo\Player Management by Bili Djin.ini" section "Config" key "Adm_Name"
continue
end
else
free 4@
continue
end
end
0BE3: raknet setup_incoming_rpc_hook @Hook_STR
if 14@ == 1
then
14@ = 0
0C2C: 22@ = strrchr 23@ char 0x5B
0C11: memset destination 22@ value 0x0 size 1
22@++
0C1A: 10@ = atoi 22@
if 0B23: samp is_player_connected 10@
then
0B20: samp 11@ = actor_handle_by_samp_player_id 10@
if 056D: actor 11@ defined
then
alloc 1@ 128
0AF4: 1@ = read_string_from_ini_file "cleo\Player Management by Bili Djin.ini" section "Config" key "Adm_Name"
0B36: samp 1@ = get_player_nickname 10@
if 0C29: 24@ = stristr string1 0@ string2 1@
then
free 1@
if 0C29: 24@ = stristr string1 23@ string2 "Press F"
then
0C72: set_virtual_key 70 down true
wait 10
0C72: set_virtual_key 70 down false
end
if 0C29: 24@ = stristr string1 23@ string2 "Use /i"
then
say "/i"
end
if 0C29: 24@ = stristr string1 23@ string2 "Follow me"
then
27@ = 1
while 27@ == 1
wait 0
0BE3: raknet setup_incoming_rpc_hook @Hook_STR
if 14@ == 1
then
14@ = 0
0C2C: 22@ = strrchr 23@ char 0x5B
0C11: memset destination 22@ value 0x0 size 1
22@++
0C1A: 10@ = atoi 22@
if 0B23: samp is_player_connected 10@
then
0B20: samp 11@ = actor_handle_by_samp_player_id 10@
if 056D: actor 11@ defined
then
alloc 1@ 128
0AF4: 1@ = read_string_from_ini_file "cleo\Player Management by Bili Djin.ini" section "Config" key "Adm_Name"
0B36: samp 1@ = get_player_nickname 10@
if 0C29: 24@ = stristr string1 0@ string2 1@
then
free 1@
if 0C29: 24@ = stristr string1 23@ string2 "Stop"
then
27@ = 0
04C4: store_coords_to 20@ 21@ 22@ from_actor 11@ with_offset 0.0 0.0 0.0
05D3: AS_actor $PLAYER_ACTOR goto_point 20@ 21@ 22@ mode 4 time 10 ms
0C72: set_virtual_key 16 down false
0AB3: var 740 = 0
wait 10
end
end
end
end
end
if 27@ == 1
then
0B20: samp 11@ = actor_handle_by_samp_player_id 10@
if 056D: actor 11@ defined
then
04C4: store_coords_to 20@ 21@ 22@ from_actor 11@ with_offset 1.0 0.0 0.0
05D3: AS_actor $PLAYER_ACTOR goto_point 20@ 21@ 22@ mode 4 time 10 ms
0C72: set_virtual_key 16 down true
0AB3: var 740 = 1
else
27@ = 0
04C4: store_coords_to 20@ 21@ 22@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
05D3: AS_actor $PLAYER_ACTOR goto_point 20@ 21@ 22@ mode 4 time 10 ms
0C72: set_virtual_key 16 down false
0AB3: var 740 = 0
end
end
end
end
end
end
end
end
end
:cmd
0B12: 29@ = 29@ XOR 1
samp.CmdRet()
:Hook_STR
wait 0
0BE5: raknet 6@ = get_hook_param PARAM_PACKETID
if
6@ == RPC_ScrClientMessage
then
0BE5: raknet 5@ = get_hook_param PARAM_BITSTREAM
0BE7: raknet 7@ = bit_stream_read 5@ type BS_TYPE_INT
0BE7: raknet 8@ = bit_stream_read 5@ type BS_TYPE_INT
alloc 23@ 512
14@ = 1
0BE8: raknet bit_stream 5@ read_array 23@ size 8@
0C0F: array 23@ element 8@ = 0x00
end
0BE0: raknet hook_ret true
Попробуй изменить проверку на запуск SAMP и спавн игрока.Привет, что не так с этим скриптом? У меня некоторые вылеты в чате и скрипт не работает, не могу найти проблему, помогите пожалуйста.
CLEO:{$CLEO .cs} {$USE CLEO+} {$USE INI} {$USE bitwise} {$INCLUDE SF} 0000: NOP While true wait 0 if and samp.Available() 0B61: samp is_local_player_spawned then if 8AAB: file_exists "cleo\Player Management by Bili Djin.ini" then alloc 0@ 128 0AD3: 0@ = format "Nikolay_Hatov" 0AF5: write_string 0@ to_ini_file "cleo\Player Management by Bili Djin.ini" section "Config" key "Adm_Name" free 0@ end break end end 0AF8: samp add_message_to_chat "{73b461}[Player Management] {FFFFFF}Loaded! Use: {DC4747}/pmg {73b461}by Bili Djin" color -1 0B34: samp register_client_command "pmg" to_label @cmd 29@ = 0 While true wait 0 if 29@ == 1 then 29@ = 0 alloc 0@ 128 0AF4: 0@ = read_string_from_ini_file "cleo\Player Management by Bili Djin.ini" section "Config" key "Adm_Name" alloc 30@ 256 0AD3: 30@ = format "{FFFFFF}Change Admin's Nickname:%c[{73b461}%s{FFFFFF}]%c" 09 0@ 10 0AD3: 30@ = format "%s %c %c" 30@ 09 10 0AD3: 30@ = format "%s %c %c" 30@ 09 10 0AD3: 30@ = format "%s{FFBB33}Author{FFFFFF}:%c{6A65FF}Bili Djin {FFFFFF}aka {6A65FF}Nikolay Hatov%c" 30@ 09 10 0B3B: samp show_dialog id 901500 caption "Player Management {73b461}by {DC4747}Bili Djin" text 30@ button_1 "Select" button_2 "Exit" style 4 While SAMP.IsDialogActive(-1) wait 0 end 0B3C: samp is_dialog_responded id 901500 button 1@ list_item 3@ input_text 0 SAMP.CloseDialog(0) free 0@ free 30@ if 1@ == 0 then continue end 29@ = 1 if 3@ == 0 then 0ac8: alloc 4@ size 64 0B3B: samp show_dialog id 901501 caption "Player Managementr {73b461}by {DC4747}Bili Djin" text "Enter the Administrator's Nickname" button_1 "Enter" button_2 "Back" style 1 While SAMP.IsDialogActive(-1) wait 0 end 0B3C: samp is_dialog_responded id 901501 button 1@ list_item 0 input_text 4@ if 1@ == 0 then free 4@ continue end if not 4@ == 0 then free 4@ 0AF5: write_string 4@ to_ini_file "cleo\Player Management by Bili Djin.ini" section "Config" key "Adm_Name" continue end else free 4@ continue end end 0BE3: raknet setup_incoming_rpc_hook @Hook_STR if 14@ == 1 then 14@ = 0 0C2C: 22@ = strrchr 23@ char 0x5B 0C11: memset destination 22@ value 0x0 size 1 22@++ 0C1A: 10@ = atoi 22@ if 0B23: samp is_player_connected 10@ then 0B20: samp 11@ = actor_handle_by_samp_player_id 10@ if 056D: actor 11@ defined then alloc 1@ 128 0AF4: 1@ = read_string_from_ini_file "cleo\Player Management by Bili Djin.ini" section "Config" key "Adm_Name" 0B36: samp 1@ = get_player_nickname 10@ if 0C29: 24@ = stristr string1 0@ string2 1@ then free 1@ if 0C29: 24@ = stristr string1 23@ string2 "Press F" then 0C72: set_virtual_key 70 down true wait 10 0C72: set_virtual_key 70 down false end if 0C29: 24@ = stristr string1 23@ string2 "Use /i" then say "/i" end if 0C29: 24@ = stristr string1 23@ string2 "Follow me" then 27@ = 1 while 27@ == 1 wait 0 0BE3: raknet setup_incoming_rpc_hook @Hook_STR if 14@ == 1 then 14@ = 0 0C2C: 22@ = strrchr 23@ char 0x5B 0C11: memset destination 22@ value 0x0 size 1 22@++ 0C1A: 10@ = atoi 22@ if 0B23: samp is_player_connected 10@ then 0B20: samp 11@ = actor_handle_by_samp_player_id 10@ if 056D: actor 11@ defined then alloc 1@ 128 0AF4: 1@ = read_string_from_ini_file "cleo\Player Management by Bili Djin.ini" section "Config" key "Adm_Name" 0B36: samp 1@ = get_player_nickname 10@ if 0C29: 24@ = stristr string1 0@ string2 1@ then free 1@ if 0C29: 24@ = stristr string1 23@ string2 "Stop" then 27@ = 0 04C4: store_coords_to 20@ 21@ 22@ from_actor 11@ with_offset 0.0 0.0 0.0 05D3: AS_actor $PLAYER_ACTOR goto_point 20@ 21@ 22@ mode 4 time 10 ms 0C72: set_virtual_key 16 down false 0AB3: var 740 = 0 wait 10 end end end end end if 27@ == 1 then 0B20: samp 11@ = actor_handle_by_samp_player_id 10@ if 056D: actor 11@ defined then 04C4: store_coords_to 20@ 21@ 22@ from_actor 11@ with_offset 1.0 0.0 0.0 05D3: AS_actor $PLAYER_ACTOR goto_point 20@ 21@ 22@ mode 4 time 10 ms 0C72: set_virtual_key 16 down true 0AB3: var 740 = 1 else 27@ = 0 04C4: store_coords_to 20@ 21@ 22@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 05D3: AS_actor $PLAYER_ACTOR goto_point 20@ 21@ 22@ mode 4 time 10 ms 0C72: set_virtual_key 16 down false 0AB3: var 740 = 0 end end end end end end end end end :cmd 0B12: 29@ = 29@ XOR 1 samp.CmdRet() :Hook_STR wait 0 0BE5: raknet 6@ = get_hook_param PARAM_PACKETID if 6@ == RPC_ScrClientMessage then 0BE5: raknet 5@ = get_hook_param PARAM_BITSTREAM 0BE7: raknet 7@ = bit_stream_read 5@ type BS_TYPE_INT 0BE7: raknet 8@ = bit_stream_read 5@ type BS_TYPE_INT alloc 23@ 512 14@ = 1 0BE8: raknet bit_stream 5@ read_array 23@ size 8@ 0C0F: array 23@ element 8@ = 0x00 end 0BE0: raknet hook_ret true
Зачем ты хук ставишь в цикле? После загрузки сампа (и спавна?) поставь. И зачем ты в хуке записываешь сообщение, но проверку выполняешь в цикле, если можно сделать в самом хукеПривет, что не так с этим скриптом? У меня некоторые вылеты в чате и скрипт не работает, не могу найти проблему, помогите пожалуйста.
CLEO:{$CLEO .cs} {$USE CLEO+} {$USE INI} {$USE bitwise} {$INCLUDE SF} 0000: NOP While true wait 0 if and samp.Available() 0B61: samp is_local_player_spawned then if 8AAB: file_exists "cleo\Player Management by Bili Djin.ini" then alloc 0@ 128 0AD3: 0@ = format "Nikolay_Hatov" 0AF5: write_string 0@ to_ini_file "cleo\Player Management by Bili Djin.ini" section "Config" key "Adm_Name" free 0@ end break end end 0AF8: samp add_message_to_chat "{73b461}[Player Management] {FFFFFF}Loaded! Use: {DC4747}/pmg {73b461}by Bili Djin" color -1 0B34: samp register_client_command "pmg" to_label @cmd 29@ = 0 While true wait 0 if 29@ == 1 then 29@ = 0 alloc 0@ 128 0AF4: 0@ = read_string_from_ini_file "cleo\Player Management by Bili Djin.ini" section "Config" key "Adm_Name" alloc 30@ 256 0AD3: 30@ = format "{FFFFFF}Change Admin's Nickname:%c[{73b461}%s{FFFFFF}]%c" 09 0@ 10 0AD3: 30@ = format "%s %c %c" 30@ 09 10 0AD3: 30@ = format "%s %c %c" 30@ 09 10 0AD3: 30@ = format "%s{FFBB33}Author{FFFFFF}:%c{6A65FF}Bili Djin {FFFFFF}aka {6A65FF}Nikolay Hatov%c" 30@ 09 10 0B3B: samp show_dialog id 901500 caption "Player Management {73b461}by {DC4747}Bili Djin" text 30@ button_1 "Select" button_2 "Exit" style 4 While SAMP.IsDialogActive(-1) wait 0 end 0B3C: samp is_dialog_responded id 901500 button 1@ list_item 3@ input_text 0 SAMP.CloseDialog(0) free 0@ free 30@ if 1@ == 0 then continue end 29@ = 1 if 3@ == 0 then 0ac8: alloc 4@ size 64 0B3B: samp show_dialog id 901501 caption "Player Managementr {73b461}by {DC4747}Bili Djin" text "Enter the Administrator's Nickname" button_1 "Enter" button_2 "Back" style 1 While SAMP.IsDialogActive(-1) wait 0 end 0B3C: samp is_dialog_responded id 901501 button 1@ list_item 0 input_text 4@ if 1@ == 0 then free 4@ continue end if not 4@ == 0 then free 4@ 0AF5: write_string 4@ to_ini_file "cleo\Player Management by Bili Djin.ini" section "Config" key "Adm_Name" continue end else free 4@ continue end end 0BE3: raknet setup_incoming_rpc_hook @Hook_STR if 14@ == 1 then 14@ = 0 0C2C: 22@ = strrchr 23@ char 0x5B 0C11: memset destination 22@ value 0x0 size 1 22@++ 0C1A: 10@ = atoi 22@ if 0B23: samp is_player_connected 10@ then 0B20: samp 11@ = actor_handle_by_samp_player_id 10@ if 056D: actor 11@ defined then alloc 1@ 128 0AF4: 1@ = read_string_from_ini_file "cleo\Player Management by Bili Djin.ini" section "Config" key "Adm_Name" 0B36: samp 1@ = get_player_nickname 10@ if 0C29: 24@ = stristr string1 0@ string2 1@ then free 1@ if 0C29: 24@ = stristr string1 23@ string2 "Press F" then 0C72: set_virtual_key 70 down true wait 10 0C72: set_virtual_key 70 down false end if 0C29: 24@ = stristr string1 23@ string2 "Use /i" then say "/i" end if 0C29: 24@ = stristr string1 23@ string2 "Follow me" then 27@ = 1 while 27@ == 1 wait 0 0BE3: raknet setup_incoming_rpc_hook @Hook_STR if 14@ == 1 then 14@ = 0 0C2C: 22@ = strrchr 23@ char 0x5B 0C11: memset destination 22@ value 0x0 size 1 22@++ 0C1A: 10@ = atoi 22@ if 0B23: samp is_player_connected 10@ then 0B20: samp 11@ = actor_handle_by_samp_player_id 10@ if 056D: actor 11@ defined then alloc 1@ 128 0AF4: 1@ = read_string_from_ini_file "cleo\Player Management by Bili Djin.ini" section "Config" key "Adm_Name" 0B36: samp 1@ = get_player_nickname 10@ if 0C29: 24@ = stristr string1 0@ string2 1@ then free 1@ if 0C29: 24@ = stristr string1 23@ string2 "Stop" then 27@ = 0 04C4: store_coords_to 20@ 21@ 22@ from_actor 11@ with_offset 0.0 0.0 0.0 05D3: AS_actor $PLAYER_ACTOR goto_point 20@ 21@ 22@ mode 4 time 10 ms 0C72: set_virtual_key 16 down false 0AB3: var 740 = 0 wait 10 end end end end end if 27@ == 1 then 0B20: samp 11@ = actor_handle_by_samp_player_id 10@ if 056D: actor 11@ defined then 04C4: store_coords_to 20@ 21@ 22@ from_actor 11@ with_offset 1.0 0.0 0.0 05D3: AS_actor $PLAYER_ACTOR goto_point 20@ 21@ 22@ mode 4 time 10 ms 0C72: set_virtual_key 16 down true 0AB3: var 740 = 1 else 27@ = 0 04C4: store_coords_to 20@ 21@ 22@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 05D3: AS_actor $PLAYER_ACTOR goto_point 20@ 21@ 22@ mode 4 time 10 ms 0C72: set_virtual_key 16 down false 0AB3: var 740 = 0 end end end end end end end end end :cmd 0B12: 29@ = 29@ XOR 1 samp.CmdRet() :Hook_STR wait 0 0BE5: raknet 6@ = get_hook_param PARAM_PACKETID if 6@ == RPC_ScrClientMessage then 0BE5: raknet 5@ = get_hook_param PARAM_BITSTREAM 0BE7: raknet 7@ = bit_stream_read 5@ type BS_TYPE_INT 0BE7: raknet 8@ = bit_stream_read 5@ type BS_TYPE_INT alloc 23@ 512 14@ = 1 0BE8: raknet bit_stream 5@ read_array 23@ size 8@ 0C0F: array 23@ element 8@ = 0x00 end 0BE0: raknet hook_ret true
А в чем там проблема? Реализацию хоть и странная, но проблем она не должна вызывать. И зачем вы вообще на клео чет пишите? Вроде все давно на луа перешлиПопробуй изменить проверку на запуск SAMP и спавн игрока.
Я уже знаю эту проблемы
Я немного тупой. На счёт хука недавно узнал. А проверку на строчку мне было лень меня что-то и я код из другого скрипта вырвал.Зачем ты хук ставишь в цикле? После загрузки сампа (и спавна?) поставь. И зачем ты в хуке записываешь сообщение, но проверку выполняешь в цикле, если можно сделать в самом хуке
А в чем там проблема? Реализацию хоть и странная, но проблем она не должна вызывать. И зачем вы вообще на клео чет пишите? Вроде все давно на луа перешли
Я, хоть и душевнобольной, за то жизнь у меня весёлая) Клео - мощь 🤘И зачем вы вообще на клео чет пишите? Вроде все давно на луа перешли
Ну выбирать тебе. Только вот мало кто на клео пишет и поэтому мало кто поможет по немуЯ, хоть и душевнобольной, за то жизнь у меня весёлая) Клео - мощь 🤘
В любом случае кто-то да поможет. В каких то сложных моментах и правда найти ответ сложно, но на лёгкие вопросы тут помогает быстро.Ну выбирать тебе. Только вот мало кто на клео пишет и поэтому мало кто поможет по нему
Опкоды лежат в специальном текстовом файле, зарытом в директории санни билдера. Возможно, ты каким-то образом задел эти файлы при удалении прошлой версии и не установил обратно. Попробуй поставить sf-опкоды, как минимум опкоды это должно вернуть. В крайнем случае, могу скинуть свою папку с необходимыми файлами, если дело действительно в этомПосле переустановки Sanny Builder перестали находиться опкоды и ini файлы. Может кто подсказать, что сделать, чтобы он нормально заработал?Посмотреть вложение 177052
Опкоды стоят, но он не видит их. А что значит "не установил обратно"? Я думал "переустановить" это и есть удалить и заного установить. Но как только установил последний сб, всё слетело. Буду признателен, если скинешь свою папкуОпкоды лежат в специальном текстовом файле, зарытом в директории санни билдера. Возможно, ты каким-то образом задел эти файлы при удалении прошлой версии и не установил обратно. Попробуй поставить sf-опкоды, как минимум опкоды это должно вернуть. В крайнем случае, могу скинуть свою папку с необходимыми файлами, если дело действительно в этом
Я тоже так думал, но в этот раз что-то явно пошло не по плану. Запаковал сразу всё, на всякий случайЯ думал "переустановить" это и есть удалить и заного установить
Мне свою всю папку удалять перед распаковкой твоей или что-то оставить?Я тоже так думал, но в этот раз что-то явно пошло не по плану. Запаковал сразу всё, на всякий случай
https://fex.net/uk/s/5nb3dya