Revert some earlier stuff and fix icon sheet

This commit is contained in:
raoulvdberge
2017-02-02 19:09:04 +01:00
parent bc895bb4fc
commit 5cca4a4dc6
12 changed files with 23 additions and 16 deletions

View File

@@ -50,6 +50,7 @@ import net.minecraftforge.items.wrapper.InvWrapper;
import net.minecraftforge.items.wrapper.SidedInvWrapper; import net.minecraftforge.items.wrapper.SidedInvWrapper;
import org.apache.commons.lang3.tuple.Pair; import org.apache.commons.lang3.tuple.Pair;
import javax.annotation.Nonnull;
import javax.annotation.Nullable; import javax.annotation.Nullable;
import java.math.RoundingMode; import java.math.RoundingMode;
import java.text.DecimalFormat; import java.text.DecimalFormat;
@@ -116,10 +117,15 @@ public final class RSUtils {
return Pair.of(buf.readInt(), new FluidStack(FluidRegistry.getFluid(ByteBufUtils.readUTF8String(buf)), buf.readInt(), ByteBufUtils.readTag(buf))); return Pair.of(buf.readInt(), new FluidStack(FluidRegistry.getFluid(ByteBufUtils.readUTF8String(buf)), buf.readInt(), ByteBufUtils.readTag(buf)));
} }
public static ItemStack getStack(@Nullable ItemStack stack) { public static ItemStack transformNullToEmpty(@Nullable ItemStack stack) {
return stack == null ? ItemStack.EMPTY : stack; return stack == null ? ItemStack.EMPTY : stack;
} }
@Nullable
public static ItemStack transformEmptyToNull(@Nonnull ItemStack stack) {
return stack.isEmpty() ? null : stack;
}
@SuppressWarnings("unchecked") @SuppressWarnings("unchecked")
public static void createStorages(ItemStack disk, int slot, IStorageDisk<ItemStack>[] itemStorages, IStorageDisk<FluidStack>[] fluidStorages, Function<IStorageDisk, IStorageDisk> itemStorageWrapper, Function<IStorageDisk, IStorageDisk> fluidStorageWrapper) { public static void createStorages(ItemStack disk, int slot, IStorageDisk<ItemStack>[] itemStorages, IStorageDisk<FluidStack>[] fluidStorages, Function<IStorageDisk, IStorageDisk> itemStorageWrapper, Function<IStorageDisk, IStorageDisk> fluidStorageWrapper) {
if (disk.isEmpty()) { if (disk.isEmpty()) {

View File

@@ -89,7 +89,7 @@ public class FluidGridHandler implements IFluidGridHandler {
@Override @Override
public void onInsertHeldContainer(EntityPlayerMP player) { public void onInsertHeldContainer(EntityPlayerMP player) {
player.inventory.setItemStack(RSUtils.getStack(onInsert(player, player.inventory.getItemStack()))); player.inventory.setItemStack(RSUtils.transformNullToEmpty(onInsert(player, player.inventory.getItemStack())));
player.updateHeldItem(); player.updateHeldItem();
} }
} }

View File

@@ -137,7 +137,7 @@ public class ItemGridHandler implements IItemGridHandler {
} }
} }
} else { } else {
player.inventory.setItemStack(RSUtils.getStack(network.insertItem(stack, size, false))); player.inventory.setItemStack(RSUtils.transformNullToEmpty(network.insertItem(stack, size, false)));
} }
player.updateHeldItem(); player.updateHeldItem();

View File

