private static void Starcall()
 {
     Console.WriteLine("Calling Starcall");
     foreach (Obj_AI_Hero Champ in ObjectManager.Get <Obj_AI_Hero>())
     {
         if ((Champ != null) && (Champ.IsValidTarget(Q.Range)))
         {
             Q.Cast(null, packets);
         }
     }
 }
 private static void AstralBlessing()
 {
     Console.WriteLine("Calling Astral Blessing");
     foreach (Obj_AI_Hero Champ in ObjectManager.Get <Obj_AI_Hero>())
     {
         if ((Champ != null) && (!Champ.IsDead) && (W.IsReady()) && (Champ.IsAlly) && (Champ.Health < (Champ.MaxHealth) && (Champ.IsValidTarget(W.Range))))
         {
             Console.WriteLine("Trying to cast Astral Blessing");
             W.CastOnUnit(Champ, packets);
         }
     }
 }
 private static void Wish()
 {
     Console.WriteLine("Calling Wish");
     foreach (Obj_AI_Hero Champ in ObjectManager.Get <Obj_AI_Hero>())
     {
         if ((Champ != null) && (!Champ.IsDead) && (R.IsReady()) && (Champ.IsAlly) && (Champ.Health <= (Champ.MaxHealth * 0.30)) && (Champ.IsValidTarget(R.Range)))
         {
             R.Cast(null, packets);
         }
     }
 }
 private static void InfuseSilence()
 {
     Console.WriteLine("Calling Silence");
     foreach (Obj_AI_Hero Champ in ObjectManager.Get <Obj_AI_Hero>())
     {
         if ((Champ != null) && (E.IsReady()) && (Champ.IsEnemy) && (Champ.IsChannelingImportantSpell()) && (Champ.IsValidTarget(E.Range)))
         {
             E.CastOnUnit(Champ, packets);
         }
     }
 }
 private static void InfuseMana()
 {
     Console.WriteLine("Calling Infuse");
     foreach (Obj_AI_Hero Champ in ObjectManager.Get <Obj_AI_Hero>())
     {
         if ((Champ != null) && (!Champ.IsDead) && (E.IsReady()) && (Champ.IsAlly) && (Champ.Mana <= (Champ.MaxMana * 0.50)) && (Champ.IsValidTarget(E.Range)))
         {
             E.CastOnUnit(Champ, packets);
         }
     }
 }