Пример #1
0
        public static void useQSmart(Obj_AI_Base target)
        {
            try
            {
                if (!Q.IsReady() || target.Path.Count() == 0 || !target.IsMoving)
                {
                    return;
                }
                Vector2 nextEnemPath = target.Path[0].To2D();
                var     dist         = player.Position.To2D().Distance(target.Position.To2D());
                var     distToNext   = nextEnemPath.Distance(player.Position.To2D());
                if (distToNext <= dist)
                {
                    return;
                }
                var msDif = player.MoveSpeed - target.MoveSpeed;
                if (msDif <= 0 && !LXOrbwalker.InAutoAttackRange(target) && LXOrbwalker.CanAttack())
                {
                    Q.Cast(target);
                }

                var reachIn = dist / msDif;
                if (reachIn > 4)
                {
                    Q.Cast(target);
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #2
0
        private static void onDamage(AttackableUnit sender, AttackableUnitDamageEventArgs args)
        {
            try
            {
                if (args.SourceNetworkId != MasterYi.player.NetworkId || !MasterYi.W.IsReady() || LXOrbwalker.CanAttack())
                {
                    return;
                }


                GameObject targ = ObjectManager.GetUnitByNetworkId <GameObject>(args.TargetNetworkId);

                if (targ == null)
                {
                    return;
                }
                // Console.WriteLine("dmg: " + args.Damage + " type " + args.Type + " dmg type: " + args.HitType + " pred dmg: "+ MasterYi.player.GetAutoAttackDamage(targ));

                // if (args.Type == DamageType.Physical)
                // {
                if (targ is Obj_AI_Hero)
                {
                    if (Config.Item("comboWreset").GetValue <bool>())
                    {
                        MasterYi.W.Cast();
                    }
                    LXOrbwalker.ResetAutoAttackTimer();
                }
                // }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
        }