public void AddTrinket(Trinket trinket)
 {
     if (TrinketAddAction != null)
     {
         TrinketAddAction(trinket);
     }
     else
     {
         Trinkets.Add(trinket);
     }
 }
Пример #2
0
    public void RestockTrinkets()
    {
        Trinkets.Clear();
        var trinketList = DarkestDungeonManager.Data.Items["trinket"].Values.Cast <Trinket>().ToList();

        for (int i = 0; i < TrinketSlots; i++)
        {
            var rarity     = RandomSolver.ChooseByRandom(RarityTable).RarityId;
            var rarityList = trinketList.FindAll(item => item.RarityId == rarity);
            Trinkets.Add(rarityList[UnityEngine.Random.Range(0, rarityList.Count)]);
        }
        Trinkets.Sort((x, y) => y.PurchasePrice.CompareTo(x.PurchasePrice));
    }
Пример #3
0
    public override void InitializeBuilding(Dictionary <string, UpgradePurchases> purchases)
    {
        base.InitializeBuilding(purchases);

        Trinkets.Clear();

        for (int i = DiscountUpgrades.Count - 1; i >= 0; i--)
        {
            if (purchases[DiscountUpgrades[i].TreeId].PurchasedUpgrades.Contains(DiscountUpgrades[i].UpgradeCode))
            {
                Discount += DiscountUpgrades[i].Percent;
            }
        }

        for (int i = TrinketSlotUpgrades.Count - 1; i >= 0; i--)
        {
            if (purchases[TrinketSlotUpgrades[i].TreeId].PurchasedUpgrades.Contains(TrinketSlotUpgrades[i].UpgradeCode))
            {
                TrinketSlots = TrinketSlotUpgrades[i].NumberOfSlots;
                break;
            }
        }
    }
