#pragma once #include #include #include #include "typedefs.hpp" #include "io/fwd.hpp" class Hud; class WorldRenderer; namespace gui { class UINode; using PageLoaderFunc = std::function(const std::string&)>; } namespace scripting { extern Hud *hud; extern WorldRenderer* renderer; void on_frontend_init(Hud* hud, WorldRenderer* renderer); void on_frontend_render(); void on_frontend_close(); /// @brief Load package-specific hud script /// @param env environment id /// @param packid content-pack id /// @param file script file path /// @param fileName script file path using the engine format void load_hud_script( const scriptenv& env, const std::string& packid, const io::path& file, const std::string& fileName ); gui::PageLoaderFunc create_page_loader(); }