|
@@ -12,9 +12,25 @@ namespace GameLogic.Combat.Skill
|
|
{
|
|
{
|
|
protected float recoverValue;
|
|
protected float recoverValue;
|
|
|
|
|
|
|
|
+ private int _count;
|
|
|
|
+ private SkillBasic _skillBasic2004;
|
|
|
|
+ private SkillBasic _skillBasic2005;
|
|
|
|
+
|
|
protected override void ProInitSkillConfig()
|
|
protected override void ProInitSkillConfig()
|
|
{
|
|
{
|
|
recoverValue = SelfSkillConfig.effectValue[0];
|
|
recoverValue = SelfSkillConfig.effectValue[0];
|
|
|
|
+ _count = 1;
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ protected override void ProInitSkill()
|
|
|
|
+ {
|
|
|
|
+ _skillBasic2004 = CombatHeroEntity.CombatHeroSkillControl.GetSkillBasic(20004);
|
|
|
|
+ _skillBasic2005 = CombatHeroEntity.CombatHeroSkillControl.GetSkillBasic(20005);
|
|
|
|
+ if (_skillBasic2005 != null)
|
|
|
|
+ {
|
|
|
|
+ _count += (int)_skillBasic2005.SelfSkillConfig.effectValue[0];
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
protected override void ProUseSkill()
|
|
protected override void ProUseSkill()
|
|
@@ -25,20 +41,29 @@ namespace GameLogic.Combat.Skill
|
|
protected override ILifetCycleHitPoint[] ProGetTineLineTargetEntity(
|
|
protected override ILifetCycleHitPoint[] ProGetTineLineTargetEntity(
|
|
TimeLineEventLogicBasic timeLineEventLogicBasic)
|
|
TimeLineEventLogicBasic timeLineEventLogicBasic)
|
|
{
|
|
{
|
|
- // if (CombatHeroEntity.CombatAIBasic.currFocusTarget == null)
|
|
|
|
- // {
|
|
|
|
- // return null;
|
|
|
|
- // }
|
|
|
|
- // return new[] { CombatHeroEntity.CombatAIBasic.currFocusTarget.GetMainHotPoin<ILifetCycleHitPoint>() };
|
|
|
|
- return CombatController.currActiveCombat.CombatHeroController.GetHeroHitPoint(CombatHeroEntity.IsEnemy);
|
|
|
|
|
|
+ ILifetCycleHitPoint[] allLifetCycleHitPoints =
|
|
|
|
+ CombatController.currActiveCombat.CombatHeroController.GetHeroHitPoint(CombatHeroEntity.IsEnemy);
|
|
|
|
+ return CombatCalculateTool.Instance.GetMinHpHero(allLifetCycleHitPoints, _count);
|
|
}
|
|
}
|
|
|
|
|
|
protected override void ProDefaultTimeLineTrigger(string groupName, CombatHeroHitPoint targetEntity,
|
|
protected override void ProDefaultTimeLineTrigger(string groupName, CombatHeroHitPoint targetEntity,
|
|
ITimelineFxLogic timelineFxLogic,
|
|
ITimelineFxLogic timelineFxLogic,
|
|
TriggerData triggerData)
|
|
TriggerData triggerData)
|
|
{
|
|
{
|
|
|
|
+ float currRecoverValue = recoverValue;
|
|
|
|
+ if (_skillBasic2004 != null)
|
|
|
|
+ {
|
|
|
|
+ float hpBl = _skillBasic2004.SelfSkillConfig.effectValue[0];
|
|
|
|
+ float currBl = (float)(targetEntity.combatHeroEntity.CurrCombatHeroInfo.hp.Value * 100f /
|
|
|
|
+ targetEntity.combatHeroEntity.MaxCombatHeroInfo.hp.Value);
|
|
|
|
+ if (currBl <= hpBl)
|
|
|
|
+ {
|
|
|
|
+ currRecoverValue += _skillBasic2004.SelfSkillConfig.effectValue[1];
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
long v = CombatCalculateTool.Instance.GetVlaueRatioForLong(CombatHeroEntity.CurrCombatHeroInfo.attack.Value,
|
|
long v = CombatCalculateTool.Instance.GetVlaueRatioForLong(CombatHeroEntity.CurrCombatHeroInfo.attack.Value,
|
|
- recoverValue);
|
|
|
|
|
|
+ currRecoverValue);
|
|
HarmReturnInfo harmReturnInfo = Recover(CombatHeroEntity, targetEntity,
|
|
HarmReturnInfo harmReturnInfo = Recover(CombatHeroEntity, targetEntity,
|
|
v, AttType.Normal, HarmType.Default);
|
|
v, AttType.Normal, HarmType.Default);
|
|
}
|
|
}
|