diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskdrive/NetworkNodeDiskDrive.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskdrive/NetworkNodeDiskDrive.java index 24e80c5a1..35371a9b1 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskdrive/NetworkNodeDiskDrive.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskdrive/NetworkNodeDiskDrive.java @@ -46,6 +46,11 @@ public class NetworkNodeDiskDrive extends NetworkNode implements IGuiStorage, IS private static final String NBT_MODE = "Mode"; private static final String NBT_TYPE = "Type"; + private static final int DISK_STATE_UPDATE_THROTTLE = 30; + + private int ticksSinceBlockUpdateRequested; + private boolean blockUpdateRequested; + private ItemHandlerBase disks = new ItemHandlerBase(8, new ItemHandlerListenerNetworkNode(this), VALIDATOR_STORAGE_DISK) { @Override protected void onContentsChanged(int slot) { @@ -114,6 +119,28 @@ public class NetworkNodeDiskDrive extends NetworkNode implements IGuiStorage, IS return usage; } + @Override + public void update() { + super.update(); + + if (blockUpdateRequested) { + ++ticksSinceBlockUpdateRequested; + + if (ticksSinceBlockUpdateRequested > DISK_STATE_UPDATE_THROTTLE) { + WorldUtils.updateBlock(world, pos); + + this.blockUpdateRequested = false; + this.ticksSinceBlockUpdateRequested = 0; + } + } else { + this.ticksSinceBlockUpdateRequested = 0; + } + } + + void requestBlockUpdate() { + this.blockUpdateRequested = true; + } + @Override public void onConnectedStateChange(INetwork network, boolean state) { super.onConnectedStateChange(network, state); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskdrive/StorageDiskFluidDriveWrapper.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskdrive/StorageDiskFluidDriveWrapper.java index 7623a522c..f19fa10c1 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskdrive/StorageDiskFluidDriveWrapper.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskdrive/StorageDiskFluidDriveWrapper.java @@ -5,10 +5,9 @@ import com.raoulvdberge.refinedstorage.api.storage.disk.IStorageDisk; import com.raoulvdberge.refinedstorage.api.storage.disk.IStorageDiskContainerContext; import com.raoulvdberge.refinedstorage.api.storage.disk.IStorageDiskListener; import com.raoulvdberge.refinedstorage.api.util.Action; -import com.raoulvdberge.refinedstorage.tile.TileDiskDrive; +import com.raoulvdberge.refinedstorage.render.constants.ConstantsDisk; import com.raoulvdberge.refinedstorage.tile.config.IFilterable; import com.raoulvdberge.refinedstorage.util.StackUtils; -import com.raoulvdberge.refinedstorage.util.WorldUtils; import net.minecraft.nbt.NBTTagCompound; import net.minecraftforge.fluids.FluidStack; @@ -20,23 +19,24 @@ public class StorageDiskFluidDriveWrapper implements IStorageDisk { private NetworkNodeDiskDrive diskDrive; private IStorageDisk parent; private int lastState; + private int ticksSinceLastChanged; public StorageDiskFluidDriveWrapper(NetworkNodeDiskDrive diskDrive, IStorageDisk parent) { this.diskDrive = diskDrive; this.parent = parent; this.setSettings( () -> { - int currentState = TileDiskDrive.getDiskState(getStored(), getCapacity()); + int currentState = ConstantsDisk.getDiskState(getStored(), getCapacity()); - if (lastState != currentState) { - lastState = currentState; + if (this.lastState != currentState) { + this.lastState = currentState; - WorldUtils.updateBlock(diskDrive.getWorld(), diskDrive.getPos()); + diskDrive.requestBlockUpdate(); } }, diskDrive ); - this.lastState = TileDiskDrive.getDiskState(getStored(), getCapacity()); + this.lastState = ConstantsDisk.getDiskState(getStored(), getCapacity()); } @Override diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskdrive/StorageDiskItemDriveWrapper.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskdrive/StorageDiskItemDriveWrapper.java index bfdb6e7ec..c65bde10f 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskdrive/StorageDiskItemDriveWrapper.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskdrive/StorageDiskItemDriveWrapper.java @@ -5,9 +5,8 @@ import com.raoulvdberge.refinedstorage.api.storage.disk.IStorageDisk; import com.raoulvdberge.refinedstorage.api.storage.disk.IStorageDiskContainerContext; import com.raoulvdberge.refinedstorage.api.storage.disk.IStorageDiskListener; import com.raoulvdberge.refinedstorage.api.util.Action; -import com.raoulvdberge.refinedstorage.tile.TileDiskDrive; +import com.raoulvdberge.refinedstorage.render.constants.ConstantsDisk; import com.raoulvdberge.refinedstorage.tile.config.IFilterable; -import com.raoulvdberge.refinedstorage.util.WorldUtils; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraftforge.items.ItemHandlerHelper; @@ -26,17 +25,17 @@ public class StorageDiskItemDriveWrapper implements IStorageDisk { this.parent = parent; this.setSettings( () -> { - int currentState = TileDiskDrive.getDiskState(getStored(), getCapacity()); + int currentState = ConstantsDisk.getDiskState(getStored(), getCapacity()); - if (lastState != currentState) { - lastState = currentState; + if (this.lastState != currentState) { + this.lastState = currentState; - WorldUtils.updateBlock(diskDrive.getWorld(), diskDrive.getPos()); + diskDrive.requestBlockUpdate(); } }, diskDrive ); - this.lastState = TileDiskDrive.getDiskState(getStored(), getCapacity()); + this.lastState = ConstantsDisk.getDiskState(getStored(), getCapacity()); } @Override diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskmanipulator/StorageDiskFluidManipulatorWrapper.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskmanipulator/StorageDiskFluidManipulatorWrapper.java index f72704a27..125cc3ec3 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskmanipulator/StorageDiskFluidManipulatorWrapper.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskmanipulator/StorageDiskFluidManipulatorWrapper.java @@ -5,7 +5,7 @@ import com.raoulvdberge.refinedstorage.api.storage.disk.IStorageDisk; import com.raoulvdberge.refinedstorage.api.storage.disk.IStorageDiskContainerContext; import com.raoulvdberge.refinedstorage.api.storage.disk.IStorageDiskListener; import com.raoulvdberge.refinedstorage.api.util.Action; -import com.raoulvdberge.refinedstorage.tile.TileDiskDrive; +import com.raoulvdberge.refinedstorage.render.constants.ConstantsDisk; import com.raoulvdberge.refinedstorage.tile.config.IFilterable; import com.raoulvdberge.refinedstorage.util.StackUtils; import com.raoulvdberge.refinedstorage.util.WorldUtils; @@ -26,7 +26,7 @@ public class StorageDiskFluidManipulatorWrapper implements IStorageDisk { - int currentState = TileDiskDrive.getDiskState(getStored(), getCapacity()); + int currentState = ConstantsDisk.getDiskState(getStored(), getCapacity()); if (lastState != currentState) { lastState = currentState; @@ -36,7 +36,7 @@ public class StorageDiskFluidManipulatorWrapper implements IStorageDisk { - int currentState = TileDiskDrive.getDiskState(getStored(), getCapacity()); + int currentState = ConstantsDisk.getDiskState(getStored(), getCapacity()); if (lastState != currentState) { lastState = currentState; @@ -36,7 +36,7 @@ public class StorageDiskItemManipulatorWrapper implements IStorageDisk= DISK_NEAR_CAPACITY_TRESHOLD) { + return DISK_STATE_NEAR_CAPACITY; + } else { + return DISK_STATE_NORMAL; + } + } +} diff --git a/src/main/java/com/raoulvdberge/refinedstorage/render/collision/constants/ConstantsExporter.java b/src/main/java/com/raoulvdberge/refinedstorage/render/constants/ConstantsExporter.java similarity index 97% rename from src/main/java/com/raoulvdberge/refinedstorage/render/collision/constants/ConstantsExporter.java rename to src/main/java/com/raoulvdberge/refinedstorage/render/constants/ConstantsExporter.java index 49244a055..4cee8ae63 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/render/collision/constants/ConstantsExporter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/render/constants/ConstantsExporter.java @@ -1,4 +1,4 @@ -package com.raoulvdberge.refinedstorage.render.collision.constants; +package com.raoulvdberge.refinedstorage.render.constants; import com.raoulvdberge.refinedstorage.render.collision.CollisionGroup; import com.raoulvdberge.refinedstorage.util.CollisionUtils; diff --git a/src/main/java/com/raoulvdberge/refinedstorage/render/collision/constants/ConstantsExternalStorage.java b/src/main/java/com/raoulvdberge/refinedstorage/render/constants/ConstantsExternalStorage.java similarity index 94% rename from src/main/java/com/raoulvdberge/refinedstorage/render/collision/constants/ConstantsExternalStorage.java rename to src/main/java/com/raoulvdberge/refinedstorage/render/constants/ConstantsExternalStorage.java index 9354c54ad..68c1412d2 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/render/collision/constants/ConstantsExternalStorage.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/render/constants/ConstantsExternalStorage.java @@ -1,4 +1,4 @@ -package com.raoulvdberge.refinedstorage.render.collision.constants; +package com.raoulvdberge.refinedstorage.render.constants; import com.raoulvdberge.refinedstorage.render.collision.CollisionGroup; import com.raoulvdberge.refinedstorage.util.CollisionUtils; diff --git a/src/main/java/com/raoulvdberge/refinedstorage/render/collision/constants/ConstantsImporter.java b/src/main/java/com/raoulvdberge/refinedstorage/render/constants/ConstantsImporter.java similarity index 97% rename from src/main/java/com/raoulvdberge/refinedstorage/render/collision/constants/ConstantsImporter.java rename to src/main/java/com/raoulvdberge/refinedstorage/render/constants/ConstantsImporter.java index 2ada4da4f..b672b5cc6 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/render/collision/constants/ConstantsImporter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/render/constants/ConstantsImporter.java @@ -1,4 +1,4 @@ -package com.raoulvdberge.refinedstorage.render.collision.constants; +package com.raoulvdberge.refinedstorage.render.constants; import com.raoulvdberge.refinedstorage.render.collision.CollisionGroup; import com.raoulvdberge.refinedstorage.util.CollisionUtils; diff --git a/src/main/java/com/raoulvdberge/refinedstorage/render/collision/constants/ConstantsPortableGrid.java b/src/main/java/com/raoulvdberge/refinedstorage/render/constants/ConstantsPortableGrid.java similarity index 74% rename from src/main/java/com/raoulvdberge/refinedstorage/render/collision/constants/ConstantsPortableGrid.java rename to src/main/java/com/raoulvdberge/refinedstorage/render/constants/ConstantsPortableGrid.java index 79b137d5e..c32aa91f6 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/render/collision/constants/ConstantsPortableGrid.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/render/constants/ConstantsPortableGrid.java @@ -1,4 +1,4 @@ -package com.raoulvdberge.refinedstorage.render.collision.constants; +package com.raoulvdberge.refinedstorage.render.constants; import net.minecraft.util.math.AxisAlignedBB; diff --git a/src/main/java/com/raoulvdberge/refinedstorage/render/collision/constants/ConstantsWirelessTransmitter.java b/src/main/java/com/raoulvdberge/refinedstorage/render/constants/ConstantsWirelessTransmitter.java similarity index 82% rename from src/main/java/com/raoulvdberge/refinedstorage/render/collision/constants/ConstantsWirelessTransmitter.java rename to src/main/java/com/raoulvdberge/refinedstorage/render/constants/ConstantsWirelessTransmitter.java index 80ded1581..675647b6f 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/render/collision/constants/ConstantsWirelessTransmitter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/render/constants/ConstantsWirelessTransmitter.java @@ -1,4 +1,4 @@ -package com.raoulvdberge.refinedstorage.render.collision.constants; +package com.raoulvdberge.refinedstorage.render.constants; import net.minecraft.util.math.AxisAlignedBB; diff --git a/src/main/java/com/raoulvdberge/refinedstorage/render/model/baked/BakedModelCableCover.java b/src/main/java/com/raoulvdberge/refinedstorage/render/model/baked/BakedModelCableCover.java index 7bab10d4b..a12184fd1 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/render/model/baked/BakedModelCableCover.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/render/model/baked/BakedModelCableCover.java @@ -7,7 +7,7 @@ import com.raoulvdberge.refinedstorage.apiimpl.network.node.cover.CoverManager; import com.raoulvdberge.refinedstorage.block.BlockBase; import com.raoulvdberge.refinedstorage.block.BlockCable; import com.raoulvdberge.refinedstorage.render.CubeBuilder; -import com.raoulvdberge.refinedstorage.render.collision.constants.ConstantsCable; +import com.raoulvdberge.refinedstorage.render.constants.ConstantsCable; import com.raoulvdberge.refinedstorage.util.RenderUtils; import net.minecraft.block.state.IBlockState; import net.minecraft.client.Minecraft; diff --git a/src/main/java/com/raoulvdberge/refinedstorage/render/model/baked/BakedModelDiskDrive.java b/src/main/java/com/raoulvdberge/refinedstorage/render/model/baked/BakedModelDiskDrive.java index e3792b9ba..666a5e508 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/render/model/baked/BakedModelDiskDrive.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/render/model/baked/BakedModelDiskDrive.java @@ -5,7 +5,7 @@ import com.google.common.cache.CacheLoader; import com.google.common.cache.LoadingCache; import com.raoulvdberge.refinedstorage.RSBlocks; import com.raoulvdberge.refinedstorage.block.BlockDiskDrive; -import com.raoulvdberge.refinedstorage.tile.TileDiskDrive; +import com.raoulvdberge.refinedstorage.render.constants.ConstantsDisk; import net.minecraft.block.state.IBlockState; import net.minecraft.client.renderer.block.model.BakedQuad; import net.minecraft.client.renderer.block.model.IBakedModel; @@ -72,7 +72,7 @@ public class BakedModelDiskDrive extends BakedModelDelegate { List quads = models.get(facing).getQuads(key.state, key.side, 0); for (int i = 0; i < 8; ++i) { - if (key.diskState[i] != TileDiskDrive.DISK_STATE_NONE) { + if (key.diskState[i] != ConstantsDisk.DISK_STATE_NONE) { quads.addAll(disks.get(facing).get(key.diskState[i]).get(i).getQuads(key.state, key.side, 0)); } } @@ -89,15 +89,15 @@ public class BakedModelDiskDrive extends BakedModelDelegate { disks.put(facing, new HashMap<>()); - disks.get(facing).put(TileDiskDrive.DISK_STATE_NORMAL, new ArrayList<>()); - disks.get(facing).put(TileDiskDrive.DISK_STATE_NEAR_CAPACITY, new ArrayList<>()); - disks.get(facing).put(TileDiskDrive.DISK_STATE_FULL, new ArrayList<>()); - disks.get(facing).put(TileDiskDrive.DISK_STATE_DISCONNECTED, new ArrayList<>()); + disks.get(facing).put(ConstantsDisk.DISK_STATE_NORMAL, new ArrayList<>()); + disks.get(facing).put(ConstantsDisk.DISK_STATE_NEAR_CAPACITY, new ArrayList<>()); + disks.get(facing).put(ConstantsDisk.DISK_STATE_FULL, new ArrayList<>()); + disks.get(facing).put(ConstantsDisk.DISK_STATE_DISCONNECTED, new ArrayList<>()); - initDiskModels(disk, TileDiskDrive.DISK_STATE_NORMAL, facing); - initDiskModels(diskNearCapacity, TileDiskDrive.DISK_STATE_NEAR_CAPACITY, facing); - initDiskModels(diskFull, TileDiskDrive.DISK_STATE_FULL, facing); - initDiskModels(diskDisconnected, TileDiskDrive.DISK_STATE_DISCONNECTED, facing); + initDiskModels(disk, ConstantsDisk.DISK_STATE_NORMAL, facing); + initDiskModels(diskNearCapacity, ConstantsDisk.DISK_STATE_NEAR_CAPACITY, facing); + initDiskModels(diskFull, ConstantsDisk.DISK_STATE_FULL, facing); + initDiskModels(diskDisconnected, ConstantsDisk.DISK_STATE_DISCONNECTED, facing); } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/render/model/baked/BakedModelDiskManipulator.java b/src/main/java/com/raoulvdberge/refinedstorage/render/model/baked/BakedModelDiskManipulator.java index 1a0bb65ff..de0b26475 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/render/model/baked/BakedModelDiskManipulator.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/render/model/baked/BakedModelDiskManipulator.java @@ -5,7 +5,7 @@ import com.google.common.cache.CacheLoader; import com.google.common.cache.LoadingCache; import com.raoulvdberge.refinedstorage.RSBlocks; import com.raoulvdberge.refinedstorage.block.BlockDiskManipulator; -import com.raoulvdberge.refinedstorage.tile.TileDiskDrive; +import com.raoulvdberge.refinedstorage.render.constants.ConstantsDisk; import net.minecraft.block.state.IBlockState; import net.minecraft.client.renderer.block.model.BakedQuad; import net.minecraft.client.renderer.block.model.IBakedModel; @@ -73,7 +73,7 @@ public class BakedModelDiskManipulator extends BakedModelDelegate { List quads = (key.state.getValue(BlockDiskManipulator.CONNECTED) ? modelsConnected : modelsDisconnected).get(facing).getQuads(key.state, key.side, 0); for (int i = 0; i < 6; ++i) { - if (key.diskState[i] != TileDiskDrive.DISK_STATE_NONE) { + if (key.diskState[i] != ConstantsDisk.DISK_STATE_NONE) { quads.addAll(disks.get(facing).get(key.diskState[i]).get(i).getQuads(key.state, key.side, 0)); } } @@ -91,15 +91,15 @@ public class BakedModelDiskManipulator extends BakedModelDelegate { disks.put(facing, new HashMap<>()); - disks.get(facing).put(TileDiskDrive.DISK_STATE_NORMAL, new ArrayList<>()); - disks.get(facing).put(TileDiskDrive.DISK_STATE_NEAR_CAPACITY, new ArrayList<>()); - disks.get(facing).put(TileDiskDrive.DISK_STATE_FULL, new ArrayList<>()); - disks.get(facing).put(TileDiskDrive.DISK_STATE_DISCONNECTED, new ArrayList<>()); + disks.get(facing).put(ConstantsDisk.DISK_STATE_NORMAL, new ArrayList<>()); + disks.get(facing).put(ConstantsDisk.DISK_STATE_NEAR_CAPACITY, new ArrayList<>()); + disks.get(facing).put(ConstantsDisk.DISK_STATE_FULL, new ArrayList<>()); + disks.get(facing).put(ConstantsDisk.DISK_STATE_DISCONNECTED, new ArrayList<>()); - initDiskModels(disk, TileDiskDrive.DISK_STATE_NORMAL, facing); - initDiskModels(diskNearCapacity, TileDiskDrive.DISK_STATE_NEAR_CAPACITY, facing); - initDiskModels(diskFull, TileDiskDrive.DISK_STATE_FULL, facing); - initDiskModels(diskDisconnected, TileDiskDrive.DISK_STATE_DISCONNECTED, facing); + initDiskModels(disk, ConstantsDisk.DISK_STATE_NORMAL, facing); + initDiskModels(diskNearCapacity, ConstantsDisk.DISK_STATE_NEAR_CAPACITY, facing); + initDiskModels(diskFull, ConstantsDisk.DISK_STATE_FULL, facing); + initDiskModels(diskDisconnected, ConstantsDisk.DISK_STATE_DISCONNECTED, facing); } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/tile/TileDiskDrive.java b/src/main/java/com/raoulvdberge/refinedstorage/tile/TileDiskDrive.java index 2a8905545..74ee6a42d 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/tile/TileDiskDrive.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/tile/TileDiskDrive.java @@ -3,6 +3,7 @@ package com.raoulvdberge.refinedstorage.tile; import com.raoulvdberge.refinedstorage.api.storage.AccessType; import com.raoulvdberge.refinedstorage.api.storage.disk.IStorageDisk; import com.raoulvdberge.refinedstorage.apiimpl.network.node.diskdrive.NetworkNodeDiskDrive; +import com.raoulvdberge.refinedstorage.render.constants.ConstantsDisk; import com.raoulvdberge.refinedstorage.tile.config.*; import com.raoulvdberge.refinedstorage.tile.data.TileDataParameter; import net.minecraft.nbt.NBTTagCompound; @@ -67,12 +68,6 @@ public class TileDiskDrive extends TileNode { private static final String NBT_DISK_STATE = "DiskState_%d"; - public static final int DISK_STATE_NORMAL = 0; - public static final int DISK_STATE_NEAR_CAPACITY = 1; - public static final int DISK_STATE_FULL = 2; - public static final int DISK_STATE_DISCONNECTED = 3; - public static final int DISK_STATE_NONE = 4; - private Integer[] diskState = new Integer[8]; public TileDiskDrive() { @@ -109,13 +104,13 @@ public class TileDiskDrive extends TileNode { public static void writeDiskState(NBTTagCompound tag, int disks, boolean connected, IStorageDisk[] itemStorages, IStorageDisk[] fluidStorages) { for (int i = 0; i < disks; ++i) { - int state = DISK_STATE_NONE; + int state = ConstantsDisk.DISK_STATE_NONE; if (itemStorages[i] != null || fluidStorages[i] != null) { if (!connected) { - state = DISK_STATE_DISCONNECTED; + state = ConstantsDisk.DISK_STATE_DISCONNECTED; } else { - state = getDiskState( + state = ConstantsDisk.getDiskState( itemStorages[i] != null ? itemStorages[i].getStored() : fluidStorages[i].getStored(), itemStorages[i] != null ? itemStorages[i].getCapacity() : fluidStorages[i].getCapacity() ); @@ -134,17 +129,7 @@ public class TileDiskDrive extends TileNode { public static void initDiskState(Integer[] diskState) { for (int i = 0; i < diskState.length; ++i) { - diskState[i] = DISK_STATE_NONE; - } - } - - public static int getDiskState(int stored, int capacity) { - if (stored == capacity) { - return DISK_STATE_FULL; - } else if ((int) ((float) stored / (float) capacity * 100F) >= 85) { - return DISK_STATE_NEAR_CAPACITY; - } else { - return DISK_STATE_NORMAL; + diskState[i] = ConstantsDisk.DISK_STATE_NONE; } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/tile/grid/portable/TilePortableGrid.java b/src/main/java/com/raoulvdberge/refinedstorage/tile/grid/portable/TilePortableGrid.java index 7dd493c7e..29f10e45e 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/tile/grid/portable/TilePortableGrid.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/tile/grid/portable/TilePortableGrid.java @@ -33,6 +33,7 @@ import com.raoulvdberge.refinedstorage.inventory.ItemHandlerFilter; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerTile; import com.raoulvdberge.refinedstorage.item.ItemWirelessGrid; import com.raoulvdberge.refinedstorage.item.itemblock.ItemBlockPortableGrid; +import com.raoulvdberge.refinedstorage.render.constants.ConstantsDisk; import com.raoulvdberge.refinedstorage.tile.TileBase; import com.raoulvdberge.refinedstorage.tile.config.IRedstoneConfigurable; import com.raoulvdberge.refinedstorage.tile.config.RedstoneMode; @@ -188,7 +189,7 @@ public class TilePortableGrid extends TileBase implements IGrid, IPortableGrid, if (type == null) { IBlockState state = world.getBlockState(pos); if (state.getBlock() == RSBlocks.PORTABLE_GRID) { - this.type = (PortableGridType) state.getValue(BlockPortableGrid.TYPE); + this.type = (PortableGridType) state.getValue(BlockPortableGrid.TYPE); } } @@ -227,7 +228,7 @@ public class TilePortableGrid extends TileBase implements IGrid, IPortableGrid, private EnergyStorage recreateEnergyStorage(int energyStored) { return new EnergyStorage(RS.INSTANCE.config.portableGridCapacity, RS.INSTANCE.config.portableGridCapacity, 0, energyStored); } - + public ItemStack getAsItem() { ItemStack stack = new ItemStack(RSBlocks.PORTABLE_GRID, 1, getPortableType() == PortableGridType.NORMAL ? ItemBlockPortableGrid.TYPE_NORMAL : ItemBlockPortableGrid.TYPE_CREATIVE); @@ -661,7 +662,7 @@ public class TilePortableGrid extends TileBase implements IGrid, IPortableGrid, if (renderInfo.getStored() == renderInfo.getCapacity()) { return PortableGridDiskState.FULL; - } else if ((int) ((float) renderInfo.getStored() / (float) renderInfo.getCapacity() * 100F) >= 85) { + } else if ((int) ((float) renderInfo.getStored() / (float) renderInfo.getCapacity() * 100F) >= ConstantsDisk.DISK_NEAR_CAPACITY_TRESHOLD) { return PortableGridDiskState.NEAR_CAPACITY; } else { return PortableGridDiskState.NORMAL;