void InitRemoveHits()
    {
        if (null != m_Data.rh_BuffList)
        {
            PEAH_Buff buff = new PEAH_Buff();
            buff.buffList  = m_Data.hit_BuffID;
            buff.entity    = m_Entity.skEntity;
            buff.buffExist = false;
            m_RemoveHits.Add(buff);
        }

        if (null != m_Data.rh_Attr)
        {
            PEAH_Attr attr = new PEAH_Attr();
            attr.attrs  = m_Data.rh_Attr;
            attr.entity = m_Entity;
            m_RemoveHits.Add(attr);
        }
    }
    void InitHits()
    {
        if (null != m_Data.hit_MutexAbnormal)
        {
            PEAH_Abnormal abnormal = new PEAH_Abnormal();
            abnormal.abnormalCmpt  = m_AbnormalCmpt;
            abnormal.abnormals     = m_Data.hit_MutexAbnormal;
            abnormal.abnormalExist = false;
            m_HitRates.Add(abnormal);
        }

        if (null != m_Data.hit_PreAbnormal)
        {
            PEAH_Abnormal abnormal = new PEAH_Abnormal();
            abnormal.abnormalCmpt  = m_AbnormalCmpt;
            abnormal.abnormals     = m_Data.hit_PreAbnormal;
            abnormal.abnormalExist = true;
            m_HitRates.Add(abnormal);
        }

        if (null != m_Data.hit_BuffID)
        {
            PEAH_Buff buff = new PEAH_Buff();
            buff.buffList = m_Data.hit_BuffID;
            AddSaveBuffs(buff.buffList);
            buff.entity    = m_Entity.skEntity;
            buff.buffExist = true;
            m_HitRates.Add(buff);
        }

        if (null != m_Data.hit_Attr)
        {
            PEAH_Attr attr = new PEAH_Attr();
            attr.attrs  = m_Data.hit_Attr;
            attr.entity = m_Entity;
            m_HitRates.Add(attr);
        }

        if (null != m_Data.hit_Damage)
        {
            PEAH_Damage damage = new PEAH_Damage();
            damage.attr = m_Data.hit_Damage;
            m_AbnormalCmpt.evtDamage += damage.OnGetDamage;
            m_HitRates.Add(damage);
        }

        if (m_Data.hit_TimeInterval > PETools.PEMath.Epsilon)
        {
            PEAH_TimeThreshold time = new PEAH_TimeThreshold();
            time.time = m_Data.hit_TimeInterval;
            m_HitRates.Add(time);
        }

        if (null != m_Data.hit_AreaTime)
        {
            PEAH_AreaTime areaTime = new PEAH_AreaTime();
            areaTime.entity = m_Entity;
            areaTime.values = m_Data.hit_AreaTime;
            m_HitRates.Add(areaTime);
        }

        if (m_Data.hit_RainTime > PETools.PEMath.Epsilon)
        {
            PEAH_RainTime rainTime = new PEAH_RainTime();
            rainTime.time = m_Data.hit_RainTime;
            m_HitRates.Add(rainTime);
        }

        if (m_Data.hit_HitRate > PETools.PEMath.Epsilon)
        {
            PEAH_Rate rate = new PEAH_Rate();
            rate.rate = m_Data.hit_HitRate;
            m_HitRates.Add(rate);
        }
    }