From 3d2cb3e207d787c9ec5956dacde4b5b2d488e80d Mon Sep 17 00:00:00 2001 From: Adrian Date: Fri, 11 Sep 2015 21:24:27 +0200 Subject: [PATCH] BuildCraft 7.0.23 --- .../api/blueprints/package-info.java | 2 +- api/buildcraft/api/robots/DockingStation.java | 5 ++--- api/buildcraft/api/robots/package-info.java | 2 +- buildcraft_resources/changelog/7.0.23 | 7 +++++++ common/buildcraft/BuildCraftRobotics.java | 1 - common/buildcraft/builders/TileBuilder.java | 3 +-- .../core/blueprints/BlueprintBase.java | 18 ++++++++---------- common/buildcraft/factory/TileRefinery.java | 2 -- common/buildcraft/robotics/ai/AIRobotLoad.java | 7 +++---- .../statements/ActionStationRequestItems.java | 1 - 10 files changed, 23 insertions(+), 25 deletions(-) diff --git a/api/buildcraft/api/blueprints/package-info.java b/api/buildcraft/api/blueprints/package-info.java index c9d924b7..7079e008 100644 --- a/api/buildcraft/api/blueprints/package-info.java +++ b/api/buildcraft/api/blueprints/package-info.java @@ -6,7 +6,7 @@ * Please check the contents of the license, which should be located * as "LICENSE.API" in the BuildCraft source code distribution. */ -@API(apiVersion = "1.3", owner = "BuildCraftAPI|core", provides = "BuildCraftAPI|blueprints") +@API(apiVersion = "1.4", owner = "BuildCraftAPI|core", provides = "BuildCraftAPI|blueprints") package buildcraft.api.blueprints; import cpw.mods.fml.common.API; diff --git a/api/buildcraft/api/robots/DockingStation.java b/api/buildcraft/api/robots/DockingStation.java index 6cf87d2d..3933a193 100755 --- a/api/buildcraft/api/robots/DockingStation.java +++ b/api/buildcraft/api/robots/DockingStation.java @@ -8,10 +8,9 @@ */ package buildcraft.api.robots; -import net.minecraft.inventory.ISidedInventory; +import net.minecraft.inventory.IInventory; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.world.World; - import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.IFluidHandler; @@ -189,7 +188,7 @@ public abstract class DockingStation { return ForgeDirection.UNKNOWN; } - public ISidedInventory getItemInput() { + public IInventory getItemInput() { return null; } diff --git a/api/buildcraft/api/robots/package-info.java b/api/buildcraft/api/robots/package-info.java index 800a0d0f..c02a4350 100644 --- a/api/buildcraft/api/robots/package-info.java +++ b/api/buildcraft/api/robots/package-info.java @@ -6,7 +6,7 @@ * Please check the contents of the license, which should be located * as "LICENSE.API" in the BuildCraft source code distribution. */ -@API(apiVersion = "2.1", owner = "BuildCraftAPI|core", provides = "BuildCraftAPI|robotics") +@API(apiVersion = "3.0", owner = "BuildCraftAPI|core", provides = "BuildCraftAPI|robotics") package buildcraft.api.robots; import cpw.mods.fml.common.API; diff --git a/buildcraft_resources/changelog/7.0.23 b/buildcraft_resources/changelog/7.0.23 index d578295d..412856d8 100644 --- a/buildcraft_resources/changelog/7.0.23 +++ b/buildcraft_resources/changelog/7.0.23 @@ -1,7 +1,12 @@ Improvements: +* Rewritten robots request system (hea3ven) + * Changed the IRequestProvider api to be independent of robots. + * Delivery robots can now carry more than an item at a time. + * Builders, requesters and docking stations can now request more than one item at a time. * Architect Tables are less server-intensive now (asie) * More Ore Dictionary support for recipes (Adaptivity) +* Proper Docking Station renderer (asie) Bugs fixed: @@ -11,3 +16,5 @@ Bugs fixed: * [#2922, #2975] Composite blueprints not working (asie) * [#2565] Fillers not liking certain blocks (asie) * Fillers and Builders not dropping item on inability to place (asie) +* Quarry arm jitter on client side (asie) +* Robots not using the correct sides when accessing inventories/tanks (hea3ven) diff --git a/common/buildcraft/BuildCraftRobotics.java b/common/buildcraft/BuildCraftRobotics.java index 1f5bca4d..f44c982d 100644 --- a/common/buildcraft/BuildCraftRobotics.java +++ b/common/buildcraft/BuildCraftRobotics.java @@ -53,7 +53,6 @@ import buildcraft.core.Version; import buildcraft.core.config.ConfigManager; import buildcraft.core.network.EntityIds; import buildcraft.core.proxy.CoreProxy; -import buildcraft.core.statements.StatementParameterItemStackExact; import buildcraft.robotics.BlockRequester; import buildcraft.robotics.BlockZonePlan; import buildcraft.robotics.BoardProgrammingRecipe; diff --git a/common/buildcraft/builders/TileBuilder.java b/common/buildcraft/builders/TileBuilder.java index 4feb546a..5a70844c 100644 --- a/common/buildcraft/builders/TileBuilder.java +++ b/common/buildcraft/builders/TileBuilder.java @@ -23,9 +23,7 @@ import net.minecraft.nbt.NBTTagList; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.AxisAlignedBB; import net.minecraft.world.WorldSettings.GameType; - import cpw.mods.fml.relauncher.Side; - import net.minecraftforge.common.util.Constants; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.Fluid; @@ -34,6 +32,7 @@ import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.FluidTankInfo; import net.minecraftforge.fluids.IFluidHandler; +import buildcraft.BuildCraftBuilders; import buildcraft.BuildCraftCore; import buildcraft.api.core.BCLog; import buildcraft.api.core.BlockIndex; diff --git a/common/buildcraft/core/blueprints/BlueprintBase.java b/common/buildcraft/core/blueprints/BlueprintBase.java index 07e64229..36dc2e84 100644 --- a/common/buildcraft/core/blueprints/BlueprintBase.java +++ b/common/buildcraft/core/blueprints/BlueprintBase.java @@ -253,18 +253,16 @@ public abstract class BlueprintBase { return new BptContext(world, box, mapping); } - public void addSubBlueprint(BlueprintBase bpt, int x, int y, int z, ForgeDirection dir) { - NBTTagCompound nbt = new NBTTagCompound(); + public void addSubBlueprint(BlueprintBase subBpt, int x, int y, int z, ForgeDirection dir) { + NBTTagCompound subNBT = new NBTTagCompound(); - nbt.setInteger("x", x); - nbt.setInteger("y", y); - nbt.setInteger("z", z); - nbt.setByte("dir", (byte) dir.ordinal()); + subNBT.setInteger("x", x); + subNBT.setInteger("y", y); + subNBT.setInteger("z", z); + subNBT.setByte("dir", (byte) dir.ordinal()); + subNBT.setTag("bpt", subBpt.getNBT()); - NBTTagCompound bptNBT = bpt.getNBT(); - nbt.setTag("bpt", bptNBT); - - subBlueprintsNBT.add(nbt); + subBlueprintsNBT.add(subNBT); } public NBTTagCompound getNBT() { diff --git a/common/buildcraft/factory/TileRefinery.java b/common/buildcraft/factory/TileRefinery.java index 94531020..3f76a112 100644 --- a/common/buildcraft/factory/TileRefinery.java +++ b/common/buildcraft/factory/TileRefinery.java @@ -10,10 +10,8 @@ package buildcraft.factory; import io.netty.buffer.ByteBuf; -import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Container; import net.minecraft.inventory.ICrafting; -import net.minecraft.inventory.IInventory; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import cpw.mods.fml.relauncher.Side; diff --git a/common/buildcraft/robotics/ai/AIRobotLoad.java b/common/buildcraft/robotics/ai/AIRobotLoad.java index d4879d4c..1c58bdcb 100755 --- a/common/buildcraft/robotics/ai/AIRobotLoad.java +++ b/common/buildcraft/robotics/ai/AIRobotLoad.java @@ -8,9 +8,8 @@ */ package buildcraft.robotics.ai; -import net.minecraft.inventory.ISidedInventory; +import net.minecraft.inventory.IInventory; import net.minecraft.item.ItemStack; - import net.minecraftforge.common.util.ForgeDirection; import buildcraft.api.core.IInvSlot; @@ -65,12 +64,12 @@ public class AIRobotLoad extends AIRobot { int loaded = 0; - ISidedInventory tileInventory = station.getItemInput(); + IInventory tileInventory = station.getItemInput(); if (tileInventory == null) { return false; } - for (IInvSlot slot : InventoryIterator.getIterable(tileInventory, station.getItemInputSide())) { + for (IInvSlot slot : InventoryIterator.getIterable(tileInventory, station.getItemInputSide())) { ItemStack stack = slot.getStackInSlot(); if (stack == null diff --git a/common/buildcraft/robotics/statements/ActionStationRequestItems.java b/common/buildcraft/robotics/statements/ActionStationRequestItems.java index ce57ace7..e3f4ad7d 100755 --- a/common/buildcraft/robotics/statements/ActionStationRequestItems.java +++ b/common/buildcraft/robotics/statements/ActionStationRequestItems.java @@ -11,7 +11,6 @@ package buildcraft.robotics.statements; import net.minecraft.client.renderer.texture.IIconRegister; import buildcraft.api.statements.IStatementParameter; -import buildcraft.api.statements.StatementParameterItemStack; import buildcraft.core.lib.utils.StringUtils; import buildcraft.core.statements.StatementParameterItemStackExact;