메인메뉴
다음과 같은 UI작업을 먼저 해주었다.
빈 오브젝트 GameManagerLobby 를 만들고 새로운 스크립트 LobbyGameManager를 생성한다.
코드는 다음과 같이 작성한다.
checkRuben bool형 변수를 활용하여 panel의 키고 끄는 것을 제어한다.
생성해둔 버튼에 새로운 스크립트 LevelSelection을 생성한다.
코드는 다음과 같다 bool형 변수 unlocked를 통해 image의 A값을 제어한다.
또한 버튼을 눌렀을 시 씬을 불러오는 함수를 작성하고 인자로는 이동할 맵 이름을 문자열로 입력받도록 한다.
새로운 오브젝트 & 스크립트인 MainManager를 생성한다. 해당 오브젝트는 플레이어의 현재 클리어한 stage를 저장할 것 이므로 모든 맵에 이 오브젝트가 들어있어야 한다.
nowStage는 클리어한 스테이지를 저장하며 stages배열에는 맵의 버튼 오브젝트들을 넣는다.
또한 GameClear()함수를 통해 해당 맵에서 게임을 클리어 하면 nowStage를 1 증가시켜 저장하는 함수를 간단하게 작성하였다.
Load같은 경우는 Update함수안에 넣어 지속적으로 불러올 수 있도록 하였다.
간단하게 게임화면에 clear버튼을 생성하고 MainManager 스크립트의 GameClear함수를 실행하였다.
NowStage변수가 0 -> 1로 증가하였고 스테이지 이미지도 불이 들어온 모습이다.
'유니티 > 토이프로젝트 - 엘리듬' 카테고리의 다른 글
엘리듬(2일차) - 장애물 피격, 일시정지, 재시작, 체력바 UI (0) | 2023.01.28 |
---|---|
엘리듬(1일차) - 캐릭터 이동, 매트로놈 생성,장애물 소환 (0) | 2023.01.27 |