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