48 lines
1.1 KiB
C++
48 lines
1.1 KiB
C++
#pragma once
|
|
|
|
#include <SDL2/SDL.h>
|
|
class Screen;
|
|
class Asset;
|
|
class Input;
|
|
class Texture;
|
|
class Sprite;
|
|
|
|
enum class OnScreenHelpStatus
|
|
{
|
|
hidden,
|
|
showing,
|
|
entering,
|
|
exitting,
|
|
};
|
|
|
|
// Classe on_screen_help
|
|
class OnScreenHelp
|
|
{
|
|
private:
|
|
// [SINGLETON] Objeto screen privado para Don Melitón
|
|
static OnScreenHelp *onScreenHelp;
|
|
|
|
Screen *screen; // Objeto encargado de dibujar en pantalla
|
|
Asset *asset; // Objeto con los ficheros de recursos
|
|
Input *input; // Objeto pata gestionar la entrada
|
|
|
|
SDL_Texture *texture; // Textura donde dibujar
|
|
|
|
// [SINGLETON] Ahora el constructor y el destructor son privados, para no poder crear objetos screen desde fuera
|
|
|
|
// Constructor
|
|
OnScreenHelp();
|
|
|
|
// Destructor
|
|
~OnScreenHelp();
|
|
|
|
public:
|
|
// [SINGLETON] Crearemos el objeto screen con esta función estática
|
|
static void init();
|
|
|
|
// [SINGLETON] Destruiremos el objeto screen con esta función estática
|
|
static void destroy();
|
|
|
|
// [SINGLETON] Con este método obtenemos el objeto screen y podemos trabajar con él
|
|
static OnScreenHelp *get();
|
|
}; |