aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/ftbsc/bscv/api/IModule.java
blob: d295023394a3720d453327174803ac744a5a8403 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package ftbsc.bscv.api;

import net.minecraftforge.common.ForgeConfigSpec;
import net.minecraftforge.common.MinecraftForge;

public interface IModule extends ICommand {
   String getGroup();

   ForgeConfigSpec.Builder getConfigBuilder();

   default void toggle() {
      if(this.isEnabled())
         this.disable();
      else this.enable();
   }

   default void enable() {
      MinecraftForge.EVENT_BUS.register(this);
   }

   default void disable() {
      MinecraftForge.EVENT_BUS.register(this);
   }

   boolean isEnabled();
}