// Update is called once per frame void Update() { switch (status) { case levelStatus.inOpenning: if (discussion.getStatus() == discussionStatus.complete) { GameObject.Find("LoadScreen").transform.GetChild(0).gameObject.SetActive(true); LevelData.LevelName = levels[currentLevel].lvname; LevelData.levelId = currentLevel; TextAsset mapFile = Resources.Load(LevelData.getLevelPath()) as TextAsset; LevelData.levelCompletion = levelCompletion(); LevelData.levelId = currentLevel; if (mapFile != null) { LevelData.newMap = false; switch (currentLevel) { case 0: LevelData.party[0] = 0; LevelData.party[2] = 1; break; case 2: LevelData.party[3] = 1; break; case 3: LevelData.party[4] = 1; break; } SceneManager.LoadScene("_scene"); } } break; case levelStatus.inLevel: discussion.show(levels[currentLevel].closingDiscussion); if (currentLevel == 3) { LevelData.party[5] = 1; } levels[currentLevel].completed = true; status = levelStatus.inClosing; break; case levelStatus.inClosing: LevelData.levelComplete = false; if (discussion.getStatus() == discussionStatus.complete) { status = levelStatus.waiting; GameObject.Find("Map").GetComponent <mapScript>().updateProgression(calculateProgression()); } break; } }