Beispiel #1
0
 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);
 }
Beispiel #2
0
 public CondAttachment(CondEffectParam param)
 {
     this.mParam = param;
 }