Example #1
0
        private static void Combo()
        {
            if (ComboOption.UseQ && Q.IsReady())
            {
                var target = MyTargetSelector.GetTarget(Q.Range);

                if (target != null && target.IsValidTarget(Q.Range))
                {
                    if (ComboOption.GetBool("ComboSaveMana").Enabled)
                    {
                        if (Me.Mana >= W.Mana + Q.Mana)
                        {
                            var qPred = Q.GetPrediction(target);

                            if (qPred.Hitchance >= HitChance.High)
                            {
                                Q.Cast(qPred.CastPosition);
                            }
                        }
                    }
                    else
                    {
                        var qPred = Q.GetPrediction(target);

                        if (qPred.Hitchance >= HitChance.High)
                        {
                            Q.Cast(qPred.CastPosition);
                        }
                    }
                }
            }

            if (ComboOption.UseW && W.IsReady())
            {
                var target = MyTargetSelector.GetTarget(W.Range);

                if (target != null && target.IsValidTarget())
                {
                    if (ComboOption.GetList("ComboWSmartKS").Index != 2 &&
                        target.Health <= Me.GetSpellDamage(target, SpellSlot.W) + Me.GetAutoAttackDamage(target) &&
                        target.IsValidTarget(Me.GetRealAutoAttackRange(target) + 80))
                    {
                        if (ComboOption.GetList("ComboWSmartKS").Index == 0)
                        {
                            W.Cast();
                            W.Cast();
                            W.Cast();

                            if (HumanizerCardSelect.IsSelect && target.InAutoAttackRange() && Orbwalker.CanAttack())
                            {
                                Me.IssueOrder(GameObjectOrder.AttackUnit, target);
                            }
                        }
                        else
                        {
                            HumanizerCardSelect.StartSelecting(HumanizerCards.Blue);

                            if (HumanizerCardSelect.IsSelect && target.InAutoAttackRange() && Orbwalker.CanAttack())
                            {
                                Me.IssueOrder(GameObjectOrder.AttackUnit, target);
                            }
                        }
                    }
                    else
                    {
                        HumanizerCardSelect.StartSelecting(Me.Mana + W.Mana >=
                                                           Q.Mana + W.Mana
                            ? HumanizerCards.Yellow
                            : HumanizerCards.Blue);
                    }
                }
            }
        }