aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/SetObjectivePacket.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Minecraft.World/SetObjectivePacket.cpp')
-rw-r--r--Minecraft.World/SetObjectivePacket.cpp42
1 files changed, 42 insertions, 0 deletions
diff --git a/Minecraft.World/SetObjectivePacket.cpp b/Minecraft.World/SetObjectivePacket.cpp
new file mode 100644
index 00000000..7e656967
--- /dev/null
+++ b/Minecraft.World/SetObjectivePacket.cpp
@@ -0,0 +1,42 @@
+#include "stdafx.h"
+#include "net.minecraft.world.scores.h"
+#include "PacketListener.h"
+#include "SetObjectivePacket.h"
+
+SetObjectivePacket::SetObjectivePacket()
+{
+ objectiveName = L"";
+ displayName = L"";
+ method = 0;
+}
+
+SetObjectivePacket::SetObjectivePacket(Objective *objective, int method)
+{
+ objectiveName = objective->getName();
+ displayName = objective->getDisplayName();
+ this->method = method;
+}
+
+void SetObjectivePacket::read(DataInputStream *dis)
+{
+ objectiveName = readUtf(dis, Objective::MAX_NAME_LENGTH);
+ displayName = readUtf(dis, Objective::MAX_DISPLAY_NAME_LENGTH);
+ method = dis->readByte();
+}
+
+void SetObjectivePacket::write(DataOutputStream *dos)
+{
+ writeUtf(objectiveName, dos);
+ writeUtf(displayName, dos);
+ dos->writeByte(method);
+}
+
+void SetObjectivePacket::handle(PacketListener *listener)
+{
+ listener->handleAddObjective(shared_from_this());
+}
+
+int SetObjectivePacket::getEstimatedSize()
+{
+ return 2 + objectiveName.length() + 2 + displayName.length() + 1;
+} \ No newline at end of file