saТы скрипт для GTA 3 открываешь или для SA говноскрипт скачал?
Hit_SounD.cs ?крч, когда открываю cleo, пишет вот эту шнягу - "Этот файл был скомпилирован для GTA III. Изменить режим редактирования и повторить декомпиляцию?"
как это убрать?
{$CLEO}
{$INCLUDE SF}
0000:
:samp
wait 100
0afa:
jf @samp
0AC8: 9@ = allocate_memory_size 556
0AC8: 12@ = allocate_memory_size 556
0AC8: 10@ = allocate_memory_size 33
alloc 13@ 156
0B6D: render 17@ = create_font "Arial" height 11 flags 5
0BE3: raknet setup_incoming_rpc_hook @hook
while true
wait 0
:suda
if and
0C18: 0 = 9@ "[Test]"
0C18: 0 = 9@ ":"
then
if 0C18: 0 = 9@ "test"
then
0C11: 13@ 0x0 156
format 13@ "%s" 9@
0AA5: call 0x8220AD num_params 3 pop 3 params 10@ "[Test] %s" 9@
0AB1: call @strlen 1 10@ return: 22@
22@ += 8
005A: 9@ += 22@
0C11: 12@ 0x0 556
format 12@ "%s || %s" 9@ 10@
32@ = 0
repeat
wait 0
0B6F: render font 17@ draw_text 12@ pos 20 530 color -1
0085: 31@ = 32@
31@ /= 1000
0AD1: show_formatted_text_highpriority "%d" time 1 31@
if 31@ >= 15
then
0C11: 12@ 0x0 556
jump @timer1
end
if 0ADC: "Y"
then
0AF9: "%s" 12@
log 12@
jump @suda
end
if 0ADC: "N"
then
jump @suda
end
until false
0C11: 9@ 0x0 556
0C11: 10@ 0x0 33
end
end
end
:hook
0BE5: raknet 5@ = get_hook_param PARAM_BITSTREAM
0BE5: raknet 6@ = get_hook_param PARAM_PACKETID
if 6@ == RPC_ScrClientMessage // DWORD color, DWORD strLen, char[] msg
then
0BE7: raknet 7@ = bit_stream_read 5@ type BS_TYPE_INT
0BE7: raknet 8@ = bit_stream_read 5@ type BS_TYPE_INT
0C11: memset destination 9@ value 0 size 556
0BE8: raknet bit_stream 5@ read_array 9@ size 8@
0C0F: array 9@ element 8@ = 0x00
end
0BE0: raknet hook_ret true
:strlen
for 1@ = 0 to 1024
0A8D: 2@ = read_memory 0@ size 1 virtual_protect 0
if not 2@ == 0
jf break
0@ += 1
end
0AB2: ret 1 1@
{$CLEO .cs}
0000: NOP
repeat
wait 0
until Samp.Available()
alloc 1@ 128
alloc 12@ 128
alloc 13@ 128
alloc 14@ 128
cmd "aban" @go
While true
wait 0
0B75: samp get_chat_string 99 text_to 1@ prefix_to 2@ color_to 3@ prefix_color_to 4@
if 0AD4: 1@ = scan_string 1@ format "[A] %s_%s[%d]: /ban %d %d Cheat by %s" 9@ 10@ 11@ 12@ 13@ 14@//IF and SET
then
msg "Добавлен в /aban" 0x99cc00
wait 0
if 22@ == 1
then
msg "/ban %d %d Cheat by %s" 12@ 13@ 14@
22@ = 0
end
end
end
SAMP.CmdRet()
:go
0B12: 22@ = 22@ XOR 1
if 22@ == 1
then
0acd: "~y~[~r~Kraft1k~y~]/a BAN " 1500
else
0acd: "~y~[~r~Kraft1k~y~]/a BAN " 1500
end
SAMP.Cmdret()
{$CLEO .cs}
0000: NOP
repeat
wait 0
until Samp.Available()
alloc 1@ 128
alloc 12@ 128
alloc 13@ 128
alloc 14@ 128
cmd "aban" @go
While true
wait 0
0B75: samp get_chat_string 99 text_to 1@ prefix_to 2@ color_to 3@ prefix_color_to 4@
if 0AD4: 1@ = scan_string 1@ format "[A] %s_%s[%d]: /ban %d %d Cheat by %s" 9@ 10@ 11@ 12@ 13@ 14@//IF and SET
{$CLEO .cs}
0000: NOP
repeat
wait 0
until Samp.Available()
alloc 0@ 128
alloc 1@ 128
alloc 2@ 64
alloc 3@ 64
alloc 4@ 64
alloc 5@ 128
alloc 12@ 260
alloc 13@ 260
alloc 14@ 260
cmd "aban" @go
While true
wait 0
0B75: samp get_chat_string 99 text_to 1@ prefix_to 2@ color_to 3@ prefix_color_to 4@
if 0AD4: 5@ = scan_string 1@ format "[A] %s[%d]: /ban %d %d Cheat by %s" 10@ 11@ 12@ 13@ 14@ //IF and SET
then
0AF1: write_int 12@ to_ini_file "CLEO\aban.ini" section "aban" key "id"
0AF1: write_int 13@ to_ini_file "CLEO\aban.ini" section "aban" key "days"
0AF1: write_int 14@ to_ini_file "CLEO\aban.ini" section "aban" key "by"
msg "Äîáàâëåí â ñïèñîê íà áàí!" 0x99cc00
wait 0
if 22@ == 1
then
0AF0: 12@ = get_int_from_ini_file "CLEO\aban.ini" section "aban" key "id"
0AF0: 13@ = get_int_from_ini_file "CLEO\aban.ini" section "aban" key "days"
0AF0: 14@ = get_int_from_ini_file "CLEO\aban.ini" section "aban" key "by"
msg "/ban %d %d Cheat by %s" -1 12@ 13@ 14@
22@ = 0
end
end
end
SAMP.CmdRet()
:go
0B12: 22@ = 22@ XOR 1
if 22@ == 1
then
0acd: "~y~[~r~Kraft1k~y~]/a BAN " 1500
else
0acd: "~y~[~r~Kraft1k~y~]/a BAN " 1500
end
SAMP.Cmdret()
по идеии, я хотел чтоб он отсканировал строку, а потом в 12@ 13@ 14@ Записал всё, это всё в ини должно было пойти.Так не сканирует или не записывает?
Для определения строки внутри другой строки 0AD4 не поможет. Используй sscanf напрямую. Тут есть небольшой туториал как его юзать.
{$CLEO .cs}
0000: NOP
repeat
wait 0
until Samp.Available()
alloc 0@ 256
alloc 1@ 128
alloc 2@ 64
alloc 3@ 64
alloc 4@ 64
alloc 5@ 128
alloc 12@ 260
alloc 13@ 260
alloc 14@ 260
cmd "aban" @go
while true
wait 0
if 0AD3: 0@ = format "[A] Nikita_Tarasov[0]: /ban 1 1 Cheat by Tarasov"
then
0AA5: call 0x8220AD num_params 4 pop 4 params 14@v 13@ 12@ 11@ 10@ 9@ "[A] %s_%s[%d]: /ban %d %d Cheat by %s" 0@ // sscanf(0@, "%s [%d]", 1@, 2@v)
msg "Äîáàâëåí â ñïèñîê íà áàí!" 0x99cc00
if 22@ == 1
then
wait 0
msg "/ban %d %d Cheat by %s" -1 12@ 13@ 14@
end
end
end
SAMP.CmdRet()
:go
0B12: 22@ = 22@ XOR 1
if 22@ == 1
then
0acd: "~y~[~r~Kraft1k~y~]/a BAN " 1500
else
0acd: "~y~[~r~Kraft1k~y~]/a BAN " 1500
end
SAMP.Cmdret()
:D Ну в примере, не очень понятно показано.Понятно. А ничё так что ты неправильно заюзал её?