public static bool Pulse() { if (Manager.LocalPlayer == null) { return(false); } if (!ForceUpdate) { return(false); } ForceUpdate = false; var spellCount = Helper.Magic.Read <int>(Offsets.SpellCount); var spellBook = Helper.Magic.Read <uint>(Offsets.SpellBook); for (int i = 0; i < spellCount; i++) { var spellStruct = Helper.Magic.ReadStruct <uint>((IntPtr)(spellBook + (i * 4))); var spellId = Helper.Magic.Read <int>(spellStruct + 0x4); if (!PlayerSpells.ContainsKey(spellId)) { PlayerSpells.Add(spellId, new WoWSpell(spellId)); } } return(true); }