public bool IsFail(Unit unit) { if (this.param.DamageType == eTrickDamageType.DAMAGE) { return(true); } if (this.data.BuffEffect != null) { BuffEffect buffEffect = this.data.BuffEffect; for (int index = 0; index < buffEffect.targets.Count; ++index) { if (buffEffect.targets[index].buffType == BuffTypes.Debuff) { return(true); } } } if (this.data.CondEffect != null) { CondEffectParam condEffectParam = this.data.CondEffect.param; if (condEffectParam.type == ConditionEffectTypes.CureCondition) { return(false); } if (condEffectParam.type == ConditionEffectTypes.DisableCondition) { for (int index = 0; index < condEffectParam.conditions.Length; ++index) { if (!AIUtility.IsFailCondition(condEffectParam.conditions[index])) { return(true); } } } else if (condEffectParam.type == ConditionEffectTypes.FailCondition || condEffectParam.type == ConditionEffectTypes.RandomFailCondition || condEffectParam.type == ConditionEffectTypes.ForcedFailCondition) { for (int index = 0; index < condEffectParam.conditions.Length; ++index) { if (AIUtility.IsFailCondition(condEffectParam.conditions[index])) { return(true); } } } } return(false); }
public CondAttachment(CondEffectParam param) { this.mParam = param; }