build repeat vector
This commit is contained in:
parent
482d874af2
commit
1501d721e7
@ -23,7 +23,7 @@ import net.minecraft.block.Block;
|
|||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
import net.minecraft.init.Blocks;
|
import net.minecraft.init.Blocks;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.math.Vec3i;
|
||||||
import net.minecraft.util.text.ITextComponent;
|
import net.minecraft.util.text.ITextComponent;
|
||||||
|
|
||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
@ -663,14 +663,9 @@ public final class Settings {
|
|||||||
public final Setting<Boolean> buildInLayers = new Setting<>(false);
|
public final Setting<Boolean> buildInLayers = new Setting<>(false);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* How far to move before repeating the build. -1 for the size of the build in that axis. 0 to disable
|
* How far to move before repeating the build. 0 to disable repeating on a certain axis, 0,0,0 to disable entirely
|
||||||
*/
|
*/
|
||||||
public final Setting<Integer> buildRepeatDistance = new Setting<>(0);
|
public final Setting<Vec3i> buildRepeat = new Setting<>(new Vec3i(0, 0, 0));
|
||||||
|
|
||||||
/**
|
|
||||||
* What direction to repeat the build in
|
|
||||||
*/
|
|
||||||
public final Setting<EnumFacing> buildRepeatDirection = new Setting<>(EnumFacing.NORTH);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Allow standing above a block while mining it, in BuilderProcess
|
* Allow standing above a block while mining it, in BuilderProcess
|
||||||
|
@ -21,6 +21,7 @@ import baritone.api.Settings;
|
|||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
|
import net.minecraft.util.math.Vec3i;
|
||||||
|
|
||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
import java.io.BufferedReader;
|
import java.io.BufferedReader;
|
||||||
@ -179,6 +180,11 @@ public class SettingsUtil {
|
|||||||
str -> new Color(Integer.parseInt(str.split(",")[0]), Integer.parseInt(str.split(",")[1]), Integer.parseInt(str.split(",")[2])),
|
str -> new Color(Integer.parseInt(str.split(",")[0]), Integer.parseInt(str.split(",")[1]), Integer.parseInt(str.split(",")[2])),
|
||||||
color -> color.getRed() + "," + color.getGreen() + "," + color.getBlue()
|
color -> color.getRed() + "," + color.getGreen() + "," + color.getBlue()
|
||||||
),
|
),
|
||||||
|
VEC3I(
|
||||||
|
Vec3i.class,
|
||||||
|
str -> new Vec3i(Integer.parseInt(str.split(",")[0]), Integer.parseInt(str.split(",")[1]), Integer.parseInt(str.split(",")[2])),
|
||||||
|
vec -> vec.getX() + "," + vec.getY() + "," + vec.getZ()
|
||||||
|
),
|
||||||
BLOCK(
|
BLOCK(
|
||||||
Block.class,
|
Block.class,
|
||||||
str -> BlockUtils.stringToBlockRequired(str.trim()),
|
str -> BlockUtils.stringToBlockRequired(str.trim()),
|
||||||
|
@ -330,20 +330,16 @@ public class BuilderProcess extends BaritoneProcessHelper implements IBuilderPro
|
|||||||
layer++;
|
layer++;
|
||||||
return onTick(calcFailed, isSafeToCancel);
|
return onTick(calcFailed, isSafeToCancel);
|
||||||
}
|
}
|
||||||
int distance = Baritone.settings().buildRepeatDistance.value;
|
Vec3i repeat = Baritone.settings().buildRepeat.value;
|
||||||
EnumFacing direction = Baritone.settings().buildRepeatDirection.value;
|
if (repeat.equals(new Vec3i(0, 0, 0))) {
|
||||||
if (distance == 0) {
|
|
||||||
logDirect("Done building");
|
logDirect("Done building");
|
||||||
onLostControl();
|
onLostControl();
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
// build repeat time
|
// build repeat time
|
||||||
if (distance == -1) {
|
|
||||||
distance = schematic.size(direction.getAxis());
|
|
||||||
}
|
|
||||||
layer = 0;
|
layer = 0;
|
||||||
origin = new BlockPos(origin).offset(direction, distance);
|
origin = new BlockPos(origin).add(repeat);
|
||||||
logDirect("Repeating build " + distance + " blocks to the " + direction + ", new origin is " + origin);
|
logDirect("Repeating build in vector " + repeat + ", new origin is " + origin);
|
||||||
return onTick(calcFailed, isSafeToCancel);
|
return onTick(calcFailed, isSafeToCancel);
|
||||||
}
|
}
|
||||||
trim(bcc);
|
trim(bcc);
|
||||||
|
Loading…
Reference in New Issue
Block a user