I've got problem with paperdoll and double click hook.
uopacket.cfg:
Code: Select all
Packet 0x06
{
Length 5
ReceiveFunction DoubleClickHook:Paperdoll
}Code: Select all
use uo;
use os;
use cfgfile;
use polsys;
const OFFSET_CHARID := 1;
const OFFSET_NAME := 5;
const OFFSET_FLAG := 65;
program DoubleClickHook()
Print("Hooking Double Click Packet 0x06");
return 1;
endprogram
exported function Paperdoll(character, byref packet )
var serial := packet.GetInt32(1);
var objserial;
var objname;
var flag;
if (serial == character.serial)
objname := character.name;
flag := 0x00; // normal | it's a good flag for character paperdoll? / don't work
elseif (serial)
objserial := SystemFindObjectBySerial(serial);
endif
if (objserial.IsA(POLCLASS_NPC))
objname := objserial.name;
flag := 0x00; // works
elseif (objserial.Isa(POLCLASS_MOBILE))
objname := "[" + objserial.title_race + "]";
flag := 0x00; // works
endif
var outpkt := CreatePacket (0x88, 66);
outpkt.SetInt32(OFFSET_CHARID, serial);
outpkt.SetString(OFFSET_NAME, objname ,1);
outpkt.SetInt16(OFFSET_FLAG, flag);
outpkt.SendPacket(character);
return 1;
endfunction
PS: Sorry for my english :/