private static async Task <bool> AssasinPoolRotation() { if (Main.Debug) { Log.Diagnostics("In AssasinPoolRotation() with " + Me.CurrentEnergy + " Energy."); } if (Me.CurrentEnergy >= 90 && Me.ComboPoints == 5 && MyCurrentTarget.HasAura(SpellBook.CastRupture)) { if (await Abilities.Cast <Envenom>(MyCurrentTarget)) { return(true); } } if (await Abilities.Cast <Rupture>(MyCurrentTarget)) { return(true); } if (await Abilities.Cast <Dispatch>(MyCurrentTarget)) { return(true); } return(true); }
private static async Task <bool> SubtletyRotationTwoToFourTargets() { if (HotKeyManager.NoAoe) { return(await SubtletySingleRotation()); } //Make sure to refresh Findweakness if (Me.AuraRemainingTime(SpellBook.AuraShadowDance).TotalSeconds < 1.2) { if (await Abilities.Cast <Ambush>(MyCurrentTarget)) { return(true); } } // if (await Abilities.Cast<VanishOffensive>(Me)) return true; // if (await Abilities.Cast<Preperation>(Me)) return true; if (SRtimer.IsRunning && !ruptureRefreshed) { if (await Abilities.Cast <RefreshRupture>(MyCurrentTarget)) { ruptureRefreshed = true; return(true); } } if (SRtimer.ElapsedMilliseconds > 16000) { SRtimer.Reset(); ruptureRefreshed = false; } if (HotKeyManager.CooldownsOn) { if (await Abilities.Cast <ShadowReflection>(MyCurrentTarget)) { SRtimer.Restart(); return(true); } if (await Abilities.Cast <ShadowDance>(Me)) { return(true); } if (await Abilities.Cast <VanishOffensive>(MyCurrentTarget)) { return(true); } if (await Abilities.Cast <Preperation>(Me)) { return(true); } } //Finisher if (await Abilities.Cast <SliceNDiceAbility>(MyCurrentTarget)) { return(true); } if (await Abilities.Cast <Rupture>(UnitManager.Instance.LastKnownNonBleedingEnemies.FirstOrDefault())) { return(true); } if (await Abilities.Cast <Rupture>(UnitManager.Instance.LastKnownBleedingEnemies.FirstOrDefault())) { return(true); } if (Me.CurrentTarget.AuraExists(SpellBook.AuraFindWeakness) && UnitManager.Instance.LastKnownSurroundingEnemies.Count < 3) { if (await Abilities.Cast <EviscerateAbility>(MyCurrentTarget)) { return(true); } } if (MyCurrentTarget.AuraRemainingTime(SpellBook.AuraCrimsonTempest).TotalSeconds < 2) { if (await Abilities.Cast <CrimsonTempest>(MyCurrentTarget)) { return(true); } } if (await Abilities.Cast <EviscerateAbility>(MyCurrentTarget)) { return(true); } //Generator if (!Me.AuraExists(SpellBook.AuraShadowDance) || UnitManager.Instance.LastKnownSurroundingEnemies.Count >= 5) { if (await Abilities.Cast <FanOfKnives>(MyCurrentTarget)) { return(true); } } if (await Abilities.Cast <Ambush>(MyCurrentTarget)) { return(true); } return(false); }