Advertisement
fmbalvarez

Pre-parcial - MisionDestruirNavesEnemigas

Sep 27th, 2014
191
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.39 KB | None | 0 0
  1. class MisionDestruirNavesEnemigas {
  2.    
  3.     int navesDestruidas;
  4.     Nave naveAlfa;
  5.     Radar radar = naveAlfa.obtenerRadar();
  6.     int distanciaMaxima;
  7.    
  8.     MisionDestruirNavesEnemigas(int distanciaMaxima){
  9.        
  10.         this.distanciaMaxima = distanciaMaxima;
  11.        
  12.     }
  13.    
  14.     public int atacar(int distanciaMaxima){
  15.        
  16.         avanzarHastaContenedor();
  17.         esquivarContenedor();
  18.         irHastaAsteroides();
  19.         destruirNavesEnemigas();
  20.        
  21.         return (navesDestruidas);
  22.        
  23.     }
  24.    
  25.     private void avanzarHastaContenedor(){
  26.    
  27.     while ((radar.escanearSur() == Espectro.VACIO) && distanciaMaxima > 0){
  28.        
  29.         naveAlfa.avanzarAlSur();
  30.         distanciaMaxima--;
  31.     }
  32.    
  33.     }
  34.    
  35.     private void esquivarContenedor(){
  36.        
  37.         if (distanciaMaxima >= 2){
  38.        
  39.         naveAlfa.avanzarAlEste();
  40.         naveAlfa.avanzarAlSur();
  41.         distanciaMaxima = distanciaMaxima - 2;
  42.        
  43.         }
  44.        
  45.     }
  46.    
  47.     private void irHastaAsteroides(){
  48.        
  49.         while (distanciaMaxima >= 0 && radar.escanearEste() == Espectro.VACIO){
  50.            
  51.             naveAlfa.avanzarAlEste();
  52.             distanciaMaxima--;
  53.            
  54.         }
  55.     }
  56.    
  57.     private void destruirNavesEnemigas(){
  58.        
  59.         while (distanciaMaxima >= 0 && radar.escanearSur() == Espectro.VACIO){
  60.            
  61.             if (radar.escanearEste() == Espectro.NAVE){
  62.                
  63.                  while (radar.escanearEste() == Espectro.NAVE){
  64.                      
  65.                      naveAlfa.atacarAlEste();
  66.                  }
  67.                  
  68.                  navesDestruidas++;
  69.             }
  70.            
  71.             naveAlfa.avanzarAlSur();
  72.             distanciaMaxima--;
  73.            
  74.         }
  75.        
  76.     }
  77.    
  78.  
  79. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement