From d2a046c8b48741d9bb47143ecb14bd3c0669ce89 Mon Sep 17 00:00:00 2001 From: Orinion Date: Wed, 28 Aug 2019 20:15:41 +0200 Subject: [PATCH] Add replantCrops setting add replantCrops setting, simmilar to replantNetherWart for the other crops. --- src/api/java/baritone/api/Settings.java | 5 +++++ src/main/java/baritone/process/FarmProcess.java | 12 +++++++++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/src/api/java/baritone/api/Settings.java b/src/api/java/baritone/api/Settings.java index c7cee8bb..0d8e37a0 100644 --- a/src/api/java/baritone/api/Settings.java +++ b/src/api/java/baritone/api/Settings.java @@ -656,6 +656,11 @@ public final class Settings { */ public final Setting exploreMaintainY = new Setting<>(64); + /** + * Replant normal Crops while farming and leave cactus and sugarcane to regrow + */ + public final Setting replantCrops = new Setting<>(true); + /** * Replant nether wart while farming */ diff --git a/src/main/java/baritone/process/FarmProcess.java b/src/main/java/baritone/process/FarmProcess.java index 350b1ac8..d9cf9b2a 100644 --- a/src/main/java/baritone/process/FarmProcess.java +++ b/src/main/java/baritone/process/FarmProcess.java @@ -112,13 +112,17 @@ public final class FarmProcess extends BaritoneProcessHelper implements IFarmPro SUGARCANE(Blocks.REEDS, null) { @Override public boolean readyToHarvest(World world, BlockPos pos, IBlockState state) { - return world.getBlockState(pos.down()).getBlock() instanceof BlockReed; + if(Baritone.settings().replantCrops.value) + return world.getBlockState(pos.down()).getBlock() instanceof BlockReed; + return true; } }, CACTUS(Blocks.CACTUS, null) { @Override public boolean readyToHarvest(World world, BlockPos pos, IBlockState state) { - return world.getBlockState(pos.down()).getBlock() instanceof BlockCactus; + if(Baritone.settings().replantCrops.value) + return world.getBlockState(pos.down()).getBlock() instanceof BlockCactus; + return true; } }; public final Block block; @@ -166,7 +170,9 @@ public final class FarmProcess extends BaritoneProcessHelper implements IFarmPro for (Harvest harvest : Harvest.values()) { scan.add(harvest.block); } - scan.add(Blocks.FARMLAND); + if (Baritone.settings().replantCrops.value) { + scan.add(Blocks.FARMLAND); + } if (Baritone.settings().replantNetherWart.value) { scan.add(Blocks.SOUL_SAND); }