public static void Ping(Vector2 position, int pingCount = 4, PingCategory pingCategory = PingCategory.Fallback) { if (LeagueSharp.Common.Utils.TickCount - LastPingT < 30 * 1000) { return; } LastPingT = LeagueSharp.Common.Utils.TickCount; PingLocation = position; SimplePing(); for (int i = 1; i <= pingCount; i++) { LeagueSharp.Common.Utility.DelayAction.Add(i * 400, (() => { TacticalMap.ShowPing(pingCategory, PingLocation, true); })); } /* * Utility.DelayAction.Add(150, SimplePing); * Utility.DelayAction.Add(300, SimplePing); * Utility.DelayAction.Add(400, SimplePing); * Utility.DelayAction.Add(800, SimplePing); */ }
private void OnDrawingEndScene(EventArgs args) { if (ObjectManager.Player.IsDead || Drawing.Direct3DDevice == null || Drawing.Direct3DDevice.IsDisposed) { return; } foreach ( var obj in GankObjects.Where( c => !c.Hero.IsDead && c.Hero.IsValidTarget(this.Range) && c.LastTrigger + this.Duration > Game.Time) ) { Drawing.DrawLine( ObjectManager.Player.Position.WorldToScreen(), obj.Hero.Position.WorldToScreen(), 8f, Color.FromArgb(80, obj.Color)); if (this.Ping && obj.Hero.IsEnemy && this.lastPing + this.Cooldown * 1000 < Environment.TickCount) { TacticalMap.ShowPing(PingCategory.Danger, ObjectManager.Player.Position, true); this.lastPing = Environment.TickCount; } } }
private void Game_OnGameUpdate(EventArgs args) { if (Hero.ServerPosition != LastLocation && Hero.ServerPosition != BeforeRecallLocation) { LastLocation = Hero.ServerPosition; PredictedLocation = Hero.ServerPosition; LastSeen = Game.Time; } if (!Hero.IsVisible && RecallStatus != Packet.S2C.Teleport.Status.Start) { PredictedLocation = new Vector3( LastLocation.X + ((Game.Time - LastSeen) * Hero.MoveSpeed), LastLocation.Y, LastLocation.Z); } if (Hero.IsVisible && !Hero.IsDead) { Pinged = false; LastSeen = Game.Time; } if (LastSeen > 0f && MinimapHack.Instance().Menu.Ping&& !Hero.IsVisible) { if (Game.Time - LastSeen >= MinimapHack.Instance().Menu.MinPing&& !Pinged) { TacticalMap.ShowPing(PingCategory.EnemyMissing, Hero, true); Pinged = true; } } }
public Ward(AIHeroClient caster, Obj_AI_Base handle, Vector3 position, IWard wardInfo, int duration, GameObjectTeam team) { // Initialize properties Caster = caster; Handle = handle; FakePosition = position; Team = team; WardInfo = wardInfo; Duration = duration * 1000; CreationTime = Core.GameTickCount; // Initialize rendering MinimapSprite = new Sprite(() => MinimapIconTexture); TextHandle = new Text(string.Empty, new Font(FontFamily.GenericSansSerif, 8, FontStyle.Regular)); // Notify player about placement if (!MasterMind.IsSpectatorMode && Team.IsEnemy() && (Player.Instance.IsInRange(Position, NotifyRange.CurrentValue) || Player.Instance.IsInRange(position, NotifyRange.CurrentValue))) { if (NotifyPlace.CurrentValue) { Notifications.Show(new SimpleNotification("A ward has been placed!", string.Format("{0} has placed a {1}", caster != null ? caster.ChampionName : "Unknown", WardInfo.FriendlyName))); } if (NotifyPlacePing.CurrentValue) { TacticalMap.ShowPing(PingCategory.Normal, Position, true); } } }
private void ChampionInfo_OnEnterRange(object sender, EventArgs e) { bool enabled = false; if (Program.Instance().EnemyJunglerOnly&& _hero.IsEnemy) { enabled = IsJungler(_hero); } else if (Program.Instance().AllyJunglerOnly&& _hero.IsAlly) { enabled = IsJungler(_hero); } else { enabled = Program.Instance().IsEnabled(_hero); } if (Game.Time - _lastEnter > Program.Instance().Cooldown&& enabled) { _lineStart = Game.Time; if (Program.Instance().DangerPing&& _hero.IsEnemy && !_hero.IsDead) { TacticalMap.ShowPing(PingCategory.Danger, _hero, true); } } _lastEnter = Game.Time; }
private void OnGameUpdate(EventArgs args) { try { if (ObjectManager.Player.IsDead || _lastCheck + CheckInterval > Environment.TickCount) { return; } _lastCheck = Environment.TickCount; var cooldown = Menu.Item(Name + "Cooldown").GetValue <Slider>().Value; var range = Menu.Item(Name + "Range").GetValue <Slider>().Value; var ping = Menu.Item(Name + "Ping").GetValue <bool>(); foreach (var obj in _championObjects.Where(c => c.Enabled && !c.Hero.IsDead && c.Hero.IsVisible)) { var distance = obj.Hero.Distance(ObjectManager.Player); if (obj.Distance > range && distance <= range && Game.Time > obj.LastTrigger + cooldown) { obj.LastTrigger = Game.Time; if (ping && obj.Hero.IsEnemy) { TacticalMap.ShowPing(PingCategory.Danger, obj.Hero, true); } } obj.Distance = distance; } } catch (Exception ex) { Global.Logger.AddItem(new LogItem(ex)); } }
/// <summary> /// Fired when the game is updated. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void OnUpdate(EventArgs args) { /// <summary> /// Initializes the spells. /// </summary> Spells.Initialize(); /// <summary> /// Initializes the Automatic actions. /// </summary> Logics.Automatic(args); /// <summary> /// Initializes the Killsteal events. /// </summary> Logics.Killsteal(args); if (Vars.R.IsReady() && Vars.Menu["spells"]["r"]["ping"].GetValue <MenuBool>().Value) { foreach (var target in GameObjects.EnemyHeroes.Where( t => t.IsValidTarget() && !Invulnerable.Check(t, DamageType.Magical, false) && Vars.GetRealHealth(t) < (float)GameObjects.Player.GetSpellDamage(t, SpellSlot.R))) { TacticalMap.ShowPing(PingCategory.Fallback, target.Position, true); } } if (GameObjects.Player.Spellbook.IsAutoAttacking) { return; } /// <summary> /// Initializes the orbwalkingmodes. /// </summary> switch (Variables.Orbwalker.ActiveMode) { case OrbwalkingMode.Combo: Logics.Combo(args); break; case OrbwalkingMode.Hybrid: Logics.Harass(args); break; case OrbwalkingMode.LaneClear: Logics.Clear(args); break; case OrbwalkingMode.LastHit: Logics.LastHit(args); break; } }
private static void Game_OnUpdate(EventArgs args) { #region 击杀列表 及 击杀信号提示 foreach (var enemy in HeroManager.Enemies) { if (R.CanCast(enemy) && !enemy.IsDead && enemy.IsValid && GetRDmg(enemy) >= enemy.Health) { if (!KillableList.Contains(enemy)) { KillableList.Add(enemy); } if (Config.Item("击杀信号提示").GetValue <bool>() && Game.Time - PingList[enemy.NetworkId] > 10 * 1000) { TacticalMap.ShowPing(PingCategory.AssistMe, enemy, true); TacticalMap.ShowPing(PingCategory.AssistMe, enemy, true); TacticalMap.ShowPing(PingCategory.AssistMe, enemy, true); PingList[enemy.NetworkId] = Game.Time; } } else { if (KillableList.Contains(enemy)) { KillableList.Remove(enemy); } } } #endregion #region 其它设置,买蓝眼 if (Config.Item("买蓝眼").GetValue <bool>() && !ScryingOrb.IsOwned() && (Player.InShop() || Player.InFountain()) && Player.Level >= 9) { Shop.BuyItem(ItemId.Farsight_Alteration); } #endregion #region 提前结束R时 重置大招次数及目标 if (!IsCastingR && !R.IsReady()) { RCharge.Index = 0; RCharge.Target = null; } #endregion if (!IsCastingR && RCharge.Index == 0) { QLogic(); WLogic(); ELogic(); } RLogic(); }
internal static void OnUpdate() { if (!loaded) { return; } if (Player.Instance.IsDead || !GankMenu["enable"].Cast <CheckBox>().CurrentValue) { return; } var range = GankMenu["range"].Cast <Slider>().CurrentValue; var cd = GankMenu["cd"].Cast <Slider>().CurrentValue; var heros = EntityManager.Heroes.AllHeroes.Where(x => x.IsInRange(Player.Instance.Position, range) && !x.IsDead && !x.IsInvulnerable && !x.IsMe); foreach (var hero in heros.Where(hero => hero != null && Detect(hero) && hero.IsInRange(Player.Instance.Position, range))) { if (Game.Time - EnterTime > cd) { DrawDuration = Game.Time; if (hero.IsAlly) { if (GankMenu["ping"].Cast <CheckBox>().CurrentValue) { if (Game.Time - Allypingtimer > cd) { TacticalMap.ShowPing(PingCategory.OnMyWay, hero, true); } } Allypingtimer = Game.Time; } if (hero.IsEnemy) { if (GankMenu["ping"].Cast <CheckBox>().CurrentValue) { if (Game.Time - Enemypingtimer > cd) { TacticalMap.ShowPing(PingCategory.Danger, hero, true); } } Enemypingtimer = Game.Time; } } EnterTime = Game.Time; } }
private static void Killsteal() { var targets = HeroManager.Enemies.Where(x => x.IsValidTarget() && Player.Distance(x.ServerPosition) <= E.Range + W.Range && !x.IsZombie && !x.IsDead); if (W.IsReady() && KSW) { foreach (var target in targets) { if (target.Health <= W.GetDamage2(target) * 2) { if (Player.Distance(target.ServerPosition) < W.Range && Player.Mana >= W.ManaCost) { W.Cast(target.ServerPosition); } else if (E.IsReady() && Player.Distance(target.ServerPosition) > W.Range && Player.Mana >= E.ManaCost + W.ManaCost && KSEW) { var minions = MinionManager.GetMinions(E.Range); if (minions.Count != 0) { foreach (var minion in minions) { if (minion.IsValidTarget(E.Range) && minion.Distance(target.ServerPosition) <= W.Range) { TacticalMap.ShowPing(PingCategory.Normal, minion.Position); E.Cast(minion); LeagueSharp.Common.Utility.DelayAction.Add(10, () => W.Cast(target.ServerPosition)); } } } if (minions.Count == 0) { var heros = HeroManager.Enemies; if (heros.Count != 0) { foreach (var hero in heros) { if (hero.IsValidTarget(E.Range) && hero.Distance(target.ServerPosition) <= W.Range) { TacticalMap.ShowPing(PingCategory.Normal, hero.Position); E.Cast(hero); LeagueSharp.Common.Utility.DelayAction.Add(10, () => W.Cast(target.ServerPosition)); } } } } } } } } }
private static void OnProcessSpell(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs args) { try { if (sender.IsEnemy) { var MovingSkillInfo = MovingSkillInfoList.FirstOrDefault(x => x.SpellName == args.SData.Name); var StopSkillInfo = StopSkillInfoList.FirstOrDefault(x => x.SpellName == args.SData.Name); var UsingItemInfo = UsingItemInfoList.FirstOrDefault(x => x.ItemName == args.SData.Name); if (MovingSkillInfo != null) { TrackInfomationList.Add(new MovingTrackInfomation { InfoType = InfoType.MovingSkill, CastTime = Environment.TickCount, Sender = sender, ExpireTime = TickCount(3000), StartPosition = args.Start, EndPosition = args.Start.Extend(args.End, MovingSkillInfo.MaxRange) }); } if (StopSkillInfo != null) { TacticalMap.ShowPing(PingCategory.Danger, sender.Position); StopTrackInfomationList.Add(new StopTrackInfomation { InfoType = InfoType.StopSkill, Sender = sender, CastPosition = args.End, ExpireTime = TickCount(StopSkillInfo.ExpireTime) }); } if (UsingItemInfo != null) { UsingItemInfomationList.Add(new UsingTrackInfomation { InfoType = InfoType.UsingItem, Sender = sender, CastTime = Environment.TickCount, ExpireTime = TickCount(UsingItemInfo.ExpireTime) }); } } } catch (Exception e) { Console.Write(e); Chat.Print("ShadowTracker is not working. plz send message by KorFresh (Code 7)"); } }
private static void OnTick(EventArgs args) { // Validate all sentinels foreach (var entry in ActiveSentinels.ToArray()) { if (Config.SentinelMenu.IsChecked("sentinel.alert") && entry.Value.Any(o => o.Value.Health == 1)) { var activeSentinel = entry.Value.First(o => o.Value.Health == 1); Chat.Print("[Kalista] Sentinel at {0} taking damage! (local ping)", string.Concat((entry.Key == GameObjectTeam.Order ? "Blue-Jungle" : entry.Key == GameObjectTeam.Chaos ? "Red-Jungle" : "Lake"), " (", activeSentinel.Key, ")")); TacticalMap.ShowPing(PingCategory.Fallback, activeSentinel.Value.Position, true); } var invalid = entry.Value.Where(o => !o.Value.IsValid || o.Value.Health < 2 || o.Value.GetBuffCount("kalistaw") == 0).ToArray(); if (invalid.Length > 0) { foreach (var location in invalid) { ActiveSentinels[entry.Key].Remove(location.Key); } RecalculateOpenLocations(); } } // Auto sentinel management if (Config.SentinelMenu.IsChecked("sentinel.enable") && Spells.W.IsReady() && Player.Instance.ManaPercent >= Config.SentinelMenu.GetValue("sentinel.mana") && !Player.Instance.IsRecalling()) { if (!Config.SentinelMenu.IsChecked("sentinel.noMode") || Orbwalker.ActiveModesFlags == Orbwalker.ActiveModes.None) { if (OpenLocations.Count > 0 && SentLocation == null) { var closestLocation = OpenLocations.Where(o => Locations[o.Item1][o.Item2].IsInRange(Player.Instance, Spells.W.Range - MaxRandomRadius / 2)) .OrderByDescending(o => Locations[o.Item1][o.Item2].Distance(Player.Instance, true)) .FirstOrDefault(); if (closestLocation != null) { var position = Locations[closestLocation.Item1][closestLocation.Item2]; var randomized = (new Vector2(position.X - MaxRandomRadius / 2 + Random.NextFloat(0, MaxRandomRadius), position.Y - MaxRandomRadius / 2 + Random.NextFloat(0, MaxRandomRadius))).To3DWorld(); SentLocation = closestLocation; Spells.W.Cast(randomized); Core.DelayAction(() => SentLocation = null, 2000); } } } } }
private void Drawing_OnDraw(EventArgs args) { foreach (var spell in SpellDetector.drawSpells.Values) { Vector2 spellPos = spell.currentSpellPosition; if (spell.heroID == myHero.NetworkId) { if (spell.spellType == SpellType.Line) { if (spellPos.Distance(myHero) <= myHero.BoundingRadius + spell.radius && EvadeUtils.TickCount - spell.startTime > spell.info.spellDelay && spell.startPos.Distance(myHero) < spell.info.range) { Draw.RenderObjects.Add(new Draw.RenderCircle(spellPos, 1000, Color.Red, (int)spell.radius, 10)); DelayAction.Add(1, () => SpellDetector.DeleteSpell(spell.spellID)); } else { Render.Circle.DrawCircle(new Vector3(spellPos.X, spellPos.Y, myHero.Position.Z), (int)spell.radius, Color.White, 5); } } else if (spell.spellType == SpellType.Circular) { if (EvadeUtils.TickCount - spell.startTime >= spell.endTime - spell.startTime) { if (myHero.ServerPosition.To2D().InSkillShot(spell, myHero.BoundingRadius)) { Draw.RenderObjects.Add(new Draw.RenderCircle(spellPos, 1000, Color.Red, (int)spell.radius, 5)); DelayAction.Add(1, () => SpellDetector.DeleteSpell(spell.spellID)); } } } else if (spell.spellType == SpellType.Cone) { // SPELL TESTER if (EvadeUtils.TickCount - spell.startTime >= spell.endTime - spell.startTime) { if (myHero.ServerPosition.To2D().InSkillShot(spell, myHero.BoundingRadius)) { TacticalMap.ShowPing(PingCategory.Danger, myHero.Position); DelayAction.Add(1, () => SpellDetector.DeleteSpell(spell.spellID)); } } } } } }
private void Ping() { if (Utils.TickCount - lastPing < 25000) { return; } lastPing = Utils.TickCount; LeagueSharp.Common.Utility.DelayAction.Add(rand.Next(50, 100), () => TacticalMap.ShowPing(PingCategory.Danger, Target, true)); LeagueSharp.Common.Utility.DelayAction.Add(rand.Next(200, 300), () => TacticalMap.ShowPing(PingCategory.OnMyWay, Target, true)); LeagueSharp.Common.Utility.DelayAction.Add(rand.Next(400, 900), () => TacticalMap.ShowPing(PingCategory.AssistMe, Target, true)); LeagueSharp.Common.Utility.DelayAction.Add(rand.Next(1000, 1300), () => TacticalMap.ShowPing(PingCategory.OnMyWay, Target, true)); }
private void LastSeenPosition_OnTick(EventArgs args) { foreach (var enemy in EntityManager.Heroes.Enemies.Where(enemy => enemy.ChampionName == Hero.ChampionName)) { if (enemy.IsHPBarRendered) { LastLocation = enemy.ServerPosition; LastSeen = Game.Time; } else { if (LastSeen - Game.Time > 30 || Pinged) { TacticalMap.ShowPing(PingCategory.Fallback, LastLocation, true); Pinged = true; } } } }
private static void SendPing(GankInfo gank) { if (gank.Sender.IsMe || PingDelay > Core.GameTickCount - gank.LastPinged || !menu.CheckBoxValue("ping")) { return; } var local = menu.ComboBoxValue("pingmode") == 0; if (local) { TacticalMap.ShowPing(pingtype(gank), gank.Sender, true); } else { TacticalMap.SendPing(pingtype(gank), gank.Sender); } gank.LastPinged = Core.GameTickCount; }
private static void Ping(Vector3 pos) { if (Environment.TickCount - LastPingTick < PingDelay) { return; } if (PingCount >= 5) { PingDelay = 30000; PingCount = 0; return; } LastPingTick = Environment.TickCount; PingCount += 1; PingDelay = 150; TacticalMap.ShowPing(PingCategory.Fallback, pos, true); }
private static void SimplePing() { TacticalMap.ShowPing(PingCategory.Danger, PingLocation, true); }
private static void SimplePing() { TacticalMap.ShowPing(PingCategory.Fallback, PingLocation, true); }
/// <summary> /// Main ticking rotation which decides what method will be checked during the game. /// </summary> /// <param name="args">parameter that are given by the process itself. (not needed yet)</param> private static void Game_OnUpdate(EventArgs args) { //checking if UltKS is enabled. if (GameObjects.EnemyHeroes.Count(x => Utilities.Player.Distance(x) <= 500f) <= 0 && (Utilities.MainMenu["R"]["KS"] || Utilities.MainMenu["R"]["Save"])) { //start ultks method AutoUlt(); } // check if ping notifying is enabled. if (Utilities.MainMenu["Utilities"]["NotifyPing"]) { // for each player, who's killable with R gets pinged. foreach (var enemy in GameObjects.EnemyHeroes.Where( t => Utilities.R.IsReady() && t.IsValidTarget() && Utilities.R.GetDamage(t, DamageStage.Detonation) > t.Health && t.Distance(ObjectManager.Player.Position) > Utilities.Q.Range)) { TacticalMap.ShowPing(PingCategory.Danger, enemy); //internal pings :D } } if (Core.IsInPassiveForm()) { Combo(); LaneClear(); } switch (Variables.Orbwalker.ActiveMode) { case OrbwalkingMode.Combo: Variables.Orbwalker.AttackState = Utilities.MainMenu["Modes"]["useaa"] || ObjectManager.Player.Mana < 100; //if no mana, allow auto attacks! Variables.Orbwalker.MovementState = Utilities.MainMenu["Modes"]["usemm"]; Combo(); break; case OrbwalkingMode.Hybrid: Variables.Orbwalker.AttackState = true; Variables.Orbwalker.MovementState = Utilities.MainMenu["Modes"]["usemm"]; Harass(); break; case OrbwalkingMode.LaneClear: Variables.Orbwalker.AttackState = Utilities.MainMenu["Modes"]["useaa"] || ObjectManager.Player.Mana < 100; Variables.Orbwalker.MovementState = Utilities.MainMenu["Modes"]["usemm"]; LaneClear(); break; case OrbwalkingMode.LastHit: Variables.Orbwalker.AttackState = Utilities.MainMenu["Utilities"]["LastAA"]; Variables.Orbwalker.MovementState = Utilities.MainMenu["Modes"]["usemm"]; LastHit(); break; default: Variables.Orbwalker.AttackState = true; Variables.Orbwalker.MovementState = true; EState(OrbwalkingMode.None); break; } }
private static void SimplePing(bool sound = false) { TacticalMap.ShowPing(PingCategory.Fallback, _lastPingLocation, sound); }
private static void SimplePing() { TacticalMap.ShowPing(PingCategory.AssistMe, PingLocation, true); }
private static void SimplePing() { TacticalMap.ShowPing(MiscOption.GetBool("NormalPingKill") ? PingCategory.Normal : PingCategory.Fallback, PingLocation, true); }
private void SimplePing() { TacticalMap.ShowPing( Menu.Item("NormalPingKill", true).GetValue <bool>() ? PingCategory.Normal : PingCategory.Fallback, PingLocation, true); }
private void Game_OnUpdate(EventArgs args) { _q.MinHitChance = MenuProvider.Champion.Misc.QSelectedHitchance; if (!ObjectManager.Player.IsDead) { if (Orbwalking.CanMove(100)) { switch (MenuProvider.Orbwalker.ActiveMode) { case Orbwalking.OrbwalkingMode.Combo: { if (MenuProvider.Champion.Combo.UseQ) { if (_q.IsReadyPerfectly()) { var target = TargetSelector.GetTarget(_q.Range, _q.DamageType); if (target != null) { _q.Cast(target, false, true); } } } if (MenuProvider.Champion.Combo.UseW) { if (_w.IsReadyPerfectly()) { var target = TargetSelector.GetTarget(_w.Range, _w.DamageType); if (target != null) { _w.Cast(target, false, true); } } } if (MenuProvider.Champion.Combo.UseE) { if (_e.IsReadyPerfectly()) { ESwitch(ObjectManager.Player.CountEnemiesInRange(_e.Range) > 0); } } break; } case Orbwalking.OrbwalkingMode.Mixed: { if (MenuProvider.Champion.Harass.UseQ) { if (_q.IsReadyPerfectly()) { var target = TargetSelector.GetTarget(_q.Range, _q.DamageType); if (target != null) { _q.Cast(target, false, true); } } } if (MenuProvider.Champion.Harass.UseW) { if (_w.IsReadyPerfectly()) { if (_w.IsReadyPerfectly()) { var target = TargetSelector.GetTarget(_w.Range, _w.DamageType); if (target != null) { _w.Cast(target, false, true); } } } } if (MenuProvider.Champion.Harass.UseE) { if (_e.IsReadyPerfectly()) { ESwitch(ObjectManager.Player.CountEnemiesInRange(_e.Range) > 0); } } break; } case Orbwalking.OrbwalkingMode.LaneClear: { //Laneclear if (MenuProvider.Champion.Laneclear.UseQ) { if (ObjectManager.Player.IsManaPercentOkay(MenuProvider.Champion.Laneclear.IfMana)) { if (_q.IsReadyPerfectly()) { var farmLocation = _q.GetCircularFarmLocation(MinionManager.GetMinions(_q.Range)); if (farmLocation.MinionsHit >= 1) { _q.Cast(farmLocation.Position); } } } } //Jungleclear if (MenuProvider.Champion.Jungleclear.UseQ) { if (ObjectManager.Player.IsManaPercentOkay(MenuProvider.Champion.Jungleclear.IfMana)) { if (_q.IsReadyPerfectly()) { var target = MinionManager.GetMinions(600, MinionTypes.All, MinionTeam.Neutral, MinionOrderTypes.MaxHealth).FirstOrDefault(x => x.IsValidTarget(600)); if (target != null) { _q.Cast(target); } } } } break; } case Orbwalking.OrbwalkingMode.LastHit: { if (MenuProvider.Champion.Lasthit.UseQ) { if (ObjectManager.Player.IsManaPercentOkay(MenuProvider.Champion.Jungleclear.IfMana)) { if (_q.IsReadyPerfectly()) { var target = MinionManager.GetMinions(_q.Range) .FirstOrDefault( x => x.IsKillableAndValidTarget(_q.GetDamage(x, 1), _q.DamageType, _q.Range)); if (target != null) { _q.Cast(target); } } } } } break; } } if (MenuProvider.Champion.Misc.GetBoolValue("Ping Notify on R Killable Targets")) { if (_r.IsReadyPerfectly()) { if (Environment.TickCount - _lastPingTime >= 333) { foreach ( var target in HeroManager.Enemies.Where( x => x.IsKillableAndValidTarget(_r.GetDamage(x), _r.DamageType))) { TacticalMap.ShowPing(PingCategory.Normal, target.Position, true); } _lastPingTime = Environment.TickCount; } } } } }
private static void SimplePing(PingCategory pingCategory = PingCategory.Fallback) { S2C.Ping.Encoded(new S2C.Ping.Struct(PingLocation.X, PingLocation.Y, 0, 0, LeagueSharp.Common.Packet.PingType.Fallback)); TacticalMap.ShowPing(pingCategory, PingLocation, true); }
private static void SimplePing() { TacticalMap.ShowPing(pingCategory, pingLocation, true); }