private Evento conversacionEnCurso() { for (int i = 0; i < escenario.getEventos().size; i++) { Evento evento = escenario.getEventos().get(i); if (evento.esEscenaActivada()) { return evento; } } return null; }
/** * Inicializa el escenario, el mapa, las colisiones y el {@link Heroe} para el escenario del * nombre dado * * @param batch El {@link SpriteBatch} con el que se van a dibujar los actores * @param cam La {@link CamaraJuego} de la pantalla actual * @param nombre El nombre del escenario para referenciarlo en {@link D} */ public EscenarioHelper(SpriteBatch batch, CamaraJuego cam, String nombre) { camara = cam; mh = new MapaHelper(nombre); escenario = new EscenarioBase(mh.getWidth(), mh.getHeight(), true, batch); interfazHelper = new InterfazHelper(escenario); escenario.cargarEscenas("1"); escenario.cargarEventos(mh.eventosMapa()); escenario.setCamera(camara); // Agregar las colisiones del piso escenario.setPiso(new Poligono(mh.getVerticesPlataforma("piso"))); escenario.agregarActor("heroe", mh.getOrigenHeroe()); interfazHelper.agregarElementos(); }
/** * Manda a actuar a todos los {@link ObjetoActor}es del escenario y los dibuja. También calcula * las colisiones de los {@link Actor}es y dibuja las líneas de colisión * * @param delta Proviene de {@link Screen#render(float)} */ public void actuarDibujar(float delta) { // Dibujar Background mh.renderFondo(camara); // Dibujar mapa mh.renderMapa(camara); // Colisión escenario.colisionActores(); escenario.colisionAtaques(); escenario.colisionPociones(); escenario.colisionPiso(); // Actuar de todos los actores del escenario escenario.act(delta); // Eventos escenario.revisarEventos(camara, delta); // escenario.revisarEscena(); escenario.destruirAtaques(camara); escenario.acomodarActores(mh.getWidth()); escenario.acomodarHeroe(camara); // Debug líneas colisión if (isDibujarColision()) { escenario.dibujarLineasColision(camara); } // Dibujar los actores del escenario escenario.draw(); // Mover la cámara moverCamara(); }
public boolean getInterfazBloqueada() { return escenario.getInterfazBloqueada(); }
public void siguienteCuadroTexto() { Evento evento = conversacionEnCurso(); if (evento != null) { escenario.continuarConversacionActual(evento.getNombre()); } }
/** * Regresa al {@link Heroe} del escenario. * * @return El héroe. * @throws EscenarioSinHeroeException No hay {@link Heroe} en el {@link EscenarioBase}. */ public Heroe getHeroe() throws EscenarioSinHeroeException { return escenario.getHeroe(); }