Ejemplo n.º 1
0
        // Start is called before the first frame update
        public void Setup(QuestStatus status)
        {
            foreach (Transform child in whereToSpawnPrefab.transform)
            {
                Destroy(child.gameObject);
            }

            if (status == null || status.GetQuest() == null)
            {
                return;
            }

            Quest quest = status.GetQuest();

            title.text = quest.GetTitle();

            for (int i = 0; i < quest.GetObjectiveCount(); i++)
            {
                GameObject      instance = Instantiate(objectivePrefab, whereToSpawnPrefab.transform);
                TextMeshProUGUI text     = instance.GetComponentInChildren <TextMeshProUGUI>();
                text.text = quest.GetObjective(i).description;
                if (!status.isCompleted(quest.GetObjective(i).reference))
                {
                    instance.transform.GetChild(0).GetChild(0).gameObject.SetActive(false);
                }
            }
            reward.text = quest.GetReward();
        }