summaryrefslogtreecommitdiff
path: root/src/server.h
diff options
context:
space:
mode:
authorKahrl <kahrl@gmx.net>2012-01-12 06:10:39 +0100
committerKahrl <kahrl@gmx.net>2012-01-12 06:10:39 +0100
commit6a76c226e10e92c3e3339096f07f8ab065e2098b (patch)
tree396d9083f5f76ebb5ba96df113ba68046c2487df /src/server.h
parent569156b01302ea4ba45d11ff5524b62dbc6a9aa0 (diff)
downloadminetest-6a76c226e10e92c3e3339096f07f8ab065e2098b.tar.gz
minetest-6a76c226e10e92c3e3339096f07f8ab065e2098b.tar.bz2
minetest-6a76c226e10e92c3e3339096f07f8ab065e2098b.zip
The huge item definition and item namespace unification patch (itemdef), see http://c55.me/minetest/wiki/doku.php?id=changes:itemdef
Diffstat (limited to 'src/server.h')
-rw-r--r--src/server.h28
1 files changed, 11 insertions, 17 deletions
diff --git a/src/server.h b/src/server.h
index 5938f915d..d979cb518 100644
--- a/src/server.h
+++ b/src/server.h
@@ -36,10 +36,9 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "inventorymanager.h"
struct LuaState;
typedef struct lua_State lua_State;
-class IWritableToolDefManager;
+class IWritableItemDefManager;
class IWritableNodeDefManager;
class IWritableCraftDefManager;
-class IWritableCraftItemDefManager;
/*
Some random functions
@@ -437,6 +436,7 @@ public:
Shall be called with the environment and the connection locked.
*/
Inventory* getInventory(const InventoryLocation &loc);
+ std::string getInventoryOwner(const InventoryLocation &loc);
void setInventoryModified(const InventoryLocation &loc);
// Connection must be locked when called
@@ -514,17 +514,15 @@ public:
// IGameDef interface
// Under envlock
- virtual IToolDefManager* getToolDefManager();
+ virtual IItemDefManager* getItemDefManager();
virtual INodeDefManager* getNodeDefManager();
virtual ICraftDefManager* getCraftDefManager();
- virtual ICraftItemDefManager* getCraftItemDefManager();
virtual ITextureSource* getTextureSource();
virtual u16 allocateUnknownNodeId(const std::string &name);
- IWritableToolDefManager* getWritableToolDefManager();
+ IWritableItemDefManager* getWritableItemDefManager();
IWritableNodeDefManager* getWritableNodeDefManager();
IWritableCraftDefManager* getWritableCraftDefManager();
- IWritableCraftItemDefManager* getWritableCraftItemDefManager();
const ModSpec* getModSpec(const std::string &modname);
@@ -545,12 +543,10 @@ private:
const std::wstring &reason);
static void SendDeathscreen(con::Connection &con, u16 peer_id,
bool set_camera_point_target, v3f camera_point_target);
- static void SendToolDef(con::Connection &con, u16 peer_id,
- IToolDefManager *tooldef);
+ static void SendItemDef(con::Connection &con, u16 peer_id,
+ IItemDefManager *itemdef);
static void SendNodeDef(con::Connection &con, u16 peer_id,
INodeDefManager *nodedef);
- static void SendCraftItemDef(con::Connection &con, u16 peer_id,
- ICraftItemDefManager *nodedef);
/*
Non-static send methods.
@@ -562,7 +558,7 @@ private:
// Envlock and conlock should be locked when calling these
void SendInventory(u16 peer_id);
// send wielded item info about player to all
- void SendWieldedItem(const Player *player);
+ void SendWieldedItem(const ServerRemotePlayer *srp);
// send wielded item info about all players to all players
void SendPlayerItems();
void SendChatMessage(u16 peer_id, const std::wstring &message);
@@ -599,6 +595,7 @@ private:
void HandlePlayerHP(Player *player, s16 damage);
void RespawnPlayer(Player *player);
+ bool GetCraftingResult(u16 peer_id, ItemStack &result, bool decrementInput);
void UpdateCrafting(u16 peer_id);
// When called, connection mutex should be locked
@@ -664,8 +661,8 @@ private:
// Envlock and conlock should be locked when using Lua
lua_State *m_lua;
- // Tool definition manager
- IWritableToolDefManager *m_toolmgr;
+ // Item definition manager
+ IWritableItemDefManager *m_itemdef;
// Node definition manager
IWritableNodeDefManager *m_nodedef;
@@ -673,9 +670,6 @@ private:
// Craft definition manager
IWritableCraftDefManager *m_craftdef;
- // CraftItem definition manager
- IWritableCraftItemDefManager *m_craftitemdef;
-
// Mods
core::list<ModSpec> m_mods;
@@ -740,7 +734,7 @@ private:
core::list<std::string> m_modspaths;
bool m_shutdown_requested;
-
+
/*
Map edit event queue. Automatically receives all map edits.
The constructor of this class registers us to receive them through