통화시스템
은행
- 플레이어를 위해 통화의 잔액을 보관하고 보증금과 계좌 인출을 담당한다.
타워
- 타워를 지을려면 은행에서 돈을 인출해야한다.
적
- 타워가 적을 죽이면 계좌에 돈을 예금한다.
- 경로의 끝에 이르면 계좌에서 돈을 훔친다.
Bank에서 Deposit과 Withdraw를 관리하고 Mathf.Abs로 amout 값이 -가 들어와도 양수 값으로 받게 했다.
Enemy 스크립트에선 goldReawrd와 goldPenalty 설정하여 bank의 Deposit, Widraw를 호출하게 했다.
EnemyHealth에서 적이 죽었을 때 RewardGold를 호출하게 했다.
적이 경로 끝에 도착했을 때 StealGold를 호출하게 했다.
타워 프리펩을 설치할 수 있으면 bool을 반환하는 CreateTower를 호출하여 isPlaced에 대입하고 isPlaceable의 값을 다시 바꿔준다.
타워와 위치 값을 받아서 Bank의 잔고보다 비용이 작으면 타워를 생성하고 비용만큼 인출하는 코드이다.
타워의 잔고가 0 미만일 때 씬을 재로드한다.
'유데미 강의 > C#과 Unity로 3D 게임 개발하기 : 레엄 러쉬' 카테고리의 다른 글
리팩토링 (0) | 2022.09.06 |
---|---|
UI 텍스트 (0) | 2022.09.06 |
타워 가까운 타겟 찾기 (0) | 2022.09.06 |
오브젝트 풀링 (0) | 2022.09.06 |
경로 찾기 (0) | 2022.09.06 |