#pragma once #include "Packet.h" class CompoundTag; class TileEntityDataPacket : public Packet, public std::enable_shared_from_this { public: static const int TYPE_MOB_SPAWNER = 1; static const int TYPE_ADV_COMMAND = 2; static const int TYPE_BEACON = 3; static const int TYPE_SKULL = 4; int x, y, z; int type; CompoundTag* tag; private: void _init(); public: TileEntityDataPacket(); ~TileEntityDataPacket(); TileEntityDataPacket(int x, int y, int z, int type, CompoundTag* tag); virtual void read(DataInputStream* dis); virtual void write(DataOutputStream* dos); virtual void handle(PacketListener* listener); virtual int getEstimatedSize(); public: static std::shared_ptr create() { return std::shared_ptr(new TileEntityDataPacket()); } virtual int getId() { return 132; } };