Esempio n. 1
0
        static Jinx()
        {
            Q = new Spell.Active(SpellSlot.Q);
            W = new Spell.Skillshot(SpellSlot.W, 1500, SkillShotType.Linear, 600, 3300, 60)
            {
                AllowedCollisionCount = 0
            };
            E = new Spell.Skillshot(SpellSlot.E, 900, SkillShotType.Circular, 950, int.MaxValue, 100);
            R = new Spell.Skillshot(SpellSlot.R, 30000, SkillShotType.Linear, 600, 1500, 140)
            {
                AllowedCollisionCount = -1
            };

            ColorPicker = new ColorPicker[2];

            ColorPicker[0] = new ColorPicker("JinxQ", new ColorBGRA(114, 171, 160, 255));
            ColorPicker[1] = new ColorPicker("JinxW", new ColorBGRA(255, 21, 95, 255));

            Text = new Text("", new Font("calibri", 15, FontStyle.Regular));

            Orbwalker.OnPreAttack  += Orbwalker_OnPreAttack;
            Orbwalker.OnPostAttack += (target, args) => IsPreAttack = false;

            ChampionTracker.Initialize(ChampionTrackerFlags.LongCastTimeTracker);
            ChampionTracker.OnLongSpellCast += ChampionTracker_OnLongSpellCast;

            Spellbook.OnStopCast += (sender, args) =>
            {
                if (sender.IsMe && IsPreAttack)
                {
                    IsPreAttack = false;
                }
            };
        }
Esempio n. 2
0
        static Varus()
        {
            Q = new Spell.Chargeable(SpellSlot.Q, 1000, 1600, 1300, 0, 1900, 70)
            {
                AllowedCollisionCount = int.MaxValue
            };
            W = new Spell.Active(SpellSlot.W);
            E = new Spell.Skillshot(SpellSlot.E, 925, SkillShotType.Circular, 250, 1500, 235);
            R = new Spell.Skillshot(SpellSlot.R, 1250, SkillShotType.Linear, 250, 1950, 120)
            {
                AllowedCollisionCount = -1
            };

            ComboDamages = Cache.Resolve <CustomCache <int, float> >(1000);

            ColorPicker = new ColorPicker[4];

            ColorPicker[0] = new ColorPicker("VarusQ", new ColorBGRA(10, 106, 138, 255));
            ColorPicker[1] = new ColorPicker("VarusE", new ColorBGRA(177, 67, 191, 255));
            ColorPicker[2] = new ColorPicker("VarusR", new ColorBGRA(255, 134, 0, 255));
            ColorPicker[3] = new ColorPicker("VarusHpBar", new ColorBGRA(255, 134, 0, 255));

            DamageIndicator.Initalize(ColorPicker[3].Color, (int)R.Range);
            DamageIndicator.DamageDelegate = HandleDamageIndicator;

            ColorPicker[3].OnColorChange +=
                (a, b) =>
            {
                DamageIndicator.Color = b.Color;
            };

            ChampionTracker.Initialize(ChampionTrackerFlags.PostBasicAttackTracker);
            ChampionTracker.OnPostBasicAttack += (sender, args) => IsPreAttack = false;
            Orbwalker.OnPreAttack             += (target, args) => IsPreAttack = true;
        }
Esempio n. 3
0
        static Jhin()
        {
            Q = new Spell.Targeted(SpellSlot.Q, 600);
            W = new Spell.Skillshot(SpellSlot.W, 2500, SkillShotType.Linear, 750, int.MaxValue, 40)
            {
                AllowedCollisionCount = -1
            };
            E = new Spell.Skillshot(SpellSlot.E, 750, SkillShotType.Circular, 750, null, 120);
            R = new Spell.Skillshot(SpellSlot.R, 3500, SkillShotType.Linear, 200, 5000, 80)
            {
                AllowedCollisionCount = -1
            };

            Cache = StaticCacheProvider.Cache;

            Damages             = Cache.Resolve <CustomCache <int, float> >();
            Damages.RefreshRate = 1000;

            HasBuff             = Cache.Resolve <CustomCache <int, bool> >();
            HasBuff.RefreshRate = 200;

            ColorPicker = new ColorPicker[5];

            ColorPicker[0] = new ColorPicker("JhinQ", new ColorBGRA(10, 106, 138, 255));
            ColorPicker[1] = new ColorPicker("JhinW", new ColorBGRA(177, 67, 191, 255));
            ColorPicker[2] = new ColorPicker("JhinE", new ColorBGRA(177, 67, 191, 255));
            ColorPicker[3] = new ColorPicker("JhinR", new ColorBGRA(177, 67, 191, 255));
            ColorPicker[4] = new ColorPicker("JhinHpBar", new ColorBGRA(255, 134, 0, 255));

            Orbwalker.OnPreAttack += (s, a) =>
            {
                IsPreAttack = true;

                if (!HasReloadingBuff)
                {
                    return;
                }

                a.Process   = false;
                IsPreAttack = false;
            };
            Obj_AI_Base.OnProcessSpellCast += Obj_AI_Base_OnProcessSpellCast;
            Orbwalker.OnPostAttack         += (target, args) => IsPreAttack = false;

            ChampionTracker.Initialize(ChampionTrackerFlags.VisibilityTracker);

            Spellbook.OnCastSpell += Spellbook_OnCastSpell;

            DamageIndicator.Initalize(ColorPicker[4].Color, (int)W.Range);
            DamageIndicator.DamageDelegate = HandleDamageIndicator;

            ColorPicker[4].OnColorChange += (a, b) => { DamageIndicator.Color = b.Color; };
        }
