public static void CreateMenu() { if (MainMenu != null) { return; } MainMenu = EloBuddy.SDK.Menu.MainMenu.AddMenu("Yasuo Evade", "YassEvade"); // Set up main menu MainMenu.AddGroupLabel("General Settings"); MainMenu.Add("fowDetection", new CheckBox("Enable FOW detection")); MainMenu.Add("processSpellDetection", new CheckBox("Enable Process Spell Detection")); MainMenu.Add("limitDetectionRange", new CheckBox("Limit Spell Detection Range")); MainMenu.Add("recalculatePosition", new CheckBox("Allow recalculation of evade position", false)); MainMenu.Add("moveToInitialPosition", new CheckBox("Move to desired position after evade.", false)); MainMenu.Add("serverTimeBuffer", new Slider("Server Time Buffer", 30)); MainMenu.AddSeparator(); MainMenu.AddSeparator(); MainMenu.AddGroupLabel("Humanizer"); MainMenu.Add("skillshotActivationDelay", new Slider("Skillshot Activation Delay", 0, 0, 400)); MainMenu.AddSeparator(10); MainMenu.Add("extraEvadeRange", new Slider("Extra Evade Range", 50, 0, 100)); MainMenu.Add("randomizeExtraEvadeRange", new CheckBox("Randomize Extra Evade Range", false)); // Set up skillshot menu var heroes = EntityManager.Heroes.Enemies; var heroNames = heroes.Select(obj => obj.ChampionName).ToArray(); var skillshots = SkillshotDatabase.Database.Where(s => heroNames.Contains(s.SpellData.ChampionName)).ToList(); skillshots.AddRange( SkillshotDatabase.Database.Where( s => s.SpellData.ChampionName == "AllChampions" && heroes.Any(obj => obj.Spellbook.Spells.Select(c => c.Name).Contains(s.SpellData.SpellName)))); SkillshotMenu = MainMenu.AddSubMenu("Skillshots"); SkillshotMenu.AddLabel(string.Format("Skillshots Loaded {0}", skillshots.Count)); SkillshotMenu.AddSeparator(); foreach (var c in skillshots) { var skillshotString = c.ToString().ToLower(); if (MenuSkillshots.ContainsKey(skillshotString)) { continue; } MenuSkillshots.Add(skillshotString, c); SkillshotMenu.AddGroupLabel(c.DisplayText); SkillshotMenu.Add(skillshotString + "/enable", new CheckBox("Dodge")); SkillshotMenu.Add(skillshotString + "/draw", new CheckBox("Draw")); if (c is LinearMissileSkillshot) { SkillshotMenu.Add(skillshotString + "/w", new CheckBox("Dodge With W")); } SkillshotMenu.Add(skillshotString + "/e", new CheckBox("Dodge With E")); var dangerous = new CheckBox("Dangerous", c.SpellData.IsDangerous); dangerous.OnValueChange += delegate(ValueBase <bool> sender, ValueBase <bool> .ValueChangeArgs args) { GetSkillshot(sender.SerializationId).SpellData.IsDangerous = args.NewValue; }; SkillshotMenu.Add(skillshotString + "/dangerous", dangerous); var dangerValue = new Slider("Danger Value", c.SpellData.DangerValue, 1, 5); dangerValue.OnValueChange += delegate(ValueBase <int> sender, ValueBase <int> .ValueChangeArgs args) { GetSkillshot(sender.SerializationId).SpellData.DangerValue = args.NewValue; }; SkillshotMenu.Add(skillshotString + "/dangervalue", dangerValue); SkillshotMenu.AddSeparator(); } // Set up spell menu SpellMenu = MainMenu.AddSubMenu("Spells"); SpellMenu.AddGroupLabel("Flash"); SpellMenu.Add("flash", new Slider("Danger Value", 5, 0, 5)); // Set up draw menu DrawMenu = MainMenu.AddSubMenu("Drawings"); DrawMenu.AddGroupLabel("Evade Drawings"); DrawMenu.Add("disableAllDrawings", new CheckBox("Disable All Drawings", false)); DrawMenu.Add("drawEvadePoint", new CheckBox("Draw Evade Point")); DrawMenu.Add("drawEvadeStatus", new CheckBox("Draw Evade Status")); DrawMenu.Add("drawDangerPolygon", new CheckBox("Draw Danger Polygon", false)); DrawMenu.AddSeparator(); DrawMenu.Add("drawPath", new CheckBox("Draw Autpathing Path")); // Set up controls menu ControlsMenu = MainMenu.AddSubMenu("Controls"); ControlsMenu.AddGroupLabel("Controls"); ControlsMenu.Add("enableEvade", new KeyBind("Enable Evade", true, KeyBind.BindTypes.PressToggle, 'M')); ControlsMenu.Add("dodgeOnlyDangerous", new KeyBind("Dodge Only Dangerous", false, KeyBind.BindTypes.HoldActive)); TargetedSpells.SpellDetectorWindwaller.Init(); }
public static void CreateMenu() { if (MainMenu != null) { return; } MainMenu = EloBuddy.SDK.Menu.MainMenu.AddMenu("MoonWalkEvade", "MoonWalkEvade"); MainMenu.Add("fowDetection", new CheckBox("Enable FOW Detection")); MainMenu.Add("serverTimeBuffer", new Slider("Server Time Buffer", 50, -100, 100)); MainMenu.AddSeparator(); MainMenu.Add("processSpellDetection", new CheckBox("Enable Fast Spell Detection")); MainMenu.Add("limitDetectionRange", new CheckBox("Limit Spell Detection Range")); MainMenu.Add("recalculatePosition", new CheckBox("Allow Recalculation Of Evade Position", false)); MainMenu.Add("moveToInitialPosition", new CheckBox("Move To Desired Position After Evade", false)); MainMenu.Add("forceEvade", new CheckBox("Try To Evade If Impossible")); MainMenu.Add("extraRadius", new Slider("Extra Skillshot Radius", 0, 0, 50)); MainMenu.AddSeparator(); MainMenu.Add("minComfortDistance", new Slider("Minimum Comfort Distance To Enemies", 550, 0, 1000)); MainMenu.Add("enemyComfortCount", new Slider("Minimum Amount of Enemies To Attend Comfort Distance", 3, 1, 5)); HumanizerMenu = MainMenu.AddSubMenu("Humanizer"); HumanizerMenu.Add("skillshotActivationDelay", new Slider("Reaction Delay", 0, 0, 400)); HumanizerMenu.AddSeparator(); HumanizerMenu.Add("extraEvadeRange", new Slider("Extra Evade Range", 0, 0, 300)); HumanizerMenu.Add("randomizeExtraEvadeRange", new CheckBox("Randomize Extra Range", false)); HumanizerMenu.AddSeparator(); HumanizerMenu.Add("stutterDistanceTrigger", new Slider("Stutter Trigger Distance", 200, 0, 400)); HumanizerMenu.AddLabel("When your evade point is 200 units or less from you away"); HumanizerMenu.AddLabel("it will be changed to prevent you from standing still at the old point"); HumanizerMenu.AddSeparator(); HumanizerMenu.AddStringList("stutterPointFindType", "Anti Stutter Evade Point Search", new [] { "Mouse Position", "Same As Player Direction", "Farest Away" }, 0); HumanizerMenu.AddLabel("It's the kind of searching method to find a new point"); SpellBlockerMenu = MainMenu.AddSubMenu("Spell Blocker"); SpellBlockerMenu.AddGroupLabel("Spells to block while evading"); SpellBlockerMenu.Add("blockDangerousDashes", new CheckBox("Block Dangerous Dashes")); SpellBlockerMenu.AddSeparator(10); for (int slot = 0; slot < 4; slot++) { var currentSlot = (SpellSlot)slot; bool block = SpellBlocker.ShouldBlock(currentSlot); SpellBlockerMenu.Add("block" + Player.Instance.ChampionName + "/" + currentSlot, new CheckBox("Block " + currentSlot, block)); } var heroes = Program.DeveloperMode ? EntityManager.Heroes.AllHeroes : EntityManager.Heroes.Enemies; var heroNames = heroes.Select(obj => obj.ChampionName).ToArray(); var skillshots = SkillshotDatabase.Database.Where(s => heroNames.Contains(s.OwnSpellData.ChampionName)).ToList(); skillshots.AddRange( SkillshotDatabase.Database.Where( s => s.OwnSpellData.ChampionName == "AllChampions" && heroes.Any(obj => obj.Spellbook.Spells.Select(c => c.Name).Contains(s.OwnSpellData.SpellName)))); var evadeSpells = EvadeSpellDatabase.Spells.Where(s => Player.Instance.ChampionName.Contains(s.ChampionName)).ToList(); evadeSpells.AddRange(EvadeSpellDatabase.Spells.Where(s => s.ChampionName == "AllChampions")); SkillshotMenu = MainMenu.AddSubMenu("Skillshots"); foreach (var c in skillshots) { var skillshotString = c.ToString().ToLower(); if (MenuSkillshots.ContainsKey(skillshotString)) { continue; } MenuSkillshots.Add(skillshotString, c); SkillshotMenu.AddGroupLabel(c.DisplayText); SkillshotMenu.Add(skillshotString + "/enable", new CheckBox("Dodge", c.OwnSpellData.EnabledByDefault)); SkillshotMenu.Add(skillshotString + "/draw", new CheckBox("Draw")); var dangerous = new CheckBox("Dangerous", c.OwnSpellData.IsDangerous); dangerous.OnValueChange += delegate(ValueBase <bool> sender, ValueBase <bool> .ValueChangeArgs args) { GetSkillshot(sender.SerializationId).OwnSpellData.IsDangerous = args.NewValue; }; SkillshotMenu.Add(skillshotString + "/dangerous", dangerous); var dangerValue = new Slider("Danger Value", c.OwnSpellData.DangerValue, 1, 5); dangerValue.OnValueChange += delegate(ValueBase <int> sender, ValueBase <int> .ValueChangeArgs args) { GetSkillshot(sender.SerializationId).OwnSpellData.DangerValue = args.NewValue; }; SkillshotMenu.Add(skillshotString + "/dangervalue", dangerValue); SkillshotMenu.AddSeparator(); } // Set up spell menu EvadeSpellMenu = MainMenu.AddSubMenu("Evading Spells"); foreach (var e in evadeSpells) { var evadeSpellString = e.SpellName; if (MenuEvadeSpells.Any(x => x.SpellName == evadeSpellString)) { continue; } MenuEvadeSpells.Add(e); EvadeSpellMenu.AddGroupLabel(evadeSpellString); EvadeSpellMenu.Add(evadeSpellString + "/enable", new CheckBox("Use " + (!e.isItem ? e.Slot.ToString() : ""))); var dangerValueSlider = new Slider("Danger Value", e.DangerValue, 1, 5); dangerValueSlider.OnValueChange += delegate(ValueBase <int> sender, ValueBase <int> .ValueChangeArgs args) { MenuEvadeSpells.First(x => x.SpellName.Contains(sender.SerializationId.Split('/')[0])).DangerValue = args.NewValue; }; EvadeSpellMenu.Add(evadeSpellString + "/dangervalue", dangerValueSlider); EvadeSpellMenu.AddSeparator(); } DrawMenu = MainMenu.AddSubMenu("Drawings"); DrawMenu.Add("disableAllDrawings", new CheckBox("Disable All Drawings", false)); DrawMenu.Add("drawEvadePoint", new CheckBox("Draw Evade Point")); DrawMenu.Add("drawEvadeStatus", new CheckBox("Draw Evade Status")); DrawMenu.Add("drawSkillshots", new CheckBox("Draw Skillshots")); DrawMenu.AddStringList("drawType", "Drawing Type", new [] { "Fancy", "Fast" }, 0); HotkeysMenu = MainMenu.AddSubMenu("KeyBinds"); HotkeysMenu.Add("enableEvade", new KeyBind("Enable Evade", true, KeyBind.BindTypes.PressToggle, 'M')); HotkeysMenu.Add("dodgeOnlyDangerousH", new KeyBind("Dodge Only Dangerous (Hold)", false, KeyBind.BindTypes.HoldActive)); HotkeysMenu.Add("dodgeOnlyDangerousT", new KeyBind("Dodge Only Dangerous (Toggle)", false, KeyBind.BindTypes.PressToggle)); CollisionMenu = MainMenu.AddSubMenu("Collision"); CollisionMenu.Add("minion", new CheckBox("Attend Minion Collision")); CollisionMenu.Add("yasuoWall", new CheckBox("Attend Yasuo Wall")); CollisionMenu.Add("useProj", new CheckBox("Use Spell Projection", false)); DebugMenu = MainMenu.AddSubMenu("Debug"); DebugMenu.Add("debugMode", new KeyBind("Debug Mode", false, KeyBind.BindTypes.PressToggle)); DebugMenu.Add("debugModeIntervall", new Slider("Debug Skillshot Creation Intervall", 1000, 0, 12000)); DebugMenu.AddStringList("debugMissile", "Selected Skillshot", SkillshotDatabase.Database.Select(x => x.OwnSpellData.SpellName).ToArray(), 0); DebugMenu.Add("isProjectile", new CheckBox("Is Projectile?")); DebugMenu.Add("manageMovementDelay", new CheckBox("Manage Orbwalker Movement Delay", false)); }
public static void CreateMenu() { if (MainMenu != null) { return; } MainMenu = EloBuddy.SDK.Menu.MainMenu.AddMenu("MoonWalkEvade", "MoonWalkEvade"); // Set up main menu MainMenu.AddGroupLabel("Genel Ayarlar"); MainMenu.Add("evadeMode", new ComboBox("Kaçış Modu", 0, "Akıllı - Moon Walk Stili", "Hızlı - EvadePlus Stili")); MainMenu.AddSeparator(); MainMenu.Add("fowDetection", new CheckBox("Görülmeyen yerden büyülerden kaç")); MainMenu.Add("processSpellDetection", new CheckBox("Hızlı büyü Tespit etmeyi Aktif Et")); MainMenu.Add("limitDetectionRange", new CheckBox("Büyü Tespit Etme Menzilini Sınırla")); MainMenu.Add("recalculatePosition", new CheckBox("Kaçış Pozisyonunu yeniden Hesapla", false)); MainMenu.Add("moveToInitialPosition", new CheckBox("Kaçarken İstenen Pozisyona Doğru Yürü", false)); MainMenu.AddSeparator(); MainMenu.Add("minComfortDist", new Slider("Düşmanlardan en iyi pozisyona doğru ilerle(değiştirmeyin)", 550, 0, 1000)); MainMenu.AddLabel("Mümkünse"); MainMenu.AddSeparator(10); MainMenu.Add("ignoreComfort", new Slider("X kadar düşman varsa bu pozisyonu hesaplama(değiştirmeyin)", 1, 1, 5)); MainMenu.AddSeparator(); MainMenu.AddGroupLabel("İnsancıl Ayar"); MainMenu.Add("skillshotActivationDelay", new Slider("Tepki Süresi", 0, 0, 400)); MainMenu.AddSeparator(); MainMenu.Add("extraEvadeRange", new Slider("Ekstra Kaçma Mesafesi", 0, 0, 300)); MainMenu.Add("randomizeExtraEvadeRange", new CheckBox("Karışık Ekstra Menzil", false)); var heroes = Program.DeveloperMode ? EntityManager.Heroes.AllHeroes : EntityManager.Heroes.Enemies; var heroNames = heroes.Select(obj => obj.ChampionName).ToArray(); var skillshots = SkillshotDatabase.Database.Where(s => heroNames.Contains(s.OwnSpellData.ChampionName)).ToList(); skillshots.AddRange( SkillshotDatabase.Database.Where( s => s.OwnSpellData.ChampionName == "AllChampions" && heroes.Any(obj => obj.Spellbook.Spells.Select(c => c.Name).Contains(s.OwnSpellData.SpellName)))); var evadeSpells = EvadeSpellDatabase.Spells.Where(s => Player.Instance.ChampionName.Contains(s.ChampionName)).ToList(); evadeSpells.AddRange(EvadeSpellDatabase.Spells.Where(s => s.ChampionName == "AllChampions")); SkillshotMenu = MainMenu.AddSubMenu("Büyüler"); foreach (var c in skillshots) { var skillshotString = c.ToString().ToLower(); if (MenuSkillshots.ContainsKey(skillshotString)) { continue; } MenuSkillshots.Add(skillshotString, c); SkillshotMenu.AddGroupLabel(c.DisplayText); SkillshotMenu.Add(skillshotString + "/enable", new CheckBox("Büyülerden Kaçma", c.OwnSpellData.EnabledByDefault)); SkillshotMenu.Add(skillshotString + "/draw", new CheckBox("Göster")); var dangerous = new CheckBox("Tehlike", c.OwnSpellData.IsDangerous); dangerous.OnValueChange += delegate(ValueBase <bool> sender, ValueBase <bool> .ValueChangeArgs args) { GetSkillshot(sender.SerializationId).OwnSpellData.IsDangerous = args.NewValue; }; SkillshotMenu.Add(skillshotString + "/dangerous", dangerous); var dangerValue = new Slider("Tehlike Seviyesi", c.OwnSpellData.DangerValue, 1, 5); dangerValue.OnValueChange += delegate(ValueBase <int> sender, ValueBase <int> .ValueChangeArgs args) { GetSkillshot(sender.SerializationId).OwnSpellData.DangerValue = args.NewValue; }; SkillshotMenu.Add(skillshotString + "/dangervalue", dangerValue); SkillshotMenu.AddSeparator(); } // Set up spell menu SpellMenu = MainMenu.AddSubMenu("Büyülerden Kaç"); foreach (var e in evadeSpells) { var evadeSpellString = e.SpellName; if (MenuEvadeSpells.Any(x => x.SpellName == evadeSpellString)) { continue; } MenuEvadeSpells.Add(e); SpellMenu.AddGroupLabel(evadeSpellString); SpellMenu.Add(evadeSpellString + "/enable", new CheckBox("Kullan " + (!e.isItem ? e.Slot.ToString() : ""))); var dangerValueSlider = new Slider("Tehlike Seviyesi", e.DangerValue, 1, 5); dangerValueSlider.OnValueChange += delegate(ValueBase <int> sender, ValueBase <int> .ValueChangeArgs args) { MenuEvadeSpells.First(x => x.SpellName.Contains(sender.SerializationId.Split('/')[0])).DangerValue = args.NewValue; }; SpellMenu.Add(evadeSpellString + "/dangervalue", dangerValueSlider); SpellMenu.AddSeparator(); } DrawMenu = MainMenu.AddSubMenu("Göstergeler,Çizimler"); DrawMenu.Add("disableAllDrawings", new CheckBox("Tüm Göstergeler Devredışı", false)); DrawMenu.Add("drawEvadePoint", new CheckBox("Kaçılacak noktayı Göster")); DrawMenu.Add("drawEvadeStatus", new CheckBox("Kaçma Durumunu Göster")); DrawMenu.Add("drawSkillshots", new CheckBox("Büyülerin gittiği yeri")); DrawMenu.Add("drawDangerPolygon", new CheckBox("Tehlikeli Alanı Göster")); HotkeysMenu = MainMenu.AddSubMenu("Tuşlar"); HotkeysMenu.Add("enableEvade", new KeyBind("Kaçma Aktif", true, KeyBind.BindTypes.PressToggle, 'M')); HotkeysMenu.Add("dodgeOnlyDangerousH", new KeyBind("Sadece Tehlikede Kaç (Basılı Tut)", false, KeyBind.BindTypes.HoldActive)); HotkeysMenu.Add("dodgeOnlyDangerousT", new KeyBind("Sadece Tehlikede Kaç (Tuş)", false, KeyBind.BindTypes.PressToggle)); HotkeysMenu.AddSeparator(); HotkeysMenu.Add("debugMode", new KeyBind("Hata Ayıklama Modu", false, KeyBind.BindTypes.PressToggle)); HotkeysMenu.Add("debugModeIntervall", new Slider("Hata Ayıklama Süresi Aralığı", 1000, 0, 5000)); HotkeysMenu.AddStringList("debugMissile", "Seçilen Büyüler", SkillshotDatabase.Database.Select(x => x.OwnSpellData.SpellName).ToArray(), 0); HotkeysMenu.Add("isProjectile", new CheckBox("Mermi?")); CollisionMenu = MainMenu.AddSubMenu("Önüne birşey gelmesini ayarla(Collision)"); CollisionMenu.Add("minion", new CheckBox("Minyonun önüne geçmesini Hesapla")); CollisionMenu.Add("yasuoWall", new CheckBox("Yasuo Duvaırını Hesapla")); CollisionMenu.Add("useProj", new CheckBox("Büyü Öngörümü Kullan", false)); }
public static void CreateMenu() { if (MainMenu != null) { return; } MainMenu = EloBuddy.SDK.Menu.MainMenu.AddMenu("Evade+", "EvadePlus"); // Set up main menu MainMenu.AddGroupLabel("General Settings"); MainMenu.Add("fowDetection", new CheckBox("Aktif savas sisi dedektoru")); MainMenu.AddLabel("On: for dodging through fog of war, Off: for more human behaviour"); MainMenu.AddSeparator(3); MainMenu.Add("processSpellDetection", new CheckBox("Buyu algilama dedektoru etkinlestir")); MainMenu.AddLabel("skillshot detection before the missile is created, recommended: On"); MainMenu.AddSeparator(3); MainMenu.Add("limitDetectionRange", new CheckBox("Buyu dedektoru limiti")); MainMenu.AddLabel("detect only skillshots near you, recommended: On"); MainMenu.AddSeparator(3); MainMenu.Add("recalculatePosition", new CheckBox("Kacinma pozisyonunun yeniden hesaplanmasina izin ver", false)); MainMenu.AddLabel("allow change of evading path, recommended: Off"); MainMenu.AddSeparator(3); MainMenu.Add("moveToInitialPosition", new CheckBox("Kacinma sonrasinda arzulanan yere git.", false)); MainMenu.AddLabel("move to your desired location after evading"); MainMenu.AddSeparator(3); MainMenu.Add("serverTimeBuffer", new Slider("Sunucu zaman arabellegi", 0, 0, 200)); MainMenu.AddLabel("the extra time it is included during evade calculation"); MainMenu.AddSeparator(); MainMenu.AddGroupLabel("Humanizer"); MainMenu.Add("skillshotActivationDelay", new Slider("Geciktirme", 0, 0, 400)); MainMenu.AddSeparator(10); MainMenu.Add("extraEvadeRange", new Slider("Extra Kacma uzakligi", 0, 0, 300)); MainMenu.Add("randomizeExtraEvadeRange", new CheckBox("Kacma menzilini rastgele sec", false)); // Set up skillshot menu var heroes = Program.DeveloperMode ? EntityManager.Heroes.AllHeroes : EntityManager.Heroes.Enemies; var heroNames = heroes.Select(obj => obj.ChampionName).ToArray(); var skillshots = SkillshotDatabase.Database.Where(s => heroNames.Contains(s.SpellData.ChampionName)).ToList(); skillshots.AddRange( SkillshotDatabase.Database.Where( s => s.SpellData.ChampionName == "AllChampions" && heroes.Any(obj => obj.Spellbook.Spells.Select(c => c.Name).Contains(s.SpellData.SpellName)))); SkillshotMenu = MainMenu.AddSubMenu("Skillshots"); SkillshotMenu.AddLabel(string.Format("Skillshots Loaded {0}", skillshots.Count)); SkillshotMenu.AddSeparator(); foreach (var c in skillshots) { var skillshotString = c.ToString().ToLower(); if (MenuSkillshots.ContainsKey(skillshotString)) { continue; } MenuSkillshots.Add(skillshotString, c); SkillshotMenu.AddGroupLabel(c.DisplayText); SkillshotMenu.Add(skillshotString + "/enable", new CheckBox("Kacis")); SkillshotMenu.Add(skillshotString + "/draw", new CheckBox("Goster")); var dangerous = new CheckBox("Dangerous", c.SpellData.IsDangerous); dangerous.OnValueChange += delegate(ValueBase <bool> sender, ValueBase <bool> .ValueChangeArgs args) { GetSkillshot(sender.SerializationId).SpellData.IsDangerous = args.NewValue; }; SkillshotMenu.Add(skillshotString + "/dangerous", dangerous); var dangerValue = new Slider("Danger Value", c.SpellData.DangerValue, 1, 5); dangerValue.OnValueChange += delegate(ValueBase <int> sender, ValueBase <int> .ValueChangeArgs args) { GetSkillshot(sender.SerializationId).SpellData.DangerValue = args.NewValue; }; SkillshotMenu.Add(skillshotString + "/dangervalue", dangerValue); SkillshotMenu.AddSeparator(); } // Set up spell menu SpellMenu = MainMenu.AddSubMenu("Evading Spells"); SpellMenu.AddGroupLabel("Flash"); SpellMenu.Add("flash", new Slider("Danger Value", 5, 0, 5)); // Set up draw menu DrawMenu = MainMenu.AddSubMenu("Drawings"); DrawMenu.AddGroupLabel("Evade Drawings"); DrawMenu.Add("disableAllDrawings", new CheckBox("Butun cizimler devre disi", false)); DrawMenu.Add("drawEvadePoint", new CheckBox("Goster Kacma noktasi")); DrawMenu.Add("drawEvadeStatus", new CheckBox("Goster Kacma durumu")); DrawMenu.Add("drawDangerPolygon", new CheckBox("Goster tehlikeli bolge", false)); DrawMenu.AddSeparator(); DrawMenu.Add("drawPath", new CheckBox("Goster yurume yolu")); // Set up controls menu HotkeysMenu = MainMenu.AddSubMenu("Hotkeys"); HotkeysMenu.AddGroupLabel("Hotkeys"); HotkeysMenu.Add("enableEvade", new KeyBind("Kacma Etkin", true, KeyBind.BindTypes.PressToggle, 'M')); HotkeysMenu.Add("dodgeOnlyDangerous", new KeyBind("Sadece tehlikeden kac", false, KeyBind.BindTypes.HoldActive)); HotkeysMenu.Add("dodgeOnlyDangeroustoggle", new KeyBind("Sadece tehlikeden kac Tusu", false, KeyBind.BindTypes.PressToggle)); }
public static void CreateMenu() { if (MainMenu != null) { return; } MainMenu = EloBuddy.SDK.Menu.MainMenu.AddMenu("MoonWalkEvade", "MoonWalkEvade"); // Set up main menu MainMenu.AddGroupLabel("General Settings"); MainMenu.Add("evadeMode", new ComboBox("Evade Mode", 0, "Smooth - Moon Walk Style", "Fast - EvadePlus Style")); MainMenu.AddSeparator(); MainMenu.Add("fowDetection", new CheckBox("Enable FOW Detection")); MainMenu.Add("processSpellDetection", new CheckBox("Enable Fast Spell Detection")); MainMenu.Add("limitDetectionRange", new CheckBox("Limit Spell Detection Range")); MainMenu.Add("recalculatePosition", new CheckBox("Allow Recalculation Of Evade Position", false)); MainMenu.Add("moveToInitialPosition", new CheckBox("Move To Desired Position After Evade", false)); MainMenu.AddSeparator(); MainMenu.Add("minComfortDist", new Slider("Minimum Comfort Distance To Enemies", 550, 0, 1000)); MainMenu.AddLabel("If possible"); MainMenu.AddSeparator(10); MainMenu.Add("ignoreComfort", new Slider("Ignore Comfort Distance For X Enemies", 1, 1, 5)); MainMenu.AddSeparator(); MainMenu.AddGroupLabel("Humanizer"); MainMenu.Add("skillshotActivationDelay", new Slider("Reaction Delay", 0, 0, 400)); MainMenu.AddSeparator(); MainMenu.Add("extraEvadeRange", new Slider("Extra Evade Range", 0, 0, 300)); MainMenu.Add("randomizeExtraEvadeRange", new CheckBox("Randomize Extra Range", false)); var heroes = Program.DeveloperMode ? EntityManager.Heroes.AllHeroes : EntityManager.Heroes.Enemies; var heroNames = heroes.Select(obj => obj.ChampionName).ToArray(); var skillshots = SkillshotDatabase.Database.Where(s => heroNames.Contains(s.OwnSpellData.ChampionName)).ToList(); skillshots.AddRange( SkillshotDatabase.Database.Where( s => s.OwnSpellData.ChampionName == "AllChampions" && heroes.Any(obj => obj.Spellbook.Spells.Select(c => c.Name).Contains(s.OwnSpellData.SpellName)))); var evadeSpells = EvadeSpellDatabase.Spells.Where(s => Player.Instance.ChampionName.Contains(s.ChampionName)).ToList(); evadeSpells.AddRange(EvadeSpellDatabase.Spells.Where(s => s.ChampionName == "AllChampions")); SkillshotMenu = MainMenu.AddSubMenu("Skillshots"); foreach (var c in skillshots) { var skillshotString = c.ToString().ToLower(); if (MenuSkillshots.ContainsKey(skillshotString)) { continue; } MenuSkillshots.Add(skillshotString, c); SkillshotMenu.AddGroupLabel(c.DisplayText); SkillshotMenu.Add(skillshotString + "/enable", new CheckBox("Dodge", c.OwnSpellData.EnabledByDefault)); SkillshotMenu.Add(skillshotString + "/draw", new CheckBox("Draw")); var dangerous = new CheckBox("Dangerous", c.OwnSpellData.IsDangerous); dangerous.OnValueChange += delegate(ValueBase <bool> sender, ValueBase <bool> .ValueChangeArgs args) { GetSkillshot(sender.SerializationId).OwnSpellData.IsDangerous = args.NewValue; }; SkillshotMenu.Add(skillshotString + "/dangerous", dangerous); var dangerValue = new Slider("Danger Value", c.OwnSpellData.DangerValue, 1, 5); dangerValue.OnValueChange += delegate(ValueBase <int> sender, ValueBase <int> .ValueChangeArgs args) { GetSkillshot(sender.SerializationId).OwnSpellData.DangerValue = args.NewValue; }; SkillshotMenu.Add(skillshotString + "/dangervalue", dangerValue); SkillshotMenu.AddSeparator(); } // Set up spell menu SpellMenu = MainMenu.AddSubMenu("Evading Spells"); foreach (var e in evadeSpells) { var evadeSpellString = e.SpellName; if (MenuEvadeSpells.Any(x => x.SpellName == evadeSpellString)) { continue; } MenuEvadeSpells.Add(e); SpellMenu.AddGroupLabel(evadeSpellString); SpellMenu.Add(evadeSpellString + "/enable", new CheckBox("Use " + (!e.isItem ? e.Slot.ToString() : ""))); var dangerValueSlider = new Slider("Danger Value", e.DangerValue, 1, 5); dangerValueSlider.OnValueChange += delegate(ValueBase <int> sender, ValueBase <int> .ValueChangeArgs args) { MenuEvadeSpells.First(x => x.SpellName.Contains(sender.SerializationId.Split('/')[0])).DangerValue = args.NewValue; }; SpellMenu.Add(evadeSpellString + "/dangervalue", dangerValueSlider); SpellMenu.AddSeparator(); } DrawMenu = MainMenu.AddSubMenu("Drawings"); DrawMenu.Add("disableAllDrawings", new CheckBox("Disable All Drawings", false)); DrawMenu.Add("drawEvadePoint", new CheckBox("Draw Evade Point")); DrawMenu.Add("drawEvadeStatus", new CheckBox("Draw Evade Status")); DrawMenu.Add("drawSkillshots", new CheckBox("Draw Skillshots")); DrawMenu.Add("drawDangerPolygon", new CheckBox("Draw Danger Polygon")); HotkeysMenu = MainMenu.AddSubMenu("KeyBinds"); HotkeysMenu.Add("enableEvade", new KeyBind("Enable Evade", true, KeyBind.BindTypes.PressToggle, 'M')); HotkeysMenu.Add("dodgeOnlyDangerousH", new KeyBind("Dodge Only Dangerous (Hold)", false, KeyBind.BindTypes.HoldActive)); HotkeysMenu.Add("dodgeOnlyDangerousT", new KeyBind("Dodge Only Dangerous (Toggle)", false, KeyBind.BindTypes.PressToggle)); HotkeysMenu.AddSeparator(); HotkeysMenu.Add("debugMode", new KeyBind("Debug Mode", false, KeyBind.BindTypes.PressToggle)); HotkeysMenu.Add("debugModeIntervall", new Slider("Debug Skillshot Creation Intervall", 1000, 0, 5000)); HotkeysMenu.AddStringList("debugMissile", "Selected Skillshot", SkillshotDatabase.Database.Select(x => x.OwnSpellData.SpellName).ToArray(), 0); HotkeysMenu.Add("isProjectile", new CheckBox("Is Projectile?")); CollisionMenu = MainMenu.AddSubMenu("Collision"); CollisionMenu.Add("minion", new CheckBox("Attend Minion Collision")); CollisionMenu.Add("yasuoWall", new CheckBox("Attend Yasuo Wall")); CollisionMenu.Add("useProj", new CheckBox("Use Spell Projection", false)); }
public static void CreateMenu() { if (MainMenu != null) { return; } MainMenu = EloBuddy.SDK.Menu.MainMenu.AddMenu("MoonWalkEvade", "MoonWalkEvade"); MainMenu.Add("evadeMode", new ComboBox("Kacma modu", new[] { "Puruzsuz", "Hizli" })); MainMenu.Add("fowDetection", new CheckBox("Aktif Savas sisi algilama")); //MainMenu.Add("serverTimeBuffer", new Slider("Server Time Buffer")); MainMenu.AddSeparator(50); MainMenu.AddGroupLabel("Misc"); MainMenu.Add("processSpellDetection", new CheckBox("Hizli spell algilama Ekin")); MainMenu.Add("limitDetectionRange", new CheckBox("Spell algilama limit uzakligi")); MainMenu.Add("moveToInitialPosition", new CheckBox("Kactiktan sonra istenen yere git", false)); MainMenu.Add("forceEvade", new CheckBox("Imkansizsa kacmak icin deneyin")); MainMenu.AddSeparator(50); MainMenu.AddGroupLabel("Recalculation"); MainMenu.Add("recalculatePosition", new CheckBox("Kacma Pozisyonunun Yeniden Hesaplanmasina Izin Verin")); MainMenu.Add("recalculationSpeed", new Slider("Yeniden Hesaplama Gecikmesi", 500, 0, 1000)); MainMenu.AddLabel("Low Delay is Cpu Intense"); MainMenu.Add("minRecalculationAngle", new Slider("Yeniden hesaplama icin minimum Aci Degistirme [Derecelerde]", 2, 0, 50)); MainMenu.AddSeparator(50); MainMenu.AddGroupLabel("Buffers"); MainMenu.Add("minDangerTurretEvade", new Slider("Kule Altinda Kacmak Icin Minimum Tehlike Degeri", 4, 1, 5)); MainMenu.Add("minComfortDistance", new Slider("Düşmana Minimum Rahatlik Mesafesi", 550, 0, 1000)); MainMenu.Add("enemyComfortCount", new Slider("Rahatlik Mesafesine Katilmak Icin Dusmanlarin Minimum Miktarı", 3, 1, 5)); MainMenu.AddSeparator(); MainMenu.Add("dontEvadeComfort", new CheckBox("Rahatlik Noktasi Bulunmazsa kacma")); MainMenu.AddSeparator(0); MainMenu.Add("letAAPass", new CheckBox("Atak kacirdiktan Sonradan Kacinilmasi")); MainMenu.AddLabel("Otherwise forbid auto attacks if in danger"); HumanizerMenu = MainMenu.AddSubMenu("Humanizer"); HumanizerMenu.Add("skillshotActivationDelay", new Slider("Tepki Geciktirme", 0, 0, 400)); HumanizerMenu.AddSeparator(); HumanizerMenu.Add("useFastInSmooth", new CheckBox("Pürüzsüz Modda Hizli Kacinma Gerekirse")); HumanizerMenu.Add("extraEvadeRange", new Slider("Extra Kacma mesafesi", 0, 0, 300)); HumanizerMenu.Add("randomizeExtraEvadeRange", new CheckBox("Ekstra Menzil Rastgele Olustur", false)); HumanizerMenu.AddSeparator(); HumanizerMenu.Add("stutterDistanceTrigger", new Slider("Stutter Tetikleme Mesafesi", 200, 0, 400)); HumanizerMenu.AddLabel("Kacinma noktaniz senden 200 birim veya daha uzak oldugunda"); HumanizerMenu.AddLabel("Eski noktada durmanizi önlemek icin değistirilecek"); HumanizerMenu.AddSeparator(); HumanizerMenu.AddStringList("stutterPointFindType", "Anti Stutter Evade Point Search", new [] { "Mouse Position", "Same As Player Direction", "Farest Away" }, 0); HumanizerMenu.AddLabel("Yeni bir nokta bulmak icin arama yontemi turudur"); SpellBlockerMenu = MainMenu.AddSubMenu("Spell Blocker"); SpellBlockerMenu.AddGroupLabel("Spells to block while evading"); SpellBlockerMenu.Add("blockDangerousDashes", new CheckBox("Tehlikeli hamleleri Engelle")); SpellBlockerMenu.AddSeparator(10); for (int slot = 0; slot < 4; slot++) { var currentSlot = (SpellSlot)slot; bool block = SpellBlocker.ShouldBlock(currentSlot); SpellBlockerMenu.Add("block" + Player.Instance.ChampionName + "/" + currentSlot, new CheckBox("Block " + currentSlot, block)); } var heroes = Program.DeveloperMode ? EntityManager.Heroes.AllHeroes : EntityManager.Heroes.Enemies; var heroNames = heroes.Select(obj => obj.ChampionName).ToArray(); var skillshots = SkillshotDatabase.Database.Where(s => heroNames.Contains(s.OwnSpellData.ChampionName)).ToList(); skillshots.AddRange( SkillshotDatabase.Database.Where( s => s.OwnSpellData.ChampionName == "AllChampions" || heroes.Any(obj => obj.Spellbook.Spells.Select(c => c.Name).Contains(s.OwnSpellData.SpellName)))); var evadeSpells = EvadeSpellDatabase.Spells.Where(s => Player.Instance.ChampionName.Contains(s.ChampionName)).ToList(); evadeSpells.AddRange(EvadeSpellDatabase.Spells.Where(s => s.ChampionName == "AllChampions")); SkillshotMenu = MainMenu.AddSubMenu("Skillshots"); foreach (var c in skillshots) { var skillshotString = c.ToString().ToLower(); if (MenuSkillshots.ContainsKey(skillshotString)) { continue; } MenuSkillshots.Add(skillshotString, c); SkillshotMenu.AddGroupLabel(c.DisplayText); SkillshotMenu.Add(skillshotString + "/enable", new CheckBox("Kac", c.OwnSpellData.EnabledByDefault)); SkillshotMenu.Add(skillshotString + "/draw", new CheckBox("Goster")); var dangerous = new CheckBox("Dangerous", c.OwnSpellData.IsDangerous); dangerous.OnValueChange += delegate(ValueBase <bool> sender, ValueBase <bool> .ValueChangeArgs args) { GetSkillshot(sender.SerializationId).OwnSpellData.IsDangerous = args.NewValue; }; SkillshotMenu.Add(skillshotString + "/dangerous", dangerous); var dangerValue = new Slider("Danger Value", c.OwnSpellData.DangerValue, 1, 5); dangerValue.OnValueChange += delegate(ValueBase <int> sender, ValueBase <int> .ValueChangeArgs args) { GetSkillshot(sender.SerializationId).OwnSpellData.DangerValue = args.NewValue; }; SkillshotMenu.Add(skillshotString + "/dangervalue", dangerValue); SkillshotMenu.AddSeparator(); } // Set up spell menu EvadeSpellMenu = MainMenu.AddSubMenu("Evading Spells"); foreach (var e in evadeSpells) { var evadeSpellString = e.SpellName; if (MenuEvadeSpells.Any(x => x.SpellName == evadeSpellString)) { continue; } MenuEvadeSpells.Add(e); EvadeSpellMenu.AddGroupLabel(evadeSpellString); EvadeSpellMenu.Add(evadeSpellString + "/enable", new CheckBox("Kullan " + (!e.isItem ? e.Slot.ToString() : ""))); var dangerValueSlider = new Slider("Tehlike Duzeyi", e.DangerValue, 1, 5); dangerValueSlider.OnValueChange += delegate(ValueBase <int> sender, ValueBase <int> .ValueChangeArgs args) { MenuEvadeSpells.First(x => x.SpellName.Contains(sender.SerializationId.Split('/')[0])).DangerValue = args.NewValue; }; EvadeSpellMenu.Add(evadeSpellString + "/dangervalue", dangerValueSlider); EvadeSpellMenu.AddSeparator(); } DrawMenu = MainMenu.AddSubMenu("Drawings"); DrawMenu.Add("disableAllDrawings", new CheckBox("Tum cizimleri kapat", false)); DrawMenu.Add("drawEvadePoint", new CheckBox("Kacma noktasini goster", false)); DrawMenu.Add("drawEvadeStatus", new CheckBox("Kacma durumunu goster")); DrawMenu.Add("drawSkillshots", new CheckBox("Goster gelen beceriler")); DrawMenu.AddStringList("drawType", "Drawing Type", new [] { "Fancy", "Fast" }, 1); HotkeysMenu = MainMenu.AddSubMenu("KeyBinds"); HotkeysMenu.Add("enableEvade", new KeyBind("Kacma Aktif", true, KeyBind.BindTypes.PressToggle, 'M')); HotkeysMenu.Add("dodgeOnlyDangerousH", new KeyBind("Yanliz Tehlikeden Kac (Dur)", false, KeyBind.BindTypes.HoldActive)); HotkeysMenu.Add("dodgeOnlyDangerousT", new KeyBind("Yanliz Tehlikeden Kac (Degistir)", false, KeyBind.BindTypes.PressToggle)); CollisionMenu = MainMenu.AddSubMenu("Collision"); CollisionMenu.Add("minion", new CheckBox("Minyonlara dikkat et")); CollisionMenu.Add("yasuoWall", new CheckBox("Dikkat Yasuo Duvari")); DebugMenu = MainMenu.AddSubMenu("Testings"); DebugMenu.Add("debugMode", new KeyBind("Debug Mode", false, KeyBind.BindTypes.PressToggle)); DebugMenu.Add("debugModeIntervall", new Slider("Debug Skillshot Creation Intervall", 1000, 0, 12000)); DebugMenu.AddStringList("debugMissile", "Selected Skillshot", SkillshotDatabase.Database.Select(x => x.OwnSpellData.SpellName).ToArray(), 0); DebugMenu.Add("isProjectile", new CheckBox("Is Projectile?")); DebugMenu.Add("manageMovementDelay", new CheckBox("Orbwalker hareket gecikmesini yonet", false)); }
public static void CreateMenu() { if (MainMenu != null) { return; } MainMenu = EloBuddy.SDK.Menu.MainMenu.AddMenu("躲避#", "EvadePlus"); // Set up main menu MainMenu.AddGroupLabel("一般设置"); MainMenu.Add("fowDetection", new CheckBox("开启战争迷雾探测")); MainMenu.AddLabel("开启: 会躲避来自战争迷雾的技能, 关闭: 人性化一点,毕竟战争迷雾是黑的人反应没那么快"); MainMenu.AddSeparator(3); MainMenu.Add("processSpellDetection", new CheckBox("开启技能生成探测")); MainMenu.AddLabel("探测技能施放前就计算弹道 推荐开启"); MainMenu.AddSeparator(3); MainMenu.Add("limitDetectionRange", new CheckBox("限制技能探测距离")); MainMenu.AddLabel("只探测你附近的技能, 推荐开启"); MainMenu.AddSeparator(3); MainMenu.Add("recalculatePosition", new CheckBox("允许重新计算躲避位置", false)); MainMenu.AddLabel("允许躲到一半找到新的躲避位置, 不推荐打开"); MainMenu.AddSeparator(3); MainMenu.Add("moveToInitialPosition", new CheckBox("躲避后移动到之前希望到达的位置", false)); MainMenu.AddLabel("走到一半开始躲避,躲避后会走到刚才想去到的地方"); MainMenu.AddSeparator(3); MainMenu.Add("serverTimeBuffer", new Slider("服务器时间缓冲", 0, 0, 200)); MainMenu.AddLabel("额外时间加入到躲避计算中"); MainMenu.AddSeparator(); MainMenu.AddGroupLabel("人性化"); MainMenu.Add("skillshotActivationDelay", new Slider("躲避延迟", 0, 0, 400)); MainMenu.AddSeparator(10); MainMenu.Add("extraEvadeRange", new Slider("额外躲避距离", 0, 0, 300)); MainMenu.Add("randomizeExtraEvadeRange", new CheckBox("随机额外躲避距离", false)); // Set up skillshot menu var heroes = Program.DeveloperMode ? EntityManager.Heroes.AllHeroes : EntityManager.Heroes.Enemies; var heroNames = heroes.Select(obj => obj.ChampionName).ToArray(); var skillshots = SkillshotDatabase.Database.Where(s => heroNames.Contains(s.SpellData.ChampionName)).ToList(); skillshots.AddRange( SkillshotDatabase.Database.Where( s => s.SpellData.ChampionName == "AllChampions" && heroes.Any(obj => obj.Spellbook.Spells.Select(c => c.Name).Contains(s.SpellData.SpellName)))); SkillshotMenu = MainMenu.AddSubMenu("指向性技能"); SkillshotMenu.AddLabel(string.Format("Skillshots Loaded {0}", skillshots.Count)); SkillshotMenu.AddSeparator(); foreach (var c in skillshots) { var skillshotString = c.ToString().ToLower(); if (MenuSkillshots.ContainsKey(skillshotString)) { continue; } MenuSkillshots.Add(skillshotString, c); SkillshotMenu.AddGroupLabel(c.DisplayText); SkillshotMenu.Add(skillshotString + "/enable", new CheckBox("躲避")); SkillshotMenu.Add(skillshotString + "/draw", new CheckBox("显示")); var dangerous = new CheckBox("危险", c.SpellData.IsDangerous); dangerous.OnValueChange += delegate(ValueBase <bool> sender, ValueBase <bool> .ValueChangeArgs args) { GetSkillshot(sender.SerializationId).SpellData.IsDangerous = args.NewValue; }; SkillshotMenu.Add(skillshotString + "/dangerous", dangerous); var dangerValue = new Slider("危险数值", c.SpellData.DangerValue, 1, 5); dangerValue.OnValueChange += delegate(ValueBase <int> sender, ValueBase <int> .ValueChangeArgs args) { GetSkillshot(sender.SerializationId).SpellData.DangerValue = args.NewValue; }; SkillshotMenu.Add(skillshotString + "/dangervalue", dangerValue); SkillshotMenu.AddSeparator(); } // Set up spell menu SpellMenu = MainMenu.AddSubMenu("敌方技能"); SpellMenu.AddGroupLabel("闪现"); SpellMenu.Add("flash", new Slider("危险等级", 5, 0, 5)); // Set up draw menu DrawMenu = MainMenu.AddSubMenu("线圈"); DrawMenu.AddGroupLabel("躲避线圈"); DrawMenu.Add("disableAllDrawings", new CheckBox("屏蔽所有线圈", false)); DrawMenu.Add("drawEvadePoint", new CheckBox("显示躲避位置")); DrawMenu.Add("drawEvadeStatus", new CheckBox("显示躲避状态")); DrawMenu.Add("drawDangerPolygon", new CheckBox("显示危险技能多边形线圈", false)); DrawMenu.AddSeparator(); DrawMenu.Add("drawPath", new CheckBox("显示自动躲避路径")); // Set up controls menu HotkeysMenu = MainMenu.AddSubMenu("快捷键"); HotkeysMenu.AddGroupLabel("开关"); HotkeysMenu.Add("enableEvade", new KeyBind("开启躲避", true, KeyBind.BindTypes.PressToggle, 'M')); HotkeysMenu.Add("dodgeOnlyDangerous", new KeyBind("只躲避危险的", false, KeyBind.BindTypes.HoldActive)); }