Class InputHandlerBuilder
java.lang.Object
top.magstar.framework.input.utils.InputHandlerBuilder
输入处理器构建器 - 使用Lambda表达式流式构建InputHandler
- Since:
- 1.0.0
- Version:
- 1.0.0
- Author:
- Berry_so
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild(InputFactory factory) 构建InputHandlercancelOnDamage(boolean cancel) 设置是否在受伤时取消cancelOnMove(boolean cancel) 设置是否在移动时取消获取接受回调Consumer<org.bukkit.entity.Player> 获取取消回调获取拒绝回调获取下一个输入处理器获取提示消息long获取超时时间Consumer<org.bukkit.entity.Player> 获取超时回调获取验证器boolean检查是否在受伤时取消boolean检查是否在移动时取消nextInput(@Nullable InputHandler handler) 设置下一个输入处理器onAccept(@Nullable InputAcceptCallback callback) 设置接受回调设置取消回调onDenied(@Nullable InputDeniedCallback callback) 设置拒绝回调设置超时回调promptMessage(@NotNull String message) 设置提示消息promptMessage(@NotNull SmartString message) 设置提示消息 - 支持SmartStringtimeout(long milliseconds) 设置超时时间设置输入验证器
-
Constructor Details
-
InputHandlerBuilder
public InputHandlerBuilder()构造输入处理器构建器
-
-
Method Details
-
validator
设置输入验证器- Parameters:
validator- 验证器函数,接收输入字符串返回是否有效- Returns:
- 当前构建器实例
-
onCancel
public InputHandlerBuilder onCancel(@Nullable @Nullable Consumer<org.bukkit.entity.Player> callback) 设置取消回调- Parameters:
callback- 取消时的回调函数- Returns:
- 当前构建器实例
-
onTimeout
public InputHandlerBuilder onTimeout(@Nullable @Nullable Consumer<org.bukkit.entity.Player> callback) 设置超时回调- Parameters:
callback- 超时时的回调函数- Returns:
- 当前构建器实例
-
onAccept
设置接受回调- Parameters:
callback- 接受输入时的回调函数- Returns:
- 当前构建器实例
-
onDenied
设置拒绝回调- Parameters:
callback- 拒绝输入时的回调函数- Returns:
- 当前构建器实例
-
nextInput
设置下一个输入处理器- Parameters:
handler- 下一个输入处理器,用于链式输入- Returns:
- 当前构建器实例
-
promptMessage
设置提示消息 - 支持SmartString- Parameters:
message- 提示消息- Returns:
- 当前构建器实例
-
promptMessage
设置提示消息- Parameters:
message- 提示消息字符串- Returns:
- 当前构建器实例
-
timeout
设置超时时间- Parameters:
milliseconds- 超时时间(毫秒),0表示永不超时- Returns:
- 当前构建器实例
-
cancelOnMove
设置是否在移动时取消- Parameters:
cancel- true表示移动时取消,false表示不取消- Returns:
- 当前构建器实例
-
cancelOnDamage
设置是否在受伤时取消- Parameters:
cancel- true表示受伤时取消,false表示不取消- Returns:
- 当前构建器实例
-
build
构建InputHandler- Parameters:
factory- 输入工厂- Returns:
- 创建的输入处理器实例
- Throws:
IllegalStateException- 如果验证器未设置
-
getValidator
-
getCancelCallback
-
getTimeoutCallback
-
getAcceptCallback
-
getDeniedCallback
-
getNextHandler
-
getPromptMessage
-
getTimeout
public long getTimeout()获取超时时间- Returns:
- 超时时间(毫秒)
-
isCancelOnMove
public boolean isCancelOnMove()检查是否在移动时取消- Returns:
- true表示移动时取消,false表示不取消
-
isCancelOnDamage
public boolean isCancelOnDamage()检查是否在受伤时取消- Returns:
- true表示受伤时取消,false表示不取消
-