Esempio n. 1
0
    // Update is called once per frame
    void Update()
    {
        if (m_boss == null && m_bossFin == false)
        {
            //le boss est mort

            m_bossFin    = true;
            m_bossActive = false;

            if (m_bossCam)
            {
                m_bossCam.GetComponent <TriggerBoxMultiCam>().DeactivateCam();
                m_bossCam.SetActive(false);
            }

            //  ouvrir la porte
            if (m_Porte)
            {
                m_Porte.GetComponent <BoxCollider2D>().enabled = false;
                m_Porte.GetComponent <Animator>().SetBool("DoClose", false);
            }

            //  ouvrir la trape
            if (m_Trape)
            {
                m_Trape.GetComponent <BoxCollider2D>().enabled = false;
            }


            //  faire pop l'upgrade
            if (m_upgrade)
            {
                Sequence loot = DOTween.Sequence();

                loot.Append(m_upgrade.transform.DOMove(m_lastPosBoss, 0.01f));
                loot.Append(m_upgrade.transform.DOShakePosition(5.0f, new Vector3(0.0f, -0.05f, 0.0f), 2, 40.0f, false, false).SetLoops(1000));
                loot.Play();
            }

            //Si boss 3 detruire Canon
            if (m_NoBoss == 1)
            {
                GameMaster.StartEscapeSequence();
            }
            else if (m_NoBoss == 2)
            {
                audioManager.ChangeMusique("Musique_Jeu");
            }
            else if (m_NoBoss == 3)
            {
                for (int i = canons.Length - 1; i >= 0; i--)
                {
                    Canon canon = canons[i].GetComponent <Canon>();
                    canon.Detruire();
                }

                audioManager.ChangeMusique("MusiqueJeu2");
            }
        }

        if (m_bossActive == true)
        {
            m_lastPosBoss = m_boss.transform.position;
        }
    }