Se muestra el calendario antes de desaparecer

parent 387fd592
Showing with 53 additions and 12 deletions
No preview for this file type
......@@ -16,34 +16,58 @@ void Historia::limpiarEstado(){
}
};
static Objeto generarObjetoPantalla(bool (*funcion)(Objeto *)) {
Sprite sprPantalla("assets/pantalla.png");
Hitbox hitPantalla(300,200,500,-1000000000);
Objeto Pantalla(sprPantalla,sprPantalla,sprPantalla,hitPantalla,0,150,300,300, normal,funcion);
return Pantalla;
}
static Objeto generarObjetoCalendario() {
Sprite sprCalendario("assets/calendario.png");
Hitbox hitCalendario(-100000,-200000,-10000,-1000000000); // (Hitbox inacesible)
Objeto Calendario(sprCalendario,sprCalendario,sprCalendario,hitCalendario,400,150,150,250, normal,nullptr);
return Calendario;
}
static void iniciarInicio() {
Sprite sprPantalla("assets/pantalla.png");
Hitbox hitPantalla(300,200,500,-1000000000);
auto funcionPantalla=[](Objeto *Pantalla)->bool{
play_video("assets/MiedoCalendario1","es");
historiaPrincipal.pasarDeEstadoA(Historia::Secuencia::Inicio, Historia::Secuencia::CalendarioVisto);
return false;
};
Objeto Pantalla = generarObjetoPantalla(funcionPantalla);
auto funcionPantalla=[](Objeto *Pantalla)->bool{
play_video("assets/MiedoCalendario1","es");
historiaPrincipal.pasarDeEstadoA(Historia::Secuencia::Inicio, Historia::Secuencia::CalendarioVisto);
return false;
};
Objeto Calendario = generarObjetoCalendario();
Objeto Pantalla(sprPantalla,sprPantalla,sprPantalla,hitPantalla,0,100,400,400, normal,funcionPantalla);
getPantalla1()->anadirObjeto(Pantalla);
getPantalla1()->anadirObjeto(Pantalla);
getPantalla1()->anadirObjeto(Calendario);
}
static void iniciarCalendarioVisto(){
Sprite sprPantalla("assets/pantalla.png");
Hitbox hitPantalla(300,200,500,-1000000);
auto funcionPantalla=[](Objeto *Pantalla)->bool{
play_video("assets/MiedoCalendario2","es");
return false;
};
Objeto Pantalla(sprPantalla,sprPantalla,sprPantalla,hitPantalla,0,100,400,400,normal,funcionPantalla);
Objeto Pantalla = generarObjetoPantalla(funcionPantalla);
Objeto Calendario = generarObjetoCalendario();
getPantalla1()->anadirObjeto(Pantalla);
getPantalla1()->anadirObjeto(Calendario);
auto funcionComprobarPantallaMinimizada = [] (Handle &handle) -> bool {
std::cout << "Calling hook" << std::endl;
......@@ -60,6 +84,22 @@ static void iniciarCalendarioVisto(){
}
static void iniciarCalendarioQuitado(){
auto funcionPantalla=[](Objeto *Pantalla)->bool{
// TODO
return false;
};
Objeto Pantalla = generarObjetoPantalla(funcionPantalla);
getPantalla1()->anadirObjeto(Pantalla);
}
void Historia::siguienteEstado(Secuencia estado){
switch (estado){
case Inicio:
......@@ -71,6 +111,7 @@ void Historia::siguienteEstado(Secuencia estado){
break;
case CalendarioQuitado:
iniciarCalendarioQuitado();
break;
case PuzlePantallaResuelto:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment