난이도 높이기

maxHitPoints에 difficultRamp를 더함으로써 적이 죽을 수록 나오는 적들의 hp가 많아지게 했다. 

체력 높이기

 

리팩토링

경로를 문자열로 체크해 배열에 넣는 방법은 씬의 태그 객체를 찾을 때 계층에서 명시한 순서대로 되지 않을 수 있다. (경로 순서) => 무작위로 움직일 수도 있다.

각각 타일의 Tag를 없애고

Tag 떼기

그 상위 객체에 Tag를 붙인다.

Tag 붙이기

부모의 transform으로부터 foreach로 자식을 검색하는 것이 가능하다.

foeach 부모 transform

이후 WayPoint에 잘못된 값이 들어가는 것을 방지하기 위해 조건을 걸어준다.

null 방지

경로 완료를 코루틴으로부터 떼어냈다.

리팩토링1

spawnTimer가 0보다 작으면 에러가 나고 0이면 게임이 터질 수도 있다. -> 양수로 제한을 걸어야함

문제

30까지 해준 이유는 보스전 등 이벤트일 때 30초까지 설정할 수 있게 해준 것이다.

리팩토링2

위와 같은 이유로 양수로 설정해야 한다.

문제2
리팩토링3

CoordinateLabeler는 label을 변수에 할당하는데 같은 객체여야 한다.

문제3
리팩토링4

함수의 이름을 알아보기 힘든 것은 쉽게 바꿔준다.

ColorCoodinates
SetLabelColor

UnityEditor.EditorSnapSettings와 같은 유니티 에디터 관련 요소는 최종 프로젝트에 들어갈 수 없다는 문제가 있어 에러가 날 것이다.

UnityEditor.EditorSnapSettings

에디터 폴더는 최종 프로젝트를 설계할 때 무시되는 걸 이용하여 여기에 해당 스크립트를 넣는다.

Editor

* 하지만 저 파일에 넣으면 이 폴더 안에 있는 스크립트도 모든 씬 객체에 추가되지 않게 되니 최종 프로젝트를 설계할 때만 옮기면 된다.

 

'유데미 강의 > C#과 Unity로 3D 게임 개발하기 : 레엄 러쉬' 카테고리의 다른 글

순수 C# 클래스  (0) 2022.09.08
길 찾기 알고리즘  (0) 2022.09.07
UI 텍스트  (0) 2022.09.06
통화 시스템  (0) 2022.09.06
타워 가까운 타겟 찾기  (0) 2022.09.06

+ Recent posts