//다음 스테이지로 넘어가는 버튼 public void NextButton() { SoundManager.instance.PlaySFX("Click_2"); StageManager.instance.go_Player.SetActive(false); //일반 스테이지라면 if (StageManager.instance.currentStageSlot != null) { SoundManager.instance.PlayBGM("BGM_6"); stageClearUI.S_DeactiveClearUI(); Destroy(StageManager.instance.currentStage.gameObject); //다음 스테이지가 일반 스테이지라면 if (StageManager.instance.currentStageSlot.stageNumber + 1 != stageSlots.Length) { StageManager.instance.currentStageSlot = stageSlots[StageManager.instance.currentStageSlot.stageNumber + 1]; StageManager.instance.currentStage = Instantiate(StageManager.instance.currentStageSlot.go_StagePrefab, new Vector3(0, 0, 0), Quaternion.identity).GetComponent <Stage>(); } //다음 스테이지가 보스 스테이지라면 else { SoundManager.instance.PlayBGM("BGM_3"); StageManager.instance.currentStageSlot = null; StageManager.instance.currentStage = null; StageManager.instance.currentBossStageSlot = bossStageSlot; StageManager.instance.panaltyPoint = 0; if (StageManager.instance.currentBossStageSlot.bossStageType == BossStageSlot.BossStageType.StageRandom) { StageManager.instance.currentBossStage = Instantiate(StageManager.instance.currentBossStageSlot.go_BossStageNormals[Random.Range(0, StageManager.instance.currentBossStageSlot.go_BossStageNormals.Length)] , new Vector3(0, 0, 0), Quaternion.identity).GetComponent <BossStage>(); } else { StageManager.instance.currentBossStage = Instantiate(StageManager.instance.currentBossStageSlot.go_BossStageNormals[0] , new Vector3(0, 0, 0), Quaternion.identity).GetComponent <BossStage>(); } if (StageManager.instance.currentBossStageSlot.currentHp <= 0) { stageClearUI.BS_DeactiveClearUI(); } else { youDiedUI.BS_DeactiveYouDiedUI(); } } } //보스 스테이지면 else { SoundManager.instance.PlayBGM("BGM_6"); stageClearUI.BS_DeactiveClearUI(); Destroy(StageManager.instance.currentBossStage.gameObject); StageManager.instance.currentBossStageSlot = null; StageManager.instance.currentBossStage = null; for (int i = 0; i < stageSlots.Length; i++) { stageSlots[i] = null; } StageManager.instance.currentChapter++; //다음 챕터의 슬롯들을 할당해준다. for (int i = 0; i < chapterSelectUI.allStageSlot[StageManager.instance.currentChapter - 1].stageSlots.Length; i++) { stageSlots[i] = chapterSelectUI.allStageSlot[StageManager.instance.currentChapter - 1].stageSlots[i]; } chapterSelectUI.go_CurrentChapterUI = chapterSelectUI.go_Chapters[StageManager.instance.currentChapter - 1]; bossStageSlot = chapterSelectUI.allStageSlot[StageManager.instance.currentChapter - 1].bossStageSlot; StageManager.instance.currentStageSlot = stageSlots[0]; StageManager.instance.currentStage = Instantiate(StageManager.instance.currentStageSlot.go_StagePrefab, new Vector3(0, 0, 0), Quaternion.identity).GetComponent <Stage>(); } }