it launches

This commit is contained in:
Leijurv 2019-09-19 13:30:40 -07:00
parent 396a96d604
commit 23a592ec01
No known key found for this signature in database
GPG Key ID: 44A3EA646EADAC6A
48 changed files with 211 additions and 189 deletions

View File

@ -34,12 +34,12 @@ public final class BaritoneAPI {
private static final Settings settings; private static final Settings settings;
static { static {
settings = new Settings();
SettingsUtil.readAndApply(settings);
ServiceLoader<IBaritoneProvider> baritoneLoader = ServiceLoader.load(IBaritoneProvider.class); ServiceLoader<IBaritoneProvider> baritoneLoader = ServiceLoader.load(IBaritoneProvider.class);
Iterator<IBaritoneProvider> instances = baritoneLoader.iterator(); Iterator<IBaritoneProvider> instances = baritoneLoader.iterator();
provider = instances.next(); provider = instances.next();
settings = new Settings();
SettingsUtil.readAndApply(settings);
} }
public static IBaritoneProvider getProvider() { public static IBaritoneProvider getProvider() {

View File

@ -33,15 +33,6 @@ import baritone.api.utils.IPlayerContext;
*/ */
public interface IBaritone { public interface IBaritone {
/**
* Call as soon as Minecraft is ready, initializes all of the processes, behaviors, etc. This will
* only effectively be ran once, any additional calls are redundant because the initialization state
* is saved.
* <p>
* Or whenever your overeager utility client wants.
*/
void init();
/** /**
* @return The {@link IPathingBehavior} instance * @return The {@link IPathingBehavior} instance
* @see IPathingBehavior * @see IPathingBehavior

View File

@ -87,4 +87,4 @@ public interface ISchematic {
* @return The length (Z axis length) of this schematic * @return The length (Z axis length) of this schematic
*/ */
int lengthZ(); int lengthZ();
} }

View File

@ -34,4 +34,4 @@ public class MyChunkPos {
public String toString() { public String toString() {
return x + ", " + z; return x + ", " + z;
} }
} }

View File

@ -17,10 +17,8 @@
package baritone.api.utils.command; package baritone.api.utils.command;
import baritone.api.BaritoneAPI;
import baritone.api.IBaritone; import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.event.listener.AbstractGameEventListener;
import baritone.api.utils.Helper; import baritone.api.utils.Helper;
import baritone.api.utils.IPlayerContext; import baritone.api.utils.IPlayerContext;
import baritone.api.utils.command.execution.CommandExecution; import baritone.api.utils.command.execution.CommandExecution;
@ -33,10 +31,9 @@ import java.util.Locale;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import java.util.stream.Stream; import java.util.stream.Stream;
public abstract class Command implements Helper, AbstractGameEventListener { public abstract class Command implements Helper {
protected IBaritone baritone = BaritoneAPI.getProvider().getPrimaryBaritone(); protected IBaritone baritone;
protected Settings settings = BaritoneAPI.getSettings(); protected IPlayerContext ctx;
protected IPlayerContext ctx = baritone.getPlayerContext();
protected Minecraft MC = mc; protected Minecraft MC = mc;
/** /**
@ -49,15 +46,16 @@ public abstract class Command implements Helper, AbstractGameEventListener {
* *
* @param names The names of this command. This is what you put after the command prefix. * @param names The names of this command. This is what you put after the command prefix.
*/ */
protected Command(List<String> names) { protected Command(IBaritone baritone, List<String> names) {
this.names = names.stream() this.names = names.stream()
.map(s -> s.toLowerCase(Locale.US)) .map(s -> s.toLowerCase(Locale.US))
.collect(Collectors.toList()); .collect(Collectors.toList());
baritone.getGameEventHandler().registerEventListener(this); this.baritone = baritone;
this.ctx = baritone.getPlayerContext();
} }
protected Command(String name) { protected Command(IBaritone baritone, String name) {
this(Collections.singletonList(name)); this(baritone, Collections.singletonList(name));
} }
/** /**

View File

@ -17,7 +17,6 @@
package baritone.launch.mixins; package baritone.launch.mixins;
import baritone.Baritone;
import baritone.api.BaritoneAPI; import baritone.api.BaritoneAPI;
import baritone.api.IBaritone; import baritone.api.IBaritone;
import baritone.api.event.events.BlockInteractEvent; import baritone.api.event.events.BlockInteractEvent;
@ -59,7 +58,7 @@ public class MixinMinecraft {
at = @At("RETURN") at = @At("RETURN")
) )
private void postInit(CallbackInfo ci) { private void postInit(CallbackInfo ci) {
((Baritone) BaritoneAPI.getProvider().getPrimaryBaritone()).init(); BaritoneAPI.getProvider().getPrimaryBaritone();
} }
@Inject( @Inject(

View File

@ -60,11 +60,6 @@ public class Baritone implements IBaritone {
} }
} }
/**
* Whether or not {@link Baritone#init()} has been called yet
*/
private boolean initialized;
private GameEventHandler gameEventHandler; private GameEventHandler gameEventHandler;
private PathingBehavior pathingBehavior; private PathingBehavior pathingBehavior;
@ -92,13 +87,6 @@ public class Baritone implements IBaritone {
Baritone() { Baritone() {
this.gameEventHandler = new GameEventHandler(this); this.gameEventHandler = new GameEventHandler(this);
}
@Override
public synchronized void init() {
if (initialized) {
return;
}
// Define this before behaviors try and get it, or else it will be null and the builds will fail! // Define this before behaviors try and get it, or else it will be null and the builds will fail!
this.playerContext = PrimaryPlayerContext.INSTANCE; this.playerContext = PrimaryPlayerContext.INSTANCE;
@ -125,13 +113,11 @@ public class Baritone implements IBaritone {
} }
this.worldProvider = new WorldProvider(); this.worldProvider = new WorldProvider();
this.selectionManager = new SelectionManager(); this.selectionManager = new SelectionManager(this);
if (BaritoneAutoTest.ENABLE_AUTO_TEST) { if (BaritoneAutoTest.ENABLE_AUTO_TEST) {
this.gameEventHandler.registerEventListener(BaritoneAutoTest.INSTANCE); this.gameEventHandler.registerEventListener(BaritoneAutoTest.INSTANCE);
} }
this.initialized = true;
} }
@Override @Override
@ -240,4 +226,4 @@ public class Baritone implements IBaritone {
public static Executor getExecutor() { public static Executor getExecutor() {
return threadPool; return threadPool;
} }
} }

View File

@ -34,11 +34,13 @@ import java.util.List;
*/ */
public final class BaritoneProvider implements IBaritoneProvider { public final class BaritoneProvider implements IBaritoneProvider {
private final Baritone primary = new Baritone(); private final Baritone primary;
private final List<IBaritone> all = Collections.singletonList(primary); private final List<IBaritone> all;
{ {
DefaultCommands.COMMANDS.forEach(CommandManager.REGISTRY::register); primary = new Baritone();
all = Collections.singletonList(primary);
DefaultCommands.commands(primary).forEach(CommandManager.REGISTRY::register);
new BaritoneChatControl(primary); new BaritoneChatControl(primary);
} }

View File

@ -1,5 +1,6 @@
package baritone.selection; package baritone.selection;
import baritone.Baritone;
import baritone.api.selection.ISelection; import baritone.api.selection.ISelection;
import baritone.api.selection.ISelectionManager; import baritone.api.selection.ISelectionManager;
import baritone.api.utils.BetterBlockPos; import baritone.api.utils.BetterBlockPos;
@ -12,8 +13,8 @@ public class SelectionManager implements ISelectionManager {
private final LinkedList<ISelection> selections = new LinkedList<>(); private final LinkedList<ISelection> selections = new LinkedList<>();
private ISelection[] selectionsArr = new ISelection[0]; private ISelection[] selectionsArr = new ISelection[0];
public SelectionManager() { public SelectionManager(Baritone baritone) {
new SelectionRenderer(this); new SelectionRenderer(baritone, this);
} }
private void resetSelectionsArr() { private void resetSelectionsArr() {

View File

@ -1,5 +1,6 @@
package baritone.selection; package baritone.selection;
import baritone.Baritone;
import baritone.api.event.events.RenderEvent; import baritone.api.event.events.RenderEvent;
import baritone.api.event.listener.AbstractGameEventListener; import baritone.api.event.listener.AbstractGameEventListener;
import baritone.api.selection.ISelection; import baritone.api.selection.ISelection;
@ -11,7 +12,7 @@ public class SelectionRenderer implements IRenderer, AbstractGameEventListener {
private final SelectionManager manager; private final SelectionManager manager;
SelectionRenderer(SelectionManager manager) { SelectionRenderer(Baritone baritone, SelectionManager manager) {
this.manager = manager; this.manager = manager;
baritone.getGameEventHandler().registerEventListener(this); baritone.getGameEventHandler().registerEventListener(this);
} }

View File

@ -18,7 +18,6 @@
package baritone.utils; package baritone.utils;
import baritone.api.BaritoneAPI; import baritone.api.BaritoneAPI;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.Helper; import baritone.api.utils.Helper;
import net.minecraft.client.renderer.BufferBuilder; import net.minecraft.client.renderer.BufferBuilder;
@ -36,7 +35,6 @@ public interface IRenderer {
Tessellator tessellator = Tessellator.getInstance(); Tessellator tessellator = Tessellator.getInstance();
BufferBuilder buffer = tessellator.getBuffer(); BufferBuilder buffer = tessellator.getBuffer();
RenderManager renderManager = Helper.mc.getRenderManager(); RenderManager renderManager = Helper.mc.getRenderManager();
IBaritone baritone = BaritoneAPI.getProvider().getPrimaryBaritone();
Settings settings = BaritoneAPI.getSettings(); Settings settings = BaritoneAPI.getSettings();
static void glColor(Color color, float alpha) { static void glColor(Color color, float alpha) {

View File

@ -115,4 +115,4 @@ public final class InputOverrideHandler extends Behavior implements IInputOverri
public BlockBreakHelper getBlockBreakHelper() { public BlockBreakHelper getBlockBreakHelper() {
return blockBreakHelper; return blockBreakHelper;
} }
} }

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.pathing.goals.Goal; import baritone.api.pathing.goals.Goal;
import baritone.api.pathing.goals.GoalAxis; import baritone.api.pathing.goals.GoalAxis;
@ -29,8 +30,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class AxisCommand extends Command { public class AxisCommand extends Command {
public AxisCommand() { public AxisCommand(IBaritone baritone) {
super(asList("axis", "highway")); super(baritone, asList("axis", "highway"));
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.process.IGetToBlockProcess; import baritone.api.process.IGetToBlockProcess;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
@ -29,8 +30,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class BlacklistCommand extends Command { public class BlacklistCommand extends Command {
public BlacklistCommand() { public BlacklistCommand(IBaritone baritone) {
super("blacklist"); super(baritone, "blacklist");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.BetterBlockPos; import baritone.api.utils.BetterBlockPos;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
@ -36,8 +37,8 @@ import static java.util.Arrays.asList;
public class BuildCommand extends Command { public class BuildCommand extends Command {
private static final File schematicsDir = new File(Minecraft.getMinecraft().gameDir, "schematics"); private static final File schematicsDir = new File(Minecraft.getMinecraft().gameDir, "schematics");
public BuildCommand() { public BuildCommand(IBaritone baritone) {
super("build"); super(baritone, "build");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
import baritone.api.utils.command.helpers.arguments.ArgConsumer; import baritone.api.utils.command.helpers.arguments.ArgConsumer;
@ -27,8 +28,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class CancelCommand extends Command { public class CancelCommand extends Command {
public CancelCommand() { public CancelCommand(IBaritone baritone) {
super(asList("cancel", "stop")); super(baritone, asList("cancel", "stop"));
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.cache.IRememberedInventory; import baritone.api.cache.IRememberedInventory;
import baritone.api.utils.BetterBlockPos; import baritone.api.utils.BetterBlockPos;
@ -35,8 +36,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class ChestsCommand extends Command { public class ChestsCommand extends Command {
public ChestsCommand() { public ChestsCommand(IBaritone baritone) {
super("chests"); super(baritone, "chests");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.pathing.goals.Goal; import baritone.api.pathing.goals.Goal;
import baritone.api.pathing.goals.GoalBlock; import baritone.api.pathing.goals.GoalBlock;
@ -32,8 +33,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class ClearareaCommand extends Command { public class ClearareaCommand extends Command {
public ClearareaCommand() { public ClearareaCommand(IBaritone baritone) {
super("cleararea"); super(baritone, "cleararea");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
import baritone.api.utils.command.helpers.arguments.ArgConsumer; import baritone.api.utils.command.helpers.arguments.ArgConsumer;
@ -27,8 +28,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class ClickCommand extends Command { public class ClickCommand extends Command {
public ClickCommand() { public ClickCommand(IBaritone baritone) {
super("click"); super(baritone, "click");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.pathing.goals.GoalBlock; import baritone.api.pathing.goals.GoalBlock;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
@ -32,8 +33,8 @@ import static java.util.Arrays.asList;
import static java.util.Objects.isNull; import static java.util.Objects.isNull;
public class ComeCommand extends Command { public class ComeCommand extends Command {
public ComeCommand() { public ComeCommand(IBaritone baritone) {
super("come"); super(baritone, "come");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
import baritone.api.utils.command.helpers.arguments.ArgConsumer; import baritone.api.utils.command.helpers.arguments.ArgConsumer;
@ -30,14 +31,14 @@ public class CommandAlias extends Command {
private final String shortDesc; private final String shortDesc;
public final String target; public final String target;
public CommandAlias(List<String> names, String shortDesc, String target) { public CommandAlias(IBaritone baritone, List<String> names, String shortDesc, String target) {
super(names); super(baritone, names);
this.shortDesc = shortDesc; this.shortDesc = shortDesc;
this.target = target; this.target = target;
} }
public CommandAlias(String name, String shortDesc, String target) { public CommandAlias(IBaritone baritone, String name, String shortDesc, String target) {
super(name); super(baritone, name);
this.shortDesc = shortDesc; this.shortDesc = shortDesc;
this.target = target; this.target = target;
} }

View File

@ -17,53 +17,60 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
import java.util.Collections; import java.util.*;
import java.util.List;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class DefaultCommands { public class DefaultCommands {
public static final List<Command> COMMANDS = Collections.unmodifiableList(asList( public static List<Command> commands(IBaritone baritone) {
new HelpCommand(), Objects.requireNonNull(baritone);
new SetCommand(), List<Command> commands = new ArrayList<>();
new CommandAlias(asList("modified", "mod", "baritone", "modifiedsettings"), "List modified settings", "set modified"), commands.addAll(Arrays.asList(
new CommandAlias("reset", "Reset all settings or just one", "set reset"), new HelpCommand(baritone),
new GoalCommand(), new SetCommand(baritone),
new PathCommand(), new CommandAlias(baritone, asList("modified", "mod", "baritone", "modifiedsettings"), "List modified settings", "set modified"),
new ProcCommand(), new CommandAlias(baritone, "reset", "Reset all settings or just one", "set reset"),
new VersionCommand(), new GoalCommand(baritone),
new RepackCommand(), new PathCommand(baritone),
new BuildCommand(), new ProcCommand(baritone),
new SchematicaCommand(), new VersionCommand(baritone),
new ComeCommand(), new RepackCommand(baritone),
new AxisCommand(), new BuildCommand(baritone),
new CancelCommand(), new SchematicaCommand(baritone),
new ForceCancelCommand(), new ComeCommand(baritone),
new GcCommand(), new AxisCommand(baritone),
new InvertCommand(), new CancelCommand(baritone),
new ClearareaCommand(), new ForceCancelCommand(baritone),
PauseResumeCommands.pauseCommand, new GcCommand(baritone),
PauseResumeCommands.resumeCommand, new InvertCommand(baritone),
PauseResumeCommands.pausedCommand, new ClearareaCommand(baritone),
new TunnelCommand(),
new RenderCommand(), new TunnelCommand(baritone),
new FarmCommand(), new RenderCommand(baritone),
new ChestsCommand(), new FarmCommand(baritone),
new FollowCommand(), new ChestsCommand(baritone),
new ExploreFilterCommand(), new FollowCommand(baritone),
new ReloadAllCommand(), new ExploreFilterCommand(baritone),
new SaveAllCommand(), new ReloadAllCommand(baritone),
new ExploreCommand(), new SaveAllCommand(baritone),
new BlacklistCommand(), new ExploreCommand(baritone),
new FindCommand(), new BlacklistCommand(baritone),
new MineCommand(), new FindCommand(baritone),
new ClickCommand(), new MineCommand(baritone),
new ThisWayCommand(), new ClickCommand(baritone),
new WaypointsCommand(), new ThisWayCommand(baritone),
new CommandAlias("sethome", "Sets your home waypoint", "waypoints save home"), new WaypointsCommand(baritone),
new CommandAlias("home", "Set goal to your home waypoint", "waypoints goal home"), new CommandAlias(baritone, "sethome", "Sets your home waypoint", "waypoints save home"),
new SelCommand() new CommandAlias(baritone, "home", "Set goal to your home waypoint", "waypoints goal home"),
)); new SelCommand(baritone)
));
PauseResumeCommands prc = new PauseResumeCommands(baritone);
commands.add(prc.pauseCommand);
commands.add(prc.resumeCommand);
commands.add(prc.pausedCommand);
return Collections.unmodifiableList(commands);
}
} }

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
import baritone.api.utils.command.helpers.arguments.ArgConsumer; import baritone.api.utils.command.helpers.arguments.ArgConsumer;
@ -27,8 +28,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class EmptyCommand extends Command { public class EmptyCommand extends Command {
public EmptyCommand() { public EmptyCommand(IBaritone baritone) {
super(asList("name1", "name2")); super(baritone, asList("name1", "name2"));
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.pathing.goals.GoalXZ; import baritone.api.pathing.goals.GoalXZ;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
@ -29,8 +30,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class ExploreCommand extends Command { public class ExploreCommand extends Command {
public ExploreCommand() { public ExploreCommand(IBaritone baritone) {
super("explore"); super(baritone, "explore");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
import baritone.api.utils.command.datatypes.RelativeFile; import baritone.api.utils.command.datatypes.RelativeFile;
@ -33,8 +34,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class ExploreFilterCommand extends Command { public class ExploreFilterCommand extends Command {
public ExploreFilterCommand() { public ExploreFilterCommand(IBaritone baritone) {
super("explorefilter"); super(baritone, "explorefilter");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
import baritone.api.utils.command.helpers.arguments.ArgConsumer; import baritone.api.utils.command.helpers.arguments.ArgConsumer;
@ -27,8 +28,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class FarmCommand extends Command { public class FarmCommand extends Command {
public FarmCommand() { public FarmCommand(IBaritone baritone) {
super("farm"); super(baritone, "farm");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.BetterBlockPos; import baritone.api.utils.BetterBlockPos;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
@ -31,8 +32,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class FindCommand extends Command { public class FindCommand extends Command {
public FindCommand() { public FindCommand(IBaritone baritone) {
super("find"); super(baritone, "find");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
import baritone.api.utils.command.datatypes.EntityClassById; import baritone.api.utils.command.datatypes.EntityClassById;
@ -43,8 +44,8 @@ import static java.util.Objects.isNull;
import static java.util.Objects.nonNull; import static java.util.Objects.nonNull;
public class FollowCommand extends Command { public class FollowCommand extends Command {
public FollowCommand() { public FollowCommand(IBaritone baritone) {
super("follow"); super(baritone, "follow");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.behavior.IPathingBehavior; import baritone.api.behavior.IPathingBehavior;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
@ -28,8 +29,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class ForceCancelCommand extends Command { public class ForceCancelCommand extends Command {
public ForceCancelCommand() { public ForceCancelCommand(IBaritone baritone) {
super("forcecancel"); super(baritone, "forcecancel");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
import baritone.api.utils.command.helpers.arguments.ArgConsumer; import baritone.api.utils.command.helpers.arguments.ArgConsumer;
@ -27,8 +28,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class GcCommand extends Command { public class GcCommand extends Command {
public GcCommand() { public GcCommand(IBaritone baritone) {
super("gc"); super(baritone, "gc");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.pathing.goals.Goal; import baritone.api.pathing.goals.Goal;
import baritone.api.process.ICustomGoalProcess; import baritone.api.process.ICustomGoalProcess;
@ -35,8 +36,8 @@ import static java.util.Objects.isNull;
import static java.util.Objects.nonNull; import static java.util.Objects.nonNull;
public class GoalCommand extends Command { public class GoalCommand extends Command {
public GoalCommand() { public GoalCommand(IBaritone baritone) {
super("goal"); super(baritone, "goal");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
import baritone.api.utils.command.exception.CommandNotFoundException; import baritone.api.utils.command.exception.CommandNotFoundException;
@ -40,8 +41,8 @@ import static java.util.Arrays.asList;
import static java.util.Objects.isNull; import static java.util.Objects.isNull;
public class HelpCommand extends Command { public class HelpCommand extends Command {
public HelpCommand() { public HelpCommand(IBaritone baritone) {
super(asList("help", "?")); super(baritone, asList("help", "?"));
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.pathing.goals.Goal; import baritone.api.pathing.goals.Goal;
import baritone.api.pathing.goals.GoalInverted; import baritone.api.pathing.goals.GoalInverted;
@ -32,8 +33,8 @@ import static java.util.Arrays.asList;
import static java.util.Objects.isNull; import static java.util.Objects.isNull;
public class InvertCommand extends Command { public class InvertCommand extends Command {
public InvertCommand() { public InvertCommand(IBaritone baritone) {
super("invert"); super(baritone, "invert");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.BlockOptionalMeta; import baritone.api.utils.BlockOptionalMeta;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
@ -32,8 +33,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class MineCommand extends Command { public class MineCommand extends Command {
public MineCommand() { public MineCommand(IBaritone baritone) {
super("mine"); super(baritone, "mine");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.pathing.goals.Goal; import baritone.api.pathing.goals.Goal;
import baritone.api.process.ICustomGoalProcess; import baritone.api.process.ICustomGoalProcess;
@ -35,8 +36,8 @@ import static java.util.Arrays.asList;
import static java.util.Objects.isNull; import static java.util.Objects.isNull;
public class PathCommand extends Command { public class PathCommand extends Command {
public PathCommand() { public PathCommand(IBaritone baritone) {
super(asList("path", "goto")); super(baritone, asList("path", "goto"));
} }
@Override @Override

View File

@ -17,7 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.BaritoneAPI; import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.process.IBaritoneProcess; import baritone.api.process.IBaritoneProcess;
import baritone.api.process.PathingCommand; import baritone.api.process.PathingCommand;
@ -39,15 +39,17 @@ import static java.util.Arrays.asList;
* REQUEST_PAUSE} as needed. * REQUEST_PAUSE} as needed.
*/ */
public class PauseResumeCommands { public class PauseResumeCommands {
public static Command pauseCommand; private final IBaritone baritone;
public static Command resumeCommand; Command pauseCommand;
public static Command pausedCommand; Command resumeCommand;
Command pausedCommand;
static { public PauseResumeCommands(IBaritone baritone) {
this.baritone = baritone;
// array for mutability, non-field so reflection can't touch it // array for mutability, non-field so reflection can't touch it
final boolean[] paused = {false}; final boolean[] paused = {false};
BaritoneAPI.getProvider().getPrimaryBaritone().getPathingControlManager().registerProcess( baritone.getPathingControlManager().registerProcess(
new IBaritoneProcess() { new IBaritoneProcess() {
@Override @Override
public boolean isActive() { public boolean isActive() {
@ -79,7 +81,7 @@ public class PauseResumeCommands {
} }
); );
pauseCommand = new Command("pause") { pauseCommand = new Command(baritone, "pause") {
@Override @Override
protected void executed(String label, ArgConsumer args, Settings settings) { protected void executed(String label, ArgConsumer args, Settings settings) {
args.requireMax(0); args.requireMax(0);
@ -115,7 +117,7 @@ public class PauseResumeCommands {
} }
}; };
resumeCommand = new Command("resume") { resumeCommand = new Command(baritone, "resume") {
@Override @Override
protected void executed(String label, ArgConsumer args, Settings settings) { protected void executed(String label, ArgConsumer args, Settings settings) {
args.requireMax(0); args.requireMax(0);
@ -149,7 +151,7 @@ public class PauseResumeCommands {
} }
}; };
pausedCommand = new Command("paused") { pausedCommand = new Command(baritone, "paused") {
@Override @Override
protected void executed(String label, ArgConsumer args, Settings settings) { protected void executed(String label, ArgConsumer args, Settings settings) {
args.requireMax(0); args.requireMax(0);

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.pathing.calc.IPathingControlManager; import baritone.api.pathing.calc.IPathingControlManager;
import baritone.api.process.IBaritoneProcess; import baritone.api.process.IBaritoneProcess;
@ -32,8 +33,8 @@ import static java.util.Arrays.asList;
import static java.util.Objects.isNull; import static java.util.Objects.isNull;
public class ProcCommand extends Command { public class ProcCommand extends Command {
public ProcCommand() { public ProcCommand(IBaritone baritone) {
super("proc"); super(baritone, "proc");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
import baritone.api.utils.command.helpers.arguments.ArgConsumer; import baritone.api.utils.command.helpers.arguments.ArgConsumer;
@ -27,8 +28,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class ReloadAllCommand extends Command { public class ReloadAllCommand extends Command {
public ReloadAllCommand() { public ReloadAllCommand(IBaritone baritone) {
super("reloadall"); super(baritone, "reloadall");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.BetterBlockPos; import baritone.api.utils.BetterBlockPos;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
@ -28,8 +29,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class RenderCommand extends Command { public class RenderCommand extends Command {
public RenderCommand() { public RenderCommand(IBaritone baritone) {
super("render"); super(baritone, "render");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
import baritone.api.utils.command.helpers.arguments.ArgConsumer; import baritone.api.utils.command.helpers.arguments.ArgConsumer;
@ -28,8 +29,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class RepackCommand extends Command { public class RepackCommand extends Command {
public RepackCommand() { public RepackCommand(IBaritone baritone) {
super(asList("repack", "rescan")); super(baritone, asList("repack", "rescan"));
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
import baritone.api.utils.command.helpers.arguments.ArgConsumer; import baritone.api.utils.command.helpers.arguments.ArgConsumer;
@ -27,8 +28,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class SaveAllCommand extends Command { public class SaveAllCommand extends Command {
public SaveAllCommand() { public SaveAllCommand(IBaritone baritone) {
super("saveall"); super(baritone, "saveall");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
import baritone.api.utils.command.helpers.arguments.ArgConsumer; import baritone.api.utils.command.helpers.arguments.ArgConsumer;
@ -27,8 +28,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class SchematicaCommand extends Command { public class SchematicaCommand extends Command {
public SchematicaCommand() { public SchematicaCommand(IBaritone baritone) {
super("schematica"); super(baritone, "schematica");
} }
@Override @Override

View File

@ -17,8 +17,11 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.Baritone;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.event.events.RenderEvent; import baritone.api.event.events.RenderEvent;
import baritone.api.event.listener.AbstractGameEventListener;
import baritone.api.schematic.*; import baritone.api.schematic.*;
import baritone.api.selection.ISelection; import baritone.api.selection.ISelection;
import baritone.api.selection.ISelectionManager; import baritone.api.selection.ISelectionManager;
@ -54,8 +57,25 @@ public class SelCommand extends Command {
private ISelectionManager manager = baritone.getSelectionManager(); private ISelectionManager manager = baritone.getSelectionManager();
private BetterBlockPos pos1 = null; private BetterBlockPos pos1 = null;
public SelCommand() { public SelCommand(IBaritone baritone) {
super(asList("sel", "selection", "s")); super(baritone, asList("sel", "selection", "s"));
baritone.getGameEventHandler().registerEventListener(new AbstractGameEventListener() {
@Override
public void onRenderPass(RenderEvent event) {
if (!Baritone.settings().renderSelectionCorners.value || pos1 == null) {
return;
}
Color color = Baritone.settings().colorSelectionPos1.value;
float opacity = Baritone.settings().selectionOpacity.value;
float lineWidth = Baritone.settings().selectionLineWidth.value;
boolean ignoreDepth = Baritone.settings().renderSelectionIgnoreDepth.value;
IRenderer.startLines(color, opacity, lineWidth, ignoreDepth);
IRenderer.drawAABB(new AxisAlignedBB(pos1, pos1.add(1, 1, 1)));
IRenderer.endLines(ignoreDepth);
}
});
} }
@Override @Override
@ -360,20 +380,4 @@ public class SelCommand extends Command {
return names.toArray(new String[0]); return names.toArray(new String[0]);
} }
} }
@Override
public void onRenderPass(RenderEvent event) {
if (!settings.renderSelectionCorners.value || pos1 == null) {
return;
}
Color color = settings.colorSelectionPos1.value;
float opacity = settings.selectionOpacity.value;
float lineWidth = settings.selectionLineWidth.value;
boolean ignoreDepth = settings.renderSelectionIgnoreDepth.value;
IRenderer.startLines(color, opacity, lineWidth, ignoreDepth);
IRenderer.drawAABB(new AxisAlignedBB(pos1, pos1.add(1, 1, 1)));
IRenderer.endLines(ignoreDepth);
}
} }

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.SettingsUtil; import baritone.api.utils.SettingsUtil;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
@ -44,8 +45,8 @@ import static java.util.Objects.nonNull;
import static java.util.stream.Stream.of; import static java.util.stream.Stream.of;
public class SetCommand extends Command { public class SetCommand extends Command {
public SetCommand() { public SetCommand(IBaritone baritone) {
super(asList("set", "setting", "settings")); super(baritone, asList("set", "setting", "settings"));
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.pathing.goals.GoalXZ; import baritone.api.pathing.goals.GoalXZ;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
@ -28,8 +29,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class ThisWayCommand extends Command { public class ThisWayCommand extends Command {
public ThisWayCommand() { public ThisWayCommand(IBaritone baritone) {
super(asList("thisway", "forward")); super(baritone, asList("thisway", "forward"));
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.pathing.goals.Goal; import baritone.api.pathing.goals.Goal;
import baritone.api.pathing.goals.GoalStrictDirection; import baritone.api.pathing.goals.GoalStrictDirection;
@ -29,8 +30,8 @@ import java.util.stream.Stream;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class TunnelCommand extends Command { public class TunnelCommand extends Command {
public TunnelCommand() { public TunnelCommand(IBaritone baritone) {
super("tunnel"); super(baritone, "tunnel");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.utils.command.Command; import baritone.api.utils.command.Command;
import baritone.api.utils.command.exception.CommandInvalidStateException; import baritone.api.utils.command.exception.CommandInvalidStateException;
@ -29,8 +30,8 @@ import static java.util.Arrays.asList;
import static java.util.Objects.isNull; import static java.util.Objects.isNull;
public class VersionCommand extends Command { public class VersionCommand extends Command {
public VersionCommand() { public VersionCommand(IBaritone baritone) {
super("version"); super(baritone, "version");
} }
@Override @Override

View File

@ -17,6 +17,7 @@
package baritone.utils.command.defaults; package baritone.utils.command.defaults;
import baritone.api.IBaritone;
import baritone.api.Settings; import baritone.api.Settings;
import baritone.api.cache.IWaypoint; import baritone.api.cache.IWaypoint;
import baritone.api.cache.Waypoint; import baritone.api.cache.Waypoint;
@ -49,8 +50,8 @@ import static baritone.api.utils.command.BaritoneChatControl.FORCE_COMMAND_PREFI
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
public class WaypointsCommand extends Command { public class WaypointsCommand extends Command {
public WaypointsCommand() { public WaypointsCommand(IBaritone baritone) {
super(asList("waypoints", "waypoint", "wp")); super(baritone, asList("waypoints", "waypoint", "wp"));
} }
@Override @Override