public override BaseMessage GetInnerMessage() { switch (Type) { case TCTypes.Info: { ServerInfoMessage msg = new ServerInfoMessage(); msg.UTFDeSerialize(this.Message); return msg; } case TCTypes.AbonentCommand: { AbonentsCommandMessage msg = new AbonentsCommandMessage(); msg.UTFDeSerialize(this.Message); return msg; } case TCTypes.Confirm: { ServerConfirmMessage msg = new ServerConfirmMessage(); msg.UTFDeSerialize(this.Message); return msg; } case TCTypes.PlayerCommand: { PlayerCommandMessage msg = new PlayerCommandMessage(); msg.UTFDeSerialize(this.Message); return msg; } } return null; }