게임 플레이 추가 작업

코인 표시

적 보스 캐릭터 등장 표시

결과창 제작

  • 위 내용은 이미 작성되어있기 때문에 추가로 필요한 작업이 없습니다.

    직접 진행하고 싶으신 분들은 책 299~316 페이지를 확인하세요.

코인 제작

  • coins 스프라이트 편집

  • 씬에 배치(name : coin, Sorting Layer : ForeGround)

  • 애니메이션 제작(coin)

표 3-87: 프레임별 스프라이트

프레임

스프라이트

0

coins_0

1

coins_1

2

coins_3

3

coins_2

4

coins_4

5

coins_5

6

coins_0

7

coins_1

8

coins_3

9

coins_2

10

coins_4

11

coins_5

12

coins_0

표 3-88: 프레임 별 Transform 컴포넌트 Position 입력 값

프레임

Transform 컴포넌트 Position

0

0, 0, 0

2

0, 0.5, 0

4

0, 0, 0

9

0, 0, 0

12

0, 2, 0

  • Position.y 커브 편집

  • coin Controller 편집

코인 스크립트 제작 및 적용

예제 3-76: Coin.cs

  • coin Prefab 제작

  • coin 게임 오브젝트에 Coin 컴포넌트 추가

  • coin 애니메이션 12프레임에 Add Event로 EndCoinAnimation 연결

  • 빈 게임 오브젝트를 만들어 coinRoot로 이름짓고 coin 게임 오브젝트를 자식으로 넣는다.

  • Assets/Prefab 폴더에 프리팹 생성하여 coinRoot를 할당

예제 3-77: GamePlayManager.cs

예제 3-78: GamePlayManager.cs

예제 3-79: GamePlayManager.cs

예제 3-80: Enemy.cs

예제 3-80는 책에서는 DeadEnd이나 게임 플레이 매니저에서 이미 제작된 ResetEnemy를 활용하도록 변경하였습니다. 이후에 등장하는 DeadEnd도 모두 ResetEnemy로 변경할 것입니다.

  • @GM 게임 오브젝트의 GamePlayManager에 아래 사항 연결

속성

Coin Obj

coin 프리팹

Coin Lb

CoinLabel 게임 오브젝트

결과창 연결

예제 3-81: GamePlayManager.cs

예제 3-82: GamePlayManager.cs

예제 3-83: Enemy.cs

예제 3-84: GamePlayManager.cs

예제 3-85: GamePlayManager.cs

예제 3-86: Enemy.cs

예제 3-87: GamePlayManager.cs

예제 3-88: GamePlayManager.cs

  • 결과창 연결

GamePlayManager 인스펙터 값 이름

게임 오브젝트 이름

Result Window

ResultWindow

Result High Score Lb

HighScoreLabel

Result Now Score Lb

CurrentScoreLabel

Result Wave Lb

WaveResultLabel

Result Dead Enemys Lb

EnemyLabel

Result Get Coins Lb

4_CoinSectionBG의 자식 게임오브젝트 CoinLabel

발사 게임 오브젝트 수정

예제 3-89: ShotObj.cs

예제 3-90: ShotObj.cs

  • 책 335페이지의 AttackAndRemove 메서드는 앞서 제작한 새로운 적 캐릭터 추가의 예제 3-48에 나온 AttackAndDestroy 메서드를 지칭하는 것입니다. 여기서는 앞서 제작한 이름 그대로 AttackAndDestroy로 사용합니다.

예제 3-91: ShotObj.cs

예제 3-92: EnemyShotObj.cs

예제 3-93: FamerTouchControl.cs

예제 3-94: FarmerTouchControl.cs

예제 3-95: FarmerTouchControl.cs

  • 예제 3-96: EnemyRanged.cs의 내용은 앞서 제작한 새로운 적 캐릭터 추가에서 이미 추가한 내용으로 여기서는 제외했습니다.

예제 3-97: EnemyRanged.cs

게임 준비와 홈 이동 버튼 연동

예제 3-98: GamePlayManager.Button.cs

예제 3-99: GameData.cs

예제 3-100: GamePlayManager.Button.cs

표 3-89: UIButton 컴포넌트 설정

게임 오브젝트

Target

Notify

Method

ReGameButton

ReGameButton

@GM

GamePlayManager.ClickReGameButton

ResultHomeButton

ResultHomeButton

@GM

GamePlayManager.ClickResultHomeButton

  • Pause Widnow 연결

GamePlayManager.Button.cs

게임 오브젝트

Target

Notify

Method

HomeButton

HomeButton

@GM

GamePlayManager.ClickPauseHomeButton

PlayButton

PlayButton

@GM

GamePlayManager.ClickPausePlayButton

  • 게임 플레이 시 invisibleArea 태그를 추가하라는 에러가 나오면 태그를 추가합니다.

Last updated

Was this helpful?