42public class ObjectReplacementEvent
extends Task {
48 private final int originalId;
51 private final int replacement;
54 private final Runnable onEndRun;
56 public ObjectReplacementEvent(
GameObject original,
int delay) {
58 this.original = original;
59 this.originalId = original.getId();
60 this.replacement = -1;
61 this.onEndRun = () -> {
65 public ObjectReplacementEvent(
GameObject original,
int replacement,
int delay) {
67 this.original = original;
68 this.originalId = original.getId();
69 this.replacement = replacement;
70 this.onEndRun = () -> {
74 public ObjectReplacementEvent(
GameObject original,
int replacement,
int delay, Runnable onEndRun) {
76 this.original = original;
77 this.originalId = original.getId();
78 this.replacement = replacement;
79 this.onEndRun = onEndRun;
84 if (replacement == -1) {
85 original.unregister();
88 original.transform(replacement);
98 if (replacement == -1) {
101 original.transform(originalId);