public void AddFinishQuestList(QuestItemUI questui) { FinishQuestList.Add(questui); if (questui.Quest.Questtype == Quest.QuestType.Talk) { RemoveStartQuestList(questui); } else { RemoveAcceptQuestList(questui); } if (questui.Quest.Questtype == Quest.QuestType.Talk) { foreach (NPCUI npc in NPCManager.Instance.QuestNPCList) { if (questui.Quest.StartNPCID == npc.ID) { npc.ShowFinishIcon(questui); } } questui.UpdateShowDes("找到" + NPCManager.Instance.GetNPCByID(questui.Quest.StartNPCID).Name + "并拿到报酬"); } else { foreach (NPCUI npc in NPCManager.Instance.QuestNPCList) { if (questui.Quest.NPCID == npc.ID) { npc.ShowFinishIcon(questui); } } questui.UpdateShowDes("找到" + NPCManager.Instance.GetNPCByID(questui.Quest.NPCID).Name + "并拿到报酬"); } }
public void AddAcceptQuestList(QuestItemUI questui) { AcceptQuestList.Add(questui); switch (questui.Quest.Questtype) { case Quest.QuestType.Combat: IsKillEnemyQuest = true; KillEnemyList.Add(questui); foreach (NPCUI npc in NPCManager.Instance.QuestNPCList) { if (questui.Quest.NPCID == npc.ID) { npc.ShowQuestStatusIcon(questui); } } questui.UpdateShowDes(questui.CurrentKillCount); break; case Quest.QuestType.Talk: foreach (NPCUI npc in NPCManager.Instance.QuestNPCList) { if (questui.Quest.StartNPCID == npc.ID) { npc.ShowQuestStatusIcon(questui); } } questui.UpdateShowDes("找到" + NPCManager.Instance.GetNPCByID(questui.Quest.StartNPCID).Name); break; case Quest.QuestType.GetItem: IsItemQuest = true; InventoryManager.Instance.GetItemQuest(questui); if (QuestItemUIList.Contains(questui) == false) { QuestItemUIList.Add(questui); } foreach (NPCUI npc in NPCManager.Instance.QuestNPCList) { if (questui.Quest.NPCID == npc.ID) { if (questui.CurrentCount >= questui.Quest.Count) { AddFinishQuestList(questui); } else { npc.ShowQuestStatusIcon(questui); } } } questui.UpdateShowDes(questui.CurrentCount); break; case Quest.QuestType.Work: break; } }
public void AddStartQuestList(QuestItemUI questui) { StartQuestList.Add(questui); RemoveAcceptQuestList(questui); foreach (NPCUI npc in NPCManager.Instance.QuestNPCList) { if (questui.Quest.NPCID == npc.ID) { npc.ShowQuestStatusIcon(questui); } } questui.UpdateShowDes("找到" + NPCManager.Instance.GetNPCByID(questui.Quest.NPCID).Name); }