mirror of
https://github.com/space-wizards/RobustToolbox.git
synced 2026-02-14 19:29:36 +01:00
57 lines
1.8 KiB
C#
57 lines
1.8 KiB
C#
using System.Collections.Generic;
|
|
using Lidgren.Network;
|
|
using Robust.Shared.Interfaces.Network;
|
|
using Robust.Shared.Network;
|
|
|
|
namespace Robust.Shared.Console
|
|
{
|
|
/// <summary>
|
|
/// Sent from server to client. Contains the console group of the client,
|
|
/// which includes a list of commands they can use.
|
|
/// </summary>
|
|
class MsgConGroupUpdate : NetMessage
|
|
{
|
|
public const MsgGroups Group = MsgGroups.Command;
|
|
public const string Name = nameof(MsgConGroupUpdate);
|
|
|
|
public MsgConGroupUpdate(INetChannel channel) : base(Name, Group)
|
|
{
|
|
|
|
}
|
|
|
|
//Client console group data
|
|
public ConGroup ClientConGroup = new ConGroup();
|
|
|
|
public override void ReadFromBuffer(NetIncomingMessage buffer)
|
|
{
|
|
ClientConGroup.Index = buffer.ReadInt32();
|
|
ClientConGroup.Name = buffer.ReadString();
|
|
ClientConGroup.CanViewVar = buffer.ReadBoolean();
|
|
ClientConGroup.CanAdminPlace = buffer.ReadBoolean();
|
|
ClientConGroup.CanScript = buffer.ReadBoolean();
|
|
|
|
int numCommands = buffer.ReadInt32();
|
|
ClientConGroup.Commands = new List<string>(numCommands);
|
|
for (int i = 0; i < numCommands; i++)
|
|
{
|
|
ClientConGroup.Commands.Add(buffer.ReadString());
|
|
}
|
|
}
|
|
|
|
public override void WriteToBuffer(NetOutgoingMessage buffer)
|
|
{
|
|
buffer.Write(ClientConGroup.Index);
|
|
buffer.Write(ClientConGroup.Name);
|
|
buffer.Write(ClientConGroup.CanViewVar);
|
|
buffer.Write(ClientConGroup.CanAdminPlace);
|
|
buffer.Write(ClientConGroup.CanScript);
|
|
|
|
buffer.Write(ClientConGroup.Commands.Count);
|
|
foreach (var command in ClientConGroup.Commands)
|
|
{
|
|
buffer.Write(command);
|
|
}
|
|
}
|
|
}
|
|
}
|