Пример #1
0
 public void Awake()
 {
     Border       = GetComponentInChildren <Border>();
     Begin        = GetComponentInChildren <LevelStart>();
     End          = GetComponentInChildren <LevelFinish>();
     EnergyPoints = GetComponentsInChildren <EnergyPoint>();
 }
 // Start is called before the first frame update
 void Start()
 {
     graphemeText.text = grapheme;
     teleportPoint.SetActive(true);
     plyr   = player.GetComponent <Player>();
     npc    = bee.GetComponent <NPC>();
     mngr   = manager.GetComponent <Manager>();
     lvlfin = manager.GetComponent <LevelFinish>();
     CorrectStones();
     text.transform.position = stone.transform.position + new Vector3(2.6f, 4f, -2f);
 }
 void Awake()
 {
     if (Instance == null)
     {
         DontDestroyOnLoad(gameObject);
         Instance = this;
     }
     else if (Instance != this)
     {
         Destroy(gameObject);
     }
 }
Пример #4
0
    void Update()
    {
        scene = SceneManager.GetActiveScene();

        switch (gameState)
        {
        case GameState.Intro:
            break;

        case GameState.MainMenu:
            scores.Clear();

            if (scene.name != "MainMenu")
            {
                SceneManager.LoadScene("MainMenu");
            }
            break;

        case GameState.GameOver:

            player = GameObject.FindGameObjectWithTag("Player");

            if (player != null)
            {
                GameOver gameOver = player.GetComponent <GameOver>();

                if (gameOver == null)
                {
                    player.AddComponent <GameOver>();
                }
            }

            level_index = 0;
            break;

        case GameState.Paused:
            break;

        case GameState.NextLevel:
            if (levels != null && levels.Length > 0)
            {
                if (level_index < levels.Length)
                {
                    level_index++;
                    SetGameState(GameState.LoadLevel);
                }
                else
                {
                    SetGameState(GameState.GameFinished);
                }
            }
            break;

        case GameState.LoadLevel:
            if (levels != null && levels.Length > 0)
            {
                if (level_index < levels.Length)
                {
                    SceneManager.LoadScene(levels[level_index]);
                    SetGameState(GameState.Playing);
                }
            }
            break;

        case GameState.Playing:
            break;

        case GameState.PlayerDied:
            playerLives--;

            if (playerLives > 0)
            {
                SetGameState(GameState.LoadLevel);
            }
            else
            {
                SetGameState(GameState.GameOver);
            }
            break;

        case GameState.LevelFinished:
            player = GameObject.FindGameObjectWithTag("Player");

            if (player != null)
            {
                if (level_index == levels.Length - 1)
                {
                    SetGameState(GameState.GameFinished);
                }
                else
                {
                    LevelFinish levelFinish = player.GetComponent <LevelFinish>();

                    if (levelFinish == null)
                    {
                        player.AddComponent <LevelFinish>();
                    }
                }
            }
            break;

        case GameState.GameFinished:
            GameFinish gameFinish = player.GetComponent <GameFinish>();

            if (gameFinish == null)
            {
                player.AddComponent <GameFinish>();
            }
            break;

        case GameState.QuitGame:
            Debug.Log("Application Quit!");
            Application.Quit();
            break;
        }
    }
Пример #5
0
 public LevelFinishEventArgs(LevelFinish endType)
 {
     this.endType = endType;
 }