/// <inheritdoc />
 public NetworkChatCreatureRegularMessageDetails_Vanilla([NotNull] ObjectGuid senderGuid, [NotNull] MessageAddressingDetails <string> addressingDetails)
 {
     AddressingDetails = addressingDetails ?? throw new ArgumentNullException(nameof(addressingDetails));
     SenderGuid        = senderGuid ?? throw new ArgumentNullException(nameof(senderGuid));
 }
 /// <inheritdoc />
 public NetworkChatCreatureMessageDetails(MessageAddressingDetails <string> addressingDetails)
 {
     AddressingDetails = addressingDetails;
 }
 //TODO: Validate CTOR inputs
 /// <inheritdoc />
 public NetworkChatCreatureMessageDetails([NotNull] MessageAddressingDetails <string> addressingDetails, string recieverName)
 {
     AddressingDetails = addressingDetails ?? throw new ArgumentNullException(nameof(addressingDetails));
     RecieverName      = recieverName;
 }
 /// <inheritdoc />
 public NetworkChatWhisperMessageDetails([NotNull] MessageAddressingDetails <string> addressingDetails)
 {
     AddressingDetails = addressingDetails ?? throw new ArgumentNullException(nameof(addressingDetails));
 }
 /// <inheritdoc />
 public SMSG_MESSAGECHAT_Payload_Vanilla([NotNull] NetworkChatMessageHeader_Vanilla messageHeader, [NotNull] NetworkChatMessageFooter messageFooter, [NotNull] MessageAddressingDetails <string> creatureSpecialMessageDetails)
 {
     MessageHeader = messageHeader ?? throw new ArgumentNullException(nameof(messageHeader));
     CreatureSpecialMessageDetails = creatureSpecialMessageDetails ?? throw new ArgumentNullException(nameof(creatureSpecialMessageDetails));
     MessageFooter = messageFooter ?? throw new ArgumentNullException(nameof(messageFooter));
 }
 /// <inheritdoc />
 public SMSG_MESSAGECHAT_Payload_Vanilla([NotNull] NetworkChatMessageHeader_Vanilla messageHeader, [NotNull] NetworkChatMessageFooter messageFooter, [NotNull] MessageAddressingDetails <ObjectGuid> regularMessageDetails)
 {
     MessageHeader         = messageHeader ?? throw new ArgumentNullException(nameof(messageHeader));
     RegularMessageDetails = regularMessageDetails ?? throw new ArgumentNullException(nameof(regularMessageDetails));
     MessageFooter         = messageFooter ?? throw new ArgumentNullException(nameof(messageFooter));
 }