Reader/Writer changes
- Fixed Writers not pushing energy - Item Reader/Writers can now store 16 stacks - Fluid Reader/Writers can now store 16 buckets - Energy Reader/Writers can now store 16000 FE
This commit is contained in:
		@@ -1,5 +1,11 @@
 | 
				
			|||||||
# Refined Storage Changelog
 | 
					# Refined Storage Changelog
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 1.5.28
 | 
				
			||||||
 | 
					- Fixed Writers not pushing energy (raoulvdberge)
 | 
				
			||||||
 | 
					- Item Reader/Writers can now store 16 stacks (raoulvdberge)
 | 
				
			||||||
 | 
					- Fluid Reader/Writers can now store 16 buckets (raoulvdberge)
 | 
				
			||||||
 | 
					- Energy Reader/Writers can now store 16000 FE (raoulvdberge)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### 1.5.27
 | 
					### 1.5.27
 | 
				
			||||||
- Fixed non-oredict patterns not consuming resources (raoulvdberge)
 | 
					- Fixed non-oredict patterns not consuming resources (raoulvdberge)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -26,7 +26,7 @@ public class ReaderWriterHandlerFluids implements IReaderWriterHandler {
 | 
				
			|||||||
    private FluidTankReaderWriter tankReader, tankWriter;
 | 
					    private FluidTankReaderWriter tankReader, tankWriter;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public ReaderWriterHandlerFluids(@Nullable NBTTagCompound tag) {
 | 
					    public ReaderWriterHandlerFluids(@Nullable NBTTagCompound tag) {
 | 
				
			||||||
        this.tank = new FluidTank(4 * Fluid.BUCKET_VOLUME);
 | 
					        this.tank = new FluidTank(16 * Fluid.BUCKET_VOLUME);
 | 
				
			||||||
        this.tankReader = new FluidTankReaderWriter(tank, true, false);
 | 
					        this.tankReader = new FluidTankReaderWriter(tank, true, false);
 | 
				
			||||||
        this.tankWriter = new FluidTankReaderWriter(tank, false, true);
 | 
					        this.tankWriter = new FluidTankReaderWriter(tank, false, true);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -27,7 +27,7 @@ public class ReaderWriterHandlerItems implements IReaderWriterHandler {
 | 
				
			|||||||
    private ItemHandlerReaderWriter itemsReader, itemsWriter;
 | 
					    private ItemHandlerReaderWriter itemsReader, itemsWriter;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public ReaderWriterHandlerItems(@Nullable NBTTagCompound tag) {
 | 
					    public ReaderWriterHandlerItems(@Nullable NBTTagCompound tag) {
 | 
				
			||||||
        this.items = new ItemStackHandler(4);
 | 
					        this.items = new ItemStackHandler(16);
 | 
				
			||||||
        this.itemsWriter = new ItemHandlerReaderWriter(items, false, true);
 | 
					        this.itemsWriter = new ItemHandlerReaderWriter(items, false, true);
 | 
				
			||||||
        this.itemsReader = new ItemHandlerReaderWriter(items, true, false);
 | 
					        this.itemsReader = new ItemHandlerReaderWriter(items, true, false);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -5,6 +5,7 @@ import com.raoulvdberge.refinedstorage.api.network.readerwriter.IReaderWriterCha
 | 
				
			|||||||
import com.raoulvdberge.refinedstorage.api.network.readerwriter.IReaderWriterHandler;
 | 
					import com.raoulvdberge.refinedstorage.api.network.readerwriter.IReaderWriterHandler;
 | 
				
			||||||
import com.raoulvdberge.refinedstorage.api.network.readerwriter.IWriter;
 | 
					import com.raoulvdberge.refinedstorage.api.network.readerwriter.IWriter;
 | 
				
			||||||
import net.minecraft.nbt.NBTTagCompound;
 | 
					import net.minecraft.nbt.NBTTagCompound;
 | 
				
			||||||
 | 
					import net.minecraft.tileentity.TileEntity;
 | 
				
			||||||
import net.minecraft.util.text.ITextComponent;
 | 
					import net.minecraft.util.text.ITextComponent;
 | 
				
			||||||
import net.minecraft.util.text.TextComponentString;
 | 
					import net.minecraft.util.text.TextComponentString;
 | 
				
			||||||
import net.minecraftforge.common.capabilities.Capability;
 | 
					import net.minecraftforge.common.capabilities.Capability;
 | 
				
			||||||
@@ -25,7 +26,7 @@ public class ReaderWriterHandlerForgeEnergy implements IReaderWriterHandler {
 | 
				
			|||||||
    private EnergyStorageReaderWriter storageReader, storageWriter;
 | 
					    private EnergyStorageReaderWriter storageReader, storageWriter;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public ReaderWriterHandlerForgeEnergy(@Nullable NBTTagCompound tag) {
 | 
					    public ReaderWriterHandlerForgeEnergy(@Nullable NBTTagCompound tag) {
 | 
				
			||||||
        this.storage = new EnergyStorage(4000);
 | 
					        this.storage = new EnergyStorage(16000);
 | 
				
			||||||
        this.storageReader = new EnergyStorageReaderWriter(storage, false, true);
 | 
					        this.storageReader = new EnergyStorageReaderWriter(storage, false, true);
 | 
				
			||||||
        this.storageWriter = new EnergyStorageReaderWriter(storage, true, false);
 | 
					        this.storageWriter = new EnergyStorageReaderWriter(storage, true, false);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -36,6 +37,22 @@ public class ReaderWriterHandlerForgeEnergy implements IReaderWriterHandler {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
    public void update(IReaderWriterChannel channel) {
 | 
					    public void update(IReaderWriterChannel channel) {
 | 
				
			||||||
 | 
					        if (channel.getWriters().isEmpty()) {
 | 
				
			||||||
 | 
					            return;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        int toSend = (int) Math.floor((float) storage.getEnergyStored() / (float) channel.getWriters().size());
 | 
				
			||||||
 | 
					        int toExtract = 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        for (IWriter writer : channel.getWriters()) {
 | 
				
			||||||
 | 
					            TileEntity tile = writer.getWorld().getTileEntity(writer.getPos().offset(writer.getDirection()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            if (tile != null && tile.hasCapability(CapabilityEnergy.ENERGY, writer.getDirection().getOpposite())) {
 | 
				
			||||||
 | 
					                toExtract += tile.getCapability(CapabilityEnergy.ENERGY, writer.getDirection().getOpposite()).receiveEnergy(storage.extractEnergy(toSend, false), false);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        storage.extractEnergy(toExtract, false);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user