Menu
CoddyTech

복습: 레벨 선택

Coddy Unity 여정의 실제 게임 만들기 섹션에 포함된 레슨. 56개 중 21번째.

challenge icon

챌린지

쉬움

레벨 선택 화면입니다. 빌드에는 Menu(인덱스 0), Level1, Level2, Level3이 나열되어 있습니다. Menu에는 버튼이 세 개 있으며, Inspector에서 LevelSelect 스크립트의 levelButtons에 넣고, Progress 객체도 하나 둡니다. 각 레벨에서 화살표 키로 Player를 금색 Goal까지 이동합니다. Goal의 스크립트(준비됨)는 레벨의 빌드 인덱스를 사용해 Progress.Instance.LevelDone(level)을 호출합니다.

Progress.cs:

  • Progress는 게임 전체에 걸쳐 유지되며 언제나 하나만 존재합니다. Progress.Instance로 접근하지만, Menu가 로드될 때마다 새로 하나를 만듭니다.
  • unlocked는 플레이어가 플레이할 수 있는 가장 높은 레벨입니다(시작 시 1). LevelDone(int level)은 다음 레벨을 잠금 해제하고, 이미 열려 있던 레벨은 잠그지 않으며, Menu로 돌아갑니다.

LevelSelect.cs: Start에서 각 버튼에 해당 레벨을 로드하는 리스너를 지정하고(첫 번째 버튼은 Level1, 이런 식으로), 레벨이 잠금 해제된 경우에만 버튼을 클릭할 수 있도록 합니다.

Play를 누르고, 순서대로 레벨을 플레이한 다음 Level 1을 다시 플레이하고, Check를 누르세요.

직접 해보기

using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;

public class LevelSelect : MonoBehaviour
{
    public Button[] levelButtons;

    void Start()
    {
        // 각 버튼은 해당 레벨을 열며, 잠긴 레벨은 클릭할 수 없습니다
    }
}

실제 게임 만들기의 모든 레슨