Beispiel #1
0
 private void OnCollisionEnter(Collision other)
 {
     if (other.collider.CompareTag("Floor") && _slowMotionEffect)
     {
         SlowMotion.StartSlowMotion();
     }
 }
 private void OnTriggerEnter(Collider other)
 {
     if (other.gameObject.layer == LayerMask.NameToLayer("Player"))
     {
         gameObject.SetActive(false); // Prevent double activation
         SlowMotion.StartSlowMotion();
         player.ActivateLaser();
     }
 }
Beispiel #3
0
    void WaveForce()
    {
        if (OnHold != null)
        {
            OnHold();
        }

        _slowMotion.StartSlowMotion();

        WaveState = WaveState.IsWaving;

        _rigidbody.velocity = Vector3.zero;
        _waveForce          = CurrentWave.WaveForceLimits.x;

        DOTween.To(() => _waveForce, x => _waveForce = x, CurrentWave.WaveForceLimits.y, CurrentWave.MaxForceDuration)
        .SetEase(Ease.OutQuad)
        .OnUpdate(() => WaveForceDebug = _waveForce / CurrentWave.WaveForceLimits.y).SetId("Wave")
        .OnComplete(() => { if (WaveState == WaveState.IsWaving && GameManager.Instance.GameState != GameState.GameOver)
                            {
                                Wave();
                            }
                    });
    }