static PacketHandlers()
{
m_Handlers = new PacketHandler[0x100];
m_6017Handlers = new PacketHandler[0x100];
m_ExtendedHandlersLow = new PacketHandler[0x100];
m_ExtendedHandlersHigh = new Dictionary<int, PacketHandler>();
m_EncodedHandlersLow = new EncodedPacketHandler[0x100];
m_EncodedHandlersHigh = new Dictionary<int, EncodedPacketHandler>();
Register( 0x00, 104, false, new OnPacketReceive( CreateCharacter ) );
Register( 0x01, 5, false, new OnPacketReceive( Disconnect ) );
Register( 0x02, 7, true, new OnPacketReceive( MovementReq ) );
Register( 0x03, 0, true, new OnPacketReceive( AsciiSpeech ) );
Register( 0x04, 2, true, new OnPacketReceive( GodModeRequest ) );
Register( 0x05, 5, true, new OnPacketReceive( AttackReq ) );
Register( 0x06, 5, true, new OnPacketReceive( UseReq ) );
Register( 0x07, 7, true, new OnPacketReceive( LiftReq ) );
Register( 0x08, 14, true, new OnPacketReceive( DropReq ) );
Register( 0x09, 5, true, new OnPacketReceive( LookReq ) );
Register( 0x0A, 11, true, new OnPacketReceive( Edit ) );
Register( 0x12, 0, true, new OnPacketReceive( TextCommand ) );
Register( 0x13, 10, true, new OnPacketReceive( EquipReq ) );
Register( 0x14, 6, true, new OnPacketReceive( ChangeZ ) );
Register( 0x22, 3, true, new OnPacketReceive( Resynchronize ) );
Register( 0x2C, 2, true, new OnPacketReceive( DeathStatusResponse ) );
Register( 0x34, 10, true, new OnPacketReceive( MobileQuery ) );
Register( 0x3A, 0, true, new OnPacketReceive( ChangeSkillLock ) );
Register( 0x3B, 0, true, new OnPacketReceive( VendorBuyReply ) );
Register( 0x47, 11, true, new OnPacketReceive( NewTerrain ) );
Register( 0x48, 73, true, new OnPacketReceive( NewAnimData ) );
Register( 0x58, 106, true, new OnPacketReceive( NewRegion ) );
Register( 0x5D, 73, false, new OnPacketReceive( PlayCharacter ) );
Register( 0x61, 9, true, new OnPacketReceive( DeleteStatic ) );
Register( 0x6C, 19, true, new OnPacketReceive( TargetResponse ) );
Register( 0x6F, 0, true, new OnPacketReceive( SecureTrade ) );
Register( 0x72, 5, true, new OnPacketReceive( SetWarMode ) );
Register( 0x73, 2, false, new OnPacketReceive( PingReq ) );
Register( 0x75, 35, true, new OnPacketReceive( RenameRequest ) );
Register( 0x79, 9, true, new OnPacketReceive( ResourceQuery ) );
Register( 0x7E, 2, true, new OnPacketReceive( GodviewQuery ) );
Register( 0x7D, 13, true, new OnPacketReceive( MenuResponse ) );
Register( 0x80, 62, false, new OnPacketReceive( AccountLogin ) );
Register( 0x83, 39, false, new OnPacketReceive( DeleteCharacter ) );
Register( 0x91, 65, false, new OnPacketReceive( GameLogin ) );
Register( 0x95, 9, true, new OnPacketReceive( HuePickerResponse ) );
Register( 0x96, 0, true, new OnPacketReceive( GameCentralMoniter ) );
Register( 0x98, 0, true, new OnPacketReceive( MobileNameRequest ) );
Register( 0x9A, 0, true, new OnPacketReceive( AsciiPromptResponse ) );
Register( 0x9B, 258, true, new OnPacketReceive( HelpRequest ) );
Register( 0x9D, 51, true, new OnPacketReceive( GMSingle ) );
Register( 0x9F, 0, true, new OnPacketReceive( VendorSellReply ) );
Register( 0xA0, 3, false, new OnPacketReceive( PlayServer ) );
Register( 0xA4, 149, false, new OnPacketReceive( SystemInfo ) );
Register( 0xA7, 4, true, new OnPacketReceive( RequestScrollWindow ) );
Register( 0xAD, 0, true, new OnPacketReceive( UnicodeSpeech ) );
Register( 0xB1, 0, true, new OnPacketReceive( DisplayGumpResponse ) );
Register( 0xB5, 64, true, new OnPacketReceive( ChatRequest ) );
Register( 0xB6, 9, true, new OnPacketReceive( ObjectHelpRequest ) );
Register( 0xB8, 0, true, new OnPacketReceive( ProfileReq ) );
Register( 0xBB, 9, false, new OnPacketReceive( AccountID ) );
Register( 0xBD, 0, false, new OnPacketReceive( ClientVersion ) );
Register( 0xBE, 0, true, new OnPacketReceive( AssistVersion ) );
Register( 0xBF, 0, true, new OnPacketReceive( ExtendedCommand ) );
Register( 0xC2, 0, true, new OnPacketReceive( UnicodePromptResponse ) );
Register( 0xC8, 2, true, new OnPacketReceive( SetUpdateRange ) );
Register( 0xC9, 6, true, new OnPacketReceive( TripTime ) );
Register( 0xCA, 6, true, new OnPacketReceive( UTripTime ) );
Register( 0xCF, 0, false, new OnPacketReceive( AccountLogin ) );
Register( 0xD0, 0, true, new OnPacketReceive( ConfigurationFile ) );
Register( 0xD1, 2, true, new OnPacketReceive( LogoutReq ) );
Register( 0xD6, 0, true, new OnPacketReceive( BatchQueryProperties ) );
Register( 0xD7, 0, true, new OnPacketReceive( EncodedCommand ) );
Register( 0xE1, 0, false, new OnPacketReceive( ClientType ) );
Register( 0xEF, 21, false, new OnPacketReceive( LoginServerSeed ) );
Register( 0xF4, 0, false, new OnPacketReceive( CrashReport ) );
Register( 0xF8, 106, false, new OnPacketReceive( CreateCharacter70160 ) );
Register6017( 0x08, 15, true, new OnPacketReceive( DropReq6017 ) );
RegisterExtended( 0x05, false, new OnPacketReceive( ScreenSize ) );
RegisterExtended( 0x06, true, new OnPacketReceive( PartyMessage ) );
RegisterExtended( 0x07, true, new OnPacketReceive( QuestArrow ) );
RegisterExtended( 0x09, true, new OnPacketReceive( DisarmRequest ) );
RegisterExtended( 0x0A, true, new OnPacketReceive( StunRequest ) );
RegisterExtended( 0x0B, false, new OnPacketReceive( Language ) );
RegisterExtended( 0x0C, true, new OnPacketReceive( CloseStatus ) );
RegisterExtended( 0x0E, true, new OnPacketReceive( Animate ) );
RegisterExtended( 0x0F, false, new OnPacketReceive( Empty ) ); // What's this?
RegisterExtended( 0x10, true, new OnPacketReceive( QueryProperties ) );
RegisterExtended( 0x13, true, new OnPacketReceive( ContextMenuRequest ) );
RegisterExtended( 0x15, true, new OnPacketReceive( ContextMenuResponse ) );
RegisterExtended( 0x1A, true, new OnPacketReceive( StatLockChange ) );
RegisterExtended( 0x1C, true, new OnPacketReceive( CastSpell ) );
RegisterExtended( 0x24, false, new OnPacketReceive( UnhandledBF ) );
RegisterExtended( 0x2C, true, new OnPacketReceive( BandageTarget ) );
RegisterExtended( 0x32, true, new OnPacketReceive( ToggleFlying ) );
RegisterEncoded( 0x19, true, new OnEncodedPacketReceive( SetAbility ) );
RegisterEncoded( 0x28, true, new OnEncodedPacketReceive( GuildGumpRequest ) );
RegisterEncoded( 0x32, true, new OnEncodedPacketReceive( QuestGumpRequest ) );
}