inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

Quest System 구현

IndexoutofRange, Debug.Assert에러 나시는 분들 코드 수정

255

Lim sumin

작성한 질문수 15

2

  1. IndexoutofRange 에러


    -> QuestSystem Awake의 foreach 부분 주석처리 해주시면 됩니다. achievement 등록이 되어있지 않아서 그런 것 같습니다.

     

  2. Debug.Assert에러 나시는 분들
    ReceiveReport, CheckIsRunning 함수의 IsRegistered 가 false로 등록되어 있어서 그런 것 같습니다.
    Debug.Assert(IsRegistered, "This quest has already been registered."); 이 코드 IsRegistered 앞에 " ! "가 붙어 있다면 빼주세요.

unity

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.
Limsumin님, 유니티 레벨 업! 모듈식 개발 강의 중 겪고 계신 문제에 대한 해결 방안을 알려드리겠습니다.

  1. IndexOutOfRangeException 에러는 QuestSystem의 Awake 함수 내 foreach 부분에서 발생하는 것 같습니다. 에러 메시지가 나타나는 이유는 업적(achievement)이 등록되지 않아 발생하는 것으로 추정됩니다. 이 부분을 주석 처리하면 에러가 해결될 것입니다.

  2. Debug.Assert 오류의 경우, ReceiveReport나 CheckIsRunning 함수에서 IsRegistered 변수가 false로 등록되어 있어 발생하는 것 같습니다. 오류 메시지 “This quest has already been registered.“는 IsRegistered가 true일 때 나타나야 하는데, 조건을 반대로 검사하고 있기 때문에 문제가 발생합니다. 해당 코드에서 “!” (부정연산자)가 IsRegistered 앞에 붙어 있다면 제거해야 올바르게 동작할 것입니다.

두 문제 모두 강의 내용을 잘 따라가면서 코드를 수정해 보세요. 추가적인 질문이 있으시다면 언제든지 문의하시기 바랍니다.

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

0

30

2

Quest System의 확장성에 대한 질문

0

108

1

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

0

145

2

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

0

170

2

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

0

151

2

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

0

114

2

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

0

102

2

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

0

168

2

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

1

132

3

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

0

87

1

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

0

121

1

Task 에서 Object 타입 사용

0

122

2

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

0

220

1

Destroy() 지연 파괴에 관하여

0

142

1

Action & Delegate

0

181

2

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

0

281

1

궁금한게있습니다

0

296

1

스크립터블 오브젝트 Instantiate?

0

441

1

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

0

343

1

Quest Cancel() 메소드

0

267

2

Task의 IsEqual

0

230

1

실전예제 UI 자료

0

198

1

스크립터블 오브젝트

1

331

1

Task 예시

1

170

1