public Cassiopeia() { Q = new SpellBase(SpellSlot.Q, SpellType.Circular, 850) { Width = 75, CastDelay = 400 }; W = new SpellBase(SpellSlot.W, SpellType.Circular, 850) { Width = 90, CastDelay = 250, Speed = 2500 }; E = new SpellBase(SpellSlot.E, SpellType.Targeted, 700) { Speed = 1900, CastDelay = 125 }; R = new SpellBase(SpellSlot.R, SpellType.Cone, 825) { Width = 80, CastDelay = 500 }; Spellbook.OnCastSpell += delegate(Spellbook sender, SpellbookCastSpellEventArgs args) { if (sender.Owner.IsMe) { switch (args.Slot) { case SpellSlot.Q: Q.LastSentTime = Core.GameTickCount; Q.LastEndPosition = args.EndPosition; break; case SpellSlot.W: W.LastSentTime = Core.GameTickCount; W.LastEndPosition = args.EndPosition; break; } } }; Obj_AI_Base.OnProcessSpellCast += delegate(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs args) { if (sender.IsMe) { switch (args.Slot) { case SpellSlot.Q: Q.LastCastTime = Core.GameTickCount; Q.LastEndPosition = args.End; break; case SpellSlot.W: W.LastCastTime = Core.GameTickCount; W.LastEndPosition = args.End; break; } } }; MenuManager.AddSubMenu("Keys"); { KeysMenu.AddValue("AssistedUltimate", new KeyBind("Assisted Ultimate", false, KeyBind.BindTypes.HoldActive, 'T')); ToggleManager.RegisterToggle( KeysMenu.AddValue("HarassToggle", new KeyBind("Harass Toggle", false, KeyBind.BindTypes.PressToggle, 'K')), delegate { if (!ModeManager.Combo) { Harass(); } }); ToggleManager.RegisterToggle( KeysMenu.AddValue("LastHitToggle", new KeyBind("LastHit Toggle", false, KeyBind.BindTypes.PressToggle, 'L')), delegate { if (!ModeManager.Combo) { LastHit(); } }); } Q.AddConfigurableHitChancePercent(); W.AddConfigurableHitChancePercent(); R.AddConfigurableHitChancePercent(); MenuManager.AddSubMenu("Combo"); { ComboMenu.AddValue("Q", new CheckBox("Use Q")); ComboMenu.AddValue("W", new CheckBox("Use W")); ComboMenu.AddStringList("E", "Use E", new[] { "Never", "If Poisoned", "Always" }, 1); ComboMenu.AddValue("R", new Slider("Use R if hit is greater than {0}", 3, 0, 5)); } MenuManager.AddSubMenu("Harass"); { HarassMenu.AddValue("Q", new CheckBox("Use Q")); HarassMenu.AddValue("W", new CheckBox("Use W")); HarassMenu.AddStringList("E", "Use E", new[] { "Never", "If Poisoned", "Always" }, 1); HarassMenu.AddValue("ManaPercent", new Slider("Minimum Mana Percent", 25)); } MenuManager.AddSubMenu("Clear"); { ClearMenu.AddValue("LaneClear", new GroupLabel("LaneClear")); { ClearMenu.AddValue("LaneClear.Q", new Slider("Use Q if hit is greater than {0}", 2, 0, 10)); ClearMenu.AddValue("LaneClear.W", new Slider("Use W if hit is greater than {0}", 3, 0, 10)); ClearMenu.AddStringList("LaneClear.E", "Use E", new[] { "Never", "If Poisoned", "Always" }, 1); ClearMenu.AddValue("LaneClear.ManaPercent", new Slider("Minimum Mana Percent", 50)); } ClearMenu.AddValue("LastHit", new GroupLabel("LastHit")); { ClearMenu.AddStringList("LastHit.E", "Use E", new[] { "Never", "If Poisoned", "Always" }, 1); ClearMenu.AddValue("LastHit.ManaPercent", new Slider("Minimum Mana Percent", 50)); } ClearMenu.AddValue("JungleClear", new GroupLabel("JungleClear")); { ClearMenu.AddValue("JungleClear.Q", new CheckBox("Use Q")); ClearMenu.AddValue("JungleClear.W", new CheckBox("Use W")); ClearMenu.AddValue("JungleClear.E", new CheckBox("Use E")); ClearMenu.AddValue("JungleClear.ManaPercent", new Slider("Minimum Mana Percent", 20)); } } MenuManager.AddKillStealMenu(); { KillStealMenu.AddValue("Q", new CheckBox("Use Q")); KillStealMenu.AddValue("W", new CheckBox("Use W")); KillStealMenu.AddValue("E", new CheckBox("Use E")); KillStealMenu.AddValue("R", new CheckBox("Use R", false)); } MenuManager.AddSubMenu("Automatic"); { AutomaticMenu.AddValue("R", new CheckBox("Use R on channeling spells")); } MenuManager.AddDrawingsMenu(); { Q.AddDrawings(); W.AddDrawings(false); E.AddDrawings(); R.AddDrawings(); DrawingsMenu.AddValue("Toggles", new CheckBox("Draw toggles status")); } }