private void UpdateHirelings() { if (m_hirelingssList == null) { return; } m_hirelingssList.items.Clear(); for (Int32 i = 0; i < NPC_HIRELING_IDS.Length; i++) { NpcStaticData staticData = StaticDataHandler.GetStaticData <NpcStaticData>(EDataType.NPC, NPC_HIRELING_IDS[i]); String id = (staticData != null) ? staticData.NameKey : "MISS STATIC DATA"; m_hirelingssList.items.Add(LocaManager.GetText(id)); } SelectDefaultNewQuestEntry(); }
public override void Destroy() { base.Destroy(); m_staticData = null; m_tradingInventory = null; m_tradingSpells = null; m_identifyController = null; m_repairController = null; m_conversation = null; m_restCount.Clear(); m_restCount = null; m_dayCount.Clear(); m_dayCount = null; m_perTurnCount.Clear(); m_perTurnCount = null; }
protected override void LoadStaticData() { m_staticData = StaticDataHandler.GetStaticData <NpcStaticData>(EDataType.NPC, StaticID); if (m_staticData == null) { LegacyLogger.Log("npc staticdata id " + StaticID + " not found"); } try { NpcConversationStaticData staticData = XmlStaticDataHandler <NpcConversationStaticData> .GetStaticData(StaticData.ConversationKey); if (staticData == null) { LegacyLogger.Log(String.Concat(new Object[] { "npc staticdata id: ", StaticID, ", Conversation staticdata ", StaticData.ConversationKey, " not found" })); } m_conversation = new NpcConversation(staticData); m_tradingInventory = new TradingInventoryController(staticData, this); m_tradingSpells = new TradingSpellController(staticData, this); } catch (Exception ex) { LegacyLogger.LogError(String.Concat(new Object[] { "Error load NPC data\nStaticId: ", StaticID, ", ConversationKey: ", StaticData.ConversationKey, "\n", ex })); } m_identifyController = new IdentifyInventoryController(this); m_repairController = new RepairInventoryController(); }