Пример #1
0
 public override List<Unidad> ObjetivosProximos(Mapa mapa)
 {
     List<Unidad> u = new List<Unidad>();
     mapa.encontrarPosAlcanzable(this.posicion, this.velocidad, this.tipo, true);
     foreach (int[] i in mapa.alcanzables)
     {
         var adyacentes = objetivosDisparables(i, mapa);
         if (adyacentes.Count != 0)
         {
             foreach (Unidad a in adyacentes)
             {
                 if (!(u.Contains(a)))
                 {
                     u.Add(a);
                 }
             }
         }
     }
     if (u.Count == 0)
     {
         this.estado = estados.defensivo;
     }
     else
     {
         this.estado = estados.ofensivo;
     }
     return u;
 }
Пример #2
0
 public override List<Unidad> ObjetivosProximos(Mapa mapa)
 {
     List<Unidad> u = new List<Unidad>();
     mapa.encontrarPosAlcanzable(this.posicion, this.velocidad, this.tipo, true);
     foreach (int[] i in mapa.alcanzables)
     {
         var adyacentes = objetivosDisparables(i, mapa);
         if (adyacentes.Count != 0)
         {
             foreach (Unidad a in adyacentes)
             {
                 if (!(u.Contains(a)))
                 {
                     u.Add(a);
                 }
             }
         }
     }
     u.RemoveAll(x => x.hpActual + 10 > x.hpInicial);
     return u;
 }