NpcInfo (Opcode 0x0C). Protocol 597. (Не полностью разобран)
Код:
writeD(_npcObjId);
writeC(0x00); // UNK
writeH(37);
writeB(new byte[]{(byte) 0xFD, (byte) 0xBE, (byte) 0x4E, (byte) (_isAttackable ? 0xF2 : 0xE2), (byte) 0x0C});
writeC(7 + _title.length() * 2);
writeC(_isAttackable ? 1 : 0);
writeD(0x00); // UNK
writeCutS(_title);
writeH(0x00); // UNK
writeH(_isAttackable ? 68 : 64);
writeD(_npcId + 1000000); // npctype id c4
writeD(_loc.x);
writeD(_loc.y);
writeD(_loc.z + Config.CLIENT_Z_SHIFT);
writeD(_loc.h);
writeD(_mAtkSpd);
writeD(_pAtkSpd);
writeCutF(_runSpdMul);
writeCutF(_atkSpdMul);
writeC(_showName ? 1 : 0);
writeC(dead);
writeC(running);
writeC(isFlying ? 2 : 0); // C2
writeC(isFlying ? 1 : 0); // C2
writeC(0x00);
writeC(0x00);
writeH(0x00);
writeH(0x00);
writeD(_currentHP);
writeD(_currentMP);
writeD(_maxHP);
if(_isAttackable)
writeD(_maxMP);
writeH(0x00);
writeC(12);
writeH(0x00);