#include "resource.h" #include // Constructor Resource::Resource(SDL_Renderer *renderer, Asset *asset, options_t *options) { this->renderer = renderer; this->asset = asset; this->options = options; } // Carga todos los recursos necesarios void Resource::loadTextures(std::vector list) { for (auto l : list) { texture_t t; t.name = l; t.texture = new Texture(renderer, asset->get(t.name)); textures.push_back(t); } } // Libera los recursos void Resource::freeTextures() { // Libera las texturas for (auto texture : textures) { texture.texture->unload(); delete texture.texture; } textures.clear(); } // Obtiene una textura Texture *Resource::getTexture(std::string name) { //std::cout << "BUSCANDO TEXTURA" << std::endl; for (auto texture : textures) { //std::cout << "COMPROBANDO: " << texture.name << " - " << name << std::endl; if (texture.name.find(name) != std::string::npos) { std::cout << "CACHE: " << name << std::endl; return texture.texture; } } std::cout << "NO ENCONTRADA: " << name << std::endl; return nullptr; }