Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* Nota 23/09/2014: se consideran las Naves a destruir como Bases a destruir
- * debido a que se desconoce cómo insertar naves enemigas en el tablero.
- */5
- class G4E5MisionEjercicio2 {
- /*
- * Utiliza una Nave, anclada en la Base, para destruir todas las Naves
- * enemigas que se encuentren en el Tablero.
- */
- Nave naveSigma = new Nave();
- Radar radarSigma= naveSigma.obtenerRadar();
- /*
- * El constructor opera sobre la nave naveSygma: la hace despegar y avanzar al norte.
- */
- G4E5MisionEjercicio2 () {
- naveSigma.despegar();
- naveSigma.avanzarAlNorte();
- }
- void ejecutar() {
- AvanzarAlNorteHastaLineaDeAsteroides (naveSigma, radarSigma);
- AvanzarAlEsteHastaContenedor (naveSigma, radarSigma);
- AvanzarAlSurHastaLineaDeAsteroides (naveSigma, radarSigma);
- AvanzarAlEsteDestruyendoBases (naveSigma, radarSigma);
- AvanzarAlOesteDestruyendoBases (naveSigma, radarSigma);
- }
- void AvanzarAlNorteHastaLineaDeAsteroides (Nave naveX, Radar radarX){
- while (radarX.escanearNorte() != Espectro.ASTEROIDE){
- naveX.avanzarAlNorte();
- }
- }
- void AvanzarAlEsteHastaContenedor (Nave naveX, Radar radarX){
- while (radarX.escanearNorte() != Espectro.CONTENEDOR){
- naveX.avanzarAlEste();
- }
- }
- void AvanzarAlSurHastaLineaDeAsteroides (Nave naveX, Radar radarX){
- while (radarX.escanearSur() == Espectro.VACIO){
- naveX.avanzarAlSur();
- }
- }
- void AvanzarAlEsteDestruyendoBases (Nave naveX, Radar radarX){
- while (radarX.escanearEste() == Espectro.VACIO){
- while (radarX.escanearSur() == Espectro.BASE) {
- naveX.atacarAlSur();
- }
- naveX.avanzarAlEste();
- }
- }
- void AvanzarAlOesteDestruyendoBases (Nave naveX, Radar radarX){
- while (radarX.escanearOeste() == Espectro.VACIO){
- while (radarX.escanearSur() == Espectro.BASE) {
- naveX.atacarAlSur();
- }
- naveX.avanzarAlOeste();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment