public static GameMessage ParseMessage(GameBitBuffer buffer) { int id = buffer.ReadInt(9); var msg = Allocate <GameMessage>((Opcodes)id); if (msg == null) { return(null); } msg.Id = id; msg.Parse(buffer); return(msg); }