예제 #1
0
        private static void Game_OnUpdate(System.EventArgs args)
        {
            if (ObjectManager.Player.IsDead)
            {
                return;
            }


            if (Orbwalker.ActiveMode == OrbwalkerMode.Combo)
            {
                //Game.Print("In Combo");
                YoneCombo();
            }

            if (Orbwalker.ActiveMode == OrbwalkerMode.LaneClear && !FunnySlayerCommon.OnAction.OnAA)
            {
                var Qminions = ObjectManager.Get <AIBaseClient>().Where(i => !i.IsDead && !i.IsAlly && i.IsValidTarget(isQ3() ? 900 : 475) && !i.Position.IsBuilding()).OrderByDescending(i => i.Health);
                if (Qminions != null && Q1.IsReady())
                {
                    foreach (var min in Qminions)
                    {
                        if (!min.IsMinion())
                        {
                            if (isQ3())
                            {
                                var qFarm = Q3.GetPrediction(min);

                                if (qFarm.Hitchance >= HitChance.High && qFarm.CastPosition.DistanceToPlayer() <= 900 && !Yasuo.YasuoHelper.UnderTower(objPlayer.Position.Extend(qFarm.CastPosition, 500)))
                                {
                                    Q3.Cast(qFarm.CastPosition);
                                }
                            }
                            else
                            {
                                var qFarm = Q1.GetPrediction(min);

                                if (qFarm.Hitchance >= HitChance.High && qFarm.CastPosition.DistanceToPlayer() <= 475)
                                {
                                    Q1.Cast(qFarm.CastPosition);
                                }
                            }
                        }
                        else
                        {
                            if (isQ3())
                            {
                                if (Orbwalker.ActiveMode == OrbwalkerMode.Harass)
                                {
                                    return;
                                }
                                else
                                {
                                    var qFarm = Q3.GetLineFarmLocation(Qminions.ToList());

                                    if (qFarm.MinionsHit >= 1 && !Yasuo.YasuoHelper.UnderTower(objPlayer.Position.Extend(qFarm.Position, 500)))
                                    {
                                        Q3.Cast(qFarm.Position);
                                    }
                                }
                            }
                            else
                            {
                                if (Orbwalker.ActiveMode == OrbwalkerMode.Harass)
                                {
                                    if (min.Health < objPlayer.GetSpellDamage(min, SpellSlot.Q) && min.IsValidTarget(Q1.Range))
                                    {
                                        Q1.Cast(min.Position);
                                    }
                                }
                                else
                                {
                                    var qFarm = Q1.GetLineFarmLocation(Qminions.ToList());

                                    if (qFarm.MinionsHit >= 1)
                                    {
                                        Q1.Cast(qFarm.Position);
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }