// <auto-generated>
//     Generated by the protocol buffer compiler.  DO NOT EDIT!
//     source: HANHNLNEICM.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 HANHNLNEICM.proto</summary>
  public static partial class HANHNLNEICMReflection {

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

    static HANHNLNEICMReflection() {
      byte[] descriptorData = global::System.Convert.FromBase64String(
          string.Concat(
            "ChFIQU5ITkxORUlDTS5wcm90bxoWU2tpbGxVc2VQcm9wZXJ0eS5wcm90bxoa",
            "QXR0YWNrRGFtYWdlUHJvcGVydHkucHJvdG8ihgUKC0hBTkhOTE5FSUNNEhEK",
            "CWF2YXRhcl9pZBgBIAEoDRITCgtEUEROTk1CQ1BPSRgCIAEoDRITCgt0b3Rh",
            "bF90dXJucxgDIAEoDRITCgtGQkNNSkdNQkpGQxgEIAEoARImCgtza2lsbF90",
            "aW1lcxgFIAMoCzIRLlNraWxsVXNlUHJvcGVydHkSFAoMdG90YWxfZGFtYWdl",
            "GAYgASgBEhoKEnRvdGFsX2JyZWFrX2RhbWFnZRgHIAEoARIxChJhdHRhY2tf",
            "dHlwZV9kYW1hZ2UYCCADKAsyFS5BdHRhY2tEYW1hZ2VQcm9wZXJ0eRI3Chhh",
            "dHRhY2tfdHlwZV9icmVha19kYW1hZ2UYCSADKAsyFS5BdHRhY2tEYW1hZ2VQ",
            "cm9wZXJ0eRI1ChZhdHRhY2tfdHlwZV9tYXhfZGFtYWdlGAogAygLMhUuQXR0",
            "YWNrRGFtYWdlUHJvcGVydHkSGgoSdG90YWxfZGFtYWdlX3Rha2VuGAsgASgB",
            "EhIKCnRvdGFsX2hlYWwYDCABKAESGAoQdG90YWxfaHBfcmVjb3ZlchgNIAEo",
            "ARIUCgx0b3RhbF9zaGllbGQYDiABKAESGgoSdG90YWxfc2hpZWxkX3Rha2Vu",
            "GA8gASgBEhsKE3RvdGFsX3NoaWVsZF9kYW1hZ2UYECABKAESEwoLYnJlYWtf",
            "dGltZXMYESABKA0SEwoLSkVQTENKS0ZPTUIYEiABKA0SEwoLTkNKSERKSkRK",
            "TkwYEyABKA0SEwoLTEtNR0RJQURPUEIYFCABKA0SEwoLSUJMR01DSVBDS00Y",
            "FSABKAESEQoJZW50aXR5X2lkGBYgASgNEhMKC0xETUpESUxCREZPGBcgASgN",
            "Qh6qAhtFZ2dMaW5rLkRhbmhlbmdTZXJ2ZXIuUHJvdG9iBnByb3RvMw=="));
      descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
          new pbr::FileDescriptor[] { global::EggLink.DanhengServer.Proto.SkillUsePropertyReflection.Descriptor, global::EggLink.DanhengServer.Proto.AttackDamagePropertyReflection.Descriptor, },
          new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] {
            new pbr::GeneratedClrTypeInfo(typeof(global::EggLink.DanhengServer.Proto.HANHNLNEICM), global::EggLink.DanhengServer.Proto.HANHNLNEICM.Parser, new[]{ "AvatarId", "DPDNNMBCPOI", "TotalTurns", "FBCMJGMBJFC", "SkillTimes", "TotalDamage", "TotalBreakDamage", "AttackTypeDamage", "AttackTypeBreakDamage", "AttackTypeMaxDamage", "TotalDamageTaken", "TotalHeal", "TotalHpRecover", "TotalShield", "TotalShieldTaken", "TotalShieldDamage", "BreakTimes", "JEPLCJKFOMB", "NCJHDJJDJNL", "LKMGDIADOPB", "IBLGMCIPCKM", "EntityId", "LDMJDILBDFO" }, null, null, null, null)
          }));
    }
    #endregion

  }
  #region Messages
  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class HANHNLNEICM : pb::IMessage<HANHNLNEICM>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<HANHNLNEICM> _parser = new pb::MessageParser<HANHNLNEICM>(() => new HANHNLNEICM());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<HANHNLNEICM> 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.HANHNLNEICMReflection.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 HANHNLNEICM() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public HANHNLNEICM(HANHNLNEICM other) : this() {
      avatarId_ = other.avatarId_;
      dPDNNMBCPOI_ = other.dPDNNMBCPOI_;
      totalTurns_ = other.totalTurns_;
      fBCMJGMBJFC_ = other.fBCMJGMBJFC_;
      skillTimes_ = other.skillTimes_.Clone();
      totalDamage_ = other.totalDamage_;
      totalBreakDamage_ = other.totalBreakDamage_;
      attackTypeDamage_ = other.attackTypeDamage_.Clone();
      attackTypeBreakDamage_ = other.attackTypeBreakDamage_.Clone();
      attackTypeMaxDamage_ = other.attackTypeMaxDamage_.Clone();
      totalDamageTaken_ = other.totalDamageTaken_;
      totalHeal_ = other.totalHeal_;
      totalHpRecover_ = other.totalHpRecover_;
      totalShield_ = other.totalShield_;
      totalShieldTaken_ = other.totalShieldTaken_;
      totalShieldDamage_ = other.totalShieldDamage_;
      breakTimes_ = other.breakTimes_;
      jEPLCJKFOMB_ = other.jEPLCJKFOMB_;
      nCJHDJJDJNL_ = other.nCJHDJJDJNL_;
      lKMGDIADOPB_ = other.lKMGDIADOPB_;
      iBLGMCIPCKM_ = other.iBLGMCIPCKM_;
      entityId_ = other.entityId_;
      lDMJDILBDFO_ = other.lDMJDILBDFO_;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

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

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

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

    /// <summary>Field number for the "total_turns" field.</summary>
    public const int TotalTurnsFieldNumber = 3;
    private uint totalTurns_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public uint TotalTurns {
      get { return totalTurns_; }
      set {
        totalTurns_ = value;
      }
    }

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

    /// <summary>Field number for the "skill_times" field.</summary>
    public const int SkillTimesFieldNumber = 5;
    private static readonly pb::FieldCodec<global::EggLink.DanhengServer.Proto.SkillUseProperty> _repeated_skillTimes_codec
        = pb::FieldCodec.ForMessage(42, global::EggLink.DanhengServer.Proto.SkillUseProperty.Parser);
    private readonly pbc::RepeatedField<global::EggLink.DanhengServer.Proto.SkillUseProperty> skillTimes_ = new pbc::RepeatedField<global::EggLink.DanhengServer.Proto.SkillUseProperty>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::EggLink.DanhengServer.Proto.SkillUseProperty> SkillTimes {
      get { return skillTimes_; }
    }

    /// <summary>Field number for the "total_damage" field.</summary>
    public const int TotalDamageFieldNumber = 6;
    private double totalDamage_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public double TotalDamage {
      get { return totalDamage_; }
      set {
        totalDamage_ = value;
      }
    }

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

    /// <summary>Field number for the "attack_type_damage" field.</summary>
    public const int AttackTypeDamageFieldNumber = 8;
    private static readonly pb::FieldCodec<global::EggLink.DanhengServer.Proto.AttackDamageProperty> _repeated_attackTypeDamage_codec
        = pb::FieldCodec.ForMessage(66, global::EggLink.DanhengServer.Proto.AttackDamageProperty.Parser);
    private readonly pbc::RepeatedField<global::EggLink.DanhengServer.Proto.AttackDamageProperty> attackTypeDamage_ = new pbc::RepeatedField<global::EggLink.DanhengServer.Proto.AttackDamageProperty>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::EggLink.DanhengServer.Proto.AttackDamageProperty> AttackTypeDamage {
      get { return attackTypeDamage_; }
    }

    /// <summary>Field number for the "attack_type_break_damage" field.</summary>
    public const int AttackTypeBreakDamageFieldNumber = 9;
    private static readonly pb::FieldCodec<global::EggLink.DanhengServer.Proto.AttackDamageProperty> _repeated_attackTypeBreakDamage_codec
        = pb::FieldCodec.ForMessage(74, global::EggLink.DanhengServer.Proto.AttackDamageProperty.Parser);
    private readonly pbc::RepeatedField<global::EggLink.DanhengServer.Proto.AttackDamageProperty> attackTypeBreakDamage_ = new pbc::RepeatedField<global::EggLink.DanhengServer.Proto.AttackDamageProperty>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::EggLink.DanhengServer.Proto.AttackDamageProperty> AttackTypeBreakDamage {
      get { return attackTypeBreakDamage_; }
    }

    /// <summary>Field number for the "attack_type_max_damage" field.</summary>
    public const int AttackTypeMaxDamageFieldNumber = 10;
    private static readonly pb::FieldCodec<global::EggLink.DanhengServer.Proto.AttackDamageProperty> _repeated_attackTypeMaxDamage_codec
        = pb::FieldCodec.ForMessage(82, global::EggLink.DanhengServer.Proto.AttackDamageProperty.Parser);
    private readonly pbc::RepeatedField<global::EggLink.DanhengServer.Proto.AttackDamageProperty> attackTypeMaxDamage_ = new pbc::RepeatedField<global::EggLink.DanhengServer.Proto.AttackDamageProperty>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::EggLink.DanhengServer.Proto.AttackDamageProperty> AttackTypeMaxDamage {
      get { return attackTypeMaxDamage_; }
    }

    /// <summary>Field number for the "total_damage_taken" field.</summary>
    public const int TotalDamageTakenFieldNumber = 11;
    private double totalDamageTaken_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public double TotalDamageTaken {
      get { return totalDamageTaken_; }
      set {
        totalDamageTaken_ = value;
      }
    }

    /// <summary>Field number for the "total_heal" field.</summary>
    public const int TotalHealFieldNumber = 12;
    private double totalHeal_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public double TotalHeal {
      get { return totalHeal_; }
      set {
        totalHeal_ = value;
      }
    }

    /// <summary>Field number for the "total_hp_recover" field.</summary>
    public const int TotalHpRecoverFieldNumber = 13;
    private double totalHpRecover_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public double TotalHpRecover {
      get { return totalHpRecover_; }
      set {
        totalHpRecover_ = value;
      }
    }

    /// <summary>Field number for the "total_shield" field.</summary>
    public const int TotalShieldFieldNumber = 14;
    private double totalShield_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public double TotalShield {
      get { return totalShield_; }
      set {
        totalShield_ = value;
      }
    }

    /// <summary>Field number for the "total_shield_taken" field.</summary>
    public const int TotalShieldTakenFieldNumber = 15;
    private double totalShieldTaken_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public double TotalShieldTaken {
      get { return totalShieldTaken_; }
      set {
        totalShieldTaken_ = value;
      }
    }

    /// <summary>Field number for the "total_shield_damage" field.</summary>
    public const int TotalShieldDamageFieldNumber = 16;
    private double totalShieldDamage_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public double TotalShieldDamage {
      get { return totalShieldDamage_; }
      set {
        totalShieldDamage_ = value;
      }
    }

    /// <summary>Field number for the "break_times" field.</summary>
    public const int BreakTimesFieldNumber = 17;
    private uint breakTimes_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public uint BreakTimes {
      get { return breakTimes_; }
      set {
        breakTimes_ = value;
      }
    }

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

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

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

    /// <summary>Field number for the "IBLGMCIPCKM" field.</summary>
    public const int IBLGMCIPCKMFieldNumber = 21;
    private double iBLGMCIPCKM_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public double IBLGMCIPCKM {
      get { return iBLGMCIPCKM_; }
      set {
        iBLGMCIPCKM_ = value;
      }
    }

    /// <summary>Field number for the "entity_id" field.</summary>
    public const int EntityIdFieldNumber = 22;
    private uint entityId_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public uint EntityId {
      get { return entityId_; }
      set {
        entityId_ = value;
      }
    }

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

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

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(HANHNLNEICM other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (AvatarId != other.AvatarId) return false;
      if (DPDNNMBCPOI != other.DPDNNMBCPOI) return false;
      if (TotalTurns != other.TotalTurns) return false;
      if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(FBCMJGMBJFC, other.FBCMJGMBJFC)) return false;
      if(!skillTimes_.Equals(other.skillTimes_)) return false;
      if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(TotalDamage, other.TotalDamage)) return false;
      if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(TotalBreakDamage, other.TotalBreakDamage)) return false;
      if(!attackTypeDamage_.Equals(other.attackTypeDamage_)) return false;
      if(!attackTypeBreakDamage_.Equals(other.attackTypeBreakDamage_)) return false;
      if(!attackTypeMaxDamage_.Equals(other.attackTypeMaxDamage_)) return false;
      if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(TotalDamageTaken, other.TotalDamageTaken)) return false;
      if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(TotalHeal, other.TotalHeal)) return false;
      if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(TotalHpRecover, other.TotalHpRecover)) return false;
      if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(TotalShield, other.TotalShield)) return false;
      if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(TotalShieldTaken, other.TotalShieldTaken)) return false;
      if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(TotalShieldDamage, other.TotalShieldDamage)) return false;
      if (BreakTimes != other.BreakTimes) return false;
      if (JEPLCJKFOMB != other.JEPLCJKFOMB) return false;
      if (NCJHDJJDJNL != other.NCJHDJJDJNL) return false;
      if (LKMGDIADOPB != other.LKMGDIADOPB) return false;
      if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(IBLGMCIPCKM, other.IBLGMCIPCKM)) return false;
      if (EntityId != other.EntityId) return false;
      if (LDMJDILBDFO != other.LDMJDILBDFO) 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 (AvatarId != 0) hash ^= AvatarId.GetHashCode();
      if (DPDNNMBCPOI != 0) hash ^= DPDNNMBCPOI.GetHashCode();
      if (TotalTurns != 0) hash ^= TotalTurns.GetHashCode();
      if (FBCMJGMBJFC != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(FBCMJGMBJFC);
      hash ^= skillTimes_.GetHashCode();
      if (TotalDamage != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(TotalDamage);
      if (TotalBreakDamage != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(TotalBreakDamage);
      hash ^= attackTypeDamage_.GetHashCode();
      hash ^= attackTypeBreakDamage_.GetHashCode();
      hash ^= attackTypeMaxDamage_.GetHashCode();
      if (TotalDamageTaken != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(TotalDamageTaken);
      if (TotalHeal != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(TotalHeal);
      if (TotalHpRecover != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(TotalHpRecover);
      if (TotalShield != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(TotalShield);
      if (TotalShieldTaken != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(TotalShieldTaken);
      if (TotalShieldDamage != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(TotalShieldDamage);
      if (BreakTimes != 0) hash ^= BreakTimes.GetHashCode();
      if (JEPLCJKFOMB != 0) hash ^= JEPLCJKFOMB.GetHashCode();
      if (NCJHDJJDJNL != 0) hash ^= NCJHDJJDJNL.GetHashCode();
      if (LKMGDIADOPB != 0) hash ^= LKMGDIADOPB.GetHashCode();
      if (IBLGMCIPCKM != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(IBLGMCIPCKM);
      if (EntityId != 0) hash ^= EntityId.GetHashCode();
      if (LDMJDILBDFO != 0) hash ^= LDMJDILBDFO.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 (AvatarId != 0) {
        output.WriteRawTag(8);
        output.WriteUInt32(AvatarId);
      }
      if (DPDNNMBCPOI != 0) {
        output.WriteRawTag(16);
        output.WriteUInt32(DPDNNMBCPOI);
      }
      if (TotalTurns != 0) {
        output.WriteRawTag(24);
        output.WriteUInt32(TotalTurns);
      }
      if (FBCMJGMBJFC != 0D) {
        output.WriteRawTag(33);
        output.WriteDouble(FBCMJGMBJFC);
      }
      skillTimes_.WriteTo(output, _repeated_skillTimes_codec);
      if (TotalDamage != 0D) {
        output.WriteRawTag(49);
        output.WriteDouble(TotalDamage);
      }
      if (TotalBreakDamage != 0D) {
        output.WriteRawTag(57);
        output.WriteDouble(TotalBreakDamage);
      }
      attackTypeDamage_.WriteTo(output, _repeated_attackTypeDamage_codec);
      attackTypeBreakDamage_.WriteTo(output, _repeated_attackTypeBreakDamage_codec);
      attackTypeMaxDamage_.WriteTo(output, _repeated_attackTypeMaxDamage_codec);
      if (TotalDamageTaken != 0D) {
        output.WriteRawTag(89);
        output.WriteDouble(TotalDamageTaken);
      }
      if (TotalHeal != 0D) {
        output.WriteRawTag(97);
        output.WriteDouble(TotalHeal);
      }
      if (TotalHpRecover != 0D) {
        output.WriteRawTag(105);
        output.WriteDouble(TotalHpRecover);
      }
      if (TotalShield != 0D) {
        output.WriteRawTag(113);
        output.WriteDouble(TotalShield);
      }
      if (TotalShieldTaken != 0D) {
        output.WriteRawTag(121);
        output.WriteDouble(TotalShieldTaken);
      }
      if (TotalShieldDamage != 0D) {
        output.WriteRawTag(129, 1);
        output.WriteDouble(TotalShieldDamage);
      }
      if (BreakTimes != 0) {
        output.WriteRawTag(136, 1);
        output.WriteUInt32(BreakTimes);
      }
      if (JEPLCJKFOMB != 0) {
        output.WriteRawTag(144, 1);
        output.WriteUInt32(JEPLCJKFOMB);
      }
      if (NCJHDJJDJNL != 0) {
        output.WriteRawTag(152, 1);
        output.WriteUInt32(NCJHDJJDJNL);
      }
      if (LKMGDIADOPB != 0) {
        output.WriteRawTag(160, 1);
        output.WriteUInt32(LKMGDIADOPB);
      }
      if (IBLGMCIPCKM != 0D) {
        output.WriteRawTag(169, 1);
        output.WriteDouble(IBLGMCIPCKM);
      }
      if (EntityId != 0) {
        output.WriteRawTag(176, 1);
        output.WriteUInt32(EntityId);
      }
      if (LDMJDILBDFO != 0) {
        output.WriteRawTag(184, 1);
        output.WriteUInt32(LDMJDILBDFO);
      }
      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 (AvatarId != 0) {
        output.WriteRawTag(8);
        output.WriteUInt32(AvatarId);
      }
      if (DPDNNMBCPOI != 0) {
        output.WriteRawTag(16);
        output.WriteUInt32(DPDNNMBCPOI);
      }
      if (TotalTurns != 0) {
        output.WriteRawTag(24);
        output.WriteUInt32(TotalTurns);
      }
      if (FBCMJGMBJFC != 0D) {
        output.WriteRawTag(33);
        output.WriteDouble(FBCMJGMBJFC);
      }
      skillTimes_.WriteTo(ref output, _repeated_skillTimes_codec);
      if (TotalDamage != 0D) {
        output.WriteRawTag(49);
        output.WriteDouble(TotalDamage);
      }
      if (TotalBreakDamage != 0D) {
        output.WriteRawTag(57);
        output.WriteDouble(TotalBreakDamage);
      }
      attackTypeDamage_.WriteTo(ref output, _repeated_attackTypeDamage_codec);
      attackTypeBreakDamage_.WriteTo(ref output, _repeated_attackTypeBreakDamage_codec);
      attackTypeMaxDamage_.WriteTo(ref output, _repeated_attackTypeMaxDamage_codec);
      if (TotalDamageTaken != 0D) {
        output.WriteRawTag(89);
        output.WriteDouble(TotalDamageTaken);
      }
      if (TotalHeal != 0D) {
        output.WriteRawTag(97);
        output.WriteDouble(TotalHeal);
      }
      if (TotalHpRecover != 0D) {
        output.WriteRawTag(105);
        output.WriteDouble(TotalHpRecover);
      }
      if (TotalShield != 0D) {
        output.WriteRawTag(113);
        output.WriteDouble(TotalShield);
      }
      if (TotalShieldTaken != 0D) {
        output.WriteRawTag(121);
        output.WriteDouble(TotalShieldTaken);
      }
      if (TotalShieldDamage != 0D) {
        output.WriteRawTag(129, 1);
        output.WriteDouble(TotalShieldDamage);
      }
      if (BreakTimes != 0) {
        output.WriteRawTag(136, 1);
        output.WriteUInt32(BreakTimes);
      }
      if (JEPLCJKFOMB != 0) {
        output.WriteRawTag(144, 1);
        output.WriteUInt32(JEPLCJKFOMB);
      }
      if (NCJHDJJDJNL != 0) {
        output.WriteRawTag(152, 1);
        output.WriteUInt32(NCJHDJJDJNL);
      }
      if (LKMGDIADOPB != 0) {
        output.WriteRawTag(160, 1);
        output.WriteUInt32(LKMGDIADOPB);
      }
      if (IBLGMCIPCKM != 0D) {
        output.WriteRawTag(169, 1);
        output.WriteDouble(IBLGMCIPCKM);
      }
      if (EntityId != 0) {
        output.WriteRawTag(176, 1);
        output.WriteUInt32(EntityId);
      }
      if (LDMJDILBDFO != 0) {
        output.WriteRawTag(184, 1);
        output.WriteUInt32(LDMJDILBDFO);
      }
      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 (AvatarId != 0) {
        size += 1 + pb::CodedOutputStream.ComputeUInt32Size(AvatarId);
      }
      if (DPDNNMBCPOI != 0) {
        size += 1 + pb::CodedOutputStream.ComputeUInt32Size(DPDNNMBCPOI);
      }
      if (TotalTurns != 0) {
        size += 1 + pb::CodedOutputStream.ComputeUInt32Size(TotalTurns);
      }
      if (FBCMJGMBJFC != 0D) {
        size += 1 + 8;
      }
      size += skillTimes_.CalculateSize(_repeated_skillTimes_codec);
      if (TotalDamage != 0D) {
        size += 1 + 8;
      }
      if (TotalBreakDamage != 0D) {
        size += 1 + 8;
      }
      size += attackTypeDamage_.CalculateSize(_repeated_attackTypeDamage_codec);
      size += attackTypeBreakDamage_.CalculateSize(_repeated_attackTypeBreakDamage_codec);
      size += attackTypeMaxDamage_.CalculateSize(_repeated_attackTypeMaxDamage_codec);
      if (TotalDamageTaken != 0D) {
        size += 1 + 8;
      }
      if (TotalHeal != 0D) {
        size += 1 + 8;
      }
      if (TotalHpRecover != 0D) {
        size += 1 + 8;
      }
      if (TotalShield != 0D) {
        size += 1 + 8;
      }
      if (TotalShieldTaken != 0D) {
        size += 1 + 8;
      }
      if (TotalShieldDamage != 0D) {
        size += 2 + 8;
      }
      if (BreakTimes != 0) {
        size += 2 + pb::CodedOutputStream.ComputeUInt32Size(BreakTimes);
      }
      if (JEPLCJKFOMB != 0) {
        size += 2 + pb::CodedOutputStream.ComputeUInt32Size(JEPLCJKFOMB);
      }
      if (NCJHDJJDJNL != 0) {
        size += 2 + pb::CodedOutputStream.ComputeUInt32Size(NCJHDJJDJNL);
      }
      if (LKMGDIADOPB != 0) {
        size += 2 + pb::CodedOutputStream.ComputeUInt32Size(LKMGDIADOPB);
      }
      if (IBLGMCIPCKM != 0D) {
        size += 2 + 8;
      }
      if (EntityId != 0) {
        size += 2 + pb::CodedOutputStream.ComputeUInt32Size(EntityId);
      }
      if (LDMJDILBDFO != 0) {
        size += 2 + pb::CodedOutputStream.ComputeUInt32Size(LDMJDILBDFO);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(HANHNLNEICM other) {
      if (other == null) {
        return;
      }
      if (other.AvatarId != 0) {
        AvatarId = other.AvatarId;
      }
      if (other.DPDNNMBCPOI != 0) {
        DPDNNMBCPOI = other.DPDNNMBCPOI;
      }
      if (other.TotalTurns != 0) {
        TotalTurns = other.TotalTurns;
      }
      if (other.FBCMJGMBJFC != 0D) {
        FBCMJGMBJFC = other.FBCMJGMBJFC;
      }
      skillTimes_.Add(other.skillTimes_);
      if (other.TotalDamage != 0D) {
        TotalDamage = other.TotalDamage;
      }
      if (other.TotalBreakDamage != 0D) {
        TotalBreakDamage = other.TotalBreakDamage;
      }
      attackTypeDamage_.Add(other.attackTypeDamage_);
      attackTypeBreakDamage_.Add(other.attackTypeBreakDamage_);
      attackTypeMaxDamage_.Add(other.attackTypeMaxDamage_);
      if (other.TotalDamageTaken != 0D) {
        TotalDamageTaken = other.TotalDamageTaken;
      }
      if (other.TotalHeal != 0D) {
        TotalHeal = other.TotalHeal;
      }
      if (other.TotalHpRecover != 0D) {
        TotalHpRecover = other.TotalHpRecover;
      }
      if (other.TotalShield != 0D) {
        TotalShield = other.TotalShield;
      }
      if (other.TotalShieldTaken != 0D) {
        TotalShieldTaken = other.TotalShieldTaken;
      }
      if (other.TotalShieldDamage != 0D) {
        TotalShieldDamage = other.TotalShieldDamage;
      }
      if (other.BreakTimes != 0) {
        BreakTimes = other.BreakTimes;
      }
      if (other.JEPLCJKFOMB != 0) {
        JEPLCJKFOMB = other.JEPLCJKFOMB;
      }
      if (other.NCJHDJJDJNL != 0) {
        NCJHDJJDJNL = other.NCJHDJJDJNL;
      }
      if (other.LKMGDIADOPB != 0) {
        LKMGDIADOPB = other.LKMGDIADOPB;
      }
      if (other.IBLGMCIPCKM != 0D) {
        IBLGMCIPCKM = other.IBLGMCIPCKM;
      }
      if (other.EntityId != 0) {
        EntityId = other.EntityId;
      }
      if (other.LDMJDILBDFO != 0) {
        LDMJDILBDFO = other.LDMJDILBDFO;
      }
      _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: {
            AvatarId = input.ReadUInt32();
            break;
          }
          case 16: {
            DPDNNMBCPOI = input.ReadUInt32();
            break;
          }
          case 24: {
            TotalTurns = input.ReadUInt32();
            break;
          }
          case 33: {
            FBCMJGMBJFC = input.ReadDouble();
            break;
          }
          case 42: {
            skillTimes_.AddEntriesFrom(input, _repeated_skillTimes_codec);
            break;
          }
          case 49: {
            TotalDamage = input.ReadDouble();
            break;
          }
          case 57: {
            TotalBreakDamage = input.ReadDouble();
            break;
          }
          case 66: {
            attackTypeDamage_.AddEntriesFrom(input, _repeated_attackTypeDamage_codec);
            break;
          }
          case 74: {
            attackTypeBreakDamage_.AddEntriesFrom(input, _repeated_attackTypeBreakDamage_codec);
            break;
          }
          case 82: {
            attackTypeMaxDamage_.AddEntriesFrom(input, _repeated_attackTypeMaxDamage_codec);
            break;
          }
          case 89: {
            TotalDamageTaken = input.ReadDouble();
            break;
          }
          case 97: {
            TotalHeal = input.ReadDouble();
            break;
          }
          case 105: {
            TotalHpRecover = input.ReadDouble();
            break;
          }
          case 113: {
            TotalShield = input.ReadDouble();
            break;
          }
          case 121: {
            TotalShieldTaken = input.ReadDouble();
            break;
          }
          case 129: {
            TotalShieldDamage = input.ReadDouble();
            break;
          }
          case 136: {
            BreakTimes = input.ReadUInt32();
            break;
          }
          case 144: {
            JEPLCJKFOMB = input.ReadUInt32();
            break;
          }
          case 152: {
            NCJHDJJDJNL = input.ReadUInt32();
            break;
          }
          case 160: {
            LKMGDIADOPB = input.ReadUInt32();
            break;
          }
          case 169: {
            IBLGMCIPCKM = input.ReadDouble();
            break;
          }
          case 176: {
            EntityId = input.ReadUInt32();
            break;
          }
          case 184: {
            LDMJDILBDFO = input.ReadUInt32();
            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: {
            AvatarId = input.ReadUInt32();
            break;
          }
          case 16: {
            DPDNNMBCPOI = input.ReadUInt32();
            break;
          }
          case 24: {
            TotalTurns = input.ReadUInt32();
            break;
          }
          case 33: {
            FBCMJGMBJFC = input.ReadDouble();
            break;
          }
          case 42: {
            skillTimes_.AddEntriesFrom(ref input, _repeated_skillTimes_codec);
            break;
          }
          case 49: {
            TotalDamage = input.ReadDouble();
            break;
          }
          case 57: {
            TotalBreakDamage = input.ReadDouble();
            break;
          }
          case 66: {
            attackTypeDamage_.AddEntriesFrom(ref input, _repeated_attackTypeDamage_codec);
            break;
          }
          case 74: {
            attackTypeBreakDamage_.AddEntriesFrom(ref input, _repeated_attackTypeBreakDamage_codec);
            break;
          }
          case 82: {
            attackTypeMaxDamage_.AddEntriesFrom(ref input, _repeated_attackTypeMaxDamage_codec);
            break;
          }
          case 89: {
            TotalDamageTaken = input.ReadDouble();
            break;
          }
          case 97: {
            TotalHeal = input.ReadDouble();
            break;
          }
          case 105: {
            TotalHpRecover = input.ReadDouble();
            break;
          }
          case 113: {
            TotalShield = input.ReadDouble();
            break;
          }
          case 121: {
            TotalShieldTaken = input.ReadDouble();
            break;
          }
          case 129: {
            TotalShieldDamage = input.ReadDouble();
            break;
          }
          case 136: {
            BreakTimes = input.ReadUInt32();
            break;
          }
          case 144: {
            JEPLCJKFOMB = input.ReadUInt32();
            break;
          }
          case 152: {
            NCJHDJJDJNL = input.ReadUInt32();
            break;
          }
          case 160: {
            LKMGDIADOPB = input.ReadUInt32();
            break;
          }
          case 169: {
            IBLGMCIPCKM = input.ReadDouble();
            break;
          }
          case 176: {
            EntityId = input.ReadUInt32();
            break;
          }
          case 184: {
            LDMJDILBDFO = input.ReadUInt32();
            break;
          }
        }
      }
    }
    #endif

  }

  #endregion

}

#endregion Designer generated code
