コード例 #1
0
        void ForceGrab()
        {
            var bestmin = GrabbableObjects.MaxOrDefault(x => x.priority).unit;

            if (bestmin != null)
            {
                if (ObjectManager.Player.Spellbook.CastSpell(SpellSlot.W, bestmin))
                {
                    LastWTick = Utils.TickCount;
                }
            }
        }
コード例 #2
0
        void CastW(Obj_AI_Hero paramtarget)
        {
            var targ = paramtarget == null?TargetSelector.GetTarget(SpellManager.W.Range, TargetSelector.DamageType.Magical) : paramtarget;

            if (targ == null)
            {
                return;
            }

            if (HasSecondW)
            {
                var result = SpellManager.W2.GetAoeSPrediction();

                if (result.HitCount > 0)
                {
                    SpellManager.W2.Cast(result.CastPosition);
                    return;
                }

                else if (result.HitCount == 0)
                {
                    var pred = SpellManager.W2.GetSPrediction(targ);
                    if (pred.HitChance >= HitChance.Low)
                    {
                        SpellManager.W2.Cast(pred.CastPosition);
                        return;
                    }
                    //Common if SPrediction cant find
                    else
                    {
                        var predc = SpellManager.W2.GetPrediction(targ);
                        if (predc.Hitchance >= HitChance.VeryHigh)
                        {
                            SpellManager.W2.Cast(predc.CastPosition);
                            return;
                        }
                    }
                }
            }



            //Add if W about to run out, throw at closeby minions?
            //if first W
            else if (WGood)
            {
                var target = paramtarget == null?TargetSelector.GetTarget(0.90f *SpellManager.W.Range, TargetSelector.DamageType.Magical) : paramtarget;

                if (target != null)
                {
                    var bestmin = GrabbableObjects.MaxOrDefault(x => x.priority).unit;
                    if (bestmin != null)
                    {
                        if (ObjectManager.Player.Spellbook.CastSpell(SpellSlot.W, bestmin))
                        {
                            LastWTick = Utils.TickCount;
                        }
                    }
                }
            }
        }