public TrinityPower OffensivePower() { Target = Targeting.BestAoeUnit(25f, true); if (Target == null) { return(null); } if (Target.Distance > 12f) { Walk(Target); } TrinityPower power; if (TryMantra(out power)) { return(power); } if (ShouldCycloneStrike()) { return(Spells.CycloneStrike()); } if (ShouldInnerSanctuary()) { return(Spells.InnerSanctuary()); } if (ShouldBlindingFlash()) { return(Spells.BlindingFlash()); } if (ShouldEpiphany()) { return(Spells.Epiphany()); } return(TryCripplingWave(out power) ? power : Walk(Target)); }
public TrinityPower OffensivePower() { Target = Targeting.BestAoeUnit(); if (Target == null) { return(null); } Vector3 position; if (ShouldIgnorePain()) { return(Spells.IgnorePain()); } if (ShouldWarCry()) { return(Spells.WarCry()); } if (ShouldThreateningShout()) { return(Spells.ThreateningShout()); } if (ShouldFuriousChargeInCombat(out position)) { return(Spells.FuriousCharge(position)); } if (ShouldAncientSpear(out Target)) { return(Spells.AncientSpear(Target)); } return(Walk(Targeting.HealthGlobeExists(25f) ? Targeting.GetBestHealthGlobeClusterPoint(10f, 25f) : TargetUtil.GetLoiterPosition(TargetUtil.GetBestClusterUnit(), 10f))); }
public TrinityPower OffensivePower() { Target = Targeting.BestAoeUnit(45); if (Target == null) { return(null); } Vector3 location; TrinityActor target = Target; if (Target.RadiusDistance < 65f) { if (ShouldBloodRush(50f, out location)) { return(Spells.BloodRush(Target.Position)); } if (ShouldBoneArmor()) { return(Spells.BoneArmor()); } if (ShouldDevour()) { return(Spells.Devour()); } if (ShouldLandOfTheDead()) { return(Spells.LandOfTheDead()); } if (ShouldSimulacrum()) { return(Spells.Simulacrum(Target.Position)); } if (ShouldLeech(out target)) { return(Spells.Leech(target)); } if (ShouldFrailty(out target)) { return(Spells.Frailty(target)); } if (ShouldDecrepify(out target)) { return(Spells.Decrepify(target)); } if (ShouldBoneSpirit()) { return(Spells.BoneSpirit(Target)); } if (ShouldSkeletalMage()) { return(Spells.SkeletalMage(Target)); } if (ShouldCommandSkeletons()) { return(Spells.CommandSkeletons(Target)); } if (ShouldCorpseExplosion()) { return(Spells.CorpseExplosion(Target.Position)); } if (ShouldBoneSpikes()) { return(Spells.BoneSpikes(Target)); } if (ShouldSiphonBlood()) { return(Spells.SiphonBlood(Target)); } if (ShouldGrimScythe(out target)) { return(Spells.GrimScythe(target)); } } if (ShouldWalk(out location)) { Walk(location, 3f); } return(null); }