public Ability Clone()
        {
            Ability ab = new Ability();

            ab.ID        = ID;
            ab.name      = name;
            ab.icon      = icon;
            ab.cost      = cost;
            ab.cooldown  = cooldown;
            ab.currentCD = currentCD;
            ab.requireTargetSelection = requireTargetSelection;
            ab.effectObj          = effectObj;
            ab.maxUseCount        = maxUseCount;
            ab.usedCount          = usedCount;
            ab.indicator          = indicator;
            ab.autoScaleIndicator = autoScaleIndicator;
            ab.useDefaultEffect   = useDefaultEffect;
            for (int i = 0; i < effectList.Count; i++)
            {
                ab.effectList.Add(effectList[i].Clone());
            }
            ab.effect        = effect.Clone();
            ab.aoeRadius     = aoeRadius;
            ab.effectDelay   = effectDelay;
            ab.useCustomDesp = useCustomDesp;
            ab.desp          = desp;
            return(ab);
        }
Beispiel #2
0
        public Perk Clone()
        {
            Perk perk = new Perk();

            perk.ID              = ID;
            perk.name            = name;
            perk.icon            = icon;
            perk.iconUnavailable = iconUnavailable;

            perk.repeatable     = repeatable;
            perk.purchased      = purchased;
            perk.purchasedCount = purchasedCount;

            perk.type = type;

            //perk.cost=cost;
            perk.cost         = new List <int>(cost);
            perk.minLevel     = minLevel;
            perk.minWave      = minWave;
            perk.minPerkPoint = minPerkPoint;
            //perk.prereq=prereq;
            perk.prereq = new List <int>(prereq);

            //perk.itemIDList=itemIDList;
            perk.itemIDList = new List <int>(itemIDList);
            perk.itemID     = itemID;
            perk.value      = value;
            perk.valueAlt   = valueAlt;
            //perk.valueRscList=valueRscList;
            perk.valueRscList = new List <float>(valueRscList);
            perk.stats        = stats.Clone();
            perk.effects      = effects.Clone();

            perk.HP            = HP;
            perk.HPRegen       = HPRegen;
            perk.HPStagger     = HPStagger;
            perk.shield        = shield;
            perk.shieldRegen   = shieldRegen;
            perk.shieldStagger = shieldStagger;
            perk.buildCost     = buildCost;
            perk.upgradeCost   = upgradeCost;

            perk.abCost      = abCost;
            perk.abCooldown  = abCooldown;
            perk.abAOERadius = abAOERadius;

            perk.desp = desp;

            return(perk);
        }
        public PerkLevel Clone()
        {
            PerkLevel perk = new PerkLevel();

            perk.cost     = cost;
            perk.value    = value;
            perk.valueAlt = valueAlt;
            perk.valueRsc = valueRsc;
            perk.stats    = stats.Clone();
            perk.effects  = effects.Clone();

            perk.HP          = HP;
            perk.buildCost   = buildCost;
            perk.upgradeCost = upgradeCost;

            perk.abCost      = abCost;
            perk.abCooldown  = abCooldown;
            perk.abAOERadius = abAOERadius;

            perk.desp = desp;

            return(perk);
        }
Beispiel #4
0
        public Ability Clone()
        {
            Ability ab = new Ability();

            ab.ID   = ID;
            ab.name = name;
            ab.icon = icon;

            ab.disableInAbilityManager = disableInAbilityManager;

            ab.cost      = cost;
            ab.cooldown  = cooldown;
            ab.currentCD = currentCD;

            ab.requireTargetSelection = requireTargetSelection;
            ab.singleUnitTargeting    = singleUnitTargeting;
            ab.targetType             = targetType;

            ab.maxUseCount  = maxUseCount;
            ab.usedCount    = usedCount;
            ab.usedRemained = usedRemained;

            ab.useDefaultEffect = useDefaultEffect;
            ab.effect           = effect.Clone();
            ab.aoeRadius        = aoeRadius;
            ab.effectDelay      = effectDelay;

            ab.indicator = indicator;

            ab.effectObj             = effectObj;
            ab.destroyEffectObj      = destroyEffectObj;
            ab.destroyEffectDuration = destroyEffectDuration;

            ab.useCustomDesp = useCustomDesp;
            ab.desp          = desp;
            return(ab);
        }