java.lang.Object
org.rusherhack.client.api.feature.module.Module
All Implemented Interfaces:
IModule, Globals, org.rusherhack.core.event.listener.EventListener, org.rusherhack.core.feature.IFeature, org.rusherhack.core.feature.IFeatureConfigurable, org.rusherhack.core.interfaces.IHideable, org.rusherhack.core.interfaces.INamed, org.rusherhack.core.logging.ILoggable, org.rusherhack.core.notification.INotifiable, org.rusherhack.core.serialize.ISerializable<com.google.gson.JsonElement>, org.rusherhack.core.serialize.JsonSerializable
Direct Known Subclasses:
ToggleableModule

public abstract class Module extends Object implements IModule, org.rusherhack.core.event.listener.EventListener, org.rusherhack.core.logging.ILoggable, Globals
A base module with no implementation
  • Field Details

    • logger

      protected final org.rusherhack.core.logging.ILogger logger
      Logger for this module
  • Constructor Details

  • Method Details

    • getName

      public String getName()
      Specified by:
      getName in interface org.rusherhack.core.interfaces.INamed
    • getDescription

      public String getDescription()
      Specified by:
      getDescription in interface org.rusherhack.core.feature.IFeature
    • getCategory

      public ModuleCategory getCategory()
      Specified by:
      getCategory in interface IModule
      Returns:
      Category of this module
    • sendNotification

      public void sendNotification(org.rusherhack.core.notification.NotificationType type, String message)
      Specified by:
      sendNotification in interface org.rusherhack.core.notification.INotifiable
    • sendNotification

      public void sendNotification(org.rusherhack.core.notification.NotificationType type, String message, int id)
      Specified by:
      sendNotification in interface org.rusherhack.core.notification.INotifiable
    • registerSettings

      public void registerSettings(org.rusherhack.core.setting.Setting<?>... settings)
      Specified by:
      registerSettings in interface org.rusherhack.core.feature.IFeatureConfigurable
    • getSettings

      public List<org.rusherhack.core.setting.Setting<?>> getSettings()
      Specified by:
      getSettings in interface org.rusherhack.core.feature.IFeatureConfigurable
    • isHidden

      public boolean isHidden()
      Specified by:
      isHidden in interface org.rusherhack.core.interfaces.IHideable
    • setHidden

      public void setHidden(boolean hidden)
    • areNotificationsEnabled

      public boolean areNotificationsEnabled()
    • setNotifications

      public void setNotifications(boolean notifications)
    • serialize

      public com.google.gson.JsonElement serialize()
      Specified by:
      serialize in interface org.rusherhack.core.serialize.ISerializable<com.google.gson.JsonElement>
    • deserialize

      public boolean deserialize(com.google.gson.JsonElement jsonElement)
      Specified by:
      deserialize in interface org.rusherhack.core.serialize.ISerializable<com.google.gson.JsonElement>
    • isListening

      public boolean isListening()
      Specified by:
      isListening in interface org.rusherhack.core.event.listener.EventListener
    • setListening

      public void setListening(boolean state)
    • getLogger

      public org.rusherhack.core.logging.ILogger getLogger()
      Specified by:
      getLogger in interface org.rusherhack.core.logging.ILoggable
    • createCommand

      public ModuleCommand createCommand()