Fix regressions
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
package com.raoulvdberge.refinedstorage.api.autocrafting.craftingmonitor;
|
||||
|
||||
import com.raoulvdberge.refinedstorage.api.render.IElementDrawers;
|
||||
import io.netty.buffer.ByteBuf;
|
||||
import net.minecraft.network.PacketBuffer;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.api.distmarker.OnlyIn;
|
||||
|
||||
@@ -39,7 +39,7 @@ public interface ICraftingMonitorElement {
|
||||
*
|
||||
* @param buf the buffer
|
||||
*/
|
||||
void write(ByteBuf buf);
|
||||
void write(PacketBuffer buf);
|
||||
|
||||
/**
|
||||
* Merge an element into the current element.
|
||||
|
@@ -156,7 +156,7 @@ public interface INetwork {
|
||||
*/
|
||||
@Nullable
|
||||
default ItemStack extractItem(@Nonnull ItemStack stack, int size, Action action) {
|
||||
return extractItem(stack, size, IComparer.COMPARE_DAMAGE | IComparer.COMPARE_NBT, action);
|
||||
return extractItem(stack, size, IComparer.COMPARE_NBT, action);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -12,23 +12,6 @@ import java.util.function.Consumer;
|
||||
* Represents a graph of all the nodes connected to a network.
|
||||
*/
|
||||
public interface INetworkNodeGraph {
|
||||
/**
|
||||
* Rebuilds the network graph.
|
||||
*
|
||||
* @deprecated Use {@link #invalidate(Action, World, BlockPos)} - needed to support simulating the calculation of network connections
|
||||
*/
|
||||
@Deprecated
|
||||
default void rebuild() {
|
||||
invalidate(Action.PERFORM, getNetworkForBCReasons().world(), getNetworkForBCReasons().getPosition());
|
||||
}
|
||||
|
||||
/**
|
||||
* DON'T USE THIS!
|
||||
* This method exists to support a default {@link #rebuild()} method to maintain backward compatibility.
|
||||
*/
|
||||
@Deprecated
|
||||
INetwork getNetworkForBCReasons();
|
||||
|
||||
/**
|
||||
* Rebuilds the network graph.
|
||||
*
|
||||
|
@@ -48,7 +48,7 @@ public interface IStackList<T> {
|
||||
*/
|
||||
@Nullable
|
||||
default T get(@Nonnull T stack) {
|
||||
return get(stack, IComparer.COMPARE_DAMAGE | IComparer.COMPARE_NBT);
|
||||
return get(stack, IComparer.COMPARE_NBT);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -5,9 +5,8 @@ import com.raoulvdberge.refinedstorage.api.autocrafting.craftingmonitor.ICraftin
|
||||
import com.raoulvdberge.refinedstorage.api.render.IElementDrawers;
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.API;
|
||||
import com.raoulvdberge.refinedstorage.util.RenderUtils;
|
||||
import com.raoulvdberge.refinedstorage.util.StackUtils;
|
||||
import io.netty.buffer.ByteBuf;
|
||||
import net.minecraft.client.resources.I18n;
|
||||
import net.minecraft.network.PacketBuffer;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.api.distmarker.OnlyIn;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
@@ -104,8 +103,8 @@ public class CraftingMonitorElementFluidRender implements ICraftingMonitorElemen
|
||||
}
|
||||
|
||||
@Override
|
||||
public void write(ByteBuf buf) {
|
||||
StackUtils.writeFluidStack(buf, stack);
|
||||
public void write(PacketBuffer buf) {
|
||||
stack.writeToPacket(buf);
|
||||
buf.writeInt(stored);
|
||||
buf.writeInt(missing);
|
||||
buf.writeInt(processing);
|
||||
|
@@ -5,10 +5,9 @@ import com.raoulvdberge.refinedstorage.api.autocrafting.craftingmonitor.ICraftin
|
||||
import com.raoulvdberge.refinedstorage.api.render.IElementDrawers;
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.API;
|
||||
import com.raoulvdberge.refinedstorage.util.RenderUtils;
|
||||
import com.raoulvdberge.refinedstorage.util.StackUtils;
|
||||
import io.netty.buffer.ByteBuf;
|
||||
import net.minecraft.client.resources.I18n;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.network.PacketBuffer;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.api.distmarker.OnlyIn;
|
||||
|
||||
@@ -101,12 +100,12 @@ public class CraftingMonitorElementItemRender implements ICraftingMonitorElement
|
||||
@Nullable
|
||||
@Override
|
||||
public String getTooltip() {
|
||||
return RenderUtils.getItemTooltip(this.stack).stream().collect(Collectors.joining("\n"));
|
||||
return RenderUtils.getItemTooltip(this.stack).stream().map(t -> t.getFormattedText()).collect(Collectors.joining("\n")); // TODO getFormattedText
|
||||
}
|
||||
|
||||
@Override
|
||||
public void write(ByteBuf buf) {
|
||||
StackUtils.writeItemStack(buf, stack);
|
||||
public void write(PacketBuffer buf) {
|
||||
buf.writeItemStack(stack);
|
||||
buf.writeInt(stored);
|
||||
buf.writeInt(missing);
|
||||
buf.writeInt(processing);
|
||||
|
@@ -67,7 +67,7 @@ public class CraftingPreviewElementError implements ICraftingPreviewElement<Item
|
||||
CompoundNBT tag = buf.readCompoundTag();
|
||||
|
||||
ItemStack stack = new ItemStack(item, 1);
|
||||
stack.put(tag);
|
||||
stack.setTag(tag);
|
||||
|
||||
return new CraftingPreviewElementError(error, stack);
|
||||
}
|
||||
|
@@ -55,7 +55,7 @@ public class CraftingPreviewElementItemStack implements ICraftingPreviewElement<
|
||||
int toCraft = buf.readInt();
|
||||
|
||||
ItemStack stack = new ItemStack(item, 1);
|
||||
stack.put(tag);
|
||||
stack.setTag(tag);
|
||||
|
||||
return new CraftingPreviewElementItemStack(stack, available, missing, toCraft);
|
||||
}
|
||||
|
@@ -7,7 +7,6 @@ import com.raoulvdberge.refinedstorage.api.network.INetworkNodeGraphListener;
|
||||
import com.raoulvdberge.refinedstorage.api.network.INetworkNodeVisitor;
|
||||
import com.raoulvdberge.refinedstorage.api.network.node.INetworkNode;
|
||||
import com.raoulvdberge.refinedstorage.api.util.Action;
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.util.OneSixMigrationHelper;
|
||||
import com.raoulvdberge.refinedstorage.capability.CapabilityNetworkNodeProxy;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.inventory.InventoryHelper;
|
||||
@@ -81,14 +80,6 @@ public class NetworkNodeGraph implements INetworkNodeGraph {
|
||||
this.invalidating = false;
|
||||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings("deprecation")
|
||||
public INetwork getNetworkForBCReasons() {
|
||||
OneSixMigrationHelper.removalHook();
|
||||
|
||||
return network;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void runActionWhenPossible(Consumer<INetwork> handler) {
|
||||
if (invalidating) {
|
||||
|
@@ -8,38 +8,41 @@ import com.raoulvdberge.refinedstorage.capability.CapabilityNetworkNodeProxy;
|
||||
import com.raoulvdberge.refinedstorage.util.WorldUtils;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.EnumFacing;
|
||||
import net.minecraft.util.Direction;
|
||||
import net.minecraftforge.event.TickEvent;
|
||||
import net.minecraftforge.event.world.BlockEvent;
|
||||
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
|
||||
import net.minecraftforge.fml.common.gameevent.TickEvent;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
|
||||
public class NetworkNodeListener {
|
||||
@SubscribeEvent
|
||||
public void onWorldTick(TickEvent.WorldTickEvent e) {
|
||||
if (!e.world.isRemote) {
|
||||
if (!e.world.isRemote()) {
|
||||
if (e.phase == TickEvent.Phase.END) {
|
||||
e.world.profiler.startSection("network node ticking");
|
||||
e.world.getProfiler().startSection("network node ticking");
|
||||
|
||||
for (INetworkNode node : API.instance().getNetworkNodeManager(e.world).all()) {
|
||||
node.update();
|
||||
}
|
||||
|
||||
e.world.profiler.endSection();
|
||||
e.world.getProfiler().endSection();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public void onBlockPlace(BlockEvent.EntityPlaceEvent e) {
|
||||
if (!e.getWorld().isRemote && e.getEntity() instanceof PlayerEntity) {
|
||||
if (!e.getWorld().isRemote() && e.getEntity() instanceof PlayerEntity) {
|
||||
TileEntity placed = e.getWorld().getTileEntity(e.getPos());
|
||||
|
||||
if (placed != null && placed.hasCapability(CapabilityNetworkNodeProxy.NETWORK_NODE_PROXY_CAPABILITY, null)) {
|
||||
for (EnumFacing facing : EnumFacing.VALUES) {
|
||||
if (placed != null) {
|
||||
placed.getCapability(CapabilityNetworkNodeProxy.NETWORK_NODE_PROXY_CAPABILITY).ifPresent(x -> {
|
||||
for (Direction facing : Direction.values()) {
|
||||
TileEntity side = e.getWorld().getTileEntity(e.getBlockSnapshot().getPos().offset(facing));
|
||||
|
||||
if (side != null && side.hasCapability(CapabilityNetworkNodeProxy.NETWORK_NODE_PROXY_CAPABILITY, facing.getOpposite())) {
|
||||
INetworkNodeProxy nodeProxy = side.getCapability(CapabilityNetworkNodeProxy.NETWORK_NODE_PROXY_CAPABILITY, facing.getOpposite());
|
||||
if (side != null) {
|
||||
INetworkNodeProxy nodeProxy = side.getCapability(CapabilityNetworkNodeProxy.NETWORK_NODE_PROXY_CAPABILITY, facing.getOpposite()).orElse(null);
|
||||
|
||||
if (nodeProxy != null) {
|
||||
INetworkNode node = nodeProxy.getNode();
|
||||
|
||||
if (node.getNetwork() != null && !node.getNetwork().getSecurityManager().hasPermission(Permission.BUILD, (PlayerEntity) e.getEntity())) {
|
||||
@@ -52,16 +55,18 @@ public class NetworkNodeListener {
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public void onBlockBreak(BlockEvent.BreakEvent e) {
|
||||
if (!e.getWorld().isRemote) {
|
||||
if (!e.getWorld().isRemote()) {
|
||||
TileEntity tile = e.getWorld().getTileEntity(e.getPos());
|
||||
|
||||
if (tile != null && tile.hasCapability(CapabilityNetworkNodeProxy.NETWORK_NODE_PROXY_CAPABILITY, null)) {
|
||||
INetworkNodeProxy nodeProxy = tile.getCapability(CapabilityNetworkNodeProxy.NETWORK_NODE_PROXY_CAPABILITY, null);
|
||||
if (tile != null) {
|
||||
tile.getCapability(CapabilityNetworkNodeProxy.NETWORK_NODE_PROXY_CAPABILITY).ifPresent(nodeProxy -> {
|
||||
INetworkNode node = nodeProxy.getNode();
|
||||
|
||||
if (node.getNetwork() != null && !node.getNetwork().getSecurityManager().hasPermission(Permission.BUILD, e.getPlayer())) {
|
||||
@@ -69,6 +74,7 @@ public class NetworkNodeListener {
|
||||
|
||||
e.setCanceled(true);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -33,8 +33,8 @@ public class NetworkNodeManager extends WorldSavedData implements INetworkNodeMa
|
||||
}
|
||||
|
||||
@Override
|
||||
public void readFromNBT(CompoundNBT tag) {
|
||||
if (tag.hasKey(NBT_NODES)) {
|
||||
public void read(CompoundNBT tag) {
|
||||
if (tag.contains(NBT_NODES)) {
|
||||
this.nodesTag = tag.getList(NBT_NODES, Constants.NBT.TAG_COMPOUND);
|
||||
this.canReadNodes = true;
|
||||
}
|
||||
@@ -73,15 +73,15 @@ public class NetworkNodeManager extends WorldSavedData implements INetworkNodeMa
|
||||
}
|
||||
|
||||
@Override
|
||||
public CompoundNBT writeToNBT(CompoundNBT tag) {
|
||||
public CompoundNBT write(CompoundNBT tag) {
|
||||
ListNBT list = new ListNBT();
|
||||
|
||||
for (INetworkNode node : all()) {
|
||||
try {
|
||||
CompoundNBT nodeTag = new CompoundNBT();
|
||||
|
||||
nodeTag.setString(NBT_NODE_ID, node.getId());
|
||||
nodeTag.setLong(NBT_NODE_POS, node.getPos().toLong());
|
||||
nodeTag.putString(NBT_NODE_ID, node.getId());
|
||||
nodeTag.putLong(NBT_NODE_POS, node.getPos().toLong());
|
||||
nodeTag.put(NBT_NODE_DATA, node.write(new CompoundNBT()));
|
||||
|
||||
list.add(nodeTag);
|
||||
|
@@ -2,7 +2,6 @@ package com.raoulvdberge.refinedstorage.apiimpl.network.grid;
|
||||
|
||||
import com.raoulvdberge.refinedstorage.api.network.grid.IGrid;
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.API;
|
||||
import com.raoulvdberge.refinedstorage.gui.grid.GuiGrid;
|
||||
import com.raoulvdberge.refinedstorage.network.MessageGridOpen;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
@@ -26,7 +25,7 @@ public class GridOpenHandler implements Runnable {
|
||||
return;
|
||||
}
|
||||
|
||||
GuiGrid gui = new GuiGrid(null, grid.getLeft());
|
||||
//GuiGrid gui = new GuiGrid(null, null, grid.getLeft());
|
||||
|
||||
// @Volatile: Just set the windowId: from OpenGuiHandler#process
|
||||
/*TODO player.openContainer = new ContainerGrid(grid.getLeft(), gui, grid.getRight() instanceof TileBase ? (TileBase) grid.getRight() : null, player);
|
||||
|
@@ -78,19 +78,19 @@ public class ItemGridHandlerPortable implements IItemGridHandler {
|
||||
// Do this before actually extracting, since portable grid sends updates as soon as a change happens (so before the storage tracker used to track)
|
||||
portableGrid.getItemStorageTracker().changed(player, item.copy());
|
||||
|
||||
ItemStack took = portableGrid.getItemStorage().extract(item, size, IComparer.COMPARE_DAMAGE | IComparer.COMPARE_NBT, Action.SIMULATE);
|
||||
ItemStack took = portableGrid.getItemStorage().extract(item, size, IComparer.COMPARE_NBT, Action.SIMULATE);
|
||||
|
||||
if (took != null) {
|
||||
if ((flags & EXTRACT_SHIFT) == EXTRACT_SHIFT) {
|
||||
IItemHandler playerInventory = player.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, Direction.UP).orElse(null);
|
||||
|
||||
if (playerInventory != null && ItemHandlerHelper.insertItem(playerInventory, took, true).isEmpty()) {
|
||||
took = portableGrid.getItemStorage().extract(item, size, IComparer.COMPARE_DAMAGE | IComparer.COMPARE_NBT, Action.PERFORM);
|
||||
took = portableGrid.getItemStorage().extract(item, size, IComparer.COMPARE_NBT, Action.PERFORM);
|
||||
|
||||
ItemHandlerHelper.insertItem(playerInventory, took, false);
|
||||
}
|
||||
} else {
|
||||
took = portableGrid.getItemStorage().extract(item, size, IComparer.COMPARE_DAMAGE | IComparer.COMPARE_NBT, Action.PERFORM);
|
||||
took = portableGrid.getItemStorage().extract(item, size, IComparer.COMPARE_NBT, Action.PERFORM);
|
||||
|
||||
if (single && !held.isEmpty()) {
|
||||
held.grow(1);
|
||||
|
@@ -1,12 +1,10 @@
|
||||
package com.raoulvdberge.refinedstorage.apiimpl.network.item;
|
||||
|
||||
import com.raoulvdberge.refinedstorage.RS;
|
||||
import com.raoulvdberge.refinedstorage.RSGui;
|
||||
import com.raoulvdberge.refinedstorage.api.network.INetwork;
|
||||
import com.raoulvdberge.refinedstorage.api.network.item.INetworkItem;
|
||||
import com.raoulvdberge.refinedstorage.api.network.item.INetworkItemHandler;
|
||||
import com.raoulvdberge.refinedstorage.api.network.security.Permission;
|
||||
import com.raoulvdberge.refinedstorage.item.ItemWirelessCraftingMonitor;
|
||||
import com.raoulvdberge.refinedstorage.util.WorldUtils;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
@@ -57,7 +57,7 @@ public class NetworkNodeConstructor extends NetworkNode implements IComparable,
|
||||
private ItemHandlerBase itemFilters = new ItemHandlerBase(1, new ListenerNetworkNode(this));
|
||||
private FluidInventory fluidFilters = new FluidInventory(1, new ListenerNetworkNode(this));
|
||||
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this), ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_CRAFTING, ItemUpgrade.TYPE_STACK);
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this)/* TODO, ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_CRAFTING, ItemUpgrade.TYPE_STACK*/);
|
||||
|
||||
private int compare = IComparer.COMPARE_NBT;
|
||||
private int type = IType.ITEMS;
|
||||
|
@@ -84,7 +84,7 @@ public class NetworkNodeCrafter extends NetworkNode implements ICraftingPatternC
|
||||
|
||||
private List<ICraftingPattern> patterns = new ArrayList<>();
|
||||
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this), ItemUpgrade.TYPE_SPEED);
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this)/* TODO, ItemUpgrade.TYPE_SPEED*/);
|
||||
|
||||
// Used to prevent infinite recursion on getRootContainer() when there's e.g. two crafters facing each other.
|
||||
private boolean visited = false;
|
||||
|
@@ -9,7 +9,6 @@ import com.raoulvdberge.refinedstorage.inventory.fluid.FluidInventory;
|
||||
import com.raoulvdberge.refinedstorage.inventory.item.ItemHandlerBase;
|
||||
import com.raoulvdberge.refinedstorage.inventory.item.ItemHandlerUpgrade;
|
||||
import com.raoulvdberge.refinedstorage.inventory.listener.ListenerNetworkNode;
|
||||
import com.raoulvdberge.refinedstorage.item.ItemUpgrade;
|
||||
import com.raoulvdberge.refinedstorage.tile.TileDestructor;
|
||||
import com.raoulvdberge.refinedstorage.tile.config.IComparable;
|
||||
import com.raoulvdberge.refinedstorage.tile.config.IFilterable;
|
||||
@@ -60,7 +59,7 @@ public class NetworkNodeDestructor extends NetworkNode implements IComparable, I
|
||||
private ItemHandlerBase itemFilters = new ItemHandlerBase(9, new ListenerNetworkNode(this));
|
||||
private FluidInventory fluidFilters = new FluidInventory(9, new ListenerNetworkNode(this));
|
||||
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this), ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_SILK_TOUCH, ItemUpgrade.TYPE_FORTUNE_1, ItemUpgrade.TYPE_FORTUNE_2, ItemUpgrade.TYPE_FORTUNE_3);
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this)/* TODO, ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_SILK_TOUCH, ItemUpgrade.TYPE_FORTUNE_1, ItemUpgrade.TYPE_FORTUNE_2, ItemUpgrade.TYPE_FORTUNE_3*/);
|
||||
|
||||
private int compare = IComparer.COMPARE_NBT;
|
||||
private int mode = IFilterable.BLACKLIST;
|
||||
|
@@ -41,7 +41,7 @@ public class NetworkNodeExporter extends NetworkNode implements IComparable, ITy
|
||||
private ItemHandlerBase itemFilters = new ItemHandlerBase(9, new ListenerNetworkNode(this));
|
||||
private FluidInventory fluidFilters = new FluidInventory(9, new ListenerNetworkNode(this));
|
||||
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this), ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_CRAFTING, ItemUpgrade.TYPE_STACK);
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this)/* TODO, ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_CRAFTING, ItemUpgrade.TYPE_STACK*/);
|
||||
|
||||
private int compare = IComparer.COMPARE_NBT;
|
||||
private int type = IType.ITEMS;
|
||||
|
@@ -56,7 +56,7 @@ public class NetworkNodeFluidInterface extends NetworkNode {
|
||||
private ItemHandlerBase in = new ItemHandlerBase(1, new ListenerNetworkNode(this), stack -> StackUtils.getFluid(stack, true).getRight() != null);
|
||||
private FluidInventory out = new FluidInventory(1, TANK_CAPACITY, new ListenerNetworkNode(this));
|
||||
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this), ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_STACK, ItemUpgrade.TYPE_CRAFTING);
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this)/* TODO, ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_STACK, ItemUpgrade.TYPE_CRAFTING*/);
|
||||
|
||||
public NetworkNodeFluidInterface(World world, BlockPos pos) {
|
||||
super(world, pos);
|
||||
|
@@ -8,7 +8,6 @@ import com.raoulvdberge.refinedstorage.inventory.fluid.FluidInventory;
|
||||
import com.raoulvdberge.refinedstorage.inventory.item.ItemHandlerBase;
|
||||
import com.raoulvdberge.refinedstorage.inventory.item.ItemHandlerUpgrade;
|
||||
import com.raoulvdberge.refinedstorage.inventory.listener.ListenerNetworkNode;
|
||||
import com.raoulvdberge.refinedstorage.item.ItemUpgrade;
|
||||
import com.raoulvdberge.refinedstorage.tile.TileDiskDrive;
|
||||
import com.raoulvdberge.refinedstorage.tile.TileImporter;
|
||||
import com.raoulvdberge.refinedstorage.tile.config.IComparable;
|
||||
@@ -44,7 +43,7 @@ public class NetworkNodeImporter extends NetworkNode implements IComparable, IFi
|
||||
private ItemHandlerBase itemFilters = new ItemHandlerBase(9, new ListenerNetworkNode(this));
|
||||
private FluidInventory fluidFilters = new FluidInventory(9, new ListenerNetworkNode(this));
|
||||
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this), ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_STACK);
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this)/* TODO, ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_STACK*/);
|
||||
|
||||
private int compare = IComparer.COMPARE_NBT;
|
||||
private int mode = IFilterable.BLACKLIST;
|
||||
|
@@ -34,7 +34,7 @@ public class NetworkNodeInterface extends NetworkNode implements IComparable {
|
||||
|
||||
private IItemHandler items = new ItemHandlerProxy(importItems, exportItems);
|
||||
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this), ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_STACK, ItemUpgrade.TYPE_CRAFTING);
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this)/* TODO, ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_STACK, ItemUpgrade.TYPE_CRAFTING*/);
|
||||
|
||||
private int compare = IComparer.COMPARE_NBT;
|
||||
|
||||
|
@@ -18,7 +18,7 @@ import javax.annotation.Nullable;
|
||||
public class NetworkNodeWirelessTransmitter extends NetworkNode implements IWirelessTransmitter {
|
||||
public static final String ID = "wireless_transmitter";
|
||||
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this), ItemUpgrade.TYPE_RANGE);
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this)/* TODO , ItemUpgrade.TYPE_RANGE*/);
|
||||
|
||||
public NetworkNodeWirelessTransmitter(World world, BlockPos pos) {
|
||||
super(world, pos);
|
||||
|
@@ -13,7 +13,6 @@ import com.raoulvdberge.refinedstorage.inventory.item.ItemHandlerBase;
|
||||
import com.raoulvdberge.refinedstorage.inventory.item.ItemHandlerProxy;
|
||||
import com.raoulvdberge.refinedstorage.inventory.item.ItemHandlerUpgrade;
|
||||
import com.raoulvdberge.refinedstorage.inventory.listener.ListenerNetworkNode;
|
||||
import com.raoulvdberge.refinedstorage.item.ItemUpgrade;
|
||||
import com.raoulvdberge.refinedstorage.tile.TileDiskManipulator;
|
||||
import com.raoulvdberge.refinedstorage.tile.config.IComparable;
|
||||
import com.raoulvdberge.refinedstorage.tile.config.IFilterable;
|
||||
@@ -55,7 +54,7 @@ public class NetworkNodeDiskManipulator extends NetworkNode implements IComparab
|
||||
private IStorageDisk<ItemStack>[] itemDisks = new IStorageDisk[6];
|
||||
private IStorageDisk<FluidStack>[] fluidDisks = new IStorageDisk[6];
|
||||
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this), ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_STACK) {
|
||||
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ListenerNetworkNode(this)/* TODO, ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_STACK*/) {
|
||||
@Override
|
||||
public int getItemInteractCount() {
|
||||
int count = super.getItemInteractCount();
|
||||
|
@@ -3,7 +3,7 @@ package com.raoulvdberge.refinedstorage.apiimpl.util;
|
||||
import com.google.common.collect.ArrayListMultimap;
|
||||
import com.raoulvdberge.refinedstorage.api.util.IStackList;
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.API;
|
||||
import net.minecraftforge.fluids.Fluid;
|
||||
import net.minecraft.fluid.Fluid;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
@@ -21,10 +21,10 @@ public class StackListFluid implements IStackList<FluidStack> {
|
||||
|
||||
for (FluidStack otherStack : stacks.get(stack.getFluid())) {
|
||||
if (stack.isFluidEqual(otherStack)) {
|
||||
if ((long) otherStack.amount + (long) size > Integer.MAX_VALUE) {
|
||||
otherStack.amount = Integer.MAX_VALUE;
|
||||
if ((long) otherStack.getAmount() + (long) size > Integer.MAX_VALUE) {
|
||||
otherStack.setAmount(Integer.MAX_VALUE);
|
||||
} else {
|
||||
otherStack.amount += size;
|
||||
otherStack.grow(size);
|
||||
}
|
||||
|
||||
return;
|
||||
@@ -32,24 +32,24 @@ public class StackListFluid implements IStackList<FluidStack> {
|
||||
}
|
||||
|
||||
FluidStack newStack = stack.copy();
|
||||
newStack.amount = size;
|
||||
newStack.setAmount(size);
|
||||
stacks.put(stack.getFluid(), newStack);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void add(@Nonnull FluidStack stack) {
|
||||
add(stack, stack.amount);
|
||||
add(stack, stack.getAmount());
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean remove(@Nonnull FluidStack stack, int size) {
|
||||
for (FluidStack otherStack : stacks.get(stack.getFluid())) {
|
||||
if (stack.isFluidEqual(otherStack)) {
|
||||
otherStack.amount -= size;
|
||||
otherStack.shrink(size);
|
||||
|
||||
boolean success = otherStack.amount >= 0;
|
||||
boolean success = otherStack.getAmount() >= 0;
|
||||
|
||||
if (otherStack.amount <= 0) {
|
||||
if (otherStack.getAmount() <= 0) {
|
||||
stacks.remove(otherStack.getFluid(), otherStack);
|
||||
}
|
||||
|
||||
@@ -62,7 +62,7 @@ public class StackListFluid implements IStackList<FluidStack> {
|
||||
|
||||
@Override
|
||||
public boolean remove(@Nonnull FluidStack stack) {
|
||||
return remove(stack, stack.amount);
|
||||
return remove(stack, stack.getAmount());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -10,8 +10,8 @@ import net.minecraft.state.EnumProperty;
|
||||
import net.minecraft.util.BlockRenderLayer;
|
||||
|
||||
public class BlockController extends BlockNodeProxy {
|
||||
public static final EnumProperty TYPE = EnumProperty.create("type", ControllerType.class);
|
||||
public static final EnumProperty ENERGY_TYPE = EnumProperty.create("energy_type", ControllerEnergyType.class);
|
||||
public static final EnumProperty<ControllerType> TYPE = EnumProperty.create("type", ControllerType.class);
|
||||
public static final EnumProperty<ControllerEnergyType> ENERGY_TYPE = EnumProperty.create("energy_type", ControllerEnergyType.class);
|
||||
|
||||
public BlockController() {
|
||||
super(BlockInfoBuilder.forId("controller").tileEntity(TileController::new).create());
|
||||
|
@@ -6,7 +6,7 @@ import com.raoulvdberge.refinedstorage.tile.TileFluidStorage;
|
||||
import net.minecraft.state.EnumProperty;
|
||||
|
||||
public class BlockFluidStorage extends BlockNode {
|
||||
public static final EnumProperty TYPE = EnumProperty.create("type", FluidStorageType.class);
|
||||
public static final EnumProperty<FluidStorageType> TYPE = EnumProperty.create("type", FluidStorageType.class);
|
||||
|
||||
public BlockFluidStorage() {
|
||||
super(BlockInfoBuilder.forId("fluid_storage").hardness(5.8F).tileEntity(TileFluidStorage::new).create());
|
||||
|
@@ -8,7 +8,7 @@ import net.minecraft.item.Item;
|
||||
import net.minecraft.state.EnumProperty;
|
||||
|
||||
public class BlockGrid extends BlockNode {
|
||||
public static final EnumProperty TYPE = EnumProperty.create("type", GridType.class);
|
||||
public static final EnumProperty<GridType> TYPE = EnumProperty.create("type", GridType.class);
|
||||
|
||||
public BlockGrid() {
|
||||
super(BlockInfoBuilder.forId("grid").tileEntity(TileGrid::new).create());
|
||||
|
@@ -8,8 +8,8 @@ import net.minecraft.state.BooleanProperty;
|
||||
import net.minecraft.state.EnumProperty;
|
||||
|
||||
public class BlockPortableGrid extends BlockBase {
|
||||
public static final EnumProperty TYPE = EnumProperty.create("type", PortableGridType.class);
|
||||
public static final EnumProperty DISK_STATE = EnumProperty.create("disk_state", PortableGridDiskState.class);
|
||||
public static final EnumProperty<PortableGridType> TYPE = EnumProperty.create("type", PortableGridType.class);
|
||||
public static final EnumProperty<PortableGridDiskState> DISK_STATE = EnumProperty.create("disk_state", PortableGridDiskState.class);
|
||||
public static final BooleanProperty CONNECTED = BooleanProperty.create("connected");
|
||||
|
||||
public BlockPortableGrid() {
|
||||
|
@@ -1,46 +0,0 @@
|
||||
package com.raoulvdberge.refinedstorage.block.property;
|
||||
|
||||
import net.minecraftforge.common.property.IUnlistedProperty;
|
||||
|
||||
import java.util.Objects;
|
||||
import java.util.function.Function;
|
||||
import java.util.function.Predicate;
|
||||
|
||||
public class PropertyObject<T> implements IUnlistedProperty<T> {
|
||||
private final String name;
|
||||
private final Class<T> clazz;
|
||||
private final Predicate<T> validator;
|
||||
private final Function<T, String> stringFunction;
|
||||
|
||||
public PropertyObject(String name, Class<T> clazz, Predicate<T> validator, Function<T, String> stringFunction) {
|
||||
this.name = name;
|
||||
this.clazz = clazz;
|
||||
this.validator = validator;
|
||||
this.stringFunction = stringFunction;
|
||||
}
|
||||
|
||||
public PropertyObject(String name, Class<T> clazz) {
|
||||
this(name, clazz, v -> true, Objects::toString);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isValid(T value) {
|
||||
return validator.test(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<T> getType() {
|
||||
return clazz;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String valueToString(T value) {
|
||||
return stringFunction.apply(value);
|
||||
}
|
||||
}
|
||||
|
@@ -31,6 +31,7 @@ import net.minecraft.network.play.server.SSetSlotPacket;
|
||||
import net.minecraftforge.items.SlotItemHandler;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.ArrayList;
|
||||
|
||||
public class ContainerGrid extends ContainerBase implements IGridCraftingListener {
|
||||
private IGrid grid;
|
||||
@@ -54,7 +55,7 @@ public class ContainerGrid extends ContainerBase implements IGridCraftingListene
|
||||
|
||||
public void initSlots() {
|
||||
this.inventorySlots.clear();
|
||||
this.inventoryItemStacks.clear(); // TODO at
|
||||
// this.inventoryItemStacks.clear(); // TODO at
|
||||
|
||||
this.transferManager.clearTransfers();
|
||||
|
||||
@@ -213,7 +214,7 @@ public class ContainerGrid extends ContainerBase implements IGridCraftingListene
|
||||
Slot slot = inventorySlots.get(i);
|
||||
|
||||
if (slot instanceof SlotGridCrafting || slot == craftingResultSlot || slot == patternResultSlot) {
|
||||
for (IContainerListener listener : listeners) { // TODO AT for listeners
|
||||
for (IContainerListener listener : new ArrayList<IContainerListener>()) { // TODO AT for listeners
|
||||
// @Volatile: We can't use IContainerListener#sendSlotContents since ServerPlayerEntity blocks SlotCrafting changes...
|
||||
if (listener instanceof ServerPlayerEntity) {
|
||||
((ServerPlayerEntity) listener).connection.sendPacket(new SSetSlotPacket(windowId, i, slot.getStack()));
|
||||
|
@@ -56,7 +56,7 @@ public class GuiController extends GuiBase<ContainerController> {
|
||||
|
||||
@Override
|
||||
public void drawForeground(int mouseX, int mouseY) {
|
||||
drawString(7, 7, t("gui.refinedstorage:controller." + controller.getType().getId()));
|
||||
drawString(7, 7, t("gui.refinedstorage:controller." + controller.getControllerType().getId()));
|
||||
drawString(7, 87, t("container.inventory"));
|
||||
|
||||
int x = 33;
|
||||
|
@@ -1,6 +1,5 @@
|
||||
package com.raoulvdberge.refinedstorage.gui;
|
||||
|
||||
import com.google.common.base.Optional;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.mojang.blaze3d.platform.GlStateManager;
|
||||
import com.raoulvdberge.refinedstorage.api.autocrafting.craftingmonitor.ICraftingMonitorElement;
|
||||
@@ -27,6 +26,7 @@ import net.minecraftforge.fluids.FluidStack;
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
import java.util.UUID;
|
||||
|
||||
public class GuiCraftingMonitor extends GuiBase<ContainerCraftingMonitor> {
|
||||
|
@@ -1,6 +1,6 @@
|
||||
package com.raoulvdberge.refinedstorage.gui;
|
||||
|
||||
import com.raoulvdberge.refinedstorage.RS;
|
||||
import com.mojang.blaze3d.platform.GlStateManager;
|
||||
import com.raoulvdberge.refinedstorage.api.autocrafting.ICraftingPattern;
|
||||
import com.raoulvdberge.refinedstorage.api.autocrafting.preview.ICraftingPreviewElement;
|
||||
import com.raoulvdberge.refinedstorage.api.autocrafting.task.CraftingTaskErrorType;
|
||||
@@ -11,33 +11,28 @@ import com.raoulvdberge.refinedstorage.apiimpl.autocrafting.preview.CraftingPrev
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.autocrafting.preview.CraftingPreviewElementItemStack;
|
||||
import com.raoulvdberge.refinedstorage.gui.control.Scrollbar;
|
||||
import com.raoulvdberge.refinedstorage.item.ItemPattern;
|
||||
import com.raoulvdberge.refinedstorage.network.MessageGridCraftingStart;
|
||||
import com.raoulvdberge.refinedstorage.util.RenderUtils;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.gui.GuiButton;
|
||||
import net.minecraft.client.gui.GuiScreen;
|
||||
import net.minecraft.client.renderer.GlStateManager;
|
||||
import net.minecraft.client.gui.screen.Screen;
|
||||
import net.minecraft.client.gui.widget.button.Button;
|
||||
import net.minecraft.client.renderer.RenderHelper;
|
||||
import net.minecraft.client.util.ITooltipFlag;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.inventory.Container;
|
||||
import net.minecraft.inventory.container.Container;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
import net.minecraftforge.fml.client.FMLClientHandler;
|
||||
import org.lwjgl.input.Keyboard;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class GuiCraftingPreview extends GuiBase {
|
||||
public class CraftingPreviewElementDrawers extends ElementDrawers {
|
||||
private IElementDrawer<Integer> overlayDrawer = (x, y, colour) -> {
|
||||
GlStateManager.color(1, 1, 1, 1);
|
||||
GlStateManager.color4f(1, 1, 1, 1);
|
||||
GlStateManager.disableLighting();
|
||||
|
||||
drawRect(x, y, x + 73, y + 29, colour);
|
||||
fill(x, y, x + 73, y + 29, colour);
|
||||
};
|
||||
|
||||
@Override
|
||||
@@ -49,13 +44,13 @@ public class GuiCraftingPreview extends GuiBase {
|
||||
private static final int VISIBLE_ROWS = 5;
|
||||
|
||||
private List<ICraftingPreviewElement> stacks;
|
||||
private GuiScreen parent;
|
||||
private Screen parent;
|
||||
|
||||
private int hash;
|
||||
private int quantity;
|
||||
|
||||
private GuiButton startButton;
|
||||
private GuiButton cancelButton;
|
||||
private Button startButton;
|
||||
private Button cancelButton;
|
||||
|
||||
private ItemStack hoveringStack;
|
||||
private FluidStack hoveringFluid;
|
||||
@@ -64,13 +59,13 @@ public class GuiCraftingPreview extends GuiBase {
|
||||
|
||||
private boolean fluids;
|
||||
|
||||
public GuiCraftingPreview(GuiScreen parent, List<ICraftingPreviewElement> stacks, int hash, int quantity, boolean fluids) {
|
||||
super(new Container() {
|
||||
public GuiCraftingPreview(Screen parent, List<ICraftingPreviewElement> stacks, int hash, int quantity, boolean fluids) {
|
||||
super(new Container(null, 0) {
|
||||
@Override
|
||||
public boolean canInteractWith(PlayerEntity player) {
|
||||
public boolean canInteractWith(PlayerEntity playerIn) {
|
||||
return false;
|
||||
}
|
||||
}, 254, 201);
|
||||
}, 254, 201, null, null);
|
||||
|
||||
this.stacks = new ArrayList<>(stacks);
|
||||
this.parent = parent;
|
||||
@@ -86,7 +81,7 @@ public class GuiCraftingPreview extends GuiBase {
|
||||
public void init(int x, int y) {
|
||||
cancelButton = addButton(x + 55, y + 201 - 20 - 7, 50, 20, t("gui.cancel"));
|
||||
startButton = addButton(x + 129, y + 201 - 20 - 7, 50, 20, t("misc.refinedstorage:start"));
|
||||
startButton.enabled = stacks.stream().noneMatch(ICraftingPreviewElement::hasMissing) && getErrorType() == null;
|
||||
startButton.active = stacks.stream().noneMatch(ICraftingPreviewElement::hasMissing) && getErrorType() == null; // TODO enabled?
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -113,7 +108,7 @@ public class GuiCraftingPreview extends GuiBase {
|
||||
drawTexture(x, y, 0, 0, screenWidth, screenHeight);
|
||||
|
||||
if (getErrorType() != null) {
|
||||
drawRect(x + 7, y + 20, x + 228, y + 169, 0xFFDBDBDB);
|
||||
fill(x + 7, y + 20, x + 228, y + 169, 0xFFDBDBDB);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -124,11 +119,11 @@ public class GuiCraftingPreview extends GuiBase {
|
||||
int x = 7;
|
||||
int y = 15;
|
||||
|
||||
float scale = fontRenderer.getUnicodeFlag() ? 1F : 0.5F;
|
||||
float scale = /* TODO font.getUnicodeFlag() ? 1F :*/ 0.5F;
|
||||
|
||||
if (getErrorType() != null) {
|
||||
GlStateManager.pushMatrix();
|
||||
GlStateManager.scale(scale, scale, 1);
|
||||
GlStateManager.scalef(scale, scale, 1);
|
||||
|
||||
drawString(RenderUtils.getOffsetOnScale(x + 5, scale), RenderUtils.getOffsetOnScale(y + 11, scale), t("gui.refinedstorage:crafting_preview.error"));
|
||||
|
||||
@@ -143,18 +138,18 @@ public class GuiCraftingPreview extends GuiBase {
|
||||
|
||||
GlStateManager.popMatrix();
|
||||
|
||||
ICraftingPattern pattern = ItemPattern.getPatternFromCache(parent.mc.world, (ItemStack) stacks.get(0).getElement());
|
||||
ICraftingPattern pattern = ItemPattern.getPatternFromCache(parent.getMinecraft().world, (ItemStack) stacks.get(0).getElement());
|
||||
|
||||
int yy = 83;
|
||||
for (ItemStack output : pattern.getOutputs()) {
|
||||
if (output != null) {
|
||||
GlStateManager.pushMatrix();
|
||||
GlStateManager.scale(scale, scale, 1);
|
||||
drawString(RenderUtils.getOffsetOnScale(x + 25, scale), RenderUtils.getOffsetOnScale(yy + 6, scale), output.getDisplayName());
|
||||
GlStateManager.scalef(scale, scale, 1);
|
||||
drawString(RenderUtils.getOffsetOnScale(x + 25, scale), RenderUtils.getOffsetOnScale(yy + 6, scale), output.getDisplayName().getFormattedText()); // TODO getFOrmattedText
|
||||
GlStateManager.popMatrix();
|
||||
|
||||
RenderHelper.enableGUIStandardItemLighting();
|
||||
GlStateManager.enableDepth();
|
||||
GlStateManager.enableDepthTest();
|
||||
drawItem(x + 5, yy, output);
|
||||
RenderHelper.disableStandardItemLighting();
|
||||
|
||||
@@ -177,7 +172,7 @@ public class GuiCraftingPreview extends GuiBase {
|
||||
int slot = scrollbar != null ? (scrollbar.getOffset() * 3) : 0;
|
||||
|
||||
RenderHelper.enableGUIStandardItemLighting();
|
||||
GlStateManager.enableDepth();
|
||||
GlStateManager.enableDepthTest();
|
||||
|
||||
this.hoveringStack = null;
|
||||
this.hoveringFluid = null;
|
||||
@@ -210,16 +205,17 @@ public class GuiCraftingPreview extends GuiBase {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void drawScreen(int mouseX, int mouseY, float partialTicks) {
|
||||
super.drawScreen(mouseX, mouseY, partialTicks);
|
||||
public void render(int mouseX, int mouseY, float partialTicks) {
|
||||
super.render(mouseX, mouseY, partialTicks);
|
||||
|
||||
if (hoveringStack != null) {
|
||||
drawTooltip(hoveringStack, mouseX, mouseY, hoveringStack.getTooltip(Minecraft.getMinecraft().player, Minecraft.getMinecraft().gameSettings.advancedItemTooltips ? ITooltipFlag.TooltipFlags.ADVANCED : ITooltipFlag.TooltipFlags.NORMAL));
|
||||
drawTooltip(hoveringStack, mouseX, mouseY, hoveringStack.getTooltip(Minecraft.getInstance().player, Minecraft.getInstance().gameSettings.advancedItemTooltips ? ITooltipFlag.TooltipFlags.ADVANCED : ITooltipFlag.TooltipFlags.NORMAL));
|
||||
} else if (hoveringFluid != null) {
|
||||
drawTooltip(mouseX, mouseY, hoveringFluid.getLocalizedName());
|
||||
drawTooltip(mouseX, mouseY, hoveringFluid.getDisplayName().getFormattedText()); // TODO gft
|
||||
}
|
||||
}
|
||||
|
||||
/* TODO
|
||||
@Override
|
||||
protected void keyTyped(char character, int keyCode) throws IOException {
|
||||
if (keyCode == Keyboard.KEY_RETURN && startButton.enabled) {
|
||||
@@ -240,10 +236,10 @@ public class GuiCraftingPreview extends GuiBase {
|
||||
} else if (button.id == cancelButton.id) {
|
||||
close();
|
||||
}
|
||||
}
|
||||
}*/
|
||||
|
||||
private void startRequest() {
|
||||
RS.INSTANCE.network.sendToServer(new MessageGridCraftingStart(hash, quantity, fluids));
|
||||
// TODO RS.INSTANCE.network.sendToServer(new MessageGridCraftingStart(hash, quantity, fluids));
|
||||
|
||||
close();
|
||||
}
|
||||
@@ -253,6 +249,6 @@ public class GuiCraftingPreview extends GuiBase {
|
||||
}
|
||||
|
||||
private void close() {
|
||||
FMLClientHandler.instance().showGuiScreen(parent);
|
||||
// TODO FMLClientHandler.instance().showGuiScreen(parent);
|
||||
}
|
||||
}
|
||||
|
@@ -1,20 +1,7 @@
|
||||
package com.raoulvdberge.refinedstorage.gui;
|
||||
|
||||
import com.raoulvdberge.refinedstorage.RSGui;
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.network.node.IGuiReaderWriter;
|
||||
import com.raoulvdberge.refinedstorage.apiimpl.network.node.NetworkNodeCraftingMonitor;
|
||||
import com.raoulvdberge.refinedstorage.container.*;
|
||||
import com.raoulvdberge.refinedstorage.tile.*;
|
||||
import com.raoulvdberge.refinedstorage.tile.craftingmonitor.TileCraftingMonitor;
|
||||
import com.raoulvdberge.refinedstorage.tile.craftingmonitor.WirelessCraftingMonitor;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.Hand;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.fml.common.network.IGuiHandler;
|
||||
|
||||
public class GuiHandler implements IGuiHandler {
|
||||
public class GuiHandler {
|
||||
/*
|
||||
private Object getContainer(int ID, PlayerEntity player, TileEntity tile) {
|
||||
switch (ID) {
|
||||
case RSGui.CONTROLLER:
|
||||
@@ -159,4 +146,6 @@ public class GuiHandler implements IGuiHandler {
|
||||
private ContainerFilter getFilterContainer(PlayerEntity player, int hand) {
|
||||
return new ContainerFilter(player, player.getHeldItem(Hand.values()[hand]));
|
||||
}
|
||||
|
||||
*/
|
||||
}
|
||||
|
@@ -22,7 +22,7 @@ public class ItemEnergyForge extends EnergyStorage {
|
||||
|
||||
if (received > 0 && !simulate) {
|
||||
if (!stack.hasTag()) {
|
||||
stack.put(new CompoundNBT());
|
||||
stack.setTag(new CompoundNBT());
|
||||
}
|
||||
|
||||
stack.getTag().putInt(NBT_ENERGY, getEnergyStored());
|
||||
@@ -37,7 +37,7 @@ public class ItemEnergyForge extends EnergyStorage {
|
||||
|
||||
if (extracted > 0 && !simulate) {
|
||||
if (!stack.hasTag()) {
|
||||
stack.put(new CompoundNBT());
|
||||
stack.setTag(new CompoundNBT());
|
||||
}
|
||||
|
||||
stack.getTag().putInt(NBT_ENERGY, getEnergyStored());
|
||||
|
@@ -1,23 +1,6 @@
|
||||
package com.raoulvdberge.refinedstorage.integration.forgeenergy;
|
||||
|
||||
import com.raoulvdberge.refinedstorage.RS;
|
||||
import com.raoulvdberge.refinedstorage.api.network.readerwriter.IReader;
|
||||
import com.raoulvdberge.refinedstorage.api.network.readerwriter.IReaderWriterChannel;
|
||||
import com.raoulvdberge.refinedstorage.api.network.readerwriter.IReaderWriterHandler;
|
||||
import com.raoulvdberge.refinedstorage.api.network.readerwriter.IWriter;
|
||||
import net.minecraft.nbt.CompoundNBT;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.text.ITextComponent;
|
||||
import net.minecraft.util.text.TextComponentTranslation;
|
||||
import net.minecraftforge.common.capabilities.Capability;
|
||||
import net.minecraftforge.energy.CapabilityEnergy;
|
||||
import net.minecraftforge.energy.EnergyStorage;
|
||||
import net.minecraftforge.energy.IEnergyStorage;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/* TODO
|
||||
public class ReaderWriterHandlerForgeEnergy implements IReaderWriterHandler {
|
||||
public static final String ID = "forgeenergy";
|
||||
|
||||
@@ -198,3 +181,4 @@ public class ReaderWriterHandlerForgeEnergy implements IReaderWriterHandler {
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
@@ -1,6 +1,5 @@
|
||||
package com.raoulvdberge.refinedstorage.item;
|
||||
|
||||
import com.google.common.base.Optional;
|
||||
import com.raoulvdberge.refinedstorage.RS;
|
||||
import com.raoulvdberge.refinedstorage.api.network.item.INetworkItem;
|
||||
import com.raoulvdberge.refinedstorage.api.network.item.INetworkItemHandler;
|
||||
@@ -15,6 +14,7 @@ import net.minecraftforge.fml.relauncher.Side;
|
||||
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import java.util.Optional;
|
||||
import java.util.UUID;
|
||||
|
||||
public class ItemWirelessCraftingMonitor extends ItemNetworkItem {
|
||||
@@ -46,8 +46,8 @@ public class ItemWirelessCraftingMonitor extends ItemNetworkItem {
|
||||
}
|
||||
|
||||
public static Optional<UUID> getTabSelected(ItemStack stack) {
|
||||
if (stack.hasTagCompound() && stack.getTagCompound().hasUniqueId(NBT_TAB_SELECTED)) {
|
||||
return Optional.of(stack.getTagCompound().getUniqueId(NBT_TAB_SELECTED));
|
||||
if (stack.hasTag() && stack.getTag().hasUniqueId(NBT_TAB_SELECTED)) {
|
||||
return Optional.of(stack.getTag().getUniqueId(NBT_TAB_SELECTED));
|
||||
}
|
||||
|
||||
return Optional.absent();
|
||||
|
@@ -1,6 +1,5 @@
|
||||
package com.raoulvdberge.refinedstorage.tile.craftingmonitor;
|
||||
|
||||
import com.google.common.base.Optional;
|
||||
import com.raoulvdberge.refinedstorage.api.autocrafting.ICraftingManager;
|
||||
import com.raoulvdberge.refinedstorage.api.autocrafting.task.ICraftingTask;
|
||||
import com.raoulvdberge.refinedstorage.api.network.INetwork;
|
||||
@@ -16,6 +15,7 @@ import net.minecraft.world.World;
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
import java.util.Optional;
|
||||
import java.util.UUID;
|
||||
|
||||
public class WirelessCraftingMonitor implements ICraftingMonitor {
|
||||
@@ -120,7 +120,7 @@ public class WirelessCraftingMonitor implements ICraftingMonitor {
|
||||
@Override
|
||||
public void onTabSelectionChanged(Optional<UUID> taskId) {
|
||||
if (taskId.isPresent() && tabSelected.isPresent() && taskId.get().equals(tabSelected.get())) {
|
||||
this.tabSelected = Optional.absent();
|
||||
this.tabSelected = Optional.empty();
|
||||
} else {
|
||||
this.tabSelected = taskId;
|
||||
}
|
||||
|
Reference in New Issue
Block a user