コード例 #1
0
    // called to begin transition to new level, when current level is complete
    public void GoToNextLevel()
    {
        if (levelNamesIndex >= levelNames.Length - 1)       // if I'm on the last level
        {
            Debug.Log("All levels complete.");
            OnAllLevelsComplete.Invoke(this);
            return;
        }
        player.rb.isKinematic = true;
        currentLevel.player   = null;

        // get difference between start and current pose
        playerSlide = loadedLevel.GetStartPoint().position + Vector3.up * levelSeparationDistance - player.transform.position;

        Debug.Log("Going to level " + loadedScene.name + " from " + currentScene.name);
        if (!nextLevelReady)
        {
            // wait for level load
            Debug.Log("Waiting for next level to load...");
            OnLevelLoaded.AddListener(WaitForLoad);
            return;
        }
        levelProgess    = 0f;
        levelTransition = true;
    }
コード例 #2
0
 public void LevelCompleteEventCall()
 {
     LevelCompleteEvent?.Invoke();
 }
コード例 #3
0
 public static void LevelCompleteEventInvoke()
 {
     LevelCompleteEvent.Invoke();
 }