diff --git a/src/main/java/noppes/npcs/scripted/ScriptedActionManager.java b/src/main/java/noppes/npcs/scripted/ScriptedActionManager.java index 72be50b9b..c5711110d 100644 --- a/src/main/java/noppes/npcs/scripted/ScriptedActionManager.java +++ b/src/main/java/noppes/npcs/scripted/ScriptedActionManager.java @@ -38,22 +38,25 @@ public class ScriptedActionManager implements IActionManager { } @Override - public void scheduleAction(IAction action) { + public IAction scheduleAction(IAction action) { actionQueue.addLast(action); + return action; } @Override - public void scheduleAction(String name, int maxDuration, int startAfterTicks, Consumer task) { - scheduleAction(create(name, maxDuration, startAfterTicks, task)); + public IAction scheduleAction(String name, int maxDuration, int startAfterTicks, Consumer task) { + return scheduleAction(create(name, maxDuration, startAfterTicks, task)); } @Override - public void scheduleActionAt(int index, IAction action) { + public IAction scheduleActionAt(int index, IAction action) { if (index < 0 || index > actionQueue.size()) { actionQueue.addLast(action); } else { ((LinkedList) actionQueue).add(index, action); } + + return action; } @Override @@ -89,25 +92,25 @@ public class ScriptedActionManager implements IActionManager { } @Override - public void scheduleConditionalAction(String name, + public IAction scheduleConditionalAction(String name, int checkIntervalTicks, Supplier predicate, Consumer task) { - scheduleConditionalAction(name, checkIntervalTicks, predicate, task, -1); + return scheduleConditionalAction(name, checkIntervalTicks, predicate, task, -1); } @Override - public void scheduleConditionalAction(String name, + public IAction scheduleConditionalAction(String name, int checkIntervalTicks, Supplier predicate, Consumer task, int maxChecks) { - scheduleAction(new ConditionalAction(name, checkIntervalTicks, predicate, task, maxChecks)); + return scheduleAction(new ConditionalAction(name, checkIntervalTicks, predicate, task, maxChecks)); } @Override - public void scheduleConditionalAction(String name, int checkIntervalTicks, Supplier predicate, Supplier terminateWhen, Consumer task, int maxChecks) { - scheduleAction(new ConditionalAction(name, checkIntervalTicks, predicate, terminateWhen, task, maxChecks)); + public IAction scheduleConditionalAction(String name, int checkIntervalTicks, Supplier predicate, Supplier terminateWhen, Consumer task, int maxChecks) { + return scheduleAction(new ConditionalAction(name, checkIntervalTicks, predicate, terminateWhen, task, maxChecks)); } /**