aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/CompoundContainer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Minecraft.World/CompoundContainer.cpp')
-rw-r--r--Minecraft.World/CompoundContainer.cpp37
1 files changed, 33 insertions, 4 deletions
diff --git a/Minecraft.World/CompoundContainer.cpp b/Minecraft.World/CompoundContainer.cpp
index 29bf60dd..39da0e58 100644
--- a/Minecraft.World/CompoundContainer.cpp
+++ b/Minecraft.World/CompoundContainer.cpp
@@ -1,6 +1,6 @@
#include "stdafx.h"
#include "net.minecraft.world.entity.player.h"
-
+#include "ContainerOpenPacket.h"
#include "CompoundContainer.h"
CompoundContainer::CompoundContainer(int name, shared_ptr<Container> c1, shared_ptr<Container> c2)
@@ -12,14 +12,38 @@ CompoundContainer::CompoundContainer(int name, shared_ptr<Container> c1, shared_
this->c2 = c2;
}
+int CompoundContainer::getContainerType()
+{
+ return ContainerOpenPacket::LARGE_CHEST;
+}
+
unsigned int CompoundContainer::getContainerSize()
{
return c1->getContainerSize() + c2->getContainerSize();
}
-int CompoundContainer::getName()
+bool CompoundContainer::contains(shared_ptr<Container> c)
+{
+ return c1 == c || c2 == c;
+}
+
+wstring CompoundContainer::getName()
+{
+ if (c1->hasCustomName()) return c1->getName();
+ if (c2->hasCustomName()) return c2->getName();
+ return app.GetString(name);
+}
+
+wstring CompoundContainer::getCustomName()
+{
+ if (c1->hasCustomName()) return c1->getName();
+ if (c2->hasCustomName()) return c2->getName();
+ return L"";
+}
+
+bool CompoundContainer::hasCustomName()
{
- return name;
+ return c1->hasCustomName() || c2->hasCustomName();
}
shared_ptr<ItemInstance> CompoundContainer::getItem(unsigned int slot)
@@ -46,7 +70,7 @@ void CompoundContainer::setItem(unsigned int slot, shared_ptr<ItemInstance> item
else c1->setItem(slot, item);
}
-int CompoundContainer::getMaxStackSize()
+int CompoundContainer::getMaxStackSize() const
{
return c1->getMaxStackSize();
}
@@ -72,4 +96,9 @@ void CompoundContainer::stopOpen()
{
c1->stopOpen();
c2->stopOpen();
+}
+
+bool CompoundContainer::canPlaceItem(int slot, shared_ptr<ItemInstance> item)
+{
+ return true;
} \ No newline at end of file