public AddonReader(ILogger logger, DataConfig dataConfig, AreaDB areaDb, IAddonDataProvider addonDataProvider) { this.logger = logger; this.addonDataProvider = addonDataProvider; this.squareReader = new SquareReader(this); this.itemDb = new ItemDB(logger, dataConfig); this.creatureDb = new CreatureDB(logger, dataConfig); this.BagReader = new BagReader(squareReader, 20, itemDb); this.equipmentReader = new EquipmentReader(squareReader, 30); this.PlayerReader = new PlayerReader(squareReader, creatureDb); this.LevelTracker = new LevelTracker(PlayerReader); this.areaDb = areaDb; this.worldMapAreaDb = new WorldMapAreaDB(logger, dataConfig); }
public void AddonRefresh() { Refresh(); CreatureHistory.Update(PlayerReader.TargetGuid, PlayerReader.TargetHealthPercentage); BagReader.Read(); EquipmentReader.Read(); ActionBarCostReader.Read(); GossipReader.Read(); SpellBookReader.Read(); TalentReader.Read(); LevelTracker.Update(); if ((DateTime.Now - lastFrontendUpdate).TotalMilliseconds >= FrontendUpdateIntervalMs) { AddonDataChanged?.Invoke(this, EventArgs.Empty); lastFrontendUpdate = DateTime.Now; } }