protected override void Volatile_ProcessSpellCast(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs args) { if (sender.Type != Player.Type || !E.IsReady() || !sender.IsEnemy || !SpellMenu["autoe"].Cast <CheckBox>().CurrentValue) { return; } foreach (var ally in EntityManager.Heroes.Allies.Where(x => x.IsValidTarget(E.Range))) { var detectRange = ally.ServerPosition + (args.End - ally.ServerPosition).Normalized() * ally.Distance(args.End); if (detectRange.Distance(ally.ServerPosition) > ally.AttackRange - ally.BoundingRadius) { continue; } { if (!args.SData.IsAutoAttack()) { if (CCDataBase.IsCC_SkillShot(args.SData.Name) && (SpellMenu["Shield" + ally.ChampionName].Cast <CheckBox>().CurrentValue)) { E.Cast(ally); } } if (CCDataBase.IsCC_NonSkillShot(args.SData.Name)) { if (ally.Distance(args.End) < 365 && (SpellMenu["Shield" + ally.ChampionName].Cast <CheckBox>().CurrentValue)) { E.Cast(ally); } } } } }
protected override void Volatile_ProcessSpellCast(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs args) { if (sender.NetworkId == Player.NetworkId && args.Slot == SpellSlot.E) { LastE = Now; Chat.Print("Now: " + Now); Chat.Print("Last E: " + LastE); } if (sender.Type != Player.Type || !W.IsReady() || !sender.IsEnemy || !SpellMenu["wtd"].Cast <CheckBox>().CurrentValue) { return; } if (!args.SData.IsAutoAttack()) { if (CCDataBase.IsCC_SkillShot(args.SData.Name)) { if (Player.HealthPercent < SpellMenu["wtdhp"].Cast <Slider>().CurrentValue) { W.Cast(); } } if (CCDataBase.IsCC_NonSkillShot(args.SData.Name)) { if (Player.HealthPercent < SpellMenu["wtdhp"].Cast <Slider>().CurrentValue) { W.Cast(); } } } }