1
0

RulesMessages.cs 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. using Lidgren.Network;
  2. using Robust.Shared.Network;
  3. using Robust.Shared.Serialization;
  4. namespace Content.Shared.Info;
  5. /// <summary>
  6. /// Sent by the server when the client connects to sync the client rules and displaying a popup with them if necessitated.
  7. /// </summary>
  8. public sealed class SendRulesInformationMessage : NetMessage
  9. {
  10. public override MsgGroups MsgGroup => MsgGroups.Command;
  11. public float PopupTime { get; set; }
  12. public string CoreRules { get; set; } = string.Empty;
  13. public bool ShouldShowRules { get; set; }
  14. public override void ReadFromBuffer(NetIncomingMessage buffer, IRobustSerializer serializer)
  15. {
  16. PopupTime = buffer.ReadFloat();
  17. CoreRules = buffer.ReadString();
  18. ShouldShowRules = buffer.ReadBoolean();
  19. }
  20. public override void WriteToBuffer(NetOutgoingMessage buffer, IRobustSerializer serializer)
  21. {
  22. buffer.Write(PopupTime);
  23. buffer.Write(CoreRules);
  24. buffer.Write(ShouldShowRules);
  25. }
  26. }
  27. /// <summary>
  28. /// Sent by the client when it has accepted the rules.
  29. /// </summary>
  30. public sealed class RulesAcceptedMessage : NetMessage
  31. {
  32. public override MsgGroups MsgGroup => MsgGroups.Command;
  33. public override void ReadFromBuffer(NetIncomingMessage buffer, IRobustSerializer serializer)
  34. {
  35. }
  36. public override void WriteToBuffer(NetOutgoingMessage buffer, IRobustSerializer serializer)
  37. {
  38. }
  39. }