aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.Client/Common/GameRules/UpdatePlayerRuleDefinition.h
diff options
context:
space:
mode:
Diffstat (limited to 'Minecraft.Client/Common/GameRules/UpdatePlayerRuleDefinition.h')
-rw-r--r--Minecraft.Client/Common/GameRules/UpdatePlayerRuleDefinition.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/Minecraft.Client/Common/GameRules/UpdatePlayerRuleDefinition.h b/Minecraft.Client/Common/GameRules/UpdatePlayerRuleDefinition.h
new file mode 100644
index 00000000..538aefa1
--- /dev/null
+++ b/Minecraft.Client/Common/GameRules/UpdatePlayerRuleDefinition.h
@@ -0,0 +1,33 @@
+#pragma once
+using namespace std;
+
+#include "GameRuleDefinition.h"
+
+class AddItemRuleDefinition;
+class Pos;
+
+class UpdatePlayerRuleDefinition : public GameRuleDefinition
+{
+private:
+ vector<AddItemRuleDefinition *> m_items;
+
+ bool m_bUpdateHealth, m_bUpdateFood, m_bUpdateYRot, m_bUpdateInventory;
+ int m_health;
+ int m_food;
+ Pos *m_spawnPos;
+ float m_yRot;
+
+public:
+ UpdatePlayerRuleDefinition();
+ ~UpdatePlayerRuleDefinition();
+
+ virtual ConsoleGameRules::EGameRuleType getActionType() { return ConsoleGameRules::eGameRuleType_UpdatePlayerRule; }
+
+ virtual void getChildren(vector<GameRuleDefinition *> *children);
+ virtual GameRuleDefinition *addChild(ConsoleGameRules::EGameRuleType ruleType);
+
+ virtual void writeAttributes(DataOutputStream *dos, UINT numAttributes);
+ virtual void addAttribute(const wstring &attributeName, const wstring &attributeValue);
+
+ virtual void postProcessPlayer(shared_ptr<Player> player);
+}; \ No newline at end of file