Package-level declarations

Types

Link copied to clipboard
@Target(allowedTargets = [AnnotationTarget.CLASS])
annotation class AlwaysActive

Module classes with this annotation will be registered to the Event Bus on game start-up and will not be unregistered onDisable.

Link copied to clipboard
Link copied to clipboard
class ConfigModule(name: String, keyCode: Int = 0, category: Category = Category.MISC, toggled: Boolean = false, settings: ArrayList<Setting<*>> = ArrayList(), description: String = "") : Module

A dummy implementation of the Module class.

Link copied to clipboard
abstract class Module(name: String, keyCode: Int = Keyboard.KEY_NONE, category: Category = Category.MISC, toggled: Boolean = false, settings: ArrayList<Setting<*>> = ArrayList(), description: String = "")

Annotate with AlwaysActive to have a Module always registered to the Event Bus regardless of the Module being enabled.

Link copied to clipboard

After making a Module it just has to be added to the modules list and everything else will be taken care of automatically. This entails:

Link copied to clipboard
@Target(allowedTargets = [AnnotationTarget.CLASS])
annotation class RegisterHudElement

Annotate your HUDElements with this to register them.

Link copied to clipboard
@Target(allowedTargets = [AnnotationTarget.CLASS])
annotation class SelfRegisterModule

Module classes with this annotation will automatically get loaded on game launch. They do not have to be within ModuleManager.modules.