Exemplo n.º 1
0
    void LevelWasLoaded(WhichMode sceneLoaded, GameStateEnum gameState)
    {
        GlobalVariables.Instance.LevelWasLoaded(sceneLoaded, gameState);

        if (OnLevelLoaded != null)
        {
            OnLevelLoaded();
        }
    }
Exemplo n.º 2
0
    WhichMode RandomScene()
    {
        WhichMode randomScene = WhichMode.Bomb;

        do
        {
            randomScene = (WhichMode)modesEnum[UnityEngine.Random.Range(0, modesEnum.Count)];
        }while (GlobalVariables.Instance.lastPlayedModes.Contains(randomScene));

        return(randomScene);
    }
Exemplo n.º 3
0
    //Game First Scene Loaded
    IEnumerator FirstLoadedScene(WhichMode sceneToLoad)
    {
        //Unload All other Scenes than Menu
        if (SceneManager.GetActiveScene().name != "Scene Testing")
        {
            for (int i = 0; i < SceneManager.sceneCount; i++)
            {
                if (SceneManager.GetSceneAt(i).name != "Scene Testing" && SceneManager.GetSceneAt(i).name != "Menu" && !GlobalVariables.Instance.environementScenes.Contains(SceneManager.GetSceneAt(i).name))
                {
                    yield return(SceneManager.UnloadSceneAsync(SceneManager.GetSceneAt(i).name));
                }
            }
        }

        for (int i = 0; i < SceneManager.sceneCountInBuildSettings; i++)
        {
            if (SceneManager.GetSceneByBuildIndex(i).isLoaded&& SceneManager.GetSceneByBuildIndex(i).name != "Scene Testing" && SceneManager.GetSceneByBuildIndex(i).name != "Menu")
            {
                yield return(SceneManager.UnloadSceneAsync(SceneManager.GetSceneByBuildIndex(i).name));
            }
        }

        //Unload Scene if already loaded
        if (SceneManager.GetSceneByName(sceneToLoad.ToString()).isLoaded)
        {
            yield return(SceneManager.UnloadSceneAsync(sceneToLoad.ToString()));
        }


        if (SceneManager.GetActiveScene().name != "Scene Testing")
        {
            yield return(SceneManager.LoadSceneAsync(sceneToLoad.ToString(), LoadSceneMode.Additive));

            LevelWasLoaded(sceneToLoad, GameStateEnum.Menu);
        }
        else
        {
            //Scene Testing
            if (SceneManager.sceneCount > 1)
            {
                yield return(new WaitUntil(() => SceneManager.GetSceneAt(1).isLoaded));

                LevelWasLoaded((WhichMode)Enum.Parse(typeof(WhichMode), SceneManager.GetSceneAt(1).name), GameStateEnum.Playing);
            }
            else
            {
                yield return(SceneManager.LoadSceneAsync(sceneToLoad.ToString(), LoadSceneMode.Additive));

                LevelWasLoaded(sceneToLoad, GameStateEnum.Playing);
            }
        }
    }
Exemplo n.º 4
0
    WhichMode RandomCocktailScene()
    {
        if (GlobalVariables.Instance.currentCocktailModes.Count == 0)
        {
            GlobalVariables.Instance.currentCocktailModes.AddRange(GlobalVariables.Instance.selectedCocktailModes);
        }

        WhichMode randomMode = GlobalVariables.Instance.currentCocktailModes[UnityEngine.Random.Range(0, GlobalVariables.Instance.currentCocktailModes.Count)];

        GlobalVariables.Instance.currentCocktailModes.Remove(randomMode);

        return(randomMode);
    }
Exemplo n.º 5
0
    //Menu Load Scene to choose mode
    IEnumerator LoadScene(WhichMode sceneToLoad, GameStateEnum gameState = GameStateEnum.Menu, bool resetStats = true)
    {
        if (SceneManager.GetSceneByName(GlobalVariables.Instance.CurrentModeLoaded.ToString()).isLoaded)
        {
            yield return(SceneManager.UnloadSceneAsync(GlobalVariables.Instance.CurrentModeLoaded.ToString()));
        }

        DestroyParticules();

        yield return(SceneManager.LoadSceneAsync(sceneToLoad.ToString(), LoadSceneMode.Additive));

        LevelWasLoaded(sceneToLoad, gameState);

        if (resetStats)
        {
            StatsManager.Instance.ResetStats();
        }
    }
Exemplo n.º 6
0
    public void LevelWasLoaded(WhichMode levelLoaded, GameStateEnum gameState)
    {
        GetPlayers();
        SetModeLimits();
        GetMovables();

        if (levelLoaded != WhichMode.Tutorial)
        {
            lastManManager = GameObject.FindGameObjectWithTag("LastManManager").GetComponent <LastManManager>();
        }

        CurrentModeLoaded = levelLoaded;

        if (gameState == GameStateEnum.Playing)
        {
            CreateAIs();
        }

        GameState = gameState;
    }
Exemplo n.º 7
0
 public void LevelWasUnloaded(GameStateEnum gameState)
 {
     CurrentModeLoaded = WhichMode.None;
     GameState         = gameState;
 }
Exemplo n.º 8
0
 public void LoadSceneVoid(WhichMode sceneToLoad)
 {
     StartCoroutine(LoadScene(sceneToLoad));
 }
Exemplo n.º 9
0
 public void MenuLoadMode(WhichMode whichMode)
 {
     LoadModeManager.Instance.LoadSceneVoid(whichMode);
 }