Streamlineado la experiencia haciendola mas mundo cerrado lineal.

(Solo se puede mirar debajo de la cama una vez se ha visto la llave)
parent d6bf7c33
No preview for this file type
......@@ -221,6 +221,31 @@ static void iniciarCajaAbierta(){
Hitbox hitLlave(300,200,500,-1000000000);
auto funcionLlave=[](Objeto *Cajon, Handle &handle)->bool{
play_video("assets/NoLlegoIman","es");
historiaPrincipal.pasarDeEstadoA(Historia::Secuencia::CajaAbierta, Historia::Secuencia::LlaveVista);
return false;
};
Objeto llave(sprLlave,sprLlave,sprLlave,hitLlave,100,150,50,50, normal,funcionLlave);
getPantalla1()->anadirObjeto(llave);
Sprite sprCandado("assets/candado.png");
Hitbox hitCandado(0, 0, 0, 0); // Trivial, solo esta en el inventario
auto funcionCandado=[](Objeto *Candado, Handle &handle)->bool{
return false;
};
ObjetoCombinable candado(sprCandado, sprCandado, sprCandado, hitCandado, 400, 150, 150, 150, normal, funcionCandado);
Agapito.setInventario(1) = candado;
}
static void iniciarLlaveVista(){
Objeto Puerta = generarObjetoPuerta();
getPantalla2()->anadirObjeto(Puerta);
Sprite sprLlave("assets/llaveHighlight.png");
Hitbox hitLlave(300,200,500,-1000000000);
auto funcionLlave=[](Objeto *Cajon, Handle &handle)->bool{
play_video("assets/NoLlegoIman","es");
return false;
};
Objeto llave(sprLlave,sprLlave,sprLlave,hitLlave,100,150,50,50, normal,funcionLlave);
......@@ -253,6 +278,7 @@ static void iniciarCajaAbierta(){
Agapito.setInventario(1) = candado;
}
static void iniciarCarteraRecuperada(){
Objeto Puerta = generarObjetoPuerta();
getPantalla2()->anadirObjeto(Puerta);
......@@ -338,6 +364,10 @@ void Historia::siguienteEstado(Secuencia estado){
iniciarCajaAbierta();
break;
case LlaveVista:
iniciarLlaveVista();
break;
case CarteraRecuperada:
iniciarCarteraRecuperada();
break;
......
......@@ -12,6 +12,7 @@ class Historia{
CajaVista,
CajonAbierto,
CajaAbierta,
LlaveVista,
CarteraRecuperada,
ImanSacado,
LlaveConseguida
......
......@@ -50,7 +50,7 @@ void PantallaCama::comprobarColisionesActivas() {
void PantallaCama::comprobarColisionesPasivas(Handle &handle) {
if(mano.comprobarColisionPasiva(hitCartera)){
cancion.pausar();
historiaPrincipal.pasarDeEstadoA(historiaPrincipal.CajaAbierta,historiaPrincipal.CarteraRecuperada);
historiaPrincipal.pasarDeEstadoA(historiaPrincipal.LlaveVista,historiaPrincipal.CarteraRecuperada);
handle.removeme();
}
......
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