X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fapp%2FAssets.hpp;h=941fa1ba51966f9b45617adf44dabe9437707a84;hb=a26ca06878d45d3ce77cbc28b574f2553e121944;hp=4953ddbfcfd75fee41844cdad681b20496d1e0a4;hpb=7c2a8b8285278b8a3077b311d82f05ea0463a96e;p=blank.git diff --git a/src/app/Assets.hpp b/src/app/Assets.hpp index 4953ddb..941fa1b 100644 --- a/src/app/Assets.hpp +++ b/src/app/Assets.hpp @@ -1,25 +1,53 @@ #ifndef BLANK_APP_ASSETS_HPP_ #define BLANK_APP_ASSETS_HPP_ +#include "../graphics/Font.hpp" + #include namespace blank { -class Font; +class ArrayTexture; +class BlockTypeRegistry; +class CubeMap; +class ShapeRegistry; class Sound; +class Texture; +class TextureIndex; -class Assets { +class AssetLoader { public: - explicit Assets(const std::string &base); - + explicit AssetLoader(const std::string &base); + + void LoadBlockTypes( + const std::string &set_name, + BlockTypeRegistry &, + TextureIndex &, + const ShapeRegistry &) const; + CubeMap LoadCubeMap(const std::string &name) const; Font LoadFont(const std::string &name, int size) const; + void LoadShapes(const std::string &set_name, ShapeRegistry &) const; Sound LoadSound(const std::string &name) const; + Texture LoadTexture(const std::string &name) const; + void LoadTexture(const std::string &name, ArrayTexture &, int layer) const; + void LoadTextures(const TextureIndex &, ArrayTexture &) const; private: std::string fonts; std::string sounds; + std::string textures; + std::string data; + +}; + +struct Assets { + + Font large_ui_font; + Font small_ui_font; + + Assets(const AssetLoader &); };