aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/AddMobPacket.h
diff options
context:
space:
mode:
Diffstat (limited to 'Minecraft.World/AddMobPacket.h')
-rw-r--r--Minecraft.World/AddMobPacket.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/Minecraft.World/AddMobPacket.h b/Minecraft.World/AddMobPacket.h
new file mode 100644
index 00000000..37de84c3
--- /dev/null
+++ b/Minecraft.World/AddMobPacket.h
@@ -0,0 +1,37 @@
+#pragma once
+using namespace std;
+
+#include "Packet.h"
+#include "SynchedEntityData.h"
+
+class Mob;
+
+class AddMobPacket : public Packet, public enable_shared_from_this<AddMobPacket>
+{
+public:
+ int id;
+ int type;
+ int x, y, z;
+ int xd, yd, zd;
+ byte yRot, xRot, yHeadRot;
+
+private:
+ shared_ptr<SynchedEntityData> entityData;
+ vector<shared_ptr<SynchedEntityData::DataItem> > *unpack;
+
+public:
+ AddMobPacket();
+ ~AddMobPacket();
+ AddMobPacket(shared_ptr<Mob> mob, int yRotp, int xRotp, int xp, int yp, int zp, int yHeadRotp);
+
+ virtual void read(DataInputStream *dis);
+ virtual void write(DataOutputStream *dos);
+ virtual void handle(PacketListener *listener);
+ virtual int getEstimatedSize();
+
+ vector<shared_ptr<SynchedEntityData::DataItem> > *getUnpackedData();
+
+public:
+ static shared_ptr<Packet> create() { return shared_ptr<Packet>(new AddMobPacket()); }
+ virtual int getId() { return 24; }
+};