Beispiel #1
0
    public void AcceptQuest()
    {
        questWindow.SetActive(false);
        questButton.SetActive(false);
        quest = questHandler.GetQuest();

        if (quest.quest.GetQuestObjective().goalType == GoalType.ReportTo)
        {
            quest.quest.GetQuestObjective().reporter = GameObject.Find(quest.quest.GetQuestObjective().reporterName);
            Debug.Log("Report to: " + quest.quest.GetQuestObjective().reporter.name);
            QuestObjective objective     = new QuestObjective(quest.quest.GetQuestObjective().reporter.name);
            QuestData      acceptedQuest = new QuestData(quest.quest.name, quest.quest.description, quest.quest.expReward, quest.quest.goldReward, true, objective);
            for (int i = 0; i < PlayerStats.missionList.Count; i++)
            {
                if (PlayerStats.missionList[i].GetName().Equals(acceptedQuest.GetName()))
                {
                    Debug.Log("You already have this quest");
                    Debug.Log(PlayerStats.missionList.Count);
                    return;
                }
            }
            PlayerStats.missionList.Add(acceptedQuest);
            return;
        }
        QuestObjective objective2     = new QuestObjective(quest.quest.GetQuestObjective().requiredAmount, quest.quest.GetQuestObjective().goalType);
        QuestData      acceptedQuest2 = new QuestData(quest.quest.name, quest.quest.description, quest.quest.expReward, quest.quest.goldReward, true, objective2);

        for (int i = 0; i < PlayerStats.missionList.Count; i++)
        {
            if (PlayerStats.missionList[i].GetName().Equals(acceptedQuest2.name))
            {
                Debug.Log("You already have this quest");
                Debug.Log(PlayerStats.missionList.Count);
                return;
            }
        }
        PlayerStats.missionList.Add(acceptedQuest2);
    }