Exemplo n.º 1
0
 // Update is called once per frame
 void Update()
 {
     if (Input.GetKeyDown(KeyCode.P) && _mainSceneManager.IsActive() && _level < maxLevel && _life > 0 && !_mainSceneManager.IsTutorial())
     {
         _level++;
         _audioSources[0].time = 0.0f;
         _audioSources[0].Play();
         _canvasMain.DrawLevelWithFlicker(_level);
     }
 }
Exemplo n.º 2
0
    private void OnTriggerEnter2D(Collider2D other)
    {
        if (_mainGameStateManager.GetLife() > 0)
        {
            switch (other.tag)
            {
            case "Enemy":
                if (!_isKnockBack)
                {
                    if (_mainSceneManager.IsTutorial())
                    {
                        _isKnockBack = true;
                        StartCoroutine(CoroutineKnockBack());
                    }
                    else
                    {
                        _mainGameStateManager.DecreaseLife();
                        if (_mainGameStateManager.GetLife() > 0)
                        {
                            _isKnockBack          = true;
                            _audioSources[0].time = 0.05f;
                            _audioSources[0].Play();
                            StartCoroutine(CoroutineKnockBack());
                        }
                        else
                        {
                            Instantiate(prefabEffectDiminish, transform.position,
                                        new Quaternion(0.0f, 0.0f, 0.0f, 0.0f));
                            _spriteRenderer.sprite = spriteDummy;
                            _audioSources[1].time  = 0.15f;
                            _audioSources[1].Play();
                            StartCoroutine(CoroutineDefeated());
                        }
                    }
                }

                break;
            }
        }
    }