internal override bool vmethod_0() { bool result; if (this.int_0 < Environment.TickCount) { result = false; } else { this.int_0 = Environment.TickCount + 300; this.d3Spell_0 = null; foreach (KeyValuePair<int, D3Spell> current in Framework.Hero.GetActiveSpells()) { if (Class53.dictionary_0.ContainsKey(current.Value.D3Power) && (!this.dictionary_1.ContainsKey(current.Value.D3Power) || (this.dictionary_1[current.Value.D3Power] < Environment.TickCount && current.Value.CanCast))) { this.d3Spell_0 = current.Value; break; } } result = (this.d3Spell_0 != null); } return result; }
public static void RequestSpellChange(D3Spell spell, int SlotIndex) { try { Struct8 @struct = new Struct8((int)spell.D3Power, spell.Rune, SlotIndex); IntPtr intPtr = Marshal.AllocHGlobal(Marshal.SizeOf(@struct)); Marshal.StructureToPtr(@struct, intPtr, true); Framework.delegate19_0(107u, intPtr, Marshal.SizeOf(@struct)); Marshal.FreeHGlobal(intPtr); } catch (Exception ex) { Framework.smethod_0("Error in Framework.RequestSpellChange(): " + ex.Message); } }
public static D3Spell GetSpellIDByIndex(int index) { uint num = Framework.delegate16_0(); D3Spell result; if (num != 0u) { D3Power d3Power = (D3Power)Helper.smethod_1(num + (uint)(index * 8) + 2532u); int rune = (int)Helper.smethod_1(num + (uint)(index * 8) + 2536u); result = new D3Spell(d3Power, rune); } else { result = null; } return result; }
private static bool smethod_3(D3Spell d3Spell_0) { return d3Spell_0.CanCast; }
private static bool smethod_2(D3Spell d3Spell_0) { return !d3Spell_0.IsOnCooldown; }