private void OnActorDamage(ref HurtEventResultInfo info)
 {
     if (this.iMaxTriggerCount > 0 && this.iTriggerCount >= this.iMaxTriggerCount)
     {
         return;
     }
     if (info.src != this.targetActor)
     {
         return;
     }
     if (info.hpChanged >= 0)
     {
         return;
     }
     if (this.slotType != info.hurtInfo.atkSlot)
     {
         return;
     }
     if (this.bFirstTrigger || this.iLocalTime - this.iLastTime > this.iTriggerInterval)
     {
         this.iLastTime = this.iLastTime;
         this.iTriggerCount++;
         this.TriggerAction();
     }
 }
Ejemplo n.º 2
0
        public void OnActorDamage(ref HurtEventResultInfo hri)
        {
            if (((this.m_miniMapCameraFrame != null) && this.m_miniMapCameraFrame.IsCameraFrameShow) && (hri.hurtInfo.hurtType != HurtTypeDef.Therapic))
            {
                Player hostPlayer = Singleton <GamePlayerCenter> .instance.GetHostPlayer();

                if (((hri.src != 0) && (hostPlayer != null)) && ((hostPlayer.Captain != 0) && (hostPlayer.Captain == hri.src)))
                {
                    this.m_miniMapCameraFrame.ShowRed();
                }
            }
        }
Ejemplo n.º 3
0
        private void onActorDamage(ref HurtEventResultInfo prm)
        {
            if (this.bossActorRoot && this.bossActorRoot.handle.ActorControl != null && this.bossActorRoot.handle.ActorControl.IsInBattle)
            {
                return;
            }
            PoolObjHandle <ActorRoot> src   = prm.src;
            PoolObjHandle <ActorRoot> atker = prm.atker;

            if (!src || prm.hurtInfo.hurtType == HurtTypeDef.Therapic)
            {
                return;
            }
            if (src.handle.HudControl == null || !src.handle.HudControl.bBossHpBar)
            {
                return;
            }
            if (src.handle.ActorControl.IsDeadState)
            {
                if (src == this.eliteActor)
                {
                    this.UnbindCurrentElite();
                }
                return;
            }
            Player hostPlayer = Singleton <GamePlayerCenter> .GetInstance().GetHostPlayer();

            if (hostPlayer == null || atker != hostPlayer.Captain)
            {
                return;
            }
            if (src != this.eliteActor)
            {
                this.UnbindCurrentElite();
                this.BindNewElite(src);
            }
            else
            {
                this.ChangeToElite();
                if (this.eliteBarTimer != -1)
                {
                    Singleton <CTimerManager> .instance.RemoveTimer(this.eliteBarTimer);

                    this.eliteBarTimer = -1;
                }
                else
                {
                    this.OnEliteHpChange();
                    this.OpenEliteBar();
                }
                this.ToCloseEliteBar(10000);
            }
        }
 private static void OnActorDamage(ref HurtEventResultInfo info)
 {
     if (!SkillFuncHurtDelegator._originateActor || !SkillFuncHurtDelegator._targetActor || !info.src || info.src.handle.TheActorMeta.ActorType != ActorTypeDef.Actor_Type_Hero || info.hpChanged >= 0)
     {
         return;
     }
     if (info.src == SkillFuncHurtDelegator._originateActor)
     {
         if (!SkillFuncHurtDelegator._targetActor.handle.ActorControl.IsDeadState)
         {
             SkillFuncHurtDelegator._targetActor.handle.ValueComponent.actorHp += info.hpChanged;
         }
     }
     else if (info.src == SkillFuncHurtDelegator._targetActor && !SkillFuncHurtDelegator._originateActor.handle.ActorControl.IsDeadState)
     {
         SkillFuncHurtDelegator._originateActor.handle.ValueComponent.actorHp += info.hpChanged;
     }
 }