private void HandleMessage(NetIncomingMessage msg)
 {
     PacketType type = (PacketType)msg.ReadByte();
     switch (type)
     {
         case PacketType.ChatMessage:
             ChatMessagePacket chatPacket = new ChatMessagePacket();
             chatPacket.Unpack(msg);
             ChatManager.Instance.addMessage(chatPacket.username, chatPacket.message);
             break;
         case PacketType.PlayerPosition:
             PlayerPositionPacket posPacket = new PlayerPositionPacket();
             posPacket.Unpack(msg);
             ClientGameManager.Instance.HandleNewPlayerPosition(posPacket);
             break;
         case PacketType.Disconnect:
             DisconnectPacket disPacket = new DisconnectPacket();
             disPacket.Unpack(msg);
             ClientGameManager.Instance.HandlePlayerDisconnect(disPacket.username);
             break;
         case PacketType.MobPosition:
             MobPositionPacket mpPacket = new MobPositionPacket();
             mpPacket.Unpack(msg);
             ClientGameManager.Instance.HandleMobMovement(mpPacket);
             break;
     }
 }