summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/inventory.cpp21
1 files changed, 3 insertions, 18 deletions
diff --git a/src/inventory.cpp b/src/inventory.cpp
index 2335136b1..40dc602d0 100644
--- a/src/inventory.cpp
+++ b/src/inventory.cpp
@@ -257,17 +257,8 @@ ItemStack ItemStack::addItem(ItemStack newitem, IItemDefManager *itemdef)
// If this is an empty item, it's an easy job.
else if(empty())
{
- const u16 stackMax = newitem.getStackMax(itemdef);
-
*this = newitem;
-
- // If the item fits fully, delete it
- if (count <= stackMax) {
- newitem.clear();
- } else { // Else the item does not fit fully. Return the rest.
- count = stackMax;
- newitem.remove(count);
- }
+ newitem.clear();
}
// If item name or metadata differs, bail out
else if (name != newitem.name
@@ -306,14 +297,7 @@ bool ItemStack::itemFits(ItemStack newitem,
// If this is an empty item, it's an easy job.
else if(empty())
{
- const u16 stackMax = newitem.getStackMax(itemdef);
-
- // If the item fits fully, delete it
- if (newitem.count <= stackMax) {
- newitem.clear();
- } else { // Else the item does not fit fully. Return the rest.
- newitem.remove(stackMax);
- }
+ newitem.clear();
}
// If item name or metadata differs, bail out
else if (name != newitem.name
@@ -335,6 +319,7 @@ bool ItemStack::itemFits(ItemStack newitem,
if(restitem)
*restitem = newitem;
+
return newitem.empty();
}