summaryrefslogtreecommitdiff
path: root/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/Module.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/Module.java')
-rw-r--r--src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/Module.java44
1 files changed, 44 insertions, 0 deletions
diff --git a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/Module.java b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/Module.java
new file mode 100644
index 0000000..8982f49
--- /dev/null
+++ b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/Module.java
@@ -0,0 +1,44 @@
+package net.justlearning.arslaan3102.arslaansmagichax.modules;
+
+import net.minecraft.client.MinecraftClient;
+
+public abstract class Module {
+ private final String name;
+ private final String description;
+ public MinecraftClient mc;
+
+ private boolean enabled = false;
+
+ public Module(String name, String description) {
+ this.name = name;
+ this.description = description;
+ this.mc = MinecraftClient.getInstance();
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ public boolean isEnabled() {
+ return enabled;
+ }
+
+ public void toggle() {
+ enabled = !enabled;
+ if (enabled) onEnable();
+ else onDisable();
+ }
+
+ public void setEnabled(boolean state) {
+ if (enabled != state) toggle();
+ }
+
+ protected void onEnable() {}
+ protected void onDisable() {}
+
+ public void tick() {}
+} \ No newline at end of file