// // SaytPacket.cs // // Copyright (c) František Boháček. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. using NosSmooth.Packets.Enums.Chat; using NosSmooth.Packets.Enums.Entities; using NosSmooth.PacketSerializer.Abstractions.Attributes; using NosSmooth.PacketSerializer.Abstractions.Common; namespace NosSmooth.Packets.Server.Chat; /// /// A message from an entity in chat. /// /// The type of the entity that spoke. /// The id of the entity that spoke. /// The say/message color. /// The name of the entity. /// The spoken message. [PacketHeader("sayt", PacketSource.Server)] [GenerateSerializer(true)] public record SaytPacket ( [PacketIndex(0)] EntityType EntityType, [PacketIndex(1)] long EntityId, [PacketIndex(2)] SayColor Color, [PacketIndex(3)] NameString Name, [PacketGreedyIndex(4, IsOptional = true)] string? Message ) : IPacket;