public bool MeetCondition(BaseSkillData.IActiveConditionData data, Unit source) { SkillActiveCondition_CheckNumeric checkNumeric = data as SkillActiveCondition_CheckNumeric; NumericComponent numericComponent = source.GetComponent <NumericComponent>(); switch (checkNumeric.realtionType) { case NumericRealtionType.Greater: if (numericComponent.GetAsFloat(checkNumeric.numericType) > checkNumeric.aimValue) { return(true); } break; case NumericRealtionType.Less: if (numericComponent.GetAsFloat(checkNumeric.numericType) < checkNumeric.aimValue) { return(true); } break; case NumericRealtionType.Equal: if (numericComponent.GetAsFloat(checkNumeric.numericType) == checkNumeric.aimValue) { return(true); } break; case NumericRealtionType.NotEqual: if (numericComponent.GetAsFloat(checkNumeric.numericType) != checkNumeric.aimValue) { return(true); } break; case NumericRealtionType.GreaterEqual: if (numericComponent.GetAsFloat(checkNumeric.numericType) >= checkNumeric.aimValue) { return(true); } break; case NumericRealtionType.LessEqual: if (numericComponent.GetAsFloat(checkNumeric.numericType) <= checkNumeric.aimValue) { return(true); } break; } return(false); }
public bool MeetCondition(BaseSkillData.IActiveConditionData data, Unit source) { SkillActiveCondition_CheckHPMP cost = data as SkillActiveCondition_CheckHPMP; NumericComponent numericComponent = source.GetComponent <NumericComponent>(); if (numericComponent.GetAsFloat(NumericType.HP) > cost.costHp && numericComponent.GetAsFloat(NumericType.MP) > cost.costMp && numericComponent.GetAsFloat(NumericType.HP_RemainPct) > cost.costHpInPct && numericComponent.GetAsFloat(NumericType.MP_RemainPct) > cost.costMpInPct) { return(true); } return(false); }
public bool MeetCondition(BaseSkillData.IActiveConditionData data, Unit source) { SkillActiveCondition_CheckBuff CheckBuff = data as SkillActiveCondition_CheckBuff; BuffMgrComponent buffMgrComponent = source.GetComponent <BuffMgrComponent>(); foreach (var v in buffMgrComponent.buffGroupDic) { if (v.Value.buffTypeId == CheckBuff.buffTypeId) { return(true); } } return(false); }
public bool MeetCondition(BaseSkillData.IActiveConditionData data, Unit source) { SkillActiveCondition_CheckTiming CheckTiming = data as SkillActiveCondition_CheckTiming; TimeSpanHelper.Timer timer = TimeSpanHelper.GetTimer(CheckTiming.GetHashCode()); long now = TimeHelper.Now(); if (timer.interval == 0 && timer.timing == 0) { timer.interval = (long)(CheckTiming.timeSpan * 1000); timer.timing = now; } if (now - timer.timing >= timer.interval) { TimeSpanHelper.Remove(CheckTiming.GetHashCode()); return(true); } return(false); }
public void OnRemove(BaseSkillData.IActiveConditionData data, Unit source) { }