示例#1
0
 private void StarCombo()
 {
     CustomOrbwalk(targetObj);
     if (targetObj == null)
     {
         return;
     }
     UseItem(targetObj);
     if (SkillE.IsReady())
     {
         if (SkillE.Instance.Name == "BlindMonkEOne" && SkillE.InRange(targetObj.Position))
         {
             SkillE.Cast(PacketCast());
         }
         else if (targetObj.HasBuff("BlindMonkTempest") && SkillE2.InRange(targetObj.Position) && (Player.Distance3D(targetObj) > 450 || !ECasted))
         {
             SkillE.Cast(PacketCast());
         }
     }
     if (SkillQ.IsReady())
     {
         if (SkillQ.Instance.Name == "BlindMonkQOne" && SkillQ.InRange(targetObj.Position))
         {
             if (ItemBool("Misc", "SmiteCol"))
             {
                 if (!SmiteCollision(targetObj, SkillQ))
                 {
                     SkillQ.CastIfHitchanceEquals(targetObj, HitChance.VeryHigh, PacketCast());
                 }
             }
             else
             {
                 SkillQ.CastIfHitchanceEquals(targetObj, HitChance.VeryHigh, PacketCast());
             }
         }
         else if (targetObj.HasBuff("BlindMonkSonicWave") && SkillQ2.InRange(targetObj.Position) && (CanKill(targetObj, SkillQ2, 1) || (!SkillR.IsReady() && !RCasted && KickCasted) || (!SkillR.IsReady() && !RCasted && !KickCasted && !QCasted)))
         {
             SkillQ.Cast(PacketCast());
         }
     }
     if (SkillW.IsReady())
     {
         if (SkillW.Instance.Name == "BlindMonkWOne")
         {
             if (SkillR.IsReady())
             {
                 if (SkillQ.IsReady() && targetObj.HasBuff("BlindMonkSonicWave") && !SkillR.InRange(targetObj.Position) && Player.Distance3D(targetObj) < SkillW.Range + SkillR.Range - 170)
                 {
                     WardJump(targetObj.Position);
                 }
             }
             else if (Orbwalk.InAutoAttackRange(targetObj))
             {
                 SkillW.Cast(PacketCast());
             }
         }
         else if (SkillE.InRange(targetObj.Position) && !Player.HasBuff("BlindMonkSafeguard") && !WCasted)
         {
             SkillW.Cast(PacketCast());
         }
     }
     if (SkillR.IsReady() && SkillQ.IsReady() && targetObj.HasBuff("BlindMonkSonicWave") && SkillR.InRange(targetObj.Position))
     {
         SkillR.CastOnUnit(targetObj, PacketCast());
     }
 }
示例#2
0
        private void Harass()
        {
            if (targetObj == null)
            {
                CurHarassStage = HarassStage.Nothing;
                return;
            }
            switch (CurHarassStage)
            {
            case HarassStage.Nothing:
                CurHarassStage = HarassStage.Doing;
                break;

            case HarassStage.Doing:
                if (ItemBool("Harass", "Q") && SkillQ.IsReady())
                {
                    if (SkillQ.Instance.Name == "BlindMonkQOne" && SkillQ.InRange(targetObj.Position))
                    {
                        if (ItemBool("Misc", "SmiteCol"))
                        {
                            if (!SmiteCollision(targetObj, SkillQ))
                            {
                                SkillQ.CastIfHitchanceEquals(targetObj, HitChance.VeryHigh, PacketCast());
                            }
                        }
                        else
                        {
                            SkillQ.CastIfHitchanceEquals(targetObj, HitChance.VeryHigh, PacketCast());
                        }
                    }
                    else if (targetObj.HasBuff("BlindMonkSonicWave") && SkillQ2.InRange(targetObj.Position) && (CanKill(targetObj, SkillQ2, 1) || (SkillW.IsReady() && SkillW.Instance.Name == "BlindMonkWOne" && Player.Mana >= SkillW.Instance.ManaCost + (ItemBool("Harass", "E") && SkillE.IsReady() && SkillE.Instance.Name == "BlindMonkEOne" ? SkillQ.Instance.ManaCost + SkillE.Instance.ManaCost : SkillQ.Instance.ManaCost) && Player.HealthPercentage() >= ItemSlider("Harass", "Q2Above"))))
                    {
                        HarassBackPos = Player.ServerPosition;
                        SkillQ.Cast(PacketCast());
                        Utility.DelayAction.Add((int)((Player.Distance3D(targetObj) + (ItemBool("Harass", "E") && SkillE.IsReady() && SkillE.Instance.Name == "BlindMonkEOne" ? SkillE.Range : 0)) / SkillQ.Speed * 1000 - 100) * 2, () => CurHarassStage = HarassStage.Finish);
                    }
                }
                if (ItemBool("Harass", "E") && SkillE.IsReady())
                {
                    if (SkillE.Instance.Name == "BlindMonkEOne" && SkillE.InRange(targetObj.Position))
                    {
                        SkillE.Cast(PacketCast());
                    }
                    else if (targetObj.HasBuff("BlindMonkTempest") && SkillE2.InRange(targetObj.Position))
                    {
                        CurHarassStage = HarassStage.Finish;
                    }
                }
                break;

            case HarassStage.Finish:
                if (SkillW.IsReady() && SkillW.Instance.Name == "BlindMonkWOne")
                {
                    var jumpObj = ObjectManager.Get <Obj_AI_Base>().Where(i => IsValid(i, SkillW.Range + i.BoundingRadius, false) && !(i is Obj_AI_Turret) && i.Distance3D(targetObj) >= 450).OrderByDescending(i => i.Distance3D(Player)).OrderBy(i => ObjectManager.Get <Obj_AI_Turret>().Where(a => IsValid(a, float.MaxValue, false)).OrderBy(a => a.Distance3D(Player)).FirstOrDefault().Distance3D(i));
                    if (jumpObj.Count() > 0 && !JumpCasted)
                    {
                        foreach (var Obj in jumpObj)
                        {
                            SkillW.CastOnUnit(Obj, PacketCast());
                        }
                    }
                    else if (ItemBool("Harass", "WBackWard") && (GetWardSlot() != null || GetWardSlot().Stacks > 0 || WardCasted))
                    {
                        WardJump(HarassBackPos);
                    }
                }
                else
                {
                    if (HarassBackPos != default(Vector3))
                    {
                        HarassBackPos = default(Vector3);
                    }
                    CurHarassStage = HarassStage.Nothing;
                }
                break;
            }
        }
