public static void Load() { try { if (ObjectManager.Player.ChampionName != "Brand") return; _mainMenu = MainMenu.AddMenu("The Brand", "Brand"); var comboMenu = _mainMenu.AddSubMenu("Combo"); var harassMenu = _mainMenu.AddSubMenu("Harass"); laneclearMenu = _mainMenu.AddSubMenu("Lane Clear"); miscMenu = _mainMenu.AddSubMenu("Misc"); drawingMenu = _mainMenu.AddSubMenu("Draw"); _comboProvider = new BrandCombo(1050, new BrandQ(SpellSlot.Q), new BrandW(SpellSlot.W), new BrandE(SpellSlot.E), new BrandR(SpellSlot.R)); _comboProvider.CreateBasicMenu(comboMenu, harassMenu, null); _comboProvider.CreateLaneclearMenu(laneclearMenu, true, SpellSlot.Q, SpellSlot.R); #region Advanced Shit rOptions = _mainMenu.AddSubMenu("Ult Options"); rOptions.Add("BridgeR", new CheckBox("Bridge R", false)); rOptions.Add("RiskyR", new CheckBox("Risky R")); rOptions.Add("Ultnonkillable", new CheckBox("Ult non killable")); rOptions.Add("whenminXtargets", new Slider("^ When min X targets", 3, 1, 5)); rOptions.Add("DontRwith", new CheckBox("Don't R with")); rOptions.Add("healthDifference", new Slider("% Health difference", 60, 1)); rOptions.Add("Ignorewhenfleeing", new CheckBox("Ignore when fleeing")); laneclearMenu.Add("MinWtargets", new Slider("Min W targets", 3, 1, 10)); miscMenu.Add("eMinion", new CheckBox("E on fire-minion")); miscMenu.Add("aoeW", new CheckBox("Try AOE with W")); miscMenu.Add("eFarmAssist", new CheckBox("E farm assist")); miscMenu.Add("eKS", new CheckBox("E Killsteal")); miscMenu.Add("KSCombo", new CheckBox("Only KS in Combo", false)); miscMenu.Add("manaH", new Slider("Mana Manager Harass", 50, 1)); miscMenu.Add("manaLC", new Slider("Mana Manager Lane Clear", 80, 1)); drawingMenu.Add("WPred", new CheckBox("Draw W Prediction")); drawingMenu.Add("QRange", new CheckBox("Q Range")); drawingMenu.Add("WRange", new CheckBox("W Range")); drawingMenu.Add("ERange", new CheckBox("E Range")); drawingMenu.Add("RRange", new CheckBox("R Range")); #endregion _comboProvider.Initialize(); Game.OnUpdate += Tick; Drawing.OnDraw += Draw; } catch (Exception ex) { Console.WriteLine(Resources.Program_Load_Error_initialitzing_TheBrand__ + ex); } }
public override void Execute(AIHeroClient target) { if (target == null) { target = TargetSelector.GetTarget(1200, DamageType.Magical); } if (target == null) { return; } var dmgPerBounce = ObjectManager.Player.GetSpellDamage(target, Slot) + BrandCombo.GetPassiveDamage(target); if (dmgPerBounce > target.Health && target.Distance(ObjectManager.Player) > 750) { TryBridgeUlt(target); } if (dmgPerBounce > target.Health && !Provider.ShouldBeDead(target) && ObjectManager.Player.GetAutoAttackDamage(target, true) < target.Health && (_otherSkills.All( skill => skill.Instance.State != SpellState.Ready && skill.Instance.State != SpellState.Surpressed /*&& !skill.IsSafeCasting(1)*/) || ObjectManager.Player.GetSpellDamage(target, SpellSlot.Q) + dmgPerBounce + ObjectManager.Player.GetAutoAttackDamage(target) > target.Health && !target.HasBuff("brandablaze") && target.Distance(ObjectManager.Player) < 750)) { if (ObjectManager.Player.HealthPercent - target.HealthPercent < Program.getRMenuSL("healthDifference") || !Program.getRMenuCB("DontRwith") || Program.getRMenuCB("Ignorewhenfleeing") && target.Distance(ObjectManager.Player) > ObjectManager.Player.AttackRange) { Cast(target); } else if (ObjectManager.Player.HealthPercent < target.HealthPercent) { Cast(target); } } // if (target.Distance(ObjectManager.Player) > 750) return; var inBounce = new bool[HeroManager.Enemies.Count]; var canBounce = BounceCheck(target, inBounce); if (canBounce) { var inBounceEnemies = HeroManager.Enemies.Where(enemy => inBounce[HeroManager.Enemies.IndexOf(enemy)]).ToArray(); var distance = target.Distance(ObjectManager.Player); var bounceCount = inBounce.Count(item => item); if (bounceCount <= 1) { return; } //Console.WriteLine("bounce r " + bounceCount); if (inBounceEnemies.Any(enemy => dmgPerBounce > enemy.Health && MaxDamage > enemy.Health) && (bounceCount == 2 || Program.getRMenuCB("RiskyR"))) { TryUlt(target, inBounceEnemies, distance); } else if (bounceCount == 2 && dmgPerBounce * 3 > target.Health && MaxDamage > target.Health && distance < 750 && Program.getRMenuCB("RiskyR")) { Cast(target); } else if (dmgPerBounce * 2 > target.Health && MaxDamage > target.Health) { TryUlt(target, inBounceEnemies, distance); } else if (Program.getRMenuCB("Ultnonkillable") && Program.getRMenuSL("whenminXtargets") <= bounceCount) { TryUlt(target, inBounceEnemies, distance, false); } } }
public void Load(EventArgs loadargs) { try { if (ObjectManager.Player.ChampionName != "Brand") return; var notification = new Notification("The Brand loaded", 10000) { TextColor = new SharpDX.ColorBGRA(255, 0, 0, 255), BorderColor = new SharpDX.ColorBGRA(139, 100, 0, 255) }; Notifications.AddNotification(notification); _mainMenu = CreateMenu("The Brand", true); Menu orbwalkerMenu = CreateMenu("Orbwalker", _mainMenu); var targetSelectorMenu = CreateMenu("Target Selector", _mainMenu); var comboMenu = CreateMenu("Combo", _mainMenu); var harassMenu = CreateMenu("Harass", _mainMenu); var laneclearMenu = CreateMenu("Laneclear", _mainMenu); var manamanagerMenu = CreateMenu("Manamanager", _mainMenu); var igniteMenu = CreateMenu("Ignite", _mainMenu); var miscMenu = CreateMenu("Misc", _mainMenu); var antiGapcloser = CreateMenu("Anti gapcloser", _mainMenu); var interrupter = CreateMenu("Interrupter", _mainMenu); var autoLevel = CreateMenu("Auto level spells", _mainMenu); var drawingMenu = CreateMenu("Drawing", _mainMenu); _orbwalker = new Orbwalking.Orbwalker(orbwalkerMenu); TargetSelector.AddToMenu(targetSelectorMenu); _comboProvider = new BrandCombo(1050, _orbwalker, new BrandQ(SpellSlot.Q), new BrandW(SpellSlot.W), new BrandE(SpellSlot.E), new BrandR(SpellSlot.R)); _comboProvider.CreateBasicMenu(comboMenu, harassMenu, null, antiGapcloser, interrupter, manamanagerMenu, igniteMenu, null, drawingMenu); _comboProvider.CreateLaneclearMenu(laneclearMenu, true, SpellSlot.Q, SpellSlot.R); _comboProvider.CreateAutoLevelMenu(autoLevel, ComboProvider.SpellOrder.RWQE, ComboProvider.SpellOrder.RWQE); var rOptions = CreateMenu("Ult Options", comboMenu); rOptions.AddMItem("Bridge R", false, (sender, args) => _comboProvider.GetSkill<BrandR>().UseBridgeUlt = args.GetNewValue<bool>()).ProcStoredValueChanged<bool>(); rOptions.AddMItem("", "_"); rOptions.AddMItem("Risky R", true, (sender, args) => _comboProvider.GetSkill<BrandR>().RiskyUlt = args.GetNewValue<bool>()).ProcStoredValueChanged<bool>(); rOptions.AddMItem("(R bounces, no 100% success)"); rOptions.AddMItem("", "__"); rOptions.AddMItem("Ult non killable", true, (sender, args) => _comboProvider.GetSkill<BrandR>().UltNonKillable = args.GetNewValue<bool>()).ProcStoredValueChanged<bool>(); rOptions.AddMItem("when min X targets", new Slider(Math.Min(HeroManager.Enemies.Count, 1), 1, Math.Max(HeroManager.Enemies.Count, 2)), (sender, args) => _comboProvider.GetSkill<BrandR>().MinBounceTargets = args.GetNewValue<Slider>().Value).ProcStoredValueChanged<Slider>(); rOptions.AddMItem("", "___"); rOptions.AddMItem("Don't R with", true, (sender, args) => _comboProvider.GetSkill<BrandR>().AntiOverkill = args.GetNewValue<bool>()).ProcStoredValueChanged<bool>(); rOptions.AddMItem("% Health difference", new Slider(60), (sender, args) => _comboProvider.GetSkill<BrandR>().OverkillPercent = args.GetNewValue<Slider>().Value).ProcStoredValueChanged<Slider>(); rOptions.AddMItem("Ignore when fleeing", true, (sender, args) => _comboProvider.GetSkill<BrandR>().IgnoreAntiOverkillOnFlee = args.GetNewValue<bool>()).ProcStoredValueChanged<bool>(); rOptions.ProcStoredValueChanged<bool>(); rOptions.ProcStoredValueChanged<Slider>(); laneclearMenu.AddMItem("Min W targets", new Slider(3, 1, 10), (sender, args) => _comboProvider.GetSkill<BrandW>().WaveclearTargets = args.GetNewValue<Slider>().Value).ProcStoredValueChanged<Slider>(); miscMenu.AddMItem("E on fire-minion", true, (sender, args) => _comboProvider.GetSkill<BrandE>().UseMinions = args.GetNewValue<bool>()); miscMenu.AddMItem("Try AOE with W", true, (sender, args) => _comboProvider.GetSkill<BrandW>().TryAreaOfEffect = args.GetNewValue<bool>()); miscMenu.AddMItem("E farm assist", true, (sender, args) => _comboProvider.GetSkill<BrandE>().FarmAssist = args.GetNewValue<bool>()); miscMenu.AddMItem("E Killsteal", true, (sender, args) => _comboProvider.GetSkill<BrandE>().Killsteal = args.GetNewValue<bool>()); miscMenu.AddMItem("Only KS in Combo", false, (sender, args) => _comboProvider.GetSkill<BrandE>().KillstealCombo = args.GetNewValue<bool>()); miscMenu.AddMItem("Force AA in combo", false, (sender, args) => _comboProvider.ForceAutoAttacks = args.GetNewValue<bool>()); miscMenu.AddMItem("Targetselector range", new Slider((int)_comboProvider.TargetRange, 900, 1500), (sender, args) => { _comboProvider.TargetRange = args.GetNewValue<Slider>().Value; }); miscMenu.ProcStoredValueChanged<bool>(); interrupter.AddMItem("E Usage", true, (sender, args) => { _comboProvider.GetSkill<BrandW>().InterruptE = args.GetNewValue<bool>(); _comboProvider.GetSkill<BrandE>().InterruptE = args.GetNewValue<bool>(); }); interrupter.AddMItem("W Usage", true, (sender, args) => _comboProvider.GetSkill<BrandW>().InterruptW = args.GetNewValue<bool>()); interrupter.ProcStoredValueChanged<bool>(); drawingMenu.AddMItem("Damage indicator", new Circle(true, Color.Yellow), (sender, args) => { DamageIndicator.Enabled = args.GetNewValue<Circle>().Active; DamageIndicator.Fill = true; DamageIndicator.FillColor = Color.FromArgb(100, args.GetNewValue<Circle>().Color); DamageIndicator.Color = Color.FromArgb(200, DamageIndicator.FillColor); DamageIndicator.DamageToUnit = _comboProvider.GetComboDamage; }).ProcStoredValueChanged<Circle>(); drawingMenu.AddMItem("W Prediction", new Circle(false, Color.Red), (sender, args) => { _comboProvider.GetSkill<BrandW>().DrawPredictedW = args.GetNewValue<Circle>().Active; _comboProvider.GetSkill<BrandW>().PredictedWColor = args.GetNewValue<Circle>().Color; }); _drawW = drawingMenu.AddMItem("W Range", new Circle(true, Color.Red)); _drawQ = drawingMenu.AddMItem("Q Range", new Circle(false, Color.OrangeRed)); _drawE = drawingMenu.AddMItem("E Range", new Circle(false, Color.Goldenrod)); _drawR = drawingMenu.AddMItem("R Range", new Circle(false, Color.DarkViolet)); drawingMenu.ProcStoredValueChanged<Circle>(); _mainMenu.AddToMainMenu(); _comboProvider.Initialize(); Game.OnUpdate += Tick; Drawing.OnDraw += Draw; } catch (Exception ex) { Console.WriteLine("Error initialitzing TheBrand: " + ex); } }
public override void Execute(AIHeroClient target) { if (target == null) { target = TargetSelector.GetTarget(1200, TargetSelector.DamageType.Magical); } if (target == null) { return; } var dmgPerBounce = ObjectManager.Player.GetSpellDamage(target, Slot) + BrandCombo.GetPassiveDamage(target); if (dmgPerBounce > target.Health && target.Distance(ObjectManager.Player) > 750) { TryBridgeUlt(target); // Console.WriteLine("ayy lmao bridge bois"); } if (dmgPerBounce > target.Health && !Provider.ShouldBeDead(target) && ObjectManager.Player.GetAutoAttackDamage(target, true) < target.Health && ((_otherSkills.All(skill => skill.Instance.State != SpellState.Ready && skill.Instance.State != SpellState.Surpressed /*&& !skill.IsSafeCasting(1)*/) /*|| target.Distance(ObjectManager.Player) > 650*/) || ObjectManager.Player.GetSpellDamage(target, SpellSlot.Q) + dmgPerBounce + ObjectManager.Player.GetAutoAttackDamage(target) > target.Health && !target.HasBuff("brandablaze") && target.Distance(ObjectManager.Player) < 750)) { if (ObjectManager.Player.HealthPercent - target.HealthPercent < OverkillPercent || !AntiOverkill || IgnoreAntiOverkillOnFlee && target.Distance(ObjectManager.Player) > ObjectManager.Player.AttackRange) { Cast(target); } else if (ObjectManager.Player.HealthPercent < target.HealthPercent && IgniteManager.CanBeUsed() && IgniteManager.GetDamage() + dmgPerBounce > target.Health) { if (target.Distance(ObjectManager.Player) < 600) { IgniteManager.UseIgnite(target); } Cast(target); } } // if (target.Distance(ObjectManager.Player) > 750) return; var inBounce = new bool[HeroManager.Enemies.Count]; var canBounce = BounceCheck(target, inBounce); if (canBounce) { var inBounceEnemies = HeroManager.Enemies.Where(enemy => inBounce[HeroManager.Enemies.IndexOf(enemy)]).ToArray(); var distance = target.Distance(ObjectManager.Player); var bounceCount = inBounce.Count(item => item); if (bounceCount <= 1) { return; } //Console.WriteLine("bounce r " + bounceCount); if ((inBounceEnemies.Any(enemy => (dmgPerBounce > enemy.Health && MaxDamage > enemy.Health)) && (bounceCount == 2 || RiskyUlt))) { TryUlt(target, inBounceEnemies, distance); } else if (bounceCount == 2 && dmgPerBounce * 3 > target.Health && MaxDamage > target.Health && distance < 750 && RiskyUlt) { Cast(target); } else if (dmgPerBounce * 2 > target.Health && MaxDamage > target.Health) { TryUlt(target, inBounceEnemies, distance); } else if (UltNonKillable && MinBounceTargets <= bounceCount) { TryUlt(target, inBounceEnemies, distance, false); } } }
public void Load(EventArgs loadargs) { try { if (ObjectManager.Player.ChampionName != "Brand") { return; } var notification = new Notification("The Brand loaded", 10000) { TextColor = new SharpDX.ColorBGRA(255, 0, 0, 255), BorderColor = new SharpDX.ColorBGRA(139, 100, 0, 255) }; Notifications.AddNotification(notification); _mainMenu = CreateMenu("The Brand", true); var orbwalkerMenu = CreateMenu("Orbwalker", _mainMenu); var comboMenu = CreateMenu("Combo", _mainMenu); var harassMenu = CreateMenu("Harass", _mainMenu); var laneclearMenu = CreateMenu("Laneclear", _mainMenu); var manamanagerMenu = CreateMenu("Manamanager", _mainMenu); var igniteMenu = CreateMenu("Ignite", _mainMenu); var miscMenu = CreateMenu("Misc", _mainMenu); var antiGapcloser = CreateMenu("Anti gapcloser", _mainMenu); var interrupter = CreateMenu("Interrupter", _mainMenu); var autoLevel = CreateMenu("Auto level spells", _mainMenu); var drawingMenu = CreateMenu("Drawing", _mainMenu); _orbwalker = new Orbwalking.Orbwalker(orbwalkerMenu); _comboProvider = new BrandCombo(1050, _orbwalker, new BrandQ(SpellSlot.Q), new BrandW(SpellSlot.W), new BrandE(SpellSlot.E), new BrandR(SpellSlot.R)); _comboProvider.CreateBasicMenu(comboMenu, harassMenu, null, antiGapcloser, interrupter, manamanagerMenu, igniteMenu, null, drawingMenu); _comboProvider.CreateLaneclearMenu(laneclearMenu, true, SpellSlot.Q, SpellSlot.R); _comboProvider.CreateAutoLevelMenu(autoLevel, ComboProvider.SpellOrder.RWQE, ComboProvider.SpellOrder.RWQE); var rOptions = CreateMenu("Ult Options", comboMenu); rOptions.AddMItem("Bridge R", false, (sender, args) => _comboProvider.GetSkill <BrandR>().UseBridgeUlt = args.GetNewValue <bool>()); rOptions.AddMItem("", "_"); rOptions.AddMItem("Risky R", true, (sender, args) => _comboProvider.GetSkill <BrandR>().RiskyUlt = args.GetNewValue <bool>()).SetTooltip("R bounces, may fail"); rOptions.AddMItem("", "__"); rOptions.AddMItem("Ult non killable", true, (sender, args) => _comboProvider.GetSkill <BrandR>().UltNonKillable = args.GetNewValue <bool>()).ProcStoredValueChanged <bool>(); rOptions.AddMItem("when min X targets", new Slider(Math.Min(HeroManager.Enemies.Count, 1), 1, Math.Max(HeroManager.Enemies.Count, 2)), (sender, args) => _comboProvider.GetSkill <BrandR>().MinBounceTargets = args.GetNewValue <Slider>().Value).ProcStoredValueChanged <Slider>(); rOptions.AddMItem("", "___"); rOptions.AddMItem("Don't R with", true, (sender, args) => _comboProvider.GetSkill <BrandR>().AntiOverkill = args.GetNewValue <bool>()).ProcStoredValueChanged <bool>(); rOptions.AddMItem("% Health difference", new Slider(60), (sender, args) => _comboProvider.GetSkill <BrandR>().OverkillPercent = args.GetNewValue <Slider>().Value).ProcStoredValueChanged <Slider>(); rOptions.AddMItem("Ignore when fleeing", true, (sender, args) => _comboProvider.GetSkill <BrandR>().IgnoreAntiOverkillOnFlee = args.GetNewValue <bool>()).ProcStoredValueChanged <bool>(); rOptions.ProcStoredValueChanged <bool>(); rOptions.ProcStoredValueChanged <Slider>(); laneclearMenu.AddMItem("Min W targets", new Slider(3, 1, 10), (sender, args) => _comboProvider.GetSkill <BrandW>().WaveclearTargets = args.GetNewValue <Slider>().Value).ProcStoredValueChanged <Slider>(); miscMenu.AddMItem("E on fire-minion", true, (sender, args) => _comboProvider.GetSkill <BrandE>().UseMinions = args.GetNewValue <bool>()); miscMenu.AddMItem("Try AOE with W", true, (sender, args) => _comboProvider.GetSkill <BrandW>().TryAreaOfEffect = args.GetNewValue <bool>()); miscMenu.AddMItem("E farm assist", true, (sender, args) => _comboProvider.GetSkill <BrandE>().FarmAssist = args.GetNewValue <bool>()); miscMenu.AddMItem("E Killsteal", true, (sender, args) => _comboProvider.GetSkill <BrandE>().Killsteal = args.GetNewValue <bool>()); miscMenu.AddMItem("Only KS in Combo", false, (sender, args) => _comboProvider.GetSkill <BrandE>().KillstealCombo = args.GetNewValue <bool>()); miscMenu.AddMItem("Force AA in combo", false, (sender, args) => _comboProvider.ForceAutoAttacks = args.GetNewValue <bool>()); miscMenu.AddMItem("Targetselector range", new Slider((int)_comboProvider.TargetRange, 900, 1500), (sender, args) => { _comboProvider.TargetRange = args.GetNewValue <Slider>().Value; }); miscMenu.ProcStoredValueChanged <bool>(); miscMenu.ProcStoredValueChanged <Slider>(); interrupter.AddMItem("E Usage", true, (sender, args) => { _comboProvider.GetSkill <BrandW>().InterruptE = args.GetNewValue <bool>(); _comboProvider.GetSkill <BrandE>().InterruptE = args.GetNewValue <bool>(); }); interrupter.AddMItem("W Usage", true, (sender, args) => _comboProvider.GetSkill <BrandW>().InterruptW = args.GetNewValue <bool>()); interrupter.ProcStoredValueChanged <bool>(); drawingMenu.AddMItem("Damage indicator", new Circle(true, Color.Yellow), (sender, args) => { DamageIndicator.Enabled = args.GetNewValue <Circle>().Active; DamageIndicator.Fill = true; DamageIndicator.FillColor = Color.FromArgb(100, args.GetNewValue <Circle>().Color); DamageIndicator.Color = Color.FromArgb(200, DamageIndicator.FillColor); DamageIndicator.DamageToUnit = _comboProvider.GetComboDamage; }).ProcStoredValueChanged <Circle>(); drawingMenu.AddMItem("W Prediction", new Circle(false, Color.Red), (sender, args) => { _comboProvider.GetSkill <BrandW>().DrawPredictedW = args.GetNewValue <Circle>().Active; _comboProvider.GetSkill <BrandW>().PredictedWColor = args.GetNewValue <Circle>().Color; }); _drawW = drawingMenu.AddMItem("W Range", new Circle(true, Color.Red)); _drawQ = drawingMenu.AddMItem("Q Range", new Circle(false, Color.OrangeRed)); _drawE = drawingMenu.AddMItem("E Range", new Circle(false, Color.Goldenrod)); _drawR = drawingMenu.AddMItem("R Range", new Circle(false, Color.DarkViolet)); drawingMenu.ProcStoredValueChanged <Circle>(); _mainMenu.AddToMainMenu(); _comboProvider.Initialize(); Game.OnUpdate += Tick; Drawing.OnDraw += Draw; } catch (Exception ex) { Console.WriteLine("Error initialitzing TheBrand: " + ex); } }