Пример #1
0
        //return asap to check the most amount of times
        bool SecondEChecker(Obj_AI_Hero target)
        {
            if (LissUtils.isHealthy() && LissEMissile != null && E.IsReady())
            {
                if (Vector2.Distance(MissilePosition, target.ServerPosition.To2D()) < Vector3.Distance(player.ServerPosition, target.ServerPosition) &&
                    !LissUtils.PointUnderEnemyTurret(MissilePosition) &&
                    Vector3.Distance(target.ServerPosition, LissEMissile.EndPosition) > Vector3.Distance(player.ServerPosition, target.ServerPosition))
                {
                    if (safeGap(LissEMissile.Position.To2D()))
                    {
                        E.Cast();
                        return(true);
                    }
                }
                var Enemiesatpoint  = LissEMissile.Position.GetEnemiesInRange(R.Range);
                var enemiesatpointR = Enemiesatpoint.Count;

                if ((enemiesatpointR >= 2 && SpellSlot.R.IsReady()) || (Enemiesatpoint.Any(e => IsKillableFromPoint(e, LissEMissile.Position) && Vector3.Distance(LissEMissile.Position, e.ServerPosition) < Vector3.Distance(player.ServerPosition, e.ServerPosition))))
                {
                    if (safeGap(LissEMissile.Position.To2D()))
                    {
                        E.Cast();
                        return(true);
                    }
                }
                var enemiesatpointW = LissEMissile.Position.CountEnemiesInRange(W.Range);
                if (enemiesatpointW >= 2 && SpellSlot.W.IsReady())
                {
                    if (safeGap(LissEMissile.Position.To2D()))
                    {
                        E.Cast();
                        return(true);
                    }
                }
            }
            return(false);
        }
Пример #2
0
 //return asap to check the most amount of times
 bool SecondEChecker(AIHeroClient target)
 {
     if (LissUtils.isHealthy() && LissEMissile != null && E.IsReady())
     {
         if (Vector2.Distance(MissilePosition, target.ServerPosition.To2D()) < Vector3.Distance(player.ServerPosition, target.ServerPosition) &&
             !LissUtils.PointUnderEnemyTurret(MissilePosition) &&
             Vector3.Distance(target.ServerPosition, LissEMissile.EndPosition) > Vector3.Distance(player.ServerPosition, target.ServerPosition))
         {
             if (safeGap(LissEMissile.Position.To2D()))
             {
                 E.Cast();
                 return(true);
             }
         }
         var enemiesatpoint  = EntityManager.Heroes.Enemies.Where(x => !x.IsDead && x.IsInRange(ObjectManager.Player.ServerPosition, R.Range));
         var enemiesatpointR = enemiesatpoint.Count();
         if (enemiesatpointR >= 2 && R.IsReady() || enemiesatpoint.Any(e => IsKillableFromPoint(e, LissEMissile.Position) && Vector3.Distance(LissEMissile.Position, e.ServerPosition) < Vector3.Distance(player.ServerPosition, e.ServerPosition)))
         {
             if (safeGap(LissEMissile.Position.To2D()))
             {
                 E.Cast();
                 return(true);
             }
         }
         var enemiesatpointW = LissEMissile.Position.CountEnemiesInRange(W.Range);
         if (enemiesatpointW >= 2 && W.IsReady())
         {
             if (safeGap(LissEMissile.Position.To2D()))
             {
                 E.Cast();
                 return(true);
             }
         }
     }
     return(false);
 }