Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using LeagueSharp;
- using LeagueSharp.Common;
- using SharpDX;
- namespace Soraka{
- class Program{
- private static Obj_AI_Hero Player = ObjectManager.Player;
- public static Spell _q, _w, _e, _r;
- private static readonly List<Spell> _spellList = new List<Spell>();
- #region Main
- static void Main(string[] args){
- CustomEvents.Game.OnGameLoad += Game_OnGameLoad;}
- #endregion
- #region Game_OnGameLoad
- private static void Game_OnGameLoad(EventArgs args){
- if (Player.ChampionName != "Soraka")
- return;
- Util.clientNotif("Soraka: ", "loaded.", 5);
- Util.clientNotif("By: ", "FineNerds", 5);
- #region Spell Data
- _q = new Spell(SpellSlot.Q, 970);
- _w = new Spell(SpellSlot.W, 550);
- _e = new Spell(SpellSlot.E, 925);
- _r = new Spell(SpellSlot.R, 30000);
- _spellList.AddRange(new[] {_q, _w, _e, _r});
- #endregion
- _q.SetSkillshot(0.25f, 300f, 1f, false, SkillshotType.SkillshotCircle);
- _e.SetSkillshot(0.25f, 300f, 0f, false, SkillshotType.SkillshotCircle);
- Game.OnGameUpdate += Game_OnGameUpdate;
- Interrupter2.OnInterruptableTarget += Interrupter2_OnInterruptableTarget;
- AntiGapcloser.OnEnemyGapcloser += AntiGapcloser_OnEnemyGapcloser;
- MenuInstance.createMenu();
- MusicPlayer.playSong();}
- #endregion
- #region Game_OnGameUpdate
- private static void Game_OnGameUpdate(EventArgs args){
- if (MenuInstance._menu.Item("ComboActive").GetValue<KeyBind>().Active)
- Actions.combo();
- if (MenuInstance._orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Mixed)
- Actions.harass();
- var target = TargetSelector.GetTarget(_e.Range, TargetSelector.DamageType.Magical);
- if (Interrupter2.IsCastingInterruptableSpell(target) && Interrupter2.GetInterruptableTargetData(target).DangerLevel == Interrupter2.DangerLevel.High && target.IsValidTarget(_e.Range))
- _e.Cast();
- Actions.healSelf();
- Actions.healAlly();}
- #endregion
- #region Interrupter2_OnInterruptableTarget
- private static void Interrupter2_OnInterruptableTarget(Obj_AI_Hero sender, Interrupter2.InterruptableTargetEventArgs args){
- if (args.DangerLevel != Interrupter2.DangerLevel.High || sender.Distance(ObjectManager.Player, false) > _e.Range)
- return;
- if (sender.IsValidTarget(_e.Range) && args.DangerLevel == Interrupter2.DangerLevel.High && _e.IsReady())
- _e.Cast(ObjectManager.Player);
- else if (sender.IsValidTarget(_e.Range) && args.DangerLevel == Interrupter2.DangerLevel.High && _e.IsReady() && !_e.IsReady())
- _e.Cast(ObjectManager.Player);}
- #endregion
- #region AntiGapcloser_OnEnemyGapcloser
- private static void AntiGapcloser_OnEnemyGapcloser(ActiveGapcloser gapCloser){
- if (!gapCloser.Sender.IsValidTarget(_q.Range))
- return;
- if (gapCloser.Sender.Distance(ObjectManager.Player, false) > _q.Range)
- return;
- if (gapCloser.Sender.IsValidTarget(_q.Range)){
- if(MenuInstance._menu.Item("useQ").GetValue<bool>() && _q.IsReady())
- _q.CastIfHitchanceEquals(gapCloser.Sender, HitChance.Medium);}}
- #endregion
- }}
Advertisement
Add Comment
Please, Sign In to add comment