private void NormalCombo() { if (targetObj == null) { return; } if (ItemBool("Combo", "Passive") && Player.HasBuff("blindmonkpassive_cosmetic", true) && 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("BlindMonkEOne", true) && IsValid(targetObj, 575) && (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("BlindMonkQOne", true) || targetObj.HasBuff("blindmonkqonechaos", true)) && IsValid(targetObj, 1300)) { if (Player.Distance3D(targetObj) > 500 || CanKill(targetObj, SkillQ, 1) || (targetObj.HasBuff("BlindMonkEOne", true) && 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) || (targetObj.Health - SkillR.GetDamage(targetObj) + 35 <= GetQ2Dmg(targetObj, SkillR.GetDamage(targetObj)) && SkillQ.IsReady() && IsValid(targetObj, 1300) && (targetObj.HasBuff("BlindMonkQOne", true) || targetObj.HasBuff("blindmonkqonechaos", true)))) { SkillR.CastOnUnit(targetObj, PacketCast()); } } if (ItemBool("Combo", "W") && SkillW.IsReady() && Orbwalk.InAutoAttackRange(targetObj) && Player.Health * 100 / Player.MaxHealth <= ItemList("Combo", "WUnder")) { if (SkillW.Instance.Name == "BlindMonkWOne") { SkillW.Cast(PacketCast()); } else if (!Player.HasBuff("blindmonkwoneshield", true) && !WCasted) { SkillW.Cast(PacketCast()); } } if (ItemBool("Combo", "Item")) { UseItem(targetObj); } if (ItemBool("Combo", "Ignite")) { CastIgnite(targetObj); } }
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); } }