diff --git a/src/main/java/baritone/Baritone.java b/src/main/java/baritone/Baritone.java
index 6199d03f5..457b49a45 100755
--- a/src/main/java/baritone/Baritone.java
+++ b/src/main/java/baritone/Baritone.java
@@ -64,7 +64,7 @@ public class Baritone implements IBaritone {
private final GameEventHandler gameEventHandler;
private final PathingBehavior pathingBehavior;
- public final Elytra elytra;
+ private final ElytraBehavior elytraBehavior;
private final LookBehavior lookBehavior;
private final InventoryBehavior inventoryBehavior;
private final InputOverrideHandler inputOverrideHandler;
@@ -103,7 +103,7 @@ public class Baritone implements IBaritone {
{
this.pathingBehavior = this.registerBehavior(PathingBehavior::new);
- this.elytra = this.registerBehavior(Elytra::new);
+ this.elytraBehavior = this.registerBehavior(ElytraBehavior::new);
this.lookBehavior = this.registerBehavior(LookBehavior::new);
this.inventoryBehavior = this.registerBehavior(InventoryBehavior::new);
this.inputOverrideHandler = this.registerBehavior(InputOverrideHandler::new);
@@ -232,6 +232,10 @@ public class Baritone implements IBaritone {
return this.commandManager;
}
+ public ElytraBehavior getElytraBehavior() {
+ return this.elytraBehavior;
+ }
+
@Override
public void openClick() {
new Thread(() -> {
diff --git a/src/main/java/baritone/Elytra.java b/src/main/java/baritone/behavior/ElytraBehavior.java
similarity index 99%
rename from src/main/java/baritone/Elytra.java
rename to src/main/java/baritone/behavior/ElytraBehavior.java
index 57f0f7cf4..473fd7f8b 100644
--- a/src/main/java/baritone/Elytra.java
+++ b/src/main/java/baritone/behavior/ElytraBehavior.java
@@ -15,8 +15,9 @@
* along with Baritone. If not, see .
*/
-package baritone;
+package baritone.behavior;
+import baritone.Baritone;
import baritone.api.event.events.ChunkEvent;
import baritone.api.event.events.TickEvent;
import baritone.api.event.events.type.EventState;
@@ -24,7 +25,6 @@ import baritone.api.utils.BetterBlockPos;
import baritone.api.utils.Helper;
import baritone.api.utils.Rotation;
import baritone.api.utils.RotationUtils;
-import baritone.behavior.Behavior;
import baritone.utils.BlockStateInterface;
import com.mojang.realmsclient.util.Pair;
import dev.babbaj.pathfinder.NetherPathfinder;
@@ -48,7 +48,7 @@ import java.util.concurrent.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;
-public class Elytra extends Behavior implements Helper {
+public final class ElytraBehavior extends Behavior implements Helper {
private static final long NETHER_SEED = 146008555100680L;
@@ -64,7 +64,7 @@ public class Elytra extends Behavior implements Helper {
private int goingTo;
private int sinceFirework;
- protected Elytra(Baritone baritone) {
+ public ElytraBehavior(Baritone baritone) {
super(baritone);
this.context = new Context(NETHER_SEED);
this.lines = new ArrayList<>();
diff --git a/src/main/java/baritone/command/defaults/ElytraCommand.java b/src/main/java/baritone/command/defaults/ElytraCommand.java
index 2d2e3f0ee..47db0e33e 100644
--- a/src/main/java/baritone/command/defaults/ElytraCommand.java
+++ b/src/main/java/baritone/command/defaults/ElytraCommand.java
@@ -41,7 +41,7 @@ public class ElytraCommand extends Command {
ICustomGoalProcess customGoalProcess = baritone.getCustomGoalProcess();
args.requireMax(0);
GoalXZ goal = (GoalXZ) customGoalProcess.getGoal();
- ((Baritone) baritone).elytra.path(new BlockPos(goal.getX(), 64, goal.getZ()));
+ ((Baritone) baritone).getElytraBehavior().path(new BlockPos(goal.getX(), 64, goal.getZ()));
}
@Override
diff --git a/src/main/java/baritone/command/defaults/ExecutionControlCommands.java b/src/main/java/baritone/command/defaults/ExecutionControlCommands.java
index 66b2d156d..ef566bb8d 100644
--- a/src/main/java/baritone/command/defaults/ExecutionControlCommands.java
+++ b/src/main/java/baritone/command/defaults/ExecutionControlCommands.java
@@ -181,7 +181,7 @@ public class ExecutionControlCommands {
paused[0] = false;
}
baritone.getPathingBehavior().cancelEverything();
- ((Baritone) baritone).elytra.cancel();
+ ((Baritone) baritone).getElytraBehavior().cancel();
logDirect("ok canceled");
}
diff --git a/src/main/java/baritone/command/defaults/ForceCancelCommand.java b/src/main/java/baritone/command/defaults/ForceCancelCommand.java
index 3a54ce69e..60ccdab01 100644
--- a/src/main/java/baritone/command/defaults/ForceCancelCommand.java
+++ b/src/main/java/baritone/command/defaults/ForceCancelCommand.java
@@ -40,7 +40,7 @@ public class ForceCancelCommand extends Command {
IPathingBehavior pathingBehavior = baritone.getPathingBehavior();
pathingBehavior.cancelEverything();
pathingBehavior.forceCancel();
- ((Baritone) baritone).elytra.cancel();
+ ((Baritone) baritone).getElytraBehavior().cancel();
logDirect("ok force canceled");
}
diff --git a/src/main/java/baritone/utils/PathRenderer.java b/src/main/java/baritone/utils/PathRenderer.java
index 491d7906e..fa8925042 100644
--- a/src/main/java/baritone/utils/PathRenderer.java
+++ b/src/main/java/baritone/utils/PathRenderer.java
@@ -24,6 +24,7 @@ import baritone.api.pathing.goals.*;
import baritone.api.utils.BetterBlockPos;
import baritone.api.utils.IPlayerContext;
import baritone.api.utils.interfaces.IGoalRenderPos;
+import baritone.behavior.ElytraBehavior;
import baritone.behavior.PathingBehavior;
import baritone.pathing.path.PathExecutor;
import com.mojang.realmsclient.util.Pair;
@@ -101,15 +102,17 @@ public final class PathRenderer implements IRenderer {
drawPath(next.getPath().positions(), 0, settings.colorNextPath.value, settings.fadePath.value, 10, 20);
}
- drawPath(behavior.baritone.elytra.visiblePath, 0, Color.RED, false, 0, 0);
- if (behavior.baritone.elytra.aimPos != null) {
- drawGoal(ctx.player(), new GoalBlock(behavior.baritone.elytra.aimPos), partialTicks, Color.GREEN);
+ final ElytraBehavior elytra = behavior.baritone.getElytraBehavior();
+
+ drawPath(elytra.visiblePath, 0, Color.RED, false, 0, 0);
+ if (elytra.aimPos != null) {
+ drawGoal(ctx.player(), new GoalBlock(elytra.aimPos), partialTicks, Color.GREEN);
}
- if (!behavior.baritone.elytra.lines.isEmpty() && Baritone.settings().renderRaytraces.value) {
+ if (!elytra.lines.isEmpty() && Baritone.settings().renderRaytraces.value) {
IRenderer.startLines(Color.BLUE, settings.pathRenderLineWidthPixels.value, settings.renderPathIgnoreDepth.value);
boolean orig = settings.renderPathAsLine.value;
settings.renderPathAsLine.value = true;
- for (Pair line : behavior.baritone.elytra.lines) {
+ for (Pair line : elytra.lines) {
emitLine(line.first().x, line.first().y, line.first().z, line.second().x, line.second().y, line.second().z);
}
settings.renderPathAsLine.value = orig;