AWRage
Активный
- 642
- 141
Но когда я стою на пикапе, его тоже нельзя взять. Тогда использовать только через фейксинхру или как?дистанция от персонажа до пикапа
Но когда я стою на пикапе, его тоже нельзя взять. Тогда использовать только через фейксинхру или как?дистанция от персонажа до пикапа
Попробуй отправить rpc вручную.Но когда я стою на пикапе, его тоже нельзя взять. Тогда использовать только через фейксинхру или как?
Тогда использовать только через фейксинхру или как?
0AB1: call_scm_func @Send_RPC_PICKEDUPPICKUP params 1 | 0@ ||
:Send_RPC_PICKEDUPPICKUP
0B3D: raknet 25@ = new_bit_stream
0B40: raknet bit_stream 25@ write 0@ type 3 size 4
0B8A: raknet send_rpc RPC_PICKEDUPPICKUP bit_stream 25@
0B3E: raknet delete_bit_stream 25@
0AB2: ret 0 ||
Возможно на сервере стоит проверка позиции игрока, попробуй стоять рядом с пикапом.Почему у меня не работает опкод 0BD1: samp send_picked_up_pickup 0@?
Указываю ID пикапа, но он не поднимается. Или чтобы поднять пикап нужен другой способ?
Вручную тоже отправлял, не выходит.Попробуй так, но я не думаю, что что-то изменится.
CLEO:0AB1: call_scm_func @Send_RPC_PICKEDUPPICKUP params 1 | 0@ || :Send_RPC_PICKEDUPPICKUP 0B3D: raknet 25@ = new_bit_stream 0B40: raknet bit_stream 25@ write 0@ type 3 size 4 0B8A: raknet send_rpc RPC_PICKEDUPPICKUP bit_stream 25@ 0B3E: raknet delete_bit_stream 25@ 0AB2: ret 0 ||
Насколько рядом? Если я стану на него, то я его подберу, если я буду стоять на нем, то прийдется перезаходить на него. Тут либо стать на него и не позволять отправлять пакет серверу, а потом когда активирую кнопкой - отправить когда нужно мне.Возможно на сервере стоит проверка позиции игрока, попробуй стоять рядом с пикапом.
Не НА него, а рядом с ним.Вручную тоже отправлял, не выходит.
Насколько рядом? Если я стану на него, то я его подберу, если я буду стоять на нем, то прийдется перезаходить на него. Тут либо стать на него и не позволять отправлять пакет серверу, а потом когда активирую кнопкой - отправить когда нужно мне.
Тоже не работает. Там похоже вообще не используется этот RPC. Если хукать RPC и близко подойти к пикапу, то я его подбираю, а RPC не отправляется от меня. Я веду к тому, что там, скорее всего, через онфут синхру работает все и чтобы взять пикап, необходимо её редактировать при отправке.Не НА него, а рядом с ним.
{$CLEO}
{$INCLUDE SF}
0001: wait 0 ms
while not SAMP.Available()
wait 400
end
0BE3: raknet setup_incoming_rpc_hook @in_rpc
0BDE: pause_thread 0
:in_rpc
0BE5: raknet 0@ = get_hook_param PARAM_PACKETID
if
0@ == RPC_GIVETAKEDAMAGE
then
0B78: log "RPC: %d" 0@
0BE5: raknet 1@ = get_hook_param PARAM_BITSTREAM
0BE7: raknet 2@ = bit_stream_read 1@ type BS_TYPE_INT
0BE7: raknet 3@ = bit_stream_read 1@ type BS_TYPE_INT
0BE7: raknet 4@ = bit_stream_read 1@ type BS_TYPE_FLOAT
0BE7: raknet 5@ = bit_stream_read 1@ type BS_TYPE_INT
0B78: log "Damage: %i" 1@
0B78: log "ID: %d" 2@
0B78: log "Float: %f" 3@
0B78: log "Weapon: %d" 4@
end
0BE0: raknet hook_ret true
Параметр один проебал. bool dmgType, uint16_t issuerId, float damage, int weapon, int bodypartПочему может не работать?Код:{$CLEO} {$INCLUDE SF} 0001: wait 0 ms while not SAMP.Available() wait 400 end 0BE3: raknet setup_incoming_rpc_hook @in_rpc 0BDE: pause_thread 0 :in_rpc 0BE5: raknet 0@ = get_hook_param PARAM_PACKETID if 0@ == RPC_GIVETAKEDAMAGE then 0B78: log "RPC: %d" 0@ 0BE5: raknet 1@ = get_hook_param PARAM_BITSTREAM 0BE7: raknet 2@ = bit_stream_read 1@ type BS_TYPE_INT 0BE7: raknet 3@ = bit_stream_read 1@ type BS_TYPE_INT 0BE7: raknet 4@ = bit_stream_read 1@ type BS_TYPE_FLOAT 0BE7: raknet 5@ = bit_stream_read 1@ type BS_TYPE_INT 0B78: log "Damage: %i" 1@ 0B78: log "ID: %d" 2@ 0B78: log "Float: %f" 3@ 0B78: log "Weapon: %d" 4@ end 0BE0: raknet hook_ret true
Данные брались исходя из этой таблицы. Там ни слова о dmgTypeПараметр один проебал. bool dmgType, uint16_t issuerId, float damage, int weapon, int bodypart
да и вообще руки кривые
0B78: log "Damage: %i" 1@
в 1@ у тебя битстрим
Pawn WikiДанные брались исходя из этой таблицы. Там ни слова о dmgType
https://docs.google.com/spreadsheets/d/1iIxEk7yR8r7ZLGiSAL4ndtz_N1k0p3Wt7TE5bei6ztU/edit#gid=1
Где можно найти таблицу с этими параметрами?
сяб, спасибо.https://www.blast.hk/wiki/tutorials:dxut_dialogs
https://www.blast.hk/wiki/tutorials:local_dialogs
Первые лучше.
{$CLEO}
0000:
while 8AFA:
wait 0
end
0B34: samp register_client_command "fmet" to_label @cmd
0BDE: pause_thread 0
:cmd
if
0B35: samp 0@ = get_last_command_params
then
0B78: log "0"
chatmsg "[Подсказка}: Используйте /fmet [Ранг] [Ваш ник] [Ваш ид] [Кол-во металла]" 11403055
else
0B78: log "1"
alloc 1@ 128
alloc 2@ 128
alloc 3@ 128
alloc 4@ 128
0AA5: call 0x8220AD num_params 4 pop 4 params 1@v 2@v 3@ 4@ "%s %s %s %s" 0@
0AF8: samp add_message_to_chat "{00B2EE}%s %s[%s] положил на склад мафии {32CD32}%s кг металла" 1@ 2@ 3@ 4@
0AC9: free_allocated_memory 1@
0AC9: free_allocated_memory 2@
0AC9: free_allocated_memory 3@
0AC9: free_allocated_memory 4@
end
0B43: samp cmd_ret
Вместо введных параметров пишет какие-то непонятные символы
Код:{$CLEO} 0000:
{$CLEO}
0000:
repeat
wait 150
until 0afa:
0B34: samp register_client_command "fmet" to_label @cmd
alloc 1@ 128
alloc 2@ 128
alloc 3@ 128
alloc 4@ 128
while true
wait 0
if 22@ == 1
then
0AA5: call 0x8220AD num_params 6 pop 6 params 4@v 3@v 2@ 1@ "%s %s %d %d" 0@
0AF8: samp add_message_to_chat "%s %s[%d] положил на склад мафии {32CD32}%d кг металла" 0x00B2EE 1@ 2@ 3@ 4@
22@ = 0
end
end
:cmd
if 0B35: samp 0@ = get_last_command_params
then
0B78: log "0"
chatmsg "[Подсказка}: Используйте /fmet [Ранг] [Ваш ник] [Ваш ид] [Кол-во металла]" 11403055
else
22@ = 1
0b78: log "1"
end
SAMP.CmdRet()