protected override PacketHandler DispatchPacket(byte type)
{
switch (type)
{
case 0x00: return GameLoading;
case 0x01: return GameFlagsPing;
case 0x02: return StartPingThread;
case 0x03: return LoadActData;
case 0x0c: return NpcUpdate;
case 0x0f: return PlayerUpdate;
case 0x15: return PlayerReassign;
case 0x1a: case 0x1b: case 0x1c: return ProcessExperience;
case 0x1d: return SetPlayerLevel;
case 0x21: case 0x22: return ItemSkillBonus;
case 0x26: return ChatMessage;
case 0x27: return NpcInteraction;
case 0x5b: return PlayerJoins;
case 0x5c: return PlayerLeaves;
case 0x59: return InitializePlayer;
case 0x67: return NpcMovement;
case 0x68: return NpcMoveEntity;
case 0x69: return NpcStateUpdate;
case 0x6d: return NpcStoppedMoving;
case 0x81: return MercUpdate;
case 0x82: return PortalUpdate;
case 0x8f: return Pong;
case 0x94: return SkillPacket;
case 0x95: return LifeManaPacket;
case 0x97: return WeaponSetSwitched;
case 0x9c: case 0x9d: return ItemAction;
case 0xac: return NpcAssignment;
default: return DefaultHandler;
}
}