// <auto-generated>
//     Generated by the protocol buffer compiler.  DO NOT EDIT!
//     source: CurChallenge.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 EggLink.DanhengServer.Proto {

  /// <summary>Holder for reflection information generated from CurChallenge.proto</summary>
  public static partial class CurChallengeReflection {

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

    static CurChallengeReflection() {
      byte[] descriptorData = global::System.Convert.FromBase64String(
          string.Concat(
            "ChJDdXJDaGFsbGVuZ2UucHJvdG8aFUV4dHJhTGluZXVwVHlwZS5wcm90bxoa",
            "Q2hhbGxlbmdlQ3VyQnVmZkluZm8ucHJvdG8aFUNoYWxsZW5nZVN0YXR1cy5w",
            "cm90bxoRS2lsbE1vbnN0ZXIucHJvdG8imgIKDEN1ckNoYWxsZW5nZRIrChFl",
            "eHRyYV9saW5ldXBfdHlwZRgJIAEoDjIQLkV4dHJhTGluZXVwVHlwZRIRCglz",
            "Y29yZV90d28YCCABKA0SFwoPZGVhZF9hdmF0YXJfbnVtGAogASgNEhMKC3Jv",
            "dW5kX2NvdW50GAEgASgNEikKCnN0YWdlX2luZm8YDiABKAsyFS5DaGFsbGVu",
            "Z2VDdXJCdWZmSW5mbxInChFraWxsX21vbnN0ZXJfbGlzdBgPIAMoCzIMLktp",
            "bGxNb25zdGVyEhQKDGNoYWxsZW5nZV9pZBgFIAEoDRIgCgZzdGF0dXMYCyAB",
            "KA4yEC5DaGFsbGVuZ2VTdGF0dXMSEAoIc2NvcmVfaWQYBiABKA1CHqoCG0Vn",
            "Z0xpbmsuRGFuaGVuZ1NlcnZlci5Qcm90b2IGcHJvdG8z"));
      descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
          new pbr::FileDescriptor[] { global::EggLink.DanhengServer.Proto.ExtraLineupTypeReflection.Descriptor, global::EggLink.DanhengServer.Proto.ChallengeCurBuffInfoReflection.Descriptor, global::EggLink.DanhengServer.Proto.ChallengeStatusReflection.Descriptor, global::EggLink.DanhengServer.Proto.KillMonsterReflection.Descriptor, },
          new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] {
            new pbr::GeneratedClrTypeInfo(typeof(global::EggLink.DanhengServer.Proto.CurChallenge), global::EggLink.DanhengServer.Proto.CurChallenge.Parser, new[]{ "ExtraLineupType", "ScoreTwo", "DeadAvatarNum", "RoundCount", "StageInfo", "KillMonsterList", "ChallengeId", "Status", "ScoreId" }, null, null, null, null)
          }));
    }
    #endregion

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

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::EggLink.DanhengServer.Proto.CurChallengeReflection.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 CurChallenge() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public CurChallenge(CurChallenge other) : this() {
      extraLineupType_ = other.extraLineupType_;
      scoreTwo_ = other.scoreTwo_;
      deadAvatarNum_ = other.deadAvatarNum_;
      roundCount_ = other.roundCount_;
      stageInfo_ = other.stageInfo_ != null ? other.stageInfo_.Clone() : null;
      killMonsterList_ = other.killMonsterList_.Clone();
      challengeId_ = other.challengeId_;
      status_ = other.status_;
      scoreId_ = other.scoreId_;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

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

    /// <summary>Field number for the "extra_lineup_type" field.</summary>
    public const int ExtraLineupTypeFieldNumber = 9;
    private global::EggLink.DanhengServer.Proto.ExtraLineupType extraLineupType_ = global::EggLink.DanhengServer.Proto.ExtraLineupType.LineupNone;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::EggLink.DanhengServer.Proto.ExtraLineupType ExtraLineupType {
      get { return extraLineupType_; }
      set {
        extraLineupType_ = value;
      }
    }

    /// <summary>Field number for the "score_two" field.</summary>
    public const int ScoreTwoFieldNumber = 8;
    private uint scoreTwo_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public uint ScoreTwo {
      get { return scoreTwo_; }
      set {
        scoreTwo_ = value;
      }
    }

    /// <summary>Field number for the "dead_avatar_num" field.</summary>
    public const int DeadAvatarNumFieldNumber = 10;
    private uint deadAvatarNum_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public uint DeadAvatarNum {
      get { return deadAvatarNum_; }
      set {
        deadAvatarNum_ = value;
      }
    }

    /// <summary>Field number for the "round_count" field.</summary>
    public const int RoundCountFieldNumber = 1;
    private uint roundCount_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public uint RoundCount {
      get { return roundCount_; }
      set {
        roundCount_ = value;
      }
    }

    /// <summary>Field number for the "stage_info" field.</summary>
    public const int StageInfoFieldNumber = 14;
    private global::EggLink.DanhengServer.Proto.ChallengeCurBuffInfo stageInfo_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::EggLink.DanhengServer.Proto.ChallengeCurBuffInfo StageInfo {
      get { return stageInfo_; }
      set {
        stageInfo_ = value;
      }
    }

    /// <summary>Field number for the "kill_monster_list" field.</summary>
    public const int KillMonsterListFieldNumber = 15;
    private static readonly pb::FieldCodec<global::EggLink.DanhengServer.Proto.KillMonster> _repeated_killMonsterList_codec
        = pb::FieldCodec.ForMessage(122, global::EggLink.DanhengServer.Proto.KillMonster.Parser);
    private readonly pbc::RepeatedField<global::EggLink.DanhengServer.Proto.KillMonster> killMonsterList_ = new pbc::RepeatedField<global::EggLink.DanhengServer.Proto.KillMonster>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::EggLink.DanhengServer.Proto.KillMonster> KillMonsterList {
      get { return killMonsterList_; }
    }

    /// <summary>Field number for the "challenge_id" field.</summary>
    public const int ChallengeIdFieldNumber = 5;
    private uint challengeId_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public uint ChallengeId {
      get { return challengeId_; }
      set {
        challengeId_ = value;
      }
    }

    /// <summary>Field number for the "status" field.</summary>
    public const int StatusFieldNumber = 11;
    private global::EggLink.DanhengServer.Proto.ChallengeStatus status_ = global::EggLink.DanhengServer.Proto.ChallengeStatus.ChallengeUnknown;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::EggLink.DanhengServer.Proto.ChallengeStatus Status {
      get { return status_; }
      set {
        status_ = value;
      }
    }

    /// <summary>Field number for the "score_id" field.</summary>
    public const int ScoreIdFieldNumber = 6;
    private uint scoreId_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public uint ScoreId {
      get { return scoreId_; }
      set {
        scoreId_ = value;
      }
    }

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

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(CurChallenge other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (ExtraLineupType != other.ExtraLineupType) return false;
      if (ScoreTwo != other.ScoreTwo) return false;
      if (DeadAvatarNum != other.DeadAvatarNum) return false;
      if (RoundCount != other.RoundCount) return false;
      if (!object.Equals(StageInfo, other.StageInfo)) return false;
      if(!killMonsterList_.Equals(other.killMonsterList_)) return false;
      if (ChallengeId != other.ChallengeId) return false;
      if (Status != other.Status) return false;
      if (ScoreId != other.ScoreId) 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 (ExtraLineupType != global::EggLink.DanhengServer.Proto.ExtraLineupType.LineupNone) hash ^= ExtraLineupType.GetHashCode();
      if (ScoreTwo != 0) hash ^= ScoreTwo.GetHashCode();
      if (DeadAvatarNum != 0) hash ^= DeadAvatarNum.GetHashCode();
      if (RoundCount != 0) hash ^= RoundCount.GetHashCode();
      if (stageInfo_ != null) hash ^= StageInfo.GetHashCode();
      hash ^= killMonsterList_.GetHashCode();
      if (ChallengeId != 0) hash ^= ChallengeId.GetHashCode();
      if (Status != global::EggLink.DanhengServer.Proto.ChallengeStatus.ChallengeUnknown) hash ^= Status.GetHashCode();
      if (ScoreId != 0) hash ^= ScoreId.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 (RoundCount != 0) {
        output.WriteRawTag(8);
        output.WriteUInt32(RoundCount);
      }
      if (ChallengeId != 0) {
        output.WriteRawTag(40);
        output.WriteUInt32(ChallengeId);
      }
      if (ScoreId != 0) {
        output.WriteRawTag(48);
        output.WriteUInt32(ScoreId);
      }
      if (ScoreTwo != 0) {
        output.WriteRawTag(64);
        output.WriteUInt32(ScoreTwo);
      }
      if (ExtraLineupType != global::EggLink.DanhengServer.Proto.ExtraLineupType.LineupNone) {
        output.WriteRawTag(72);
        output.WriteEnum((int) ExtraLineupType);
      }
      if (DeadAvatarNum != 0) {
        output.WriteRawTag(80);
        output.WriteUInt32(DeadAvatarNum);
      }
      if (Status != global::EggLink.DanhengServer.Proto.ChallengeStatus.ChallengeUnknown) {
        output.WriteRawTag(88);
        output.WriteEnum((int) Status);
      }
      if (stageInfo_ != null) {
        output.WriteRawTag(114);
        output.WriteMessage(StageInfo);
      }
      killMonsterList_.WriteTo(output, _repeated_killMonsterList_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 (RoundCount != 0) {
        output.WriteRawTag(8);
        output.WriteUInt32(RoundCount);
      }
      if (ChallengeId != 0) {
        output.WriteRawTag(40);
        output.WriteUInt32(ChallengeId);
      }
      if (ScoreId != 0) {
        output.WriteRawTag(48);
        output.WriteUInt32(ScoreId);
      }
      if (ScoreTwo != 0) {
        output.WriteRawTag(64);
        output.WriteUInt32(ScoreTwo);
      }
      if (ExtraLineupType != global::EggLink.DanhengServer.Proto.ExtraLineupType.LineupNone) {
        output.WriteRawTag(72);
        output.WriteEnum((int) ExtraLineupType);
      }
      if (DeadAvatarNum != 0) {
        output.WriteRawTag(80);
        output.WriteUInt32(DeadAvatarNum);
      }
      if (Status != global::EggLink.DanhengServer.Proto.ChallengeStatus.ChallengeUnknown) {
        output.WriteRawTag(88);
        output.WriteEnum((int) Status);
      }
      if (stageInfo_ != null) {
        output.WriteRawTag(114);
        output.WriteMessage(StageInfo);
      }
      killMonsterList_.WriteTo(ref output, _repeated_killMonsterList_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 (ExtraLineupType != global::EggLink.DanhengServer.Proto.ExtraLineupType.LineupNone) {
        size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) ExtraLineupType);
      }
      if (ScoreTwo != 0) {
        size += 1 + pb::CodedOutputStream.ComputeUInt32Size(ScoreTwo);
      }
      if (DeadAvatarNum != 0) {
        size += 1 + pb::CodedOutputStream.ComputeUInt32Size(DeadAvatarNum);
      }
      if (RoundCount != 0) {
        size += 1 + pb::CodedOutputStream.ComputeUInt32Size(RoundCount);
      }
      if (stageInfo_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(StageInfo);
      }
      size += killMonsterList_.CalculateSize(_repeated_killMonsterList_codec);
      if (ChallengeId != 0) {
        size += 1 + pb::CodedOutputStream.ComputeUInt32Size(ChallengeId);
      }
      if (Status != global::EggLink.DanhengServer.Proto.ChallengeStatus.ChallengeUnknown) {
        size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Status);
      }
      if (ScoreId != 0) {
        size += 1 + pb::CodedOutputStream.ComputeUInt32Size(ScoreId);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(CurChallenge other) {
      if (other == null) {
        return;
      }
      if (other.ExtraLineupType != global::EggLink.DanhengServer.Proto.ExtraLineupType.LineupNone) {
        ExtraLineupType = other.ExtraLineupType;
      }
      if (other.ScoreTwo != 0) {
        ScoreTwo = other.ScoreTwo;
      }
      if (other.DeadAvatarNum != 0) {
        DeadAvatarNum = other.DeadAvatarNum;
      }
      if (other.RoundCount != 0) {
        RoundCount = other.RoundCount;
      }
      if (other.stageInfo_ != null) {
        if (stageInfo_ == null) {
          StageInfo = new global::EggLink.DanhengServer.Proto.ChallengeCurBuffInfo();
        }
        StageInfo.MergeFrom(other.StageInfo);
      }
      killMonsterList_.Add(other.killMonsterList_);
      if (other.ChallengeId != 0) {
        ChallengeId = other.ChallengeId;
      }
      if (other.Status != global::EggLink.DanhengServer.Proto.ChallengeStatus.ChallengeUnknown) {
        Status = other.Status;
      }
      if (other.ScoreId != 0) {
        ScoreId = other.ScoreId;
      }
      _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) {
        switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 8: {
            RoundCount = input.ReadUInt32();
            break;
          }
          case 40: {
            ChallengeId = input.ReadUInt32();
            break;
          }
          case 48: {
            ScoreId = input.ReadUInt32();
            break;
          }
          case 64: {
            ScoreTwo = input.ReadUInt32();
            break;
          }
          case 72: {
            ExtraLineupType = (global::EggLink.DanhengServer.Proto.ExtraLineupType) input.ReadEnum();
            break;
          }
          case 80: {
            DeadAvatarNum = input.ReadUInt32();
            break;
          }
          case 88: {
            Status = (global::EggLink.DanhengServer.Proto.ChallengeStatus) input.ReadEnum();
            break;
          }
          case 114: {
            if (stageInfo_ == null) {
              StageInfo = new global::EggLink.DanhengServer.Proto.ChallengeCurBuffInfo();
            }
            input.ReadMessage(StageInfo);
            break;
          }
          case 122: {
            killMonsterList_.AddEntriesFrom(input, _repeated_killMonsterList_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) {
        switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 8: {
            RoundCount = input.ReadUInt32();
            break;
          }
          case 40: {
            ChallengeId = input.ReadUInt32();
            break;
          }
          case 48: {
            ScoreId = input.ReadUInt32();
            break;
          }
          case 64: {
            ScoreTwo = input.ReadUInt32();
            break;
          }
          case 72: {
            ExtraLineupType = (global::EggLink.DanhengServer.Proto.ExtraLineupType) input.ReadEnum();
            break;
          }
          case 80: {
            DeadAvatarNum = input.ReadUInt32();
            break;
          }
          case 88: {
            Status = (global::EggLink.DanhengServer.Proto.ChallengeStatus) input.ReadEnum();
            break;
          }
          case 114: {
            if (stageInfo_ == null) {
              StageInfo = new global::EggLink.DanhengServer.Proto.ChallengeCurBuffInfo();
            }
            input.ReadMessage(StageInfo);
            break;
          }
          case 122: {
            killMonsterList_.AddEntriesFrom(ref input, _repeated_killMonsterList_codec);
            break;
          }
        }
      }
    }
    #endif

  }

  #endregion

}

#endregion Designer generated code
