private void Drawing_OnDraw(EventArgs args) { if (Config["utilitydraws"].GetValue <MenuBool>("disableDraws").Value) { return; } if (Config["utilitydraws"].GetValue <MenuBool>("showWards").Value) { var circleSize = 30; foreach (var obj in OKTWward.HiddenObjList.Where(obj => Render.OnScreen(Drawing.WorldToScreen(obj.pos)))) { if (obj.type == 1) { OktwCommon.DrawTriangleOKTW(circleSize, obj.pos, System.Drawing.Color.Yellow); Program.DrawFontTextMap(Tahoma13, "" + (int)(obj.endTime - Game.Time), obj.pos, SharpDX.Color.Yellow, true); } if (obj.type == 2) { OktwCommon.DrawTriangleOKTW(circleSize, obj.pos, System.Drawing.Color.HotPink); Program.DrawFontTextMap(Tahoma13, "VW", obj.pos, SharpDX.Color.HotPink, true); } if (obj.type == 3) { OktwCommon.DrawTriangleOKTW(circleSize, obj.pos, System.Drawing.Color.Orange); Program.DrawFontTextMap(Tahoma13, "! " + (int)(obj.endTime - Game.Time), obj.pos, SharpDX.Color.Orange, true); } } } var championInfo = Config["utilitydraws"]["enemyinfogrid"].GetValue <MenuBool>("championInfo").Value; var GankAlert = Config["utilitydraws"].GetValue <MenuBool>("GankAlert").Value; var ShowKDA = Config["utilitydraws"]["enemyinfogrid"].GetValue <MenuBool>("ShowKDA").Value; var ShowRecall = Config["utilitydraws"]["enemyinfogrid"].GetValue <MenuBool>("ShowRecall").Value; var ShowClicks = Config["utilitydraws"].GetValue <MenuBool>("ShowClicks").Value; var RF = Config["utilitydraws"].GetValue <MenuBool>("RF").Value; var posX = Config["utilitydraws"]["enemyinfogrid"].GetValue <MenuSlider>("posX").Value * 0.01f * Drawing.Width; var posY = Config["utilitydraws"]["enemyinfogrid"].GetValue <MenuSlider>("posY").Value * 0.01f * Drawing.Height; var positionDraw = 0f; var positionGang = 500f; var FillColor = System.Drawing.Color.GreenYellow; var Color = System.Drawing.Color.Azure; var offset = 0f; foreach (var enemy in GameObjects.EnemyHeroes) { offset += 0.15f; if (Config["utilitydraws"].GetValue <MenuBool>("SS").Value) { if (!enemy.IsVisible && !enemy.IsDead) { var ChampionInfoOne = OKTWtracker.ChampionInfoList.Find(x => x.NetworkId == enemy.NetworkId); if (ChampionInfoOne != null && enemy != Program.jungler) { if ((int)(Game.Time * 10) % 2 == 0 && Game.Time - ChampionInfoOne.LastVisibleTime > 3 && Game.Time - ChampionInfoOne.LastVisibleTime < 7) { Program.DrawFontTextScreen(TextBold, "SS " + enemy.CharacterName + " " + (int)(Game.Time - ChampionInfoOne.LastVisibleTime), Drawing.Width * offset, Drawing.Height * 0.02f, SharpDX.Color.Orange); } if (Game.Time - ChampionInfoOne.LastVisibleTime >= 7) { Program.DrawFontTextScreen(TextBold, "SS " + enemy.CharacterName + " " + (int)(Game.Time - ChampionInfoOne.LastVisibleTime), Drawing.Width * offset, Drawing.Height * 0.02f, SharpDX.Color.OrangeRed); } } } } if (enemy.IsValidTarget() && ShowClicks) { var lastWaypoint = enemy.GetWaypoints().Last().ToVector3(); if (lastWaypoint.IsValid()) { Program.drawLine(enemy.Position, lastWaypoint, 1, System.Drawing.Color.Red); if (enemy.GetWaypoints().Count() > 1) { Program.DrawFontTextMap(Tahoma13, enemy.CharacterName, lastWaypoint, SharpDX.Color.WhiteSmoke, true); } } } var kolor = System.Drawing.Color.GreenYellow; if (enemy.IsDead) { kolor = System.Drawing.Color.Gray; } else if (!enemy.IsVisible) { kolor = System.Drawing.Color.OrangeRed; } var kolorHP = System.Drawing.Color.GreenYellow; if (enemy.IsDead) { kolorHP = System.Drawing.Color.Gray; } else if (enemy.HealthPercent < 30) { kolorHP = System.Drawing.Color.Red; } else if (enemy.HealthPercent < 60) { kolorHP = System.Drawing.Color.Orange; } if (championInfo) { positionDraw += 15; Program.DrawFontTextScreen(Tahoma13, "" + enemy.Level, posX - 25, posY + positionDraw, SharpDX.Color.White); Program.DrawFontTextScreen(Tahoma13, enemy.CharacterName, posX, posY + positionDraw, SharpDX.Color.White); if (ShowRecall) { var ChampionInfoOne = OKTWtracker.ChampionInfoList.Find(x => x.NetworkId == enemy.NetworkId); if (Game.Time - ChampionInfoOne.FinishRecallTime < 4) { Program.DrawFontTextScreen(Tahoma13, "FINISH", posX - 90, posY + positionDraw, SharpDX.Color.GreenYellow); } else if (ChampionInfoOne.StartRecallTime <= ChampionInfoOne.AbortRecallTime && Game.Time - ChampionInfoOne.AbortRecallTime < 4) { Program.DrawFontTextScreen(Tahoma13, "ABORT", posX - 90, posY + positionDraw, SharpDX.Color.Yellow); } else if (Game.Time - ChampionInfoOne.StartRecallTime < 8) { var recallPercent = (int)((Game.Time - ChampionInfoOne.StartRecallTime) / 8 * 100); var recallX1 = posX - 90; var recallY1 = posY + positionDraw + 6; var recallX2 = (recallX1 + recallPercent / 2) + 1; var recallY2 = posY + positionDraw + 6; Drawing.DrawLine(recallX1, recallY1, recallX1 + 50, recallY2, 8, System.Drawing.Color.Red); Drawing.DrawLine(recallX1, recallY1, recallX2, recallY2, 8, System.Drawing.Color.White); } } var fSlot = enemy.Spellbook.Spells[4]; if (fSlot.Name != "SummonerFlash") { fSlot = enemy.Spellbook.Spells[5]; } if (fSlot.Name == "SummonerFlash") { var fT = fSlot.CooldownExpires - Game.Time; if (ShowKDA) { if (fT < 0) { Program.DrawFontTextScreen(Tahoma13, "F rdy", posX + 130, posY + positionDraw, SharpDX.Color.GreenYellow); } else { Program.DrawFontTextScreen(Tahoma13, "F " + (int)fT, posX + 130, posY + positionDraw, SharpDX.Color.Yellow); } } if (RF) { if (fT < 2 && fT > -3) { Program.DrawFontTextScreen(TextBold, enemy.CharacterName + " FLASH READY!", Drawing.Width * offset, Drawing.Height * 0.1f, SharpDX.Color.Yellow); } else if (fSlot.Cooldown - fT < 5) { Program.DrawFontTextScreen(TextBold, enemy.CharacterName + " FLASH LOST!", Drawing.Width, Drawing.Height * 0.1f, SharpDX.Color.Red); } } } if (enemy.Level > 5) { var rSlot = enemy.Spellbook.Spells[3]; var t = rSlot.CooldownExpires - Game.Time; if (ShowKDA) { if (t < 0) { Program.DrawFontTextScreen(Tahoma13, "R rdy", posX + 165, posY + positionDraw, SharpDX.Color.GreenYellow); } else { Program.DrawFontTextScreen(Tahoma13, "R " + (int)t, posX + 165, posY + positionDraw, SharpDX.Color.Yellow); } } if (RF) { if (t < 2 && t > -3) { Program.DrawFontTextScreen(TextBold, enemy.CharacterName + " R READY!", Drawing.Width * offset, Drawing.Height * 0.2f, SharpDX.Color.YellowGreen); } else if (rSlot.Cooldown - t < 5) { Program.DrawFontTextScreen(TextBold, enemy.CharacterName + " R LOST!", Drawing.Width * offset, Drawing.Height * 0.1f, SharpDX.Color.Red); } } } else if (ShowKDA) { Program.DrawFontTextScreen(Tahoma13, "R ", posX + 165, posY + positionDraw, SharpDX.Color.Yellow); } } var Distance = Player.Distance(enemy.Position); if (GankAlert && !enemy.IsDead && Distance > 1200) { var wts = Drawing.WorldToScreen(Player.Position.Extend(enemy.Position, positionGang)); wts[0] = wts[0]; wts[1] = wts[1] + 15; if (enemy.HealthPercent > 0) { Drawing.DrawLine(wts[0], wts[1], wts[0] + enemy.HealthPercent / 2 + 1, wts[1], 8, kolorHP); } if (enemy.HealthPercent < 100) { Drawing.DrawLine(wts[0] + enemy.HealthPercent / 2, wts[1], wts[0] + 50, wts[1], 8, System.Drawing.Color.White); } if (enemy.IsVisible) { if (Program.jungler.NetworkId == enemy.NetworkId) { Program.DrawFontTextMap(Tahoma13B, enemy.CharacterName, Player.Position.Extend(enemy.Position, positionGang), SharpDX.Color.OrangeRed); } else { Program.DrawFontTextMap(Tahoma13, enemy.CharacterName, Player.Position.Extend(enemy.Position, positionGang), SharpDX.Color.White); } } else { var ChampionInfoOne = OKTWtracker.ChampionInfoList.Find(x => x.NetworkId == enemy.NetworkId); if (ChampionInfoOne != null) { if (Game.Time - ChampionInfoOne.LastVisibleTime > 3 && Game.Time - ChampionInfoOne.LastVisibleTime < 7) { Program.DrawFontTextMap(Tahoma13, "SS " + enemy.CharacterName + " " + (int)(Game.Time - ChampionInfoOne.LastVisibleTime), Player.Position.Extend(enemy.Position, positionGang), SharpDX.Color.Yellow); } else { Program.DrawFontTextMap(Tahoma13, "SS " + enemy.CharacterName + " " + (int)(Game.Time - ChampionInfoOne.LastVisibleTime), Player.Position.Extend(enemy.Position, positionGang), SharpDX.Color.YellowGreen); } } else { Program.DrawFontTextMap(Tahoma13, "SS " + enemy.CharacterName, Player.Position.Extend(enemy.Position, positionGang), SharpDX.Color.LightYellow); } } if (Distance < 3500 && enemy.IsVisible && !Render.OnScreen(Drawing.WorldToScreen(enemy.Position)) && Program.jungler != null) { if (Program.jungler.NetworkId == enemy.NetworkId) { Program.drawLine(Player.Position.Extend(enemy.Position, 100), Player.Position.Extend(enemy.Position, positionGang - 100), (int)((3500 - Distance) / 280), System.Drawing.Color.Crimson); } else { if (enemy.IsFacing(Player)) { Program.drawLine(Player.Position.Extend(enemy.Position, 100), Player.Position.Extend(enemy.Position, positionGang - 100), (int)((3500 - Distance) / 280), System.Drawing.Color.Orange); } else { Program.drawLine(Player.Position.Extend(enemy.Position, 100), Player.Position.Extend(enemy.Position, positionGang - 100), (int)((3500 - Distance) / 280), System.Drawing.Color.Gold); } } } else if (Distance < 3500 && !enemy.IsVisible && !Render.OnScreen(Drawing.WorldToScreen(Player.Position.Extend(enemy.Position, Distance + 500)))) { var need = OKTWtracker.ChampionInfoList.Find(x => x.NetworkId == enemy.NetworkId); if (need != null && Game.Time - need.LastVisibleTime < 5) { Program.drawLine(Player.Position.Extend(enemy.Position, 100), Player.Position.Extend(enemy.Position, positionGang - 100), (int)((3500 - Distance) / 300), System.Drawing.Color.Gray); } } } positionGang = positionGang + 100; } if (Program.AIOmode == 2) { Program.DrawFontTextScreen(TextBold, "OKTW AIO only utility mode ON", Drawing.Width * 0.5f, Drawing.Height * 0.7f, SharpDX.Color.Cyan, true); } }
private void OnDraw(EventArgs args) { if (getCheckBoxItem("disableDraws")) { return; } if (getCheckBoxItem("showWards")) { var circleSize = 30; foreach (var obj in OKTWward.HiddenObjList.Where(obj => Render.OnScreen(Drawing.WorldToScreen(obj.pos))) ) { if (obj.type == 1) { OktwCommon.DrawTriangleOKTW(circleSize, obj.pos, System.Drawing.Color.Yellow); DrawFontTextMap(Tahoma13, "" + (int)(obj.endTime - Game.Time), obj.pos, SharpDX.Color.Yellow); } if (obj.type == 2) { OktwCommon.DrawTriangleOKTW(circleSize, obj.pos, System.Drawing.Color.HotPink); DrawFontTextMap(Tahoma13, "VW", obj.pos, SharpDX.Color.HotPink); } if (obj.type == 3) { OktwCommon.DrawTriangleOKTW(circleSize, obj.pos, System.Drawing.Color.Orange); DrawFontTextMap(Tahoma13, "! " + (int)(obj.endTime - Game.Time), obj.pos, SharpDX.Color.Orange); } } } var blink = true; if ((int)(Game.Time * 10) % 2 == 0) { blink = false; } var HpBar = getCheckBoxItem("HpBar"); var championInfo = getCheckBoxItem("championInfo"); var GankAlert = getCheckBoxItem("GankAlert"); var ShowKDA = getCheckBoxItem("ShowKDA"); var ShowClicks = getCheckBoxItem("ShowClicks"); var posY = getSliderItem("posY") * 0.01f * Drawing.Height; var posX = getSliderItem("posX") * 0.01f * Drawing.Width; float positionDraw = 0; float positionGang = 500; var Width = 103; var Height = 8; var XOffset = 10; var YOffset = 20; var FillColor = System.Drawing.Color.GreenYellow; var Color = System.Drawing.Color.Azure; float offset = 0; foreach (var enemy in Program.Enemies) { if (getCheckBoxItem("SS")) { offset += 0.15f; if (!enemy.IsVisible && !enemy.IsDead) { var ChampionInfoOne = OKTWtracker.ChampionInfoList.Find(x => x.NetworkId == enemy.NetworkId); if (ChampionInfoOne != null && enemy != Program.jungler) { if ((int)(Game.Time * 10) % 2 == 0 && Game.Time - ChampionInfoOne.LastVisableTime > 3 && Game.Time - ChampionInfoOne.LastVisableTime < 7) { DrawFontTextScreen(TextBold, "SS " + enemy.ChampionName + " " + (int)(Game.Time - ChampionInfoOne.LastVisableTime), Drawing.Width * offset, Drawing.Height * 0.02f, SharpDX.Color.OrangeRed); } if (Game.Time - ChampionInfoOne.LastVisableTime >= 7) { DrawFontTextScreen(TextBold, "SS " + enemy.ChampionName + " " + (int)(Game.Time - ChampionInfoOne.LastVisableTime), Drawing.Width * offset, Drawing.Height * 0.02f, SharpDX.Color.OrangeRed); } } } } if (enemy.IsValidTarget() && ShowClicks) { var lastWaypoint = enemy.GetWaypoints().Last().To3D(); if (lastWaypoint.IsValid()) { drawLine(enemy.Position, lastWaypoint, 1, Color.Red); if (enemy.GetWaypoints().Count() > 1) { DrawFontTextMap(Tahoma13, enemy.ChampionName, lastWaypoint, SharpDX.Color.WhiteSmoke); } } } if (HpBar && enemy.IsHPBarRendered && Render.OnScreen(Drawing.WorldToScreen(enemy.Position))) { var barPos = enemy.HPBarPosition; float QdmgDraw = 0, WdmgDraw = 0, EdmgDraw = 0, RdmgDraw = 0, damage = 0; ; if (Q.IsReady()) { damage = damage + Q.GetDamage(enemy); } if (W.IsReady() && Player.ChampionName != "Kalista") { damage = damage + W.GetDamage(enemy); } if (E.IsReady()) { damage = damage + E.GetDamage(enemy); } if (R.IsReady()) { damage = damage + R.GetDamage(enemy); } if (Q.IsReady()) { QdmgDraw = Q.GetDamage(enemy) / damage; } if (W.IsReady() && Player.ChampionName != "Kalista") { WdmgDraw = W.GetDamage(enemy) / damage; } if (E.IsReady()) { EdmgDraw = E.GetDamage(enemy) / damage; } if (R.IsReady()) { RdmgDraw = R.GetDamage(enemy) / damage; } var percentHealthAfterDamage = Math.Max(0, enemy.Health - damage) / enemy.MaxHealth; var yPos = barPos.Y + YOffset; var xPosDamage = barPos.X + XOffset + Width * percentHealthAfterDamage; var xPosCurrentHp = barPos.X + XOffset + Width * enemy.Health / enemy.MaxHealth; var differenceInHP = xPosCurrentHp - xPosDamage; var pos1 = barPos.X + XOffset + 107 * percentHealthAfterDamage; for (var i = 0; i < differenceInHP; i++) { if (Q.IsReady() && i < QdmgDraw * differenceInHP) { Drawing.DrawLine(pos1 + i, yPos, pos1 + i, yPos + Height, 1, Color.Cyan); } else if (W.IsReady() && i < (QdmgDraw + WdmgDraw) * differenceInHP) { Drawing.DrawLine(pos1 + i, yPos, pos1 + i, yPos + Height, 1, Color.Orange); } else if (E.IsReady() && i < (QdmgDraw + WdmgDraw + EdmgDraw) * differenceInHP) { Drawing.DrawLine(pos1 + i, yPos, pos1 + i, yPos + Height, 1, Color.Yellow); } else if (R.IsReady() && i < (QdmgDraw + WdmgDraw + EdmgDraw + RdmgDraw) * differenceInHP) { Drawing.DrawLine(pos1 + i, yPos, pos1 + i, yPos + Height, 1, Color.YellowGreen); } } } var kolor = Color.GreenYellow; if (enemy.IsDead) { kolor = Color.Gray; } else if (!enemy.IsVisible) { kolor = Color.OrangeRed; } var kolorHP = Color.GreenYellow; if (enemy.IsDead) { kolorHP = Color.GreenYellow; } else if ((int)enemy.HealthPercent < 30) { kolorHP = Color.Red; } else if ((int)enemy.HealthPercent < 60) { kolorHP = Color.Orange; } if (championInfo) { positionDraw += 15; DrawFontTextScreen(Tahoma13, "" + enemy.Level, posX - 25, posY + positionDraw, SharpDX.Color.White); DrawFontTextScreen(Tahoma13, enemy.ChampionName, posX, posY + positionDraw, SharpDX.Color.White); if (true) { var ChampionInfoOne = OKTWtracker.ChampionInfoList.Find(x => x.NetworkId == enemy.NetworkId); if (Game.Time - ChampionInfoOne.FinishRecallTime < 4) { DrawFontTextScreen(Tahoma13, "FINISH", posX - 90, posY + positionDraw, SharpDX.Color.GreenYellow); } else if (ChampionInfoOne.StartRecallTime <= ChampionInfoOne.AbortRecallTime && Game.Time - ChampionInfoOne.AbortRecallTime < 4) { DrawFontTextScreen(Tahoma13, "ABORT", posX - 90, posY + positionDraw, SharpDX.Color.Yellow); } else if (Game.Time - ChampionInfoOne.StartRecallTime < 8) { var recallPercent = (int)((Game.Time - ChampionInfoOne.StartRecallTime) / 8 * 100); var recallX1 = posX - 90; var recallY1 = posY + positionDraw + 3; var recallX2 = recallX1 + recallPercent / 2 + 1; var recallY2 = posY + positionDraw + 3; Drawing.DrawLine(recallX1, recallY1, recallX1 + 50, recallY2, 8, Color.Red); Drawing.DrawLine(recallX1, recallY1, recallX2, recallY2, 8, Color.White); } } if (ShowKDA) { var fSlot = enemy.Spellbook.Spells[4]; if (fSlot.Name != "SummonerFlash") { fSlot = enemy.Spellbook.Spells[5]; } if (fSlot.Name == "SummonerFlash") { var fT = fSlot.CooldownExpires - Game.Time; if (fT < 0) { DrawFontTextScreen(Tahoma13, "F rdy", posX + 110, posY + positionDraw, SharpDX.Color.GreenYellow); } else { DrawFontTextScreen(Tahoma13, "F " + (int)fT, posX + 110, posY + positionDraw, SharpDX.Color.Yellow); } } if (enemy.Level > 5) { var rSlot = enemy.Spellbook.Spells[3]; var t = rSlot.CooldownExpires - Game.Time; if (t < 0) { DrawFontTextScreen(Tahoma13, "R rdy", posX + 145, posY + positionDraw, SharpDX.Color.GreenYellow); } else { DrawFontTextScreen(Tahoma13, "R " + (int)t, posX + 145, posY + positionDraw, SharpDX.Color.Yellow); } } else { DrawFontTextScreen(Tahoma13, "R ", posX + 145, posY + positionDraw, SharpDX.Color.Yellow); } } //Drawing.DrawText(posX - 70, posY + positionDraw, kolor, enemy.Level + " lvl"); } var Distance = Player.Distance(enemy.Position); if (GankAlert && !enemy.IsDead && Distance > 1200) { var wts = Drawing.WorldToScreen(ObjectManager.Player.Position.Extend(enemy.Position, positionGang).To3D()); wts[0] = wts[0]; wts[1] = wts[1] + 15; if ((int)enemy.HealthPercent > 0) { Drawing.DrawLine(wts[0], wts[1], wts[0] + (int)enemy.HealthPercent / 2 + 1, wts[1], 8, kolorHP); } if ((int)enemy.HealthPercent < 100) { Drawing.DrawLine(wts[0] + (int)enemy.HealthPercent / 2, wts[1], wts[0] + 50, wts[1], 8, Color.White); } if (Distance > 3500 && enemy.IsVisible) { DrawFontTextMap(Tahoma13, enemy.ChampionName, Player.Position.Extend(enemy.Position, positionGang).To3D(), SharpDX.Color.White); } else if (!enemy.IsVisible) { var ChampionInfoOne = OKTWtracker.ChampionInfoList.Find(x => x.NetworkId == enemy.NetworkId); if (ChampionInfoOne != null) { if (Game.Time - ChampionInfoOne.LastVisableTime > 3 && Game.Time - ChampionInfoOne.LastVisableTime < 7) { if (blink) { DrawFontTextMap(Tahoma13, "SS " + enemy.ChampionName + " " + (int)(Game.Time - ChampionInfoOne.LastVisableTime), Player.Position.Extend(enemy.Position, positionGang).To3D(), SharpDX.Color.Yellow); } } else { DrawFontTextMap(Tahoma13, "SS " + enemy.ChampionName + " " + (int)(Game.Time - ChampionInfoOne.LastVisableTime), Player.Position.Extend(enemy.Position, positionGang).To3D(), SharpDX.Color.Yellow); } } else { DrawFontTextMap(Tahoma13, "SS " + enemy.ChampionName, Player.Position.Extend(enemy.Position, positionGang).To3D(), SharpDX.Color.Yellow); } } else if (blink) { DrawFontTextMap(Tahoma13B, enemy.ChampionName, Player.Position.Extend(enemy.Position, positionGang).To3D(), SharpDX.Color.OrangeRed); } if (Distance < 3500 && enemy.IsVisible && !Render.OnScreen( Drawing.WorldToScreen(Player.Position.Extend(enemy.Position, Distance + 500).To3D()))) { drawLine(Player.Position.Extend(enemy.Position, 100).To3D(), Player.Position.Extend(enemy.Position, positionGang - 100).To3D(), (int)((3500 - Distance) / 300), Color.OrangeRed); } else if (Distance < 3500 && !enemy.IsVisible && !Render.OnScreen( Drawing.WorldToScreen(Player.Position.Extend(enemy.Position, Distance + 500).To3D()))) { var need = OKTWtracker.ChampionInfoList.Find(x => x.NetworkId == enemy.NetworkId); if (need != null && Game.Time - need.LastVisableTime < 5) { drawLine(Player.Position.Extend(enemy.Position, 100).To3D(), Player.Position.Extend(enemy.Position, positionGang - 100).To3D(), (int)((3500 - Distance) / 300), Color.Gray); } } } positionGang = positionGang + 100; } if (Program.AIOmode == 2) { Drawing.DrawText(Drawing.Width * 0.2f, Drawing.Height * 1f, Color.Cyan, "OKTW AIO only utility mode ON"); } }
private void Drawing_OnEndScene(EventArgs args) { if (Config.Item("disableDraws").GetValue<bool>()) return; bool blink = true; if ((int)(Game.Time * 10) % 2 == 0) blink = false; var minimap = Config.Item("minimap").GetValue<bool>(); var HpBar = Config.Item("HpBar").GetValue<bool>(); var championInfo = Config.Item("championInfo").GetValue<bool>(); var ScreenRadar = Config.Item("ScreenRadar").GetValue<bool>(); var ScreenRadarEnemy = Config.Item("ScreenRadarEnemy").GetValue<bool>(); var ScreenRadarJungler = Config.Item("ScreenRadarJungler").GetValue<bool>(); var SpellTrackerEnemy = Config.Item("SpellTrackerEnemy").GetValue<bool>(); var SpellTrackerAlly = Config.Item("SpellTrackerAlly").GetValue<bool>(); var SpellTrackerMe = Config.Item("SpellTrackerMe").GetValue<bool>(); var SpellTrackerLvl = Config.Item("SpellTrackerLvl").GetValue<bool>(); var ShowClicks = Config.Item("ShowClicks").GetValue<bool>(); var championInfoHD = Config.Item("championInfoHD").GetValue<bool>(); float posY = (Config.Item("posY").GetValue<Slider>().Value * 0.001f) * Drawing.Height; float posX = (Config.Item("posX").GetValue<Slider>().Value * 0.001f) * Drawing.Width; int Width = 103; int Height = 8; int XOffset = 10; int YOffset = 20; var FillColor = System.Drawing.Color.GreenYellow; var Color = System.Drawing.Color.Azure; var hudSpace = 0; var area = 5000; var notPos = new Vector2(Drawing.Width / 2 - 150, Drawing.Height / 6); var centerScreenWorld = Drawing.ScreenToWorld(centerScreen); if (Config.Item("Notification").GetValue<bool>()) { var noti = NotificationsList.FirstOrDefault(); if (noti != null) { if (noti.TimeRec == 0) { noti.TimeRec = Utils.TickCount; } else if (Utils.TickCount - noti.TimeRec > 3000) { NotificationsList.Remove(noti); } else { float time = Utils.TickCount - noti.TimeRec; float calcOpacity = 1; if (time < 500) calcOpacity = time / 500; else if (time > 2500) calcOpacity = (3000 - time) / 500; var opacity = new ColorBGRA(256, 256, 256, 0.9f * calcOpacity); Not.Position = notPos; if (noti.Lost) Not.Color = new ColorBGRA(0, 0.5f, 1f, 0.6f * calcOpacity); else Not.Color = new ColorBGRA(0.5f, 0, 0, 0.6f * calcOpacity); Not.OnEndScene(); if (noti.Lost) { Lost.Position = notPos + new Vector2(81, 8); Lost.Color = opacity; Lost.OnEndScene(); } else { Isready.Position = notPos + new Vector2(81, 8); Isready.Color = opacity; Isready.OnEndScene(); } noti.SpellIco.Position = notPos + new Vector2(8, 8); noti.SpellIco.Color = opacity; noti.SpellIco.OnEndScene(); noti.Hero.Position = notPos + new Vector2(152, 8); noti.Hero.Color = opacity; noti.Hero.Scale = new Vector2(0.547f, 0.547f); noti.Hero.OnEndScene(); } } } if (Config.Item("showWards").GetValue<bool>()) { #region showWards var circleSize = 30; foreach (var obj in OKTWward.HiddenObjList.Where(obj => Render.OnScreen(Drawing.WorldToScreen(obj.pos)))) { if (obj.pos.IsOnScreen()) { var pos = Drawing.WorldToScreen(obj.pos) + new Vector2(-50, -50); ; if (obj.type == 1) { Drawing.DrawText(pos.X - 15, pos.Y - 13, System.Drawing.Color.YellowGreen, MakeNiceNumber(obj.endTime - Game.Time)); Ward.Position = pos + new Vector2(10, 10); Ward.OnEndScene(); DrawFontTextMap(Tahoma13, ((int)(obj.endTime - Game.Time)).ToString(), obj.pos + new Vector3(-18, 18, 0), SharpDX.Color.White); } else if (obj.type == 2) { Pink.Position = pos + new Vector2(10, 10); Pink.OnEndScene(); } else if (obj.type == 3) { OktwCommon.DrawTriangleOKTW(circleSize, obj.pos, System.Drawing.Color.Orange); DrawFontTextMap(Tahoma13, "! " + (int)(obj.endTime - Game.Time), obj.pos, SharpDX.Color.Orange); } } { var pos = Drawing.WorldToMinimap(obj.pos); if (obj.type == 1) { WardMM.Position = pos; WardMM.OnEndScene(); } else if (obj.type == 2) { PinkMM.Position = pos; PinkMM.OnEndScene(); } else if (obj.type == 3) { } } } #endregion } foreach (var hero in OKTWtracker.ChampionInfoList.Where(x => !x.Hero.IsDead)) { var barPos = hero.Hero.HPBarPosition; var q = hero.Hero.Spellbook.GetSpell(SpellSlot.Q); var w = hero.Hero.Spellbook.GetSpell(SpellSlot.W); var e = hero.Hero.Spellbook.GetSpell(SpellSlot.E); var r = hero.Hero.Spellbook.GetSpell(SpellSlot.R); if (hero.Hero.IsVisible && ((SpellTrackerAlly && (hero.Hero.IsAlly && !hero.Hero.IsMe)) || (SpellTrackerEnemy && hero.Hero.IsEnemy) || (SpellTrackerMe && hero.Hero.IsMe))) { if (hero.Hero.IsAlly) barPos = barPos + new Vector2(0, -4); if (hero.Hero.IsMe) barPos = barPos + new Vector2(25, -7); Drawing.DrawLine(barPos + new Vector2(7, 34), barPos + new Vector2(115, 34), 9, System.Drawing.Color.DimGray); Drawing.DrawLine(barPos + new Vector2(8, 35), barPos + new Vector2(113, 35), 7, System.Drawing.Color.Black); var qCal = Math.Max(Math.Min((q.CooldownExpires - Game.Time) / q.Cooldown, 1), 0); var wCal = Math.Max(Math.Min((w.CooldownExpires - Game.Time) / w.Cooldown, 1), 0); var eCal = Math.Max(Math.Min((e.CooldownExpires - Game.Time) / e.Cooldown, 1), 0); var rCal = Math.Max(Math.Min((r.CooldownExpires - Game.Time) / r.Cooldown, 1), 0); if (q.Level > 0) { Drawing.DrawLine(barPos + new Vector2(9, 36), barPos + new Vector2(33 - (24 * qCal), 36), 5, qCal > 0 ? System.Drawing.Color.Orange : System.Drawing.Color.YellowGreen); if (SpellTrackerLvl) for (int i = 0 ; i < Math.Min(q.Level, 5) ; i++) Drawing.DrawLine(barPos + new Vector2(10 + i * 5, 37), barPos + new Vector2(11 + i * 5, 37), 3, System.Drawing.Color.Black); } if (w.Level > 0) { Drawing.DrawLine(barPos + new Vector2(35, 36), barPos + new Vector2(59 - (24 * wCal), 36), 5, wCal > 0 ? System.Drawing.Color.Orange : System.Drawing.Color.YellowGreen); if (SpellTrackerLvl) for (int i = 0 ; i < Math.Min(w.Level, 5) ; i++) Drawing.DrawLine(barPos + new Vector2(36 + i * 5, 37), barPos + new Vector2(37 + i * 5, 37), 3, System.Drawing.Color.Black); } if (e.Level > 0) { Drawing.DrawLine(barPos + new Vector2(61, 36), barPos + new Vector2(85 - (24 * eCal), 36), 5, eCal > 0 ? System.Drawing.Color.Orange : System.Drawing.Color.YellowGreen); if (SpellTrackerLvl) for (int i = 0 ; i < Math.Min(e.Level, 5) ; i++) Drawing.DrawLine(barPos + new Vector2(62 + i * 5, 37), barPos + new Vector2(63 + i * 5, 37), 3, System.Drawing.Color.Black); } if (r.Level > 0) { Drawing.DrawLine(barPos + new Vector2(87, 36), barPos + new Vector2(112 - (24 * rCal), 36), 5, rCal > 0 ? System.Drawing.Color.Orange : System.Drawing.Color.YellowGreen); if (SpellTrackerLvl) for (int i = 0 ; i < Math.Min(r.Level, 5) ; i++) Drawing.DrawLine(barPos + new Vector2(88 + i * 5, 37), barPos + new Vector2(89 + i * 5, 37), 3, System.Drawing.Color.Black); } } if (hero.Hero.IsMe) continue; if (hero.Hero.IsEnemy) { if (ShowClicks && hero.Hero.IsValidTarget() && hero.LastWayPoint.IsValid() && hero.Hero.Position.Distance(hero.LastWayPoint) > 100) { drawLine(hero.Hero.Position, hero.LastWayPoint, 1, System.Drawing.Color.Red); DrawFontTextMap(Tahoma13, hero.Hero.ChampionName, hero.LastWayPoint, SharpDX.Color.WhiteSmoke); } #region Damage indicators if (HpBar && hero.Hero.IsHPBarRendered && hero.Hero.Position.IsOnScreen()) { if (HpBar) { float QdmgDraw = 0, WdmgDraw = 0, EdmgDraw = 0, RdmgDraw = 0, damage = 0; bool qRdy = Player.Spellbook.GetSpell(SpellSlot.Q).IsReady(); bool wRdy = Player.Spellbook.GetSpell(SpellSlot.W).IsReady(); bool eRdy = Player.Spellbook.GetSpell(SpellSlot.E).IsReady(); bool rRdy = Player.Spellbook.GetSpell(SpellSlot.R).IsReady(); float qDmg = 0; float wDmg = 0; float eDmg = 0; float rDmg = 0; if (qRdy) qDmg = (float)Player.GetSpellDamage(hero.Hero, SpellSlot.Q); if (wRdy) wDmg = (float)Player.GetSpellDamage(hero.Hero, SpellSlot.W); if (eRdy) eDmg = (float)Player.GetSpellDamage(hero.Hero, SpellSlot.E); if (rRdy) rDmg = (float)Player.GetSpellDamage(hero.Hero, SpellSlot.R); damage = qDmg + wDmg + eDmg + rDmg; if (qRdy) QdmgDraw = (qDmg / damage); if (wRdy && Player.ChampionName != "Kalista") WdmgDraw = (wDmg / damage); if (eRdy) EdmgDraw = (eDmg / damage); if (rRdy) RdmgDraw = (rDmg / damage); var percentHealthAfterDamage = Math.Max(0, hero.Hero.Health - damage) / hero.Hero.MaxHealth; var yPos = barPos.Y + YOffset; var xPosDamage = barPos.X + XOffset + Width * percentHealthAfterDamage; var xPosCurrentHp = barPos.X + XOffset + Width * hero.Hero.Health / hero.Hero.MaxHealth; float differenceInHP = xPosCurrentHp - xPosDamage; var pos1 = barPos.X + XOffset + (107 * percentHealthAfterDamage); for (int i = 0; i < differenceInHP; i++) { if (qRdy && i < QdmgDraw * differenceInHP) Drawing.DrawLine(pos1 + i, yPos, pos1 + i, yPos + Height, 1, System.Drawing.Color.Cyan); else if (wRdy && i < (QdmgDraw + WdmgDraw) * differenceInHP) Drawing.DrawLine(pos1 + i, yPos, pos1 + i, yPos + Height, 1, System.Drawing.Color.Orange); else if (eRdy && i < (QdmgDraw + WdmgDraw + EdmgDraw) * differenceInHP) Drawing.DrawLine(pos1 + i, yPos, pos1 + i, yPos + Height, 1, System.Drawing.Color.Yellow); else if (rRdy && i < (QdmgDraw + WdmgDraw + EdmgDraw + RdmgDraw) * differenceInHP) Drawing.DrawLine(pos1 + i, yPos, pos1 + i, yPos + Height, 1, System.Drawing.Color.YellowGreen); } } } #endregion if (minimap) { if (!hero.Hero.IsVisible) { var minimapSprite = hero.MinimapSprite; var lastWP = hero.LastWayPoint; var heroPos = hero.PredictedPos; if (!hero.LastWayPoint.IsZero) { if (heroPos.Distance(lastWP) < 1200) lastWP = heroPos.Extend(lastWP, 1200); Drawing.DrawLine(Drawing.WorldToMinimap(heroPos), Drawing.WorldToMinimap(lastWP), 2, System.Drawing.Color.OrangeRed); } minimapSprite.Position = Drawing.WorldToMinimap(heroPos) - new Vector2(10, 10); minimapSprite.OnEndScene(); } } if (championInfo && championInfoHD) { var hudSprite = hero.HudSprite; if (!hero.Hero.IsVisible) hudSprite.Color = new ColorBGRA(System.Drawing.Color.DimGray.ToArgb()); else hudSprite.Color = new ColorBGRA(System.Drawing.Color.White.ToArgb()); Vector2 hudPos = new Vector2(posX + hudSpace, posY); float scale = 0.5f; hudSprite.Scale = new Vector2(scale, scale); hudSprite.Position = hudPos - new Vector2(12, 10); hudSprite.OnEndScene(); var vec1manaB = new Vector2(hudPos.X - 9, hudPos.Y + 48); var vec2manaB = new Vector2(hudPos.X - 8 + 50 + 3, hudPos.Y + 48); Drawing.DrawLine(vec1manaB, vec2manaB, 18, System.Drawing.Color.DarkGoldenrod); var vec1hpB = new Vector2(hudPos.X - 8, hudPos.Y + 49); var vec2hpB = new Vector2(hudPos.X - 8 + 50 + 2, hudPos.Y + 49); Drawing.DrawLine(vec1hpB, vec2hpB, 16, System.Drawing.Color.Black); System.Drawing.Color color = System.Drawing.Color.LimeGreen; if (hero.Hero.HealthPercent < 30) color = System.Drawing.Color.OrangeRed; else if (hero.Hero.HealthPercent < 50) color = System.Drawing.Color.DarkOrange; var vec1hp = new Vector2(hudPos.X - 7, hudPos.Y + 50); var vec2hp = new Vector2(hudPos.X - 7 + hero.Hero.HealthPercent / 2, hudPos.Y + 50); Drawing.DrawLine(vec1hp, vec2hp, 7, color); var vec1mana = new Vector2(hudPos.X - 7, hudPos.Y + 59); var vec2mana = new Vector2(hudPos.X - 7 + hero.Hero.ManaPercent / 2, hudPos.Y + 59); Drawing.DrawLine(vec1mana, vec2mana, 5, System.Drawing.Color.DodgerBlue); var vecHudLevel = new Vector2(hudPos.X + 30, hudPos.Y + 33); DrawFontTextScreen(HudLevel, hero.Hero.Level.ToString(), vecHudLevel.X, vecHudLevel.Y, SharpDX.Color.White); { if (Game.Time - hero.FinishRecallTime < 4) { DrawFontTextScreen(RecFont, " FINISH", hudPos.X - 10, hudPos.Y + 18, SharpDX.Color.YellowGreen); } else if (hero.StartRecallTime <= hero.AbortRecallTime && Game.Time - hero.AbortRecallTime < 4) { DrawFontTextScreen(RecFont, " ABORT", hudPos.X - 10, hudPos.Y + 18, SharpDX.Color.Yellow); } else if (Game.Time - hero.StartRecallTime < 8) { var recallPercent = (Game.Time - hero.StartRecallTime) / 8; var vec1rec = new Vector2(hudPos.X - 9, hudPos.Y + 35); var vec2rec = new Vector2(hudPos.X - 8 + 50 + 3, hudPos.Y + 35); Drawing.DrawLine(vec1rec, vec2rec, 14, System.Drawing.Color.DarkGoldenrod); vec1rec = new Vector2(hudPos.X - 8, hudPos.Y + 36); vec2rec = new Vector2(hudPos.X - 8 + 50 + 2, hudPos.Y + 36); Drawing.DrawLine(vec1rec, vec2rec, 12, System.Drawing.Color.Black); vec1rec = new Vector2(hudPos.X - 7, hudPos.Y + 37); vec2rec = new Vector2(hudPos.X - 7 + 100 * recallPercent / 2, hudPos.Y + 37); Drawing.DrawLine(vec1rec, vec2rec, 10, System.Drawing.Color.Yellow); if (blink) DrawFontTextScreen(RecFont, "RECALLING", hudPos.X - 10, hudPos.Y + 18, SharpDX.Color.White); } } var ult = hero.Hero.Spellbook.Spells[3]; var sum1 = hero.Hero.Spellbook.Spells[4]; var sum2 = hero.Hero.Spellbook.Spells[5]; if (ult != null) { var sumTime = ult.CooldownExpires - Game.Time; var spritePos = new Vector2(hudPos.X + 3, hudPos.Y - 53); var vecHudCd = new Vector2(hudPos.X + 10, hudPos.Y - 46); var sumSprite = GetSummonerIcon("r"); sumSprite.Position = spritePos; sumSprite.Scale = new Vector2(0.4f, 0.4f); if (hero.Hero.Level < 6) { sumSprite.Color = new ColorBGRA(System.Drawing.Color.DimGray.ToArgb()); sumSprite.OnEndScene(); } else if (sumTime < 0) { sumSprite.Color = new ColorBGRA(System.Drawing.Color.White.ToArgb()); sumSprite.OnEndScene(); } else { sumSprite.Color = new ColorBGRA(System.Drawing.Color.DimGray.ToArgb()); sumSprite.OnEndScene(); DrawFontTextScreen(HudCd, MakeNiceNumber(sumTime), vecHudCd.X, vecHudCd.Y, SharpDX.Color.White); } } if (sum1 != null) { var sumTime = sum1.CooldownExpires - Game.Time; var vecFlashPos = new Vector2(hudPos.X - 10, hudPos.Y - 30); var vecHudCd = new Vector2(hudPos.X - 4, hudPos.Y - 24); var sumSprite = GetSummonerIcon(sum1.Name); sumSprite.Position = vecFlashPos; sumSprite.Scale = new Vector2(0.4f, 0.4f); if (sumTime < 0) { sumSprite.Color = new ColorBGRA(System.Drawing.Color.White.ToArgb()); sumSprite.OnEndScene(); } else { sumSprite.Color = new ColorBGRA(System.Drawing.Color.DimGray.ToArgb()); sumSprite.OnEndScene(); DrawFontTextScreen(HudCd, MakeNiceNumber(sumTime), vecHudCd.X, vecHudCd.Y, SharpDX.Color.White); } } if (sum2 != null) { var sumTime = sum2.CooldownExpires - Game.Time; var vecHealPos = new Vector2(hudPos.X + 15, hudPos.Y - 30); var vecHudCd = new Vector2(hudPos.X + 22, hudPos.Y - 24); var sumSprite = GetSummonerIcon(sum2.Name); sumSprite.Position = vecHealPos; sumSprite.Scale = new Vector2(0.4f, 0.4f); if (sumTime < 0) { sumSprite.Color = new ColorBGRA(System.Drawing.Color.White.ToArgb()); sumSprite.OnEndScene(); } else { sumSprite.Color = new ColorBGRA(System.Drawing.Color.DimGray.ToArgb()); sumSprite.OnEndScene(); DrawFontTextScreen(HudCd, MakeNiceNumber(sumTime), vecHudCd.X, vecHudCd.Y, SharpDX.Color.White); } } hudSpace += 65; } else if (championInfo) { var hudSprite = hero.HudSprite; if (!hero.Hero.IsVisible) hudSprite.Color = new ColorBGRA(System.Drawing.Color.DimGray.ToArgb()); else hudSprite.Color = new ColorBGRA(System.Drawing.Color.White.ToArgb()); Vector2 hudPos = new Vector2(posX + hudSpace, posY); float scale = 0.33f; hudSprite.Scale = new Vector2(scale, scale); hudSprite.Position = hudPos - new Vector2(11, -8); hudSprite.OnEndScene(); var vec1manaB = new Vector2(hudPos.X - 9, hudPos.Y + 48); var vec2manaB = new Vector2(hudPos.X - 8 + 33 + 3, hudPos.Y + 48); Drawing.DrawLine(vec1manaB, vec2manaB, 18, System.Drawing.Color.DarkGoldenrod); var vec1hpB = new Vector2(hudPos.X - 8, hudPos.Y + 49); var vec2hpB = new Vector2(hudPos.X - 8 + 33 + 2, hudPos.Y + 49); Drawing.DrawLine(vec1hpB, vec2hpB, 16, System.Drawing.Color.Black); System.Drawing.Color color = System.Drawing.Color.LimeGreen; if (hero.Hero.HealthPercent < 30) color = System.Drawing.Color.OrangeRed; else if (hero.Hero.HealthPercent < 50) color = System.Drawing.Color.DarkOrange; var vec1hp = new Vector2(hudPos.X - 7, hudPos.Y + 50); var vec2hp = new Vector2(hudPos.X - 7 + 33 * hero.Hero.HealthPercent * 0.01f, hudPos.Y + 50); Drawing.DrawLine(vec1hp, vec2hp, 7, color); var vec1mana = new Vector2(hudPos.X - 7, hudPos.Y + 59); var vec2mana = new Vector2(hudPos.X - 7 + 33 * hero.Hero.ManaPercent * 0.01f, hudPos.Y + 59); Drawing.DrawLine(vec1mana, vec2mana, 5, System.Drawing.Color.DodgerBlue); var vecHudLevel = new Vector2(hudPos.X + 15, hudPos.Y + 36); DrawFontTextScreen(HudLevel2, hero.Hero.Level.ToString(), vecHudLevel.X, vecHudLevel.Y, SharpDX.Color.White); { if (Game.Time - hero.FinishRecallTime < 4) { DrawFontTextScreen(HudLevel2, "FINISH", hudPos.X - 9, hudPos.Y + 18, SharpDX.Color.YellowGreen); } else if (hero.StartRecallTime <= hero.AbortRecallTime && Game.Time - hero.AbortRecallTime < 4) { DrawFontTextScreen(HudLevel2, "ABORT", hudPos.X - 9, hudPos.Y + 18, SharpDX.Color.Yellow); } else if (Game.Time - hero.StartRecallTime < 8) { var recallPercent = (Game.Time - hero.StartRecallTime) / 8; var vec1rec = new Vector2(hudPos.X - 9, hudPos.Y + 35); var vec2rec = new Vector2(hudPos.X - 8 + 33 + 3, hudPos.Y + 35); Drawing.DrawLine(vec1rec, vec2rec, 14, System.Drawing.Color.DarkGoldenrod); vec1rec = new Vector2(hudPos.X - 8, hudPos.Y + 36); vec2rec = new Vector2(hudPos.X - 8 + 33 + 2, hudPos.Y + 36); Drawing.DrawLine(vec1rec, vec2rec, 12, System.Drawing.Color.Black); vec1rec = new Vector2(hudPos.X - 7, hudPos.Y + 37); vec2rec = new Vector2(hudPos.X - 7 + 33 * recallPercent, hudPos.Y + 37); Drawing.DrawLine(vec1rec, vec2rec, 10, System.Drawing.Color.Yellow); if (blink) DrawFontTextScreen(HudLevel2, "RECALL", hudPos.X - 9, hudPos.Y + 18, SharpDX.Color.White); } } var ult = hero.Hero.Spellbook.Spells[3]; var sum1 = hero.Hero.Spellbook.Spells[4]; var sum2 = hero.Hero.Spellbook.Spells[5]; if (ult != null) { var sumTime = ult.CooldownExpires - Game.Time; var spritePos = new Vector2(hudPos.X - 2, hudPos.Y - 30); var vecHudCd = new Vector2(hudPos.X + 2, hudPos.Y - 24); var sumSprite = GetSummonerIcon("r"); sumSprite.Position = spritePos; sumSprite.Scale = new Vector2(0.35f, 0.35f); if (hero.Hero.Level < 6) { sumSprite.Color = new ColorBGRA(System.Drawing.Color.DimGray.ToArgb()); sumSprite.OnEndScene(); } else if (sumTime < 0) { sumSprite.Color = new ColorBGRA(System.Drawing.Color.White.ToArgb()); sumSprite.OnEndScene(); } else { sumSprite.Color = new ColorBGRA(System.Drawing.Color.DimGray.ToArgb()); sumSprite.OnEndScene(); DrawFontTextScreen(HudCd, MakeNiceNumber(sumTime), vecHudCd.X, vecHudCd.Y, SharpDX.Color.White); } } if (sum1 != null) { var sumTime = sum1.CooldownExpires - Game.Time; var vecFlashPos = new Vector2(hudPos.X - 13, hudPos.Y - 10); var vecHudCd = new Vector2(hudPos.X - 8, hudPos.Y - 5); var sumSprite = GetSummonerIcon(sum1.Name); sumSprite.Position = vecFlashPos; sumSprite.Scale = new Vector2(0.35f, 0.35f); if (sumTime < 0) { sumSprite.Color = new ColorBGRA(System.Drawing.Color.White.ToArgb()); sumSprite.OnEndScene(); } else { sumSprite.Color = new ColorBGRA(System.Drawing.Color.DimGray.ToArgb()); sumSprite.OnEndScene(); DrawFontTextScreen(HudCd, MakeNiceNumber(sumTime), vecHudCd.X, vecHudCd.Y, SharpDX.Color.White); } } if (sum2 != null) { var sumTime = sum2.CooldownExpires - Game.Time; var vecHealPos = new Vector2(hudPos.X + 9, hudPos.Y - 10); var vecHudCd = new Vector2(hudPos.X + 15, hudPos.Y - 5); var sumSprite = GetSummonerIcon(sum2.Name); sumSprite.Position = vecHealPos; sumSprite.Scale = new Vector2(0.35f, 0.35f); if (sumTime < 0) { sumSprite.Color = new ColorBGRA(System.Drawing.Color.White.ToArgb()); sumSprite.OnEndScene(); } else { sumSprite.Color = new ColorBGRA(System.Drawing.Color.DimGray.ToArgb()); sumSprite.OnEndScene(); DrawFontTextScreen(HudCd, MakeNiceNumber(sumTime), vecHudCd.X, vecHudCd.Y, SharpDX.Color.White); } } hudSpace += 45; } } if (ScreenRadar && !hero.Hero.Position.IsOnScreen() && (!ScreenRadarEnemy || hero.Hero.IsEnemy) && (!ScreenRadarJungler || hero.IsJungler)) { var dis = centerScreenWorld.Distance(hero.Hero.Position); if (dis < area) { float scale = 1.1f; if (dis < area) scale -= dis / area; var normalSprite = hero.NormalSprite; Vector2 dupa2 = centerScreen.Extend(Drawing.WorldToScreen(hero.Hero.Position), Drawing.Height / 2 - 120); normalSprite.Scale = new Vector2(scale, scale); if (hero.Hero.IsEnemy) { if (!hero.Hero.IsHPBarRendered) { dupa2 = centerScreen.Extend(Drawing.WorldToScreen(hero.LastWayPoint), Drawing.Height / 2 - 120); normalSprite.Color = new ColorBGRA(System.Drawing.Color.DimGray.ToArgb()); } else normalSprite.Color = new ColorBGRA(System.Drawing.Color.White.ToArgb()); } normalSprite.Scale = new Vector2(scale, scale); normalSprite.Position = dupa2; normalSprite.OnEndScene(); } } } }