From 9fa547bb8013e78991c362b73111a134216307a0 Mon Sep 17 00:00:00 2001 From: SmallJoker Date: Sat, 31 Mar 2018 13:47:19 +0200 Subject: Run callback in IDropAction, refactor function arguments --- src/script/cpp_api/s_player.h | 29 ++++++++++------------------- 1 file changed, 10 insertions(+), 19 deletions(-) (limited to 'src/script/cpp_api/s_player.h') diff --git a/src/script/cpp_api/s_player.h b/src/script/cpp_api/s_player.h index d60dfcaf4..764455a53 100644 --- a/src/script/cpp_api/s_player.h +++ b/src/script/cpp_api/s_player.h @@ -23,6 +23,7 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "irr_v3d.h" #include "util/string.h" +struct MoveAction; struct InventoryLocation; struct ItemStack; struct ToolCapabilities; @@ -54,43 +55,33 @@ public: // Player inventory callbacks // Return number of accepted items to be moved int player_inventory_AllowMove( - const InventoryLocation &loc, - const std::string &from_list, int from_index, - const std::string &to_list, int to_index, - int count, ServerActiveObject *player); + const MoveAction &ma, int count, + ServerActiveObject *player); // Return number of accepted items to be put int player_inventory_AllowPut( - const InventoryLocation &loc, - const std::string &listname, int index, const ItemStack &stack, + const MoveAction &ma, const ItemStack &stack, ServerActiveObject *player); // Return number of accepted items to be taken int player_inventory_AllowTake( - const InventoryLocation &loc, - const std::string &listname, int index, const ItemStack &stack, + const MoveAction &ma, const ItemStack &stack, ServerActiveObject *player); // Report moved items void player_inventory_OnMove( - const InventoryLocation &loc, - const std::string &from_list, int from_index, - const std::string &to_list, int to_index, - int count, ServerActiveObject *player); + const MoveAction &ma, int count, + ServerActiveObject *player); // Report put items void player_inventory_OnPut( - const InventoryLocation &loc, - const std::string &listname, int index, const ItemStack &stack, + const MoveAction &ma, const ItemStack &stack, ServerActiveObject *player); // Report taken items void player_inventory_OnTake( - const InventoryLocation &loc, - const std::string &listname, int index, const ItemStack &stack, + const MoveAction &ma, const ItemStack &stack, ServerActiveObject *player); private: void pushPutTakeArguments( const char *method, const InventoryLocation &loc, const std::string &listname, int index, const ItemStack &stack, ServerActiveObject *player); - void pushMoveArguments(const InventoryLocation &loc, - const std::string &from_list, int from_index, - const std::string &to_list, int to_index, + void pushMoveArguments(const MoveAction &ma, int count, ServerActiveObject *player); }; -- cgit v1.2.3