작성
·
438
0
else if(type == typeof(ProjectileController))
{
GameObject go = Managers.Resource.Instantiate("FireProjectile.prefab", pooling: true);
go.transform.position = position;
ProjectileController pc = go.GetOrAddComponent<ProjectileController>();
Projectiles.Add(pc);
pc.Init();
return pc as T;
}
총알이 계속 안불러와져서 코드실수인가 해서 계속 체크하다가 중단점 잡고 보니
else if (typeof(T).IsSubclassOf(typeof(ProjectileController)))
이 부분을
else if(type == typeof(ProjectileController))
이렇게 바꾸고나니 총알이 제대로 불러와지더라구요
뭐가 문제인가요?? 강사님 코드에서는 isSubclassOf 를 쓰셔도 잘 발사가 되는거 같은데
답변 1
0
ProjectileController로 디버깅을 하신게 맞을까요?
그리고 사실 typeof는 느리기 때문에 굳이 이 방식보다는
귀찮더라도 enum을 넣어서 처리하는게 더 낫습니다 !
despawn 쪽은 enum으로 해결했는데 spawn쪽을 어떻게 수정해야하는지 감이 잘 안잡혀요