]> git.lizzy.rs Git - minetest.git/blobdiff - src/inventorymanager.h
Fix inventory swapping not calling all callbacks (#9923)
[minetest.git] / src / inventorymanager.h
index 69bf3016905862ac8bf29399ef45ab1b20bdff9d..4ad5d3f49ae0b2d8eccae0f0ed4e440269873377 100644 (file)
@@ -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