aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/Goal.h
diff options
context:
space:
mode:
Diffstat (limited to 'Minecraft.World/Goal.h')
-rw-r--r--Minecraft.World/Goal.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/Minecraft.World/Goal.h b/Minecraft.World/Goal.h
new file mode 100644
index 00000000..80d39b9b
--- /dev/null
+++ b/Minecraft.World/Goal.h
@@ -0,0 +1,23 @@
+#pragma once
+
+class Goal
+{
+private:
+ int _requiredControlFlags;
+
+protected:
+ Goal();
+public:
+ virtual ~Goal() {}
+ virtual bool canUse() = 0;
+ virtual bool canContinueToUse();
+ virtual bool canInterrupt();
+ virtual void start();
+ virtual void stop();
+ virtual void tick();
+ virtual void setRequiredControlFlags(int requiredControlFlags);
+ virtual int getRequiredControlFlags();
+
+ // 4J Added override to update ai elements when loading entity from schematics
+ virtual void setLevel(Level *level) {};
+}; \ No newline at end of file