주녘공부일지

[ShootingGame] 12. 마무리 구현 // 강의 내용 마무리 본문

GameDevelopment/[Unity] Lecture

[ShootingGame] 12. 마무리 구현 // 강의 내용 마무리

주녘 2022. 2. 9. 18:44

 

Scripts.zip
0.01MB

 

 

 

0. 주요 클래스 선언된 변수 한 눈에 보기

각 클래스에 선언된 변수들

 

- 강의라 모두 퍼블릭으로 선언하였지만, 외부에서 접근이 반드시 필요한 아이가 아니라면, 지양하는 것이 좋음

 

 

1. 플레이어 무적 시간

class Player

 

OnEnable() : 오브젝트가 활성화 될때마다 호출되는 함수

- 조건문으로 처음 시작할 땐 무적타임x

 

Unbeatable() : 무적 상태를 변경하는 함수

- 투명도를 올려 무적 상태를 나타냄

 

class Player - OnTriggerEnter2D() : 무적타임 확인 로직 추가

 

 

2. 폭발 효과

프리팹 Explosion 생성 - 기본 이미지는 Null로 설정하고 애니메이터의 파라미터에 Trigger로 Onexplosion 추가

+ 오브젝트 풀링에 등록 // objectManager

 

class Explosion

 

StartExplosion() : target의 타입에 따라 폭발하는 애니메이션 크기 변경

 

class GameManager

 

class Enemy에서 로직을 추가해 사용

ex) gameManager.CallExplosion(transform.position, enemyName);

 

 

3. 컨트롤 UI

Canvas Rander Mode 설정으로 카메라에 Canvas를 맞춰 편하게 확인
UI 추가 - Button은 Event Trigger로 컨트롤
Button LT (0) / class Player // 이동 로직 변경 ( 키보드 -> 터치 )

Pointer Down : 눌렀을 때 호출

Pointer Up : 누른 버튼을 떼었을 때 호출

Pointer Enter : 커서가 영역 안에 있을 때 반복 호출 ( 모바일에서는 터치된 상태 )

 

class Player // 로직 변경 ( 마우스 키 -> 터치 )

 

 

4. 스테이지 관리

Stage Text, Clear Text, Fad Black 에 원하는 애니메이션 설정 (생략)
스테이지 테스트 데이터

 

class GameManager

 

- 게임이 시작하면 StageStart() 호출 // Awake()문

- 보스를 잡으면 StageEnd() 호출 // class Enemy - OnHit()

 

class Enemy - OnHit() // class Player - PlayerReset()

 

- 다음 스테이지로 넘어가면 플레이어 상태를 다시 세팅 // class Player - PlayerReset()

 

+ 이외의 부드러운 게임 진행을 위하여 각종 로직 추가 ( 첨부파일 확인 )

 

 

https://github.com/godgjwnsgur7/ShootingGame

 

GitHub - godgjwnsgur7/ShootingGame

Contribute to godgjwnsgur7/ShootingGame development by creating an account on GitHub.

github.com

강의 출처

https://www.youtube.com/watch?v=wM2IfVuEYYE&list=PLO-mt5Iu5TeYtWvM9eN-xnwRbyUAMWd3b&index=12