1
0
forked from Clones/Controlify
Files
Controlify/src/main/java/dev/isxander/controlify/api/buttonguide/ButtonGuideRegistry.java
2023-02-27 18:08:40 +00:00

30 lines
1.4 KiB
Java

package dev.isxander.controlify.api.buttonguide;
import dev.isxander.controlify.bindings.ControllerBinding;
/**
* Allows you to register your own actions to the button guide.
* This should be called through {@link dev.isxander.controlify.api.event.ControlifyEvents#BUTTON_GUIDE_REGISTRY} as
* these should be called every time the guide is initialised.
*/
public interface ButtonGuideRegistry {
/**
* Registers a new action to the button guide.
*
* @param binding the binding for the action, if unbound, the action is hidden.
* @param location the location of the action, left or right.
* @param priority the priority of the action, used to sort the list.
* @param supplier the supplier for the name of the action. can be empty to hide the action.
*/
void registerGuideAction(ControllerBinding<?> binding, ActionLocation location, ActionPriority priority, GuideActionNameSupplier supplier);
/**
* Registers a new action to the button guide.
*
* @param binding the binding for the action, if unbound, the action is hidden.
* @param location the location of the action, left or right.
* @param supplier the supplier for the name of the action. can be empty to hide the action.
*/
void registerGuideAction(ControllerBinding<?> binding, ActionLocation location, GuideActionNameSupplier supplier);
}