public override void Execute() { if (EObj != null && E.IsReady() && E.ToggleState >= 2 && EObj.CountEnemyHeroesInRangeWithPrediction(375, 50) >= 1) { Player.CastSpell(SpellSlot.E); } }
public override void Execute() { if (Orbwalker.IsAutoAttacking || ManaLastHit > Me.ManaPercent) { return; } if (UseQLastHit) { var minionsQ = EntityManager.MinionsAndMonsters .GetLaneMinions() .OrderBy( m => m.Health) .FirstOrDefault(m => m.IsValidTarget(Q.Range) && Prediction.Health.GetPrediction(m, Q.TravelTime(m)) > Player.Instance.GetAutoAttackDamage(m) && Prediction.Health.GetPrediction(m, Q.TravelTime(m)) < m.GetQDamage()); if (minionsQ != null) { Q.CastMinimumHitchance(minionsQ, 20); } } if (UseELastHit) { if (EObj != null && E.ToggleState >= 2 && EObj.CountEnemyMinionsInRangeWithPrediction(375, 50) >= 1) { Player.CastSpell(SpellSlot.E); } var minionsE = EntityManager.MinionsAndMonsters.GetLaneMinions() .OrderBy(m => m.Health) .Where( m => m.IsValidTarget(E.Range + E.Width) && Prediction.Health.GetPrediction(m, E.TravelTime(m)) > Player.Instance.GetAutoAttackDamage(m) && Prediction.Health.GetPrediction(m, E.TravelTime(m)) < m.GetEDamage()) .ToArray(); if (minionsE.Length >= CountELastHit) { var predE = E.GetBestCircularCastPosition(minionsE); if (predE.HitNumber >= CountELastHit) { E.Cast(predE.CastPosition); } } } }
public static void PlayEffect(EffectType etype) { EObj ej = FindEff(etype); if (ej == null) { GameObject temp = Load(etype); float time = ParticleSystemLength(temp.transform); ej = new EObj(temp, time); dicEff.Add(etype, ej); } ej.e.SetActive(true); SDKManager.Instance.StartCoroutine(HideEffect(ej)); }
public static void Crawl(EObj eObj, Def def) { foreach (var fieldInfo in eObj.GetType().GetFields(flags)) { if (Attribute.GetCustomAttribute(fieldInfo, typeof(NoCrawl)) != null) { continue; } var defFieldInfo = def.GetType().GetField(fieldInfo.Name, flags); if (defFieldInfo != null) { fieldInfo.SetValue(eObj, defFieldInfo.GetValue(def)); } } }
private static void Drawing_OnDraw(System.EventArgs args) { if (DrawReady) { if (DrawQ && Q.IsReady()) { Me.DrawCircle((int)Q.Range, QColor); QObj?.Miss.DrawCircle(Q.Width, QColor); QObj?.Poly.Draw(QColor, 5); } if (DrawW && W.IsReady()) { Me.DrawCircle((int)W.Range, WColor); } if (DrawE && E.IsReady()) { Me.DrawCircle((int)E.Range, EColor); EObj?.DrawCircle(E.Width, EColor); } if (DrawR && R.IsReady()) { Me.DrawCircle((int)R.Range, RColor); } } else { if (DrawQ) { Me.DrawCircle((int)Q.Range, QColor); QObj?.Miss.DrawCircle(Q.Width, QColor); QObj?.Poly.Draw(QColor, 5); } if (DrawW) { Me.DrawCircle((int)W.Range, WColor); } if (DrawE) { Me.DrawCircle((int)E.Range, EColor); EObj?.DrawCircle(E.Width, EColor); } if (DrawR) { Me.DrawCircle((int)R.Range, RColor); } } }
private static IEnumerator HideEffect(EObj ej) { yield return(new WaitForSeconds(ej.time)); ej.e.SetActive(false); }