private void UpdateMinResourceRequirement(PlayerReader playerReader, ActionBarCostReader actionBarCostReader) { var tuple = actionBarCostReader.GetCostByActionBarSlot(playerReader, this); if (tuple.Item2 != 0) { int oldValue = 0; switch (tuple.Item1) { case PowerType.Mana: oldValue = MinMana; MinMana = tuple.Item2; break; case PowerType.Rage: oldValue = MinRage; MinRage = tuple.Item2; break; case PowerType.Energy: oldValue = MinEnergy; MinEnergy = tuple.Item2; break; } int formCost = 0; if (HasFormRequirement() && FormEnum != Core.Form.None && playerReader.FormCost.ContainsKey(FormEnum)) { formCost = playerReader.FormCost[FormEnum]; } logger.LogInformation($"[{Name}] Update {tuple.Item1} cost to {tuple.Item2} from {oldValue}" + (formCost > 0 ? $" +{formCost} Mana to change {FormEnum} Form" : "")); } }
public void AddonRefresh() { Refresh(); // 20 - 29 BagReader.Read(); // 30 - 31 equipmentReader.Read(); // 44 ActionBarCostReader.Read(); LevelTracker.Update(); PlayerReader.UpdateCreatureLists(); areaDb.Update(worldMapAreaDb.GetAreaId(PlayerReader.ZoneId)); seq++; if (seq >= 10) { seq = 0; AddonDataChanged?.Invoke(this, new EventArgs()); } }
private void UpdateMinResourceRequirement(ActionBarCostReader actionBarCostReader) { var tuple = actionBarCostReader.GetCostByActionBarSlot(Key); if (tuple.Item2 != 0) { int oldValue = 0; switch (tuple.Item1) { case PowerType.Mana: oldValue = MinMana; MinMana = tuple.Item2; break; case PowerType.Rage: oldValue = MinRage; MinRage = tuple.Item2; break; case PowerType.Energy: oldValue = MinEnergy; MinEnergy = tuple.Item2; break; } logger.LogInformation($"Updated {tuple.Item1} cost of {this.Name} to {tuple.Item2} from {oldValue}"); } }
public void Reset() { Initialized = false; PlayerReader.Reset(); UIMapId.Reset(); ActionBarCostReader.Reset(); SpellBookReader.Reset(); TalentReader.Reset(); CreatureHistory.Reset(); Initialized = true; }
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; } }