aboutsummaryrefslogtreecommitdiff
path: root/src/client/client.h
diff options
context:
space:
mode:
authorLoic Blot <loic.blot@unix-experience.fr>2021-04-28 10:22:13 +0200
committerLoïc Blot <nerzhul@users.noreply.github.com>2021-05-03 19:49:19 +0200
commite34d28af9f4b779b7a137f0e4017e499266e1931 (patch)
tree211b2ab003594dbd334c5dd4370707362bd7bb81 /src/client/client.h
parentbc1888ff21d50eb21c8f4d381e5dcc8049f7e36c (diff)
downloadminetest-e34d28af9f4b779b7a137f0e4017e499266e1931.tar.gz
minetest-e34d28af9f4b779b7a137f0e4017e499266e1931.tar.bz2
minetest-e34d28af9f4b779b7a137f0e4017e499266e1931.zip
refacto: rendering engine singleton removal step 1 (filesystem)
Make the RenderingEngine filesystem member non accessible from everywhere This permits also to determine that some lua code has directly a logic to extract zip file. Move this logic inside client, it's not the lua stack role to perform a such complex operation Found also another irrlicht <1.8 compat code to remove
Diffstat (limited to 'src/client/client.h')
-rw-r--r--src/client/client.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/client/client.h b/src/client/client.h
index 2dba1506e..bcb7d6b09 100644
--- a/src/client/client.h
+++ b/src/client/client.h
@@ -45,6 +45,7 @@ struct ClientEvent;
struct MeshMakeData;
struct ChatMessage;
class MapBlockMesh;
+class RenderingEngine;
class IWritableTextureSource;
class IWritableShaderSource;
class IWritableItemDefManager;
@@ -123,6 +124,7 @@ public:
NodeDefManager *nodedef,
ISoundManager *sound,
MtEventManager *event,
+ RenderingEngine *rendering_engine,
bool ipv6,
GameUI *game_ui
);
@@ -379,6 +381,9 @@ public:
// Insert a media file appropriately into the appropriate manager
bool loadMedia(const std::string &data, const std::string &filename,
bool from_media_push = false);
+
+ bool extractZipFile(const char *filename, const std::string &destination);
+
// Send a request for conventional media transfer
void request_media(const std::vector<std::string> &file_requests);
@@ -469,6 +474,7 @@ private:
NodeDefManager *m_nodedef;
ISoundManager *m_sound;
MtEventManager *m_event;
+ RenderingEngine *m_rendering_engine;
MeshUpdateThread m_mesh_update_thread;