From e27a5db409fe1d71c42235609a9fe06020b6201b Mon Sep 17 00:00:00 2001 From: madmaxoft Date: Wed, 3 Jul 2013 13:56:11 +0000 Subject: Empty buckets replace fluid buckets on use and vice versa (patch contributed by Mgueydan) Fixes FS #277. API change: added an optional parameter to cItemGrid:AddItem(), cItemGrid:AddItems(), cInventory:AddItem() and cInventory:AddItems() git-svn-id: http://mc-server.googlecode.com/svn/trunk@1643 0a769ca7-a7f5-676a-18bf-c427514a06d6 --- source/Inventory.h | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'source/Inventory.h') diff --git a/source/Inventory.h b/source/Inventory.h index 395ca8982..9ddd00ecd 100644 --- a/source/Inventory.h +++ b/source/Inventory.h @@ -66,17 +66,23 @@ public: /** Adds as many items out of a_ItemStack as can fit. If a_AllowNewStacks is set to false, only existing stacks can be topped up; if a_AllowNewStacks is set to true, empty slots can be used for the rest. + If a_tryToFillEquippedFirst is set to true, the currently equipped slot will be used first (if empty or + compatible with added items) + if a_tryToFillEquippedFirst is set to false, the regular order applies. Returns the number of items that fit. */ - int AddItem(const cItem & a_ItemStack, bool a_AllowNewStacks = true); + int AddItem(const cItem & a_ItemStack, bool a_AllowNewStacks = true, bool a_tryToFillEquippedFirst = false); /** Same as AddItem, but works on an entire list of item stacks. The a_ItemStackList is modified to reflect the leftover items. If a_AllowNewStacks is set to false, only existing stacks can be topped up; - if a_AllowNewStacks is set to true, empty slots can be used for the rest + if a_AllowNewStacks is set to true, empty slots can be used for the rest. + If a_tryToFillEquippedFirst is set to true, the currently equipped slot will be used first (if empty or + compatible with added items) + if a_tryToFillEquippedFirst is set to false, the regular order applies. Returns the total number of items that fit. */ - int AddItems(cItems & a_ItemStackList, bool a_AllowNewStacks); + int AddItems(cItems & a_ItemStackList, bool a_AllowNewStacks, bool a_tryToFillEquippedFirst); /// Removes one item out of the currently equipped item stack, returns true if successful, false if empty-handed bool RemoveOneEquippedItem(void); -- cgit v1.2.3