Skip to content

Commit e8bcd05

Browse files
authored
Merge pull request cabaletta#4108 from babbaj/1.19.4
recover from flying into lava (and fix ignoreLava)
2 parents e492e5f + 5f5567f commit e8bcd05

1 file changed

Lines changed: 8 additions & 2 deletions

File tree

src/main/java/baritone/process/elytra/ElytraBehavior.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import baritone.api.event.events.*;
2525
import baritone.api.pathing.goals.GoalBlock;
2626
import baritone.api.utils.*;
27+
import baritone.api.utils.input.Input;
2728
import baritone.process.ElytraProcess;
2829
import baritone.utils.BlockStateInterface;
2930
import baritone.utils.IRenderer;
@@ -602,6 +603,11 @@ public void tick() {
602603
this.deployedFireworkLastTick = false;
603604
}
604605

606+
final boolean inLava = ctx.player().isInLava();
607+
if (inLava) {
608+
baritone.getInputOverrideHandler().setInputForceState(Input.JUMP, true);
609+
}
610+
605611
if (solution == null) {
606612
logDirect("no solution");
607613
return;
@@ -620,7 +626,7 @@ public void tick() {
620626
solution.context.start,
621627
solution.goingTo,
622628
solution.context.boost.isBoosted(),
623-
solution.forceUseFirework
629+
solution.forceUseFirework || inLava
624630
);
625631
}
626632

@@ -1002,7 +1008,7 @@ public boolean clearView(Vec3 start, Vec3 dest, boolean ignoreLava) {
10021008
// if start == dest then the cpp raytracer dies
10031009
clear = start.equals(dest) || this.context.raytrace(start, dest);
10041010
} else {
1005-
clear = ctx.world().clip(new ClipContext(start, dest, ClipContext.Block.COLLIDER, ClipContext.Fluid.ANY, ctx.player())).getType() == HitResult.Type.MISS;
1011+
clear = ctx.world().clip(new ClipContext(start, dest, ClipContext.Block.COLLIDER, ClipContext.Fluid.NONE, ctx.player())).getType() == HitResult.Type.MISS;
10061012
}
10071013

10081014
if (Baritone.settings().elytraRenderRaytraces.value) {

0 commit comments

Comments
 (0)