public static float GetTrueAARangeFrom(Obj_AI_Base target) { var ret = target.GetAutoAttackRange(); ret += ObjectManager.Player.BoundingRadius; return(ret); }
public static void DefaultQCast(Vector3 position, Obj_AI_Base Target) { var afterTumblePosition = GetAfterTumblePosition(Game.CursorPos); var CursorPos = Game.CursorPos; var EnemyPoints = GetEnemyPoints(); if (afterTumblePosition.IsSafe(true) || (!EnemyPoints.Contains(Game.CursorPos.To2D())) || (Variables.EnemiesClose.Count() == 1)) { if (afterTumblePosition.Distance(Target.ServerPosition) <= Target.GetAutoAttackRange()) { CastQ(position); } } }
/* * public static float GetDamageReduction(this AIHeroClient target) * { * return 0f; * } */ internal static bool IsMovingTowards(this Obj_AI_Base source, Obj_AI_Base target, int minDistance = 0) { var safetyDistance = minDistance == 0 ? target.GetAutoAttackRange() : minDistance; if (source.DistanceCached(target) < safetyDistance) { return(true); } if (!source.IsMoving || source.Distance(source.RealPath().Last()) < 10) { return(false); } return(source.IsFacing(target) && source.RealPath().Last().DistanceSquared(target.Position) < safetyDistance * safetyDistance); }
private static void Dash_OnDash(Obj_AI_Base sender, Dash.DashEventArgs e) { if (sender.IsValidTarget() && sender.IsEnemy) { if (Util.MyHero.Distance(e.StartPos, true) < Util.MyHero.Distance(e.EndPos, true)) { if (MenuManager.GetSubMenu("Automatic").CheckBox("W.Spells")) { SpellManager.CastW(sender); } } else { if (MenuManager.GetSubMenu("Automatic").CheckBox("E.Antigapcloser")) { //SpellManager.CastE(sender); } if (Util.MyHero.Distance(e.EndPos, true) < (sender.GetAutoAttackRange(Util.MyHero) * 1.5f).Pow()) { ShouldWaitTime = Core.GameTickCount; } } } }
private static void Dash_OnDash(Obj_AI_Base sender, Dash.DashEventArgs e) { if (sender.IsValidTarget() && sender.IsEnemy) { if (Util.MyHero.Distance(e.StartPos, true) < Util.MyHero.Distance(e.EndPos, true)) { if (MenuManager.Menu.GetCheckBoxValue("W.Spells")) { SpellManager.CastW(sender); } } else { if (MenuManager.Menu.GetCheckBoxValue("E.Antigapcloser")) { //SpellManager.CastE(sender); } if (Util.MyHero.Distance(e.EndPos, true) < (sender.GetAutoAttackRange(Util.MyHero) * 1.5f).Pow()) { ShouldWaitTime = Core.GameTickCount; } } } }
public static float GetTrueAARangeFrom(Obj_AI_Base target) { var ret = target.GetAutoAttackRange() + target.BoundingRadius; ret += ObjectManager.Player.BoundingRadius; return ret; }