1.8: Fixed inventory open packet.
This commit is contained in:
parent
6d5a5eb665
commit
c7044fa1dd
|
@ -1515,10 +1515,9 @@ void cProtocol180::SendWindowOpen(const cWindow & a_Window)
|
||||||
|
|
||||||
cPacketizer Pkt(*this, 0x2d);
|
cPacketizer Pkt(*this, 0x2d);
|
||||||
Pkt.WriteChar(a_Window.GetWindowID());
|
Pkt.WriteChar(a_Window.GetWindowID());
|
||||||
Pkt.WriteChar(a_Window.GetWindowType());
|
Pkt.WriteString(a_Window.GetWindowTypeName());
|
||||||
Pkt.WriteString(a_Window.GetWindowTitle());
|
Pkt.WriteString(Printf("{\"text\":\"%s\"}", a_Window.GetWindowTitle().c_str()));
|
||||||
Pkt.WriteChar(a_Window.GetNumNonInventorySlots());
|
Pkt.WriteChar(a_Window.GetNumNonInventorySlots());
|
||||||
Pkt.WriteBool(true);
|
|
||||||
if (a_Window.GetWindowType() == cWindow::wtAnimalChest)
|
if (a_Window.GetWindowType() == cWindow::wtAnimalChest)
|
||||||
{
|
{
|
||||||
Pkt.WriteInt(0); // TODO: The animal's EntityID
|
Pkt.WriteInt(0); // TODO: The animal's EntityID
|
||||||
|
|
|
@ -57,6 +57,34 @@ cWindow::~cWindow()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
const AString cWindow::GetWindowTypeName(void) const
|
||||||
|
{
|
||||||
|
switch (m_WindowType)
|
||||||
|
{
|
||||||
|
case wtChest: return "minecraft:chest";
|
||||||
|
case wtWorkbench: return "minecraft:crafting_table";
|
||||||
|
case wtFurnace: return "minecraft:furnace";
|
||||||
|
case wtDropSpenser: return "minecraft:dispenser";
|
||||||
|
case wtEnchantment: return "minecraft:enchanting_table";
|
||||||
|
case wtBrewery: return "minecraft:brewing_stand";
|
||||||
|
case wtNPCTrade: return "minecraft:villager";
|
||||||
|
case wtBeacon: return "minecraft:beacon";
|
||||||
|
case wtAnvil: return "minecraft:anvil";
|
||||||
|
case wtHopper: return "minecraft:hopper";
|
||||||
|
case wtDropper: return "minecraft:dropper";
|
||||||
|
case wtAnimalChest: return "EntityHorse";
|
||||||
|
default:
|
||||||
|
{
|
||||||
|
ASSERT(!"Unknown inventory type!");
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
int cWindow::GetNumSlots(void) const
|
int cWindow::GetNumSlots(void) const
|
||||||
{
|
{
|
||||||
int res = 0;
|
int res = 0;
|
||||||
|
|
|
@ -63,7 +63,7 @@ public:
|
||||||
wtBeacon = 7,
|
wtBeacon = 7,
|
||||||
wtAnvil = 8,
|
wtAnvil = 8,
|
||||||
wtHopper = 9,
|
wtHopper = 9,
|
||||||
// Unknown: 10
|
wtDropper = 10,
|
||||||
wtAnimalChest = 11,
|
wtAnimalChest = 11,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -76,6 +76,7 @@ public:
|
||||||
|
|
||||||
char GetWindowID(void) const { return m_WindowID; } // tolua_export
|
char GetWindowID(void) const { return m_WindowID; } // tolua_export
|
||||||
int GetWindowType(void) const { return m_WindowType; } // tolua_export
|
int GetWindowType(void) const { return m_WindowType; } // tolua_export
|
||||||
|
const AString GetWindowTypeName(void) const; // tolua_export
|
||||||
|
|
||||||
cWindowOwner * GetOwner(void) { return m_Owner; }
|
cWindowOwner * GetOwner(void) { return m_Owner; }
|
||||||
void SetOwner( cWindowOwner * a_Owner) { m_Owner = a_Owner; }
|
void SetOwner( cWindowOwner * a_Owner) { m_Owner = a_Owner; }
|
||||||
|
|
Loading…
Reference in New Issue
Block a user