Pntalla de tutorial añadida

parent 09abd8d2
......@@ -10,6 +10,7 @@ PantallaPrincipal2 pant2;
PantallaInicio pant3;
PantallaFecha pant4;
PantallaCama pant5;
PantallaTutorial pant6;
vector<shared_ptr<Pantalla>> colPantallas={
......@@ -17,7 +18,8 @@ vector<shared_ptr<Pantalla>> colPantallas={
make_shared<PantallaPrincipal2>(pant2),
make_shared<PantallaInicio>(pant3),
make_shared<PantallaFecha>(pant4),
make_shared<PantallaCama>(pant5)
make_shared<PantallaCama>(pant5),
make_shared<PantallaTutorial>(pant6)
};
shared_ptr<PantallaPrincipal> getPantalla1(){
......@@ -32,3 +34,6 @@ shared_ptr<PantallaFecha> getPantallaFecha(){
shared_ptr<PantallaCama> getPantallaCama(){
return std::dynamic_pointer_cast<PantallaCama>(colPantallas[4]);
}
shared_ptr<PantallaTutorial> getPantallaTutorial(){
return std::dynamic_pointer_cast<PantallaTutorial>(colPantallas[5]);
}
......@@ -7,6 +7,7 @@
#include "PantallaPrincipal2.h"
#include "PantallaFecha.h"
#include "PantallaCama.h"
#include "PantallaTutorial.h"
using namespace std;
......@@ -17,3 +18,4 @@ shared_ptr<PantallaPrincipal> getPantalla1();
shared_ptr<PantallaPrincipal2> getPantalla2();
shared_ptr<PantallaFecha> getPantallaFecha();
shared_ptr<PantallaCama> getPantallaCama();
shared_ptr<PantallaTutorial> getPantallaTutorial();
No preview for this file type
......@@ -28,8 +28,7 @@ PantallaInicio::PantallaInicio() :
void PantallaInicio::iniciar(Handle &handle) {
Cancion.pausar();
handle.reemplazamePor(colPantallas[0]);
historiaPrincipal.pasarDeEstadoA(Historia::Secuencia::PreInicio, Historia::Secuencia::Inicio);
handle.reemplazamePor(colPantallas[5]);
}
void PantallaInicio::manejarEntrada(Handle &handle) {
......
#include "ColeccionPantallas.h"
#include "PantallaTutorial.h"
#include "Video.h"
#include "Historia.h"
PantallaTutorial::PantallaTutorial() :
Fondo1("assets/pizarra.jpeg"),
colisionCambioPantalla(1500,-1500,2000,1300),
sonidoBoton("assets/SonidoClicar.wav",false)
{
Sprite sprIniciarPartida("assets/empezar.png");
Hitbox hitIniciarPartida(997,400,898,699);
Objeto IniciarPartida(sprIniciarPartida,sprIniciarPartida,sprIniciarPartida,hitIniciarPartida,400,700,600,200,normal,nullptr);
objetos.push_back(IniciarPartida);
colisionesInterfaz.push_back(hitIniciarPartida);
}
void PantallaTutorial::iniciar(Handle &handle) {
handle.reemplazamePor(colPantallas[0]);
historiaPrincipal.pasarDeEstadoA(Historia::Secuencia::PreInicio, Historia::Secuencia::Inicio);
}
void PantallaTutorial::manejarEntrada(Handle &handle) {
SDL_Event event;
while (SDL_PollEvent(&event)) {
switch (event.type) {
case SDL_KEYDOWN:
switch (event.key.keysym.sym) {
case 13:
sonidoBoton.play();
iniciar(handle);
break;
}
break;
case SDL_MOUSEBUTTONDOWN:
{
int xRaton=0;
int zRaton=0;
SDL_GetMouseState(&xRaton, &zRaton);
xRaton*=(1920.0/handle.getTamX());
zRaton*=(1080.0/handle.getTamY());
cout<<"Raton x "<<xRaton<<" Raton z "<<zRaton<<endl;
if(colisionesInterfaz[0].colisiona(xRaton, zRaton) ){
sonidoBoton.play();
iniciar(handle);
}
}
break;
case SDL_QUIT:
handle.removeAll();
}
}
}
void PantallaTutorial::renderizar(SDL_Renderer *renderer, int tamx, int tamy) {
Fondo1.renderizar(renderer, 0, 0,1920,1080, tamx, tamy);
for(int i=0;i<objetos.size();i++){
objetos[i].renderizar(renderer, 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 PantallaTutorial : public Pantalla {
vector<Objeto> objetos;
vector<Hitbox> colisionesActivas;
vector<Hitbox> colisionesPasivas;
vector<Hitbox> colisionesInterfaz;
Hitbox colisionCambioPantalla;
Sprite Fondo1;
Sonido sonidoBoton;
void iniciar(Handle &);
public:
PantallaTutorial();
void manejarEntrada(Handle &) override;
void renderizar(SDL_Renderer *, int tamx, int tamy) override;
bool transparente() override {
return false;
};
};
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
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
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