RedBoxWhite
Известный
- 337
- 27
Попробуй переустановить sb (точно не помню, с этим связано ли). Или просто замени опкодом 0AC8.Неизвестная команда alloc 4@ 256
Попробуй переустановить sb (точно не помню, с этим связано ли). Или просто замени опкодом 0AC8.Неизвестная команда alloc 4@ 256
Ну а как записать размер?Так структура начинается с размера, а ты сразу текст пихаешь.
Ресаешь врайт оффсет. Записываешь длину строки, потом саму строку как массив.Ну а как записать размер?
Что не нужно перезаписывать, но пропуститьНу а как записать размер?
Как вывести название оружие про его иду?
Описание: Получение названия оружия с ида его.
Использование: 0AB1 call @get_weapon_name_by_id 1 id 0@ to 1@
Пример:Код::get_weapon_name_by_id { Params: In: 0@ - WeaponID Out: 1@ - weaponName Example: call @get_weapon_name_by_id 1 id 0@ to 1@ } 0AC6: 1@ = label @weapons offset 0@ *= 19 005A: 1@ += 0@ // (int) ret 1 1@ :weapons hex "Duke" 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 0 } "Brass Knuckles" 00 00 00 00 00 { 1 } "Golf Club" 00 00 00 00 00 00 00 00 00 00 { 2 } "Nite Stick" 00 00 00 00 00 00 00 00 00 { 3 } "Knife" 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 4 } "Baseball" 00 00 00 00 00 00 00 00 00 00 00 { 5 } "Shovel" 00 00 00 00 00 00 00 00 00 00 00 00 00 { 6 } "Pool Cue" 00 00 00 00 00 00 00 00 00 00 00 { 7 } "Katana" 00 00 00 00 00 00 00 00 00 00 00 00 00 { 8 } "Chainsaw" 00 00 00 00 00 00 00 00 00 00 00 { 9 } "Dildo" 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 10 } "Dildo" 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 11 } "Dildo" 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 12 } "Dildo" 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 13 } "Flowers" 00 00 00 00 00 00 00 00 00 00 00 00 { 14 } "Cane" 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 15 } "Grenade" 00 00 00 00 00 00 00 00 00 00 00 00 { 16 } "Tear Gas" 00 00 00 00 00 00 00 00 00 00 00 { 17 } "Molotov" 00 00 00 00 00 00 00 00 00 00 00 00 { 18 } 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 19 } 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 20 } 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 21 } "Pistol" 00 00 00 00 00 00 00 00 00 00 00 00 00 { 22 } "Silencer" 00 00 00 00 00 00 00 00 00 00 00 { 23 } "Deagle" 00 00 00 00 00 00 00 00 00 00 00 00 00 { 24 } "Shotgun" 00 00 00 00 00 00 00 00 00 00 00 00 { 25 } "SawnOff" 00 00 00 00 00 00 00 00 00 00 00 00 { 26 } "Spas12" 00 00 00 00 00 00 00 00 00 00 00 00 00 { 27 } "Tec9" 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 28 } "MP5" 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 29 } "AK47" 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 30 } "M4" 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 31 } "Mac10" 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 32 } "Rifle" 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 33 } "Sniper" 00 00 00 00 00 00 00 00 00 00 00 00 00 { 34 } "Rocket Launcher" 00 00 00 00 { 35 } "HS Rocket Launcher" 00 { 36 } "Flamethrower" 00 00 00 00 00 00 00 { 37 } "Minigun" 00 00 00 00 00 00 00 00 00 00 00 00 { 38 } "C4" 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 39 } "Detonator" 00 00 00 00 00 00 00 00 00 00 { 40 } "Spray" 00 00 00 00 00 00 00 00 00 00 00 00 00 00 { 41 } "Fire Extinguisher" 00 00 { 42 } "Camera" 00 00 00 00 00 00 00 00 00 00 00 00 00 { 43 } "Nightvision" 00 00 00 00 00 00 00 00 { 44 } "Infrared Vision" 00 00 00 00 { 45 } "Parachute" 00 00 00 00 00 00 00 00 00 00 { 46 } end
Код:0470: 0@ = actor $PLAYER_ACTOR current_weapon call @get_weapon_name_by_id 1 id 0@ to 1@ 0AA8: call_function_method 0x6A0050 0xC1B340 num_params 1 pop 0 'CRED400' 2@ 0AA5: call 0x718600 2 pop 2 2@ 1@ 033E: set_draw_text_position 360.0 240.0 GXT 'CRED400'
{$CLEO .cs}
{$INCLUDE SF}
0000:
repeat
wait 400
until 0AFA: is_samp_structures_available
alloc 5@ 256
0C11: memset destination 5@ value 0 size 256
chatmsg "{ff0000}[Откат OOC] {ebebeb}тудум." 0xffffff
0B34: samp register_client_command "o" @msg
0B34: samp register_client_command "ad" @adrek
0C74: 0@ = create_timer_interval 300000 on_label @timer
0C78: set_timer 0@ active false
0BE3: raknet setup_incoming_rpc_hook @cmsg
while true
wait 0
end
:msg
0B35: samp 2@ = get_last_command_params
if
8C14: not strcmp string1 2@ string2 ""
then
if
0C79: is_timer 0@ active
then
0C7C: 1@ = get_timer 0@ time_left
1@ /= 1000
chatmsg "Анти-флуд (%d сек.)." 0xbfbfbf 1@
else
say "/o %s" 2@
0C76: reset_timer 0@
0C78: set_timer 0@ active true
end
cmdret
:timer
chatmsg "{ff0000}[Откат OOC] {ebebeb}ыыы." color -1
0C78: set_timer 0@ active false
else
say "/o"
end
cmdret
:adrek
0B35: samp 3@ = get_last_command_params
if
0C79: is_timer 0@ active
then
0C7C: 4@ = get_timer 0@ time_left
4@ /= 1000
chatmsg "ыфыв (%d сек.)." 0xbfbfbf 4@
else
say "/ad %s" 3@
0C76: reset_timer 0@
0C78: set_timer 0@ active true
end
cmdret
:cmsg
0BE5: raknet 6@ = get_hook_param PARAM_BITSTREAM
0BE5: raknet 7@ = get_hook_param PARAM_PACKETID
if
7@ == RPC_ScrClientMessage
then
0BE7: raknet 9@ = bit_stream_read 6@ type BS_TYPE_INT
0BE7: raknet 10@ = bit_stream_read 6@ type BS_TYPE_INT
0C11: memset destination 5@ value 0 size 256
0BE8: raknet bit_stream 6@ read_array 5@ size 10@
0C0F: array 5@ element 3@ = 0x00
if
0C18: 8@ = strstr string1 5@ string2 "Кто-то уже давал рекламу, жди..."
then
0C76: reset_timer 0@
0C78: set_timer 0@ active false
end
end
0BE0: raknet hook_ret true
Может СФ в ссани билдер не установлен?Открываю скрипт нажимаю просто компилировать его не изменяя скрипт, и скрипт перестает работать кто может помочь?
Float туда нельзя записывать.По глобальным переменным СФ, помимо ограничения по размеру, больше никаких ограничений нет?
А вот не подскажешь еще? 0C0F я исправил, все хорошо. Как видишь в коде срабатывает таймер при вообще команды /o "text", сделал чтоб таймер не срабатывал при вводе /o без текста. Тоже самое пытаюсь сделать с /ad командой, но что-то не получается. Я так понял0C0F: array 5@ element 3@ = 0
Попытка перезаписать несуществующий элемент массива
if
8C14: not strcmp string1 2@ string2 ""
then
{$CLEO .cs}
{$INCLUDE SF}
0000:
repeat
wait 400
until 0AFA: is_samp_structures_available
alloc 5@ 256
0C11: memset destination 5@ value 0 size 256
chatmsg "{ff0000}[Откат OOC] {ebebeb}тудум." 0xffffff
0B34: samp register_client_command "o" @msg
0B34: samp register_client_command "ad" @adrek
0C74: 0@ = create_timer_interval 300000 on_label @timer
0C78: set_timer 0@ active false
0BE3: raknet setup_incoming_rpc_hook @cmsg
while true
wait 0
end
:msg
0B35: samp 2@ = get_last_command_params
if
8C14: not strcmp string1 2@ string2 ""
then
if
0C79: is_timer 0@ active
then
0C7C: 1@ = get_timer 0@ time_left
1@ /= 1000
chatmsg "Анти-флуд (%d сек.)." 0xbfbfbf 1@
else
say "/o %s" 2@
0C76: reset_timer 0@
0C78: set_timer 0@ active true
end
cmdret
:timer
chatmsg "{ff0000}[Откат OOC] {ebebeb}ыыы." color -1
0C78: set_timer 0@ active false
else
say "/o"
end
cmdret
:adrek
0B35: samp 3@ = get_last_command_params
if
0C79: is_timer 0@ active
then
0C7C: 4@ = get_timer 0@ time_left
4@ /= 1000
chatmsg "ыфыв (%d сек.)." 0xbfbfbf 4@
else
say "/ad %s" 3@
0C76: reset_timer 0@
0C78: set_timer 0@ active true
end
cmdret
:cmsg
0BE5: raknet 6@ = get_hook_param PARAM_BITSTREAM
0BE5: raknet 7@ = get_hook_param PARAM_PACKETID
if
7@ == RPC_ScrClientMessage
then
0BE7: raknet 9@ = bit_stream_read 6@ type BS_TYPE_INT
0BE7: raknet 10@ = bit_stream_read 6@ type BS_TYPE_INT
0C11: memset destination 5@ value 0 size 256
0BE8: raknet bit_stream 6@ read_array 5@ size 10@
0C0F: array 5@ element 10@ = 0x00
if
0C18: 8@ = strstr string1 5@ string2 "Кто-то уже давал рекламу, жди..."
then
0C76: reset_timer 0@
0C78: set_timer 0@ active false
end
end
0BE0: raknet hook_ret true
{$CLEO}
0000:
chatmsg "[TP for mats]:{FFFFFF} TP for mats load. Àâòîð: {FFCC33}[CM]T4WERKA" 16763955
:1
if
0B34: samp register_client_command "tpg" to_label
then
0ACC: show_text_lowpriority "Teleporting..." time 3000
00A1: set_char_coordinates $PLAYER_ACTOR to 2515.9709 -1722.6837 18.5821
0AF9: samp say_msg "/give guns 500"
wait 2000
00A1: set_char_coordinates $PLAYER_ACTOR to 2521.5928 -1686.6742 13.5695
jump @1
У "o" - 0B35: samp 2@ = get_last_command_paramsА вот не подскажешь еще? 0C0F я исправил, все хорошо. Как видишь в коде срабатывает таймер при вообще команды /o "text", сделал чтоб таймер не срабатывал при вводе /o без текста. Тоже самое пытаюсь сделать с /ad командой, но что-то не получается. Я так понял