본문 바로가기
개발 (Game)/(2021) Unity RTS 포트폴리오

[Day 9-1] AI 자동 공격 및 리타겟팅 완료

by 진현개발일기 2021. 7. 20.

[2021. 07. 20, Tue] 

 

처음 공격 함수를 짰을 때 문제가 조금 있었다.

 

수정 전 공격 코드
계속 오류가 났다.

 

[디버깅 테스트1]

일단 enemies(적국 리스트)의 문제가 아니다.

[디버깅 테스트2]

 

[디버깅 테스트3]

- 타일 오너에 접근이 가능한지를 부터 확인하였다.

타일 오너가 아닌 타일 오너의 국가를 읽어오는 과정에서의 문제였다.

아마  월드 타일스크립트에 들어간 다음 그 안에서 타일주인의 Unit.cs의 스크립트 안의 Nation을 확인하는 시간이 오래 걸렸나보다.

WorldTile.cs에 타일오너 뿐만이 아닌 타일 오너의 국가를 저장하는 변수를 만들었다.
공격 함수 또한 수정해봤다.
이제는 국가의 정보 또한 잘 받아온다.

그런데 게임 매니저에서 AI국가들의 턴을 넘기는데 중간에 계속 막히는 것이다.

 

두 가지의 문제를 발견했다.

다음 차례의 국가의 턴을 active true 시켜주는 함수인데 조건문의 -1을 붙인 것이 잘못이였다.

 

[QA 50회 실시]

QA 50번 성공함(문제 없음)

 

[EnemyAI.cs 리팩토링 전]

[EnemyAI.cs 리팩토링 후]

이름 EnemiesAttack -> aiAttack
(예) 함수 사용
러시아(AI)가 중립국(AI) 중 하나를 점령한 모습

 

[리타겟팅]

 

Building이 피가 0이 되었을 때
EnemyAI.cs
적국이 한 개라도 있을 경우 재탐색한다.

728x90