Exemplo n.º 1
0
        public static PropertyModifierSet CopyFrom(PropertyModifierSet other)
        {
            PropertyModifierSet set = new PropertyModifierSet {
                levelFilter = other.levelFilter
            };

            foreach (PropertyModifier modifier in other.modifiers)
            {
                set.modifiers.Add(PropertyModifier.CopyFrom(modifier));
            }
            return(set);
        }
Exemplo n.º 2
0
        public static List <PropertyModifier> GetIncreasedModifier(List <PropertyModifierSet> increaseList, int step)
        {
            PropertyModifierSet set = null;

            foreach (PropertyModifierSet set2 in increaseList)
            {
                if (((set == null) || (set._levelFilter <= set2._levelFilter)) && (step >= set2._levelFilter))
                {
                    set = set2;
                }
            }
            List <PropertyModifier> list = new List <PropertyModifier>();

            if (set != null)
            {
                foreach (PropertyModifier modifier in set.modifiers)
                {
                    PropertyModifier item = PropertyModifier.CopyFrom(modifier);
                    item.attributeValue += (step - set._levelFilter) * modifier.attributeIncrease;
                    list.Add(item);
                }
            }
            return(list);
        }