#pragma once #include "ifdefs.h" #include "utils.h" #include "const.h" #include "sprite.h" #include "text.h" #include "jail_audio.h" #ifndef INSTRUCTIONS_H #define INSTRUCTIONS_H // Instructions class Instructions { private: LTexture *mItemTexture; // Textura con los graficos LTexture *mTextTexture; // Textura con los graficos SDL_Event *mEventHandler; // Manejador de eventos SDL_Renderer *mRenderer; // El renderizador de la ventana SDL_Texture *mBackbuffer; // Textura para usar como backbuffer Sprite *mSprite; // Sprite con la textura de las instrucciones std::string *mFileList; // Lista de ficheros std::string *mTextStrings; // Vector con los textos del juego Text *mText; // Objeto para escribir texto Uint16 mCounter; // Contador section_t mSection; // Estado del bucle principal para saber si continua o se sale Uint32 mTicks; // Contador de ticks para ajustar la velocidad del programa Uint8 mTicksSpeed; // Velocidad a la que se repiten los bucles del programa bool mManualQuit; // Indica si se quiere salir del modo manual // Carga los recursos bool loadMedia(); // Actualiza las variables void update(); // Pinta en pantalla void render(); // Inicializa las variables void init(); public: // Constructor Instructions(SDL_Renderer *renderer, std::string *fileList, std::string *textStrings); // Destructor ~Instructions(); // Bucle principal void run(Uint8 mode); }; #endif