Performance improvement
This commit is contained in:
@@ -12,7 +12,7 @@ buildscript {
|
|||||||
}
|
}
|
||||||
apply plugin: 'net.minecraftforge.gradle.forge'
|
apply plugin: 'net.minecraftforge.gradle.forge'
|
||||||
|
|
||||||
version = "0.6.4"
|
version = "0.6.5"
|
||||||
group = "refinedstorage"
|
group = "refinedstorage"
|
||||||
archivesBaseName = "refinedstorage"
|
archivesBaseName = "refinedstorage"
|
||||||
|
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ import refinedstorage.proxy.CommonProxy;
|
|||||||
@Mod(modid = RefinedStorage.ID, version = RefinedStorage.VERSION)
|
@Mod(modid = RefinedStorage.ID, version = RefinedStorage.VERSION)
|
||||||
public final class RefinedStorage {
|
public final class RefinedStorage {
|
||||||
public static final String ID = "refinedstorage";
|
public static final String ID = "refinedstorage";
|
||||||
public static final String VERSION = "0.6.4";
|
public static final String VERSION = "0.6.5";
|
||||||
|
|
||||||
public static final SimpleNetworkWrapper NETWORK = NetworkRegistry.INSTANCE.newSimpleChannel(ID);
|
public static final SimpleNetworkWrapper NETWORK = NetworkRegistry.INSTANCE.newSimpleChannel(ID);
|
||||||
|
|
||||||
|
|||||||
@@ -21,8 +21,8 @@ import refinedstorage.RefinedStorage;
|
|||||||
import refinedstorage.RefinedStorageBlocks;
|
import refinedstorage.RefinedStorageBlocks;
|
||||||
import refinedstorage.RefinedStorageGui;
|
import refinedstorage.RefinedStorageGui;
|
||||||
import refinedstorage.item.ItemBlockController;
|
import refinedstorage.item.ItemBlockController;
|
||||||
import refinedstorage.tile.TileController;
|
|
||||||
import refinedstorage.tile.TileMachine;
|
import refinedstorage.tile.TileMachine;
|
||||||
|
import refinedstorage.tile.controller.TileController;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import net.minecraft.client.renderer.GlStateManager;
|
|||||||
import net.minecraft.client.renderer.RenderHelper;
|
import net.minecraft.client.renderer.RenderHelper;
|
||||||
import refinedstorage.container.ContainerController;
|
import refinedstorage.container.ContainerController;
|
||||||
import refinedstorage.gui.sidebutton.SideButtonRedstoneMode;
|
import refinedstorage.gui.sidebutton.SideButtonRedstoneMode;
|
||||||
import refinedstorage.tile.TileController;
|
import refinedstorage.tile.controller.TileController;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import net.minecraft.client.gui.GuiTextField;
|
|||||||
import net.minecraftforge.fml.client.FMLClientHandler;
|
import net.minecraftforge.fml.client.FMLClientHandler;
|
||||||
import org.lwjgl.input.Keyboard;
|
import org.lwjgl.input.Keyboard;
|
||||||
import refinedstorage.container.ContainerDummy;
|
import refinedstorage.container.ContainerDummy;
|
||||||
import refinedstorage.tile.TileController;
|
import refinedstorage.tile.controller.TileController;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ import refinedstorage.tile.*;
|
|||||||
import refinedstorage.tile.autocrafting.TileCrafter;
|
import refinedstorage.tile.autocrafting.TileCrafter;
|
||||||
import refinedstorage.tile.autocrafting.TileCraftingMonitor;
|
import refinedstorage.tile.autocrafting.TileCraftingMonitor;
|
||||||
import refinedstorage.tile.autocrafting.TileProcessingPatternEncoder;
|
import refinedstorage.tile.autocrafting.TileProcessingPatternEncoder;
|
||||||
|
import refinedstorage.tile.controller.TileController;
|
||||||
import refinedstorage.tile.grid.TileGrid;
|
import refinedstorage.tile.grid.TileGrid;
|
||||||
import refinedstorage.tile.grid.WirelessGrid;
|
import refinedstorage.tile.grid.WirelessGrid;
|
||||||
import refinedstorage.tile.solderer.TileSolderer;
|
import refinedstorage.tile.solderer.TileSolderer;
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import net.minecraft.nbt.NBTTagCompound;
|
|||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import refinedstorage.RefinedStorageBlocks;
|
import refinedstorage.RefinedStorageBlocks;
|
||||||
import refinedstorage.block.EnumControllerType;
|
import refinedstorage.block.EnumControllerType;
|
||||||
import refinedstorage.tile.TileController;
|
import refinedstorage.tile.controller.TileController;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ import net.minecraft.util.text.translation.I18n;
|
|||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import refinedstorage.RefinedStorage;
|
import refinedstorage.RefinedStorage;
|
||||||
import refinedstorage.RefinedStorageBlocks;
|
import refinedstorage.RefinedStorageBlocks;
|
||||||
import refinedstorage.tile.TileController;
|
import refinedstorage.tile.controller.TileController;
|
||||||
import refinedstorage.tile.grid.TileGrid;
|
import refinedstorage.tile.grid.TileGrid;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler;
|
|||||||
import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
|
import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
|
||||||
import refinedstorage.RefinedStorageUtils;
|
import refinedstorage.RefinedStorageUtils;
|
||||||
import refinedstorage.proxy.ClientProxy;
|
import refinedstorage.proxy.ClientProxy;
|
||||||
import refinedstorage.tile.TileController;
|
import refinedstorage.tile.controller.TileController;
|
||||||
|
|
||||||
public class MessageControllerEnergyUpdate implements IMessage, IMessageHandler<MessageControllerEnergyUpdate, IMessage> {
|
public class MessageControllerEnergyUpdate implements IMessage, IMessageHandler<MessageControllerEnergyUpdate, IMessage> {
|
||||||
public static long LAST_RE_RENDER;
|
public static long LAST_RE_RENDER;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import net.minecraft.entity.player.EntityPlayerMP;
|
|||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
|
import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
|
||||||
import refinedstorage.tile.TileController;
|
import refinedstorage.tile.controller.TileController;
|
||||||
|
|
||||||
public class MessageWirelessGridCraftingStart extends MessageHandlerPlayerToServer<MessageWirelessGridCraftingStart> implements IMessage {
|
public class MessageWirelessGridCraftingStart extends MessageHandlerPlayerToServer<MessageWirelessGridCraftingStart> implements IMessage {
|
||||||
private int controllerX;
|
private int controllerX;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
|
|||||||
import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler;
|
import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler;
|
||||||
import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
|
import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
|
||||||
import refinedstorage.storage.ItemGroup;
|
import refinedstorage.storage.ItemGroup;
|
||||||
import refinedstorage.tile.TileController;
|
import refinedstorage.tile.controller.TileController;
|
||||||
import refinedstorage.tile.grid.WirelessGrid;
|
import refinedstorage.tile.grid.WirelessGrid;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import net.minecraft.entity.player.EntityPlayerMP;
|
|||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
|
import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
|
||||||
import refinedstorage.tile.TileController;
|
import refinedstorage.tile.controller.TileController;
|
||||||
|
|
||||||
public class MessageWirelessGridStoragePull extends MessageHandlerPlayerToServer<MessageWirelessGridStoragePull> implements IMessage {
|
public class MessageWirelessGridStoragePull extends MessageHandlerPlayerToServer<MessageWirelessGridStoragePull> implements IMessage {
|
||||||
private int controllerX;
|
private int controllerX;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import net.minecraft.entity.player.EntityPlayerMP;
|
|||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
|
import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
|
||||||
import refinedstorage.tile.TileController;
|
import refinedstorage.tile.controller.TileController;
|
||||||
|
|
||||||
public class MessageWirelessGridStoragePush extends MessageHandlerPlayerToServer<MessageWirelessGridStoragePush> implements IMessage {
|
public class MessageWirelessGridStoragePush extends MessageHandlerPlayerToServer<MessageWirelessGridStoragePush> implements IMessage {
|
||||||
private int controllerX;
|
private int controllerX;
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ import refinedstorage.tile.*;
|
|||||||
import refinedstorage.tile.autocrafting.TileCrafter;
|
import refinedstorage.tile.autocrafting.TileCrafter;
|
||||||
import refinedstorage.tile.autocrafting.TileCraftingMonitor;
|
import refinedstorage.tile.autocrafting.TileCraftingMonitor;
|
||||||
import refinedstorage.tile.autocrafting.TileProcessingPatternEncoder;
|
import refinedstorage.tile.autocrafting.TileProcessingPatternEncoder;
|
||||||
|
import refinedstorage.tile.controller.TileController;
|
||||||
import refinedstorage.tile.grid.TileGrid;
|
import refinedstorage.tile.grid.TileGrid;
|
||||||
import refinedstorage.tile.solderer.*;
|
import refinedstorage.tile.solderer.*;
|
||||||
|
|
||||||
|
|||||||
@@ -156,4 +156,27 @@ public class ItemGroup {
|
|||||||
public boolean compareNoQuantity(ItemStack stack) {
|
public boolean compareNoQuantity(ItemStack stack) {
|
||||||
return compare(stack, RefinedStorageUtils.COMPARE_NBT | RefinedStorageUtils.COMPARE_DAMAGE);
|
return compare(stack, RefinedStorageUtils.COMPARE_NBT | RefinedStorageUtils.COMPARE_DAMAGE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) return true;
|
||||||
|
if (o == null || getClass() != o.getClass()) return false;
|
||||||
|
|
||||||
|
ItemGroup itemGroup = (ItemGroup) o;
|
||||||
|
|
||||||
|
if (quantity != itemGroup.quantity) return false;
|
||||||
|
if (damage != itemGroup.damage) return false;
|
||||||
|
if (!type.equals(itemGroup.type)) return false;
|
||||||
|
return tag != null ? tag.equals(itemGroup.tag) : itemGroup.tag == null;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
int result = type.hashCode();
|
||||||
|
result = 31 * result + quantity;
|
||||||
|
result = 31 * result + damage;
|
||||||
|
result = 31 * result + (tag != null ? tag.hashCode() : 0);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import net.minecraft.tileentity.TileEntity;
|
|||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
import refinedstorage.tile.controller.TileController;
|
||||||
|
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import net.minecraft.item.ItemStack;
|
|||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import refinedstorage.RefinedStorageUtils;
|
import refinedstorage.RefinedStorageUtils;
|
||||||
import refinedstorage.tile.autocrafting.CraftingPattern;
|
import refinedstorage.tile.autocrafting.CraftingPattern;
|
||||||
|
import refinedstorage.tile.controller.TileController;
|
||||||
|
|
||||||
public class CraftingTaskScheduler {
|
public class CraftingTaskScheduler {
|
||||||
public static String NBT_SCHEDULED = "CraftingTaskScheduled";
|
public static String NBT_SCHEDULED = "CraftingTaskScheduled";
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ import refinedstorage.RefinedStorageUtils;
|
|||||||
import refinedstorage.network.MessageMachineConnectedUpdate;
|
import refinedstorage.network.MessageMachineConnectedUpdate;
|
||||||
import refinedstorage.tile.config.IRedstoneModeConfig;
|
import refinedstorage.tile.config.IRedstoneModeConfig;
|
||||||
import refinedstorage.tile.config.RedstoneMode;
|
import refinedstorage.tile.config.RedstoneMode;
|
||||||
|
import refinedstorage.tile.controller.TileController;
|
||||||
|
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|||||||
@@ -6,8 +6,8 @@ import net.minecraft.nbt.NBTTagList;
|
|||||||
import net.minecraft.util.text.TextFormatting;
|
import net.minecraft.util.text.TextFormatting;
|
||||||
import net.minecraftforge.common.util.Constants;
|
import net.minecraftforge.common.util.Constants;
|
||||||
import refinedstorage.RefinedStorageUtils;
|
import refinedstorage.RefinedStorageUtils;
|
||||||
import refinedstorage.tile.TileController;
|
|
||||||
import refinedstorage.tile.autocrafting.CraftingPattern;
|
import refinedstorage.tile.autocrafting.CraftingPattern;
|
||||||
|
import refinedstorage.tile.controller.TileController;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package refinedstorage.tile.autocrafting.task;
|
package refinedstorage.tile.autocrafting.task;
|
||||||
|
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import refinedstorage.tile.TileController;
|
|
||||||
import refinedstorage.tile.autocrafting.CraftingPattern;
|
import refinedstorage.tile.autocrafting.CraftingPattern;
|
||||||
|
import refinedstorage.tile.controller.TileController;
|
||||||
|
|
||||||
public interface ICraftingTask {
|
public interface ICraftingTask {
|
||||||
CraftingPattern getPattern();
|
CraftingPattern getPattern();
|
||||||
|
|||||||
@@ -7,9 +7,9 @@ import net.minecraft.tileentity.TileEntity;
|
|||||||
import net.minecraft.tileentity.TileEntityHopper;
|
import net.minecraft.tileentity.TileEntityHopper;
|
||||||
import net.minecraft.util.text.TextFormatting;
|
import net.minecraft.util.text.TextFormatting;
|
||||||
import refinedstorage.RefinedStorageUtils;
|
import refinedstorage.RefinedStorageUtils;
|
||||||
import refinedstorage.tile.TileController;
|
|
||||||
import refinedstorage.tile.autocrafting.CraftingPattern;
|
import refinedstorage.tile.autocrafting.CraftingPattern;
|
||||||
import refinedstorage.tile.autocrafting.TileCrafter;
|
import refinedstorage.tile.autocrafting.TileCrafter;
|
||||||
|
import refinedstorage.tile.controller.TileController;
|
||||||
|
|
||||||
public class ProcessingCraftingTask implements ICraftingTask {
|
public class ProcessingCraftingTask implements ICraftingTask {
|
||||||
public static final int ID = 1;
|
public static final int ID = 1;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package refinedstorage.tile;
|
package refinedstorage.tile.controller;
|
||||||
|
|
||||||
import cofh.api.energy.EnergyStorage;
|
import cofh.api.energy.EnergyStorage;
|
||||||
import cofh.api.energy.IEnergyReceiver;
|
import cofh.api.energy.IEnergyReceiver;
|
||||||
@@ -27,6 +27,10 @@ import refinedstorage.network.MessageWirelessGridItems;
|
|||||||
import refinedstorage.storage.IStorage;
|
import refinedstorage.storage.IStorage;
|
||||||
import refinedstorage.storage.IStorageProvider;
|
import refinedstorage.storage.IStorageProvider;
|
||||||
import refinedstorage.storage.ItemGroup;
|
import refinedstorage.storage.ItemGroup;
|
||||||
|
import refinedstorage.tile.ISynchronizedContainer;
|
||||||
|
import refinedstorage.tile.TileBase;
|
||||||
|
import refinedstorage.tile.TileMachine;
|
||||||
|
import refinedstorage.tile.TileWirelessTransmitter;
|
||||||
import refinedstorage.tile.autocrafting.CraftingPattern;
|
import refinedstorage.tile.autocrafting.CraftingPattern;
|
||||||
import refinedstorage.tile.autocrafting.TileCrafter;
|
import refinedstorage.tile.autocrafting.TileCrafter;
|
||||||
import refinedstorage.tile.autocrafting.task.BasicCraftingTask;
|
import refinedstorage.tile.autocrafting.task.BasicCraftingTask;
|
||||||
@@ -73,6 +77,8 @@ public class TileController extends TileBase implements IEnergyReceiver, ISynchr
|
|||||||
private List<WirelessGridConsumer> wirelessGridConsumers = new ArrayList<WirelessGridConsumer>();
|
private List<WirelessGridConsumer> wirelessGridConsumers = new ArrayList<WirelessGridConsumer>();
|
||||||
private List<WirelessGridConsumer> wirelessGridConsumersToRemove = new ArrayList<WirelessGridConsumer>();
|
private List<WirelessGridConsumer> wirelessGridConsumersToRemove = new ArrayList<WirelessGridConsumer>();
|
||||||
|
|
||||||
|
private List<ItemGroup> combinedGroups = new ArrayList<ItemGroup>();
|
||||||
|
|
||||||
private RedstoneMode redstoneMode = RedstoneMode.IGNORE;
|
private RedstoneMode redstoneMode = RedstoneMode.IGNORE;
|
||||||
|
|
||||||
private List<TileMachine> machines = new ArrayList<TileMachine>();
|
private List<TileMachine> machines = new ArrayList<TileMachine>();
|
||||||
@@ -322,46 +328,36 @@ public class TileController extends TileBase implements IEnergyReceiver, ISynchr
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
combineItems();
|
combinedGroups.clear();
|
||||||
}
|
|
||||||
|
|
||||||
private void combineItems() {
|
|
||||||
List<Integer> markedIndexes = new ArrayList<Integer>();
|
|
||||||
|
|
||||||
for (int i = 0; i < itemGroups.size(); ++i) {
|
for (int i = 0; i < itemGroups.size(); ++i) {
|
||||||
if (markedIndexes.contains(i)) {
|
ItemGroup group = itemGroups.get(i);
|
||||||
|
|
||||||
|
if (combinedGroups.contains(group)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
ItemGroup group = itemGroups.get(i);
|
|
||||||
|
|
||||||
// If the item doesn't exist anymore, remove it from storage to avoid crashes
|
// If the item doesn't exist anymore, remove it from storage to avoid crashes
|
||||||
if (group.getType() == null) {
|
if (group.getType() == null) {
|
||||||
markedIndexes.add(i);
|
combinedGroups.add(group);
|
||||||
} else {
|
} else {
|
||||||
for (int j = i + 1; j < itemGroups.size(); ++j) {
|
for (int j = i + 1; j < itemGroups.size(); ++j) {
|
||||||
if (markedIndexes.contains(j)) {
|
ItemGroup otherGroup = itemGroups.get(j);
|
||||||
|
|
||||||
|
if (combinedGroups.contains(otherGroup)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
ItemGroup otherGroup = itemGroups.get(j);
|
|
||||||
|
|
||||||
if (group.compareNoQuantity(otherGroup)) {
|
if (group.compareNoQuantity(otherGroup)) {
|
||||||
group.setQuantity(group.getQuantity() + otherGroup.getQuantity());
|
group.setQuantity(group.getQuantity() + otherGroup.getQuantity());
|
||||||
|
|
||||||
markedIndexes.add(j);
|
combinedGroups.add(otherGroup);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
List<ItemGroup> markedItems = new ArrayList<ItemGroup>();
|
itemGroups.removeAll(combinedGroups);
|
||||||
|
|
||||||
for (int i : markedIndexes) {
|
|
||||||
markedItems.add(itemGroups.get(i));
|
|
||||||
}
|
|
||||||
|
|
||||||
itemGroups.removeAll(markedItems);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean push(ItemStack stack) {
|
public boolean push(ItemStack stack) {
|
||||||
@@ -14,8 +14,8 @@ import refinedstorage.network.MessageWirelessGridSettingsUpdate;
|
|||||||
import refinedstorage.network.MessageWirelessGridStoragePull;
|
import refinedstorage.network.MessageWirelessGridStoragePull;
|
||||||
import refinedstorage.network.MessageWirelessGridStoragePush;
|
import refinedstorage.network.MessageWirelessGridStoragePush;
|
||||||
import refinedstorage.storage.ItemGroup;
|
import refinedstorage.storage.ItemGroup;
|
||||||
import refinedstorage.tile.TileController;
|
|
||||||
import refinedstorage.tile.config.IRedstoneModeConfig;
|
import refinedstorage.tile.config.IRedstoneModeConfig;
|
||||||
|
import refinedstorage.tile.controller.TileController;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
"modid": "refinedstorage",
|
"modid": "refinedstorage",
|
||||||
"name": "Refined Storage",
|
"name": "Refined Storage",
|
||||||
"description": "A Minecraft mod all about storage.",
|
"description": "A Minecraft mod all about storage.",
|
||||||
"version": "0.6.4",
|
"version": "0.6.5",
|
||||||
"mcversion": "1.9",
|
"mcversion": "1.9",
|
||||||
"url": "",
|
"url": "",
|
||||||
"updateUrl": "",
|
"updateUrl": "",
|
||||||
|
|||||||
Reference in New Issue
Block a user