Misc
* Rename schematicaOnlyBuildSelection to buildOnlySelection * Make it useable with #build as well * remove debugging code I forgot
This commit is contained in:
parent
c13cf4f29c
commit
46066d4cac
@ -848,9 +848,9 @@ public final class Settings {
|
|||||||
public final Setting<Boolean> skipFailedLayers = new Setting<>(false);
|
public final Setting<Boolean> skipFailedLayers = new Setting<>(false);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Only build the selected part of the schematic when using #schematica
|
* Only build the selected part of schematics
|
||||||
*/
|
*/
|
||||||
public final Setting<Boolean> schematicaOnlyBuildSelection = new Setting<>(false);
|
public final Setting<Boolean> buildOnlySelection = new Setting<>(false);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* How far to move before repeating the build. 0 to disable repeating on a certain axis, 0,0,0 to disable entirely
|
* How far to move before repeating the build. 0 to disable repeating on a certain axis, 0,0,0 to disable entirely
|
||||||
|
@ -141,6 +141,11 @@ public final class BuilderProcess extends BaritoneProcessHelper implements IBuil
|
|||||||
parsed = new MapArtSchematic((IStaticSchematic) parsed);
|
parsed = new MapArtSchematic((IStaticSchematic) parsed);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (Baritone.settings().buildOnlySelection.value) {
|
||||||
|
parsed = new SelectionSchematic(parsed, origin, baritone.getSelectionManager().getSelections());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
build(name, parsed, origin);
|
build(name, parsed, origin);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -153,7 +158,9 @@ public final class BuilderProcess extends BaritoneProcessHelper implements IBuil
|
|||||||
IStaticSchematic s = schematic.get().getFirst();
|
IStaticSchematic s = schematic.get().getFirst();
|
||||||
BlockPos origin = schematic.get().getSecond();
|
BlockPos origin = schematic.get().getSecond();
|
||||||
ISchematic schem = Baritone.settings().mapArtMode.value ? new MapArtSchematic(s) : s;
|
ISchematic schem = Baritone.settings().mapArtMode.value ? new MapArtSchematic(s) : s;
|
||||||
schem = Baritone.settings().schematicaOnlyBuildSelection.value ? new SelectionSchematic(schem, origin, baritone.getSelectionManager().getSelections()) : schem;
|
if (Baritone.settings().buildOnlySelection.value) {
|
||||||
|
schem = new SelectionSchematic(schem, origin, baritone.getSelectionManager().getSelections());
|
||||||
|
}
|
||||||
this.build(
|
this.build(
|
||||||
schematic.get().getFirst().toString(),
|
schematic.get().getFirst().toString(),
|
||||||
schem,
|
schem,
|
||||||
|
@ -22,7 +22,7 @@ import baritone.api.schematic.MaskSchematic;
|
|||||||
import baritone.api.selection.ISelection;
|
import baritone.api.selection.ISelection;
|
||||||
import net.minecraft.block.state.IBlockState;
|
import net.minecraft.block.state.IBlockState;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.Vec3i;
|
||||||
|
|
||||||
import java.util.stream.Stream;
|
import java.util.stream.Stream;
|
||||||
|
|
||||||
@ -30,17 +30,14 @@ public class SelectionSchematic extends MaskSchematic {
|
|||||||
|
|
||||||
private final ISelection[] selections;
|
private final ISelection[] selections;
|
||||||
|
|
||||||
public SelectionSchematic(ISchematic schematic, BlockPos origin, ISelection[] selections) {
|
public SelectionSchematic(ISchematic schematic, Vec3i origin, ISelection[] selections) {
|
||||||
super(schematic);
|
super(schematic);
|
||||||
baritone.api.utils.Helper.HELPER.logDirect(String.format("%s", selections[0].min()));
|
|
||||||
this.selections = Stream.of(selections).map(
|
this.selections = Stream.of(selections).map(
|
||||||
sel -> sel
|
sel -> sel
|
||||||
.shift(EnumFacing.WEST, origin.getX())
|
.shift(EnumFacing.WEST, origin.getX())
|
||||||
.shift(EnumFacing.DOWN, origin.getY())
|
.shift(EnumFacing.DOWN, origin.getY())
|
||||||
.shift(EnumFacing.NORTH, origin.getZ()))
|
.shift(EnumFacing.NORTH, origin.getZ()))
|
||||||
.toArray(ISelection[]::new);
|
.toArray(ISelection[]::new);
|
||||||
baritone.api.utils.Helper.HELPER.logDirect(String.format("%s", this.selections[0].min()));
|
|
||||||
baritone.api.utils.Helper.HELPER.logDirect(String.format("%s", origin));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
Loading…
Reference in New Issue
Block a user