인프런 커뮤니티 질문&답변

Bina님의 프로필 이미지
Bina

작성한 질문수

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

Task 스크립트의 InitialSuccessValue에 대해서

해결된 질문

작성

·

143

0

Task 스크립트의 InitialSuccessValue에서 플레이어 레벨이나 스탯을 예로 설명해주셨는데, 만약 예를 들어주신대로 Task를 구성한다고 하면 InitialSuccessValue를 어떻게 구성해서 플레이어의 정보를 넘겨야할까요?

스스로 답이안나와서 질문해봅니다 ㅠㅠ

답변 1

0

Developer G님의 프로필 이미지
Developer G
지식공유자

너무 어렵게 생각하실 필요 없습니다.
다음과 같이 간단히 작성하실 수 있습니다.

// 플레이어의 스탯을 초기 값으로 활용
public class StatInitialValue : InitializeSuccessValue
{
	[SerializeField]
	private StatType statType;

	public override int GetValue(Task task)
		=> GameObject.FindWithTag("Player").GetComponent<Stats>().GetValue(statType);
}

// 특정 오브젝트의 개수를 초기 값으로 활용
public class GameObjectInitialValue : InitializeSuccessValue
{
	[SerializeField]
	private string name;

	public override int GetValue(Task task)
		=> GameObject.Find(name).Length;
}


감사합니다.

Bina님의 프로필 이미지
Bina
질문자

감사합니다!

Bina님의 프로필 이미지
Bina

작성한 질문수

질문하기