public void AcceptQuest(int id) { var quest = dataBase.FindQuestById(id); if (quest != null) { if (quest.state == QuestState.可接) { quest.state = QuestState.已接; Debug.Log("接受任务:" + quest.title); Fading.Instance.BeginFade(Color.white, 1, 1); NPC resultNpc; NpcInfo npcInfo; if (CurMapNpcManager.Instance.GetNpcByID(quest.StartNpcId, out resultNpc)) { resultNpc.ShowNothingSign(); } if (npcDataBase.FindNpcById(quest.StartNpcId, out npcInfo)) { npcInfo.questStateType = NPCQuestStateType.无; } if (quest.Type == QuestType.对话) { if (CurMapNpcManager.Instance.GetNpcByID(quest.NpcId, out resultNpc)) { //该NPC在另一个地图上怎么修改? resultNpc.ShowCompleteQuestSign(); } if (npcDataBase.FindNpcById(quest.NpcId, out npcInfo)) { npcInfo.questStateType = NPCQuestStateType.感叹号; } } } } currentQuest = quest; QuestUIManager.Instance.UpdateUI(currentQuest); }
public void UpdateSign() { if (!dataBase.FindNpcById(id, out npcInfo)) { Debug.Log("未找到该NPC!"); } else { if (npcInfo.questStateType == NPCQuestStateType.无) { ShowNothingSign(); } else if (npcInfo.questStateType == NPCQuestStateType.感叹号) { ShowCompleteQuestSign(); } else if (npcInfo.questStateType == NPCQuestStateType.金色书本) { ShowGetMainQuestSign(); } } }