the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
1#include "stdafx.h"
2#include <iostream>
3#include "InputOutputStream.h"
4#include "net.minecraft.world.item.h"
5#include "PacketListener.h"
6#include "ContainerSetContentPacket.h"
7
8
9
10ContainerSetContentPacket::~ContainerSetContentPacket()
11{
12 delete[] items.data;
13}
14
15ContainerSetContentPacket::ContainerSetContentPacket()
16{
17 containerId = 0;
18}
19
20ContainerSetContentPacket::ContainerSetContentPacket(int containerId, vector<shared_ptr<ItemInstance> > *newItems)
21{
22 this->containerId = containerId;
23 items = ItemInstanceArray((int)newItems->size());
24 for (unsigned int i = 0; i < items.length; i++)
25 {
26 shared_ptr<ItemInstance> item = newItems->at(i);
27 items[i] = item == NULL ? nullptr : item->copy();
28 }
29}
30
31void ContainerSetContentPacket::read(DataInputStream *dis) //throws IOException
32{
33 containerId = dis->readByte();
34 int count = dis->readShort();
35 items = ItemInstanceArray(count);
36 for (int i = 0; i < count; i++)
37 {
38 items[i] = readItem(dis);
39 }
40}
41
42void ContainerSetContentPacket::write(DataOutputStream *dos) //throws IOException
43{
44 dos->writeByte(containerId);
45 dos->writeShort(items.length);
46 for (unsigned int i = 0; i < items.length; i++)
47 {
48 writeItem(items[i], dos);
49 }
50}
51
52void ContainerSetContentPacket::handle(PacketListener *listener)
53{
54 listener->handleContainerContent(shared_from_this());
55}
56
57int ContainerSetContentPacket::getEstimatedSize()
58{
59 return 3 + items.length * 5;
60}