summaryrefslogtreecommitdiff
path: root/src/inventorymanager.h
diff options
context:
space:
mode:
authorPerttu Ahola <celeron55@gmail.com>2012-07-24 20:57:17 +0300
committerPerttu Ahola <celeron55@gmail.com>2012-07-24 20:57:17 +0300
commit2ac20982e0772b94b21d95b53519bd2164632d98 (patch)
tree3a2e7b783ff4362ac723dee22809a8e6b7f8750a /src/inventorymanager.h
parent96eac87d47e4d9e815dff5c9f830326e515d4ea2 (diff)
downloadminetest-2ac20982e0772b94b21d95b53519bd2164632d98.tar.gz
minetest-2ac20982e0772b94b21d95b53519bd2164632d98.tar.bz2
minetest-2ac20982e0772b94b21d95b53519bd2164632d98.zip
Detached inventories
Diffstat (limited to 'src/inventorymanager.h')
-rw-r--r--src/inventorymanager.h16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/inventorymanager.h b/src/inventorymanager.h
index 009db4836..dae14f1a6 100644
--- a/src/inventorymanager.h
+++ b/src/inventorymanager.h
@@ -32,9 +32,10 @@ struct InventoryLocation
CURRENT_PLAYER,
PLAYER,
NODEMETA,
+ DETACHED,
} type;
- std::string name; // PLAYER
+ std::string name; // PLAYER, DETACHED
v3s16 p; // NODEMETA
InventoryLocation()
@@ -59,6 +60,11 @@ struct InventoryLocation
type = NODEMETA;
p = p_;
}
+ void setDetached(const std::string &name_)
+ {
+ type = DETACHED;
+ name = name_;
+ }
void applyCurrentPlayer(const std::string &name_)
{
@@ -80,13 +86,11 @@ public:
InventoryManager(){}
virtual ~InventoryManager(){}
- // Get an inventory or set it modified (so it will be updated over
- // network or so)
+ // Get an inventory (server and client)
virtual Inventory* getInventory(const InventoryLocation &loc){return NULL;}
- virtual std::string getInventoryOwner(const InventoryLocation &loc){return "";}
+ // Set modified (will be saved and sent over network; only on server)
virtual void setInventoryModified(const InventoryLocation &loc){}
-
- // Used on the client to send an action to the server
+ // Send inventory action to server (only on client)
virtual void inventoryAction(InventoryAction *a){}
};