From 62cea04080cc72d0473858b714788e41a8b19bf2 Mon Sep 17 00:00:00 2001 From: Brady Date: Fri, 4 Oct 2019 15:51:44 -0500 Subject: [PATCH] Fix compiler errors --- src/main/java/baritone/Baritone.java | 2 +- .../baritone/behavior/ControllerBehavior.java | 225 ------------------ .../baritone/behavior/MemoryBehavior.java | 9 - src/main/java/baritone/bot/BaritoneUser.java | 3 +- src/main/java/baritone/bot/UserManager.java | 2 +- .../bot/handler/BotNetHandlerPlayClient.java | 2 +- .../baritone/utils/PlayerMovementInput.java | 5 +- 7 files changed, 7 insertions(+), 241 deletions(-) delete mode 100644 src/main/java/baritone/behavior/ControllerBehavior.java diff --git a/src/main/java/baritone/Baritone.java b/src/main/java/baritone/Baritone.java index bff164c1..d85db2b6 100755 --- a/src/main/java/baritone/Baritone.java +++ b/src/main/java/baritone/Baritone.java @@ -86,7 +86,7 @@ public class Baritone implements IBaritone { public BlockStateInterface bsi; - Baritone(IPlayerContext playerContext) { + public Baritone(IPlayerContext playerContext) { this.gameEventHandler = new GameEventHandler(this); // Define this before behaviors try and get it, or else it will be null and the builds will fail! diff --git a/src/main/java/baritone/behavior/ControllerBehavior.java b/src/main/java/baritone/behavior/ControllerBehavior.java deleted file mode 100644 index 763889ac..00000000 --- a/src/main/java/baritone/behavior/ControllerBehavior.java +++ /dev/null @@ -1,225 +0,0 @@ -/* - * This file is part of Baritone. - * - * Baritone is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Baritone is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Baritone. If not, see . - */ - -package baritone.behavior; - -import baritone.Baritone; -import baritone.api.event.events.ChatEvent; -import baritone.api.event.events.TickEvent; -import baritone.api.pathing.goals.Goal; -import baritone.api.pathing.goals.GoalYLevel; -import baritone.api.process.IBaritoneProcess; -import baritone.api.utils.BetterBlockPos; -import baritone.pathing.movement.CalculationContext; -import baritone.utils.Helper; -import baritone.utils.pathing.SegmentedCalculator; -import cabaletta.comms.BufferedConnection; -import cabaletta.comms.IConnection; -import cabaletta.comms.IMessageListener; -import cabaletta.comms.downward.MessageChat; -import cabaletta.comms.downward.MessageClickSlot; -import cabaletta.comms.downward.MessageComputationRequest; -import cabaletta.comms.iMessage; -import cabaletta.comms.upward.MessageComputationResponse; -import cabaletta.comms.upward.MessageStatus; -import net.minecraft.inventory.ClickType; -import net.minecraft.inventory.ItemStackHelper; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.BlockPos; - -import java.io.IOException; -import java.util.List; -import java.util.Objects; -import java.util.stream.Collectors; - -public class ControllerBehavior extends Behavior implements IMessageListener { - - public ControllerBehavior(Baritone baritone) { - super(baritone); - } - - private BufferedConnection conn; - - @Override - public void onTick(TickEvent event) { - if (event.getType() == TickEvent.Type.OUT) { - return; - } - trySend(buildStatus()); - readAndHandle(); - } - - public MessageStatus buildStatus() { - // TODO report inventory and echest contents - // TODO figure out who should remember echest contents when it isn't open, baritone or tenor? - - BlockPos pathStart = baritone.getPathingBehavior().pathStart(); - return new MessageStatus( - ctx.player().getUniqueID().toString(), - ctx.player().connection.getNetworkManager().getRemoteAddress().toString(), - ctx.player().posX, - ctx.player().posY, - ctx.player().posZ, - ctx.player().rotationYaw, - ctx.player().rotationPitch, - ctx.player().onGround, - ctx.player().getHealth(), - ctx.player().getFoodStats().getSaturationLevel(), - ctx.player().getFoodStats().getFoodLevel(), - ctx.world().provider.getDimensionType().getId(), - pathStart.getX(), - pathStart.getY(), - pathStart.getZ(), - baritone.getPathingBehavior().getCurrent() != null, - baritone.getPathingBehavior().getNext() != null, - baritone.getPathingBehavior().getInProgress().isPresent(), - baritone.getPathingBehavior().ticksRemainingInSegment().orElse(0D), - baritone.getPathingBehavior().calcFailedLastTick(), - baritone.getPathingBehavior().isSafeToCancel(), - baritone.getPathingBehavior().getGoal() + "", - baritone.getPathingControlManager().mostRecentInControl().map(IBaritoneProcess::displayName).orElse(""), - describeAll(ctx.player().inventory.mainInventory), - describeAll(ctx.player().inventory.armorInventory), - describe(ctx.player().inventory.offHandInventory.get(0)), - ctx.player().openContainer.windowId, - baritone.getMemoryBehavior().eChestOpen() - ); - } - - private void readAndHandle() { - if (conn == null) { - return; - } - try { - conn.handleAllPendingMessages(this); - } catch (IOException e) { - e.printStackTrace(); - disconnect(); - } - } - - public boolean trySend(iMessage msg) { - if (conn == null) { - return false; - } - try { - conn.sendMessage(msg); - return true; - } catch (IOException e) { - e.printStackTrace(); - disconnect(); - return false; - } - } - - public void connectTo(IConnection conn) { - disconnect(); - this.conn = BufferedConnection.makeBuffered(conn); - } - - public void disconnect() { - if (conn != null) { - conn.close(); - } - conn = null; - } - - public static List describeAll(List list) { - return list.stream().map(ControllerBehavior::describe).collect(Collectors.toList()); - } - - public static String describe(ItemStack stack) { - return describe(stack, true); - } - - public static String describe(ItemStack stack, boolean name) { - if (stack.isEmpty()) { - return "empty"; - } - String description = ""; - if (name) { - if (!stack.getDisplayName().contains("$")) { // who knows what's in there - description += stack.getDisplayName(); - } - description += "$"; - } - description += stack.getTranslationKey() + ";" + stack.getItemDamage() + ";" + stack.getCount() + ";"; - NBTTagCompound data = stack.getTagCompound(); - if (data != null && data.hasKey("BlockEntityTag", 10)) { - NBTTagCompound blockdata = data.getCompoundTag("BlockEntityTag"); - if (blockdata.hasKey("Items", 9)) { - NonNullList nonnulllist = NonNullList.withSize(27, ItemStack.EMPTY); - ItemStackHelper.loadAllItems(blockdata, nonnulllist); - - description += ";"; - for (ItemStack itemstack : nonnulllist) { - description += describe(itemstack, false) + ","; - } - description = description.substring(0, description.length() - 1); - } - } - return description; - } - - @Override - public void handle(MessageChat msg) { // big brain - ChatEvent event = new ChatEvent(ctx.player(), msg.msg); - baritone.getGameEventHandler().onSendChatMessage(event); - } - - @Override - public void handle(MessageComputationRequest msg) { - BetterBlockPos start = new BetterBlockPos(msg.startX, msg.startY, msg.startZ); - // TODO this may require scanning the world for blocks of a certain type, idk how to manage that - Goal goal = new GoalYLevel(Integer.parseInt(msg.goal)); // im already winston - SegmentedCalculator.calculateSegmentsThreaded(start, goal, new CalculationContext(baritone), path -> { - if (!Objects.equals(path.getGoal(), goal)) { - throw new IllegalStateException(); // sanity check - } - try { - BetterBlockPos dest = path.getDest(); - conn.sendMessage(new MessageComputationResponse(msg.computationID, path.length(), path.totalTicks(), path.getGoal().isInGoal(dest), dest.x, dest.y, dest.z)); - } catch (IOException e) { - // nothing we can do about this, we just completed a computation but our tenor connection was closed in the meantime - // just discard the path we made for them =(( - e.printStackTrace(); // and complain =) - } - }, () -> { - try { - conn.sendMessage(new MessageComputationResponse(msg.computationID, 0, 0, false, 0, 0, 0)); - } catch (IOException e) { - // same deal - e.printStackTrace(); - } - }); - } - - @Override - public void handle(MessageClickSlot msg) { - if (ctx.player().openContainer.windowId != msg.windowId) { - return; // stale - } - ctx.playerController().windowClick(msg.windowId, msg.slotId, msg.mouseButton, ClickType.values()[msg.clickType], ctx.player()); - } - - @Override - public void unhandled(iMessage msg) { - Helper.HELPER.logDebug("Unhandled message received by ControllerBehavior " + msg); - } -} diff --git a/src/main/java/baritone/behavior/MemoryBehavior.java b/src/main/java/baritone/behavior/MemoryBehavior.java index eff86215..457d03cc 100644 --- a/src/main/java/baritone/behavior/MemoryBehavior.java +++ b/src/main/java/baritone/behavior/MemoryBehavior.java @@ -27,7 +27,6 @@ import baritone.api.event.events.type.EventState; import baritone.api.utils.BetterBlockPos; import baritone.cache.ContainerMemory; import baritone.utils.BlockStateInterface; -import cabaletta.comms.upward.MessageEchestConfirmed; import net.minecraft.block.Block; import net.minecraft.block.BlockBed; import net.minecraft.init.Blocks; @@ -38,7 +37,6 @@ import net.minecraft.network.play.client.CPacketCloseWindow; import net.minecraft.network.play.client.CPacketPlayerTryUseItemOnBlock; import net.minecraft.network.play.server.SPacketCloseWindow; import net.minecraft.network.play.server.SPacketOpenWindow; -import net.minecraft.network.play.server.SPacketSetSlot; import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntityLockable; import net.minecraft.util.EnumFacing; @@ -170,13 +168,6 @@ public final class MemoryBehavior extends Behavior { System.out.println("RECEIVED GUARANTEED ECHEST CONTENTS" + meme.getItemStacks()); } }*/ - - if (p instanceof SPacketSetSlot) { - SPacketSetSlot slot = (SPacketSetSlot) p; - if (slot.getSlot() < 27 && enderChestWindowId != null && slot.getWindowId() == enderChestWindowId) { - baritone.getControllerBehavior().trySend(new MessageEchestConfirmed(slot.getSlot(), ControllerBehavior.describe(slot.getStack()))); - } - } } } diff --git a/src/main/java/baritone/bot/BaritoneUser.java b/src/main/java/baritone/bot/BaritoneUser.java index c23b8afa..12aa9eb8 100644 --- a/src/main/java/baritone/bot/BaritoneUser.java +++ b/src/main/java/baritone/bot/BaritoneUser.java @@ -54,8 +54,7 @@ public class BaritoneUser implements IBaritoneUser { this.manager = manager; this.networkManager = networkManager; this.session = session; - this.baritone = new Baritone(new BotPlayerContext(this)); // OPPA GANGNAM STYLE - this.baritone.init(); // actually massive iq + this.baritone = new Baritone(new BotPlayerContext(this)); } public void onLoginSuccess(GameProfile profile, INetHandlerPlayClient netHandlerPlayClient) { diff --git a/src/main/java/baritone/bot/UserManager.java b/src/main/java/baritone/bot/UserManager.java index 55409ad8..81f3d5ca 100644 --- a/src/main/java/baritone/bot/UserManager.java +++ b/src/main/java/baritone/bot/UserManager.java @@ -24,9 +24,9 @@ import baritone.api.bot.connect.IConnectionResult; import baritone.api.event.events.TickEvent; import baritone.api.event.events.type.EventState; import baritone.api.event.listener.AbstractGameEventListener; +import baritone.api.utils.Helper; import baritone.bot.connect.ConnectionResult; import baritone.bot.handler.BotNetHandlerLoginClient; -import baritone.utils.Helper; import net.minecraft.client.multiplayer.ServerAddress; import net.minecraft.client.multiplayer.ServerData; import net.minecraft.network.EnumConnectionState; diff --git a/src/main/java/baritone/bot/handler/BotNetHandlerPlayClient.java b/src/main/java/baritone/bot/handler/BotNetHandlerPlayClient.java index 366be9df..bb5b648b 100644 --- a/src/main/java/baritone/bot/handler/BotNetHandlerPlayClient.java +++ b/src/main/java/baritone/bot/handler/BotNetHandlerPlayClient.java @@ -17,11 +17,11 @@ package baritone.bot.handler; +import baritone.api.utils.Helper; import baritone.bot.BaritoneUser; import baritone.bot.spec.BotPlayerController; import baritone.bot.spec.BotWorld; import baritone.bot.spec.EntityBot; -import baritone.utils.Helper; import com.mojang.authlib.GameProfile; import io.netty.buffer.Unpooled; import net.minecraft.client.Minecraft; diff --git a/src/main/java/baritone/utils/PlayerMovementInput.java b/src/main/java/baritone/utils/PlayerMovementInput.java index 22e2063a..4d3da41c 100644 --- a/src/main/java/baritone/utils/PlayerMovementInput.java +++ b/src/main/java/baritone/utils/PlayerMovementInput.java @@ -17,14 +17,15 @@ package baritone.utils; +import baritone.api.utils.IInputOverrideHandler; import baritone.api.utils.input.Input; import net.minecraft.util.MovementInput; public class PlayerMovementInput extends MovementInput { - private final InputOverrideHandler handler; + private final IInputOverrideHandler handler; - PlayerMovementInput(InputOverrideHandler handler) { + public PlayerMovementInput(IInputOverrideHandler handler) { this.handler = handler; }