示例#1
0
        public static void EFlashCombo()
        {
            var isEProcessed = false;

            Orbwalker.OrbwalkTo(Game.CursorPos);
            Player.IssueOrder(GameObjectOrder.AttackUnit, Game.CursorPos);

            var target = TargetSelector.SelectedTarget;

            if (target == null || !target.IsValidTarget())
            {
                target = TargetSelector.GetTarget(R.Range, DamageType.Magical);
            }

            if (target != null && target.IsValidTarget(R.Range))
            {
                var distance = Player.Instance.Distance(target.Position);
                var range    = E.Range + FLASH.Range + 165;
                if (distance <= range)
                {
                    if (E.IsReady() && E.Name == "FizzJump")
                    {
                        var castPos = E.GetPrediction(target).CastPosition.Extend(Player.Instance.Position, range - 165);
                        E.Cast(castPos.To3DWorld());
                        Core.DelayAction(() => { isEProcessed = true; }, (990 - Game.Ping));
                    }

                    if (FLASH.IsReady() && !isEProcessed && Player.Instance.LastCastedSpellName() == "FizzJump" &&
                        Player.Instance.Distance(target.Position) <= FLASH.Range + 530 &&
                        Player.Instance.Distance(target.Position) >= 330)
                    {
                        var endPos = FLASH.GetPrediction(target).CastPosition.Extend(Player.Instance.Position, range - 530);
                        FLASH.Cast(endPos.To3DWorld());
                    }

                    if (R.IsReady() && Settings.UseR && !FLASH.IsReady())
                    {
                        SpellManager.CastR(target, Settings.RMode);
                    }

                    if (W.IsReady() && Settings.UseW && !FLASH.IsReady() && Player.Instance.LastCastedSpellName() == "FizzMarinerDoom")
                    {
                        W.Cast();
                    }

                    if (Q.IsReady() && Settings.UseQ && !E.IsReady() && !FLASH.IsReady() && Player.Instance.LastCastedSpellName() == "FizzSeastonePassive")
                    {
                        Q.Cast(target);
                    }

                    if (Player.Instance.LastCastedSpellName() == "FizzPiercingStrike" && Settings.UseZhonyasInEFlashZhonyasCombo)
                    {
                        ItemManager.UseZhonyas();
                    }
                }
            }
        }