/// <summary> /// Fired when the game is updated. /// </summary> public void Automatic() { if (SoulBound == null) { var possibleSoulBound = ObjectCache.AllyHeroes.FirstOrDefault(a => a.HasBuff("kalistacoopstrikeally")); if (possibleSoulBound != null) { SoulBound = possibleSoulBound; } } if (UtilityClass.Player.IsRecalling()) { return; } /// <summary> /// The Automatic E Logics. /// </summary> if (SpellClass.E.Ready && MenuClass.E["beforedeath"].Enabled && LocalPlayer.Instance.HPPercent() <= MenuClass.E["beforedeath"].Value) { SpellClass.E.Cast(); } /// <summary> /// The R Logics. /// </summary> if (SpellClass.R.Ready && SoulBound != null) { /// <summary> /// The Lifesaver R Logic. /// </summary> if (SoulBound.EnemyHeroesCount(800f) > 0 && SoulBound.HPPercent() <= MenuClass.R["lifesaver"].Value && MenuClass.R["lifesaver"].Enabled) { SpellClass.R.Cast(); } /// <summary> /// The Offensive R Logics. /// </summary> if (RLogics.ContainsKey(SoulBound.CharName)) { var option = RLogics.FirstOrDefault(k => k.Key == SoulBound.CharName).Value; var buffName = option.Item1; var menuOption = option.Item2; var target = ObjectCache.EnemyHeroes.FirstOrDefault(t => t.HasBuff(buffName)); if (target != null && MenuClass.R[menuOption].Enabled) { var buff = target.GetBuff(buffName); if (buff.Caster == SoulBound && target.DistanceToPlayer() > UtilityClass.Player.GetAutoAttackRange(target)) { SpellClass.R.Cast(); } } } } /// <summary> /// The Spot W Logic. /// </summary> if (SpellClass.W.Ready && !UtilityClass.Player.Position.IsUnderEnemyTurret() && Orbwalker.Mode == OrbwalkingMode.None && UtilityClass.Player.EnemyHeroesCount(1500f) == 0 && UtilityClass.Player.MPPercent() > ManaManager.GetNeededMana(SpellClass.W.Slot, MenuClass.W["logical"]) && MenuClass.W["logical"].Enabled) { foreach (var loc in Locations.Where(l => UtilityClass.Player.Distance(l) <= SpellClass.W.Range && !ObjectCache.AllMinions.Any(m => m.Distance(l) <= 1000f && m.ModelName.Equals("KalistaSpawn")))) { SpellClass.W.Cast(loc); } } }
/// <summary> /// Fired when the game is updated. /// </summary> public void Automatic() { var passiveObject = ObjectManager.Get <GameObject>().FirstOrDefault(o => o.IsValid && o.Name == "Kalista_Base_P_LinkIcon.troy"); if (passiveObject != null) { SoulBound = GameObjects.AllyHeroes .Where(a => !a.IsMe) .MinBy(o => o.Distance(passiveObject)); } if (UtilityClass.Player.IsRecalling()) { return; } /// <summary> /// The R Logics. /// </summary> if (SpellClass.R.Ready && SoulBound != null) { var soulbound = SoulBound; /// <summary> /// The Offensive R Logics. /// </summary> foreach (var target in GameObjects.EnemyHeroes .Where(t => t.Distance(UtilityClass.Player.ServerPosition) > UtilityClass.Player.GetFullAttackRange(t))) { if (RLogics.ContainsKey(soulbound.ChampionName)) { var option = RLogics.FirstOrDefault(k => k.Key == soulbound.ChampionName); var buffName = option.Value.Item1; var menuOption = option.Value.Item2; if (target.HasBuff(buffName) && MenuClass.Spells["r"][menuOption].As <MenuBool>().Enabled) { SpellClass.R.Cast(); } } } /// <summary> /// The Lifesaver R Logic. /// </summary> if (soulbound.CountEnemyHeroesInRange(800f) > 0 && soulbound.HealthPercent() <= MenuClass.Spells["r"]["lifesaver"].As <MenuSliderBool>().Value&& MenuClass.Spells["r"]["lifesaver"].As <MenuSliderBool>().Enabled) { SpellClass.R.Cast(); } } /// <summary> /// The Spot W Logic. /// </summary> if (SpellClass.W.Ready && !UtilityClass.Player.IsUnderEnemyTurret() && ImplementationClass.IOrbwalker.Mode == OrbwalkingMode.None && UtilityClass.Player.CountEnemyHeroesInRange(1500f) == 0 && UtilityClass.Player.ManaPercent() > ManaManager.GetNeededMana(SpellClass.W.Slot, MenuClass.Spells["w"]["logical"]) && MenuClass.Spells["w"]["logical"].As <MenuSliderBool>().Enabled) { foreach (var loc in Locations.Where(l => UtilityClass.Player.Distance(l) <= SpellClass.W.Range && !ObjectManager.Get <Obj_AI_Minion>().Any(m => m.Distance(l) <= 1000f && m.UnitSkinName.Equals("KalistaSpawn")))) { SpellClass.W.Cast(loc); } } /// <summary> /// The Automatic E Logics. /// </summary> if (SpellClass.E.Ready) { /// <summary> /// The E Before death Logic. /// </summary> if (MenuClass.Spells["e"]["ondeath"].As <MenuBool>().Enabled&& ImplementationClass.IHealthPrediction.GetPrediction(UtilityClass.Player, 1000 + Game.Ping) <= 0) { SpellClass.E.Cast(); } /// <summary> /// The E Minion Harass Logic. /// </summary> if (GameObjects.EnemyHeroes.Any(IsPerfectRendTarget) && Extensions.GetEnemyLaneMinionsTargetsInRange(SpellClass.E.Range).Any(m => IsPerfectRendTarget(m) && m.GetRealHealth() <= GetTotalRendDamage(m)) && MenuClass.Spells["e"]["harass"].As <MenuBool>().Enabled) { SpellClass.E.Cast(); } /// <summary> /// The E Jungleclear Logic. /// </summary> if (MenuClass.Spells["e"]["junglesteal"].As <MenuBool>().Enabled) { foreach (var minion in ObjectManager.Get <Obj_AI_Minion>().Where(m => UtilityClass.JungleList.Contains(m.UnitSkinName))) { if (IsPerfectRendTarget(minion) && minion.GetRealHealth() <= GetTotalRendDamage(minion) && MenuClass.Spells["e"]["whitelist"][minion.UnitSkinName].As <MenuBool>().Enabled) { SpellClass.E.Cast(); } } } } }
/// <summary> /// Fired when the game is updated. /// </summary> public void Automatic() { var passiveObject = ObjectManager.Get <GameObject>().FirstOrDefault(o => o.IsValid && o.Name == "Kalista_Base_P_LinkIcon.troy"); if (passiveObject != null) { SoulBound = GameObjects.AllyHeroes .Where(a => !a.IsMe) .MinBy(o => o.Distance(passiveObject)); } if (UtilityClass.Player.IsRecalling()) { return; } /// <summary> /// The R Logics. /// </summary> if (SpellClass.R.Ready && SoulBound != null) { /// <summary> /// The Lifesaver R Logic. /// </summary> if (SoulBound.CountEnemyHeroesInRange(800f) > 0 && SoulBound.HealthPercent() <= MenuClass.Spells["r"]["lifesaver"].As <MenuSliderBool>().Value&& MenuClass.Spells["r"]["lifesaver"].As <MenuSliderBool>().Enabled) { SpellClass.R.Cast(); } var option = RLogics.FirstOrDefault(k => k.Key == SoulBound.ChampionName).Value; if (option != null) { var buffName = option.Item1; var menuOption = option.Item2; /// <summary> /// The Offensive R Logics. /// </summary> if (RLogics.ContainsKey(SoulBound.ChampionName) && GameObjects.EnemyHeroes.Any(t => t.HasBuff(buffName) && MenuClass.Spells["r"][menuOption].As <MenuBool>().Enabled&& t.Distance(UtilityClass.Player.ServerPosition) > UtilityClass.Player.GetFullAttackRange(t))) { SpellClass.R.Cast(); } } } /// <summary> /// The Spot W Logic. /// </summary> if (SpellClass.W.Ready && !UtilityClass.Player.IsUnderEnemyTurret() && ImplementationClass.IOrbwalker.Mode == OrbwalkingMode.None && UtilityClass.Player.CountEnemyHeroesInRange(1500f) == 0 && UtilityClass.Player.ManaPercent() > ManaManager.GetNeededMana(SpellClass.W.Slot, MenuClass.Spells["w"]["logical"]) && MenuClass.Spells["w"]["logical"].As <MenuSliderBool>().Enabled) { foreach (var loc in Locations.Where(l => UtilityClass.Player.Distance(l) <= SpellClass.W.Range && !ObjectManager.Get <Obj_AI_Minion>().Any(m => m.Distance(l) <= 1000f && m.UnitSkinName.Equals("KalistaSpawn")))) { SpellClass.W.Cast(loc); } } }