fix parkour and multithread farm
This commit is contained in:
parent
01658286af
commit
ce4b1e09ed
@ -226,7 +226,7 @@ public class MovementParkour extends Movement {
|
|||||||
state.setStatus(MovementStatus.SUCCESS);
|
state.setStatus(MovementStatus.SUCCESS);
|
||||||
}
|
}
|
||||||
} else if (!ctx.playerFeet().equals(src)) {
|
} else if (!ctx.playerFeet().equals(src)) {
|
||||||
if (ctx.playerFeet().equals(src.offset(direction)) || ctx.player().posY - ctx.playerFeet().getY() > 0.0001) {
|
if (ctx.playerFeet().equals(src.offset(direction)) || ctx.player().posY - src.y > 0.0001) {
|
||||||
if (!MovementHelper.canWalkOn(ctx, dest.down()) && !ctx.player().onGround && MovementHelper.attemptToPlaceABlock(state, baritone, dest.down(), true) == PlaceResult.READY_TO_PLACE) {
|
if (!MovementHelper.canWalkOn(ctx, dest.down()) && !ctx.player().onGround && MovementHelper.attemptToPlaceABlock(state, baritone, dest.down(), true) == PlaceResult.READY_TO_PLACE) {
|
||||||
// go in the opposite order to check DOWN before all horizontals -- down is preferable because you don't have to look to the side while in midair, which could mess up the trajectory
|
// go in the opposite order to check DOWN before all horizontals -- down is preferable because you don't have to look to the side while in midair, which could mess up the trajectory
|
||||||
state.setInput(Input.CLICK_RIGHT, true);
|
state.setInput(Input.CLICK_RIGHT, true);
|
||||||
|
@ -54,6 +54,9 @@ public final class FarmProcess extends BaritoneProcessHelper implements IFarmPro
|
|||||||
|
|
||||||
private boolean active;
|
private boolean active;
|
||||||
|
|
||||||
|
private List<BlockPos> locations;
|
||||||
|
private int tickCount;
|
||||||
|
|
||||||
private static final List<Item> FARMLAND_PLANTABLE = Arrays.asList(
|
private static final List<Item> FARMLAND_PLANTABLE = Arrays.asList(
|
||||||
Items.BEETROOT_SEEDS,
|
Items.BEETROOT_SEEDS,
|
||||||
Items.MELON_SEEDS,
|
Items.MELON_SEEDS,
|
||||||
@ -93,6 +96,7 @@ public final class FarmProcess extends BaritoneProcessHelper implements IFarmPro
|
|||||||
@Override
|
@Override
|
||||||
public void farm() {
|
public void farm() {
|
||||||
active = true;
|
active = true;
|
||||||
|
locations = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
private enum Harvest {
|
private enum Harvest {
|
||||||
@ -164,9 +168,12 @@ public final class FarmProcess extends BaritoneProcessHelper implements IFarmPro
|
|||||||
if (Baritone.settings().replantNetherWart.value) {
|
if (Baritone.settings().replantNetherWart.value) {
|
||||||
scan.add(Blocks.SOUL_SAND);
|
scan.add(Blocks.SOUL_SAND);
|
||||||
}
|
}
|
||||||
|
if (Baritone.settings().mineGoalUpdateInterval.value != 0 && tickCount++ % Baritone.settings().mineGoalUpdateInterval.value == 0) {
|
||||||
List<BlockPos> locations = WorldScanner.INSTANCE.scanChunkRadius(ctx, scan, 256, 10, 4);
|
Baritone.getExecutor().execute(() -> locations = WorldScanner.INSTANCE.scanChunkRadius(ctx, scan, 256, 10, 10));
|
||||||
|
}
|
||||||
|
if (locations == null) {
|
||||||
|
return new PathingCommand(null, PathingCommandType.REQUEST_PAUSE);
|
||||||
|
}
|
||||||
List<BlockPos> toBreak = new ArrayList<>();
|
List<BlockPos> toBreak = new ArrayList<>();
|
||||||
List<BlockPos> openFarmland = new ArrayList<>();
|
List<BlockPos> openFarmland = new ArrayList<>();
|
||||||
List<BlockPos> bonemealable = new ArrayList<>();
|
List<BlockPos> bonemealable = new ArrayList<>();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user