MsgDeleteChatMessagesBy.cs 936 B

12345678910111213141516171819202122232425262728293031323334353637
  1. using Lidgren.Network;
  2. using Robust.Shared.Network;
  3. using Robust.Shared.Serialization;
  4. namespace Content.Shared.Chat;
  5. public sealed class MsgDeleteChatMessagesBy : NetMessage
  6. {
  7. public override MsgGroups MsgGroup => MsgGroups.Command;
  8. public int Key;
  9. public HashSet<NetEntity> Entities = default!;
  10. public override void ReadFromBuffer(NetIncomingMessage buffer, IRobustSerializer serializer)
  11. {
  12. Key = buffer.ReadInt32();
  13. var entities = buffer.ReadInt32();
  14. Entities = new HashSet<NetEntity>(entities);
  15. for (var i = 0; i < entities; i++)
  16. {
  17. Entities.Add(buffer.ReadNetEntity());
  18. }
  19. }
  20. public override void WriteToBuffer(NetOutgoingMessage buffer, IRobustSerializer serializer)
  21. {
  22. buffer.Write(Key);
  23. buffer.Write(Entities.Count);
  24. foreach (var ent in Entities)
  25. {
  26. buffer.Write(ent);
  27. }
  28. }
  29. }