public override void AC_OnPacketInbound(Packet packet) { try { StartLogging(); var header = (ClientMessages)packet.ReadByte(); if (!Loaded) { switch (header) { case ClientMessages.MIGRATE_IN: OnPlayerLoad(packet); break; } } else { switch (header) { case ClientMessages.ENTER_PORTAL: Server.Instance.CenterConnection.CharacterExitCashshop(Player.SessionHash, Player.Character.ID, Server.Instance.WorldID); break; case ClientMessages.CASHSHOP_ACTION: CashPacket.HandleCashPacket(Player.Character, packet); break; case ClientMessages.CASHSHOP_QUERY_CASH: CashPacket.SendCashAmounts(Player.Character); break; case ClientMessages.CLIENT_HASH: break; case ClientMessages.PONG: // Make sure we update the player online thing RedisBackend.Instance.SetPlayerOnline( Player.Character.UserID, Server.Instance.GetOnlineId() ); break; default: { Program.MainForm.LogAppend("[" + header + "] Unknown packet: " + packet); break; } } } } catch (Exception ex) { Program.MainForm.LogAppend("Exception: " + ex); } finally { EndLogging(); } }