inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[유니티6] 따라하면서 배우는 하이퍼캐주얼게임 시리즈 01

추가 구현

zigzag에 quit 버튼 추가

해결된 질문

277

Angela Moon

작성한 질문수 2

0

강의를 다 듣고 응용을 해보는 중입니다.
첫 화면에 quit 버튼을 추가하여 클릭 시에 앱이 꺼지도록
설정하고 싶은데 클릭을 하면 바로 게임이 시작되어 버튼 클릭
이벤트가 먹히지를 않네요..
 
나름 생각을 해서 GameController의 Start 메소드 내 while문에 이렇게 작성을 해봤는데 버튼 클릭이 아예 먹히지 않는게 순서가 옳지 않은 듯 하네요. 혹시 조언을 구할 수 있을까요?

C# unity

답변 1

0

고박사

UnityEngine.EventSystems 이름공간에 정의되어 있는

클래스의 메소드 중에 UI를 터치했는지 검사하는 메소드가 있습니다.

UnityEngine.EventSystems.EventSystem.current.IsPointerOverGameObject()

 

이 값이 true이면 UI를 선택했다는 뜻이기 때문에 GameController 스크립트의

Start 메소드에 마우스 왼쪽 버튼을 눌렀을 때 조건으로 함께 추가를 해줍니다.

그러면 UI가 아닌 다른 곳을 선택했을 때만 게임이 실행됩니다.

 

 

PlayerController의 Update()에서 마우스 왼쪽 버튼이 눌렸을 때 이동방향을 바꾸는 코드가 실행되기 때문에 gameController.IsGameStart != true 이면 실행하지 말라는 코드도 함께 추가해줍니다.

 

여기까지만 작성해도 버튼을 누를 때는 버튼의 이벤트가 실행되고,

버튼이 아닌 곳을 누를 때는 게임이 실행됩니다.

다만 버튼이 아닌 다른 UI를 누를때도 게임이 실행되지 않기 때문에

아래 그림과 같이 시작화면에 나오는 PanelGameStart 오브젝트에

CanvasGroup 컴포넌트를 추가하고, Blocks Raycasts 변수를 비활성화합니다.

(TextTitle, Text.. 등의 UI 하나하나 Raycast를 끄는게 귀찮기 때문에 부모 오브젝트에서 CanvasGroup으로 한꺼번에 제어)

 

 

 

0

Angela Moon

우와 너무 감사합니다. 알려주신 것 참고해서 수정하니 잘 작동되네요. 늘 감사합니다!

StageController

0

82

2

ZIGZAG강의중 Start를 Coroutine으로 사용하는 이유가 무엇인가요?

0

258

1

[2D Pin Circle Game] 회전 질문

0

396

1

2D에서 navmesh를 사용하는 방법이 궁금합니다.

1

3667

1

Object를 유니티에서 직접 설정하는것과 파라미터로 전달하는것의 차이가 있나요

0

318

2

StartCoroutine 파라미터에 함수넣는것과 문자열 넣는것의 차이가 뭔가요?

0

416

2

수업관련 질문이 있습니다

0

332

2

IEnumerator 사용이유?

0

507

1

2D Wave.Io 카메라 흔들기 질문

0

282

1

2D Wave.io 에서 IEnumerator 질문

0

325

1

여기서 래디안을 구하는 이유가 이해가 안갑니다.

0

1365

2

2020.3.0f1 Unity Package Manager Error

0

2173

2

2d pin throwablepin 관련 질문

0

346

1

ZIGZAG, 카메라 컨트롤러 질문

0

267

1

유니티 이벤트 질문

0

298

1

2d wave에서 충돌처리가 안 되요

1

356

1

오디오소스 아이콘

0

381

1

ppt 자료는 어디서 받아야 해요?

0

408

1

2D 게임에서 Z값의 변경이 영향을 주는 경우가 있을까요?

1

739

1

for 반복문 작성시 후위 증가 연산자를 쓰는 이유가 궁금합니다

1

438

1

TPinDistance 프로퍼티 관련 질문드립니다

1

236

1

리셋버튼이 스테이지1로 바꿔주지 않습니다.

2

242

1

지그재그 타일생성 질문있습니다.

1

408

1

PinSpawner 스크립트를 추가하는 과정에서 오류가 발생합니다.

0

224

1