Esempio n. 4
0
        private void SubscribeToEvents()
        {
            SpawnPoint = ObjectManager.Get <Obj_SpawnPoint>().FirstOrDefault(x => x.IsEnemy);

            if (SpawnPoint == null)
            {
                throw new Exception("Something went wrong. Baseult couldn't load.");
            }

            Game.OnTick += Game_OnTick;

            ChampionTracker.Initialize(ChampionTrackerFlags.VisibilityTracker);
        }
Esempio n. 5
0
        static Caitlyn()
        {
            Q = new Spell.Skillshot(SpellSlot.Q, 1300, SkillShotType.Linear, 625, 2200, 90)
            {
                AllowedCollisionCount = -1
            };
            W = new Spell.Skillshot(SpellSlot.W, 800, SkillShotType.Circular, 1600)
            {
                Width = 20
            };
            E = new Spell.Skillshot(SpellSlot.E, 800, SkillShotType.Linear, 150, 1600, 80)
            {
                AllowedCollisionCount = 0
            };
            R = new Spell.Targeted(SpellSlot.R, 2000);

            ColorPicker = new ColorPicker[4];

            ColorPicker[0] = new ColorPicker("CaitlynQ", new ColorBGRA(10, 106, 138, 255));
            ColorPicker[1] = new ColorPicker("CaitlynE", new ColorBGRA(177, 67, 191, 255));
            ColorPicker[2] = new ColorPicker("CaitlynR", new ColorBGRA(255, 134, 0, 255));
            ColorPicker[3] = new ColorPicker("CaitlynHpBar", new ColorBGRA(255, 134, 0, 255));

            DamageIndicator.Initalize(ColorPicker[3].Color, (int)R.Range);
            DamageIndicator.DamageDelegate = HandleDamageIndicator;

            ChampionTracker.Initialize(ChampionTrackerFlags.LongCastTimeTracker);

            ColorPicker[3].OnColorChange +=
                (a, b) =>
            {
                DamageIndicator.Color = b.Color;
            };

            Orbwalker.OnPostAttack += (sender, args) =>
            {
                IsPreAttack = false;

                if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo))
                {
                    Modes.Combo.Execute();
                }
            };

            Orbwalker.OnPreAttack += (target, args) => IsPreAttack = true;

            Text = new Text("", new Font("calibri", 15, FontStyle.Regular));

            ChampionTracker.OnLongSpellCast += ChampionTracker_OnLongSpellCast;
            Obj_AI_Base.OnProcessSpellCast  += Obj_AI_Base_OnProcessSpellCast;
        }
Esempio n. 6
0
        static Quinn()
        {
            Q = new Spell.Skillshot(SpellSlot.Q, 1025, SkillShotType.Linear, 250, 1550, 60)
            {
                AllowedCollisionCount = 0
            };
            W = new Spell.Active(SpellSlot.W, 2100);
            E = new Spell.Targeted(SpellSlot.E, 760);
            R = new Spell.Active(SpellSlot.R);

            ColorPicker = new ColorPicker[3];

            ColorPicker[0] = new ColorPicker("QuinnQ", new ColorBGRA(10, 106, 138, 255));
            ColorPicker[1] = new ColorPicker("QuinnE", new ColorBGRA(255, 134, 0, 255));
            ColorPicker[2] = new ColorPicker("QuinnHpBar", new ColorBGRA(255, 134, 0, 255));

            DamageIndicator.Initalize(ColorPicker[2].Color, 1400);
            DamageIndicator.DamageDelegate = HandleDamageIndicator;

            ColorPicker[2].OnColorChange +=
                (a, b) =>
            {
                DamageIndicator.Color = b.Color;
            };

            Orbwalker.OnPostAttack += (sender, args) =>
            {
                IsAfterAttack = true;
                IsPreAttack   = false;
            };

            Obj_AI_Base.OnProcessSpellCast += (sender, args) =>
            {
                if (sender.IsMe && (args.Slot == SpellSlot.E))
                {
                    Orbwalker.ResetAutoAttack();
                }
            };

            Orbwalker.OnPreAttack += (target, args) => IsPreAttack = true;
            Game.OnPostTick       += args => { IsAfterAttack = false; };

            Text = new Text("", new Font("calibri", 15, FontStyle.Regular));

            ChampionTracker.Initialize(ChampionTrackerFlags.VisibilityTracker);
        }
