- 396
- 106
Помогите, никак не могу понять хуки на клео, точней как их строить
Нужно построить хук для RPC_SCRSHOWTEXTDRAW = 134 с возможностью редактирования
Смены позиции и т.д.
Вот тут что то пытаюсь делать, да не так вроде расписал структуру
Не могу нигде найти
Решено
Спасибо Макарону
Я тупо накосячил с типом данных
Нужно построить хук для RPC_SCRSHOWTEXTDRAW = 134 с возможностью редактирования
Смены позиции и т.д.
Вот тут что то пытаюсь делать, да не так вроде расписал структуру
Не могу нигде найти
CLEO:
:in_rpc
0BE5: raknet 10@ = get_hook_param PARAM_PACKETID // Получаем ИД RPC
if
10@ == RPC_SCRSHOWTEXTDRAW
then
0BE5: raknet 11@ = get_hook_param PARAM_BITSTREAM // Получаем битстрим
0BE7: raknet 14@ = bit_stream_read 11@ type BS_TYPE_SHORT // UINT16 wTextDrawID
0BE7: raknet 15@ = bit_stream_read 11@ type BS_TYPE_BOOL // UINT8 Flags
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_FLOAT // float fLetterWidth
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_FLOAT // float fLetterHeight
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_FLOAT // UINT32 dwLetterColor
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_FLOAT // float fLineWidth
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_FLOAT // float fLineHeight
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_FLOAT // UINT32 dwBoxColor
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_BOOL // UINT8 Shadow
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_BOOL // UINT8 Outline
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_FLOAT // UINT32 dwBackgroundColor
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_BOOL // UINT8 Style
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_BOOL // UINT8 Selectable
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_FLOAT // float fX
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_FLOAT // float fY
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_SHORT // UINT16 wModelID
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_FLOAT // float fRotX
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_FLOAT // float fRotY
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_FLOAT // float fRotZ
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_FLOAT // float fZoom
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_SHORT // UINT16 wColor1
0BE7: raknet 0 = bit_stream_read 11@ type BS_TYPE_SHORT // UINT16 wColor2
//0BE7: raknet 12@ = bit_stream_read 11@ type BS_TYPE_BOOL // UINT8 szTextLen
//0AC8: 13@ = allocate_memory_size 512
//0BE8: raknet bit_stream 11@ read_array 13@ size 12@
//0C1E: array 13@ element 12@ el_size 1 = 0
0AF8: samp add_message_to_chat "%d" color -1 params 15@ // выводим сообщение в чат
//0AC9: free_allocated_memory 13@
end
0BE0: raknet hook_ret true // принимаем RPC, false - не принимать
CLEO:
{$CLEO}
{$INCLUDE SF}
0000:
repeat
wait 0
until Samp.Available()
0BE3: raknet setup_incoming_rpc_hook @in_rpc
0BDE: pause_thread 0
:in_rpc
0BE5: raknet 10@ = get_hook_param PARAM_PACKETID // Ïîëó÷àåì ÈÄ RPC
if
10@ == RPC_SCRSHOWTEXTDRAW
then
0BE9: raknet bit_stream 11@ reset_read_pointer
0BE5: raknet 11@ = get_hook_param PARAM_BITSTREAM // Ïîëó÷àåì áèòñòðèì
0BE7: raknet 14@ = bit_stream_read 11@ type BS_TYPE_SHORT // UINT16 wTextDrawID
0BE7: raknet 15@ = bit_stream_read 11@ type BS_TYPE_BYTE // UINT8 Flags
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_FLOAT // float fLetterWidth
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_FLOAT // float fLetterHeight
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_INT // UINT32 dwLetterColor
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_FLOAT // float fLineWidth
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_FLOAT // float fLineHeight
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_INT // UINT32 dwBoxColor
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_BYTE // UINT8 Shadow
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_BYTE // UINT8 Outline
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_INT // UINT32 dwBackgroundColor
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_BYTE // UINT8 Style
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_BYTE // UINT8 Selectable
0BE7: raknet 20@ = bit_stream_read 11@ type BS_TYPE_FLOAT // float fX
0BE7: raknet 21@ = bit_stream_read 11@ type BS_TYPE_FLOAT // float fY
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_SHORT // UINT16 wModelID
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_FLOAT // float fRotX
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_FLOAT // float fRotY
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_FLOAT // float fRotZ
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_FLOAT // float fZoom
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_SHORT // UINT16 wColor1
0BE7: raknet 0@ = bit_stream_read 11@ type BS_TYPE_SHORT // UINT16 wColor2
0BE7: raknet 12@ = bit_stream_read 11@ type BS_TYPE_SHORT // WORD szTextLen
0AC8: 13@ = allocate_memory_size 512
0BE8: raknet bit_stream 11@ read_array 13@ size 12@
0C1E: array 13@ element 12@ el_size 1 = 0
chatmsg "%d %s" -1 12@ 13@
0AC9: free_allocated_memory 13@
end
0BE0: raknet hook_ret true
Я тупо накосячил с типом данных
Последнее редактирование: