Package pers.neige.neigeitems.manager
Class BaseActionManager
-
- All Implemented Interfaces:
public abstract class BaseActionManager
-
-
Field Summary
Fields Modifier and Type Field Description public final Action
NULL_ACTION
public final Text
NULL_TEXT
public final Evaluator<String>
NULL_STRING_EVALUATOR
public final Evaluator<Integer>
NULL_INTEGER_EVALUATOR
public final Evaluator<Double>
NULL_DOUBLE_EVALUATOR
public final Plugin
plugin
public final HashMap<String, BiFunction<ActionContext, String, CompletableFuture<ActionResult>>>
actions
public final ScriptEngine
engine
public final ConcurrentHashMap<String, CompiledScript>
conditionScripts
public final ConcurrentHashMap<String, CompiledScript>
actionScripts
-
Constructor Summary
Constructors Constructor Description BaseActionManager(Plugin plugin)
-
Method Summary
-
-
Method Detail
-
getPlugin
@NonNull() Plugin getPlugin()
-
getActions
@NonNull() HashMap<String, BiFunction<ActionContext, String, CompletableFuture<ActionResult>>> getActions()
-
getEngine
@NonNull() ScriptEngine getEngine()
-
getConditionScripts
@NonNull() ConcurrentHashMap<String, CompiledScript> getConditionScripts()
-
getActionScripts
@NonNull() ConcurrentHashMap<String, CompiledScript> getActionScripts()
-
reload
void reload()
-
runAction
@Deprecated()@Deprecated(message = "使用Action.eval(ActionContext)方法代替")@NonNull() ActionResult runAction(@NonNull() Action action)
执行动作
- Parameters:
action
- 动作内容- Returns:
永远返回 Results.SUCCESS, 这是历史遗留问题, 要获取真实结果请调用 runActionWithResult 方法.
-
runActionWithResult
@Deprecated()@Deprecated(message = "使用Action.eval(ActionContext)方法代替")@NonNull() CompletableFuture<ActionResult> runActionWithResult(@NonNull() Action action)
执行动作
- Parameters:
action
- 动作内容- Returns:
执行结果
-
runAction
@Deprecated()@Deprecated(message = "使用Action.eval(ActionContext)方法代替")@NonNull() ActionResult runAction(@NonNull() Action action, @NonNull() ActionContext context)
执行动作
- Parameters:
action
- 动作内容context
- 动作上下文- Returns:
永远返回 Results.SUCCESS, 这是历史遗留问题, 要获取真实结果请调用 runActionWithResult 方法.
-
runActionWithResult
@Deprecated()@Deprecated(message = "使用Action.eval(ActionContext)方法代替")@NonNull() CompletableFuture<ActionResult> runActionWithResult(@NonNull() Action action, @NonNull() ActionContext context)
执行动作
- Parameters:
action
- 动作内容context
- 动作上下文- Returns:
执行结果
-
runAction
@NonNull() CompletableFuture<ActionResult> runAction(@NonNull() RawStringAction action, @NonNull() ActionContext context)
执行动作
- Parameters:
action
- 动作内容context
- 动作上下文- Returns:
执行结果
-
runAction
@NonNull() CompletableFuture<ActionResult> runAction(@NonNull() StringAction action, @NonNull() ActionContext context)
执行动作
- Parameters:
action
- 动作内容context
- 动作上下文- Returns:
执行结果
-
getSectionConfig
@Nullable() ConfigurationSection getSectionConfig(@NonNull() ActionContext context)
执行 StringAction 进行节点解析的时候传入的节点配置
- Parameters:
context
- 动作上下文- Returns:
执行结果
-
runAction
@NonNull() CompletableFuture<ActionResult> runAction(@NonNull() JsAction action, @NonNull() ActionContext context)
执行动作
- Parameters:
action
- 动作内容context
- 动作上下文- Returns:
执行结果
-
runAction
@NonNull() CompletableFuture<ActionResult> runAction(@NonNull() ListAction action, @NonNull() ActionContext context)
执行动作
- Parameters:
action
- 动作内容context
- 动作上下文- Returns:
执行结果
-
runAction
@NonNull() CompletableFuture<ActionResult> runAction(@NonNull() ListAction action, @NonNull() ActionContext context, int fromIndex)
执行动作
- Parameters:
action
- 动作内容context
- 动作上下文fromIndex
- 从这个索引对应的位置开始执行- Returns:
执行结果
-
runAction
@NonNull() CompletableFuture<ActionResult> runAction(@NonNull() ConditionAction action, @NonNull() ActionContext context)
执行动作
- Parameters:
action
- 动作内容context
- 动作上下文- Returns:
执行结果
-
runAction
@NonNull() CompletableFuture<ActionResult> runAction(@NonNull() LabelAction action, @NonNull() ActionContext context)
执行动作
- Parameters:
action
- 动作内容context
- 动作上下文- Returns:
执行结果
-
runAction
@NonNull() CompletableFuture<ActionResult> runAction(@NonNull() WeightAction action, @NonNull() ActionContext context)
执行动作
- Parameters:
action
- 动作内容context
- 动作上下文- Returns:
执行结果
-
runAction
@NonNull() CompletableFuture<ActionResult> runAction(@NonNull() ConditionWeightAction action, @NonNull() ActionContext context)
执行动作
- Parameters:
action
- 动作内容context
- 动作上下文- Returns:
执行结果
-
runAction
@NonNull() CompletableFuture<ActionResult> runAction(@NonNull() WhileAction action, @NonNull() ActionContext context)
执行动作
- Parameters:
action
- 动作内容context
- 动作上下文- Returns:
执行结果
-
runAction
@NonNull() CompletableFuture<ActionResult> runAction(@NonNull() KeyAction action, @NonNull() ActionContext context)
执行动作
- Parameters:
action
- 动作内容context
- 动作上下文- Returns:
执行结果
-
runAction
@NonNull() CompletableFuture<ActionResult> runAction(@NonNull() ContainsAction action, @NonNull() ActionContext context)
执行动作
- Parameters:
action
- 动作内容context
- 动作上下文- Returns:
执行结果
-
runAction
@NonNull() <T extends Comparable<out Object>> CompletableFuture<ActionResult> runAction(@NonNull() TreeAction<T> action, @NonNull() ActionContext context)
执行动作
- Parameters:
action
- 动作内容context
- 动作上下文- Returns:
执行结果
-
runAction
@NonNull() CompletableFuture<ActionResult> runAction(@NonNull() RepeatAction action, @NonNull() ActionContext context)
执行动作
- Parameters:
action
- 动作内容context
- 动作上下文- Returns:
执行结果
-
runAction
@NonNull() CompletableFuture<ActionResult> runAction(@NonNull() RepeatAction action, @NonNull() ActionContext context, int repeat, int count)
执行动作
- Parameters:
action
- 动作内容context
- 动作上下文- Returns:
执行结果
-
parseCondition
@NonNull() ActionResult parseCondition(@Nullable() String condition, @NonNull() ActionContext context)
解析条件
- Parameters:
condition
- 条件内容context
- 动作上下文- Returns:
执行结果
-
parseCondition
@NonNull() ActionResult parseCondition(@Nullable() ScriptWithSource condition, @NonNull() ActionContext context)
解析条件
- Parameters:
condition
- 条件内容context
- 动作上下文- Returns:
执行结果
-
parseCondition
@NonNull() ActionResult parseCondition(@Nullable() String conditionString, @Nullable() CompiledScript condition, @NonNull() ActionContext context)
解析条件
- Parameters:
conditionString
- 条件文本(用于在报错的时候向后台提示)condition
- 已编译条件context
- 动作上下文- Returns:
执行结果
-
addFunction
void addFunction(@NonNull() Collection<String> ids, @Nullable() BiFunction<ActionContext, String, CompletableFuture<ActionResult>> function)
添加物品动作
- Parameters:
ids
- 动作IDfunction
- 动作执行函数
-
addFunction
void addFunction(@NonNull() Collection<String> ids, boolean asyncSafe, @Nullable() BiFunction<ActionContext, String, CompletableFuture<ActionResult>> function)
添加物品动作
- Parameters:
ids
- 动作IDasyncSafe
- 动作是否可以异步执行function
- 动作执行函数
-
addFunction
void addFunction(@NonNull() String id, @Nullable() BiFunction<ActionContext, String, CompletableFuture<ActionResult>> function)
添加物品动作
- Parameters:
id
- 动作IDfunction
- 动作执行函数
-
addFunction
void addFunction(@NonNull() String id, boolean asyncSafe, @Nullable() BiFunction<ActionContext, String, CompletableFuture<ActionResult>> function)
添加物品动作
- Parameters:
id
- 动作IDasyncSafe
- 动作是否可以异步执行function
- 动作执行函数
-
addConsumer
void addConsumer(@NonNull() Collection<String> ids, @Nullable() BiConsumer<ActionContext, String> consumer)
添加物品动作
- Parameters:
ids
- 动作IDconsumer
- 动作执行函数
-
addConsumer
void addConsumer(@NonNull() Collection<String> ids, boolean asyncSafe, @Nullable() BiConsumer<ActionContext, String> consumer)
添加物品动作
- Parameters:
ids
- 动作IDasyncSafe
- 动作是否可以异步执行consumer
- 动作执行函数
-
addConsumer
void addConsumer(@NonNull() String id, @Nullable() BiConsumer<ActionContext, String> consumer)
添加物品动作
- Parameters:
id
- 动作IDconsumer
- 动作执行函数
-
addConsumer
void addConsumer(@NonNull() String id, boolean asyncSafe, @Nullable() BiConsumer<ActionContext, String> consumer)
添加物品动作
- Parameters:
id
- 动作IDasyncSafe
- 动作是否可以异步执行consumer
- 动作执行函数
-
loadJSLib
void loadJSLib()
将当前BaseActionManager所属插件的"JavaScriptLib/lib.js"资源文件加载至JS引擎
-
loadJSLib
void loadJSLib(@NonNull() String pluginName, @NonNull() String resourceName)
将其他插件的资源文件加载至JS引擎
- Parameters:
pluginName
- 目标插件名resourceName
- 资源文件名
-
-
-
-