MsgRoleBans.cs 912 B

123456789101112131415161718192021222324252627282930313233343536
  1. using Lidgren.Network;
  2. using Robust.Shared.Network;
  3. using Robust.Shared.Serialization;
  4. namespace Content.Shared.Players;
  5. /// <summary>
  6. /// Sent server -> client to inform the client of their role bans.
  7. /// </summary>
  8. public sealed class MsgRoleBans : NetMessage
  9. {
  10. public override MsgGroups MsgGroup => MsgGroups.EntityEvent;
  11. public List<string> Bans = new();
  12. public override void ReadFromBuffer(NetIncomingMessage buffer, IRobustSerializer serializer)
  13. {
  14. var count = buffer.ReadVariableInt32();
  15. Bans.EnsureCapacity(count);
  16. for (var i = 0; i < count; i++)
  17. {
  18. Bans.Add(buffer.ReadString());
  19. }
  20. }
  21. public override void WriteToBuffer(NetOutgoingMessage buffer, IRobustSerializer serializer)
  22. {
  23. buffer.WriteVariableInt32(Bans.Count);
  24. foreach (var ban in Bans)
  25. {
  26. buffer.Write(ban);
  27. }
  28. }
  29. }