private static void InitMenu()
{
if (firstTime)
{
var dict = AbilityList.ToDictionary(item => item, item => true);
var dict2 = AbilityList.ToDictionary(item => item, item => true);
var pushAbilities = PushList.ToDictionary(item => item, item => true);
var itemListHero = Items.Keys.ToList().ToDictionary(item => item, item => true);
var itemListTempest = Items.Keys.ToList().ToDictionary(item => item, item => true);
Menu.AddItem(new MenuItem("hotkey", "Hotkey").SetValue(new KeyBind('G', KeyBindType.Press)));
Menu.AddItem(new MenuItem("spamHotkey", "Spark Spam").SetValue(new KeyBind('H', KeyBindType.Press)));
Menu.AddItem(
new MenuItem("hotkeyClone", "ComboKey with Clones").SetValue(new KeyBind('Z', KeyBindType.Toggle)));
//Menu.AddItem(new MenuItem("Items", "Items:").SetValue(new AbilityToggler(dict)));
Menu.AddItem(new MenuItem("LockTarget", "Lock target").SetValue(true));
Menu.AddItem(new MenuItem("MagneticField", "Use Magnetic Field for Faster Kill").SetValue(true))
.SetTooltip(
"if enable, try to cast in font on hero, disable-> try to cast for defence from melee heroes");
Menu.AddItem(new MenuItem("Dust.Check", "Dust Usage: Check if target can go invis").SetValue(true))
.SetTooltip("by ur tempest in combo");
var usages = new Menu("Using in combo", "usages");
var mainHero = new Menu("For Main Hero", "mainHero");
var spellHero = new Menu("Spells:", "HeroSpells");
var itemHero = new Menu("Items:", "HeroItems");
var tempest = new Menu("Tempest", "tempest");
var spellTempest = new Menu("Spells:", "TempestSpells");
var itemTempest = new Menu("Items:", "TempestItems");
itemHero.AddItem(
new MenuItem("itemHeroEnable", "Toggle Items:").SetValue(new AbilityToggler(itemListHero)));
itemHero.AddItem(new MenuItem("customOrderHero", "Use Custom Order").SetValue(false));
itemHero.AddItem(new MenuItem("itemHero", "Items:").SetValue(new PriorityChanger(Items.Keys.ToList())));
itemTempest.AddItem(
new MenuItem("itemTempestEnable", "Toggle Items:").SetValue(new AbilityToggler(itemListTempest)));
itemTempest.AddItem(new MenuItem("customOrderTempest", "Use Custom Order").SetValue(false));
itemTempest.AddItem(
new MenuItem("itemTempest", "Items:").SetValue(new PriorityChanger(Items.Keys.ToList())));
spellHero.AddItem(new MenuItem("spellHero", "Ability:").SetValue(new AbilityToggler(dict)));
spellTempest.AddItem(new MenuItem("spellTempest", "Ability:").SetValue(new AbilityToggler(dict2)));
Menu.AddSubMenu(usages);
usages.AddSubMenu(mainHero);
usages.AddSubMenu(tempest);
mainHero.AddSubMenu(spellHero);
mainHero.AddSubMenu(itemHero);
tempest.AddSubMenu(spellTempest);
tempest.AddSubMenu(itemTempest);
var drawItems = new Menu("Items Drawing", "ItemsDrawing");
drawItems.AddItem(new MenuItem("DrawItems", "Draw Items on cooldown").SetValue(true));
drawItems.AddItem(new MenuItem("Draw.Order.Type", "Draw Type: New").SetValue(true))
.SetTooltip("use new way for drawing current orders").ValueChanged += (sender, args) =>
{
_drawType = args.GetNewValue<bool>();
};
drawItems.AddItem(new MenuItem("DrawItems.pos.x", "Position X").SetValue(new Slider(500, 0, 2500)));
drawItems.AddItem(new MenuItem("DrawItems.pos.y", "Position Y").SetValue(new Slider(500, 0, 2500)));
Menu.AddItem(new MenuItem("AutoMidas", "Auto Midas").SetValue(true));
Menu.AddItem(
new MenuItem("FirstClone", "Ez Heal").SetValue(true)
.SetTooltip("when you use some heal-items, at the beginning of the clone will use this"));
//Menu.AddItem(new MenuItem("AutoHeal", "Auto Heal/Bottle").SetValue(true).SetTooltip("clone use heal items on main hero if there are no enemies in 500(800) range"));
var autoheal = new Menu("Auto Heal", "aheal");
autoheal.AddItem(
new MenuItem("AutoHeal.Enable", "Auto Heal").SetValue(new KeyBind('X', KeyBindType.Toggle))
.SetTooltip(
"clone use heal items on main hero if there are no enemies in selected range. But ll still use insta heal items"));
autoheal.AddItem(
new MenuItem("AutoHeal.Range", "Enemy checker").SetValue(new Slider(500, 0, 1000))
.SetTooltip("check enemy in selected range"));
var autoPush = new Menu("Auto Push", "AutoPush");
autoPush.AddItem(new MenuItem("AutoPush.Enable", "Enable").SetValue(new KeyBind('V', KeyBindType.Toggle)));
autoPush.AddItem(new MenuItem("AutoPush.DrawLine", "Draw line").SetValue(false));
autoPush.AddItem(new MenuItem("AutoPush.Travels", "Use Travel Boots").SetValue(true));
autoPush.AddItem(
new MenuItem("AutoPush.Abilites", "Abilities for pushing").SetValue(new AbilityToggler(pushAbilities)));
autoPush.AddItem(
new MenuItem("AutoPush.UnAggro.Enable", "UnAggro under tower").SetValue(true)
.SetTooltip(
"Necronomicon will try to unaggro under tower and will stay away from tower if didnt see any ally creep under tower"));
var antiFeed = new Menu("Anti Feed", "AntiFeed", false, "item_necronomicon_3", true);
antiFeed.AddItem(
new MenuItem("AntiFeed.Enable", "Ebable").SetValue(true)
.SetTooltip("if u have any enemy hero in range, ur necro will run on base"));
antiFeed.AddItem(new MenuItem("AntiFeed.Range", "Range Checker").SetValue(new Slider(800, 0, 1500)));
var orbwalnking = new Menu("OrbWalking", "ow");
orbwalnking.AddItem(
new MenuItem("OrbWalking.Enable", "Enable OrbWalking").SetValue(true));
orbwalnking.AddItem(
new MenuItem("OrbWalking.minDistance", "Min distance").SetValue(new Slider(100, 0, 600)));
/*orbwalnking.AddItem(
new MenuItem("OrbWalking.bonusWindupMs", "Bonus Windup Time").SetValue(new Slider(100, 100, 1000))
.SetTooltip("Time between attacks"));*/
var daggerSelection = new Menu("Dagger", "dagger");
/*daggerSelection.AddItem(
new MenuItem("Dagger.Enable", "Enable Dagger").SetValue(true));*/
daggerSelection.AddItem(
new MenuItem("Dagger.CloseRange", "Extra Distance for blink").SetValue(
new Slider(200, 100, 800))).SetTooltip("1200 (dagger's default range) + your value");
daggerSelection.AddItem(
new MenuItem("Dagger.MinDistance", "Min distance for blink").SetValue(new Slider(400, 100, 800)))
.SetTooltip("dont use blink if you are in this range");
daggerSelection.AddItem(
new MenuItem("Dagger.ExtraDistance", "Min distance between target & blink pos").SetValue(
new Slider(50, 50, 800)));
var difblade = new Menu("Diffusal blade", "item_diffusal_blade", false, "item_diffusal_blade", true);
difblade.AddItem(
new MenuItem("Diffusal.Dispel", "Dispel Selection").SetValue(new StringList(new[]
{
"Me",
"Tempest",
"All",
"Noone"
}, 2))).SetTooltip("All include ally heroes too");
difblade.AddItem(
new MenuItem("Diffusal.PurgEnemy", "Purge Selection").SetValue(new StringList(new[]
{
"Only on Main target",
"For all Enemies in cast range",
"No one"
}, 1)));
Menu.AddItem(new MenuItem("usePrediction", "Use Prediction For Spark").SetValue(true));
Menu.AddItem(
new MenuItem("SparkUsage", "Do not use spark if u re not under enemy's vision").SetValue(false));
Menu.AddItem(
new MenuItem("BkbUsage", "Bkb Selection").SetValue(
new StringList(new[] {"me", "clones", "all", "no one"}, 1)));
//var il=new Menu("Illusion","il");
//il.AddItem(new MenuItem("orderList", "Use order list").SetValue(false));
Menu.AddItem(
new MenuItem("order", "Clone Order Selection").SetValue(
new StringList(new[] {"monkey", "caster", "nothing"}, 1)));
Menu.AddItem(
new MenuItem("TargetSelection", "Target Selection").SetValue(
new StringList(new[] {"ClosestToMouse", "FastestKilable", "ClosestToHero"})));
Menu.AddSubMenu(drawItems);
Menu.AddSubMenu(difblade);
Menu.AddSubMenu(daggerSelection);
Menu.AddSubMenu(autoheal);
Menu.AddSubMenu(orbwalnking);
Menu.AddSubMenu(autoPush);
autoPush.AddSubMenu(antiFeed);
firstTime = false;
}
try
{
Menu.AddToMainMenu();
}
catch (Exception)
{
}
}