static Lucian() { Q = new Spell.Targeted(SpellSlot.Q, 750); W = new Spell.Skillshot(SpellSlot.W, 1000, SkillShotType.Circular, 250, 1500, 80); E = new Spell.Skillshot(SpellSlot.E, 420, SkillShotType.Linear); R = new Spell.Skillshot(SpellSlot.R, 1150, SkillShotType.Linear, 250, 2000, 110); ColorPicker = new ColorPicker[3]; ColorPicker[0] = new ColorPicker("LucianQ", new ColorBGRA(10, 106, 138, 255)); ColorPicker[1] = new ColorPicker("LucianR", new ColorBGRA(177, 67, 191, 255)); ColorPicker[2] = new ColorPicker("LucianHpBar", new ColorBGRA(255, 134, 0, 255)); DamageIndicator.Initalize( System.Drawing.Color.FromArgb(ColorPicker[2].Color.R, ColorPicker[2].Color.G, ColorPicker[2].Color.B)); DamageIndicator.DamageDelegate = HandleDamageIndicator; ColorPicker[2].OnColorChange += (a, b) => { DamageIndicator.Color = System.Drawing.Color.FromArgb(b.Color.A, b.Color.R, b.Color.G, b.Color.B); }; Orbwalker.OnPostAttack += Orbwalker_OnPostAttack; Game.OnPostTick += args => IsPreAttack = false; Orbwalker.OnPreAttack += Orbwalker_OnPreAttack; Obj_AI_Base.OnProcessSpellCast += Obj_AI_Base_OnProcessSpellCast; PermaShow = new PermaShow("Lucian PermaShow", new Vector2(200, 200)); }
public static void Init(string[] args) { if (initialized) { return; } initialized = true; CultureInfo.DefaultThreadCurrentCulture = CultureInfo.InvariantCulture; CultureInfo.DefaultThreadCurrentUICulture = CultureInfo.InvariantCulture; Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; Thread.CurrentThread.CurrentUICulture = CultureInfo.InvariantCulture; // Initial notification. Logging.Write()(LogLevel.Info, "[-- SDK Bootstrap Loading --]"); // Load Resource Content. ResourceLoader.Initialize(); Logging.Write()(LogLevel.Info, "[SDK Bootstrap] Resources Initialized."); // Load GameObjects. GameObjects.Initialize(); Logging.Write()(LogLevel.Info, "[SDK Bootstrap] GameObjects Initialized."); // Create E# menu. Variables.EnsoulSharpMenu = new Menu("EnsoulSharp", "EnsoulSharp", true).Attach(); MenuCustomizer.Initialize(Variables.EnsoulSharpMenu); Logging.Write()(LogLevel.Info, "[SDK Bootstrap] EnsoulSharp Menu Created."); // Load the Orbwalker. Variables.Orbwalker = new Orbwalker(Variables.EnsoulSharpMenu); Logging.Write()(LogLevel.Info, "[SDK Bootstrap] Orbwalker Initialized."); // Load the TargetSelector. Variables.TargetSelector = new TargetSelector(Variables.EnsoulSharpMenu); Logging.Write()(LogLevel.Info, "[SDK Bootstrap] TargetSelector Initialized."); // Load the Notifications. Notifications.Initialize(Variables.EnsoulSharpMenu); Logging.Write()(LogLevel.Info, "[SDK Bootstrap] Notifications Initialized."); // Load the Permashow. PermaShow.Initialize(Variables.EnsoulSharpMenu); Logging.Write()(LogLevel.Info, "[SDK Bootstrap] Permashow Initialized."); // Load Damages. Damage.Initialize(Variables.GameVersion); Logging.Write()(LogLevel.Info, "[SDK Bootstrap] Damage Library Initialized."); // Final notification. Logging.Write()(LogLevel.Info, "[-- SDK Bootstrap Loading --]"); }
static Vayne() { Q = new Spell.Skillshot(SpellSlot.Q, 300, SkillShotType.Linear); W = new Spell.Active(SpellSlot.W); E = new Spell.Targeted(SpellSlot.E, 650); R = new Spell.Active(SpellSlot.R); Orbwalker.OnPostAttack += Orbwalker_OnPostAttack; Orbwalker.OnPreAttack += Orbwalker_OnPreAttack; Spellbook.OnCastSpell += Spellbook_OnCastSpell; Game.OnPostTick += args => IsPostAttack = false; if (EntityManager.Heroes.Enemies.Any(client => client.Hero == Champion.Rengar)) { GameObject.OnCreate += Obj_AI_Base_OnCreate; } Text = new Text("", new Font("calibri", 15, FontStyle.Regular)); PermaShow = new PermaShow("Vayne PermaShow", new Vector2(200, 200)); }
static Urgot() { Q = new Spell.Skillshot(SpellSlot.Q, 900, SkillShotType.Linear, 250, 1550, 60); SecoundQ = new Spell.Skillshot(SpellSlot.Q, 1200, SkillShotType.Linear, 250, 1550, 60) { AllowedCollisionCount = int.MaxValue }; W = new Spell.Active(SpellSlot.W); E = new Spell.Skillshot(SpellSlot.E, 900, SkillShotType.Circular, 250, 1550, 250); R = new Spell.Targeted(SpellSlot.R, 500); ColorPicker = new ColorPicker[4]; ColorPicker[0] = new ColorPicker("UrgotQ", new ColorBGRA(10, 106, 138, 255)); ColorPicker[1] = new ColorPicker("UrgotE", new ColorBGRA(177, 67, 191, 255)); ColorPicker[2] = new ColorPicker("UrgotR", new ColorBGRA(177, 67, 191, 255)); ColorPicker[3] = new ColorPicker("UrgotHpBar", new ColorBGRA(255, 134, 0, 255)); DamageIndicator.Initalize(Color.FromArgb(ColorPicker[3].Color.R, ColorPicker[3].Color.G, ColorPicker[3].Color.B)); DamageIndicator.DamageDelegate = HandleDamageIndicator; ColorPicker[3].OnColorChange += (a, b) => DamageIndicator.Color = Color.FromArgb(ColorPicker[3].Color.R, ColorPicker[3].Color.G, ColorPicker[3].Color.B); PermaShow = new PermaShow("Urgot PermaShow", new Vector2(200, 200)); Game.OnTick += Game_OnTick; Game.OnPostTick += args => { Q.Range = 900; Q.AllowedCollisionCount = 0; }; Orbwalker.OnPreAttack += Orbwalker_OnPreAttack; }
protected override void CreateMenu() { ComboMenu = MenuManager.Menu.AddSubMenu("Combo"); ComboMenu.AddGroupLabel("Combo mode settings for Urgot addon"); ComboMenu.AddLabel("Acid Hunter (Q) settings :"); ComboMenu.Add("Plugins.Urgot.ComboMenu.UseQ", new CheckBox("Use Q")); ComboMenu.AddSeparator(5); ComboMenu.AddLabel("Terror Capacitor (W) settings :"); ComboMenu.Add("Plugins.Urgot.ComboMenu.UseW", new CheckBox("Use W")); ComboMenu.AddSeparator(5); ComboMenu.AddLabel("Noxian Corrosive Charge (E) settings :"); ComboMenu.Add("Plugins.Urgot.ComboMenu.UseE", new CheckBox("Use E")); ComboMenu.AddSeparator(5); ComboMenu.AddLabel("Hyper-Kinetic Position Reverser (R) settings :"); ComboMenu.Add("Plugins.Urgot.ComboMenu.UseR", new CheckBox("Use R")); ComboMenu.Add("Plugins.Urgot.ComboMenu.UseRToSwapPosUnderTower", new CheckBox("Try to swap enemy pos under tower")); ComboMenu.AddSeparator(5); HarassMenu = MenuManager.Menu.AddSubMenu("Harass"); HarassMenu.AddGroupLabel("Harass mode settings for Urgot addon"); HarassMenu.AddLabel("Acid Hunter (Q) settings :"); HarassMenu.Add("Plugins.Urgot.HarassMenu.UseQ", new CheckBox("Use Q")); HarassMenu.Add("Plugins.Urgot.HarassMenu.MinManaQ", new Slider("Min mana percentage ({0}%) to use Q", 40, 1)); HarassMenu.AddSeparator(5); HarassMenu.AddLabel("Noxian Corrosive Charge (E) settings :"); HarassMenu.Add("Plugins.Urgot.HarassMenu.UseE", new CheckBox("Use E")); HarassMenu.Add("Plugins.Urgot.HarassMenu.MinManaE", new Slider("Min mana percentage ({0}%) to use E", 40, 1)); HarassMenu.AddSeparator(5); LaneClearMenu = MenuManager.Menu.AddSubMenu("Clear"); LaneClearMenu.AddGroupLabel("Lane clear settings for Urgot addon"); LaneClearMenu.AddLabel("Basic settings :"); LaneClearMenu.Add("Plugins.Urgot.LaneClearMenu.EnableLCIfNoEn", new CheckBox("Enable lane clear only if no enemies nearby")); var scanRange = LaneClearMenu.Add("Plugins.Urgot.LaneClearMenu.ScanRange", new Slider("Range to scan for enemies", 1500, 300, 2500)); scanRange.OnValueChange += (a, b) => { _changingRangeScan = true; Core.DelayAction(() => { if (!scanRange.IsLeftMouseDown && !scanRange.IsMouseInside) { _changingRangeScan = false; } }, 2000); }; LaneClearMenu.Add("Plugins.Urgot.LaneClearMenu.AllowedEnemies", new Slider("Allowed enemies amount", 1, 0, 5)); LaneClearMenu.AddSeparator(5); LaneClearMenu.AddLabel("Acid Hunter (Q) settings :"); LaneClearMenu.Add("Plugins.Urgot.LaneClearMenu.UseQInLaneClear", new CheckBox("Use Q in Lane Clear")); LaneClearMenu.Add("Plugins.Urgot.LaneClearMenu.UseQInJungleClear", new CheckBox("Use Q in Jungle Clear")); LaneClearMenu.Add("Plugins.Urgot.LaneClearMenu.MinManaQ", new Slider("Min mana percentage ({0}%) to use Q", 50, 1)); LaneClearMenu.AddSeparator(5); LaneClearMenu.AddLabel("Noxian Corrosive Charge (E) settings :"); LaneClearMenu.Add("Plugins.Urgot.LaneClearMenu.UseEInLaneClear", new CheckBox("Use E in Lane Clear")); LaneClearMenu.Add("Plugins.Urgot.LaneClearMenu.UseEInJungleClear", new CheckBox("Use E in Jungle Clear")); LaneClearMenu.Add("Plugins.Urgot.LaneClearMenu.MinManaE", new Slider("Min mana percentage ({0}%) to use E", 50, 1)); MiscMenu = MenuManager.Menu.AddSubMenu("Misc"); MiscMenu.AddGroupLabel("Misc settings for Urgot addon"); MiscMenu.AddLabel("Basic settings :"); MiscMenu.Add("Plugins.Urgot.MiscMenu.EnableKillsteal", new CheckBox("Enable Killsteal")); MiscMenu.AddSeparator(5); MiscMenu.AddLabel("Acid Hunter (Q) settings :"); MiscMenu.Add("Plugins.Urgot.MiscMenu.AutoHarass", new KeyBind("Auto harass", true, KeyBind.BindTypes.PressToggle, 'T')).OnValueChange += (a, b) => { if (AutoHarassBoolItemData != null) { AutoHarassBoolItemData.Value = b.NewValue; } }; MiscMenu.AddLabel("Enables Auto harass on enemies with E debuff in Lane Clear and Harass mode !"); MiscMenu.AddSeparator(5); MiscMenu.AddLabel("Terror Capacitor (W) settings :"); MiscMenu.Add("Plugins.Urgot.MiscMenu.WMinDamage", new Slider("Auto W if incoming damage will deal more than {0}% of my hp", 10, 1)); MiscMenu.AddSeparator(5); MiscMenu.AddLabel("Hyper-Kinetic Position Reverser (R) settings :"); MiscMenu.Add("Plugins.Urgot.MiscMenu.UseRAgainstGapclosers", new CheckBox("Use R against gapclosers")); MiscMenu.Add("Plugins.Urgot.MiscMenu.UseRToInterrupt", new CheckBox("Use R to interrupt dangerous spells")); MenuManager.BuildAntiGapcloserMenu(); MenuManager.BuildInterrupterMenu(); DrawingsMenu = MenuManager.Menu.AddSubMenu("Drawings"); DrawingsMenu.AddGroupLabel("Drawings settings for Urgot addon"); DrawingsMenu.AddLabel("Basic settings :"); DrawingsMenu.Add("Plugins.Urgot.DrawingsMenu.DrawSpellRangesWhenReady", new CheckBox("Draw spell ranges only when they are ready")); DrawingsMenu.AddSeparator(5); DrawingsMenu.AddLabel("Acid Hunter (Q) settings :"); DrawingsMenu.Add("Plugins.Urgot.DrawingsMenu.DrawQ", new CheckBox("Draw Q range")); DrawingsMenu.Add("Plugins.Urgot.DrawingsMenu.DrawQColor", new CheckBox("Change color", false)).OnValueChange += (a, b) => { if (!b.NewValue) { return; } ColorPicker[0].Initialize(Color.Aquamarine); a.CurrentValue = false; }; DrawingsMenu.AddSeparator(5); DrawingsMenu.AddLabel("Noxian Corrosive Charge (E) settings :"); DrawingsMenu.Add("Plugins.Urgot.DrawingsMenu.DrawE", new CheckBox("Draw E range")); DrawingsMenu.Add("Plugins.Urgot.DrawingsMenu.DrawEColor", new CheckBox("Change color", false)).OnValueChange += (a, b) => { if (!b.NewValue) { return; } ColorPicker[1].Initialize(Color.Aquamarine); a.CurrentValue = false; }; DrawingsMenu.AddSeparator(5); DrawingsMenu.AddLabel("Hyper-Kinetic Position Reverser (R) settings :"); DrawingsMenu.Add("Plugins.Urgot.DrawingsMenu.DrawR", new CheckBox("Draw R range", false)); DrawingsMenu.Add("Plugins.Urgot.DrawingsMenu.DrawRColor", new CheckBox("Change color", false)).OnValueChange += (a, b) => { if (!b.NewValue) { return; } ColorPicker[2].Initialize(Color.Aquamarine); a.CurrentValue = false; }; DrawingsMenu.AddSeparator(5); DrawingsMenu.AddLabel("Other settings :"); DrawingsMenu.Add("Plugins.Urgot.DrawingsMenu.DrawInfo", new CheckBox("Draw Infos")).OnValueChange += (a, b) => { if (b.NewValue) { DamageIndicator.DamageDelegate = HandleDamageIndicator; } else if (!b.NewValue) { DamageIndicator.DamageDelegate = null; } }; DrawingsMenu.Add("Plugins.Urgot.DrawingsMenu.InfoColor", new CheckBox("Change color", false)).OnValueChange += (a, b) => { if (!b.NewValue) { return; } ColorPicker[3].Initialize(Color.Aquamarine); a.CurrentValue = false; }; DrawingsMenu.AddLabel("Draws damage indicator"); AutoHarassBoolItemData = PermaShow.AddItem("Auto harass", new BoolItemData("Enable Auto harass", Settings.Misc.AutoHarass, 14)); }