コード例 #1
0
        /// <summary>Adds a conditional stat modifier to the system based on given info. stop conditoin defaults to null meaning it will never stop</summary>
        public ConditionalStatModifier AddConditionalModifier(ConditionalModifierInfoSO info)
        {
            if (info == null)
            {
                throw new InvalidOperationException("Conditional modifier Info was null");
            }

            ConditionalStatModifier modifier = new ConditionalStatModifier(info);

            InsertModifierInSystem(modifier);
            return(modifier);
        }
コード例 #2
0
        /// <summary>
        /// Creates a new instance of a conditinal stat modifier using a conditional modifier info scriptable object
        /// </summary>
        public ConditionalStatModifier(ConditionalModifierInfoSO info)
        {
            name                   = info.name;
            valuePerSecond         = info.Value;
            increase               = info.Increase;
            modifiesCurrent        = info.ModifiesCurrent;
            modifiesCurrentWithMax = info.ModifiesCurrentWithMax;
            canStack               = info.CanStack;

            StopCondition       = info.StopCondition ?? DefaultCondition;
            OnSecondPassedEvent = info.OnSecondsPassed;
        }