Пример #4
0
        private static void Game_OnGameLoad(EventArgs args)
        {
            try
            {
                Player = ObjectManager.Player;
                MapId  = (int)Utility.Map.GetMap().Type;
                Rand   = new Random();

                GetSpellsInGame();
                GetSmiteSlot();
                GetGameTroysInGame();
                GetAurasInGame();
                GetHeroesInGame();
                GetComboDamage();

                Origin = new Menu("Activator", "activator", true);

                Menu cmenu = new Menu("Cleansers", "cmenu");
                CreateSubMenu(cmenu, false);
                GetItemGroup("Items.Cleansers").ForEach(t => NewItem((CoreItem)NewInstance(t), cmenu));
                Origin.AddSubMenu(cmenu);

                Menu dmenu = new Menu("Defensives", "dmenu");
                CreateSubMenu(dmenu, false);
                GetItemGroup("Items.Defensives").ForEach(t => NewItem((CoreItem)NewInstance(t), dmenu));
                Origin.AddSubMenu(dmenu);

                Menu smenu = new Menu("Summoners", "smenu");
                GetItemGroup("Summoners").ForEach(t => NewSumm((CoreSum)NewInstance(t), smenu));
                CreateSubMenu(smenu, true, true);
                Origin.AddSubMenu(smenu);

                Menu omenu = new Menu("Offensives", "omenu");
                CreateSubMenu(omenu, true);
                GetItemGroup("Items.Offensives").ForEach(t => NewItem((CoreItem)NewInstance(t), omenu));
                Origin.AddSubMenu(omenu);

                Menu imenu = new Menu("Consumables", "imenu");
                GetItemGroup("Items.Consumables").ForEach(t => NewItem((CoreItem)NewInstance(t), imenu));
                Origin.AddSubMenu(imenu);

                Menu amenu = new Menu("Auto Spells", "amenu");
                CreateSubMenu(amenu, false);
                GetItemGroup("Spells.Evaders").ForEach(t => NewSpell((CoreSpell)NewInstance(t), amenu));
                GetItemGroup("Spells.Shields").ForEach(t => NewSpell((CoreSpell)NewInstance(t), amenu));
                GetItemGroup("Spells.Health").ForEach(t => NewSpell((CoreSpell)NewInstance(t), amenu));
                GetItemGroup("Spells.Slows").ForEach(t => NewSpell((CoreSpell)NewInstance(t), amenu));
                GetItemGroup("Spells.Heals").ForEach(t => NewSpell((CoreSpell)NewInstance(t), amenu));
                Origin.AddSubMenu(amenu);

                Menu zmenu = new Menu("Misc/Settings", "settings");

                if (SmiteInGame)
                {
                    Menu ddmenu = new Menu("Drawings", "drawings");
                    ddmenu.AddItem(new MenuItem("drawsmitet", "Draw Smite Text")).SetValue(true);
                    ddmenu.AddItem(new MenuItem("drawfill", "Draw Smite Fill")).SetValue(true);
                    ddmenu.AddItem(new MenuItem("drawsmite", "Draw Smite Range")).SetValue(true);
                    zmenu.AddSubMenu(ddmenu);
                }

                zmenu.AddItem(new MenuItem("acdebug", "Debug")).SetValue(false);
                zmenu.AddItem(new MenuItem("autolevelup", "Auto Level Ultimate")).SetValue(true).SetTooltip("Level 6 Only");
                zmenu.AddItem(new MenuItem("autotrinket", "Auto Upgrade Trinket")).SetValue(false);
                zmenu.AddItem(new MenuItem("healthp", "Ally Priority:")).SetValue(new StringList(new[] { "Low HP", "Most AD/AP", "Most HP" }, 1));
                zmenu.AddItem(new MenuItem("weightdmg", "Weight Income Damage (%)"))
                .SetValue(new Slider(115, 100, 150))
                .SetTooltip("Make Activator# think you are taking more damage than calulated.");
                zmenu.AddItem(new MenuItem("usecombo", "Combo (active)")).SetValue(new KeyBind(32, KeyBindType.Press, true));

                Menu uumenu = new Menu("Spell Database", "evadem");
                LoadSpellMenu(uumenu);
                zmenu.AddSubMenu(uumenu);

                Origin.AddSubMenu(zmenu);
                Origin.AddToMainMenu();

                // drawings
                Drawings.Init();

                // handlers
                Projections.Init();
                Trinkets.Init();

                // tracks dangerous or lethal buffs/auras
                Buffs.StartOnUpdate();

                // tracks gameobjects
                Gametroys.StartOnUpdate();

                // on bought item
                Obj_AI_Base.OnPlaceItemInSlot += Obj_AI_Base_OnPlaceItemInSlot;

                // on level up
                Obj_AI_Base.OnLevelUp += Obj_AI_Base_OnLevelUp;

                Game.PrintChat("<font color='#66CCCC'><b>K娲诲寲鍓俹</b></font><font color='#CCFF66'><b>-杞藉叆鎴愬姛</b></font><font color='#FF9900'><b>-绁濇偍鐜╃殑鎰夊揩</b></font>");
                Updater.UpdateCheck();

                // init valid auto spells
                foreach (CoreSpell autospell in Lists.Spells)
                {
                    if (Player.GetSpellSlot(autospell.Name) != SpellSlot.Unknown)
                    {
                        Game.OnUpdate += autospell.OnTick;
                    }
                }

                // init valid summoners
                foreach (CoreSum summoner in Lists.Summoners)
                {
                    if (summoner.Slot != SpellSlot.Unknown ||
                        summoner.ExtraNames.Any(x => Player.GetSpellSlot(x) != SpellSlot.Unknown))
                    {
                        Game.OnUpdate += summoner.OnTick;
                    }
                }

                // find items (if F5)
                foreach (CoreItem item in Lists.Items)
                {
                    if (!LeagueSharp.Common.Items.HasItem(item.Id))
                    {
                        continue;
                    }

                    if (!Lists.BoughtItems.Contains(item))
                    {
                        if (item.Category.Any())
                        {
                            Game.OnUpdate += item.OnTick;
                        }

                        if (item.Category.Any(t => t == MenuType.Gapcloser))
                        {
                            AntiGapcloser.OnEnemyGapcloser += item.OnEnemyGapcloser;
                        }

                        Lists.BoughtItems.Add(item);
                    }
                }
            }

            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Пример #5
0
        private static void Game_OnGameLoad(EventArgs args)
        {
            try
            {
                Player = ObjectManager.Player;
                MapId  = (int)Utility.Map.GetMap().Type;
                Rand   = new Random();

                GetSpellsInGame();
                GetSmiteSlot();
                GetGameTroysInGame();
                GetAurasInGame();
                GetHeroesInGame();
                GetComboDamage();
                Helpers.CreateLogPath();

                Origin = new Menu("Activator", "activator", true);

                Menu cmenu = new Menu("Cleansers", "cmenu");
                GetItemGroup("Items.Cleansers").ForEach(t => NewItem((CoreItem)NewInstance(t), cmenu));
                CreateSubMenu(cmenu, false);
                Origin.AddSubMenu(cmenu);

                Menu dmenu = new Menu("Defensives", "dmenu");
                GetItemGroup("Items.Defensives").ForEach(t => NewItem((CoreItem)NewInstance(t), dmenu));
                CreateSubMenu(dmenu, false);
                Origin.AddSubMenu(dmenu);

                Menu smenu = new Menu("Summoners", "smenu");
                GetItemGroup("Summoners").ForEach(t => NewSumm((CoreSum)NewInstance(t), smenu));
                CreateSubMenu(smenu, true, true);
                Origin.AddSubMenu(smenu);

                Menu omenu = new Menu("Offensives", "omenu");
                GetItemGroup("Items.Offensives").ForEach(t => NewItem((CoreItem)NewInstance(t), omenu));
                CreateSubMenu(omenu, true);
                Origin.AddSubMenu(omenu);

                Menu imenu = new Menu("Consumables", "imenu");
                GetItemGroup("Items.Consumables").ForEach(t => NewItem((CoreItem)NewInstance(t), imenu));
                Origin.AddSubMenu(imenu);

                Menu amenu = new Menu("Auto Spells", "amenu");
                GetItemGroup("Spells.Evaders").ForEach(t => NewSpell((CoreSpell)NewInstance(t), amenu));
                GetItemGroup("Spells.Shields").ForEach(t => NewSpell((CoreSpell)NewInstance(t), amenu));
                GetItemGroup("Spells.Health").ForEach(t => NewSpell((CoreSpell)NewInstance(t), amenu));
                GetItemGroup("Spells.Slows").ForEach(t => NewSpell((CoreSpell)NewInstance(t), amenu));
                GetItemGroup("Spells.Heals").ForEach(t => NewSpell((CoreSpell)NewInstance(t), amenu));
                CreateSubMenu(amenu, false);
                Origin.AddSubMenu(amenu);

                GetPriority();

                Menu zmenu = new Menu("Misc/Settings", "settings");

                if (SmiteInGame)
                {
                    Menu ddmenu = new Menu("Drawings", "drawings");
                    ddmenu.AddItem(new MenuItem("drawsmitet", "Draw Smite Text")).SetValue(true);
                    ddmenu.AddItem(new MenuItem("drawfill", "Draw Smite Fill")).SetValue(true);
                    ddmenu.AddItem(new MenuItem("drawsmite", "Draw Smite Range")).SetValue(true);
                    zmenu.AddSubMenu(ddmenu);
                }

                var bbmenu = new Menu("Debug Tools", "bbmenu");

                var premenu = new Menu("Debug Health Prediction", "dhp");
                premenu.AddItem(new MenuItem("testdamage", "Test Damage")).SetValue(false).ValueChanged +=
                    (sender, eventArgs) =>
                {
                    if (eventArgs.GetNewValue <bool>())
                    {
                        var caster = ObjectManager.Player;

                        var target = Heroes.First(x =>
                                                  x.Player.ChampionName.ToLower() ==
                                                  Origin.Item("testdamagetarget").GetValue <StringList>().SelectedValue.ToLower());

                        var type = (HitType)Enum.Parse(typeof(HitType),
                                                       Origin.Item("testdamagetype").GetValue <StringList>().SelectedValue);

                        Projections.EmulateDamage(caster, target, new Gamedata {
                            SDataName = "KurisuQtPie"
                        }, type, "debug.Test");
                        eventArgs.Process = false;
                    }
                };

                premenu.AddItem(new MenuItem("testdamagetype", "HitType"))
                .SetValue(new StringList(Enum.GetValues(typeof(HitType)).Cast <HitType>().Select(v => v.ToString()).ToArray(), 0));
                premenu.AddItem(new MenuItem("testdamagetarget", "Target"))
                .SetValue(new StringList(Heroes.Select(x => x.Player.ChampionName).ToArray()));

                bbmenu.AddSubMenu(premenu);


                bbmenu.AddItem(new MenuItem("acdebug", "Debug Income Damage")).SetValue(false);
                bbmenu.AddItem(new MenuItem("acdebug2", "Debug Item Priority")).SetValue(false);
                bbmenu.AddItem(new MenuItem("acdebug3", "Debug QSS/Cleanse")).SetValue(false);
                bbmenu.AddItem(new MenuItem("dumpdata", "Dump Spell Data")).SetValue(false);
                zmenu.AddSubMenu(bbmenu);

                zmenu.AddItem(new MenuItem("autolevelup", "Auto Level Ultimate")).SetValue(true).SetTooltip("Level 6 Only");
                zmenu.AddItem(new MenuItem("autotrinket", "Auto Upgrade Trinket")).SetValue(true);
                zmenu.AddItem(new MenuItem("healthp", "Ally Priority:")).SetValue(new StringList(new[] { "Low HP", "Most AD/AP", "Most HP" }, 1));
                zmenu.AddItem(new MenuItem("weightdmg", "Weight Income Damage (%)"))
                .SetValue(new Slider(115, 100, 150))
                .SetTooltip("Make Activator# think you are taking more damage than calulated.");
                zmenu.AddItem(new MenuItem("lagtolerance", "Lag Tolerance (%)"))
                .SetValue(new Slider(25))
                .SetTooltip("Make Activator# think you are taking damage longer than intended");
                zmenu.AddItem(new MenuItem("usecombo", "Combo (active)"))
                .SetValue(new KeyBind(32, KeyBindType.Press, true));

                Menu uumenu = new Menu("Spell Database", "evadem");
                LoadSpellMenu(uumenu);
                zmenu.AddSubMenu(uumenu);

                Origin.AddSubMenu(zmenu);
                Origin.AddToMainMenu();

                // drawings
                Drawings.Init();

                // handlers

                Projections.Init();
                Trinkets.Init();

                // tracks dangerous or lethal buffs/auras
                Buffs.StartOnUpdate();

                // tracks gameobjects
                Gametroys.StartOnUpdate();

                // on bought item
                Obj_AI_Base.OnPlaceItemInSlot += Obj_AI_Base_OnPlaceItemInSlot;

                // on level up
                Obj_AI_Base.OnLevelUp += Obj_AI_Base_OnLevelUp;

                // on predict damage
                Projections.OnPredictDamage += Projections_OnPredictDamage;

                Game.PrintChat("<b><font color=\"#FF3366\">Activator#</font></b> - Loaded!");
                Updater.UpdateCheck();


                // init valid auto spells
                foreach (CoreSpell autospell in Lists.Spells)
                {
                    if (Player.GetSpellSlot(autospell.Name) != SpellSlot.Unknown)
                    {
                        Game.OnUpdate += autospell.OnTick;
                    }
                }

                // init valid summoners
                foreach (CoreSum summoner in Lists.Summoners)
                {
                    if (summoner.Slot != SpellSlot.Unknown ||
                        summoner.ExtraNames.Any(x => Player.GetSpellSlot(x) != SpellSlot.Unknown))
                    {
                        Game.OnUpdate += summoner.OnTick;
                    }
                }

                // find items (if F5)
                foreach (CoreItem item in Lists.Items)
                {
                    if (!LeagueSharp.Common.Items.HasItem(item.Id))
                    {
                        continue;
                    }

                    if (!Lists.BoughtItems.Contains(item))
                    {
                        if (item.Category.Any())
                        {
                            Game.OnUpdate += item.OnTick;
                        }

                        if (item.Category.Any(t => t == MenuType.Gapcloser))
                        {
                            AntiGapcloser.OnEnemyGapcloser += item.OnEnemyGapcloser;
                        }

                        Lists.BoughtItems.Add(item);
                        Game.PrintChat("<b><font color=\"#FF3366\">Activator#</font></b> - <font color=\"#FFF280\">" + item.Name + "</font> active!");
                    }
                }
            }

            catch (Exception e)
            {
                Console.WriteLine(e);
                Game.PrintChat("Exception thrown at <font color=\"#FFF280\">Activator.OnGameLoad</font>");
            }
        }
Пример #6
0
        public static void Game_OnGameLoad()
        {
            try
            {
                Player = ObjectManager.Player;
                MapId  = (int)LeagueSharp.Common.Utility.Map.GetMap().Type;
                Rand   = new Random();

                GetSpellsInGame();
                GetSmiteSlot();
                GetGameTroysInGame();
                GetAurasInGame();
                GetHeroesInGame();
                GetComboDamage();

                Origin = MainMenu.AddMenu("Activator", "activator");

                cmenu = Origin.AddSubMenu("Cleansers", "cmenu");
                SubMenu(cmenu, false);
                GetItemGroup("Items.Cleansers").ForEach(t => NewItem((CoreItem)NewInstance(t), cmenu));

                dmenu = Origin.AddSubMenu("Defensives", "dmenu");
                SubMenu(dmenu, false);
                GetItemGroup("Items.Defensives").ForEach(t => NewItem((CoreItem)NewInstance(t), dmenu));

                smenu = Origin.AddSubMenu("Summoners", "smenu");
                GetItemGroup("Summoners").ForEach(t => NewSumm((CoreSum)NewInstance(t), smenu));
                SubMenu(smenu, true, true);

                omenu = Origin.AddSubMenu("Offensives", "omenu");
                SubMenu(omenu, true);
                GetItemGroup("Items.Offensives").ForEach(t => NewItem((CoreItem)NewInstance(t), omenu));

                imenu = Origin.AddSubMenu("Consumables", "imenu");
                GetItemGroup("Items.Consumables").ForEach(t => NewItem((CoreItem)NewInstance(t), imenu));

                amenu = Origin.AddSubMenu("Auto Spells", "amenu");
                SubMenu(amenu, false);
                GetItemGroup("Spells.Evaders").ForEach(t => NewSpell((CoreSpell)NewInstance(t), amenu));
                GetItemGroup("Spells.Shields").ForEach(t => NewSpell((CoreSpell)NewInstance(t), amenu));
                GetItemGroup("Spells.Health").ForEach(t => NewSpell((CoreSpell)NewInstance(t), amenu));
                GetItemGroup("Spells.Slows").ForEach(t => NewSpell((CoreSpell)NewInstance(t), amenu));
                GetItemGroup("Spells.Heals").ForEach(t => NewSpell((CoreSpell)NewInstance(t), amenu));

                zmenu = Origin.AddSubMenu("Misc/Settings", "settings");
                if (SmiteInGame)
                {
                    zmenu.AddGroupLabel("Drawings");
                    zmenu.Add("drawsmitet", new CheckBox("Draw Smite Text"));
                    zmenu.Add("drawfill", new CheckBox("Draw Smite Fill"));
                    zmenu.Add("drawsmite", new CheckBox("Draw Smite Range"));
                }
                zmenu.Add("acdebug", new CheckBox("Debug", false));
                zmenu.Add("autolevelup", new CheckBox("Auto Level Ultimate"));
                zmenu.Add("autotrinket", new CheckBox("Auto Upgrade Trinket", false));
                zmenu.Add("healthp", new ComboBox("Ally Priority:", 1, "Low HP", "Most AD/AP", "Most HP"));
                zmenu.Add("weightdmg", new Slider("Weight Income Damage (%)", 115, 100, 150));
                zmenu.Add("usecombo", new KeyBind("Combo (active)", false, KeyBind.BindTypes.HoldActive, 32));
                zmenu.AddGroupLabel("Spell Database");
                LoadSpellMenu(zmenu);

                // drawings
                Drawings.Init();

                // handlers
                Projections.Init();
                Trinkets.Init();

                // tracks dangerous or lethal buffs/auras
                Buffs.StartOnUpdate();

                // tracks gameobjects
                Gametroys.StartOnUpdate();

                // on bought item
                Shop.OnBuyItem += Obj_AI_Base_OnPlaceItemInSlot;

                // on level up
                Obj_AI_Base.OnLevelUp += Obj_AI_Base_OnLevelUp;

                Chat.Print("<b>Activator#</b> - Loaded!");

                // init valid auto spells
                foreach (var autospell in Lists.Spells)
                {
                    if (Player.GetSpellSlot(autospell.Name) != SpellSlot.Unknown)
                    {
                        Game.OnUpdate += autospell.OnTick;
                    }
                }

                // init valid summoners
                foreach (var summoner in Lists.Summoners)
                {
                    if (summoner.Slot != SpellSlot.Unknown ||
                        summoner.ExtraNames.Any(x => Player.GetSpellSlot(x) != SpellSlot.Unknown))
                    {
                        Game.OnUpdate += summoner.OnTick;
                    }
                }

                // find items (if F5)
                foreach (var item in Lists.Items)
                {
                    if (!LeagueSharp.Common.Items.HasItem(item.Id))
                    {
                        continue;
                    }

                    if (!Lists.BoughtItems.Contains(item))
                    {
                        Game.OnUpdate += item.OnTick;
                        Lists.BoughtItems.Add(item);
                        Chat.Print("<b>Activator#</b> - <font color=\"#FFF280\">" + item.Name + "</font> active!");
                    }
                }

                // Utility.DelayAction.Add(3000, CheckEvade);
            }

            catch (Exception e)
            {
                Console.WriteLine(e);
                Chat.Print("Exception thrown at <font color=\"#FFF280\">Activator.OnGameLoad</font>");
            }
        }
Пример #7
0
 public Trinket()
 {
     _trinket       = new Trinkets();
     Game.OnUpdate += OnUpdate;
 }