2022. 1. 20. 11:19ㆍUnity3D/수업 과제
1) 버튼을 만들고 누르면 캐릭터가 깃발까지 이동하게 한다. 깃발에 도착 시 멈춤.
2) 트랩을 만들고 캐릭터가 트랩에 닿으면 hp가 감소.
3) 골드를 만들고 캐릭터가 골드에 닿으면 gold가 증가.
※ UI 상으로 깃발까지의 거리, 캐릭터의 남은 hp, 캐릭터가 보유한 gold가 표기되게 한다.
[소스코드 특이사항]
1) Canvas의 이름을 UIManager로 바꾸고 UI들을 관리할 스크립트를 넣음.
그 스크립트에는 static bool 변수가 있어서 버튼이 눌렸을 때 bool을 false로 바꾼다.
캐릭터가 이 public static bool 변수를 보고 움직여야 하는지 아닌지 판단한다.
2) GameManager 오브젝트에 모든 오브젝트의 충돌을 감지하는 스크립트를 넣는다.
스크립트의 멤버로 게임오브젝트 리스트를 만들었다.
캐릭터와 충돌할 수 있는 모든 오브젝트가 그 리스트에 들어간다.
3) GameManager 스크립트에서 반복적으로 리스트를 순회하며 캐릭터와의 거리를 계산한다.
캐릭터와 충돌했다고 감지했을 때, 캐릭터 스크립트에 있는 OnHit 대리자에
오브젝트와 충돌했을 때 실행할 함수를 넣고, 실행한다.
소스코드 GitHub 주소 : https://github.com/hanamc99/UnityGukbi/tree/Cat-Escape-Two/MiniTest/Assets/Scripts
GitHub - hanamc99/UnityGukbi
Contribute to hanamc99/UnityGukbi development by creating an account on GitHub.
github.com
'Unity3D > 수업 과제' 카테고리의 다른 글
22.02.09 유저 인터페이스 완성하기 (0) | 2022.02.09 |
---|---|
22.01.26 논스톱 나이트 모작하기 (0) | 2022.01.26 |
22.01.19 Cat Escape Two (0) | 2022.01.19 |
22.01.18 Cat Escape 피하기 게임 만들기 (0) | 2022.01.18 |
22.01.17 [홈워크] 표창 던지기 (0) | 2022.01.17 |