aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/iirrlichtwrapper.h55
-rw-r--r--src/irrlichtwrapper.h3
-rw-r--r--src/mapnode.cpp2
-rw-r--r--src/mapnode.h4
-rw-r--r--src/mineral.cpp4
-rw-r--r--src/mineral.h6
-rw-r--r--src/servermain.cpp7
7 files changed, 70 insertions, 11 deletions
diff --git a/src/iirrlichtwrapper.h b/src/iirrlichtwrapper.h
new file mode 100644
index 000000000..47ae21ee9
--- /dev/null
+++ b/src/iirrlichtwrapper.h
@@ -0,0 +1,55 @@
+/*
+Minetest-c55
+Copyright (C) 2010 celeron55, Perttu Ahola <celeron55@gmail.com>
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License along
+with this program; if not, write to the Free Software Foundation, Inc.,
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+*/
+
+#ifndef IIRRLICHTWRAPPER_HEADER
+#define IIRRLICHTWRAPPER_HEADER
+
+#include "common_irrlicht.h"
+
+/*
+ IrrlichtWrapper prototype.
+
+ Server supplies this as a dummy wrapper.
+*/
+
+class IIrrlichtWrapper
+{
+public:
+ IIrrlichtWrapper()
+ {
+ }
+ virtual ~IIrrlichtWrapper()
+ {
+ }
+
+ virtual u32 getTime()
+ {
+ return 0;
+ }
+
+ virtual textureid_t getTextureId(const std::string &name){ return 0; }
+ virtual std::string getTextureName(textureid_t id){ return ""; }
+ virtual video::ITexture* getTexture(const std::string &name){ return NULL; }
+ virtual video::ITexture* getTexture(const TextureSpec &spec){ return NULL; }
+
+private:
+};
+
+#endif
+
diff --git a/src/irrlichtwrapper.h b/src/irrlichtwrapper.h
index a695bd1e4..225ae3402 100644
--- a/src/irrlichtwrapper.h
+++ b/src/irrlichtwrapper.h
@@ -25,6 +25,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "debug.h"
#include "utility.h"
#include "texture.h"
+#include "iirrlichtwrapper.h"
#include <jmutex.h>
#include <jmutexautolock.h>
@@ -125,7 +126,7 @@ private:
Also caches texture specification strings to ids and textures.
*/
-class IrrlichtWrapper
+class IrrlichtWrapper : public IIrrlichtWrapper
{
public:
/*
diff --git a/src/mapnode.cpp b/src/mapnode.cpp
index d197454fe..b2d579d5d 100644
--- a/src/mapnode.cpp
+++ b/src/mapnode.cpp
@@ -36,7 +36,7 @@ ContentFeatures & content_features(u8 i)
return g_content_features[i];
}
-void init_mapnode(IrrlichtWrapper *irrlicht)
+void init_mapnode(IIrrlichtWrapper *irrlicht)
{
u8 i;
ContentFeatures *f = NULL;
diff --git a/src/mapnode.h b/src/mapnode.h
index 0c52681be..07153f934 100644
--- a/src/mapnode.h
+++ b/src/mapnode.h
@@ -27,7 +27,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "exceptions.h"
#include "serialization.h"
#include "tile.h"
-#include "irrlichtwrapper.h"
+#include "iirrlichtwrapper.h"
/*
Initializes all kind of stuff in here.
@@ -35,7 +35,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
irrlicht: Used for getting texture ids.
*/
-void init_mapnode(IrrlichtWrapper *irrlicht);
+void init_mapnode(IIrrlichtWrapper *irrlicht);
// Initializes g_content_inventory_texture_paths
void init_content_inventory_texture_paths();
diff --git a/src/mineral.cpp b/src/mineral.cpp
index 4f658db48..c333ae6f5 100644
--- a/src/mineral.cpp
+++ b/src/mineral.cpp
@@ -19,7 +19,6 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "mineral.h"
-#ifndef SERVER
const char *mineral_filenames[MINERAL_COUNT] =
{
@@ -30,7 +29,7 @@ const char *mineral_filenames[MINERAL_COUNT] =
textureid_t mineral_textures[MINERAL_COUNT] = {0};
-void init_mineral(IrrlichtWrapper *irrlicht)
+void init_mineral(IIrrlichtWrapper *irrlicht)
{
for(u32 i=0; i<MINERAL_COUNT; i++)
{
@@ -48,6 +47,5 @@ textureid_t mineral_block_texture(u8 mineral)
return mineral_textures[mineral];
}
-#endif
diff --git a/src/mineral.h b/src/mineral.h
index 6c10c2256..c663d9275 100644
--- a/src/mineral.h
+++ b/src/mineral.h
@@ -22,7 +22,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "inventory.h"
#include "texture.h"
-#include "irrlichtwrapper.h"
+#include "iirrlichtwrapper.h"
/*
Minerals
@@ -31,10 +31,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
type param.
*/
-#ifndef SERVER
// Caches textures
-void init_mineral(IrrlichtWrapper *irrlicht);
-#endif
+void init_mineral(IIrrlichtWrapper *irrlicht);
#define MINERAL_NONE 0
#define MINERAL_COAL 1
diff --git a/src/servermain.cpp b/src/servermain.cpp
index d5be5b8ac..5409fcfb3 100644
--- a/src/servermain.cpp
+++ b/src/servermain.cpp
@@ -68,6 +68,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "porting.h"
#include "materials.h"
#include "config.h"
+#include "mineral.h"
/*
Settings.
@@ -255,7 +256,13 @@ int main(int argc, char *argv[])
{
run_tests();
}
+
+ // Initialize stuff
+ IIrrlichtWrapper irrlicht; // Dummy
+ init_mapnode(&irrlicht);
+ init_mineral(&irrlicht);
+
// Read map parameters from settings
HMParams hm_params;