void Awake() { ResetQuest(); value = 0; // начальное значение статуса _internal = this; enabled = false; }
/// <summary> /// Looks for replacement components for the questsystem /// </summary> private void FindObjects() { testQuest = (TestQuest)FindObjectOfType(typeof(TestQuest)); player = (OfficePlayerGeneral)FindObjectOfType(typeof(OfficePlayerGeneral)); /* * if(GameObject.Find("Canvas/QuestPanel/QuestText").GetComponent<Text>()!=null) * questText = GameObject.Find("Canvas/QuestPanel/QuestText").GetComponent<Text>(); */ }
private void QuestsLoad(JSONNode node) { QuestsDict = new Dictionary <int, QuestBase>(); foreach (JSONNode doc in node.AsArray) { QuestType type = doc["type"].Value.ToEnumVal <QuestType>(); QuestBase quest = null; switch (type) { case QuestType.testQuest: quest = new TestQuest(doc); break; } if (quest == null) { continue; } QuestsDict[quest.Id] = quest; NPCsDict[quest.NPCId].AddQuest(quest); } }
private void ActionCreatorForQuest(QuestBase quest) { Console.WriteLine($"Вы выполнили задание {quest.QuestName}"); NPCDict npc = DictionaryManager.Instance.NPCsDict[quest.NPCId]; Console.WriteLine($"{npc.NPCName} передал вам награду:"); QuestType type = quest.Type; switch (type) { case QuestType.testQuest: TestQuest tQuest = (TestQuest)quest; foreach (KeyValuePair <int, int> item in tQuest.QuestRewardItems) { ItemBase itemB = DictionaryManager.Instance.ItemDict[item.Key]; Console.WriteLine($"{itemB.ItemName} - {item.Value} шт."); Player.Inventory.AddItem(itemB, item.Value); } break; } ActionCreatorForNPC(DictionaryManager.Instance.NPCsDict[quest.NPCId]); }