TP Grupo 7: Presentación Algoritmos y Programación III (75.07) Cursos Fontela Primer Cuatrimestre...
-
Upload
alfonso-merced -
Category
Documents
-
view
14 -
download
1
Transcript of TP Grupo 7: Presentación Algoritmos y Programación III (75.07) Cursos Fontela Primer Cuatrimestre...
![Page 1: TP Grupo 7: Presentación Algoritmos y Programación III (75.07) Cursos Fontela Primer Cuatrimestre de 2009.](https://reader033.fdocuments.mx/reader033/viewer/2022061301/54d6d9804979596c658b5525/html5/thumbnails/1.jpg)
TP Grupo 7: Presentación
Algoritmos y Programación III (75.07)
Cursos FontelaPrimer Cuatrimestre de 2009
![Page 2: TP Grupo 7: Presentación Algoritmos y Programación III (75.07) Cursos Fontela Primer Cuatrimestre de 2009.](https://reader033.fdocuments.mx/reader033/viewer/2022061301/54d6d9804979596c658b5525/html5/thumbnails/2.jpg)
Modelo
![Page 3: TP Grupo 7: Presentación Algoritmos y Programación III (75.07) Cursos Fontela Primer Cuatrimestre de 2009.](https://reader033.fdocuments.mx/reader033/viewer/2022061301/54d6d9804979596c658b5525/html5/thumbnails/3.jpg)
![Page 4: TP Grupo 7: Presentación Algoritmos y Programación III (75.07) Cursos Fontela Primer Cuatrimestre de 2009.](https://reader033.fdocuments.mx/reader033/viewer/2022061301/54d6d9804979596c658b5525/html5/thumbnails/4.jpg)
![Page 5: TP Grupo 7: Presentación Algoritmos y Programación III (75.07) Cursos Fontela Primer Cuatrimestre de 2009.](https://reader033.fdocuments.mx/reader033/viewer/2022061301/54d6d9804979596c658b5525/html5/thumbnails/5.jpg)
![Page 6: TP Grupo 7: Presentación Algoritmos y Programación III (75.07) Cursos Fontela Primer Cuatrimestre de 2009.](https://reader033.fdocuments.mx/reader033/viewer/2022061301/54d6d9804979596c658b5525/html5/thumbnails/6.jpg)
Vista
![Page 7: TP Grupo 7: Presentación Algoritmos y Programación III (75.07) Cursos Fontela Primer Cuatrimestre de 2009.](https://reader033.fdocuments.mx/reader033/viewer/2022061301/54d6d9804979596c658b5525/html5/thumbnails/7.jpg)
![Page 8: TP Grupo 7: Presentación Algoritmos y Programación III (75.07) Cursos Fontela Primer Cuatrimestre de 2009.](https://reader033.fdocuments.mx/reader033/viewer/2022061301/54d6d9804979596c658b5525/html5/thumbnails/8.jpg)
import ar.uba.fi.algo3.titiritero.Dibujable;import ar.uba.fi.algo3.titiritero.vista.SubVista;
public class JuegoSubVista extends SubVista {
private Juego juego;public JuegoSubVista(Juego juego) {
super(0, 0, 580, 800);setColor(Color.GREEN);this.juego = juego;
}protected void cargarDibujablesDeLaSubVista() {
Nivel nivel = juego.getNivel();ListIterator iterator = nivel.getCamino().iterator();while (iterator.hasNext()){
agregarDibujable(new VistaPeldañoDelCamino((Posicion) iterator.next()));
}for (Object atacanteObject : nivel.getAtacantes()){
agregarDibujable(new VistaElemento((ElementoUbicableEnTerreno) atacanteObject));
}for (Object enemigoObject : nivel.getEnemigos()){
agregarDibujable(new VistaElemento((ElementoUbicableEnTerreno) enemigoObject));
}}
}
![Page 9: TP Grupo 7: Presentación Algoritmos y Programación III (75.07) Cursos Fontela Primer Cuatrimestre de 2009.](https://reader033.fdocuments.mx/reader033/viewer/2022061301/54d6d9804979596c658b5525/html5/thumbnails/9.jpg)
Controlador
![Page 10: TP Grupo 7: Presentación Algoritmos y Programación III (75.07) Cursos Fontela Primer Cuatrimestre de 2009.](https://reader033.fdocuments.mx/reader033/viewer/2022061301/54d6d9804979596c658b5525/html5/thumbnails/10.jpg)
![Page 11: TP Grupo 7: Presentación Algoritmos y Programación III (75.07) Cursos Fontela Primer Cuatrimestre de 2009.](https://reader033.fdocuments.mx/reader033/viewer/2022061301/54d6d9804979596c658b5525/html5/thumbnails/11.jpg)
import componentes.Juego;import enemigo.EnemigoFactory;
import ar.uba.fi.algo3.titiritero.ObjetoVivo;
public class JuegoVivo implements ObjetoVivo {private Juego juego;private static final int CICLOS_HASTA_AGREGAR_ENEMIGO = 20;private int cantCiclosPasaron;
public JuegoVivo(Juego juego){this.juego = juego;cantCiclosPasaron = 10;
}
public void vivir() {if (cantCiclosPasaron == CICLOS_HASTA_AGREGAR_ENEMIGO){
juego.getNivel().agregarEnemigo(EnemigoFactory.generarEnemigo(juego));cantCiclosPasaron = 0;
}juego.continuar();cantCiclosPasaron++;
}}
![Page 12: TP Grupo 7: Presentación Algoritmos y Programación III (75.07) Cursos Fontela Primer Cuatrimestre de 2009.](https://reader033.fdocuments.mx/reader033/viewer/2022061301/54d6d9804979596c658b5525/html5/thumbnails/12.jpg)
Programa Principal(Pequeño ejemplo)
public static void main(String[] args) throws FileNotFoundException {
ControladorJuego controlador = new ControladorJuego();Juego juego = new Juego("Matata");
Ventana ventana = new VentanaPrincipal(controlador);controlador.setSuperficieDeDibujo(ventana);ventana.setVisible(true);
Nivel nivel = juego.getNivel();
Torre torreBlanca = new TorreBlanca(new Posicion(5,2));Obstaculo pegote = new Gelatina(new Posicion(5,4));
nivel.agregarAtacante(torreBlanca);nivel.agregarAtacante(pegote);nivel.agregarAtacante(torreBlanca2);
![Page 13: TP Grupo 7: Presentación Algoritmos y Programación III (75.07) Cursos Fontela Primer Cuatrimestre de 2009.](https://reader033.fdocuments.mx/reader033/viewer/2022061301/54d6d9804979596c658b5525/html5/thumbnails/13.jpg)
//juego.
//Agrego las vistas del juegoJugadorSubVista vistaJugador = new JugadorSubVista(juego.getJugador());
controlador.agregarDibujable(vistaJugador);controlador.agregarDibujable(new JuegoSubVista(juego));controlador.agregarDibujable(new MenuSubVista());
//Agrego al objeto vivocontrolador.agregarObjetoVivo(new JuegoVivo(juego));
controlador.agregarObjetoVivo(new JuegoVivo(juego));controlador.setIntervaloSimulacion(50);try {
controlador.comenzar();} catch (JugadorSeMurioException jsme){
controlador.detener();}
}
![Page 14: TP Grupo 7: Presentación Algoritmos y Programación III (75.07) Cursos Fontela Primer Cuatrimestre de 2009.](https://reader033.fdocuments.mx/reader033/viewer/2022061301/54d6d9804979596c658b5525/html5/thumbnails/14.jpg)
FIN
MUCHAS GRACIAS