示例#3
0
        private void LaneJungClear()
        {
            var minionObj = ObjectManager.Get <Obj_AI_Minion>().Where(i => IsValid(i, SkillQ2.Range)).OrderBy(i => i.Health);

            foreach (var Obj in minionObj)
            {
                if (SmiteReady() && Obj.Team == GameObjectTeam.Neutral)
                {
                    if ((ItemBool("SmiteMob", "Baron") && Obj.Name.StartsWith("SRU_Baron")) || (ItemBool("SmiteMob", "Dragon") && Obj.Name.StartsWith("SRU_Dragon")) || (!Obj.Name.Contains("Mini") && (
                                                                                                                                                                             (ItemBool("SmiteMob", "Red") && Obj.Name.StartsWith("SRU_Red")) || (ItemBool("SmiteMob", "Blue") && Obj.Name.StartsWith("SRU_Blue")) ||
                                                                                                                                                                             (ItemBool("SmiteMob", "Krug") && Obj.Name.StartsWith("SRU_Krug")) || (ItemBool("SmiteMob", "Gromp") && Obj.Name.StartsWith("SRU_Gromp")) ||
                                                                                                                                                                             (ItemBool("SmiteMob", "Raptor") && Obj.Name.StartsWith("SRU_Razorbeak")) || (ItemBool("SmiteMob", "Wolf") && Obj.Name.StartsWith("SRU_Murkwolf")))))
                    {
                        CastSmite(Obj);
                    }
                }
                var Passive = Player.HasBuff("BlindMonkFlurry");
                if (ItemBool("Clear", "E") && SkillE.IsReady() && !FarmCasted)
                {
                    if (SkillE.Instance.Name == "BlindMonkEOne" && (minionObj.Count(i => SkillE.InRange(i.Position)) >= 2 || (Obj.MaxHealth >= 1200 && SkillE.InRange(Obj.Position))))
                    {
                        if (!Passive)
                        {
                            SkillE.Cast(PacketCast());
                            FarmCasted = true;
                            Utility.DelayAction.Add(500, () => FarmCasted = false);
                        }
                    }
                    else if (Obj.HasBuff("BlindMonkTempest") && SkillE2.InRange(Obj.Position) && (!ECasted || !Passive))
                    {
                        SkillE.Cast(PacketCast());
                        FarmCasted = true;
                        Utility.DelayAction.Add(500, () => FarmCasted = false);
                    }
                }
                if (ItemBool("Clear", "W") && SkillW.IsReady() && !FarmCasted)
                {
                    if (SkillW.Instance.Name == "BlindMonkWOne")
                    {
                        if (!Passive && Orbwalk.InAutoAttackRange(Obj))
                        {
                            SkillW.Cast(PacketCast());
                            FarmCasted = true;
                            Utility.DelayAction.Add(500, () => FarmCasted = false);
                        }
                    }
                    else if (SkillE.InRange(Obj.Position) && (!WCasted || !Passive))
                    {
                        SkillW.Cast(PacketCast());
                        FarmCasted = true;
                        Utility.DelayAction.Add(500, () => FarmCasted = false);
                    }
                }
                if (ItemBool("Clear", "Q") && SkillQ.IsReady() && !FarmCasted)
                {
                    if (SkillQ.Instance.Name == "BlindMonkQOne" && SkillQ.InRange(Obj.Position))
                    {
                        if ((!Passive || !Orbwalk.InAutoAttackRange(Obj)) && !CanKill(Obj, SkillQ))
                        {
                            SkillQ.CastIfHitchanceEquals(Obj, HitChance.Medium, PacketCast());
                        }
                    }
                    else if (Obj.HasBuff("BlindMonkSonicWave") && (SkillQ2.GetHealthPrediction(Obj) + 5 <= GetQ2Dmg(Obj) || Player.Distance3D(Obj) > 500 || !QCasted || !Passive))
                    {
                        SkillQ.Cast(PacketCast());
                    }
                }
                if (ItemBool("Clear", "Item"))
                {
                    UseItem(Obj, true);
                }
            }
        }
示例#4
0
 private void NormalCombo()
 {
     if (targetObj == null)
     {
         return;
     }
     if (ItemBool("Combo", "Passive") && Player.HasBuff("BlindMonkFlurry") && Orbwalk.InAutoAttackRange(targetObj) && Orbwalk.CanAttack())
     {
         return;
     }
     if (ItemBool("Combo", "E") && SkillE.IsReady())
     {
         if (SkillE.Instance.Name == "BlindMonkEOne" && SkillE.InRange(targetObj.Position))
         {
             SkillE.Cast(PacketCast());
         }
         else if (targetObj.HasBuff("BlindMonkTempest") && SkillE2.InRange(targetObj.Position) && (Player.Distance3D(targetObj) > 450 || !ECasted))
         {
             SkillE.Cast(PacketCast());
         }
     }
     if (ItemBool("Combo", "Q") && SkillQ.IsReady())
     {
         if (SkillQ.Instance.Name == "BlindMonkQOne" && SkillQ.InRange(targetObj.Position))
         {
             if (ItemBool("Misc", "SmiteCol"))
             {
                 if (!SmiteCollision(targetObj, SkillQ))
                 {
                     SkillQ.CastIfHitchanceEquals(targetObj, HitChance.VeryHigh, PacketCast());
                 }
             }
             else
             {
                 SkillQ.CastIfHitchanceEquals(targetObj, HitChance.VeryHigh, PacketCast());
             }
         }
         else if (targetObj.HasBuff("BlindMonkSonicWave") && SkillQ2.InRange(targetObj.Position))
         {
             if (Player.Distance3D(targetObj) > 500 || CanKill(targetObj, SkillQ2, 1) || (targetObj.HasBuff("BlindMonkTempest") && SkillE.InRange(targetObj.Position) && !Orbwalk.InAutoAttackRange(targetObj)) || !QCasted)
             {
                 SkillQ.Cast(PacketCast());
             }
         }
     }
     if (ItemBool("Combo", "R") && ItemBool("Ultimate", targetObj.ChampionName) && SkillR.IsReady() && SkillR.InRange(targetObj.Position))
     {
         if (CanKill(targetObj, SkillR) || (SkillR.GetHealthPrediction(targetObj) - SkillR.GetDamage(targetObj) + 5 <= GetQ2Dmg(targetObj, SkillR.GetDamage(targetObj)) && ItemBool("Combo", "Q") && SkillQ.IsReady() && targetObj.HasBuff("BlindMonkSonicWave")))
         {
             SkillR.CastOnUnit(targetObj, PacketCast());
         }
     }
     if (ItemBool("Combo", "W") && SkillW.IsReady())
     {
         if (ItemBool("Combo", "WSurvive") || ItemBool("Combo", "WGap"))
         {
             if (SkillW.Instance.Name == "BlindMonkWOne")
             {
                 if (ItemBool("Combo", "WSurvive") && Orbwalk.InAutoAttackRange(targetObj) && Player.HealthPercentage() <= ItemList("Combo", "WUnder"))
                 {
                     SkillW.Cast(PacketCast());
                 }
                 else if (ItemBool("Combo", "WGap") && Player.Distance3D(targetObj) >= Orbwalk.GetAutoAttackRange() + 50)
                 {
                     var jumpObj = ObjectManager.Get <Obj_AI_Base>().Where(i => IsValid(i, SkillW.Range + i.BoundingRadius, false) && !(i is Obj_AI_Turret) && i.Distance3D(targetObj) <= Orbwalk.GetAutoAttackRange() + 50).OrderBy(i => i.Distance3D(targetObj));
                     if (jumpObj.Count() > 0 && !JumpCasted)
                     {
                         foreach (var Obj in jumpObj)
                         {
                             SkillW.CastOnUnit(Obj, PacketCast());
                         }
                     }
                     else if (ItemBool("Combo", "WGapWard") && Player.Distance3D(targetObj) <= SkillW.Range + Orbwalk.GetAutoAttackRange() + 50 && (GetWardSlot() != null || GetWardSlot().Stacks > 0 || WardCasted))
                     {
                         WardJump(targetObj.Position);
                     }
                 }
             }
             else if (SkillE.InRange(targetObj.Position) && !Player.HasBuff("BlindMonkSafeguard") && !WCasted)
             {
                 SkillW.Cast(PacketCast());
             }
         }
     }
     if (ItemBool("Combo", "Item"))
     {
         UseItem(targetObj);
     }
     if (ItemBool("Combo", "Ignite"))
     {
         CastIgnite(targetObj);
     }
 }