Esempio n. 7
0
        public static void Initialize()
        {
            Versions = new Dictionary <VersionInfo.Version, VersionInfo>();

            Misc.PrintDebugMessage("Initializing cache");

            StaticCacheProvider.Initialize();

            Misc.PrintDebugMessage("Initializing addon");

            var pluginInitialized = InitializeAddon.Initialize();

            if (!pluginInitialized)
            {
                return;
            }

            var task = Task.Factory.StartNew(PrintVersionInfo);

            AppDomain.CurrentDomain.DomainUnload += (sender, args) =>
            {
                task.Dispose();
            };

            Core.DelayAction(
                () =>
            {
                Misc.PrintDebugMessage("Creating Menu");

                MenuManager.CreateMenu();

                Misc.PrintDebugMessage("Initializing activator");

                Activator.Activator.InitializeActivator();

                ChampionTracker.Initialize(ChampionTrackerFlags.PathingTracker);

                MenuLoaded = true;

                Misc.PrintInfoMessage(
                    $"<b><font color=\"#5ED43D\">{Player.Instance.ChampionName}</font></b> loaded successfully. Welcome back <b><font color=\"{(SandboxConfig.IsBuddy ? "#BF1B49" : "#1BBF91")}\">{(SandboxConfig.IsBuddy ? "[VIP] " + (SandboxConfig.Username == "intr" ? "intr you boosted animal from Latvia <3" : SandboxConfig.Username) : SandboxConfig.Username == "intr" ? "intr you boosted animal from Latvia <3" : SandboxConfig.Username)}</font></b> !");

                Misc.PrintDebugMessage("Marksman AIO  fully loaded");
            }, 250);
        }
Esempio n. 8
0
        static Draven()
        {
            Q = new Spell.Active(SpellSlot.Q);
            W = new Spell.Active(SpellSlot.W);
            E = new Spell.Skillshot(SpellSlot.E, 950, SkillShotType.Linear, 250, 1400, 130)
            {
                AllowedCollisionCount = -1
            };
            R = new Spell.Skillshot(SpellSlot.R, 30000, SkillShotType.Linear, 500, 2000, 160)
            {
                AllowedCollisionCount = int.MaxValue
            };

            ColorPicker    = new ColorPicker[2];
            ColorPicker[0] = new ColorPicker("DravenE", new ColorBGRA(114, 171, 160, 255));
            ColorPicker[1] = new ColorPicker("DravenCatchRange", new ColorBGRA(231, 237, 160, 255));

            Text = new Text(string.Empty, new SharpDX.Direct3D9.FontDescription
            {
                FaceName        = "Verdana",
                Weight          = SharpDX.Direct3D9.FontWeight.Regular,
                Quality         = SharpDX.Direct3D9.FontQuality.NonAntialiased,
                OutputPrecision = SharpDX.Direct3D9.FontPrecision.String,
                Height          = 31,
                MipLevels       = 1
            });

            ChampionTracker.Initialize(ChampionTrackerFlags.PostBasicAttackTracker);
            ChampionTracker.OnPostBasicAttack += (sender, args) =>
            {
                IsPreAttack   = false;
                IsAfterAttack = true;
            };

            Game.OnTick += Game_OnTick;

            GameObject.OnCreate += GameObject_OnCreate;
            GameObject.OnDelete += GameObject_OnDelete;

            Orbwalker.OnPreAttack             += Orbwalker_OnPreAttack;
            Orbwalker.OnPostAttack            += Orbwalker_OnPostAttack;
            Orbwalker.OverrideOrbwalkPosition += OverrideOrbwalkPosition;
        }
Esempio n. 9
0
        static Corki()
        {
            Q = new Spell.Skillshot(SpellSlot.Q, 825, SkillShotType.Circular, 250, 1000, 250)
            {
                AllowedCollisionCount = int.MaxValue
            };
            W = new Spell.Skillshot(SpellSlot.W, 600, SkillShotType.Linear, 250, 650, 120)
            {
                AllowedCollisionCount = int.MaxValue
            };
            E = new Spell.Active(SpellSlot.E, 1000);
            R = new Spell.Skillshot(SpellSlot.R, 1300, SkillShotType.Linear, 175, 2000, 40)
            {
                AllowedCollisionCount = 0
            };

            ColorPicker = new ColorPicker[4];

            ColorPicker[0] = new ColorPicker("CorkiQ", new ColorBGRA(243, 109, 160, 255));
            ColorPicker[1] = new ColorPicker("CorkiW", new ColorBGRA(255, 210, 54, 255));
            ColorPicker[2] = new ColorPicker("CorkiR", new ColorBGRA(1, 109, 160, 255));
            ColorPicker[3] = new ColorPicker("CorkiHpBar", new ColorBGRA(255, 134, 0, 255));

            DamageIndicator.Initalize(ColorPicker[3].Color, 1300);
            DamageIndicator.DamageDelegate = HandleDamageIndicator;

            ColorPicker[3].OnColorChange += (sender, args) =>
            {
                DamageIndicator.Color = args.Color;
            };

            ChampionTracker.Initialize(ChampionTrackerFlags.PostBasicAttackTracker);
            ChampionTracker.OnPostBasicAttack += (sender, args) => IsPreAttack = false;
            Orbwalker.OnPreAttack             += (target, args) => IsPreAttack = true;

            Obj_AI_Base.OnBuffGain += (sender, args) =>
            {
                if (sender.IsMe)
                {
                    R.Range = HasBigRMissile ? (uint)1500 : 1300;
                }
            };
        }
Esempio n. 10
0
        static Ashe()
        {
            Q = new Spell.Active(SpellSlot.Q);
            W = new Spell.Skillshot(SpellSlot.W, 1250, SkillShotType.Cone)
            {
                AllowedCollisionCount = 0,
                CastDelay             = 250,
                ConeAngleDegrees      = (int)(Math.PI / 180 * 40),
                Speed = 1500,
                Range = 1250,
                Width = 20
            };
            E = new Spell.Skillshot(SpellSlot.E, 30000, SkillShotType.Linear);
            R = new Spell.Skillshot(SpellSlot.R, 30000, SkillShotType.Linear, 250, 1600, 130)
            {
                AllowedCollisionCount = 0
            };

            CachedWPrediction             = StaticCacheProvider.Cache.Resolve <CustomCache <int, PredictionResult> >();
            CachedWPrediction.RefreshRate = 500;

            ColorPicker = new ColorPicker[2];

            ColorPicker[0] = new ColorPicker("AsheW", new ColorBGRA(10, 106, 138, 255));
            ColorPicker[1] = new ColorPicker("AsheR", new ColorBGRA(177, 67, 191, 255));

            ChampionTracker.Initialize(ChampionTrackerFlags.VisibilityTracker);

            Obj_AI_Base.OnProcessSpellCast += (sender, args) =>
            {
                if (sender.IsMe && args.Slot == SpellSlot.Q)
                {
                    Orbwalker.ResetAutoAttack();
                }
            };

            Orbwalker.OnPreAttack  += (a, b) => IsPreAttack = true;
            Orbwalker.OnPostAttack += (a, b) => { IsPreAttack = false; IsAfterAttack = true; };
            Game.OnPostTick        += args => IsAfterAttack = false;
        }
Esempio n. 11
0
        static Graves()
        {
            Q = new Spell.Skillshot(SpellSlot.Q, 825, SkillShotType.Linear, 250, 3000, 40)
            {
                AllowedCollisionCount = int.MaxValue
            };
            W = new Spell.Skillshot(SpellSlot.W, 900, SkillShotType.Circular, 250, 1500, 225);
            E = new Spell.Skillshot(SpellSlot.E, 440, SkillShotType.Linear);
            R = new Spell.Skillshot(SpellSlot.R, 1100, SkillShotType.Linear, 250, 2100, 100)
            {
                AllowedCollisionCount = -1
            };
            RCone = new Spell.Skillshot(SpellSlot.R, 700, SkillShotType.Cone, 0, 2000, 110)
            {
                ConeAngleDegrees = (int)(Math.PI / 180 * 70)
            };

            ColorPicker = new ColorPicker[3];

            ColorPicker[0] = new ColorPicker("GravesQ", new ColorBGRA(10, 106, 138, 255));
            ColorPicker[1] = new ColorPicker("GravesR", new ColorBGRA(177, 67, 191, 255));
            ColorPicker[2] = new ColorPicker("GravesHpBar", new ColorBGRA(255, 134, 0, 255));

            DamageIndicator.Initalize(ColorPicker[2].Color);
            DamageIndicator.DamageDelegate = HandleDamageIndicator;

            ColorPicker[2].OnColorChange +=
                (a, b) =>
            {
                DamageIndicator.Color = b.Color;
            };

            Orbwalker.OnPostAttack += Orbwalker_OnPostAttack;
            ChampionTracker.Initialize(ChampionTrackerFlags.LongCastTimeTracker);
            ChampionTracker.OnLongSpellCast += ChampionTracker_OnLongSpellCast;

            Obj_AI_Base.OnSpellCast += Obj_AI_Base_OnSpellCast;

            Obj_AI_Base.OnPlayAnimation += Obj_AI_Base_OnPlayAnimation;
        }
Esempio n. 12
0
        static Graves()
        {
            Q = new Spell.Skillshot(SpellSlot.Q, 950, SkillShotType.Linear, 500, 2500, 50)
            {
                AllowedCollisionCount = int.MaxValue
            };
            W = new Spell.Skillshot(SpellSlot.W, 950, SkillShotType.Circular, 250, 1200, 250);
            E = new Spell.Skillshot(SpellSlot.E, 425, SkillShotType.Linear);
            R = new Spell.Skillshot(SpellSlot.R, 1000, SkillShotType.Linear, 250, 2000, 110)
            {
                AllowedCollisionCount = 0
            };
            RCone = new Spell.Skillshot(SpellSlot.R, 800, SkillShotType.Cone, 250, 2000, 110)
            {
                ConeAngleDegrees = (int)(Math.PI / 180 * 70)
            };

            ColorPicker = new ColorPicker[3];

            ColorPicker[0] = new ColorPicker("GravesQ", new ColorBGRA(10, 106, 138, 255));
            ColorPicker[1] = new ColorPicker("GravesR", new ColorBGRA(177, 67, 191, 255));
            ColorPicker[2] = new ColorPicker("GravesHpBar", 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;
            Orbwalker.OnPreAttack  += Orbwalker_OnPreAttack;
            ChampionTracker.Initialize(ChampionTrackerFlags.LongCastTimeTracker);
            ChampionTracker.OnLongSpellCast += ChampionTracker_OnLongSpellCast;
            Spellbook.OnCastSpell           += Spellbook_OnCastSpell;
        }
Esempio n. 13
0
        private void ObjAiBaseOnOnTeleport(GameObject sender, GameObjectTeleportEventArgs args)
        {
            try
            {
                //if (!Menu.Item("ALP").GetValue<bool>())
                //{
                //    return;
                //}

                var unit = sender as Obj_AI_Hero;
                if (unit == null || !unit.IsValid || unit.IsAlly)
                {
                    return;
                }
                Packet.S2C.Teleport.Struct recall = Packet.S2C.Teleport.Decoded(sender, args);
                if (recall.Type == Packet.S2C.Teleport.Type.Recall)
                {
                    ChampionTracker cham = _championsTracker.FirstOrDefault(
                        c => c.Champion.NetworkId == recall.UnitNetworkId);
                    if (cham != null)
                    {
                        cham.RecallPostion = cham.Champion.ServerPosition;
                        cham.Text.Color    = Color.Red;
                        if (recall.Status == Packet.S2C.Teleport.Status.Finish)
                        {
                            cham.LastPotion = _enemySpawn.Position;
                            cham.Text.Color = Color.White;
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
Esempio n. 14
0
        static Jinx()
        {
            Q = new Spell.Active(SpellSlot.Q);
            W = new Spell.Skillshot(SpellSlot.W, 1500, SkillShotType.Linear, 700, 3200, 60)
            {
                AllowedCollisionCount = -1
            };
            E = new Spell.Skillshot(SpellSlot.E, 900, SkillShotType.Circular, 1100, 1300, 100);
            R = new Spell.Skillshot(SpellSlot.R, 30000, SkillShotType.Linear, 1000, 1500, 130)
            {
                AllowedCollisionCount = -1
            };

            ColorPicker = new ColorPicker[2];

            ColorPicker[0] = new ColorPicker("JinxQ", new ColorBGRA(114, 171, 160, 255));
            ColorPicker[1] = new ColorPicker("JinxW", new ColorBGRA(255, 21, 95, 255));

            Orbwalker.OnPreAttack += Orbwalker_OnPreAttack;
            Game.OnPostTick       += args => IsPreAttack = false;

            ChampionTracker.Initialize(ChampionTrackerFlags.LongCastTimeTracker);
            ChampionTracker.OnLongSpellCast += ChampionTracker_OnLongSpellCast;
        }
Esempio n. 15
0
        static Urgot()
        {
            Q = new Spell.Skillshot(SpellSlot.Q, 900, SkillShotType.Linear, 150, 1600, 60)
            {
                AllowedCollisionCount = 0
            };
            W = new Spell.Active(SpellSlot.W);
            E = new Spell.Skillshot(SpellSlot.E, 900, SkillShotType.Circular, 250, 1500, 250)
            {
                AllowedCollisionCount = int.MaxValue
            };
            R = new Spell.Targeted(SpellSlot.R, 500);

            CorrosiveDebufTargets = new List <Obj_AI_Base>();

            ColorPicker = new ColorPicker[4];

            CachedHasBuff = StaticCacheProvider.Cache.Resolve <Cache.Modules.CustomCache <int, bool> >(200);

            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(ColorPicker[3].Color);
            DamageIndicator.DamageDelegate = HandleDamageIndicator;

            ColorPicker[3].OnColorChange += (a, b) => DamageIndicator.Color = b.Color;

            TearStacker.Initializer(new Dictionary <SpellSlot, float> {
                { SpellSlot.Q, 2150 }
            },
                                    () =>
                                    (Player.Instance.CountEnemiesInRangeCached(1500) == 0) &&
                                    (Player.Instance.CountEnemyMinionsInRangeCached(1500) == 0) && !HasAnyOrbwalkerFlags);

            ChampionTracker.Initialize(ChampionTrackerFlags.VisibilityTracker);
            ChampionTracker.OnLoseVisibility += ChampionTracker_OnLoseVisibility;

            Game.OnPreTick += args =>
            {
                if (Core.GameTickCount - _lastScanTick < 100)
                {
                    return;
                }

                CorrosiveDebufTargets.Clear();
            };

            Game.OnTick += Game_OnTick;

            GameObject.OnCreate += (sender, args) =>
            {
                if (!Settings.Combo.UseW || !HasAnyOrbwalkerFlags)
                {
                    return;
                }

                var missileClient = sender as MissileClient;

                if ((missileClient != null) && missileClient.SpellCaster.IsMe && W.IsReady() &&
                    ((missileClient.IsAutoAttack() && (missileClient.Target?.Type == GameObjectType.AIHeroClient)) || StaticCacheProvider.GetChampions(CachedEntityType.EnemyHero,
                                                                                                                                                       x =>
                                                                                                                                                       x.IsValidTarget() &&
                                                                                                                                                       missileClient.EndPosition.IsInRange(x, missileClient.SData.LineWidth)).Any()))
                {
                    W.Cast();
                }
            };
        }
Esempio n. 16
0
        static Ezreal()
        {
            Q = new Spell.Skillshot(SpellSlot.Q, 1300, SkillShotType.Linear, 250, 2000, 60);
            W = new Spell.Skillshot(SpellSlot.W, 1050, SkillShotType.Linear, 250, 1600, 80)
            {
                AllowedCollisionCount = int.MaxValue
            };
            E = new Spell.Skillshot(SpellSlot.E, 475, SkillShotType.Linear);
            R = new Spell.Skillshot(SpellSlot.R, 6000, SkillShotType.Linear, 1000, 2000, 160)
            {
                AllowedCollisionCount = int.MaxValue
            };

            ComboDamages = Cache.Resolve <CustomCache <int, float> >(1000);

            ColorPicker = new ColorPicker[4];

            ColorPicker[0] = new ColorPicker("EzrealQ", new ColorBGRA(10, 106, 138, 255));
            ColorPicker[1] = new ColorPicker("EzrealW", new ColorBGRA(177, 67, 191, 255));
            ColorPicker[2] = new ColorPicker("EzrealE", new ColorBGRA(255, 134, 0, 255));
            ColorPicker[3] = new ColorPicker("EzrealHpBar", new ColorBGRA(255, 134, 0, 255));

            DamageIndicator.Initalize(ColorPicker[3].Color);
            DamageIndicator.DamageDelegate = HandleDamageIndicator;

            ChampionTracker.Initialize(ChampionTrackerFlags.LongCastTimeTracker);

            Obj_AI_Base.OnBasicAttack += Obj_AI_Base_OnBasicAttack;

            Text = new Text("", new Font("calibri", 15, FontStyle.Regular));

            ColorPicker[3].OnColorChange +=
                (a, b) =>
            {
                DamageIndicator.Color = b.Color;
            };

            TearStacker.Initializer(new Dictionary <SpellSlot, float> {
                { SpellSlot.Q, 3000 }, { SpellSlot.W, 4200 }
            },
                                    () => (Player.Instance.CountEnemiesInRange(1000) == 0) && (Player.Instance.CountEnemyMinionsInRange(1000) == 0) && !HasAnyOrbwalkerFlags());

            Orbwalker.OnPreAttack += (a, b) =>
            {
                if (a.IsMe)
                {
                    return;
                }

                IsPreAttack = true;
            };

            Orbwalker.OnPostAttack += (a, b) =>
            {
                IsPreAttack  = false;
                IsPostAttack = true;
            };

            Orbwalker.OnUnkillableMinion += (target, args) =>
            {
                if (FarmMode && Q.IsReady() && (Q.GetPrediction(target).Collision == false) && (Prediction.Health.GetPrediction(target,
                                                                                                                                (int)((target.DistanceCached(Player.Instance) + Q.CastDelay) / Q.Speed * 1000)) > 0))
                {
                    Q.Cast(target.ServerPosition);
                }
            };

            ChampionTracker.OnLongSpellCast   += ChampionTracker_OnLongSpellCast;
            ChampionTracker.OnPostBasicAttack += ChampionTracker_OnPostBasicAttack;

            Obj_AI_Base.OnSpellCast += (sender, args) =>
            {
                if (Settings.Combo.WEComboKeybind && E.IsReady() && sender.IsMe && (args.Slot == SpellSlot.W))
                {
                    E.Cast(Player.Instance.Position.Extend(args.End, E.Range - 15).To3D());
                }
            };
        }
Esempio n. 17
0
        static Ezreal()
        {
            Q = new Spell.Skillshot(SpellSlot.Q, 1300, SkillShotType.Linear, 250, 2000, 60);
            W = new Spell.Skillshot(SpellSlot.W, 1050, SkillShotType.Linear, 250, 1600, 80)
            {
                AllowedCollisionCount = int.MaxValue
            };
            E = new Spell.Skillshot(SpellSlot.E, 475, SkillShotType.Linear);
            R = new Spell.Skillshot(SpellSlot.R, 6000, SkillShotType.Linear, 1000, 2000, 160)
            {
                AllowedCollisionCount = int.MaxValue
            };

            ComboDamages = Cache.Resolve <CustomCache <int, float> >(1000);

            ColorPicker = new ColorPicker[4];

            ColorPicker[0] = new ColorPicker("EzrealQ", new ColorBGRA(10, 106, 138, 255));
            ColorPicker[1] = new ColorPicker("EzrealW", new ColorBGRA(177, 67, 191, 255));
            ColorPicker[2] = new ColorPicker("EzrealE", new ColorBGRA(255, 134, 0, 255));
            ColorPicker[3] = new ColorPicker("EzrealHpBar", new ColorBGRA(255, 134, 0, 255));

            DamageIndicator.Initalize(ColorPicker[3].Color);
            DamageIndicator.DamageDelegate = HandleDamageIndicator;

            ChampionTracker.Initialize(ChampionTrackerFlags.LongCastTimeTracker);

            Obj_AI_Base.OnBasicAttack += Obj_AI_Base_OnBasicAttack;

            Text = new Text("", new Font("calibri", 15, FontStyle.Regular));

            ColorPicker[3].OnColorChange +=
                (a, b) =>
            {
                DamageIndicator.Color = b.Color;
            };

            TearStacker.Initializer(new Dictionary <SpellSlot, float> {
                { SpellSlot.Q, 5000 }, { SpellSlot.W, 15000 }
            },
                                    () => Player.Instance.CountEnemiesInRange(1000) == 0 && Player.Instance.CountEnemyMinionsInRange(1000) == 0 && !HasAnyOrbwalkerFlags());

            Orbwalker.OnPreAttack += (a, b) =>
            {
                if (a.IsMe)
                {
                    return;
                }

                IsPreAttack = true;
            };

            Orbwalker.OnPostAttack += (a, b) =>
            {
                IsPreAttack  = false;
                IsPostAttack = true;
            };

            ChampionTracker.OnLongSpellCast   += ChampionTracker_OnLongSpellCast;
            ChampionTracker.OnPostBasicAttack += ChampionTracker_OnPostBasicAttack;
        }
Esempio n. 18
0
        static Tristana()
        {
            Q = new Spell.Active(SpellSlot.Q);
            W = new Spell.Skillshot(SpellSlot.W, 900, SkillShotType.Circular, 400, 1400, 150);
            E = new Spell.Targeted(SpellSlot.E, 600);
            R = new Spell.Targeted(SpellSlot.R, 600);

            ColorPicker = new ColorPicker[2];

            ColorPicker[0] = new ColorPicker("TristanaW", new ColorBGRA(243, 109, 160, 255));
            ColorPicker[1] = new ColorPicker("TristanaHpBar", new ColorBGRA(255, 134, 0, 255));
            Text           = new Text("", new Font("calibri", 15, FontStyle.Regular));

            ComboDamages = Cache.Resolve <CustomCache <int, float> >(1000);

            Orbwalker.OnPreAttack += Orbwalker_OnPreAttack;

            Orbwalker.OnPostAttack += (sender, args) =>
            {
                IsPreAttack = false;

                if (!W.IsReady() || !Settings.Combo.UseW || !Settings.Combo.DoubleWKeybind)
                {
                    return;
                }

                var possibleTargets = StaticCacheProvider.GetChampions(CachedEntityType.EnemyHero,
                                                                       x => x.IsValidTarget(W.Range) && HasExplosiveChargeBuff(x) && (CountEStacks(x) == 2));

                var target = TargetSelector.GetTarget(possibleTargets, DamageType.Physical);

                if ((target == null) || target.Position.IsVectorUnderEnemyTower())
                {
                    return;
                }

                var buff = target.Buffs.Find(x => x.Name.ToLowerInvariant() == "tristanaechargesound").EndTime;

                if (buff - Game.Time < Player.Instance.Distance(target) / 1300 + 0.5)
                {
                    return;
                }

                var wPrediction = W.GetPrediction(target);

                if (wPrediction.HitChance < HitChance.Medium)
                {
                    return;
                }

                Wtarg  = target;
                Checkw = true;

                W.Cast(wPrediction.CastPosition);
                Core.DelayAction(() => WTarget = null, 3000);
            };

            DamageIndicator.Initalize(ColorPicker[1].Color, 1300);
            DamageIndicator.DamageDelegate = HandleDamageIndicator;

            ChampionTracker.Initialize(ChampionTrackerFlags.PostBasicAttackTracker);
            ChampionTracker.OnPostBasicAttack += (sender, args) =>
            {
                var target = args.Target as AIHeroClient;

                if ((target != null) && args.Sender.IsMe && (CountEStacks(target) == 2) && (target.TotalHealthWithShields() <= Damage.GetEPhysicalDamage(target, 3) + Damage.GetRDamage(target)))
                {
                    R.Cast(target);
                }
            };

            ColorPicker[1].OnColorChange += (a, b) => { DamageIndicator.Color = b.Color; };

            GameObject.OnCreate += GameObject_OnCreate;
            Messages.OnMessage  += Messages_OnMessage;
        }
Esempio n. 19
0
        public Minimap_Pro()
        {
            #region Menu
            var turrethealth = new Menu("TurretHealth", "Turret Health")
            {
                new MenuBool("Toggle", "Enabled"),

                new Menu("Allies", "Allies")
                {
                    new MenuBool("turrets", "Turrets"),
                    new MenuBool("inhibs", "Inhibitors")
                },

                new Menu("Enemies", "Enemies")
                {
                    new MenuBool("turrets", "Turrets"),
                    new MenuBool("inhibs", "Inhibitors")
                },
            };
            Menu.Add(turrethealth);

            var waypoints = new Menu("Waypoints", "Waypoints")
            {
                new MenuBool("Toggle", "Enabled"),
            };
            Menu.Add(waypoints);

            //Submenu of waypoints
            var waypointssub = new Menu("whitelist", "Whitelist");
            {
                foreach (Obj_AI_Hero enemies in GameObjects.EnemyHeroes)
                {
                    waypointssub.Add(new MenuBool(enemies.ChampionName.ToLower(), enemies.ChampionName));
                }
            }
            waypoints.Add(waypointssub);

            //Submenu2 of waypoints
            var waypointssub2 = new MenuList("color", "Color: ", new[] { "Yellow", "White", "Red", "Orange" }, 1);
            waypoints.Add(waypointssub2);

            var jungletimer = new Menu("JungleTimer", "Jungle Timers")
            {
                new MenuBool("Toggle", "Enabled"),
                new MenuBool("teamtoggle", "Ally Side Jungle"),
                new MenuBool("enemytoggle", "Enemy Side Jungle"),
                new MenuList("color", "Color: ", new[] { "Yellow", "White", "Green" }, 0)
            };
            Menu.Add(jungletimer);

            var championtracker = new Menu("ChampionTracker", "Champion Tracker")
            {
                new MenuBool("Toggle", "Enabled"),
            };
            Menu.Add(championtracker);

            var circlesizemenu = new MenuSlider("radiuslimitslider", "Max Circle Size", 900, 1, 1200);
            championtracker.Add(circlesizemenu);

            //Submenu of championtracker
            var championtrackersub = new Menu("whitelist", "Whitelist");
            {
                foreach (Obj_AI_Hero enemies in GameObjects.EnemyHeroes)
                {
                    championtrackersub.Add(new MenuBool(enemies.ChampionName.ToLower(), enemies.ChampionName));
                }
            }
            championtracker.Add(championtrackersub);


            //Submenu2 of championtracker
            var championtrackersub2 = new Menu("champlist", "Champion List");
            {
                championtrackersub2.Add(new MenuBool("cToggle", "Enabled"));
                championtrackersub2.Add(new MenuSlider("PosX", "X Position", 1500, 1, 1900));
                championtrackersub2.Add(new MenuSlider("PosY", "Y Position", 800, 1, 1200));
            }
            championtracker.Add(championtrackersub2);



            //submenu3 of championtracker - Awareness
            var awareness = new Menu("Awareness", "Awareness Lines");
            {
                awareness.Add(new MenuBool("Toggle", "Enabled", false));
                awareness.Add(new MenuSlider("rangeMin", "Min. Range", 800, 1, 3000));
                awareness.Add(new MenuSlider("rangeMax", "Max. Range", 2200, 1, 3000));
            }
            championtracker.Add(awareness);

            //Submenu of Awareness
            var awarenesssub = new Menu("whitelist", "Whitelist");
            {
                foreach (Obj_AI_Hero enemies in GameObjects.EnemyHeroes)
                {
                    awarenesssub.Add(new MenuBool(enemies.ChampionName.ToLower(), enemies.ChampionName));
                }
            }
            awareness.Add(awarenesssub);

            Menu.Attach();
            #endregion

            Game.OnUpdate          += Game_OnUpdate;
            GameObject.OnCreate    += OnGameObjectCreated;
            GameObject.OnDestroy   += OnGameObjectDestroyed;
            Obj_AI_Base.OnTeleport += OnTeleport;
            Render.OnPresent       += Render_OnPresent;

            //For champion tracker
            foreach (var enemy in GameObjects.EnemyHeroes)
            {
                var enemychamp = new ChampionTracker(enemy)
                {
                    LastPosition = enemy.Orientation
                };
                _lastPositions.Add(enemychamp);
            }
        }