RuneHive-Tarnish
Neural OSRS Enhancement Framework
Loading...
Searching...
No Matches
ConsecutiveAction.java
1package com.osroyale.game.action;
2
3import com.osroyale.game.world.entity.mob.Mob;
4
5import java.util.LinkedList;
6import java.util.function.Consumer;
7
8public abstract class ConsecutiveAction<T extends Mob> extends Action<T> {
9
11 private LinkedList<Consumer<Action<T>>> actions = new LinkedList<>();
12
19 public ConsecutiveAction(T mob) {
20 super(mob, 1, true);
21 }
22
23 @Override
24 public void execute() {
25 if (!actions.isEmpty()) {
26 Consumer<Action<T>> action = actions.poll();
27 action.accept(this);
28 }
29 }
30
35 protected void add(Consumer<Action<T>> action) {
36 actions.add(action);
37 }
38
43 protected void addFirst(Consumer<Action<T>> action) {
44 actions.addFirst(action);
45 }
46
47}
Action(T mob, int delay, boolean instant)
Definition Action.java:24