Ejemplo n.º 1
0
 public Tweener Shake(string tag, float duration)
 {
     foreach (ShakeCurve curr in m_ShakeCurves)
     {
         if (curr.tag == tag)
         {
             return(mShakeObject.Shake(curr, duration));
         }
     }
     return(null);
 }
Ejemplo n.º 2
0
    public override void OnActivate()
    {
        if (triggered)
        {
            return;
        }
        triggered = true;
        DamageObject();
        // Suggestion: check if melee cooldown is done.

        // Shake object visually
        ObjectShaker.Shake(ShakeDuration);

        triggered = false;
    }
Ejemplo n.º 3
0
    // Update is called once per frame
    void Update()
    {
        IsFiring = Input.GetButton(_fireButton);
        _animator.SetBool(_fireTrigger, IsFiring);
        if (IsFiring)
        {
            _cameraShakey.Shake();
        }

        if (_enemyPlayer.IsFiring)
        {
            float enemyMin, enemyMax, playerMin, playerMax;
            _enemyPlayer.GetLaserRange(out enemyMin, out enemyMax);
            GetPlayerHitboxRange(out playerMin, out playerMax);

            if ((playerMin >= enemyMin && playerMin <= enemyMax) || (playerMax >= enemyMin && playerMax <= enemyMax))
            {
                // take damage oh no
                Health -= _enemyPlayer._damage;

                if (Health <= 0)
                {
                    // explosion!
                    ParticleSystem s    = Instantiate(_deathParticle, _transform.position, Quaternion.identity);
                    var            main = s.main;
                    main.startColor = _selfColor;

                    _disableOnDeath.SetActive(false);

                    Destroy(gameObject);
                    // gameObject.SetActive(false);
                }
            }
        }
        _healthImg.FillAmount = Health / MaxHealth;
    }