aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/SharedMonsterAttributes.h
diff options
context:
space:
mode:
Diffstat (limited to 'Minecraft.World/SharedMonsterAttributes.h')
-rw-r--r--Minecraft.World/SharedMonsterAttributes.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/Minecraft.World/SharedMonsterAttributes.h b/Minecraft.World/SharedMonsterAttributes.h
new file mode 100644
index 00000000..7195462e
--- /dev/null
+++ b/Minecraft.World/SharedMonsterAttributes.h
@@ -0,0 +1,26 @@
+#pragma once
+
+class SharedMonsterAttributes
+{
+public:
+ static Attribute *MAX_HEALTH;
+ static Attribute *FOLLOW_RANGE;
+ static Attribute *KNOCKBACK_RESISTANCE;
+ static Attribute *MOVEMENT_SPEED;
+ static Attribute *ATTACK_DAMAGE;
+
+ static ListTag<CompoundTag> *saveAttributes(BaseAttributeMap *attributes);
+
+private:
+ static CompoundTag *saveAttribute(AttributeInstance *instance);
+ static CompoundTag *saveAttributeModifier(AttributeModifier *modifier);
+
+public:
+ static void loadAttributes(BaseAttributeMap *attributes, ListTag<CompoundTag> *list);
+
+private:
+ static void loadAttribute(AttributeInstance *instance, CompoundTag *tag);
+
+public:
+ static AttributeModifier *loadAttributeModifier(CompoundTag *tag);
+}; \ No newline at end of file