게임 클리어되었을때 NEXT버튼이나 게임오버시 RESTART 버튼을 사용할 수 있도록 해보겠습니다.
씬 변경 스크립트 만들기
프로젝트뷰 +를 클릭해 ChangeScene이름의 스크립트를 만듭니다.
씬매니저를 사용하기 위해 using UnityEngine.SceneManagement; 를 선업합니다.
불러올 씬을 참조하기 위해 public string SceneName; 변수를 선언합니다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
public class ChangeScene : MonoBehaviour
{
public string SceneName; //불러올씬
// Start is called before the first frame update
void Start(){
}
// Update is called once per frame
void Update(){
}
public void Load() {
SceneManager.LoadScene(SceneName);
}
}
저장합니다. 하이라키의 RestartButtong과 NextButtong에 ChangeScene 스크립트를 어태치 합니다.
이제 RestartButton을 누르면 ChangeScene스크립트의 Load()가 실행되게 만들겁니다.
우선 하이라키의 RestartButtong을 선택후 인스펙트뷰의 OnClick의 +를 눌러 리스트를 하나 생성합니다.
하이라키의 RestartButton을 끌어다 OnClick() None에 놓습니다. NoFuction을 선택해 팝업이 나오면 ChagneScene>Load()를 선택합니다. 오른쪽같이 변경되어야 합니다.
스크립트의 Scene Name에 Stage1이라고 입력합니다.
하이라키의 Canvas를 프로젝터뷰로 드래그앤드랍해서 프리팹으로 만들어줍니다. UI가 동작하기 위해서는 EventSystem도 필요한데 프리팹에는 포함되어 있지 않기 때문에 나중에 +를 눌러 추가할 수 있습니다.
현재 Scene의 이름이 SampleScene입니다. 이름을 Scene1으로 변경하겠습니다. 리로드해줍니다.
'유니티2D게임 > 버튼과 UI' 카테고리의 다른 글
게임과 UI를 관리하는 스크립트 만들기 (0) | 2023.05.14 |
---|---|
게임UI 만들기 (3) | 2023.05.14 |