private void NormalCombo() { if (targetObj == null) { return; } if (Config.Item(Name + "rusage").GetValue <bool>() && Config.Item(Name + "ult" + targetObj.ChampionName).GetValue <bool>() && SkillR.IsReady() && SkillR.InRange(targetObj.Position)) { if (CanKill(targetObj, SkillR)) { SkillR.Cast(PacketCast); } else if (targetObj.Health - SkillR.GetDamage(targetObj) <= SkillE.GetDamage(targetObj) + Player.GetAutoAttackDamage(targetObj) + SkillQ.GetDamage(targetObj) * 3 && Config.Item(Name + "eusage").GetValue <bool>() && SkillE.IsReady() && Config.Item(Name + "qusage").GetValue <bool>() && SkillQ.IsReady()) { SkillR.Cast(PacketCast); } } if (Config.Item(Name + "eusage").GetValue <bool>() && SkillE.IsReady() && SkillE.InRange(targetObj.Position) && (!LXOrbwalker.InAutoAttackRange(targetObj) || CanKill(targetObj, SkillE))) { SkillE.CastOnUnit(targetObj, PacketCast); } if (Config.Item(Name + "wusage").GetValue <bool>() && SkillW.IsReady() && LXOrbwalker.InAutoAttackRange(targetObj)) { SkillW.Cast(PacketCast); } if (Config.Item(Name + "iusage").GetValue <bool>()) { UseItem(targetObj); } if (Config.Item(Name + "ignite").GetValue <bool>()) { CastIgnite(targetObj); } }
private void OnDraw(EventArgs args) { if (Player.IsDead) { return; } if (Config.Item(Name + "DrawQ").GetValue <bool>() && SkillQ.Level > 0) { Utility.DrawCircle(Player.Position, (SkillQ.Instance.Name == "BlindMonkQOne") ? SkillQ.Range : 1300, SkillQ.IsReady() ? Color.Green : Color.Red); } if (Config.Item(Name + "DrawW").GetValue <bool>() && SkillW.Level > 0) { Utility.DrawCircle(Player.Position, SkillW.Range, SkillW.IsReady() ? Color.Green : Color.Red); } if (Config.Item(Name + "DrawE").GetValue <bool>() && SkillE.Level > 0) { Utility.DrawCircle(Player.Position, (SkillE.Instance.Name == "BlindMonkEOne") ? SkillE.Range : 575, SkillE.IsReady() ? Color.Green : Color.Red); } if (Config.Item(Name + "DrawR").GetValue <bool>() && SkillR.Level > 0) { Utility.DrawCircle(Player.Position, SkillR.Range, SkillR.IsReady() ? Color.Green : Color.Red); } if (Config.Item(Name + "drawInsec").GetValue <bool>() && SkillR.IsReady()) { Byte validTargets = 0; if (targetObj != null) { Utility.DrawCircle(targetObj.Position, 70, Color.FromArgb(0, 204, 0)); validTargets += 1; } if (Config.Item(Name + "insecMode").GetValue <StringList>().SelectedIndex == 2 || (Config.Item(Name + "insecMode").GetValue <StringList>().SelectedIndex != 2 && allyObj != null)) { Utility.DrawCircle((Config.Item(Name + "insecMode").GetValue <StringList>().SelectedIndex != 2) ? allyObj.Position : Game.CursorPos, 70, Color.FromArgb(0, 204, 0)); if (Config.Item(Name + "insecMode").GetValue <StringList>().SelectedIndex != 2) { validTargets += 1; } } if ((Config.Item(Name + "insecMode").GetValue <StringList>().SelectedIndex == 2 && validTargets == 1) || (Config.Item(Name + "insecMode").GetValue <StringList>().SelectedIndex != 2 && validTargets == 2)) { var posDraw = targetObj.Position + Vector3.Normalize(((Config.Item(Name + "insecMode").GetValue <StringList>().SelectedIndex != 2) ? allyObj.Position : Game.CursorPos) - targetObj.Position) * 600; Drawing.DrawLine(Drawing.WorldToScreen(targetObj.Position), Drawing.WorldToScreen(posDraw), 2, Color.White); } } if (Config.Item(Name + "insecMode").GetValue <StringList>().SelectedIndex == 0 && SkillR.IsReady() && Config.Item(Name + "drawInsecTower").GetValue <bool>()) { Utility.DrawCircle(Player.Position, Config.Item(Name + "insecTowerR").GetValue <Slider>().Value, Color.White); } if (Config.Item(Name + "drawKillable").GetValue <bool>()) { foreach (var killableObj in ObjectManager.Get <Obj_AI_Hero>().Where(i => i.IsValidTarget())) { var dmgTotal = Player.GetAutoAttackDamage(killableObj); if (SkillQ.IsReady() && SkillQ.Instance.Name == "BlindMonkQOne") { dmgTotal += SkillQ.GetDamage(killableObj); } if (SkillR.IsReady() && Config.Item(Name + "ult" + killableObj.ChampionName).GetValue <bool>()) { dmgTotal += SkillR.GetDamage(killableObj); } if (SkillE.IsReady() && SkillQ.Instance.Name == "BlindMonkEOne") { dmgTotal += SkillE.GetDamage(killableObj); } if (SkillQ.IsReady() && (killableObj.HasBuff("BlindMonkQOne", true) || killableObj.HasBuff("blindmonkqonechaos", true))) { dmgTotal += GetQ2Dmg(killableObj, dmgTotal); } if (killableObj.Health < dmgTotal) { var posText = Drawing.WorldToScreen(killableObj.Position); Drawing.DrawText(posText.X - 30, posText.Y - 5, Color.White, "Killable"); } } } }
private void OnDraw(EventArgs args) { if (Player.IsDead) { return; } if (ItemBool("Draw", "Q") && SkillQ.Level > 0) { Utility.DrawCircle(Player.Position, (SkillQ.Instance.Name == "BlindMonkQOne") ? SkillQ.Range : 1300, SkillQ.IsReady() ? Color.Green : Color.Red); } if (ItemBool("Draw", "W") && SkillW.Level > 0) { Utility.DrawCircle(Player.Position, SkillW.Range, SkillW.IsReady() ? Color.Green : Color.Red); } if (ItemBool("Draw", "E") && SkillE.Level > 0) { Utility.DrawCircle(Player.Position, (SkillE.Instance.Name == "BlindMonkEOne") ? SkillE.Range : 575, SkillE.IsReady() ? Color.Green : Color.Red); } if (ItemBool("Draw", "R") && SkillR.Level > 0) { Utility.DrawCircle(Player.Position, SkillR.Range, SkillR.IsReady() ? Color.Green : Color.Red); } if (ItemBool("Insec", "DrawLine") && SkillR.IsReady()) { Byte validTargets = 0; if (targetObj != null) { Utility.DrawCircle(targetObj.Position, 70, Color.FromArgb(0, 204, 0)); validTargets += 1; } if (GetInsecPos(true) != default(Vector3)) { Utility.DrawCircle(GetInsecPos(true), 70, Color.FromArgb(0, 204, 0)); validTargets += 1; } if (validTargets == 2) { Drawing.DrawLine(Drawing.WorldToScreen(targetObj.Position), Drawing.WorldToScreen(targetObj.Position.To2D().Extend(GetInsecPos(true).To2D(), 600).To3D()), 1, Color.White); } } if (ItemList("Insec", "Mode") == 0 && SkillR.IsReady()) { if (ItemBool("InsecNear", "ToChamp") && ItemBool("InsecNear", "DrawToChamp")) { Utility.DrawCircle(Player.Position, ItemSlider("InsecNear", "ToChampR"), Color.White); } if (ItemBool("InsecNear", "ToMinion") && ItemBool("InsecNear", "DrawToMinion")) { Utility.DrawCircle(Player.Position, ItemSlider("InsecNear", "ToMinionR"), Color.White); } } if (ItemBool("Draw", "Killable")) { foreach (var Obj in ObjectManager.Get <Obj_AI_Hero>().Where(i => IsValid(i))) { var dmgTotal = Player.GetAutoAttackDamage(Obj); if (SkillQ.IsReady()) { if (SkillQ.Instance.Name == "BlindMonkQOne") { dmgTotal += SkillQ.GetDamage(Obj); } else if (Obj.HasBuff("BlindMonkQOne", true) || Obj.HasBuff("blindmonkqonechaos", true)) { dmgTotal += SkillQ.GetDamage(Obj, 1); } } if (SkillE.IsReady() && SkillE.Instance.Name == "BlindMonkEOne") { dmgTotal += SkillE.GetDamage(Obj); } if (SkillR.IsReady() && ItemBool("Ultimate", Obj.ChampionName)) { dmgTotal += SkillR.GetDamage(Obj); } if (Obj.Health + 35 <= dmgTotal) { var posText = Drawing.WorldToScreen(Obj.Position); Drawing.DrawText(posText.X - 30, posText.Y - 5, Color.White, "Killable"); } } } }
private void NormalCombo(string Mode) { if (targetObj == null) { return; } if (ItemBool(Mode, "R") && ItemBool("Ultimate", targetObj.ChampionName) && Mode == "Combo" && SkillR.IsReady() && SkillR.InRange(targetObj.Position)) { if (CanKill(targetObj, SkillR)) { SkillR.Cast(PacketCast()); } else if (SkillR.GetHealthPrediction(targetObj) - SkillR.GetDamage(targetObj) + 5 <= SkillE.GetDamage(targetObj) + Player.GetAutoAttackDamage(targetObj, true) + ((ItemBool(Mode, "Q") && SkillQ.IsReady()) ? SkillQ.GetDamage(targetObj) * 3 : 0) && ItemBool(Mode, "E") && SkillE.IsReady() && Player.Mana >= SkillR.Instance.ManaCost + SkillE.Instance.ManaCost + ((ItemBool(Mode, "Q") && SkillQ.IsReady()) ? SkillQ.Instance.ManaCost : 0)) { SkillR.Cast(PacketCast()); } } if (ItemBool(Mode, "E") && SkillE.IsReady() && SkillE.InRange(targetObj.Position) && (CanKill(targetObj, SkillE) || Player.Distance3D(targetObj) > Orbwalk.GetAutoAttackRange() + 50 || (Mode == "Combo" && Player.HealthPercentage() < targetObj.HealthPercentage()))) { SkillE.CastOnUnit(targetObj, PacketCast()); } if (ItemBool(Mode, "W") && SkillW.IsReady() && Orbwalk.InAutoAttackRange(targetObj)) { SkillW.Cast(PacketCast()); } if (ItemBool(Mode, "Item") && Mode == "Combo") { UseItem(targetObj); } if (ItemBool(Mode, "Ignite") && Mode == "Combo") { CastIgnite(targetObj); } }