// Clone public static BattleCEff Clone(BattleCEff original) { BattleCEff cloneEffect = new BattleCEff( effectType: original.effectType, effectTiming: original.effectTiming, boolParams: original.boolParams, floatParams: original.floatParams, stringParams: original.stringParams ); return(cloneEffect); }
// Constructor public StatusBTLData( string ID, string baseID = null, string conditionName = null, string startTextID = null, string natureTextID = null, string endTextID = null, string alreadyTextID = null, EffectDatabase.General.DefaultTurns defaultTurns = null, bool combineBaseTags = false, IEnumerable <BattleSTag> tags = null, bool combineBaseEffects = false, BattleCEff[] effects = null, EffectDatabase.StatusBTLEff.BattleSE[] effectsNew = null) { this.ID = ID; this.baseID = baseID; this.conditionName = conditionName; this.inflictTextID = startTextID; this.natureTextID = natureTextID; this.endTextID = endTextID; this.alreadyTextID = alreadyTextID; this.defaultTurns = (defaultTurns == null) ? null : defaultTurns.Clone(); this.combineBaseTags = combineBaseTags; this.tags = (tags == null) ? new HashSet <BattleSTag>() : new HashSet <BattleSTag>(tags); this.combineBaseEffects = combineBaseEffects; this.effects = new List <BattleCEff>(); if (effects != null) { List <BattleCEff> newEffects = new List <BattleCEff>(); for (int i = 0; i < effects.Length; i++) { newEffects.Add(BattleCEff.Clone(effects[i])); } this.effects = new List <BattleCEff>(newEffects); } this.effectsNew = new List <EffectDatabase.StatusBTLEff.BattleSE>(); if (effectsNew != null) { List <EffectDatabase.StatusBTLEff.BattleSE> addableEffects = new List <EffectDatabase.StatusBTLEff.BattleSE>(); for (int i = 0; i < effectsNew.Length; i++) { addableEffects.Add(effectsNew[i].Clone()); } this.effectsNew = addableEffects; } }