Example #1
0
    private void PlayerAttacked(float amount, OnHitEffectType effect = OnHitEffectType.None,
                                float effectTime = 0, float damageOverTime = 0, float moveSpeedMultiplier = 1)
    {
        DamagePlayer(amount);

        switch (effect)
        {
        case OnHitEffectType.Burn:
            StartCoroutine(EnableEffect(burnEffect, effectTime, damageOverTime, moveSpeedMultiplier));
            break;

        case OnHitEffectType.Freeze:
            StartCoroutine(EnableEffect(freezeEffect, effectTime, damageOverTime, moveSpeedMultiplier, true));
            break;

        case OnHitEffectType.Poison:
            StartCoroutine(EnableEffect(poisonEffect, effectTime, damageOverTime, moveSpeedMultiplier));
            break;

        default: break;
        }
    }
Example #2
0
    public void CastSpell(OnHitEffectType onHitEffectType)
    {
        switch (onHitEffectType)
        {
        case OnHitEffectType.Burn:
            var fireW = Instantiate(fireWave);
            fireW.transform.position = transform.position;
            break;

        case OnHitEffectType.Freeze:
            var iceW = Instantiate(iceWave);
            iceW.transform.position = transform.position;
            break;

        case OnHitEffectType.Poison:
            var poisonW = Instantiate(poisonWave);
            poisonW.transform.position = transform.position;
            break;

        default: break;
        }
    }
Example #3
0
 public OnHitEffect(OnHitEffectType onHitEffectType, float effectTime, float damageOverTime)
 {
     this.onHitEffectType = onHitEffectType;
     this.effectTime      = effectTime;
     this.damageOverTime  = damageOverTime;
 }