]> git.lizzy.rs Git - minetest.git/blobdiff - src/gamedef.h
Fix and tune stars
[minetest.git] / src / gamedef.h
index 79f5d188e304199269bda07c9bf7c0936e3ae708..10ab0b0bcfb57e4ecd9cc71516366ca81302d950 100644 (file)
@@ -20,10 +20,12 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 #ifndef GAMEDEF_HEADER
 #define GAMEDEF_HEADER
 
-class IToolDefManager;
+#include <string>
+#include "irrlichttypes.h"
+
+class IItemDefManager;
 class INodeDefManager;
-//class IItemDefManager; //TODO
-// Mineral too?
+class ICraftDefManager;
 class ITextureSource;
 
 /*
@@ -36,17 +38,21 @@ class IGameDef
 public:
        // These are thread-safe IF they are not edited while running threads.
        // Thus, first they are set up and then they are only read.
-       virtual IToolDefManager* getToolDefManager()=0;
+       virtual IItemDefManager* getItemDefManager()=0;
        virtual INodeDefManager* getNodeDefManager()=0;
-       //virtual IItemDefManager* getItemDefManager()=0;
+       virtual ICraftDefManager* getCraftDefManager()=0;
 
        // This is always thread-safe, but referencing the irrlicht texture
        // pointers in other threads than main thread will make things explode.
        virtual ITextureSource* getTextureSource()=0;
+       
+       // Used for keeping track of names/ids of unknown nodes
+       virtual u16 allocateUnknownNodeId(const std::string &name)=0;
 
        // Shorthands
-       IToolDefManager* tdef(){return getToolDefManager();}
+       IItemDefManager* idef(){return getItemDefManager();}
        INodeDefManager* ndef(){return getNodeDefManager();}
+       ICraftDefManager* cdef(){return getCraftDefManager();}
        ITextureSource* tsrc(){return getTextureSource();}
 };