#pragma once #include #include "asset.h" #include "texture.h" #include "utils.h" #include #include #ifndef RESOURCE_H #define RESOURCE_H struct texture_t { std::string name; // Nombre de la textura Texture *texture; // La textura }; class Resource { private: // Objetos y punteros SDL_Renderer *renderer; // El renderizador de la ventana Asset *asset; // Objeto con la ruta a todos los ficheros de recursos options_t *options; // Puntero a las opciones del juego // Variables std::vector textures; public: // Constructor Resource(SDL_Renderer *renderer, Asset *asset, options_t *options); // Carga todos los recursos necesarios void loadTextures(std::vector textureList); // Libera los recursos void freeTextures(); // Obtiene una textura Texture* getTexture(std::string name); }; #endif