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); }