Exemplo n.º 1
0
    //Retire l'ennemie qui vient d'être détruit de la liste
    public void RemoveFromList(GameObject toRemove)
    {
        //Retire l'ennemie de la liste
        remainingEnnemies.Remove(toRemove);
        //Si c'est le dernier ennemi qui a été détruit
        if (hasFinishedSpawning && remainingEnnemies.Count == 0)
        {
            //Change le numéro de la vague actuelle
            waveNumber++;
            //Si le joueur à terminer toutes les vagues
            if (waveNumber == waves.Length)
            {
                //Lance l'écran de victoire
                onFinishingAllWaves.Invoke();
            }

            //Repasse le jeu en Parabellum
            musicManager.EndOfWave();
            GameManager.Instance.onStateChange.Invoke(GameState.Parabellum);
            DoorBehaviour.DoorOpen();
            //Mise en place de la musique et du temps d'antebellum pour la vague suivante
            MusicManager.levelMusic     = (waves[waveNumber].music);
            GameManager.timerAntebellum = (waves[waveNumber].antebellumTime);

            //Permet au joueur de lancer la prochaine vague
            GameManager.canAntebellum = true;
            hasFinishedSpawning       = false;
        }
    }