@@ -256,7 +256,7 @@ public class NetworkNodeGrid extends NetworkNode implements IGrid {
ItemStack took = network.extractItem(possibility, 1, IComparer.COMPARE_NBT | IComparer.COMPARE_STRIP_NBT | (possibility.getItem().isDamageable() ? 0 : IComparer.COMPARE_DAMAGE), false); ItemStack took = network.extractItem(possibility, 1, IComparer.COMPARE_NBT | IComparer.COMPARE_STRIP_NBT | (possibility.getItem().isDamageable() ? 0 : IComparer.COMPARE_DAMAGE), false);
if (took != null) { if (took != null) {
matrix.setInventorySlotContents(i, RSUtils.getStack(took)); matrix.setInventorySlotContents(i, RSUtils.transformNullToEmpty(took));
found = true; found = true;
@@ -322,7 +322,7 @@ public class NetworkNodeGrid extends NetworkNode implements IGrid {
} }
} else if (!slot.isEmpty()) { } else if (!slot.isEmpty()) {
if (slot.getCount() == 1 && network != null) { if (slot.getCount() == 1 && network != null) {
matrix.setInventorySlotContents(i, RSUtils.getStack(network.extractItem(slot, 1, false))); matrix.setInventorySlotContents(i, RSUtils.transformNullToEmpty(network.extractItem(slot, 1, false)));
} else { } else {
matrix.decrStackSize(i, 1); matrix.decrStackSize(i, 1);
} }

View File

@@ -77,7 +77,7 @@ public class NetworkNodeInterface extends NetworkNode implements IComparable {
if (wanted.isEmpty()) { if (wanted.isEmpty()) {
if (!got.isEmpty()) { if (!got.isEmpty()) {
exportItems.setStackInSlot(i, RSUtils.getStack(network.insertItemTracked(got, got.getCount()))); exportItems.setStackInSlot(i, RSUtils.transformNullToEmpty(network.insertItemTracked(got, got.getCount())));
} }
} else { } else {
int delta = got.isEmpty() ? wanted.getCount() : (wanted.getCount() - got.getCount()); int delta = got.isEmpty() ? wanted.getCount() : (wanted.getCount() - got.getCount());

View File

@@ -168,12 +168,12 @@ public class NetworkNodeDiskManipulator extends NetworkNode implements IComparab
ItemStack stack = storage.getStacks().get(i); ItemStack stack = storage.getStacks().get(i);
ItemStack extracted = storage.extract(stack, upgrades.getItemInteractCount(), compare, false); ItemStack extracted = storage.extract(stack, upgrades.getItemInteractCount(), compare, false);
if (extracted == null || extracted.isEmpty()) { if (extracted == null) {
continue; continue;
} }
ItemStack remainder = network.insertItem(extracted, extracted.getCount(), false); ItemStack remainder = network.insertItem(extracted, extracted.getCount(), false);
if (remainder == null || remainder.isEmpty()) { if (remainder == null) {
break; break;
} }

View File

@@ -42,6 +42,7 @@ public class StorageItemCyclops extends StorageItemExternal {
if (inventoryHash != oldInventoryHash) { if (inventoryHash != oldInventoryHash) {
super.detectChanges(network); super.detectChanges(network);
oldInventoryHash = inventoryHash; oldInventoryHash = inventoryHash;
} }
} }
@@ -75,7 +76,7 @@ public class StorageItemCyclops extends StorageItemExternal {
InventoryTileEntityBase inv = cyclopsInv.get(); InventoryTileEntityBase inv = cyclopsInv.get();
if (inv != null && IFilterable.canTake(externalStorage.getItemFilters(), externalStorage.getMode(), externalStorage.getCompare(), stack)) { if (inv != null && IFilterable.canTake(externalStorage.getItemFilters(), externalStorage.getMode(), externalStorage.getCompare(), stack)) {
return SlotlessItemHandlerHelper.insertItem(inv, opposite, stack, size, simulate); return RSUtils.transformEmptyToNull(SlotlessItemHandlerHelper.insertItem(inv, opposite, stack, size, simulate));
} }
return ItemHandlerHelper.copyStackWithSize(stack, size); return ItemHandlerHelper.copyStackWithSize(stack, size);
@@ -86,7 +87,7 @@ public class StorageItemCyclops extends StorageItemExternal {
public ItemStack extract(@Nonnull ItemStack stack, int size, int flags, boolean simulate) { public ItemStack extract(@Nonnull ItemStack stack, int size, int flags, boolean simulate) {
InventoryTileEntityBase inv = cyclopsInv.get(); InventoryTileEntityBase inv = cyclopsInv.get();
return inv != null ? SlotlessItemHandlerHelper.extractItem(inv, opposite, stack, size, flags, simulate) : null; return inv != null ? RSUtils.transformEmptyToNull(SlotlessItemHandlerHelper.extractItem(inv, opposite, stack, size, flags, simulate)) : null;
} }
private NonNullList<ItemStack> getStacks(@Nullable InventoryTileEntityBase inv) { private NonNullList<ItemStack> getStacks(@Nullable InventoryTileEntityBase inv) {

View File

@@ -55,7 +55,7 @@ public class StorageItemItemHandler extends StorageItemExternal {
IItemHandler handler = handlerSupplier.get(); IItemHandler handler = handlerSupplier.get();
if (handler != null && IFilterable.canTake(externalStorage.getItemFilters(), externalStorage.getMode(), externalStorage.getCompare(), stack)) { if (handler != null && IFilterable.canTake(externalStorage.getItemFilters(), externalStorage.getMode(), externalStorage.getCompare(), stack)) {
return ItemHandlerHelper.insertItem(handler, ItemHandlerHelper.copyStackWithSize(stack, size), simulate); return RSUtils.transformEmptyToNull(ItemHandlerHelper.insertItem(handler, ItemHandlerHelper.copyStackWithSize(stack, size), simulate));
} }
return ItemHandlerHelper.copyStackWithSize(stack, size); return ItemHandlerHelper.copyStackWithSize(stack, size);

View File

@@ -140,9 +140,9 @@ public class ContainerGrid extends ContainerBase {
IFluidGridHandler fluidHandler = grid.getNetwork().getFluidGridHandler(); IFluidGridHandler fluidHandler = grid.getNetwork().getFluidGridHandler();
if (grid.getType() != EnumGridType.FLUID && itemHandler != null) { if (grid.getType() != EnumGridType.FLUID && itemHandler != null) {
slot.putStack(RSUtils.getStack(itemHandler.onInsert((EntityPlayerMP) player, slot.getStack()))); slot.putStack(RSUtils.transformNullToEmpty(itemHandler.onInsert((EntityPlayerMP) player, slot.getStack())));
} else if (grid.getType() == EnumGridType.FLUID && fluidHandler != null) { } else if (grid.getType() == EnumGridType.FLUID && fluidHandler != null) {
slot.putStack(RSUtils.getStack(fluidHandler.onInsert((EntityPlayerMP) player, slot.getStack()))); slot.putStack(RSUtils.transformNullToEmpty(fluidHandler.onInsert((EntityPlayerMP) player, slot.getStack())));
} }
detectAndSendChanges(); detectAndSendChanges();

View File

@@ -40,7 +40,7 @@ public class MessageGridCraftingClear extends MessageHandlerPlayerToServer<Messa
ItemStack slot = matrix.getStackInSlot(i); ItemStack slot = matrix.getStackInSlot(i);
if (!slot.isEmpty()) { if (!slot.isEmpty()) {
matrix.setInventorySlotContents(i, RSUtils.getStack(grid.getNetwork().insertItem(slot, slot.getCount(), false))); matrix.setInventorySlotContents(i, RSUtils.transformNullToEmpty(grid.getNetwork().insertItem(slot, slot.getCount(), false)));
} }
} }
} else if (grid.getType() == EnumGridType.PATTERN) { } else if (grid.getType() == EnumGridType.PATTERN) {

View File

@@ -446,7 +446,7 @@ public class TileController extends TileBase implements INetworkMaster, IRedston
inserted += storage.getCacheDelta(storedPre, size, remainder); inserted += storage.getCacheDelta(storedPre, size, remainder);
} }
if (remainder == null || remainder.isEmpty()) { if (remainder == null) {
// The external storage is responsible for sending changes, we don't need to anymore // The external storage is responsible for sending changes, we don't need to anymore
if (storage instanceof StorageItemExternal && !simulate) { if (storage instanceof StorageItemExternal && !simulate) {
((StorageItemExternal) storage).detectChanges(this); ((StorageItemExternal) storage).detectChanges(this);
@@ -490,7 +490,7 @@ public class TileController extends TileBase implements INetworkMaster, IRedston
took = storage.extract(stack, requested - received, flags, simulate); took = storage.extract(stack, requested - received, flags, simulate);
} }
if (took != null && !took.isEmpty()) { if (took != null) {
// The external storage is responsible for sending changes, we don't need to anymore // The external storage is responsible for sending changes, we don't need to anymore
if (storage instanceof StorageItemExternal && !simulate) { if (storage instanceof StorageItemExternal && !simulate) {
((StorageItemExternal) storage).detectChanges(this); ((StorageItemExternal) storage).detectChanges(this);

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.0 KiB

After

Width:  |  Height:  |  Size: 6.3 KiB