public class HideNSeekGameOptions : IGameOptions
{
- public const int LatestVersion = 8;
+ public const int LatestVersion = 9;
public HideNSeekGameOptions(byte version = LatestVersion)
{
public float MaxPingTime { get; set; } = 6f;
+ /// <summary>
+ /// Gets or sets the experience level of people in the lobby: Beginner, Intermediate or Expert.
+ /// </summary>
+ public byte Tag { get; set; } = 0;
+
public static HideNSeekGameOptions Deserialize(IMessageReader reader, byte version)
{
var options = new HideNSeekGameOptions(version);
MaxPingTime = reader.ReadSingle();
CrewmateTimeInVent = reader.ReadSingle();
+ if (Version >= 9)
+ {
+ Tag = reader.ReadByte();
+ }
+
if (Version > LatestVersion)
{
IGameOptions.ThrowUnknownVersion<HideNSeekGameOptions>(Version);
writer.Write(MaxPingTime);
writer.Write(CrewmateTimeInVent);
+ if (Version >= 9)
+ {
+ writer.Write((byte)Tag);
+ }
+
if (Version > LatestVersion)
{
IGameOptions.ThrowUnknownVersion<HideNSeekGameOptions>(Version);
public class NormalGameOptions : IGameOptions
{
- public const int LatestVersion = 8;
+ public const int LatestVersion = 9;
public NormalGameOptions(byte version = LatestVersion)
{
/// </summary>
public TaskBarUpdate TaskBarUpdate { get; set; } = TaskBarUpdate.Always;
+ /// <summary>
+ /// Gets or sets the experience level of people in the lobby: Beginner, Intermediate or Expert.
+ /// </summary>
+ public byte Tag { get; set; } = 0;
+
public RoleOptionsCollection RoleOptions { get; set; }
public static NormalGameOptions Deserialize(IMessageReader reader, byte version)
AnonymousVotes = reader.ReadBoolean();
TaskBarUpdate = (TaskBarUpdate)reader.ReadByte();
+ if (Version >= 9)
+ {
+ Tag = reader.ReadByte();
+ }
+
RoleOptions.Deserialize(reader);
if (Version > LatestVersion)
writer.Write(AnonymousVotes);
writer.Write((byte)TaskBarUpdate);
+ if (Version >= 9)
+ {
+ writer.Write((byte)Tag);
+ }
+
RoleOptions.Serialize(writer);
if (Version > LatestVersion)