aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/ExplodePacket.h
diff options
context:
space:
mode:
Diffstat (limited to 'Minecraft.World/ExplodePacket.h')
-rw-r--r--Minecraft.World/ExplodePacket.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/Minecraft.World/ExplodePacket.h b/Minecraft.World/ExplodePacket.h
new file mode 100644
index 00000000..d4d8b3f9
--- /dev/null
+++ b/Minecraft.World/ExplodePacket.h
@@ -0,0 +1,37 @@
+#pragma once
+using namespace std;
+
+#include "TilePos.h"
+#include "Packet.h"
+
+class ExplodePacket : public Packet, public enable_shared_from_this<ExplodePacket>
+{
+public:
+ double x, y, z;
+ float r;
+ vector<TilePos> toBlow; // 4J - was an unorderedset but doesn't require any features of that apart from making it match the ctor toBlow type
+ bool m_bKnockbackOnly;
+
+ private:
+ float knockbackX;
+ float knockbackY;
+ float knockbackZ;
+
+ public:
+
+ ExplodePacket();
+ ExplodePacket(double x, double y, double z, float r, unordered_set<TilePos, TilePosKeyHash, TilePosKeyEq> *toBlow, Vec3 *knockback, bool knockBackOnly);
+
+ virtual void read(DataInputStream *dis);
+ virtual void write(DataOutputStream *dos);
+ virtual void handle(PacketListener *listener);
+ virtual int getEstimatedSize();
+
+ float getKnockbackX();
+ float getKnockbackY();
+ float getKnockbackZ();
+
+public:
+ static shared_ptr<Packet> create() { return shared_ptr<Packet>(new ExplodePacket()); }
+ virtual int getId() { return 60; }
+}; \ No newline at end of file