RuneHive-Tarnish
Neural OSRS Enhancement Framework
Loading...
Searching...
No Matches
ObjectPlacementEvent.java
1package com.osroyale.game.task.impl;
2
3import com.osroyale.game.task.Task;
4import com.osroyale.game.world.object.CustomGameObject;
5
38
39public class ObjectPlacementEvent extends Task {
40
42 private final CustomGameObject object;
43
45 private final Runnable onDestination;
46
48 public ObjectPlacementEvent(CustomGameObject object, int delay) {
49 this(object, delay, () -> {
50 });
51 }
52
54 public ObjectPlacementEvent(CustomGameObject object, int delay, Runnable onDestination) {
55 super(false, delay);
56 this.object = object;
57 this.onDestination = onDestination;
58 }
59
60 @Override
61 public void onSchedule() {
62 if (!object.isRegistered())
63 object.register();
64 }
65
66 @Override
67 public void execute() {
68 this.cancel();
69 }
70
71 @Override
72 public void onCancel(boolean logout) {
73 onDestination.run();
74
75 if (object.isRegistered()) {
76 object.unregister();
77 }
78 }
79
80}
synchronized final void cancel()
Definition Task.java:147
Task(boolean instant, int delay)
Definition Task.java:75
ObjectPlacementEvent(CustomGameObject object, int delay, Runnable onDestination)
ObjectPlacementEvent(CustomGameObject object, int delay)