// <auto-generated>
//     Generated by the protocol buffer compiler.  DO NOT EDIT!
//     source: circuits_v2/progression_settings_data.proto
// </auto-generated>
#pragma warning disable 1591, 0612, 3021, 8981
#region Designer generated code

using pb = global::Google.Protobuf;
using pbc = global::Google.Protobuf.Collections;
using pbr = global::Google.Protobuf.Reflection;
using scg = global::System.Collections.Generic;
namespace CircuitsV2.Protobuf {

  /// <summary>Holder for reflection information generated from circuits_v2/progression_settings_data.proto</summary>
  public static partial class ProgressionSettingsDataReflection {

    #region Descriptor
    /// <summary>File descriptor for circuits_v2/progression_settings_data.proto</summary>
    public static pbr::FileDescriptor Descriptor {
      get { return descriptor; }
    }
    private static pbr::FileDescriptor descriptor;

    static ProgressionSettingsDataReflection() {
      byte[] descriptorData = global::System.Convert.FromBase64String(
          string.Concat(
            "CitjaXJjdWl0c192Mi9wcm9ncmVzc2lvbl9zZXR0aW5nc19kYXRhLnByb3Rv",
            "EgtjaXJjdWl0c192MhosY2lyY3VpdHNfdjIvZGF0YV90YWJsZS9kYXRhX3Rh",
            "YmxlX2RhdGEucHJvdG8aFGNvcmUvZ3VpZF9kYXRhLnByb3RvIpEBChZQcm9n",
            "cmVzc2lvbk1hbmFnZXJEYXRhEjsKDXNldHRpbmdzX2RhdGEYASABKAsyJC5j",
            "aXJjdWl0c192Mi5Qcm9ncmVzc2lvblNldHRpbmdzRGF0YRI6ChZwcm9ncmVz",
            "c2lvbl90YWJsZV9kYXRhGAIgASgLMhouY2lyY3VpdHNfdjIuRGF0YVRhYmxl",
            "RGF0YSKFBwoXUHJvZ3Jlc3Npb25TZXR0aW5nc0RhdGESGwoTcm9vbV9sZXZl",
            "bHNfZW5hYmxlZBgBIAEoCBISCgpsZXZlbF9uYW1lGAIgASgJEg8KB3hwX25h",
            "bWUYAyABKAkSEAoIeHBfY29sb3IYBCABKAUSPAoMaGVhZGVyX3RpdGxlGAUg",
            "ASgLMiYuY2lyY3VpdHNfdjIuUHJvZ3Jlc3Npb25IZWFkZXJUZXh0RGF0YRI/",
            "Cg9oZWFkZXJfc3VidGl0bGUYBiABKAsyJi5jaXJjdWl0c192Mi5Qcm9ncmVz",
            "c2lvbkhlYWRlclRleHREYXRhEhgKEGJhY2tncm91bmRfY29sb3IYByABKAUS",
            "GAoQYmFja2dyb3VuZF9pbWFnZRgIIAEoCRIZChFzaG93X3Byb2dyZXNzX2Jh",
            "chgJIAEoCBI6CgpsYWJlbF90ZXh0GAogASgLMiYuY2lyY3VpdHNfdjIuUHJv",
            "Z3Jlc3Npb25IZWFkZXJUZXh0RGF0YRIcChRzaG93X3hwX2NvdW50ZXJfdGV4",
            "dBgLIAEoCBIkChxzaG93X2xldmVsX3Byb2dyZXNzaW9uX3RhYmxlGAwgASgI",
            "EkUKC3RhYmxlX3N0eWxlGA0gASgOMjAuY2lyY3VpdHNfdjIuUHJvZ3Jlc3Np",
            "b25TZXR0aW5nc0RhdGEuU2hvd1Jld2FyZHMSOAoKY3VycmVuY2llcxgOIAMo",
            "CzIkLmNpcmN1aXRzX3YyLlByb2dyZXNzaW9uQ3VycmVuY3lEYXRhEiUKHWRp",
            "c3BsYXlfcm9vbV9sZXZlbF9vbl9uYW1ldGFnGA8gASgIEisKI3Nob3dfcGxh",
            "eWVyX2ZhY2luZ19wcm9ncmVzc2lvbl9wYWdlGBAgASgIEkwKD2JhY2tncm91",
            "bmRfdHlwZRgRIAEoDjIzLmNpcmN1aXRzX3YyLlByb2dyZXNzaW9uU2V0dGlu",
            "Z3NEYXRhLkJhY2tncm91bmRUeXBlEksKFHJvb21faW52ZW50b3J5X2l0ZW1z",
            "GBIgAygLMi0uY2lyY3VpdHNfdjIuUHJvZ3Jlc3Npb25Sb29tSW52ZW50b3J5",
            "SXRlbURhdGEiLQoLU2hvd1Jld2FyZHMSBwoDQWxsEAASCwoHQ2xhaW1lZBAB",
            "EggKBE5leHQQAiIpCg5CYWNrZ3JvdW5kVHlwZRIJCgVJbWFnZRAAEgwKCEdy",
            "YWRpZW50EAEisgEKGVByb2dyZXNzaW9uSGVhZGVyVGV4dERhdGESRAoKdGl0",
            "bGVfbW9kZRgBIAEoDjIwLmNpcmN1aXRzX3YyLlByb2dyZXNzaW9uSGVhZGVy",
            "VGV4dERhdGEuVGl0bGVNb2RlEhQKDHRhYmxlX2NvbHVtbhgCIAEoBSI5CglU",
            "aXRsZU1vZGUSDgoKUGxheWVyTmFtZRAAEg0KCVJvb21MZXZlbBABEg0KCUZy",
            "b21UYWJsZRACIngKF1Byb2dyZXNzaW9uQ3VycmVuY3lEYXRhEiMKC2N1cnJl",
            "bmN5X2lkGAEgASgLMg4uY29yZS5HdWlkRGF0YRIRCglzaG93X2ljb24YAiAB",
            "KAgSEQoJc2hvd19uYW1lGAMgASgIEhIKCnRleHRfY29sb3IYBCABKAUijAEK",
            "IFByb2dyZXNzaW9uUm9vbUludmVudG9yeUl0ZW1EYXRhEi4KFnJvb21faW52",
            "ZW50b3J5X2l0ZW1faWQYASABKAsyDi5jb3JlLkd1aWREYXRhEhEKCXNob3df",
            "aWNvbhgCIAEoCBIRCglzaG93X25hbWUYAyABKAgSEgoKdGV4dF9jb2xvchgE",
            "IAEoBUIWqgITQ2lyY3VpdHNWMi5Qcm90b2J1ZmIGcHJvdG8z"));
      descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
          new pbr::FileDescriptor[] { global::CircuitsV2.Protobuf.DataTableDataReflection.Descriptor, global::RecRoom.Protobuf.Core.GuidDataReflection.Descriptor, },
          new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] {
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.ProgressionManagerData), global::CircuitsV2.Protobuf.ProgressionManagerData.Parser, new[]{ "SettingsData", "ProgressionTableData" }, null, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.ProgressionSettingsData), global::CircuitsV2.Protobuf.ProgressionSettingsData.Parser, new[]{ "RoomLevelsEnabled", "LevelName", "XpName", "XpColor", "HeaderTitle", "HeaderSubtitle", "BackgroundColor", "BackgroundImage", "ShowProgressBar", "LabelText", "ShowXpCounterText", "ShowLevelProgressionTable", "TableStyle", "Currencies", "DisplayRoomLevelOnNametag", "ShowPlayerFacingProgressionPage", "BackgroundType", "RoomInventoryItems" }, null, new[]{ typeof(global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.ShowRewards), typeof(global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.BackgroundType) }, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.ProgressionHeaderTextData), global::CircuitsV2.Protobuf.ProgressionHeaderTextData.Parser, new[]{ "TitleMode", "TableColumn" }, null, new[]{ typeof(global::CircuitsV2.Protobuf.ProgressionHeaderTextData.Types.TitleMode) }, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.ProgressionCurrencyData), global::CircuitsV2.Protobuf.ProgressionCurrencyData.Parser, new[]{ "CurrencyId", "ShowIcon", "ShowName", "TextColor" }, null, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.ProgressionRoomInventoryItemData), global::CircuitsV2.Protobuf.ProgressionRoomInventoryItemData.Parser, new[]{ "RoomInventoryItemId", "ShowIcon", "ShowName", "TextColor" }, null, null, null, null)
          }));
    }
    #endregion

  }
  #region Messages
  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class ProgressionManagerData : pb::IMessage<ProgressionManagerData>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<ProgressionManagerData> _parser = new pb::MessageParser<ProgressionManagerData>(() => new ProgressionManagerData());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<ProgressionManagerData> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::CircuitsV2.Protobuf.ProgressionSettingsDataReflection.Descriptor.MessageTypes[0]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public ProgressionManagerData() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public ProgressionManagerData(ProgressionManagerData other) : this() {
      settingsData_ = other.settingsData_ != null ? other.settingsData_.Clone() : null;
      progressionTableData_ = other.progressionTableData_ != null ? other.progressionTableData_.Clone() : null;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public ProgressionManagerData Clone() {
      return new ProgressionManagerData(this);
    }

    /// <summary>Field number for the "settings_data" field.</summary>
    public const int SettingsDataFieldNumber = 1;
    private global::CircuitsV2.Protobuf.ProgressionSettingsData settingsData_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.ProgressionSettingsData SettingsData {
      get { return settingsData_; }
      set {
        settingsData_ = value;
      }
    }

    /// <summary>Field number for the "progression_table_data" field.</summary>
    public const int ProgressionTableDataFieldNumber = 2;
    private global::CircuitsV2.Protobuf.DataTableData progressionTableData_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.DataTableData ProgressionTableData {
      get { return progressionTableData_; }
      set {
        progressionTableData_ = value;
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as ProgressionManagerData);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(ProgressionManagerData other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (!object.Equals(SettingsData, other.SettingsData)) return false;
      if (!object.Equals(ProgressionTableData, other.ProgressionTableData)) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (settingsData_ != null) hash ^= SettingsData.GetHashCode();
      if (progressionTableData_ != null) hash ^= ProgressionTableData.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (settingsData_ != null) {
        output.WriteRawTag(10);
        output.WriteMessage(SettingsData);
      }
      if (progressionTableData_ != null) {
        output.WriteRawTag(18);
        output.WriteMessage(ProgressionTableData);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (settingsData_ != null) {
        output.WriteRawTag(10);
        output.WriteMessage(SettingsData);
      }
      if (progressionTableData_ != null) {
        output.WriteRawTag(18);
        output.WriteMessage(ProgressionTableData);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (settingsData_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(SettingsData);
      }
      if (progressionTableData_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(ProgressionTableData);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(ProgressionManagerData other) {
      if (other == null) {
        return;
      }
      if (other.settingsData_ != null) {
        if (settingsData_ == null) {
          SettingsData = new global::CircuitsV2.Protobuf.ProgressionSettingsData();
        }
        SettingsData.MergeFrom(other.SettingsData);
      }
      if (other.progressionTableData_ != null) {
        if (progressionTableData_ == null) {
          ProgressionTableData = new global::CircuitsV2.Protobuf.DataTableData();
        }
        ProgressionTableData.MergeFrom(other.ProgressionTableData);
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 10: {
            if (settingsData_ == null) {
              SettingsData = new global::CircuitsV2.Protobuf.ProgressionSettingsData();
            }
            input.ReadMessage(SettingsData);
            break;
          }
          case 18: {
            if (progressionTableData_ == null) {
              ProgressionTableData = new global::CircuitsV2.Protobuf.DataTableData();
            }
            input.ReadMessage(ProgressionTableData);
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 10: {
            if (settingsData_ == null) {
              SettingsData = new global::CircuitsV2.Protobuf.ProgressionSettingsData();
            }
            input.ReadMessage(SettingsData);
            break;
          }
          case 18: {
            if (progressionTableData_ == null) {
              ProgressionTableData = new global::CircuitsV2.Protobuf.DataTableData();
            }
            input.ReadMessage(ProgressionTableData);
            break;
          }
        }
      }
    }
    #endif

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class ProgressionSettingsData : pb::IMessage<ProgressionSettingsData>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<ProgressionSettingsData> _parser = new pb::MessageParser<ProgressionSettingsData>(() => new ProgressionSettingsData());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<ProgressionSettingsData> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::CircuitsV2.Protobuf.ProgressionSettingsDataReflection.Descriptor.MessageTypes[1]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public ProgressionSettingsData() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public ProgressionSettingsData(ProgressionSettingsData other) : this() {
      roomLevelsEnabled_ = other.roomLevelsEnabled_;
      levelName_ = other.levelName_;
      xpName_ = other.xpName_;
      xpColor_ = other.xpColor_;
      headerTitle_ = other.headerTitle_ != null ? other.headerTitle_.Clone() : null;
      headerSubtitle_ = other.headerSubtitle_ != null ? other.headerSubtitle_.Clone() : null;
      backgroundColor_ = other.backgroundColor_;
      backgroundImage_ = other.backgroundImage_;
      showProgressBar_ = other.showProgressBar_;
      labelText_ = other.labelText_ != null ? other.labelText_.Clone() : null;
      showXpCounterText_ = other.showXpCounterText_;
      showLevelProgressionTable_ = other.showLevelProgressionTable_;
      tableStyle_ = other.tableStyle_;
      currencies_ = other.currencies_.Clone();
      displayRoomLevelOnNametag_ = other.displayRoomLevelOnNametag_;
      showPlayerFacingProgressionPage_ = other.showPlayerFacingProgressionPage_;
      backgroundType_ = other.backgroundType_;
      roomInventoryItems_ = other.roomInventoryItems_.Clone();
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public ProgressionSettingsData Clone() {
      return new ProgressionSettingsData(this);
    }

    /// <summary>Field number for the "room_levels_enabled" field.</summary>
    public const int RoomLevelsEnabledFieldNumber = 1;
    private bool roomLevelsEnabled_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool RoomLevelsEnabled {
      get { return roomLevelsEnabled_; }
      set {
        roomLevelsEnabled_ = value;
      }
    }

    /// <summary>Field number for the "level_name" field.</summary>
    public const int LevelNameFieldNumber = 2;
    private string levelName_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string LevelName {
      get { return levelName_; }
      set {
        levelName_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "xp_name" field.</summary>
    public const int XpNameFieldNumber = 3;
    private string xpName_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string XpName {
      get { return xpName_; }
      set {
        xpName_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "xp_color" field.</summary>
    public const int XpColorFieldNumber = 4;
    private int xpColor_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int XpColor {
      get { return xpColor_; }
      set {
        xpColor_ = value;
      }
    }

    /// <summary>Field number for the "header_title" field.</summary>
    public const int HeaderTitleFieldNumber = 5;
    private global::CircuitsV2.Protobuf.ProgressionHeaderTextData headerTitle_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.ProgressionHeaderTextData HeaderTitle {
      get { return headerTitle_; }
      set {
        headerTitle_ = value;
      }
    }

    /// <summary>Field number for the "header_subtitle" field.</summary>
    public const int HeaderSubtitleFieldNumber = 6;
    private global::CircuitsV2.Protobuf.ProgressionHeaderTextData headerSubtitle_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.ProgressionHeaderTextData HeaderSubtitle {
      get { return headerSubtitle_; }
      set {
        headerSubtitle_ = value;
      }
    }

    /// <summary>Field number for the "background_color" field.</summary>
    public const int BackgroundColorFieldNumber = 7;
    private int backgroundColor_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int BackgroundColor {
      get { return backgroundColor_; }
      set {
        backgroundColor_ = value;
      }
    }

    /// <summary>Field number for the "background_image" field.</summary>
    public const int BackgroundImageFieldNumber = 8;
    private string backgroundImage_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string BackgroundImage {
      get { return backgroundImage_; }
      set {
        backgroundImage_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "show_progress_bar" field.</summary>
    public const int ShowProgressBarFieldNumber = 9;
    private bool showProgressBar_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool ShowProgressBar {
      get { return showProgressBar_; }
      set {
        showProgressBar_ = value;
      }
    }

    /// <summary>Field number for the "label_text" field.</summary>
    public const int LabelTextFieldNumber = 10;
    private global::CircuitsV2.Protobuf.ProgressionHeaderTextData labelText_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.ProgressionHeaderTextData LabelText {
      get { return labelText_; }
      set {
        labelText_ = value;
      }
    }

    /// <summary>Field number for the "show_xp_counter_text" field.</summary>
    public const int ShowXpCounterTextFieldNumber = 11;
    private bool showXpCounterText_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool ShowXpCounterText {
      get { return showXpCounterText_; }
      set {
        showXpCounterText_ = value;
      }
    }

    /// <summary>Field number for the "show_level_progression_table" field.</summary>
    public const int ShowLevelProgressionTableFieldNumber = 12;
    private bool showLevelProgressionTable_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool ShowLevelProgressionTable {
      get { return showLevelProgressionTable_; }
      set {
        showLevelProgressionTable_ = value;
      }
    }

    /// <summary>Field number for the "table_style" field.</summary>
    public const int TableStyleFieldNumber = 13;
    private global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.ShowRewards tableStyle_ = global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.ShowRewards.All;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.ShowRewards TableStyle {
      get { return tableStyle_; }
      set {
        tableStyle_ = value;
      }
    }

    /// <summary>Field number for the "currencies" field.</summary>
    public const int CurrenciesFieldNumber = 14;
    private static readonly pb::FieldCodec<global::CircuitsV2.Protobuf.ProgressionCurrencyData> _repeated_currencies_codec
        = pb::FieldCodec.ForMessage(114, global::CircuitsV2.Protobuf.ProgressionCurrencyData.Parser);
    private readonly pbc::RepeatedField<global::CircuitsV2.Protobuf.ProgressionCurrencyData> currencies_ = new pbc::RepeatedField<global::CircuitsV2.Protobuf.ProgressionCurrencyData>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::CircuitsV2.Protobuf.ProgressionCurrencyData> Currencies {
      get { return currencies_; }
    }

    /// <summary>Field number for the "display_room_level_on_nametag" field.</summary>
    public const int DisplayRoomLevelOnNametagFieldNumber = 15;
    private bool displayRoomLevelOnNametag_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool DisplayRoomLevelOnNametag {
      get { return displayRoomLevelOnNametag_; }
      set {
        displayRoomLevelOnNametag_ = value;
      }
    }

    /// <summary>Field number for the "show_player_facing_progression_page" field.</summary>
    public const int ShowPlayerFacingProgressionPageFieldNumber = 16;
    private bool showPlayerFacingProgressionPage_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool ShowPlayerFacingProgressionPage {
      get { return showPlayerFacingProgressionPage_; }
      set {
        showPlayerFacingProgressionPage_ = value;
      }
    }

    /// <summary>Field number for the "background_type" field.</summary>
    public const int BackgroundTypeFieldNumber = 17;
    private global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.BackgroundType backgroundType_ = global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.BackgroundType.Image;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.BackgroundType BackgroundType {
      get { return backgroundType_; }
      set {
        backgroundType_ = value;
      }
    }

    /// <summary>Field number for the "room_inventory_items" field.</summary>
    public const int RoomInventoryItemsFieldNumber = 18;
    private static readonly pb::FieldCodec<global::CircuitsV2.Protobuf.ProgressionRoomInventoryItemData> _repeated_roomInventoryItems_codec
        = pb::FieldCodec.ForMessage(146, global::CircuitsV2.Protobuf.ProgressionRoomInventoryItemData.Parser);
    private readonly pbc::RepeatedField<global::CircuitsV2.Protobuf.ProgressionRoomInventoryItemData> roomInventoryItems_ = new pbc::RepeatedField<global::CircuitsV2.Protobuf.ProgressionRoomInventoryItemData>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::CircuitsV2.Protobuf.ProgressionRoomInventoryItemData> RoomInventoryItems {
      get { return roomInventoryItems_; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as ProgressionSettingsData);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(ProgressionSettingsData other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (RoomLevelsEnabled != other.RoomLevelsEnabled) return false;
      if (LevelName != other.LevelName) return false;
      if (XpName != other.XpName) return false;
      if (XpColor != other.XpColor) return false;
      if (!object.Equals(HeaderTitle, other.HeaderTitle)) return false;
      if (!object.Equals(HeaderSubtitle, other.HeaderSubtitle)) return false;
      if (BackgroundColor != other.BackgroundColor) return false;
      if (BackgroundImage != other.BackgroundImage) return false;
      if (ShowProgressBar != other.ShowProgressBar) return false;
      if (!object.Equals(LabelText, other.LabelText)) return false;
      if (ShowXpCounterText != other.ShowXpCounterText) return false;
      if (ShowLevelProgressionTable != other.ShowLevelProgressionTable) return false;
      if (TableStyle != other.TableStyle) return false;
      if(!currencies_.Equals(other.currencies_)) return false;
      if (DisplayRoomLevelOnNametag != other.DisplayRoomLevelOnNametag) return false;
      if (ShowPlayerFacingProgressionPage != other.ShowPlayerFacingProgressionPage) return false;
      if (BackgroundType != other.BackgroundType) return false;
      if(!roomInventoryItems_.Equals(other.roomInventoryItems_)) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (RoomLevelsEnabled != false) hash ^= RoomLevelsEnabled.GetHashCode();
      if (LevelName.Length != 0) hash ^= LevelName.GetHashCode();
      if (XpName.Length != 0) hash ^= XpName.GetHashCode();
      if (XpColor != 0) hash ^= XpColor.GetHashCode();
      if (headerTitle_ != null) hash ^= HeaderTitle.GetHashCode();
      if (headerSubtitle_ != null) hash ^= HeaderSubtitle.GetHashCode();
      if (BackgroundColor != 0) hash ^= BackgroundColor.GetHashCode();
      if (BackgroundImage.Length != 0) hash ^= BackgroundImage.GetHashCode();
      if (ShowProgressBar != false) hash ^= ShowProgressBar.GetHashCode();
      if (labelText_ != null) hash ^= LabelText.GetHashCode();
      if (ShowXpCounterText != false) hash ^= ShowXpCounterText.GetHashCode();
      if (ShowLevelProgressionTable != false) hash ^= ShowLevelProgressionTable.GetHashCode();
      if (TableStyle != global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.ShowRewards.All) hash ^= TableStyle.GetHashCode();
      hash ^= currencies_.GetHashCode();
      if (DisplayRoomLevelOnNametag != false) hash ^= DisplayRoomLevelOnNametag.GetHashCode();
      if (ShowPlayerFacingProgressionPage != false) hash ^= ShowPlayerFacingProgressionPage.GetHashCode();
      if (BackgroundType != global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.BackgroundType.Image) hash ^= BackgroundType.GetHashCode();
      hash ^= roomInventoryItems_.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (RoomLevelsEnabled != false) {
        output.WriteRawTag(8);
        output.WriteBool(RoomLevelsEnabled);
      }
      if (LevelName.Length != 0) {
        output.WriteRawTag(18);
        output.WriteString(LevelName);
      }
      if (XpName.Length != 0) {
        output.WriteRawTag(26);
        output.WriteString(XpName);
      }
      if (XpColor != 0) {
        output.WriteRawTag(32);
        output.WriteInt32(XpColor);
      }
      if (headerTitle_ != null) {
        output.WriteRawTag(42);
        output.WriteMessage(HeaderTitle);
      }
      if (headerSubtitle_ != null) {
        output.WriteRawTag(50);
        output.WriteMessage(HeaderSubtitle);
      }
      if (BackgroundColor != 0) {
        output.WriteRawTag(56);
        output.WriteInt32(BackgroundColor);
      }
      if (BackgroundImage.Length != 0) {
        output.WriteRawTag(66);
        output.WriteString(BackgroundImage);
      }
      if (ShowProgressBar != false) {
        output.WriteRawTag(72);
        output.WriteBool(ShowProgressBar);
      }
      if (labelText_ != null) {
        output.WriteRawTag(82);
        output.WriteMessage(LabelText);
      }
      if (ShowXpCounterText != false) {
        output.WriteRawTag(88);
        output.WriteBool(ShowXpCounterText);
      }
      if (ShowLevelProgressionTable != false) {
        output.WriteRawTag(96);
        output.WriteBool(ShowLevelProgressionTable);
      }
      if (TableStyle != global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.ShowRewards.All) {
        output.WriteRawTag(104);
        output.WriteEnum((int) TableStyle);
      }
      currencies_.WriteTo(output, _repeated_currencies_codec);
      if (DisplayRoomLevelOnNametag != false) {
        output.WriteRawTag(120);
        output.WriteBool(DisplayRoomLevelOnNametag);
      }
      if (ShowPlayerFacingProgressionPage != false) {
        output.WriteRawTag(128, 1);
        output.WriteBool(ShowPlayerFacingProgressionPage);
      }
      if (BackgroundType != global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.BackgroundType.Image) {
        output.WriteRawTag(136, 1);
        output.WriteEnum((int) BackgroundType);
      }
      roomInventoryItems_.WriteTo(output, _repeated_roomInventoryItems_codec);
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (RoomLevelsEnabled != false) {
        output.WriteRawTag(8);
        output.WriteBool(RoomLevelsEnabled);
      }
      if (LevelName.Length != 0) {
        output.WriteRawTag(18);
        output.WriteString(LevelName);
      }
      if (XpName.Length != 0) {
        output.WriteRawTag(26);
        output.WriteString(XpName);
      }
      if (XpColor != 0) {
        output.WriteRawTag(32);
        output.WriteInt32(XpColor);
      }
      if (headerTitle_ != null) {
        output.WriteRawTag(42);
        output.WriteMessage(HeaderTitle);
      }
      if (headerSubtitle_ != null) {
        output.WriteRawTag(50);
        output.WriteMessage(HeaderSubtitle);
      }
      if (BackgroundColor != 0) {
        output.WriteRawTag(56);
        output.WriteInt32(BackgroundColor);
      }
      if (BackgroundImage.Length != 0) {
        output.WriteRawTag(66);
        output.WriteString(BackgroundImage);
      }
      if (ShowProgressBar != false) {
        output.WriteRawTag(72);
        output.WriteBool(ShowProgressBar);
      }
      if (labelText_ != null) {
        output.WriteRawTag(82);
        output.WriteMessage(LabelText);
      }
      if (ShowXpCounterText != false) {
        output.WriteRawTag(88);
        output.WriteBool(ShowXpCounterText);
      }
      if (ShowLevelProgressionTable != false) {
        output.WriteRawTag(96);
        output.WriteBool(ShowLevelProgressionTable);
      }
      if (TableStyle != global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.ShowRewards.All) {
        output.WriteRawTag(104);
        output.WriteEnum((int) TableStyle);
      }
      currencies_.WriteTo(ref output, _repeated_currencies_codec);
      if (DisplayRoomLevelOnNametag != false) {
        output.WriteRawTag(120);
        output.WriteBool(DisplayRoomLevelOnNametag);
      }
      if (ShowPlayerFacingProgressionPage != false) {
        output.WriteRawTag(128, 1);
        output.WriteBool(ShowPlayerFacingProgressionPage);
      }
      if (BackgroundType != global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.BackgroundType.Image) {
        output.WriteRawTag(136, 1);
        output.WriteEnum((int) BackgroundType);
      }
      roomInventoryItems_.WriteTo(ref output, _repeated_roomInventoryItems_codec);
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (RoomLevelsEnabled != false) {
        size += 1 + 1;
      }
      if (LevelName.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(LevelName);
      }
      if (XpName.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(XpName);
      }
      if (XpColor != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(XpColor);
      }
      if (headerTitle_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(HeaderTitle);
      }
      if (headerSubtitle_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(HeaderSubtitle);
      }
      if (BackgroundColor != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(BackgroundColor);
      }
      if (BackgroundImage.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(BackgroundImage);
      }
      if (ShowProgressBar != false) {
        size += 1 + 1;
      }
      if (labelText_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(LabelText);
      }
      if (ShowXpCounterText != false) {
        size += 1 + 1;
      }
      if (ShowLevelProgressionTable != false) {
        size += 1 + 1;
      }
      if (TableStyle != global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.ShowRewards.All) {
        size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) TableStyle);
      }
      size += currencies_.CalculateSize(_repeated_currencies_codec);
      if (DisplayRoomLevelOnNametag != false) {
        size += 1 + 1;
      }
      if (ShowPlayerFacingProgressionPage != false) {
        size += 2 + 1;
      }
      if (BackgroundType != global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.BackgroundType.Image) {
        size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) BackgroundType);
      }
      size += roomInventoryItems_.CalculateSize(_repeated_roomInventoryItems_codec);
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(ProgressionSettingsData other) {
      if (other == null) {
        return;
      }
      if (other.RoomLevelsEnabled != false) {
        RoomLevelsEnabled = other.RoomLevelsEnabled;
      }
      if (other.LevelName.Length != 0) {
        LevelName = other.LevelName;
      }
      if (other.XpName.Length != 0) {
        XpName = other.XpName;
      }
      if (other.XpColor != 0) {
        XpColor = other.XpColor;
      }
      if (other.headerTitle_ != null) {
        if (headerTitle_ == null) {
          HeaderTitle = new global::CircuitsV2.Protobuf.ProgressionHeaderTextData();
        }
        HeaderTitle.MergeFrom(other.HeaderTitle);
      }
      if (other.headerSubtitle_ != null) {
        if (headerSubtitle_ == null) {
          HeaderSubtitle = new global::CircuitsV2.Protobuf.ProgressionHeaderTextData();
        }
        HeaderSubtitle.MergeFrom(other.HeaderSubtitle);
      }
      if (other.BackgroundColor != 0) {
        BackgroundColor = other.BackgroundColor;
      }
      if (other.BackgroundImage.Length != 0) {
        BackgroundImage = other.BackgroundImage;
      }
      if (other.ShowProgressBar != false) {
        ShowProgressBar = other.ShowProgressBar;
      }
      if (other.labelText_ != null) {
        if (labelText_ == null) {
          LabelText = new global::CircuitsV2.Protobuf.ProgressionHeaderTextData();
        }
        LabelText.MergeFrom(other.LabelText);
      }
      if (other.ShowXpCounterText != false) {
        ShowXpCounterText = other.ShowXpCounterText;
      }
      if (other.ShowLevelProgressionTable != false) {
        ShowLevelProgressionTable = other.ShowLevelProgressionTable;
      }
      if (other.TableStyle != global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.ShowRewards.All) {
        TableStyle = other.TableStyle;
      }
      currencies_.Add(other.currencies_);
      if (other.DisplayRoomLevelOnNametag != false) {
        DisplayRoomLevelOnNametag = other.DisplayRoomLevelOnNametag;
      }
      if (other.ShowPlayerFacingProgressionPage != false) {
        ShowPlayerFacingProgressionPage = other.ShowPlayerFacingProgressionPage;
      }
      if (other.BackgroundType != global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.BackgroundType.Image) {
        BackgroundType = other.BackgroundType;
      }
      roomInventoryItems_.Add(other.roomInventoryItems_);
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 8: {
            RoomLevelsEnabled = input.ReadBool();
            break;
          }
          case 18: {
            LevelName = input.ReadString();
            break;
          }
          case 26: {
            XpName = input.ReadString();
            break;
          }
          case 32: {
            XpColor = input.ReadInt32();
            break;
          }
          case 42: {
            if (headerTitle_ == null) {
              HeaderTitle = new global::CircuitsV2.Protobuf.ProgressionHeaderTextData();
            }
            input.ReadMessage(HeaderTitle);
            break;
          }
          case 50: {
            if (headerSubtitle_ == null) {
              HeaderSubtitle = new global::CircuitsV2.Protobuf.ProgressionHeaderTextData();
            }
            input.ReadMessage(HeaderSubtitle);
            break;
          }
          case 56: {
            BackgroundColor = input.ReadInt32();
            break;
          }
          case 66: {
            BackgroundImage = input.ReadString();
            break;
          }
          case 72: {
            ShowProgressBar = input.ReadBool();
            break;
          }
          case 82: {
            if (labelText_ == null) {
              LabelText = new global::CircuitsV2.Protobuf.ProgressionHeaderTextData();
            }
            input.ReadMessage(LabelText);
            break;
          }
          case 88: {
            ShowXpCounterText = input.ReadBool();
            break;
          }
          case 96: {
            ShowLevelProgressionTable = input.ReadBool();
            break;
          }
          case 104: {
            TableStyle = (global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.ShowRewards) input.ReadEnum();
            break;
          }
          case 114: {
            currencies_.AddEntriesFrom(input, _repeated_currencies_codec);
            break;
          }
          case 120: {
            DisplayRoomLevelOnNametag = input.ReadBool();
            break;
          }
          case 128: {
            ShowPlayerFacingProgressionPage = input.ReadBool();
            break;
          }
          case 136: {
            BackgroundType = (global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.BackgroundType) input.ReadEnum();
            break;
          }
          case 146: {
            roomInventoryItems_.AddEntriesFrom(input, _repeated_roomInventoryItems_codec);
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 8: {
            RoomLevelsEnabled = input.ReadBool();
            break;
          }
          case 18: {
            LevelName = input.ReadString();
            break;
          }
          case 26: {
            XpName = input.ReadString();
            break;
          }
          case 32: {
            XpColor = input.ReadInt32();
            break;
          }
          case 42: {
            if (headerTitle_ == null) {
              HeaderTitle = new global::CircuitsV2.Protobuf.ProgressionHeaderTextData();
            }
            input.ReadMessage(HeaderTitle);
            break;
          }
          case 50: {
            if (headerSubtitle_ == null) {
              HeaderSubtitle = new global::CircuitsV2.Protobuf.ProgressionHeaderTextData();
            }
            input.ReadMessage(HeaderSubtitle);
            break;
          }
          case 56: {
            BackgroundColor = input.ReadInt32();
            break;
          }
          case 66: {
            BackgroundImage = input.ReadString();
            break;
          }
          case 72: {
            ShowProgressBar = input.ReadBool();
            break;
          }
          case 82: {
            if (labelText_ == null) {
              LabelText = new global::CircuitsV2.Protobuf.ProgressionHeaderTextData();
            }
            input.ReadMessage(LabelText);
            break;
          }
          case 88: {
            ShowXpCounterText = input.ReadBool();
            break;
          }
          case 96: {
            ShowLevelProgressionTable = input.ReadBool();
            break;
          }
          case 104: {
            TableStyle = (global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.ShowRewards) input.ReadEnum();
            break;
          }
          case 114: {
            currencies_.AddEntriesFrom(ref input, _repeated_currencies_codec);
            break;
          }
          case 120: {
            DisplayRoomLevelOnNametag = input.ReadBool();
            break;
          }
          case 128: {
            ShowPlayerFacingProgressionPage = input.ReadBool();
            break;
          }
          case 136: {
            BackgroundType = (global::CircuitsV2.Protobuf.ProgressionSettingsData.Types.BackgroundType) input.ReadEnum();
            break;
          }
          case 146: {
            roomInventoryItems_.AddEntriesFrom(ref input, _repeated_roomInventoryItems_codec);
            break;
          }
        }
      }
    }
    #endif

    #region Nested types
    /// <summary>Container for nested types declared in the ProgressionSettingsData message type.</summary>
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static partial class Types {
      public enum ShowRewards {
        [pbr::OriginalName("All")] All = 0,
        [pbr::OriginalName("Claimed")] Claimed = 1,
        [pbr::OriginalName("Next")] Next = 2,
      }

      public enum BackgroundType {
        [pbr::OriginalName("Image")] Image = 0,
        [pbr::OriginalName("Gradient")] Gradient = 1,
      }

    }
    #endregion

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class ProgressionHeaderTextData : pb::IMessage<ProgressionHeaderTextData>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<ProgressionHeaderTextData> _parser = new pb::MessageParser<ProgressionHeaderTextData>(() => new ProgressionHeaderTextData());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<ProgressionHeaderTextData> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::CircuitsV2.Protobuf.ProgressionSettingsDataReflection.Descriptor.MessageTypes[2]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public ProgressionHeaderTextData() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public ProgressionHeaderTextData(ProgressionHeaderTextData other) : this() {
      titleMode_ = other.titleMode_;
      tableColumn_ = other.tableColumn_;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public ProgressionHeaderTextData Clone() {
      return new ProgressionHeaderTextData(this);
    }

    /// <summary>Field number for the "title_mode" field.</summary>
    public const int TitleModeFieldNumber = 1;
    private global::CircuitsV2.Protobuf.ProgressionHeaderTextData.Types.TitleMode titleMode_ = global::CircuitsV2.Protobuf.ProgressionHeaderTextData.Types.TitleMode.PlayerName;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.ProgressionHeaderTextData.Types.TitleMode TitleMode {
      get { return titleMode_; }
      set {
        titleMode_ = value;
      }
    }

    /// <summary>Field number for the "table_column" field.</summary>
    public const int TableColumnFieldNumber = 2;
    private int tableColumn_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int TableColumn {
      get { return tableColumn_; }
      set {
        tableColumn_ = value;
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as ProgressionHeaderTextData);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(ProgressionHeaderTextData other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (TitleMode != other.TitleMode) return false;
      if (TableColumn != other.TableColumn) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (TitleMode != global::CircuitsV2.Protobuf.ProgressionHeaderTextData.Types.TitleMode.PlayerName) hash ^= TitleMode.GetHashCode();
      if (TableColumn != 0) hash ^= TableColumn.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (TitleMode != global::CircuitsV2.Protobuf.ProgressionHeaderTextData.Types.TitleMode.PlayerName) {
        output.WriteRawTag(8);
        output.WriteEnum((int) TitleMode);
      }
      if (TableColumn != 0) {
        output.WriteRawTag(16);
        output.WriteInt32(TableColumn);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (TitleMode != global::CircuitsV2.Protobuf.ProgressionHeaderTextData.Types.TitleMode.PlayerName) {
        output.WriteRawTag(8);
        output.WriteEnum((int) TitleMode);
      }
      if (TableColumn != 0) {
        output.WriteRawTag(16);
        output.WriteInt32(TableColumn);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (TitleMode != global::CircuitsV2.Protobuf.ProgressionHeaderTextData.Types.TitleMode.PlayerName) {
        size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) TitleMode);
      }
      if (TableColumn != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(TableColumn);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(ProgressionHeaderTextData other) {
      if (other == null) {
        return;
      }
      if (other.TitleMode != global::CircuitsV2.Protobuf.ProgressionHeaderTextData.Types.TitleMode.PlayerName) {
        TitleMode = other.TitleMode;
      }
      if (other.TableColumn != 0) {
        TableColumn = other.TableColumn;
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 8: {
            TitleMode = (global::CircuitsV2.Protobuf.ProgressionHeaderTextData.Types.TitleMode) input.ReadEnum();
            break;
          }
          case 16: {
            TableColumn = input.ReadInt32();
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 8: {
            TitleMode = (global::CircuitsV2.Protobuf.ProgressionHeaderTextData.Types.TitleMode) input.ReadEnum();
            break;
          }
          case 16: {
            TableColumn = input.ReadInt32();
            break;
          }
        }
      }
    }
    #endif

    #region Nested types
    /// <summary>Container for nested types declared in the ProgressionHeaderTextData message type.</summary>
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static partial class Types {
      public enum TitleMode {
        [pbr::OriginalName("PlayerName")] PlayerName = 0,
        [pbr::OriginalName("RoomLevel")] RoomLevel = 1,
        [pbr::OriginalName("FromTable")] FromTable = 2,
      }

    }
    #endregion

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class ProgressionCurrencyData : pb::IMessage<ProgressionCurrencyData>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<ProgressionCurrencyData> _parser = new pb::MessageParser<ProgressionCurrencyData>(() => new ProgressionCurrencyData());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<ProgressionCurrencyData> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::CircuitsV2.Protobuf.ProgressionSettingsDataReflection.Descriptor.MessageTypes[3]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public ProgressionCurrencyData() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public ProgressionCurrencyData(ProgressionCurrencyData other) : this() {
      currencyId_ = other.currencyId_ != null ? other.currencyId_.Clone() : null;
      showIcon_ = other.showIcon_;
      showName_ = other.showName_;
      textColor_ = other.textColor_;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public ProgressionCurrencyData Clone() {
      return new ProgressionCurrencyData(this);
    }

    /// <summary>Field number for the "currency_id" field.</summary>
    public const int CurrencyIdFieldNumber = 1;
    private global::RecRoom.Protobuf.Core.GuidData currencyId_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::RecRoom.Protobuf.Core.GuidData CurrencyId {
      get { return currencyId_; }
      set {
        currencyId_ = value;
      }
    }

    /// <summary>Field number for the "show_icon" field.</summary>
    public const int ShowIconFieldNumber = 2;
    private bool showIcon_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool ShowIcon {
      get { return showIcon_; }
      set {
        showIcon_ = value;
      }
    }

    /// <summary>Field number for the "show_name" field.</summary>
    public const int ShowNameFieldNumber = 3;
    private bool showName_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool ShowName {
      get { return showName_; }
      set {
        showName_ = value;
      }
    }

    /// <summary>Field number for the "text_color" field.</summary>
    public const int TextColorFieldNumber = 4;
    private int textColor_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int TextColor {
      get { return textColor_; }
      set {
        textColor_ = value;
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as ProgressionCurrencyData);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(ProgressionCurrencyData other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (!object.Equals(CurrencyId, other.CurrencyId)) return false;
      if (ShowIcon != other.ShowIcon) return false;
      if (ShowName != other.ShowName) return false;
      if (TextColor != other.TextColor) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (currencyId_ != null) hash ^= CurrencyId.GetHashCode();
      if (ShowIcon != false) hash ^= ShowIcon.GetHashCode();
      if (ShowName != false) hash ^= ShowName.GetHashCode();
      if (TextColor != 0) hash ^= TextColor.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (currencyId_ != null) {
        output.WriteRawTag(10);
        output.WriteMessage(CurrencyId);
      }
      if (ShowIcon != false) {
        output.WriteRawTag(16);
        output.WriteBool(ShowIcon);
      }
      if (ShowName != false) {
        output.WriteRawTag(24);
        output.WriteBool(ShowName);
      }
      if (TextColor != 0) {
        output.WriteRawTag(32);
        output.WriteInt32(TextColor);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (currencyId_ != null) {
        output.WriteRawTag(10);
        output.WriteMessage(CurrencyId);
      }
      if (ShowIcon != false) {
        output.WriteRawTag(16);
        output.WriteBool(ShowIcon);
      }
      if (ShowName != false) {
        output.WriteRawTag(24);
        output.WriteBool(ShowName);
      }
      if (TextColor != 0) {
        output.WriteRawTag(32);
        output.WriteInt32(TextColor);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (currencyId_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(CurrencyId);
      }
      if (ShowIcon != false) {
        size += 1 + 1;
      }
      if (ShowName != false) {
        size += 1 + 1;
      }
      if (TextColor != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(TextColor);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(ProgressionCurrencyData other) {
      if (other == null) {
        return;
      }
      if (other.currencyId_ != null) {
        if (currencyId_ == null) {
          CurrencyId = new global::RecRoom.Protobuf.Core.GuidData();
        }
        CurrencyId.MergeFrom(other.CurrencyId);
      }
      if (other.ShowIcon != false) {
        ShowIcon = other.ShowIcon;
      }
      if (other.ShowName != false) {
        ShowName = other.ShowName;
      }
      if (other.TextColor != 0) {
        TextColor = other.TextColor;
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 10: {
            if (currencyId_ == null) {
              CurrencyId = new global::RecRoom.Protobuf.Core.GuidData();
            }
            input.ReadMessage(CurrencyId);
            break;
          }
          case 16: {
            ShowIcon = input.ReadBool();
            break;
          }
          case 24: {
            ShowName = input.ReadBool();
            break;
          }
          case 32: {
            TextColor = input.ReadInt32();
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 10: {
            if (currencyId_ == null) {
              CurrencyId = new global::RecRoom.Protobuf.Core.GuidData();
            }
            input.ReadMessage(CurrencyId);
            break;
          }
          case 16: {
            ShowIcon = input.ReadBool();
            break;
          }
          case 24: {
            ShowName = input.ReadBool();
            break;
          }
          case 32: {
            TextColor = input.ReadInt32();
            break;
          }
        }
      }
    }
    #endif

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class ProgressionRoomInventoryItemData : pb::IMessage<ProgressionRoomInventoryItemData>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<ProgressionRoomInventoryItemData> _parser = new pb::MessageParser<ProgressionRoomInventoryItemData>(() => new ProgressionRoomInventoryItemData());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<ProgressionRoomInventoryItemData> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::CircuitsV2.Protobuf.ProgressionSettingsDataReflection.Descriptor.MessageTypes[4]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public ProgressionRoomInventoryItemData() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public ProgressionRoomInventoryItemData(ProgressionRoomInventoryItemData other) : this() {
      roomInventoryItemId_ = other.roomInventoryItemId_ != null ? other.roomInventoryItemId_.Clone() : null;
      showIcon_ = other.showIcon_;
      showName_ = other.showName_;
      textColor_ = other.textColor_;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public ProgressionRoomInventoryItemData Clone() {
      return new ProgressionRoomInventoryItemData(this);
    }

    /// <summary>Field number for the "room_inventory_item_id" field.</summary>
    public const int RoomInventoryItemIdFieldNumber = 1;
    private global::RecRoom.Protobuf.Core.GuidData roomInventoryItemId_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::RecRoom.Protobuf.Core.GuidData RoomInventoryItemId {
      get { return roomInventoryItemId_; }
      set {
        roomInventoryItemId_ = value;
      }
    }

    /// <summary>Field number for the "show_icon" field.</summary>
    public const int ShowIconFieldNumber = 2;
    private bool showIcon_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool ShowIcon {
      get { return showIcon_; }
      set {
        showIcon_ = value;
      }
    }

    /// <summary>Field number for the "show_name" field.</summary>
    public const int ShowNameFieldNumber = 3;
    private bool showName_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool ShowName {
      get { return showName_; }
      set {
        showName_ = value;
      }
    }

    /// <summary>Field number for the "text_color" field.</summary>
    public const int TextColorFieldNumber = 4;
    private int textColor_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int TextColor {
      get { return textColor_; }
      set {
        textColor_ = value;
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as ProgressionRoomInventoryItemData);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(ProgressionRoomInventoryItemData other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (!object.Equals(RoomInventoryItemId, other.RoomInventoryItemId)) return false;
      if (ShowIcon != other.ShowIcon) return false;
      if (ShowName != other.ShowName) return false;
      if (TextColor != other.TextColor) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (roomInventoryItemId_ != null) hash ^= RoomInventoryItemId.GetHashCode();
      if (ShowIcon != false) hash ^= ShowIcon.GetHashCode();
      if (ShowName != false) hash ^= ShowName.GetHashCode();
      if (TextColor != 0) hash ^= TextColor.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (roomInventoryItemId_ != null) {
        output.WriteRawTag(10);
        output.WriteMessage(RoomInventoryItemId);
      }
      if (ShowIcon != false) {
        output.WriteRawTag(16);
        output.WriteBool(ShowIcon);
      }
      if (ShowName != false) {
        output.WriteRawTag(24);
        output.WriteBool(ShowName);
      }
      if (TextColor != 0) {
        output.WriteRawTag(32);
        output.WriteInt32(TextColor);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (roomInventoryItemId_ != null) {
        output.WriteRawTag(10);
        output.WriteMessage(RoomInventoryItemId);
      }
      if (ShowIcon != false) {
        output.WriteRawTag(16);
        output.WriteBool(ShowIcon);
      }
      if (ShowName != false) {
        output.WriteRawTag(24);
        output.WriteBool(ShowName);
      }
      if (TextColor != 0) {
        output.WriteRawTag(32);
        output.WriteInt32(TextColor);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (roomInventoryItemId_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(RoomInventoryItemId);
      }
      if (ShowIcon != false) {
        size += 1 + 1;
      }
      if (ShowName != false) {
        size += 1 + 1;
      }
      if (TextColor != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(TextColor);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(ProgressionRoomInventoryItemData other) {
      if (other == null) {
        return;
      }
      if (other.roomInventoryItemId_ != null) {
        if (roomInventoryItemId_ == null) {
          RoomInventoryItemId = new global::RecRoom.Protobuf.Core.GuidData();
        }
        RoomInventoryItemId.MergeFrom(other.RoomInventoryItemId);
      }
      if (other.ShowIcon != false) {
        ShowIcon = other.ShowIcon;
      }
      if (other.ShowName != false) {
        ShowName = other.ShowName;
      }
      if (other.TextColor != 0) {
        TextColor = other.TextColor;
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 10: {
            if (roomInventoryItemId_ == null) {
              RoomInventoryItemId = new global::RecRoom.Protobuf.Core.GuidData();
            }
            input.ReadMessage(RoomInventoryItemId);
            break;
          }
          case 16: {
            ShowIcon = input.ReadBool();
            break;
          }
          case 24: {
            ShowName = input.ReadBool();
            break;
          }
          case 32: {
            TextColor = input.ReadInt32();
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 10: {
            if (roomInventoryItemId_ == null) {
              RoomInventoryItemId = new global::RecRoom.Protobuf.Core.GuidData();
            }
            input.ReadMessage(RoomInventoryItemId);
            break;
          }
          case 16: {
            ShowIcon = input.ReadBool();
            break;
          }
          case 24: {
            ShowName = input.ReadBool();
            break;
          }
          case 32: {
            TextColor = input.ReadInt32();
            break;
          }
        }
      }
    }
    #endif

  }

  #endregion

}

#endregion Designer generated code
