inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[유니티 레벨 업!] 모듈식으로 개발하는 퀘스트&업적 시스템

Quest System 구현

퀘스트 시스템 작성 이후 테스트 과정에서 오류가 납니다.

292

김욱진

작성한 질문수 1

0

NullReferenceException: Object reference not set to an instance of an object

QuestSystemTest.Start () (at Assets/WJ/Ouest/QuestTest/QuestSystemTest.cs:18)

퀘스트 시스템 작성 후 퀘스트 시스템 테스트 스크립트를 만들어 실행했는데 위와 같은 오류가 나오면서 제대로 테스트할 수 없습니다.

questSystem.onQuestRegistered += (quest) =>

{

print($"New Quest:{quest.CodeName} Registered");

print($"Active Quests Count:{questSystem.ActiveQuests.Count}");

};

18번 라인은 다음과 같은데 어디서 문제가 생긴걸까요?


더하여 혹시 가능하다면 델리게이트, 이벤트 사용법과 람다식응용에 대한 설명도 들을 수 있을지 질문드리고싶습니다.

 

감사합니다.

 

unity

답변 1

1

Developer G

수강해주셔서 감사합니다.

 

18번 행에서 null 에러가 뜨는 것으로 보아 윗줄의 QuestSystem.Instance가 null인 것으로 보입니다.

QuestSystem 스크립트의 26번 줄부터 다음과 같이 정확히 작성되어 있는지 확인해보셔야 할 것 같습니다.

public static QuestSystem Instance
{
get
{
if (!isApplicationQuitting && instance == null)
{
instance = FindObjectOfType<QuestSystem>();
if (instance == null)
{
instance = new GameObject("Quest System").AddComponent<QuestSystem>();
DontDestroyOnLoad(instance.gameObject);
}
}
return instance;
}
}

델리게이트, 이벤트 사용법과 람다식 응용은 섹션 2 실전 적용편에서 UI를 이벤트 기반으로 제작하며 한번 더 응용법을 보여주기 때문에 해당 부분을 보시고 추가적인 질문 사항이 있으시면 답변해 드리겠습니다.

감사합니다.

Task 구현 28:36 Equals 에서 잘 모르는 부분이 있습니다.

0

45

2

Quest System의 확장성에 대한 질문

0

111

1

공부 방향에 대해 궁금한 점이 있습니다.

0

152

2

End()와 Complete() 함수를 따로 구현한 의도

0

178

2

Target의 value에 Object 자료형 관련 질문입니다!

0

158

2

TaskGroupState에 대하여 질문이 있습니다

0

118

2

Elite와 Normal Germ의 IsTarget()질문입니다.

0

109

2

퀘스트 시스템을 확장하면서 생긴 의문점 입니다.

0

181

2

퀘스트 클리어해도 동일 퀘스트가 노출됩니다

1

141

3

퀘스트 누적 클리어 횟수에 대해 여쭤보고싶습니다.

0

93

1

프로퍼티 사용 질문입니다.

0

125

1

Task 에서 Object 타입 사용

0

131

2

파일 저장방식, 퀘스트 실패에 관하여 여쭤보고싶습니다.

0

239

1

Destroy() 지연 파괴에 관하여

0

147

1

Action & Delegate

0

184

2

강의에서 리워드 관련 언급은 없으셔서 질문드립니다.

0

286

1

궁금한게있습니다

0

304

1

스크립터블 오브젝트 Instantiate?

0

448

1

원하는 타이밍에 퀘스트를 등록하고 싶다면 어떻게 해야할까요

0

345

1

Quest Cancel() 메소드

0

272

2

Task의 IsEqual

0

234

1

실전예제 UI 자료

0

205

1

스크립터블 오브젝트

1

337

1

Task 예시

1

179

1