Commit 108476bb by Jaime de la Chica Bergillos

Añadido elementos estables

parents df90008c d194bf9c
...@@ -11,6 +11,7 @@ PantallaInicio pant3; ...@@ -11,6 +11,7 @@ PantallaInicio pant3;
PantallaFecha pant4; PantallaFecha pant4;
PantallaCama pant5; PantallaCama pant5;
PantallaTutorial pant6; PantallaTutorial pant6;
PantallaGracias pant7;
vector<shared_ptr<Pantalla>> colPantallas={ vector<shared_ptr<Pantalla>> colPantallas={
...@@ -19,7 +20,8 @@ vector<shared_ptr<Pantalla>> colPantallas={ ...@@ -19,7 +20,8 @@ vector<shared_ptr<Pantalla>> colPantallas={
make_shared<PantallaInicio>(pant3), make_shared<PantallaInicio>(pant3),
make_shared<PantallaFecha>(pant4), make_shared<PantallaFecha>(pant4),
make_shared<PantallaCama>(pant5), make_shared<PantallaCama>(pant5),
make_shared<PantallaTutorial>(pant6) make_shared<PantallaTutorial>(pant6),
make_shared<PantallaGracias>(pant7)
}; };
shared_ptr<PantallaPrincipal> getPantalla1(){ shared_ptr<PantallaPrincipal> getPantalla1(){
...@@ -37,3 +39,6 @@ shared_ptr<PantallaCama> getPantallaCama(){ ...@@ -37,3 +39,6 @@ shared_ptr<PantallaCama> getPantallaCama(){
shared_ptr<PantallaTutorial> getPantallaTutorial(){ shared_ptr<PantallaTutorial> getPantallaTutorial(){
return std::dynamic_pointer_cast<PantallaTutorial>(colPantallas[5]); return std::dynamic_pointer_cast<PantallaTutorial>(colPantallas[5]);
} }
shared_ptr<PantallaGracias> getPantallaGracias(){
return std::dynamic_pointer_cast<PantallaGracias>(colPantallas[6]);
}
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
#include "PantallaFecha.h" #include "PantallaFecha.h"
#include "PantallaCama.h" #include "PantallaCama.h"
#include "PantallaTutorial.h" #include "PantallaTutorial.h"
#include "PantallaGracias.h"
using namespace std; using namespace std;
...@@ -19,3 +20,4 @@ shared_ptr<PantallaPrincipal2> getPantalla2(); ...@@ -19,3 +20,4 @@ shared_ptr<PantallaPrincipal2> getPantalla2();
shared_ptr<PantallaFecha> getPantallaFecha(); shared_ptr<PantallaFecha> getPantallaFecha();
shared_ptr<PantallaCama> getPantallaCama(); shared_ptr<PantallaCama> getPantallaCama();
shared_ptr<PantallaTutorial> getPantallaTutorial(); shared_ptr<PantallaTutorial> getPantallaTutorial();
shared_ptr<PantallaGracias> getPantallaGracias();
...@@ -153,6 +153,7 @@ static void iniciarCalendarioQuitado(){ ...@@ -153,6 +153,7 @@ static void iniciarCalendarioQuitado(){
auto funcionCartera=[](Objeto *Pantalla, Handle &handle) -> bool { auto funcionCartera=[](Objeto *Pantalla, Handle &handle) -> bool {
play_video("assets/AgapitoSacaCarne","es"); play_video("assets/AgapitoSacaCarne","es");
historiaPrincipal.soltarCartera=true;
getPantallaFecha()->setTieneCarne(true); getPantallaFecha()->setTieneCarne(true);
Agapito.setInventario(0) = generarObjetoCarne(); Agapito.setInventario(0) = generarObjetoCarne();
return false; return false;
...@@ -163,7 +164,14 @@ static void iniciarCalendarioQuitado(){ ...@@ -163,7 +164,14 @@ static void iniciarCalendarioQuitado(){
static void iniciarPuzlePantallaResuelto(){ static void iniciarPuzlePantallaResuelto(){
Agapito.unsetInventario(0); Agapito.unsetInventario(0);
if(!historiaPrincipal.soltarCartera){
play_video("assets/alternativo","es");
cout<<"Es alternativo"<<endl;
}else{
play_video("assets/colocarCaja","es"); play_video("assets/colocarCaja","es");
cout<<"Es normal"<<endl;
}
Sprite sprDestornillador("assets/destornillador.png"); Sprite sprDestornillador("assets/destornillador.png");
Hitbox hitDestornillador(0,0,0,0); Hitbox hitDestornillador(0,0,0,0);
Objeto destornillador(sprDestornillador,sprDestornillador,sprDestornillador,hitDestornillador,1200,700,50,70, normal,nullptr); Objeto destornillador(sprDestornillador,sprDestornillador,sprDestornillador,hitDestornillador,1200,700,50,70, normal,nullptr);
...@@ -269,6 +277,7 @@ static void iniciarLlaveVista(){ ...@@ -269,6 +277,7 @@ static void iniciarLlaveVista(){
((ObjetoCombinable*) Candado)->setPulsado(true); ((ObjetoCombinable*) Candado)->setPulsado(true);
if(((ObjetoCombinable&) Agapito.getInventario(0).value()).getPulsado()){ if(((ObjetoCombinable&) Agapito.getInventario(0).value()).getPulsado()){
play_video("assets/Salida","es"); play_video("assets/Salida","es");
handle.reemplazamePor(colPantallas[6]);
} }
} }
...@@ -329,6 +338,8 @@ static void iniciarLlaveConseguida(){ ...@@ -329,6 +338,8 @@ static void iniciarLlaveConseguida(){
((ObjetoCombinable*) Llave)->setPulsado(true); ((ObjetoCombinable*) Llave)->setPulsado(true);
if(((ObjetoCombinable&) Agapito.getInventario(1).value()).getPulsado()){ if(((ObjetoCombinable&) Agapito.getInventario(1).value()).getPulsado()){
play_video("assets/Salida","es"); play_video("assets/Salida","es");
handle.reemplazamePor(colPantallas[6]);
} }
return false; return false;
}; };
......
...@@ -24,10 +24,12 @@ class Historia{ ...@@ -24,10 +24,12 @@ class Historia{
void limpiarEstado(); void limpiarEstado();
void siguienteEstado(Secuencia estado); void siguienteEstado(Secuencia estado);
public: public:
Secuencia getEstadoActual(){return estadoActual;} Secuencia getEstadoActual(){return estadoActual;}
void pasarDeEstadoA(Secuencia estadoAnterior, Secuencia estadoPosterior); void pasarDeEstadoA(Secuencia estadoAnterior, Secuencia estadoPosterior);
Historia(); Historia();
bool soltarCartera=false;
}; };
extern Historia historiaPrincipal; extern Historia historiaPrincipal;
#include "ColeccionPantallas.h"
#include "PantallaGracias.h"
#include "Video.h"
#include "Historia.h"
PantallaGracias::PantallaGracias() :
Fondo1("assets/gracias.jpeg")
{}
void PantallaGracias::manejarEntrada(Handle &handle) {
SDL_Event event;
while (SDL_PollEvent(&event)) {
if (event.type == SDL_QUIT) {
handle.removeAll();
}
}
}
void PantallaGracias::renderizar(SDL_Renderer *renderer, int tamx, int tamy) {
Fondo1.renderizar(renderer, 0, 0,1920,1080, tamx, tamy);
}
#pragma once
#include "GestorPantallas.h"
#include <vector>
#include "Objeto.h"
#include "Sprite.h"
#include "Texto.h"
#include "Fuente.h"
#include "Sonido.h"
class PantallaGracias : public Pantalla {
Sprite Fondo1;
void iniciar(Handle &);
public:
PantallaGracias();
void manejarEntrada(Handle &) override;
void renderizar(SDL_Renderer *, int tamx, int tamy) override;
bool transparente() override {
return false;
};
};
No preview for this file type
WEBVTT
1
00:00:04.500 --> 00:00:05.250
Esto...
2
00:00:05.500 --> 00:00:06.750
Estos subitulos...
3
00:00:06.750 --> 00:00:08.000
Son la monda lironda
CC = g++ CC = g++
CodeFiles = main.cpp Personaje.cpp Sprite.cpp Objeto.cpp Hitbox.cpp Texto.cpp GestorPantallas.cpp PantallaPrincipal.cpp PantallaPrincipal2.cpp ColeccionPantallas.cpp Video.cpp PantallaInicio.cpp PantallaMundo.cpp Sonido.cpp Historia.cpp PantallaFecha.cpp PantallaCama.cpp Mano.cpp PantallaTutorial.cpp CodeFiles = main.cpp Personaje.cpp Sprite.cpp Objeto.cpp Hitbox.cpp Texto.cpp GestorPantallas.cpp PantallaPrincipal.cpp PantallaPrincipal2.cpp ColeccionPantallas.cpp Video.cpp PantallaInicio.cpp PantallaMundo.cpp Sonido.cpp Historia.cpp PantallaFecha.cpp PantallaCama.cpp Mano.cpp PantallaTutorial.cpp PantallaGracias.cpp
bin = Executable bin = Executable
......
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