Ejemplo n.º 1
0
    void BoolHit(BoolEventData boolData)
    {
        switch (boolData.currentEvent)
        {
        case BoolEventData.BoolEvent.endLevel:
            LevelEnded = boolData.boolEvent;
            CheckLevelHighScore();
            break;

        case BoolEventData.BoolEvent.playerDead:
            GameIsOver = boolData.boolEvent;
            StartCoroutine(GameOverSound());
            //WildUfoEvents.audioEvent.Invoke(new AudioEventData(gameObject.transform.position, _gameOverSound, AudioEventData.GameObjectSource.GameOver, false, false));
            //EndGame();
            break;

        case BoolEventData.BoolEvent.gameIsPaused:
            GameIsPaused = boolData.boolEvent;
            break;

        case BoolEventData.BoolEvent.levelWon:
            LevelWon = boolData.boolEvent;
            break;

        case BoolEventData.BoolEvent.gameIsOver:
            GameIsOver = boolData.boolEvent;
            StartCoroutine(GameOverSound());
            //WildUfoEvents.audioEvent.Invoke(new AudioEventData(gameObject.transform.position, _gameOverSound, AudioEventData.GameObjectSource.GameOver, false, false));
            break;

        default:
            //Debug.LogError("Errore nessun caso di evento bool gestito");
            break;
        }
    }
Ejemplo n.º 2
0
    void Debris(BoolEventData boolData)
    {
        // non controllo il valore perchè lo invio dal caller solamente quando il valore è true
        if (boolData.currentEvent == BoolEventData.BoolEvent.debris)
        {
            if (PlayerStats.CurrentHealth < 80)
            {
                if (_debrisCounter1 == false)
                {
                    _debris1.Play();
                    _debrisCounter1 = true;
                }
            }

            if (PlayerStats.CurrentHealth < 60)
            {
                if (_debrisCounter2 == false)
                {
                    _debris2.Play();
                    _debrisCounter2 = true;
                }
            }

            if (PlayerStats.CurrentHealth < 40)
            {
                if (_debrisCounter3 == false)
                {
                    _debris3.Play();
                    _debrisCounter3 = true;
                }
            }
        }
    }
Ejemplo n.º 3
0
 //orrida gestione ma per il momento vediamo se funziona
 void OnLevelEnded(BoolEventData boolData)
 {
     if (boolData.currentEvent == BoolEventData.BoolEvent.endLevel)
     {
         if (boolData.boolEvent == true)
         {
             _rb2d.velocity = new Vector2(0, 0);
             _rb2d.rotation = 0f;
         }
     }
 }
Ejemplo n.º 4
0
 void Shoot(BoolEventData boolData)
 {
     if (boolData.currentEvent == BoolEventData.BoolEvent.playerShoot)
     {
         BulletTurret01Mk1 bullet = Turret01Mk1Pool.Instance.GetFromPool();
         WildUfoEvents.audioEvent.Invoke(new AudioEventData(transform.position, _soundShoot, AudioEventData.GameObjectSource.PlayerShoot, false, true));
         _LaserShotFlash.Play();
         bullet.transform.position = Turret01Mk1Pool.Instance.transform.position;
         bullet.gameObject.SetActive(true);
     }
 }
Ejemplo n.º 5
0
 private void OnShieldActivated(BoolEventData boolData)
 {
     if (boolData.currentEvent == BoolEventData.BoolEvent.shieldActivated)
     {
         ShieldActivated = boolData.boolEvent;
         if (ShieldActivated == true)
         {
             CurrentShield = 100;
             CurrentHealth = 100;
             WildUfoEvents.boolHit.Invoke(new BoolEventData(false, BoolEventData.BoolEvent.enemyZone));
         }
     }
 }
Ejemplo n.º 6
0
    void GameScreenBehaviour(BoolEventData booldata)
    {
        switch (booldata.currentEvent)
        {
        case BoolEventData.BoolEvent.gameIsOver:
            StartCoroutine(SetGameOverUI());
            //_gameOverUI.SetActive(true);
            break;

        case BoolEventData.BoolEvent.endLevel:
            StartCoroutine(LevelWonRoutine());
            break;
        }
    }
Ejemplo n.º 7
0
 void PlayerDead(BoolEventData boolData)
 {
     if (boolData.currentEvent == BoolEventData.BoolEvent.gameIsOver)
     {
         //questo è il caso in cui finisce il tempo
         _smoke.Stop();
         //questo è il caso in cui la salute è zero
         if (PlayerStats.CurrentHealth == 0)
         {
             float randomRange = Random.Range(6f, 12f);
             //CineMachineShake.Instance.ShakeCameraRaw(randomRange, .3f);
             _playerExplosion1.Play();
             _playerExplosion2.Play();
             WildUfoEvents.audioEvent.Invoke(new AudioEventData(transform.position, _playerDeathSound, AudioEventData.GameObjectSource.PlayerDeath, false, false));
             _playerSpriteRenderer.sprite = _bodyDead;
         }
     }
 }
Ejemplo n.º 8
0
    private void TransitionSound(BoolEventData boolData)
    {
        switch (boolData.currentEvent)
        {
        case BoolEventData.BoolEvent.ambienteMusic:
            if (boolData.boolEvent == false)
            {
                _ambIdle.TransitionTo(0.5f);
            }
            else if (boolData.boolEvent == true)
            {
                _ambIN.TransitionTo(0.3f);
            }
            break;

        case BoolEventData.BoolEvent.enemyZone:
            if (boolData.boolEvent == false)
            {
                _gamePlayMusic.TransitionTo(0.75f);
            }
            else if (boolData.boolEvent == true)
            {
                if (GameManager.GameIsOver)
                {
                    _gameIsOverMusic.TransitionTo(0.3f);
                }
                else
                {
                    _enemySnap.TransitionTo(0.1f);
                }
            }
            break;

        case BoolEventData.BoolEvent.menuMusic:
            if (boolData.boolEvent == false)
            {
                _gamePlayMusic.TransitionTo(0.75f);
            }
            else if (boolData.boolEvent == true)
            {
                _menuMusic.TransitionTo(1f);
            }
            break;

        case BoolEventData.BoolEvent.gameIsOver:
            if (boolData.boolEvent == true)
            {
                Debug.Log(GameManager.GameIsOver.ToString());
                _gameIsOverMusic.TransitionTo(0.3f);
            }
            break;

        case BoolEventData.BoolEvent.endLevel:
            if (boolData.boolEvent == true)
            {
                _gameIsOverMusic.TransitionTo(1f);
                Play("WinJingle");
            }
            break;

        default:
            //Debug.LogError("Errore nessun caso di SUONO evento bool gestito");
            break;
        }
    }