inflearn logo
강의

講義

知識共有

[ユニティレベルアップ!] モジュール式で開発するクエスト&実績システム

Task 目標表示のための Quest Target Marker 製作

QuestTargetMarker 스크립트 오류

解決済みの質問

338

dlaghgus20009908

投稿した質問数 2

0

private Dictionary<Quest, Task> targetTasksByQuest = new Dictionary<Quest, Task>();

 

private void OnDestroy()

    {

        QuestSystem.Instance.onQuestRegistered -= TryAddTargetQuest;

 

        foreach ((Quest quest, Task task) in targetTasksByQuest)

        {

            quest.onNewTaskGroup -= UpdateTargetTask;

            quest.onCompleted -= RemoveTargetQuest;

            task.onStateChanged -= UpdateRunningTargetTaskCount;

        }

    }

 

에러내용

1. CS1061 - 'KeyValuePair<Quest, Task>'에는 'Deconstruct'에 대한 정의가 포함되어 있지않고, 'KeyValuePair<Quest, Task>' 형식의 첫 번째 인수를 허용하는 엑세스 가능한 확장 메서드 'Deconstruct'이(가) 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하세요.

2. CS8129 - 2 out 매개 변수 및 void 반환 형식을 사용하는 'keyValuePair<Quest, Task>' 형식에 대한 적절한 분해 인스턴스 또는 확장 메서드를 찾을 수 없습니다.

 

 

1. foreach문에서 빨간색으로 표시한 부분이 에러가 계속 나고 있습니다.  올려주신 수업자료를 복붙해도 4번 강의를 계속 돌려보며 고쳐도 고쳐지지가 않네요...

2. 혹시 수업 자료 풀버전은 따로 올린곳이 있을까요? 현재 챕터마다 수업자료가 흩어져있거나 누락된게 있어서 보기가 어렵네요..

unity

回答 2

1

Developer G

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

정보가 부족하여 해당 부분이 오류를 띄우는 이유에 대해선 정확히 알 수 없으나, 유니티나 비주얼 스튜디오가 구버전이라 C# Net 버전이 낮은게 아니신가 추측해봅니다. 

해당 부분을 다음과 같이 수정하시면 진행하실 수 있습니다.

        foreach (var keyPair in targetTasksByQuest)

        {
            var quest = keyPair.key;
            var task = keyPair.value;

            quest.onNewTaskGroup -= UpdateTargetTask;

            quest.onCompleted -= RemoveTargetQuest;

            task.onStateChanged -= UpdateRunningTargetTaskCount;

        }

전체 스크립트 파일은 강의 마지막 영상에 업로드 해놨으니 확인해보시면 될 것 같습니다.
감사합니다.

0

dlaghgus20009908

감사합니다. 유니티는 최신버전을 쓰고있고 비쥬얼 스튜디오는 2019버전을 쓰고 있어서 버전을 2022로 바꾸었는데도 오류가 계속 떠서 알려주신 방법으로 해결하였습니다.

0

Hyodong Woo

저도 동일한 오류였는데.. 답변주신 내용은 수정해서 해결했습니다.  

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

0

27

2

Quest System의 확장성에 대한 질문

0

108

1

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

0

144

2

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

0

167

2

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

0

150

2

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

0

113

2

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

0

101

2

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

0

167

2

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

1

130

3

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

0

85

1

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

0

120

1

Task 에서 Object 타입 사용

0

121

2

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

0

218

1

Destroy() 지연 파괴에 관하여

0

141

1

Action & Delegate

0

180

2

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

0

278

1

궁금한게있습니다

0

294

1

스크립터블 오브젝트 Instantiate?

0

439

1

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

0

341

1

Quest Cancel() 메소드

0

266

2

Task의 IsEqual

0

229

1

실전예제 UI 자료

0

197

1

스크립터블 오브젝트

1

328

1

Task 예시

1

169

1