public EffectSet GetEffectSet(Constants.SpecialAbilityEffectType effectType) { switch (effectType) { case Constants.SpecialAbilityEffectType.AttackEffect: List <Effect> attackBundle = new List <Effect>(); for (int i = 0; i < attacks.Count; i++) { EffectAttack clonedAttack = new EffectAttack(attacks[i]); attackBundle.Add(clonedAttack); } EffectSet attackEffect = new EffectSet(effectType, attackBundle); return(attackEffect); case Constants.SpecialAbilityEffectType.StatusEffect: List <Effect> statusBundle = new List <Effect>(); for (int i = 0; i < statusEffects.Count; i++) { EffectStatus clonedStatus = new EffectStatus(statusEffects[i]); statusBundle.Add(clonedStatus); } EffectSet statusAttacks = new EffectSet(effectType, statusBundle); return(statusAttacks); default: return(null); } }
private void ShowEffectOfType(Constants.SpecialAbilityEffectType effectType, SpecialAbilityData.EffectHolder effects) { switch (effectType) { case Constants.SpecialAbilityEffectType.AttackEffect: EditorGUILayout.Separator(); effects.attacks = EditorHelper.DrawExtendedList("Attacks", effects.attacks, "Attack", DrawEffectList); break; case Constants.SpecialAbilityEffectType.StatusEffect: effects.statusEffects = EditorHelper.DrawExtendedList("Status Effects", effects.statusEffects, "Status", DrawEffectList); break; } }
private Constants.SpecialAbilityEffectType DrawSpecialAbilityTypes(List <Constants.SpecialAbilityEffectType> list, int index) { Constants.SpecialAbilityEffectType result = EditorHelper.EnumPopup("Effect Type", list[index]); return(result); }
public EffectSet(Constants.SpecialAbilityEffectType effectType, List <Effect> effects) { this.effects = effects; this.effectType = effectType; }