diff options
-rw-r--r-- | Icons.cpp | 15 | ||||
-rw-r--r-- | Icons.h | 3 |
2 files changed, 9 insertions, 9 deletions
@@ -76,18 +76,17 @@ Icons::reset() Texture2D Icons::find(const long int type) { - const auto existing = m_cache.find(type); + const auto search = FILENAMES.find(type); + std::string filename = "resources/wreck.png"; + if (search != FILENAMES.end()) + filename = search->second; + const auto existing = m_cache.find(filename); if (existing != m_cache.end()) { return existing->second; } else { - Texture2D texture; - const auto filename = FILENAMES.find(type); - if (filename != FILENAMES.end()) - texture = LoadTexture(filename->second.data()); - else - texture = LoadTexture("resources/wreck.png"); - m_cache[type] = texture; + auto texture = LoadTexture(filename.data()); + m_cache[filename] = texture; return texture; } } @@ -1,5 +1,6 @@ #pragma once +#include <string> #include <unordered_map> #include <raylib.h> @@ -13,5 +14,5 @@ public: void reset(); Texture2D find(long int type); private: - std::unordered_map<long int, Texture2D> m_cache; + std::unordered_map<std::string, Texture2D> m_cache; }; |