UnassignedReferenceException
오류가 떴다.
플레이어가 폭탄을 쓰는데 난 에러
참고한 유튭링크
for (int i = 0; i < enemiesM.Length; i++)
{
Enemy enemyLogic = enemiesM[i].GetComponent<Enemy>();
enemyLogic.OnHit(1000);
}
코드에서 enemyLogic을 불러오지 못하는 상황이였다
하지만 처음에는 Debug.Log
에서 불러온다고 찍혀 무척 더 헷갈렸는데 생각해보니 오브젝트 풀링을 사용하여 이미 여러 enemy가 불러와져 있으니 당연히 제대로 실행되는것 도 있고 안되는 것도 있었던 거다.
비활성화 된 상태에서는 enemyLogic을 불러오지 못하니 중간에 조건을 한번 더 추가해 준다
for (int i = 0; i < enemiesM.Length; i++)
{
if (enemiesM[i].activeSelf)
{
Enemy enemyLogic = enemiesM[i].GetComponent<Enemy>();
enemyLogic.OnHit(1000);
}
}
해결이다.