Interface FabricLoader


public interface FabricLoader
The public-facing FabricLoader instance.

To obtain a working instance, call getInstance().

Since:
0.4.0
  • Method Details

    • getInstance

      static FabricLoader getInstance()
      Returns the public-facing Fabric Loader instance.
    • getEntrypoints

      <T> List<T> getEntrypoints​(String key, Class<T> type)
      Returns all entrypoints declared under a key, assuming they are of a specific type.
      Type Parameters:
      T - the type of entrypoints
      Parameters:
      key - the key in entrypoint declaration in fabric.mod.json
      type - the type of entrypoints
      Returns:
      the obtained entrypoints
      See Also:
      getEntrypointContainers(String, Class)
    • getEntrypointContainers

      <T> List<EntrypointContainer<T>> getEntrypointContainers​(String key, Class<T> type)
      Returns all entrypoints declared under a key, assuming they are of a specific type.

      The entrypoint is declared in the fabric.mod.json as following:

      "entrypoints": { "<a key>": [ <a list of entrypoint declarations> ] }
      Multiple keys can be present in the entrypoints section.

      An entrypoint declaration indicates that an arbitrary notation is sent to a LanguageAdapter to offer an instance of entrypoint. It is either a string, or an object. An object declaration is of this form:

      { "adapter": "<a custom adatper>" "value": "<an arbitrary notation>" }
      A string declaration <an arbitrary notation> is equivalent to
      { "adapter": "default" "value": "<an arbitrary notation>" }
      where the default adapter is the adapter offered by Fabric Loader.

      Type Parameters:
      T - the type of entrypoints
      Parameters:
      key - the key in entrypoint declaration in fabric.mod.json
      type - the type of entrypoints
      Returns:
      the entrypoint containers related to this key
      Throws:
      EntrypointException - if a problem arises during entrypoint creation
      See Also:
      LanguageAdapter
    • getMappingResolver

      MappingResolver getMappingResolver()
      Get the current mapping resolver.

      When performing reflection, a mod should always query the mapping resolver for the remapped names of members than relying on other heuristics.

      Returns:
      the current mapping resolver instance
      Since:
      0.4.1
    • getModContainer

      Optional<ModContainer> getModContainer​(String id)
      Gets the container for a given mod.
      Parameters:
      id - the ID of the mod
      Returns:
      the mod container, if present
    • getAllMods

      Collection<ModContainer> getAllMods()
      Gets all mod containers.
      Returns:
      a collection of all loaded mod containers
    • isModLoaded

      boolean isModLoaded​(String id)
      Checks if a mod with a given ID is loaded.
      Parameters:
      id - the ID of the mod, as defined in fabric.mod.json
      Returns:
      whether or not the mod is present in this Fabric Loader instance
    • isDevelopmentEnvironment

      boolean isDevelopmentEnvironment()
      Checks if Fabric Loader is currently running in a "development" environment. Can be used for enabling debug mode or additional checks.

      This should not be used to make assumptions on certain features, such as mappings, but as a toggle for certain functionalities.

      Returns:
      whether or not Loader is currently in a "development" environment
    • getEnvironmentType

      EnvType getEnvironmentType()
      Get the current environment type.
      Returns:
      the current environment type
    • getGameInstance

      @Deprecated Object getGameInstance()
      Deprecated.
      This method is experimental and it's use is discouraged.
      Get the current game instance. Can represent a game client or server object. As such, the exact return is dependent on the current environment type.

      The game instance may not always be available depending on the game version and environment.

      Returns:
      A client or server instance object
    • getGameDir

      Path getGameDir()
      Get the current game working directory.
      Returns:
      the working directory
    • getGameDirectory

      @Deprecated File getGameDirectory()
      Deprecated.
    • getConfigDir

      Path getConfigDir()
      Get the current directory for game configuration files.
      Returns:
      the configuration directory
    • getConfigDirectory

      @Deprecated File getConfigDirectory()
      Deprecated.
    • getLaunchArguments

      String[] getLaunchArguments​(boolean sanitize)
      Gets the command line arguments used to launch the game. If this is printed for debugging, make sure sanitize is true.
      Parameters:
      sanitize - Whether to remove sensitive information
      Returns:
      the launch arguments