X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=src%2Finventorymanager.h;h=4ad5d3f49ae0b2d8eccae0f0ed4e440269873377;hb=e92a217bd19ee0b28890a7b33e5c6d7c037354cc;hp=06517f40faaa607ab39cf7ff34eed68b8e88d520;hpb=eb2bda7d0bbb1ef5f74e8ff88eeedddfe4d75669;p=minetest.git diff --git a/src/inventorymanager.h b/src/inventorymanager.h index 06517f40f..4ad5d3f49 100644 --- a/src/inventorymanager.h +++ b/src/inventorymanager.h @@ -111,7 +111,7 @@ class InventoryManager // Get an inventory (server and client) virtual Inventory* getInventory(const InventoryLocation &loc){return NULL;} // Set modified (will be saved and sent over network; only on server) - virtual void setInventoryModified(const InventoryLocation &loc, bool playerSend = true){} + virtual void setInventoryModified(const InventoryLocation &loc) {} // Send inventory action to server (only on client) virtual void inventoryAction(InventoryAction *a){} }; @@ -183,6 +183,18 @@ struct IMoveAction : public InventoryAction, public MoveAction void apply(InventoryManager *mgr, ServerActiveObject *player, IGameDef *gamedef); void clientApply(InventoryManager *mgr, IGameDef *gamedef); + + void swapDirections(); + + void onPutAndOnTake(const ItemStack &src_item, ServerActiveObject *player) const; + + void onMove(int count, ServerActiveObject *player) const; + + int allowPut(const ItemStack &dst_item, ServerActiveObject *player) const; + + int allowTake(const ItemStack &src_item, ServerActiveObject *player) const; + + int allowMove(int try_take_count, ServerActiveObject *player) const; }; struct IDropAction : public InventoryAction, public MoveAction