예제 #1
0
 public EffectData(Effects.TickEffects _effect, float _duration, float _statsValue, int _tickNumber)
 {
     effect     = _effect;
     duration   = _duration;
     statsValue = _statsValue;
     tickNumber = _tickNumber;
 }
예제 #2
0
        public void ApplyTickEffect(Character target, Effects.TickEffects effect, float duration, float actionValue, int tickNumbers = 1)
        {
            TickEffect tempEffect = Instantiate(GetTickEffectPrefab(effect), target.transform, false);

            tempEffect.duration      = duration;
            tempEffect.statsValue    = actionValue;
            tempEffect.target        = target;
            tempEffect.numberOfTicks = tickNumbers;
            tempEffect.effectType    = effect;
        }
예제 #3
0
        void ApplyNonClassEffect(Effects.TickEffects effect)
        {
            switch (effect)
            {
            case Effects.TickEffects.Speed: ChangeStat(ref target.RunSpeed); break;

            case Effects.TickEffects.WeaponDamage: ChangeStat(ref target.WeaponDamage); isTemporary = true; break;

            default: break;
            }
        }
예제 #4
0
        TickEffect GetTickEffectPrefab(Effects.TickEffects effect)
        {
            switch (effect)
            {
            case Effects.TickEffects.Speed: return(SpeedEffectPrefab);

            case Effects.TickEffects.Poison: return(BurnEffectPrefab);

            default: return(tickEffectPrefab);
            }
        }
예제 #5
0
        TickEffect GetTickEffectPrefab(Effects.TickEffects effect)
        {
            foreach (TickEffect e in loadedEffects)
            {
                if (e.effectType == effect)
                {
                    return(e);
                }
            }

            return(tickEffectPrefab);
        }