-
카테고리
-
세부 분야
게임 프로그래밍
-
해결 여부
미해결
강의 5:04분 GetPlayer 질문입니다!
22.01.17 18:02 작성 조회수 157
0
GameManagerEx가 있기 전에는 FindObjectWithTag로 "Player"라는 Tag를 가진 Object를 찾아 주어서 없으면 null값으로 return;을 해버리고 끝내는 방식 이였는데
이전시간에 GameManagerEx를 만들고나서
5:04초 쯤에 GameManagerEx부분에 public GameObject GetPlayer { return _player; }이렇게
GameObject를 반환하는 함수를 구현을 해주었습니다.
그런데 제 생각에는
GetPlayer는 _player를 return만 하는 함수이지
FindObjectWithTag처럼 "Player"라는 Tag를 가진 오브젝트를 찾아서 반환을 하지 않고
GameObject를 return만 해주고 있는데
어떤 이유에서 FindObjectWithTag를 GetPlayer가 대체?를 할 수 있는 것인가요??
(GameManagerEx에서는 스폰, 디스폰, GetWorldObjectType 함수만 구현이 되있는 상태입니다.)
답변을 작성해보세요.
0
Rookiss
지식공유자2022.01.18
정답은 코드에 있습니다.
Spawn할 때 _player변수에다 기억을 하고 있기 때문이죠.
public GameObject Spawn(Define.WorldObject type, string path, Transform parent = null)
{
GameObject go = Managers.Resource.Instantiate(path, parent);
switch (type)
{
case Define.WorldObject.Monster:
_monsters.Add(go);
if (OnSpawnEvent != null)
OnSpawnEvent.Invoke(1);
break;
case Define.WorldObject.Player:
_player = go; // << 이 부분!
break;
}
return go;
}
답변 1