diff --git a/CHANGELOG.md b/CHANGELOG.md index c5dec43f8..a67b102b6 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,13 +1,39 @@ # Refined Storage Changelog +### 0.8.8 +**Bugfixes** +- Use ore dictionary for recipes with glass + +### 0.8.7 +**Bugfixes** +- Improved detector model, add a better hitbox for it +- Improved the Wireless Transmitter texture +- Wireless Transmitter is now only bright red when connected +- Fixed crash with External Storage +- Fixed Detector not unpowering when disconnected from the network +- Made the Solderer beams be bright red when they are working +- Added better hitbox for the Solderer + ### 0.8.6 **Bugfixes** - Fixed External Storage disconnecting on world reload +- Fixed External Storage not updating correctly - Fixed wireless signal starting from Controller instead of per Wireless Transmitter individually -- Huge performance improvements to large networks +- Fixed Controller's redstone state not saving +- Fixed crafting tasks not saving properly +- Huge performance improvements to large storage networks **Features** - Re-added Controllers exploding when two of them are connected to the same network +- Limited some blocks to only have a direction on the x-axis +- Decreased amount of block updates significantly +- Added new textures +- Added model for External Storage +- Added model for Importer +- Added model for Exporter +- Added model for Detector +- Removed opposite facing on placement mechanic +- Removed Quartz Enriched Iron Block ### 0.8.5 **Bugfixes** diff --git a/build.gradle b/build.gradle index 6498a64bb..ad07360a3 100755 --- a/build.gradle +++ b/build.gradle @@ -12,7 +12,7 @@ buildscript { } apply plugin: 'net.minecraftforge.gradle.forge' -version = "0.8.6" +version = "0.8.8" group = "refinedstorage" archivesBaseName = "refinedstorage" diff --git a/logo.png b/logo.png index 0b3372b62..b69fe6a08 100755 Binary files a/logo.png and b/logo.png differ diff --git a/screenshots/overview.png b/screenshots/overview.png index 1be1c7dce..81cc36423 100755 Binary files a/screenshots/overview.png and b/screenshots/overview.png differ diff --git a/screenshots/solderer_automation.png b/screenshots/solderer_automation.png index bdb3297e1..953f274a7 100755 Binary files a/screenshots/solderer_automation.png and b/screenshots/solderer_automation.png differ diff --git a/src/main/java/refinedstorage/RefinedStorage.java b/src/main/java/refinedstorage/RefinedStorage.java index 7b922c477..1acc2d812 100755 --- a/src/main/java/refinedstorage/RefinedStorage.java +++ b/src/main/java/refinedstorage/RefinedStorage.java @@ -23,7 +23,7 @@ import java.util.List; @Mod(modid = RefinedStorage.ID, version = RefinedStorage.VERSION) public final class RefinedStorage { public static final String ID = "refinedstorage"; - public static final String VERSION = "0.8.6"; + public static final String VERSION = "0.8.8"; @SidedProxy(clientSide = "refinedstorage.proxy.ClientProxy", serverSide = "refinedstorage.proxy.ServerProxy") public static CommonProxy PROXY; diff --git a/src/main/java/refinedstorage/RefinedStorageBlocks.java b/src/main/java/refinedstorage/RefinedStorageBlocks.java index 86694fc9e..d9f376622 100755 --- a/src/main/java/refinedstorage/RefinedStorageBlocks.java +++ b/src/main/java/refinedstorage/RefinedStorageBlocks.java @@ -22,5 +22,4 @@ public final class RefinedStorageBlocks { public static final BlockWirelessTransmitter WIRELESS_TRANSMITTER = new BlockWirelessTransmitter(); public static final BlockCrafter CRAFTER = new BlockCrafter(); public static final BlockProcessingPatternEncoder PROCESSING_PATTERN_ENCODER = new BlockProcessingPatternEncoder(); - public static final BlockQuartzEnrichedIron QUARTZ_ENRICHED_IRON = new BlockQuartzEnrichedIron(); } diff --git a/src/main/java/refinedstorage/RefinedStorageUtils.java b/src/main/java/refinedstorage/RefinedStorageUtils.java index 55c0cce08..9e80a0172 100755 --- a/src/main/java/refinedstorage/RefinedStorageUtils.java +++ b/src/main/java/refinedstorage/RefinedStorageUtils.java @@ -327,4 +327,16 @@ public final class RefinedStorageUtils { public static boolean hasPattern(INetworkMaster network, ItemStack stack) { return RefinedStorageUtils.getPattern(network, stack) != null; } + + public static int getItemStackHashCode(ItemStack stack) { + return getItemStackHashCode(stack, stack == null ? 0 : stack.stackSize); + } + + public static int getItemStackHashCode(ItemStack stack, int stackSize) { + if (stack == null) { + return 0; + } + + return stack.getItem().hashCode() + Math.max(1, stackSize) * (stack.hasTagCompound() ? stack.getTagCompound().hashCode() : 1); + } } diff --git a/src/main/java/refinedstorage/api/autocrafting/ICraftingPattern.java b/src/main/java/refinedstorage/api/autocrafting/ICraftingPattern.java index a8f95b126..c5effc37b 100755 --- a/src/main/java/refinedstorage/api/autocrafting/ICraftingPattern.java +++ b/src/main/java/refinedstorage/api/autocrafting/ICraftingPattern.java @@ -2,6 +2,7 @@ package refinedstorage.api.autocrafting; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; /** @@ -14,6 +15,11 @@ public interface ICraftingPattern { */ ICraftingPatternContainer getContainer(World world); + /** + * @return The position of the container where the pattern is in + */ + BlockPos getContainerPosition(); + /** * @return If this pattern is a processing pattern */ diff --git a/src/main/java/refinedstorage/api/network/INetworkNode.java b/src/main/java/refinedstorage/api/network/INetworkNode.java index bc4cfd2fc..854426326 100755 --- a/src/main/java/refinedstorage/api/network/INetworkNode.java +++ b/src/main/java/refinedstorage/api/network/INetworkNode.java @@ -11,11 +11,6 @@ public interface INetworkNode { */ void updateNode(); - /** - * @return If this node can send a connectivity update - */ - boolean canSendConnectivityUpdate(); - /** * @return The energy usage of this node */ @@ -36,8 +31,9 @@ public interface INetworkNode { /** * Called when this node is disconnected from a network. * + * @param network The network */ - void onDisconnected(); + void onDisconnected(INetworkMaster network); /** * Called when the connection state of this node changes. diff --git a/src/main/java/refinedstorage/apiimpl/autocrafting/CraftingPattern.java b/src/main/java/refinedstorage/apiimpl/autocrafting/CraftingPattern.java index 6fec3dedb..32e2042ba 100755 --- a/src/main/java/refinedstorage/apiimpl/autocrafting/CraftingPattern.java +++ b/src/main/java/refinedstorage/apiimpl/autocrafting/CraftingPattern.java @@ -17,19 +17,15 @@ public class CraftingPattern implements ICraftingPattern { private static final String NBT_CRAFTER_Y = "CrafterY"; private static final String NBT_CRAFTER_Z = "CrafterZ"; - private int crafterX; - private int crafterY; - private int crafterZ; + private BlockPos crafterPos; private TileCrafter crafter; private boolean processing; private ItemStack[] inputs; private ItemStack[] outputs; private ItemStack[] byproducts; - public CraftingPattern(int crafterX, int crafterY, int crafterZ, boolean processing, ItemStack[] inputs, ItemStack[] outputs, ItemStack[] byproducts) { - this.crafterX = crafterX; - this.crafterY = crafterY; - this.crafterZ = crafterZ; + public CraftingPattern(BlockPos crafterPos, boolean processing, ItemStack[] inputs, ItemStack[] outputs, ItemStack[] byproducts) { + this.crafterPos = crafterPos; this.processing = processing; this.inputs = inputs; this.outputs = outputs; @@ -39,12 +35,17 @@ public class CraftingPattern implements ICraftingPattern { @Override public ICraftingPatternContainer getContainer(World world) { if (crafter == null) { - crafter = (TileCrafter) world.getTileEntity(new BlockPos(crafterX, crafterY, crafterZ)); + crafter = (TileCrafter) world.getTileEntity(crafterPos); } return crafter; } + @Override + public BlockPos getContainerPosition() { + return crafterPos; + } + @Override public boolean isProcessing() { return processing; @@ -88,17 +89,15 @@ public class CraftingPattern implements ICraftingPattern { tag.setTag(ItemPattern.NBT_BYPRODUCTS, byproductsTag); } - tag.setInteger(NBT_CRAFTER_X, crafter.getPos().getX()); - tag.setInteger(NBT_CRAFTER_Y, crafter.getPos().getY()); - tag.setInteger(NBT_CRAFTER_Z, crafter.getPos().getZ()); + tag.setInteger(NBT_CRAFTER_X, crafterPos.getX()); + tag.setInteger(NBT_CRAFTER_Y, crafterPos.getY()); + tag.setInteger(NBT_CRAFTER_Z, crafterPos.getZ()); return tag; } public static CraftingPattern readFromNBT(NBTTagCompound tag) { - int cx = tag.getInteger(NBT_CRAFTER_X); - int cy = tag.getInteger(NBT_CRAFTER_Y); - int cz = tag.getInteger(NBT_CRAFTER_Z); + BlockPos crafterPos = new BlockPos(tag.getInteger(NBT_CRAFTER_X), tag.getInteger(NBT_CRAFTER_Y), tag.getInteger(NBT_CRAFTER_Z)); boolean processing = tag.getBoolean(ItemPattern.NBT_PROCESSING); @@ -139,6 +138,6 @@ public class CraftingPattern implements ICraftingPattern { } } - return new CraftingPattern(cx, cy, cz, processing, inputs, outputs, byproducts); + return new CraftingPattern(crafterPos, processing, inputs, outputs, byproducts); } } diff --git a/src/main/java/refinedstorage/block/BlockBase.java b/src/main/java/refinedstorage/block/BlockBase.java index fe4b08c76..33599093b 100755 --- a/src/main/java/refinedstorage/block/BlockBase.java +++ b/src/main/java/refinedstorage/block/BlockBase.java @@ -1,9 +1,7 @@ package refinedstorage.block; import net.minecraft.block.Block; -import net.minecraft.block.BlockPistonBase; import net.minecraft.block.material.Material; -import net.minecraft.block.properties.IProperty; import net.minecraft.block.properties.PropertyDirection; import net.minecraft.block.state.BlockStateContainer; import net.minecraft.block.state.IBlockState; @@ -43,11 +41,23 @@ public abstract class BlockBase extends Block { return "block." + RefinedStorage.ID + ":" + name; } + protected BlockStateContainer.Builder createBlockStateBuilder() { + BlockStateContainer.Builder builder = new BlockStateContainer.Builder(this); + + if (getPlacementType() != null) { + builder.add(DIRECTION); + } + + return builder; + } + @Override protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[]{ - DIRECTION, - }); + return createBlockStateBuilder().build(); + } + + public Item createItem() { + return new ItemBlockBase(this, false); } @Override @@ -62,10 +72,8 @@ public abstract class BlockBase extends Block { @Override public IBlockState getActualState(IBlockState state, IBlockAccess world, BlockPos pos) { - TileEntity tile = world.getTileEntity(pos); - - if (tile instanceof TileBase) { - return state.withProperty(DIRECTION, ((TileBase) tile).getDirection()); + if (getPlacementType() != null) { + return state.withProperty(DIRECTION, ((TileBase) world.getTileEntity(pos)).getDirection()); } return state; @@ -78,18 +86,10 @@ public abstract class BlockBase extends Block { @Override public boolean rotateBlock(World world, BlockPos pos, EnumFacing axis) { - TileEntity tile = world.getTileEntity(pos); + if (!world.isRemote && getPlacementType() != null) { + TileBase tile = (TileBase) world.getTileEntity(pos); - if (!world.isRemote && tile instanceof TileBase) { - EnumFacing dir = ((TileBase) tile).getDirection(); - - int newDir = dir.ordinal() + 1; - - if (newDir > EnumFacing.VALUES.length - 1) { - newDir = 0; - } - - ((TileBase) tile).setDirection(EnumFacing.getFront(newDir)); + tile.setDirection(getPlacementType().getNext(tile.getDirection())); RefinedStorageUtils.updateBlock(world, pos); @@ -100,19 +100,11 @@ public abstract class BlockBase extends Block { } @Override - public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack itemStack) { - super.onBlockPlacedBy(world, pos, state, player, itemStack); + public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack) { + super.onBlockPlacedBy(world, pos, state, player, stack); - TileEntity tile = world.getTileEntity(pos); - - if (tile instanceof TileBase) { - EnumFacing facing = BlockPistonBase.getFacingFromEntity(pos, player); - - if (player.isSneaking() && hasOppositeFacingOnSneakPlace()) { - facing = facing.getOpposite(); - } - - ((TileBase) tile).setDirection(facing); + if (getPlacementType() != null) { + ((TileBase) world.getTileEntity(pos)).setDirection(getPlacementType().getFrom(pos, player)); } } @@ -135,11 +127,7 @@ public abstract class BlockBase extends Block { @Override public boolean removedByPlayer(IBlockState state, World world, BlockPos pos, EntityPlayer player, boolean willHarvest) { - if (willHarvest) { - return true; - } - - return super.removedByPlayer(state, world, pos, player, willHarvest); + return willHarvest ? true : super.removedByPlayer(state, world, pos, player, willHarvest); } @Override @@ -149,11 +137,7 @@ public abstract class BlockBase extends Block { world.setBlockToAir(pos); } - public Item createItemForBlock() { - return new ItemBlockBase(this, false); - } - - public boolean hasOppositeFacingOnSneakPlace() { - return false; + public EnumPlacementType getPlacementType() { + return EnumPlacementType.HORIZONTAL; } } diff --git a/src/main/java/refinedstorage/block/BlockCable.java b/src/main/java/refinedstorage/block/BlockCable.java index 143159e6f..e301b8b24 100755 --- a/src/main/java/refinedstorage/block/BlockCable.java +++ b/src/main/java/refinedstorage/block/BlockCable.java @@ -1,6 +1,5 @@ package refinedstorage.block; -import net.minecraft.block.properties.IProperty; import net.minecraft.block.properties.PropertyBool; import net.minecraft.block.state.BlockStateContainer; import net.minecraft.block.state.IBlockState; @@ -9,12 +8,13 @@ import net.minecraft.util.math.AxisAlignedBB; import net.minecraft.util.math.BlockPos; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; -import refinedstorage.RefinedStorageBlocks; +import refinedstorage.api.network.INetworkMaster; import refinedstorage.api.network.INetworkNode; +import refinedstorage.tile.TileBase; import refinedstorage.tile.TileCable; public class BlockCable extends BlockNode { - public static final AxisAlignedBB CABLE_AABB = new AxisAlignedBB(4 * (1F / 16F), 4 * (1F / 16F), 4 * (1F / 16F), 1 - 4 * (1F / 16F), 1 - 4 * (1F / 16F), 1 - 4 * (1F / 16F)); + private static final AxisAlignedBB CABLE_AABB = new AxisAlignedBB(4 * (1F / 16F), 4 * (1F / 16F), 4 * (1F / 16F), 1 - 4 * (1F / 16F), 1 - 4 * (1F / 16F), 1 - 4 * (1F / 16F)); public static final PropertyBool NORTH = PropertyBool.create("north"); public static final PropertyBool EAST = PropertyBool.create("east"); @@ -23,41 +23,56 @@ public class BlockCable extends BlockNode { public static final PropertyBool UP = PropertyBool.create("up"); public static final PropertyBool DOWN = PropertyBool.create("down"); - public BlockCable() { - super("cable"); + public BlockCable(String name) { + super(name); setHardness(0.6F); } + public BlockCable() { + this("cable"); + } + @Override public TileEntity createTileEntity(World world, IBlockState state) { return new TileCable(); } @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[]{ - NORTH, - EAST, - SOUTH, - WEST, - UP, - DOWN, - }); + protected BlockStateContainer.Builder createBlockStateBuilder() { + return super.createBlockStateBuilder() + .add(NORTH) + .add(EAST) + .add(SOUTH) + .add(WEST) + .add(UP) + .add(DOWN); } @Override public IBlockState getActualState(IBlockState state, IBlockAccess world, BlockPos pos) { - return state.withProperty(NORTH, hasConnectionWith(world, pos.north())) - .withProperty(EAST, hasConnectionWith(world, pos.east())) - .withProperty(SOUTH, hasConnectionWith(world, pos.south())) - .withProperty(WEST, hasConnectionWith(world, pos.west())) - .withProperty(UP, hasConnectionWith(world, pos.up())) - .withProperty(DOWN, hasConnectionWith(world, pos.down())); + return super.getActualState(state, world, pos) + .withProperty(NORTH, hasConnectionWith(world, pos, pos.north())) + .withProperty(EAST, hasConnectionWith(world, pos, pos.east())) + .withProperty(SOUTH, hasConnectionWith(world, pos, pos.south())) + .withProperty(WEST, hasConnectionWith(world, pos, pos.west())) + .withProperty(UP, hasConnectionWith(world, pos, pos.up())) + .withProperty(DOWN, hasConnectionWith(world, pos, pos.down())); } - public static boolean hasConnectionWith(IBlockAccess world, BlockPos pos) { - return world.getBlockState(pos).getBlock() == RefinedStorageBlocks.CONTROLLER || world.getTileEntity(pos) instanceof INetworkNode; + private boolean hasConnectionWith(IBlockAccess world, BlockPos basePos, BlockPos pos) { + TileEntity tile = world.getTileEntity(pos); + + if (tile instanceof INetworkMaster || tile instanceof INetworkNode) { + // Do not render a cable extension to on this position when we have a direction (like an exporter, importer or external storage) + if (getPlacementType() != null) { + return ((TileBase) world.getTileEntity(basePos)).getFacingTile() != tile; + } + + return true; + } + + return false; } @Override @@ -74,4 +89,9 @@ public class BlockCable extends BlockNode { public boolean isFullCube(IBlockState state) { return false; } + + @Override + public EnumPlacementType getPlacementType() { + return null; + } } diff --git a/src/main/java/refinedstorage/block/BlockConstructor.java b/src/main/java/refinedstorage/block/BlockConstructor.java index a9537ac1e..d7d2ebd88 100755 --- a/src/main/java/refinedstorage/block/BlockConstructor.java +++ b/src/main/java/refinedstorage/block/BlockConstructor.java @@ -32,7 +32,7 @@ public class BlockConstructor extends BlockNode { } @Override - public boolean hasOppositeFacingOnSneakPlace() { - return true; + public EnumPlacementType getPlacementType() { + return EnumPlacementType.ANY; } } diff --git a/src/main/java/refinedstorage/block/BlockController.java b/src/main/java/refinedstorage/block/BlockController.java index eb313d7b9..8b0fad77c 100755 --- a/src/main/java/refinedstorage/block/BlockController.java +++ b/src/main/java/refinedstorage/block/BlockController.java @@ -1,7 +1,6 @@ package refinedstorage.block; import net.minecraft.block.Block; -import net.minecraft.block.properties.IProperty; import net.minecraft.block.properties.PropertyEnum; import net.minecraft.block.properties.PropertyInteger; import net.minecraft.block.state.BlockStateContainer; @@ -29,7 +28,7 @@ import java.util.List; public class BlockController extends BlockBase { public static final PropertyEnum TYPE = PropertyEnum.create("type", EnumControllerType.class); - public static final PropertyInteger ENERGY = PropertyInteger.create("energy", 0, 8); + public static final PropertyInteger ENERGY = PropertyInteger.create("energy", 0, 7); public BlockController() { super("controller"); @@ -44,11 +43,10 @@ public class BlockController extends BlockBase { @Override protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[]{ - DIRECTION, - TYPE, - ENERGY - }); + return createBlockStateBuilder() + .add(TYPE) + .add(ENERGY) + .build(); } @Override @@ -147,7 +145,7 @@ public class BlockController extends BlockBase { } @Override - public Item createItemForBlock() { + public Item createItem() { return new ItemBlockController(); } } diff --git a/src/main/java/refinedstorage/block/BlockCrafter.java b/src/main/java/refinedstorage/block/BlockCrafter.java index ddc4294e6..ad95c3552 100755 --- a/src/main/java/refinedstorage/block/BlockCrafter.java +++ b/src/main/java/refinedstorage/block/BlockCrafter.java @@ -32,7 +32,11 @@ public class BlockCrafter extends BlockNode { } @Override - public boolean hasOppositeFacingOnSneakPlace() { + public EnumPlacementType getPlacementType() { + return EnumPlacementType.ANY; + } + + public boolean hasConnectivityState() { return true; } } diff --git a/src/main/java/refinedstorage/block/BlockDestructor.java b/src/main/java/refinedstorage/block/BlockDestructor.java index 233429f72..6a2ef7fb2 100755 --- a/src/main/java/refinedstorage/block/BlockDestructor.java +++ b/src/main/java/refinedstorage/block/BlockDestructor.java @@ -32,7 +32,7 @@ public class BlockDestructor extends BlockNode { } @Override - public boolean hasOppositeFacingOnSneakPlace() { - return true; + public EnumPlacementType getPlacementType() { + return EnumPlacementType.ANY; } } diff --git a/src/main/java/refinedstorage/block/BlockDetector.java b/src/main/java/refinedstorage/block/BlockDetector.java index 0fe554536..c29c2f6e4 100755 --- a/src/main/java/refinedstorage/block/BlockDetector.java +++ b/src/main/java/refinedstorage/block/BlockDetector.java @@ -1,14 +1,15 @@ package refinedstorage.block; -import net.minecraft.block.properties.IProperty; import net.minecraft.block.properties.PropertyBool; import net.minecraft.block.state.BlockStateContainer; import net.minecraft.block.state.IBlockState; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.BlockRenderLayer; import net.minecraft.util.EnumFacing; import net.minecraft.util.EnumHand; +import net.minecraft.util.math.AxisAlignedBB; import net.minecraft.util.math.BlockPos; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; @@ -17,6 +18,8 @@ import refinedstorage.RefinedStorageGui; import refinedstorage.tile.TileDetector; public class BlockDetector extends BlockNode { + public static final AxisAlignedBB AABB_DETECTOR = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 4D / 16D, 1.0D); + public static final PropertyBool POWERED = PropertyBool.create("powered"); public BlockDetector() { @@ -25,11 +28,9 @@ public class BlockDetector extends BlockNode { @Override protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[]{ - DIRECTION, - CONNECTED, - POWERED - }); + return createBlockStateBuilder() + .add(POWERED) + .build(); } @Override @@ -38,6 +39,11 @@ public class BlockDetector extends BlockNode { .withProperty(POWERED, ((TileDetector) world.getTileEntity(pos)).isPowered()); } + @Override + public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) { + return AABB_DETECTOR; + } + @Override public TileEntity createTileEntity(World world, IBlockState state) { return new TileDetector(); @@ -45,13 +51,7 @@ public class BlockDetector extends BlockNode { @Override public int getWeakPower(IBlockState state, IBlockAccess world, BlockPos pos, EnumFacing side) { - TileDetector detector = (TileDetector) world.getTileEntity(pos); - - if (detector.getDirection() == side.getOpposite()) { - return detector.isPowered() ? 15 : 0; - } - - return 0; + return ((TileDetector) world.getTileEntity(pos)).isPowered() ? 15 : 0; } @Override @@ -72,4 +72,24 @@ public class BlockDetector extends BlockNode { return true; } + + @Override + public boolean isOpaqueCube(IBlockState state) { + return false; + } + + @Override + public boolean isFullCube(IBlockState state) { + return false; + } + + @Override + public BlockRenderLayer getBlockLayer() { + return BlockRenderLayer.CUTOUT; + } + + @Override + public EnumPlacementType getPlacementType() { + return null; + } } diff --git a/src/main/java/refinedstorage/block/BlockDiskDrive.java b/src/main/java/refinedstorage/block/BlockDiskDrive.java index f4c69bfbc..3399c96ea 100755 --- a/src/main/java/refinedstorage/block/BlockDiskDrive.java +++ b/src/main/java/refinedstorage/block/BlockDiskDrive.java @@ -1,5 +1,7 @@ package refinedstorage.block; +import net.minecraft.block.properties.PropertyInteger; +import net.minecraft.block.state.BlockStateContainer; import net.minecraft.block.state.IBlockState; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; @@ -7,12 +9,15 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.util.EnumFacing; import net.minecraft.util.EnumHand; import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; import refinedstorage.RefinedStorage; import refinedstorage.RefinedStorageGui; import refinedstorage.tile.TileDiskDrive; public class BlockDiskDrive extends BlockNode { + public static final PropertyInteger STORED = PropertyInteger.create("stored", 0, 7); + public BlockDiskDrive() { super("disk_drive"); } @@ -22,6 +27,19 @@ public class BlockDiskDrive extends BlockNode { return new TileDiskDrive(); } + @Override + public BlockStateContainer createBlockState() { + return createBlockStateBuilder() + .add(STORED) + .build(); + } + + @Override + public IBlockState getActualState(IBlockState state, IBlockAccess world, BlockPos pos) { + return super.getActualState(state, world, pos) + .withProperty(STORED, ((TileDiskDrive) world.getTileEntity(pos)).getStoredForScaledDisplay()); + } + @Override public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, ItemStack heldItem, EnumFacing side, float hitX, float hitY, float hitZ) { if (!world.isRemote) { diff --git a/src/main/java/refinedstorage/block/BlockExporter.java b/src/main/java/refinedstorage/block/BlockExporter.java index e2c5482be..3b54455db 100755 --- a/src/main/java/refinedstorage/block/BlockExporter.java +++ b/src/main/java/refinedstorage/block/BlockExporter.java @@ -12,7 +12,7 @@ import refinedstorage.RefinedStorage; import refinedstorage.RefinedStorageGui; import refinedstorage.tile.TileExporter; -public class BlockExporter extends BlockNode { +public class BlockExporter extends BlockCable { public BlockExporter() { super("exporter"); } @@ -32,7 +32,7 @@ public class BlockExporter extends BlockNode { } @Override - public boolean hasOppositeFacingOnSneakPlace() { - return true; + public EnumPlacementType getPlacementType() { + return EnumPlacementType.ANY; } } diff --git a/src/main/java/refinedstorage/block/BlockExternalStorage.java b/src/main/java/refinedstorage/block/BlockExternalStorage.java index e3820a535..54ad9a34e 100755 --- a/src/main/java/refinedstorage/block/BlockExternalStorage.java +++ b/src/main/java/refinedstorage/block/BlockExternalStorage.java @@ -13,7 +13,7 @@ import refinedstorage.RefinedStorage; import refinedstorage.RefinedStorageGui; import refinedstorage.tile.externalstorage.TileExternalStorage; -public class BlockExternalStorage extends BlockNode { +public class BlockExternalStorage extends BlockCable { public BlockExternalStorage() { super("external_storage"); } @@ -37,12 +37,16 @@ public class BlockExternalStorage extends BlockNode { super.neighborChanged(state, world, pos, block); if (!world.isRemote) { - ((TileExternalStorage) world.getTileEntity(pos)).updateStorage(); + TileExternalStorage externalStorage = (TileExternalStorage) world.getTileEntity(pos); + + if (externalStorage.getNetwork() != null) { + externalStorage.updateStorage(externalStorage.getNetwork()); + } } } @Override - public boolean hasOppositeFacingOnSneakPlace() { - return true; + public EnumPlacementType getPlacementType() { + return EnumPlacementType.ANY; } } diff --git a/src/main/java/refinedstorage/block/BlockGrid.java b/src/main/java/refinedstorage/block/BlockGrid.java index bf819a5c3..90d172b24 100755 --- a/src/main/java/refinedstorage/block/BlockGrid.java +++ b/src/main/java/refinedstorage/block/BlockGrid.java @@ -1,6 +1,5 @@ package refinedstorage.block; -import net.minecraft.block.properties.IProperty; import net.minecraft.block.properties.PropertyEnum; import net.minecraft.block.state.BlockStateContainer; import net.minecraft.block.state.IBlockState; @@ -41,11 +40,9 @@ public class BlockGrid extends BlockNode { @Override protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[]{ - DIRECTION, - CONNECTED, - TYPE - }); + return createBlockStateBuilder() + .add(TYPE) + .build(); } @Override @@ -70,7 +67,7 @@ public class BlockGrid extends BlockNode { } @Override - public Item createItemForBlock() { + public Item createItem() { return new ItemBlockBase(this, true); } } diff --git a/src/main/java/refinedstorage/block/BlockImporter.java b/src/main/java/refinedstorage/block/BlockImporter.java index ba5f714f8..cae887e19 100755 --- a/src/main/java/refinedstorage/block/BlockImporter.java +++ b/src/main/java/refinedstorage/block/BlockImporter.java @@ -12,7 +12,7 @@ import refinedstorage.RefinedStorage; import refinedstorage.RefinedStorageGui; import refinedstorage.tile.TileImporter; -public class BlockImporter extends BlockNode { +public class BlockImporter extends BlockCable { public BlockImporter() { super("importer"); } @@ -32,7 +32,7 @@ public class BlockImporter extends BlockNode { } @Override - public boolean hasOppositeFacingOnSneakPlace() { - return true; + public EnumPlacementType getPlacementType() { + return EnumPlacementType.ANY; } } diff --git a/src/main/java/refinedstorage/block/BlockInterface.java b/src/main/java/refinedstorage/block/BlockInterface.java index a8a6ce80b..77be4f4d5 100755 --- a/src/main/java/refinedstorage/block/BlockInterface.java +++ b/src/main/java/refinedstorage/block/BlockInterface.java @@ -30,4 +30,9 @@ public class BlockInterface extends BlockNode { return true; } + + @Override + public EnumPlacementType getPlacementType() { + return null; + } } diff --git a/src/main/java/refinedstorage/block/BlockMachineCasing.java b/src/main/java/refinedstorage/block/BlockMachineCasing.java index 26f626b40..ecce72c97 100755 --- a/src/main/java/refinedstorage/block/BlockMachineCasing.java +++ b/src/main/java/refinedstorage/block/BlockMachineCasing.java @@ -4,4 +4,9 @@ public class BlockMachineCasing extends BlockBase { public BlockMachineCasing() { super("machine_casing"); } + + @Override + public EnumPlacementType getPlacementType() { + return null; + } } diff --git a/src/main/java/refinedstorage/block/BlockNode.java b/src/main/java/refinedstorage/block/BlockNode.java index 1e90cf1e8..86e274f97 100755 --- a/src/main/java/refinedstorage/block/BlockNode.java +++ b/src/main/java/refinedstorage/block/BlockNode.java @@ -1,6 +1,5 @@ package refinedstorage.block; -import net.minecraft.block.properties.IProperty; import net.minecraft.block.properties.PropertyBool; import net.minecraft.block.state.BlockStateContainer; import net.minecraft.block.state.IBlockState; @@ -26,18 +25,33 @@ public abstract class BlockNode extends BlockBase { return true; } + public boolean hasConnectivityState() { + return false; + } + + @Override + protected BlockStateContainer.Builder createBlockStateBuilder() { + BlockStateContainer.Builder builder = super.createBlockStateBuilder(); + + if (hasConnectivityState()) { + builder.add(CONNECTED); + } + + return builder; + } + @Override protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[]{ - DIRECTION, - CONNECTED - }); + return createBlockStateBuilder().build(); } @Override public IBlockState getActualState(IBlockState state, IBlockAccess world, BlockPos pos) { - return super.getActualState(state, world, pos) - .withProperty(CONNECTED, ((TileNode) world.getTileEntity(pos)).isConnected()); + if (hasConnectivityState()) { + return super.getActualState(state, world, pos).withProperty(CONNECTED, ((TileNode) world.getTileEntity(pos)).isConnected()); + } + + return super.getActualState(state, world, pos); } @Override diff --git a/src/main/java/refinedstorage/block/BlockProcessingPatternEncoder.java b/src/main/java/refinedstorage/block/BlockProcessingPatternEncoder.java index 7ee8043ee..d9c0199e7 100755 --- a/src/main/java/refinedstorage/block/BlockProcessingPatternEncoder.java +++ b/src/main/java/refinedstorage/block/BlockProcessingPatternEncoder.java @@ -35,4 +35,9 @@ public class BlockProcessingPatternEncoder extends BlockBase { return true; } + + @Override + public EnumPlacementType getPlacementType() { + return null; + } } diff --git a/src/main/java/refinedstorage/block/BlockQuartzEnrichedIron.java b/src/main/java/refinedstorage/block/BlockQuartzEnrichedIron.java deleted file mode 100755 index 5db421ec7..000000000 --- a/src/main/java/refinedstorage/block/BlockQuartzEnrichedIron.java +++ /dev/null @@ -1,7 +0,0 @@ -package refinedstorage.block; - -public class BlockQuartzEnrichedIron extends BlockBase { - public BlockQuartzEnrichedIron() { - super("quartz_enriched_iron_block"); - } -} diff --git a/src/main/java/refinedstorage/block/BlockRelay.java b/src/main/java/refinedstorage/block/BlockRelay.java index 83a13e011..eaf456546 100755 --- a/src/main/java/refinedstorage/block/BlockRelay.java +++ b/src/main/java/refinedstorage/block/BlockRelay.java @@ -30,4 +30,13 @@ public class BlockRelay extends BlockNode { return true; } + + @Override + public EnumPlacementType getPlacementType() { + return null; + } + + public boolean hasConnectivityState() { + return true; + } } diff --git a/src/main/java/refinedstorage/block/BlockSolderer.java b/src/main/java/refinedstorage/block/BlockSolderer.java index baa677dbf..8533380f9 100755 --- a/src/main/java/refinedstorage/block/BlockSolderer.java +++ b/src/main/java/refinedstorage/block/BlockSolderer.java @@ -1,6 +1,5 @@ package refinedstorage.block; -import net.minecraft.block.properties.IProperty; import net.minecraft.block.properties.PropertyBool; import net.minecraft.block.state.BlockStateContainer; import net.minecraft.block.state.IBlockState; @@ -9,6 +8,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.EnumFacing; import net.minecraft.util.EnumHand; +import net.minecraft.util.math.AxisAlignedBB; import net.minecraft.util.math.BlockPos; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; @@ -17,6 +17,8 @@ import refinedstorage.RefinedStorageGui; import refinedstorage.tile.TileSolderer; public class BlockSolderer extends BlockNode { + public static final AxisAlignedBB AABB_SOLDERER = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 14D / 16D, 1.0D); + public static final PropertyBool WORKING = PropertyBool.create("working"); public BlockSolderer() { @@ -37,13 +39,16 @@ public class BlockSolderer extends BlockNode { return true; } + @Override + public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) { + return AABB_SOLDERER; + } + @Override protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[]{ - DIRECTION, - CONNECTED, - WORKING - }); + return super.createBlockStateBuilder() + .add(WORKING) + .build(); } @Override @@ -51,4 +56,19 @@ public class BlockSolderer extends BlockNode { return super.getActualState(state, world, pos) .withProperty(WORKING, ((TileSolderer) world.getTileEntity(pos)).isWorking()); } + + @Override + public boolean isOpaqueCube(IBlockState state) { + return false; + } + + @Override + public boolean isFullCube(IBlockState state) { + return false; + } + + @Override + public EnumPlacementType getPlacementType() { + return null; + } } diff --git a/src/main/java/refinedstorage/block/BlockStorage.java b/src/main/java/refinedstorage/block/BlockStorage.java index 4f8f8e5e9..02e4b7a5b 100755 --- a/src/main/java/refinedstorage/block/BlockStorage.java +++ b/src/main/java/refinedstorage/block/BlockStorage.java @@ -1,6 +1,5 @@ package refinedstorage.block; -import net.minecraft.block.properties.IProperty; import net.minecraft.block.properties.PropertyEnum; import net.minecraft.block.state.BlockStateContainer; import net.minecraft.block.state.IBlockState; @@ -30,6 +29,8 @@ public class BlockStorage extends BlockNode { public BlockStorage() { super("storage"); + + setHardness(5.8F); } @Override @@ -41,11 +42,9 @@ public class BlockStorage extends BlockNode { @Override protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[]{ - DIRECTION, - CONNECTED, - TYPE - }); + return createBlockStateBuilder() + .add(TYPE) + .build(); } @Override @@ -104,7 +103,12 @@ public class BlockStorage extends BlockNode { } @Override - public Item createItemForBlock() { + public Item createItem() { return new ItemBlockStorage(); } + + @Override + public EnumPlacementType getPlacementType() { + return null; + } } diff --git a/src/main/java/refinedstorage/block/BlockWirelessTransmitter.java b/src/main/java/refinedstorage/block/BlockWirelessTransmitter.java index 5441c095d..af2496aab 100755 --- a/src/main/java/refinedstorage/block/BlockWirelessTransmitter.java +++ b/src/main/java/refinedstorage/block/BlockWirelessTransmitter.java @@ -1,18 +1,26 @@ package refinedstorage.block; +import net.minecraft.block.Block; import net.minecraft.block.state.IBlockState; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.BlockRenderLayer; import net.minecraft.util.EnumFacing; import net.minecraft.util.EnumHand; +import net.minecraft.util.math.AxisAlignedBB; import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; import refinedstorage.RefinedStorage; import refinedstorage.RefinedStorageGui; +import refinedstorage.tile.TileNode; import refinedstorage.tile.TileWirelessTransmitter; public class BlockWirelessTransmitter extends BlockNode { + // From BlockTorch + private static final AxisAlignedBB WIRELESS_TRANSMITTER_AABB = new AxisAlignedBB(0.4000000059604645D, 0.0D, 0.4000000059604645D, 0.6000000238418579D, 0.6000000238418579D, 0.6000000238418579D); + public BlockWirelessTransmitter() { super("wireless_transmitter"); } @@ -30,4 +38,51 @@ public class BlockWirelessTransmitter extends BlockNode { return true; } + + @Override + public void neighborChanged(IBlockState state, World world, BlockPos pos, Block block) { + if (!canPlaceBlockAt(world, pos) && world.getBlockState(pos).getBlock() == this) { + dropBlockAsItem(world, pos, state, 0); + + world.setBlockToAir(pos); + } + } + + @Override + public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { + return WIRELESS_TRANSMITTER_AABB; + } + + @Override + public boolean isOpaqueCube(IBlockState state) { + return false; + } + + @Override + public boolean isFullCube(IBlockState state) { + return false; + } + + @Override + public boolean canPlaceBlockAt(World world, BlockPos pos) { + BlockPos downPos = pos.offset(EnumFacing.DOWN); + IBlockState down = world.getBlockState(downPos); + + return down.getBlock().canPlaceTorchOnTop(down, world, downPos) || (world.getTileEntity(downPos) instanceof TileNode && !(world.getTileEntity(downPos) instanceof TileWirelessTransmitter)); + } + + @Override + public BlockRenderLayer getBlockLayer() { + return BlockRenderLayer.CUTOUT; + } + + @Override + public boolean hasConnectivityState() { + return true; + } + + @Override + public EnumPlacementType getPlacementType() { + return null; + } } diff --git a/src/main/java/refinedstorage/block/EnumPlacementType.java b/src/main/java/refinedstorage/block/EnumPlacementType.java new file mode 100755 index 000000000..c90feb8e0 --- /dev/null +++ b/src/main/java/refinedstorage/block/EnumPlacementType.java @@ -0,0 +1,46 @@ +package refinedstorage.block; + +import net.minecraft.block.BlockPistonBase; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.util.EnumFacing; +import net.minecraft.util.math.BlockPos; + +public enum EnumPlacementType { + ANY( + EnumFacing.VALUES + ), + HORIZONTAL( + EnumFacing.NORTH, + EnumFacing.EAST, + EnumFacing.SOUTH, + EnumFacing.WEST + ); + + public final EnumFacing[] allowed; + + EnumPlacementType(EnumFacing... allowed) { + this.allowed = allowed; + } + + EnumFacing getFrom(BlockPos pos, EntityLivingBase entity) { + switch (this) { + case ANY: + return BlockPistonBase.getFacingFromEntity(pos, entity); + case HORIZONTAL: + return entity.getHorizontalFacing().getOpposite(); + default: + return null; + } + } + + EnumFacing getNext(EnumFacing previous) { + switch (this) { + case ANY: + return previous.ordinal() + 1 >= EnumFacing.VALUES.length ? EnumFacing.VALUES[0] : EnumFacing.VALUES[previous.ordinal() + 1]; + case HORIZONTAL: + return previous.rotateYCCW(); + default: + return previous; + } + } +} diff --git a/src/main/java/refinedstorage/block/EnumStorageType.java b/src/main/java/refinedstorage/block/EnumStorageType.java index c1447a724..9426057b1 100755 --- a/src/main/java/refinedstorage/block/EnumStorageType.java +++ b/src/main/java/refinedstorage/block/EnumStorageType.java @@ -47,6 +47,6 @@ public enum EnumStorageType implements IStringSerializable { return type; } } - return TYPE_1K; + return TYPE_CREATIVE; } } diff --git a/src/main/java/refinedstorage/inventory/BasicItemHandler.java b/src/main/java/refinedstorage/inventory/BasicItemHandler.java index 8dc37528c..07edaa151 100755 --- a/src/main/java/refinedstorage/inventory/BasicItemHandler.java +++ b/src/main/java/refinedstorage/inventory/BasicItemHandler.java @@ -23,7 +23,7 @@ public class BasicItemHandler extends ItemStackHandler { public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) { if (validators.length > 0) { for (IItemValidator validator : validators) { - if (validator.valid(stack)) { + if (validator.isValid(stack)) { return super.insertItem(slot, stack, simulate); } } diff --git a/src/main/java/refinedstorage/inventory/BasicItemValidator.java b/src/main/java/refinedstorage/inventory/BasicItemValidator.java index 4e0e68159..8938a002c 100755 --- a/src/main/java/refinedstorage/inventory/BasicItemValidator.java +++ b/src/main/java/refinedstorage/inventory/BasicItemValidator.java @@ -17,7 +17,7 @@ public class BasicItemValidator implements IItemValidator { } @Override - public boolean valid(ItemStack stack) { + public boolean isValid(ItemStack stack) { if (stack.getItem() == item) { if (damage != -1 && stack.getItemDamage() != damage) { return false; diff --git a/src/main/java/refinedstorage/inventory/IItemValidator.java b/src/main/java/refinedstorage/inventory/IItemValidator.java index a3b2a59cc..c86888705 100755 --- a/src/main/java/refinedstorage/inventory/IItemValidator.java +++ b/src/main/java/refinedstorage/inventory/IItemValidator.java @@ -3,5 +3,5 @@ package refinedstorage.inventory; import net.minecraft.item.ItemStack; public interface IItemValidator { - boolean valid(ItemStack stack); + boolean isValid(ItemStack stack); } diff --git a/src/main/java/refinedstorage/item/ItemBlockStorage.java b/src/main/java/refinedstorage/item/ItemBlockStorage.java index e4f1fc270..c30000c81 100755 --- a/src/main/java/refinedstorage/item/ItemBlockStorage.java +++ b/src/main/java/refinedstorage/item/ItemBlockStorage.java @@ -1,6 +1,7 @@ package refinedstorage.item; import net.minecraft.client.resources.I18n; +import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.InventoryHelper; import net.minecraft.item.ItemStack; @@ -64,6 +65,15 @@ public class ItemBlockStorage extends ItemBlockBase { return stack.getTagCompound() != null && stack.getTagCompound().hasKey(TileStorage.NBT_STORAGE); } + @Override + public void onUpdate(ItemStack stack, World world, Entity entity, int slot, boolean selected) { + super.onUpdate(stack, world, entity, slot, selected); + + if (!stack.hasTagCompound()) { + initNBT(stack); + } + } + @Override public void onCreated(ItemStack stack, World world, EntityPlayer player) { super.onCreated(stack, world, player); diff --git a/src/main/java/refinedstorage/item/ItemStorageDisk.java b/src/main/java/refinedstorage/item/ItemStorageDisk.java index 05e65ac0b..59b028fee 100755 --- a/src/main/java/refinedstorage/item/ItemStorageDisk.java +++ b/src/main/java/refinedstorage/item/ItemStorageDisk.java @@ -2,6 +2,7 @@ package refinedstorage.item; import net.minecraft.client.resources.I18n; import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.InventoryHelper; import net.minecraft.item.Item; @@ -39,14 +40,25 @@ public class ItemStorageDisk extends ItemBase { @Override public void getSubItems(Item item, CreativeTabs tab, List list) { - for (int i = 0; i < 6; ++i) { - list.add(i == TYPE_DEBUG ? createDebugDisk() : NBTStorage.createStackWithNBT(new ItemStack(item, 1, i))); + for (int i = 0; i < 5; ++i) { + list.add(NBTStorage.createStackWithNBT(new ItemStack(item, 1, i))); } } - private ItemStack createDebugDisk() { - ItemStack debugDisk = new ItemStack(RefinedStorageItems.STORAGE_DISK, 1, ItemStorageDisk.TYPE_DEBUG); + @Override + public void onUpdate(ItemStack stack, World world, Entity entity, int slot, boolean selected) { + super.onUpdate(stack, world, entity, slot, selected); + if (!stack.hasTagCompound()) { + if (stack.getItemDamage() == 5) { + applyDebugDiskData(stack); + } else { + NBTStorage.createStackWithNBT(stack); + } + } + } + + private void applyDebugDiskData(ItemStack stack) { if (debugDiskTag == null) { debugDiskTag = NBTStorage.createNBT(); @@ -76,9 +88,7 @@ public class ItemStorageDisk extends ItemBase { storage.writeToNBT(); } - debugDisk.setTagCompound(debugDiskTag.copy()); - - return debugDisk; + stack.setTagCompound(debugDiskTag.copy()); } @Override diff --git a/src/main/java/refinedstorage/proxy/ClientProxy.java b/src/main/java/refinedstorage/proxy/ClientProxy.java index acc3ba74d..9df90ace4 100755 --- a/src/main/java/refinedstorage/proxy/ClientProxy.java +++ b/src/main/java/refinedstorage/proxy/ClientProxy.java @@ -102,11 +102,9 @@ public class ClientProxy extends CommonProxy { ModelLoader.setCustomModelResourceLocation(RefinedStorageItems.UPGRADE, ItemUpgrade.TYPE_STACK, new ModelResourceLocation("refinedstorage:stack_upgrade", "inventory")); // Blocks - ModelLoader.setCustomStateMapper(RefinedStorageBlocks.STORAGE, (new StateMap.Builder()) - .ignore(RefinedStorageBlocks.STORAGE.DIRECTION) - .ignore(RefinedStorageBlocks.STORAGE.CONNECTED) - .build() - ); + ModelLoader.setCustomStateMapper(RefinedStorageBlocks.GRID, (new StateMap.Builder()) + .ignore(RefinedStorageBlocks.GRID.TYPE) + .build()); ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.CABLE), 0, new ModelResourceLocation("refinedstorage:cable", "inventory")); ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.GRID), EnumGridType.NORMAL.getId(), new ModelResourceLocation("refinedstorage:grid", "inventory")); @@ -134,6 +132,5 @@ public class ClientProxy extends CommonProxy { ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.STORAGE), EnumStorageType.TYPE_16K.getId(), new ModelResourceLocation("refinedstorage:storage", "type=16k")); ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.STORAGE), EnumStorageType.TYPE_64K.getId(), new ModelResourceLocation("refinedstorage:storage", "type=64k")); ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.STORAGE), EnumStorageType.TYPE_CREATIVE.getId(), new ModelResourceLocation("refinedstorage:storage", "type=creative")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.QUARTZ_ENRICHED_IRON), 0, new ModelResourceLocation("refinedstorage:quartz_enriched_iron_block", "inventory")); } } diff --git a/src/main/java/refinedstorage/proxy/CommonProxy.java b/src/main/java/refinedstorage/proxy/CommonProxy.java index f112f4e48..6a3123093 100755 --- a/src/main/java/refinedstorage/proxy/CommonProxy.java +++ b/src/main/java/refinedstorage/proxy/CommonProxy.java @@ -86,10 +86,11 @@ public class CommonProxy { registerBlock(RefinedStorageBlocks.PROCESSING_PATTERN_ENCODER); registerBlock(RefinedStorageBlocks.DISK_DRIVE); registerBlock(RefinedStorageBlocks.STORAGE); - registerBlock(RefinedStorageBlocks.EXTERNAL_STORAGE); registerBlock(RefinedStorageBlocks.SOLDERER); + registerBlock(RefinedStorageBlocks.CABLE); registerBlock(RefinedStorageBlocks.IMPORTER); registerBlock(RefinedStorageBlocks.EXPORTER); + registerBlock(RefinedStorageBlocks.EXTERNAL_STORAGE); registerBlock(RefinedStorageBlocks.CONSTRUCTOR); registerBlock(RefinedStorageBlocks.DESTRUCTOR); registerBlock(RefinedStorageBlocks.DETECTOR); @@ -97,8 +98,6 @@ public class CommonProxy { registerBlock(RefinedStorageBlocks.INTERFACE); registerBlock(RefinedStorageBlocks.WIRELESS_TRANSMITTER); registerBlock(RefinedStorageBlocks.MACHINE_CASING); - registerBlock(RefinedStorageBlocks.QUARTZ_ENRICHED_IRON); - registerBlock(RefinedStorageBlocks.CABLE); registerItem(RefinedStorageItems.QUARTZ_ENRICHED_IRON); registerItem(RefinedStorageItems.STORAGE_DISK); @@ -134,16 +133,6 @@ public class CommonProxy { 'Q', new ItemStack(Items.QUARTZ) ); - GameRegistry.addShapelessRecipe(new ItemStack(RefinedStorageItems.QUARTZ_ENRICHED_IRON, 9), new ItemStack(RefinedStorageBlocks.QUARTZ_ENRICHED_IRON)); - - // Quartz Enriched Iron Block - GameRegistry.addRecipe(new ItemStack(RefinedStorageBlocks.QUARTZ_ENRICHED_IRON), - "EEE", - "EEE", - "EEE", - 'E', new ItemStack(RefinedStorageItems.QUARTZ_ENRICHED_IRON) - ); - // Machine Casing GameRegistry.addRecipe(new ItemStack(RefinedStorageBlocks.MACHINE_CASING), "EEE", @@ -201,14 +190,14 @@ public class CommonProxy { )); // Cable - GameRegistry.addRecipe(new ItemStack(RefinedStorageBlocks.CABLE, 12), + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(RefinedStorageBlocks.CABLE, 12), "EEE", "GRG", "EEE", 'E', new ItemStack(RefinedStorageItems.QUARTZ_ENRICHED_IRON), - 'G', new ItemStack(Blocks.GLASS), + 'G', "blockGlass", 'R', new ItemStack(Items.REDSTONE) - ); + )); // Wireless Transmitter GameRegistry.addRecipe(new ItemStack(RefinedStorageBlocks.WIRELESS_TRANSMITTER), @@ -294,20 +283,20 @@ public class CommonProxy { 'H', new ItemStack(Blocks.CHEST), 'C', new ItemStack(RefinedStorageItems.CORE, 1, ItemCore.TYPE_CONSTRUCTION), 'D', new ItemStack(RefinedStorageItems.CORE, 1, ItemCore.TYPE_DESTRUCTION), - 'M', new ItemStack(RefinedStorageBlocks.MACHINE_CASING), + 'M', new ItemStack(RefinedStorageBlocks.CABLE), 'P', new ItemStack(RefinedStorageItems.PROCESSOR, 1, ItemProcessor.TYPE_IMPROVED) ); // Importer GameRegistry.addShapelessRecipe(new ItemStack(RefinedStorageBlocks.IMPORTER), - new ItemStack(RefinedStorageBlocks.MACHINE_CASING), + new ItemStack(RefinedStorageBlocks.CABLE), new ItemStack(RefinedStorageItems.CORE, 1, ItemCore.TYPE_CONSTRUCTION), new ItemStack(RefinedStorageItems.PROCESSOR, 1, ItemProcessor.TYPE_IMPROVED) ); // Exporter GameRegistry.addShapelessRecipe(new ItemStack(RefinedStorageBlocks.EXPORTER), - new ItemStack(RefinedStorageBlocks.MACHINE_CASING), + new ItemStack(RefinedStorageBlocks.CABLE), new ItemStack(RefinedStorageItems.CORE, 1, ItemCore.TYPE_DESTRUCTION), new ItemStack(RefinedStorageItems.PROCESSOR, 1, ItemProcessor.TYPE_IMPROVED) ); @@ -356,7 +345,7 @@ public class CommonProxy { 'R', new ItemStack(Items.REDSTONE), 'E', new ItemStack(RefinedStorageItems.QUARTZ_ENRICHED_IRON), 'S', "itemSilicon", - 'G', new ItemStack(Blocks.GLASS) + 'G', "blockGlass" )); GameRegistry.addRecipe(new ItemStack(RefinedStorageItems.STORAGE_PART, 1, ItemStoragePart.TYPE_4K), @@ -390,28 +379,28 @@ public class CommonProxy { ); // Storage Housing - GameRegistry.addRecipe(NBTStorage.createStackWithNBT(new ItemStack(RefinedStorageItems.STORAGE_HOUSING)), + GameRegistry.addRecipe(new ShapedOreRecipe(NBTStorage.createStackWithNBT(new ItemStack(RefinedStorageItems.STORAGE_HOUSING)), "GRG", "R R", "EEE", - 'G', new ItemStack(Blocks.GLASS), + 'G', "blockGlass", 'R', new ItemStack(Items.REDSTONE), 'E', new ItemStack(RefinedStorageItems.QUARTZ_ENRICHED_IRON) - ); + )); // Storage Disks for (int type = 0; type <= 3; ++type) { ItemStack disk = NBTStorage.createStackWithNBT(new ItemStack(RefinedStorageItems.STORAGE_DISK, 1, type)); - GameRegistry.addRecipe(disk, + GameRegistry.addRecipe(new ShapedOreRecipe(disk, "GRG", "RPR", "EEE", - 'G', new ItemStack(Blocks.GLASS), + 'G', "blockGlass", 'R', new ItemStack(Items.REDSTONE), 'P', new ItemStack(RefinedStorageItems.STORAGE_PART, 1, type), 'E', new ItemStack(RefinedStorageItems.QUARTZ_ENRICHED_IRON) - ); + )); GameRegistry.addShapelessRecipe(disk, new ItemStack(RefinedStorageItems.STORAGE_HOUSING), @@ -420,24 +409,24 @@ public class CommonProxy { } // Pattern - GameRegistry.addRecipe(new ItemStack(RefinedStorageItems.PATTERN), + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(RefinedStorageItems.PATTERN), "GRG", "RGR", "EEE", - 'G', new ItemStack(Blocks.GLASS), + 'G', "blockGlass", 'R', new ItemStack(Items.REDSTONE), 'E', new ItemStack(RefinedStorageItems.QUARTZ_ENRICHED_IRON) - ); + )); // Upgrade - GameRegistry.addRecipe(new ItemStack(RefinedStorageItems.UPGRADE, 1, 0), + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(RefinedStorageItems.UPGRADE, 1, 0), "EGE", "EPE", "EGE", - 'G', new ItemStack(Blocks.GLASS), + 'G', "blockGlass", 'P', new ItemStack(RefinedStorageItems.PROCESSOR, 1, ItemProcessor.TYPE_IMPROVED), 'E', new ItemStack(RefinedStorageItems.QUARTZ_ENRICHED_IRON) - ); + )); RefinedStorageAPI.SOLDERER_REGISTRY.addRecipe(new SoldererRecipeUpgrade(ItemUpgrade.TYPE_RANGE)); RefinedStorageAPI.SOLDERER_REGISTRY.addRecipe(new SoldererRecipeUpgrade(ItemUpgrade.TYPE_SPEED)); @@ -458,15 +447,15 @@ public class CommonProxy { RefinedStorageAPI.SOLDERER_REGISTRY.addRecipe(new SoldererRecipeStorage(EnumStorageType.TYPE_64K, ItemStoragePart.TYPE_64K)); // Crafting Monitor - GameRegistry.addRecipe(new ItemStack(RefinedStorageBlocks.CRAFTING_MONITOR), + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(RefinedStorageBlocks.CRAFTING_MONITOR), "EGE", "GMG", "EPE", 'E', new ItemStack(RefinedStorageItems.QUARTZ_ENRICHED_IRON), 'M', new ItemStack(RefinedStorageBlocks.MACHINE_CASING), - 'G', new ItemStack(Blocks.GLASS), + 'G', "blockGlass", 'P', new ItemStack(RefinedStorageItems.PROCESSOR, 1, ItemProcessor.TYPE_IMPROVED) - ); + )); // Interface RefinedStorageAPI.SOLDERER_REGISTRY.addRecipe(new SoldererRecipeBasic( @@ -486,7 +475,7 @@ public class CommonProxy { private void registerBlock(BlockBase block) { GameRegistry.register(block); - GameRegistry.register(block.createItemForBlock()); + GameRegistry.register(block.createItem()); } private void registerItem(Item item) { diff --git a/src/main/java/refinedstorage/tile/TileCable.java b/src/main/java/refinedstorage/tile/TileCable.java index 1e3305df1..305a9f76b 100755 --- a/src/main/java/refinedstorage/tile/TileCable.java +++ b/src/main/java/refinedstorage/tile/TileCable.java @@ -14,11 +14,6 @@ public class TileCable extends TileNode { // NO OP } - @Override - public boolean canSendConnectivityUpdate() { - return false; - } - @Override public Class getContainer() { return null; diff --git a/src/main/java/refinedstorage/tile/TileCrafter.java b/src/main/java/refinedstorage/tile/TileCrafter.java index 84925ae67..19968f471 100755 --- a/src/main/java/refinedstorage/tile/TileCrafter.java +++ b/src/main/java/refinedstorage/tile/TileCrafter.java @@ -24,7 +24,7 @@ import refinedstorage.item.ItemUpgrade; public class TileCrafter extends TileNode implements ICraftingPatternContainer { private BasicItemHandler patterns = new BasicItemHandler(9, this, new IItemValidator() { @Override - public boolean valid(ItemStack stack) { + public boolean isValid(ItemStack stack) { return stack.getItem() == RefinedStorageItems.PATTERN && ItemPattern.isValid(stack); } }) { @@ -66,7 +66,7 @@ public class TileCrafter extends TileNode implements ICraftingPatternContainer { public void onConnectionChange(INetworkMaster network, boolean state) { if (!state) { for (ICraftingTask task : network.getCraftingTasks()) { - if (task.getPattern().getContainer(worldObj) == this) { + if (task.getPattern().getContainerPosition().equals(pos)) { network.cancelCraftingTask(task); } } diff --git a/src/main/java/refinedstorage/tile/TileDetector.java b/src/main/java/refinedstorage/tile/TileDetector.java index 7c6dd9bc6..ef508062a 100755 --- a/src/main/java/refinedstorage/tile/TileDetector.java +++ b/src/main/java/refinedstorage/tile/TileDetector.java @@ -33,6 +33,7 @@ public class TileDetector extends TileNode implements ICompareConfig { private int amount = 0; private boolean powered = false; + private boolean wasPowered; @Override public int getEnergyUsage() { @@ -44,8 +45,6 @@ public class TileDetector extends TileNode implements ICompareConfig { if (ticks % SPEED == 0) { ItemStack slot = filter.getStackInSlot(0); - boolean wasPowered = powered; - if (slot != null) { ItemStack stack = network.getStorage().get(slot, compare); @@ -73,15 +72,22 @@ public class TileDetector extends TileNode implements ICompareConfig { } else { powered = false; } - - if (powered != wasPowered) { - worldObj.notifyNeighborsOfStateChange(pos, RefinedStorageBlocks.DETECTOR); - - RefinedStorageUtils.updateBlock(worldObj, pos); - } } } + @Override + public void update() { + if (powered != wasPowered) { + wasPowered = powered; + + worldObj.notifyNeighborsOfStateChange(pos, RefinedStorageBlocks.DETECTOR); + + RefinedStorageUtils.updateBlock(worldObj, pos); + } + + super.update(); + } + @Override public void onConnectionChange(INetworkMaster network, boolean state) { super.onConnectionChange(network, state); diff --git a/src/main/java/refinedstorage/tile/TileDiskDrive.java b/src/main/java/refinedstorage/tile/TileDiskDrive.java index d0080969d..cc5972dfb 100755 --- a/src/main/java/refinedstorage/tile/TileDiskDrive.java +++ b/src/main/java/refinedstorage/tile/TileDiskDrive.java @@ -49,6 +49,7 @@ public class TileDiskDrive extends TileNode implements IStorageProvider, IStorag private static final String NBT_PRIORITY = "Priority"; private static final String NBT_COMPARE = "Compare"; private static final String NBT_MODE = "Mode"; + private static final String NBT_STORED = "Stored"; private BasicItemHandler disks = new BasicItemHandler(8, this, new BasicItemValidator(RefinedStorageItems.STORAGE_DISK)) { @Override @@ -84,6 +85,20 @@ public class TileDiskDrive extends TileNode implements IStorageProvider, IStorag private int priority = 0; private int compare = 0; private int mode = ModeConstants.WHITELIST; + private int stored = 0; + + @Override + public void update() { + if (!worldObj.isRemote) { + if (stored != getStoredForDisplayServer()) { + stored = getStoredForDisplayServer(); + + RefinedStorageUtils.updateBlock(worldObj, pos); + } + } + + super.update(); + } @Override public int getEnergyUsage() { @@ -166,6 +181,22 @@ public class TileDiskDrive extends TileNode implements IStorageProvider, IStorag return tag; } + @Override + public NBTTagCompound writeUpdate(NBTTagCompound tag) { + super.writeUpdate(tag); + + tag.setInteger(NBT_STORED, stored); + + return tag; + } + + @Override + public void readUpdate(NBTTagCompound tag) { + stored = tag.getInteger(NBT_STORED); + + super.readUpdate(tag); + } + @Override public void writeContainerData(ByteBuf buf) { super.writeContainerData(buf); @@ -213,6 +244,36 @@ public class TileDiskDrive extends TileNode implements IStorageProvider, IStorag markDirty(); } + public int getStoredForDisplayServer() { + float stored = 0; + float storedMax = 0; + + for (int i = 0; i < disks.getSlots(); ++i) { + ItemStack disk = disks.getStackInSlot(i); + + if (disk != null) { + int capacity = EnumStorageType.getById(disk.getItemDamage()).getCapacity(); + + if (capacity == -1) { + return 0; + } + + stored += NBTStorage.getStoredFromNBT(disk.getTagCompound()); + storedMax += EnumStorageType.getById(disk.getItemDamage()).getCapacity(); + } + } + + if (storedMax == 0) { + return 0; + } + + return (int) Math.floor((stored / storedMax) * 7f); + } + + public int getStoredForScaledDisplay() { + return stored; + } + @Override public String getGuiTitle() { return "block.refinedstorage:disk_drive.name"; diff --git a/src/main/java/refinedstorage/tile/TileNode.java b/src/main/java/refinedstorage/tile/TileNode.java index ebc19366b..70202a4e6 100755 --- a/src/main/java/refinedstorage/tile/TileNode.java +++ b/src/main/java/refinedstorage/tile/TileNode.java @@ -1,11 +1,13 @@ package refinedstorage.tile; import io.netty.buffer.ByteBuf; +import net.minecraft.block.Block; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.math.BlockPos; import refinedstorage.RefinedStorageUtils; import refinedstorage.api.network.INetworkMaster; import refinedstorage.api.network.INetworkNode; +import refinedstorage.block.BlockNode; import refinedstorage.tile.config.IRedstoneModeConfig; import refinedstorage.tile.config.RedstoneMode; @@ -28,9 +30,10 @@ public abstract class TileNode extends TileBase implements INetworkNode, ISynchr return isConnected() && canUpdate(); } - @Override - public boolean canSendConnectivityUpdate() { - return true; + private boolean canSendConnectivityUpdate() { + Block block = getBlockType(); + + return block instanceof BlockNode ? ((BlockNode) block).hasConnectivityState() : false; } @Override @@ -65,7 +68,7 @@ public abstract class TileNode extends TileBase implements INetworkNode, ISynchr } @Override - public void onDisconnected() { + public void onDisconnected(INetworkMaster network) { onConnectionChange(network, false); this.connected = false; @@ -144,14 +147,18 @@ public abstract class TileNode extends TileBase implements INetworkNode, ISynchr public NBTTagCompound writeUpdate(NBTTagCompound tag) { super.writeUpdate(tag); - tag.setBoolean(NBT_CONNECTED, isActive()); + if (canSendConnectivityUpdate()) { + tag.setBoolean(NBT_CONNECTED, isActive()); + } return tag; } public void readUpdate(NBTTagCompound tag) { - super.readUpdate(tag); + if (canSendConnectivityUpdate()) { + connected = tag.getBoolean(NBT_CONNECTED); + } - connected = tag.getBoolean(NBT_CONNECTED); + super.readUpdate(tag); } } diff --git a/src/main/java/refinedstorage/tile/TileSolderer.java b/src/main/java/refinedstorage/tile/TileSolderer.java index 8f354d898..723aef9a7 100755 --- a/src/main/java/refinedstorage/tile/TileSolderer.java +++ b/src/main/java/refinedstorage/tile/TileSolderer.java @@ -78,8 +78,7 @@ public class TileSolderer extends TileNode { recipe = null; progress = 0; - // Don't set working to false yet, wait till the next update because we may have - // another stack waiting. + // Don't set working to false yet, wait till the next update because we may have another stack waiting. markDirty(); } diff --git a/src/main/java/refinedstorage/tile/controller/TileController.java b/src/main/java/refinedstorage/tile/controller/TileController.java index 197ab6f2c..22f6a9ee7 100755 --- a/src/main/java/refinedstorage/tile/controller/TileController.java +++ b/src/main/java/refinedstorage/tile/controller/TileController.java @@ -25,6 +25,7 @@ import refinedstorage.RefinedStorage; import refinedstorage.RefinedStorageBlocks; import refinedstorage.RefinedStorageUtils; import refinedstorage.api.autocrafting.ICraftingPattern; +import refinedstorage.api.autocrafting.ICraftingPatternContainer; import refinedstorage.api.autocrafting.ICraftingTask; import refinedstorage.api.network.IGridHandler; import refinedstorage.api.network.INetworkMaster; @@ -50,6 +51,7 @@ import refinedstorage.tile.TileBase; import refinedstorage.tile.TileCrafter; import refinedstorage.tile.config.IRedstoneModeConfig; import refinedstorage.tile.config.RedstoneMode; +import refinedstorage.tile.externalstorage.ExternalStorage; import java.util.*; @@ -167,9 +169,13 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR craftingTasksToAddAsLast.clear(); if (!craftingTasks.empty()) { + markDirty(); + ICraftingTask top = craftingTasks.peek(); - if (ticks % top.getPattern().getContainer(worldObj).getSpeed() == 0 && top.update(worldObj, this)) { + ICraftingPatternContainer container = top.getPattern().getContainer(worldObj); + + if (container != null && (ticks % container.getSpeed()) == 0 && top.update(worldObj, this)) { top.onDone(this); craftingTasks.pop(); @@ -194,11 +200,7 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR if (couldRun != canRun()) { couldRun = canRun(); - if (!couldRun && !nodes.isEmpty()) { - disconnectAll(); - } else if (couldRun) { - rebuildNodes(); - } + rebuildNodes(); } if (getEnergyScaledForDisplay() != lastEnergyDisplay) { @@ -220,11 +222,12 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR public void disconnectAll() { for (INetworkNode node : nodes) { if (node.isConnected()) { - node.onDisconnected(); + node.onDisconnected(this); } } nodes.clear(); + nodesPos.clear(); } @Override @@ -365,9 +368,7 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR if (pattern != null && ItemPattern.isValid(pattern)) { patterns.add(new CraftingPattern( - crafter.getPos().getX(), - crafter.getPos().getY(), - crafter.getPos().getZ(), + crafter.getPos(), ItemPattern.isProcessing(pattern), ItemPattern.getInputs(pattern), ItemPattern.getOutputs(pattern), @@ -383,6 +384,14 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR @Override public void rebuildNodes() { + if (!canRun()) { + if (!nodes.isEmpty()) { + disconnectAll(); + } + + return; + } + List newNodes = new ArrayList(); Set newNodesPos = new HashSet(); @@ -424,20 +433,23 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR } } - for (INetworkNode newNode : newNodes) { - if (!nodesPos.contains(newNode.getPosition())) { + List oldNodes = new ArrayList(nodes); + Set oldNodesPos = new HashSet(nodesPos); + + this.nodes = newNodes; + this.nodesPos = newNodesPos; + + for (INetworkNode newNode : nodes) { + if (!oldNodesPos.contains(newNode.getPosition())) { newNode.onConnected(this); } } - for (INetworkNode oldNode : nodes) { - if (!newNodesPos.contains(oldNode.getPosition())) { - oldNode.onDisconnected(); + for (INetworkNode oldNode : oldNodes) { + if (!nodesPos.contains(oldNode.getPosition())) { + oldNode.onDisconnected(this); } } - - this.nodes = newNodes; - this.nodesPos = newNodesPos; } @Override @@ -480,6 +492,10 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR for (IStorage storage : this.storage.getStorages()) { remainder = storage.insertItem(remainder, size, simulate); + if (storage instanceof ExternalStorage && !simulate) { + ((ExternalStorage) storage).setHash(); + } + if (remainder == null) { break; } else { @@ -516,6 +532,10 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR for (IStorage storage : this.storage.getStorages()) { ItemStack took = storage.extractItem(stack, requested - received, flags); + if (storage instanceof ExternalStorage) { + ((ExternalStorage) storage).setHash(); + } + if (took != null) { if (newStack == null) { newStack = took; @@ -642,7 +662,7 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR } public int getEnergyScaledForDisplay() { - return getEnergyScaled(8); + return getEnergyScaled(7); } public int getEnergyScaledForComparator() { @@ -667,6 +687,8 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR @Override public void setRedstoneMode(RedstoneMode mode) { this.redstoneMode = mode; + + markDirty(); } @Override diff --git a/src/main/java/refinedstorage/tile/externalstorage/DeepStorageUnitStorage.java b/src/main/java/refinedstorage/tile/externalstorage/DeepStorageUnitStorage.java index 3ed8b7352..f3372e4b0 100755 --- a/src/main/java/refinedstorage/tile/externalstorage/DeepStorageUnitStorage.java +++ b/src/main/java/refinedstorage/tile/externalstorage/DeepStorageUnitStorage.java @@ -17,6 +17,8 @@ public class DeepStorageUnitStorage extends ExternalStorage { public DeepStorageUnitStorage(TileExternalStorage externalStorage, IDeepStorageUnit unit) { this.externalStorage = externalStorage; this.unit = unit; + + setHash(); } @Override @@ -24,6 +26,11 @@ public class DeepStorageUnitStorage extends ExternalStorage { return unit.getMaxStoredCount(); } + @Override + public int getHash() { + return RefinedStorageUtils.getItemStackHashCode(unit.getStoredItemType()); + } + @Override public List getItems() { if (unit.getStoredItemType() != null && unit.getStoredItemType().stackSize > 0) { diff --git a/src/main/java/refinedstorage/tile/externalstorage/DrawerStorage.java b/src/main/java/refinedstorage/tile/externalstorage/DrawerStorage.java index c25924744..3f0666aab 100755 --- a/src/main/java/refinedstorage/tile/externalstorage/DrawerStorage.java +++ b/src/main/java/refinedstorage/tile/externalstorage/DrawerStorage.java @@ -17,6 +17,8 @@ public class DrawerStorage extends ExternalStorage { public DrawerStorage(TileExternalStorage externalStorage, IDrawer drawer) { this.externalStorage = externalStorage; this.drawer = drawer; + + setHash(); } @Override @@ -24,6 +26,11 @@ public class DrawerStorage extends ExternalStorage { return drawer.getMaxCapacity(); } + @Override + public int getHash() { + return RefinedStorageUtils.getItemStackHashCode(drawer.getStoredItemPrototype(), drawer.getStoredItemCount()); + } + @Override public List getItems() { if (!drawer.isEmpty() && drawer.getStoredItemCount() > 0) { diff --git a/src/main/java/refinedstorage/tile/externalstorage/ExternalStorage.java b/src/main/java/refinedstorage/tile/externalstorage/ExternalStorage.java index 2baeed82e..59b8a9b1e 100755 --- a/src/main/java/refinedstorage/tile/externalstorage/ExternalStorage.java +++ b/src/main/java/refinedstorage/tile/externalstorage/ExternalStorage.java @@ -3,5 +3,23 @@ package refinedstorage.tile.externalstorage; import refinedstorage.api.storage.IStorage; public abstract class ExternalStorage implements IStorage { + private int hash = -1; + public abstract int getCapacity(); + + public void setHash() { + this.hash = getHash(); + } + + public abstract int getHash(); + + public boolean isDirty() { + if (hash != -1 && hash != getHash()) { + hash = getHash(); + + return true; + } + + return false; + } } diff --git a/src/main/java/refinedstorage/tile/externalstorage/ItemHandlerStorage.java b/src/main/java/refinedstorage/tile/externalstorage/ItemHandlerStorage.java index f56af7c1e..aa1309d80 100755 --- a/src/main/java/refinedstorage/tile/externalstorage/ItemHandlerStorage.java +++ b/src/main/java/refinedstorage/tile/externalstorage/ItemHandlerStorage.java @@ -16,6 +16,8 @@ public class ItemHandlerStorage extends ExternalStorage { public ItemHandlerStorage(TileExternalStorage externalStorage, IItemHandler handler) { this.externalStorage = externalStorage; this.handler = handler; + + setHash(); } @Override @@ -23,6 +25,19 @@ public class ItemHandlerStorage extends ExternalStorage { return handler.getSlots() * 64; } + @Override + public int getHash() { + int code = 0; + + for (int i = 0; i < handler.getSlots(); ++i) { + if (handler.getStackInSlot(i) != null && handler.getStackInSlot(i).getItem() != null) { + code += RefinedStorageUtils.getItemStackHashCode(handler.getStackInSlot(i)); + } + } + + return code; + } + @Override public List getItems() { List items = new ArrayList(); diff --git a/src/main/java/refinedstorage/tile/externalstorage/TileExternalStorage.java b/src/main/java/refinedstorage/tile/externalstorage/TileExternalStorage.java index 774ad4a13..e7044a3ee 100755 --- a/src/main/java/refinedstorage/tile/externalstorage/TileExternalStorage.java +++ b/src/main/java/refinedstorage/tile/externalstorage/TileExternalStorage.java @@ -56,17 +56,27 @@ public class TileExternalStorage extends TileNode implements IStorageProvider, I public void onConnectionChange(INetworkMaster network, boolean state) { super.onConnectionChange(network, state); + updateStorage(network); + network.getStorage().rebuild(); } @Override public void update() { - if (ticks == 0) { - updateStorage(); - } else if (getFacingTile() instanceof IDrawerGroup && lastDrawerCount != ((IDrawerGroup) getFacingTile()).getDrawerCount()) { - lastDrawerCount = ((IDrawerGroup) getFacingTile()).getDrawerCount(); + if (!worldObj.isRemote && network != null) { + for (ExternalStorage storage : storages) { + if (storage.isDirty()) { + updateStorage(network); - updateStorage(); + break; + } + } + + if (getFacingTile() instanceof IDrawerGroup && lastDrawerCount != ((IDrawerGroup) getFacingTile()).getDrawerCount()) { + lastDrawerCount = ((IDrawerGroup) getFacingTile()).getDrawerCount(); + + updateStorage(network); + } } super.update(); @@ -166,8 +176,7 @@ public class TileExternalStorage extends TileNode implements IStorageProvider, I markDirty(); } - // Called when the neighbor block changes or when a drawer is added or removed to a drawer group - public void updateStorage() { + public void updateStorage(INetworkMaster network) { storages.clear(); TileEntity facing = getFacingTile(); @@ -192,9 +201,7 @@ public class TileExternalStorage extends TileNode implements IStorageProvider, I } } - if (network != null) { - network.getStorage().rebuild(); - } + network.getStorage().rebuild(); } @Override diff --git a/src/main/java/refinedstorage/tile/grid/TileGrid.java b/src/main/java/refinedstorage/tile/grid/TileGrid.java index 8335446c1..3e6df548f 100755 --- a/src/main/java/refinedstorage/tile/grid/TileGrid.java +++ b/src/main/java/refinedstorage/tile/grid/TileGrid.java @@ -335,6 +335,7 @@ public class TileGrid extends TileNode implements IGrid { public void writeContainerData(ByteBuf buf) { super.writeContainerData(buf); + buf.writeBoolean(isConnected()); buf.writeInt(sortingDirection); buf.writeInt(sortingType); buf.writeInt(searchBoxMode); @@ -344,6 +345,7 @@ public class TileGrid extends TileNode implements IGrid { public void readContainerData(ByteBuf buf) { super.readContainerData(buf); + connected = buf.readBoolean(); sortingDirection = buf.readInt(); sortingType = buf.readInt(); searchBoxMode = buf.readInt(); diff --git a/src/main/resources/assets/refinedstorage/blockstates/constructor.json b/src/main/resources/assets/refinedstorage/blockstates/constructor.json index a313c71f6..830825acf 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/constructor.json +++ b/src/main/resources/assets/refinedstorage/blockstates/constructor.json @@ -15,12 +15,6 @@ "transform": "forge:default-block" } ], - "connected": { - "true": { - }, - "false": { - } - }, "direction": { "north": { "y": 0 diff --git a/src/main/resources/assets/refinedstorage/blockstates/controller.json b/src/main/resources/assets/refinedstorage/blockstates/controller.json index 081716e07..3fdb5566c 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/controller.json +++ b/src/main/resources/assets/refinedstorage/blockstates/controller.json @@ -55,11 +55,6 @@ "textures": { "front": "refinedstorage:blocks/controller_7" } - }, - "8": { - "textures": { - "front": "refinedstorage:blocks/controller_8" - } } }, "type": { diff --git a/src/main/resources/assets/refinedstorage/blockstates/crafting_monitor.json b/src/main/resources/assets/refinedstorage/blockstates/crafting_monitor.json index a75cb3868..dd86afd54 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/crafting_monitor.json +++ b/src/main/resources/assets/refinedstorage/blockstates/crafting_monitor.json @@ -4,31 +4,17 @@ "model": "orientable", "textures": { "side": "refinedstorage:blocks/side", - "top": "refinedstorage:blocks/side" + "top": "refinedstorage:blocks/side", + "front": "refinedstorage:blocks/crafting_monitor" } }, "variants": { "inventory": [ { - "textures": { - "front": "refinedstorage:blocks/crafting_monitor_disconnected" - }, "transform": "forge:default-block", "y": 0 } ], - "connected": { - "true": { - "textures": { - "front": "refinedstorage:blocks/crafting_monitor_connected" - } - }, - "false": { - "textures": { - "front": "refinedstorage:blocks/crafting_monitor_disconnected" - } - } - }, "direction": { "north": { "y": 0 diff --git a/src/main/resources/assets/refinedstorage/blockstates/creative_controller.json b/src/main/resources/assets/refinedstorage/blockstates/creative_controller.json index f2b5ef5a5..8190cba8e 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/creative_controller.json +++ b/src/main/resources/assets/refinedstorage/blockstates/creative_controller.json @@ -5,7 +5,7 @@ "textures": { "side": "refinedstorage:blocks/side", "top": "refinedstorage:blocks/side", - "front": "refinedstorage:blocks/controller_8" + "front": "refinedstorage:blocks/controller_7" } }, "variants": { @@ -31,8 +31,6 @@ "6": { }, "7": { - }, - "8": { } }, "type": { diff --git a/src/main/resources/assets/refinedstorage/blockstates/destructor.json b/src/main/resources/assets/refinedstorage/blockstates/destructor.json index ee6e0422f..c36786296 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/destructor.json +++ b/src/main/resources/assets/refinedstorage/blockstates/destructor.json @@ -15,12 +15,6 @@ "transform": "forge:default-block" } ], - "connected": { - "true": { - }, - "false": { - } - }, "direction": { "north": { "y": 0 diff --git a/src/main/resources/assets/refinedstorage/blockstates/detector.json b/src/main/resources/assets/refinedstorage/blockstates/detector.json index 77f3ea633..587bd4748 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/detector.json +++ b/src/main/resources/assets/refinedstorage/blockstates/detector.json @@ -1,54 +1,26 @@ { "forge_marker": 1, "defaults": { - "model": "orientable", "textures": { - "side": "refinedstorage:blocks/side", - "top": "refinedstorage:blocks/side", - "front": "refinedstorage:blocks/detector_unpowered" - } + "particle": "refinedstorage:blocks/side_borderless", + "torch": "refinedstorage:blocks/wireless_transmitter_disconnected" + }, + "model": "refinedstorage:detector" }, "variants": { "inventory": [ { - "y": 0, "transform": "forge:default-block" } ], - "connected": { - "true": { - }, - "false": { - } - }, "powered": { "true": { "textures": { - "front": "refinedstorage:blocks/detector_powered" + "torch": "refinedstorage:blocks/wireless_transmitter_connected" } }, "false": { } - }, - "direction": { - "north": { - "y": 0 - }, - "east": { - "y": 90 - }, - "south": { - "y": 180 - }, - "west": { - "y": 270 - }, - "up": { - "x": 270 - }, - "down": { - "x": 90 - } } } } \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/blockstates/disk_drive.json b/src/main/resources/assets/refinedstorage/blockstates/disk_drive.json index fdbb245a2..7f2769a99 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/disk_drive.json +++ b/src/main/resources/assets/refinedstorage/blockstates/disk_drive.json @@ -5,7 +5,7 @@ "textures": { "side": "refinedstorage:blocks/side", "top": "refinedstorage:blocks/side", - "front": "refinedstorage:blocks/disk_drive" + "front": "refinedstorage:blocks/disk_drive_0" } }, "variants": { @@ -15,10 +15,46 @@ "y": 0 } ], - "connected": { - "true": { + "stored": { + "0": { + "textures": { + "front": "refinedstorage:blocks/disk_drive_0" + } }, - "false": { + "1": { + "textures": { + "front": "refinedstorage:blocks/disk_drive_1" + } + }, + "2": { + "textures": { + "front": "refinedstorage:blocks/disk_drive_2" + } + }, + "3": { + "textures": { + "front": "refinedstorage:blocks/disk_drive_3" + } + }, + "4": { + "textures": { + "front": "refinedstorage:blocks/disk_drive_4" + } + }, + "5": { + "textures": { + "front": "refinedstorage:blocks/disk_drive_5" + } + }, + "6": { + "textures": { + "front": "refinedstorage:blocks/disk_drive_6" + } + }, + "7": { + "textures": { + "front": "refinedstorage:blocks/disk_drive_7" + } } }, "direction": { diff --git a/src/main/resources/assets/refinedstorage/blockstates/exporter.json b/src/main/resources/assets/refinedstorage/blockstates/exporter.json index 8fef98a80..8cb54ce29 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/exporter.json +++ b/src/main/resources/assets/refinedstorage/blockstates/exporter.json @@ -1,44 +1,81 @@ { "forge_marker": 1, "defaults": { - "model": "orientable", "textures": { - "side": "refinedstorage:blocks/side", - "top": "refinedstorage:blocks/side", - "front": "refinedstorage:blocks/exporter" - } + "all": "refinedstorage:blocks/cable", + "particle": "refinedstorage:blocks/cable", + "line": "refinedstorage:blocks/importer_exporter_external_storage" + }, + "model": "refinedstorage:cable_core", + "uvlock": true }, "variants": { "inventory": [ { - "y": 0, + "model": "refinedstorage:exporter", "transform": "forge:default-block" } ], - "connected": { + "direction": { + "north": { + "submodel": "refinedstorage:exporter_north" + }, + "east": { + "submodel": "refinedstorage:exporter_east" + }, + "south": { + "submodel": "refinedstorage:exporter_south" + }, + "west": { + "submodel": "refinedstorage:exporter_west" + }, + "up": { + "submodel": "refinedstorage:exporter_up" + }, + "down": { + "submodel": "refinedstorage:exporter_down" + } + }, + "north": { "true": { + "submodel": "refinedstorage:cable_north" }, "false": { } }, - "direction": { - "north": { - "y": 0 + "east": { + "true": { + "submodel": "refinedstorage:cable_east" }, - "east": { - "y": 90 + "false": { + } + }, + "south": { + "true": { + "submodel": "refinedstorage:cable_south" }, - "south": { - "y": 180 + "false": { + } + }, + "west": { + "true": { + "submodel": "refinedstorage:cable_west" }, - "west": { - "y": 270 + "false": { + } + }, + "up": { + "true": { + "submodel": "refinedstorage:cable_up" }, - "up": { - "x": 270 + "false": { + } + }, + "down": { + "true": { + "submodel": "refinedstorage:cable_down" }, - "down": { - "x": 90 + "false": { } } } diff --git a/src/main/resources/assets/refinedstorage/blockstates/external_storage.json b/src/main/resources/assets/refinedstorage/blockstates/external_storage.json index 56d8e97b7..d5499367e 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/external_storage.json +++ b/src/main/resources/assets/refinedstorage/blockstates/external_storage.json @@ -1,44 +1,81 @@ { "forge_marker": 1, "defaults": { - "model": "orientable", "textures": { - "side": "refinedstorage:blocks/side", - "top": "refinedstorage:blocks/side", - "front": "refinedstorage:blocks/external_storage" - } + "all": "refinedstorage:blocks/cable", + "particle": "refinedstorage:blocks/cable", + "line": "refinedstorage:blocks/importer_exporter_external_storage" + }, + "model": "refinedstorage:cable_core", + "uvlock": true }, "variants": { "inventory": [ { - "y": 0, + "model": "refinedstorage:external_storage", "transform": "forge:default-block" } ], - "connected": { + "direction": { + "north": { + "submodel": "refinedstorage:external_storage_north" + }, + "east": { + "submodel": "refinedstorage:external_storage_east" + }, + "south": { + "submodel": "refinedstorage:external_storage_south" + }, + "west": { + "submodel": "refinedstorage:external_storage_west" + }, + "up": { + "submodel": "refinedstorage:external_storage_up" + }, + "down": { + "submodel": "refinedstorage:external_storage_down" + } + }, + "north": { "true": { + "submodel": "refinedstorage:cable_north" }, "false": { } }, - "direction": { - "north": { - "y": 0 + "east": { + "true": { + "submodel": "refinedstorage:cable_east" }, - "east": { - "y": 90 + "false": { + } + }, + "south": { + "true": { + "submodel": "refinedstorage:cable_south" }, - "south": { - "y": 180 + "false": { + } + }, + "west": { + "true": { + "submodel": "refinedstorage:cable_west" }, - "west": { - "y": 270 + "false": { + } + }, + "up": { + "true": { + "submodel": "refinedstorage:cable_up" }, - "up": { - "x": 270 + "false": { + } + }, + "down": { + "true": { + "submodel": "refinedstorage:cable_down" }, - "down": { - "x": 90 + "false": { } } } diff --git a/src/main/resources/assets/refinedstorage/blockstates/grid.json b/src/main/resources/assets/refinedstorage/blockstates/grid.json index 00bd86d73..e8da5155c 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/grid.json +++ b/src/main/resources/assets/refinedstorage/blockstates/grid.json @@ -4,39 +4,17 @@ "model": "orientable", "textures": { "side": "refinedstorage:blocks/side", - "top": "refinedstorage:blocks/side" + "top": "refinedstorage:blocks/side", + "front": "refinedstorage:blocks/grid" } }, "variants": { "inventory": [ { - "textures": { - "front": "refinedstorage:blocks/grid_disconnected" - }, "transform": "forge:default-block", "y": 0 } ], - "type": { - "normal": { - }, - "crafting": { - }, - "pattern": { - } - }, - "connected": { - "true": { - "textures": { - "front": "refinedstorage:blocks/grid_connected" - } - }, - "false": { - "textures": { - "front": "refinedstorage:blocks/grid_disconnected" - } - } - }, "direction": { "north": { "y": 0 diff --git a/src/main/resources/assets/refinedstorage/blockstates/importer.json b/src/main/resources/assets/refinedstorage/blockstates/importer.json index 78a57739e..a131e1e27 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/importer.json +++ b/src/main/resources/assets/refinedstorage/blockstates/importer.json @@ -1,44 +1,81 @@ { "forge_marker": 1, "defaults": { - "model": "orientable", "textures": { - "side": "refinedstorage:blocks/side", - "top": "refinedstorage:blocks/side", - "front": "refinedstorage:blocks/importer" - } + "all": "refinedstorage:blocks/cable", + "particle": "refinedstorage:blocks/cable", + "line": "refinedstorage:blocks/importer_exporter_external_storage" + }, + "model": "refinedstorage:cable_core", + "uvlock": true }, "variants": { "inventory": [ { - "y": 0, + "model": "refinedstorage:importer", "transform": "forge:default-block" } ], - "connected": { + "direction": { + "north": { + "submodel": "refinedstorage:importer_north" + }, + "east": { + "submodel": "refinedstorage:importer_east" + }, + "south": { + "submodel": "refinedstorage:importer_south" + }, + "west": { + "submodel": "refinedstorage:importer_west" + }, + "up": { + "submodel": "refinedstorage:importer_up" + }, + "down": { + "submodel": "refinedstorage:importer_down" + } + }, + "north": { "true": { + "submodel": "refinedstorage:cable_north" }, "false": { } }, - "direction": { - "north": { - "y": 0 + "east": { + "true": { + "submodel": "refinedstorage:cable_east" }, - "east": { - "y": 90 + "false": { + } + }, + "south": { + "true": { + "submodel": "refinedstorage:cable_south" }, - "south": { - "y": 180 + "false": { + } + }, + "west": { + "true": { + "submodel": "refinedstorage:cable_west" }, - "west": { - "y": 270 + "false": { + } + }, + "up": { + "true": { + "submodel": "refinedstorage:cable_up" }, - "up": { - "x": 270 + "false": { + } + }, + "down": { + "true": { + "submodel": "refinedstorage:cable_down" }, - "down": { - "x": 90 + "false": { } } } diff --git a/src/main/resources/assets/refinedstorage/blockstates/interface.json b/src/main/resources/assets/refinedstorage/blockstates/interface.json index 7e5023f77..bbe118c50 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/interface.json +++ b/src/main/resources/assets/refinedstorage/blockstates/interface.json @@ -12,25 +12,8 @@ "transform": "forge:default-block" } ], - "direction": { - "north": { - }, - "east": { - }, - "south": { - }, - "west": { - }, - "up": { - }, - "down": { - } - }, - "connected": { - "true": { - }, - "false": { - } + "normal": { + "model": "cube_all" } } } \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/blockstates/machine_casing.json b/src/main/resources/assets/refinedstorage/blockstates/machine_casing.json index 00c5b91bd..6bb002548 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/machine_casing.json +++ b/src/main/resources/assets/refinedstorage/blockstates/machine_casing.json @@ -12,19 +12,8 @@ "transform": "forge:default-block" } ], - "direction": { - "north": { - }, - "east": { - }, - "south": { - }, - "west": { - }, - "up": { - }, - "down": { - } + "normal": { + "model": "cube_all" } } } \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/blockstates/processing_pattern_encoder.json b/src/main/resources/assets/refinedstorage/blockstates/processing_pattern_encoder.json index 706d18e00..a3c98690b 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/processing_pattern_encoder.json +++ b/src/main/resources/assets/refinedstorage/blockstates/processing_pattern_encoder.json @@ -1,11 +1,15 @@ { "forge_marker": 1, "defaults": { - "model": "orientable", + "model": "cube", "textures": { - "side": "refinedstorage:blocks/side", - "top": "refinedstorage:blocks/processing_pattern_encoder", - "front": "refinedstorage:blocks/side" + "particle": "refinedstorage:blocks/processing_pattern_encoder", + "down": "refinedstorage:blocks/side", + "up": "refinedstorage:blocks/processing_pattern_encoder", + "north": "refinedstorage:blocks/processing_pattern_encoder_side", + "east": "refinedstorage:blocks/processing_pattern_encoder_side", + "south": "refinedstorage:blocks/processing_pattern_encoder_side", + "west": "refinedstorage:blocks/processing_pattern_encoder_side" } }, "variants": { @@ -15,25 +19,8 @@ "y": 0 } ], - "direction": { - "north": { - "y": 0 - }, - "east": { - "y": 90 - }, - "south": { - "y": 180 - }, - "west": { - "y": 270 - }, - "up": { - "x": 270 - }, - "down": { - "x": 90 - } + "normal": { + "model": "cube" } } } \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/blockstates/quartz_enriched_iron_block.json b/src/main/resources/assets/refinedstorage/blockstates/quartz_enriched_iron_block.json deleted file mode 100755 index fef72be24..000000000 --- a/src/main/resources/assets/refinedstorage/blockstates/quartz_enriched_iron_block.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "cube_all", - "textures": { - "all": "refinedstorage:blocks/quartz_enriched_iron_block" - } - }, - "variants": { - "inventory": [ - { - "transform": "forge:default-block" - } - ], - "direction": { - "north": { - }, - "east": { - }, - "south": { - }, - "west": { - }, - "up": { - }, - "down": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/blockstates/relay.json b/src/main/resources/assets/refinedstorage/blockstates/relay.json index 6971c38ea..93857548a 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/relay.json +++ b/src/main/resources/assets/refinedstorage/blockstates/relay.json @@ -12,20 +12,6 @@ "transform": "forge:default-block" } ], - "direction": { - "north": { - }, - "east": { - }, - "south": { - }, - "west": { - }, - "up": { - }, - "down": { - } - }, "connected": { "true": { "textures": { diff --git a/src/main/resources/assets/refinedstorage/blockstates/solderer.json b/src/main/resources/assets/refinedstorage/blockstates/solderer.json index ef1df4fd1..6009430ca 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/solderer.json +++ b/src/main/resources/assets/refinedstorage/blockstates/solderer.json @@ -1,54 +1,30 @@ { "forge_marker": 1, "defaults": { - "model": "orientable", "textures": { - "side": "refinedstorage:blocks/side", - "top": "refinedstorage:blocks/side", - "front": "refinedstorage:blocks/solderer" - } + "particle": "refinedstorage:blocks/side_borderless", + "3": "refinedstorage:blocks/solderer_laser", + "4": "refinedstorage:blocks/solderer_laser" + }, + "model": "refinedstorage:solderer", + "uvlock": true }, "variants": { "inventory": [ { - "y": 0, + "model": "refinedstorage:solderer", "transform": "forge:default-block" } ], - "connected": { - "true": { - }, - "false": { - } - }, "working": { "true": { "textures": { - "front": "refinedstorage:blocks/solderer_working" + "3": "refinedstorage:blocks/solderer_laser_working", + "4": "refinedstorage:blocks/solderer_laser_working" } }, "false": { } - }, - "direction": { - "north": { - "y": 0 - }, - "east": { - "y": 90 - }, - "south": { - "y": 180 - }, - "west": { - "y": 270 - }, - "up": { - "x": 270 - }, - "down": { - "x": 90 - } } } } \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/blockstates/wireless_transmitter.json b/src/main/resources/assets/refinedstorage/blockstates/wireless_transmitter.json index da440692b..80c34a129 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/wireless_transmitter.json +++ b/src/main/resources/assets/refinedstorage/blockstates/wireless_transmitter.json @@ -1,52 +1,24 @@ { "forge_marker": 1, "defaults": { - "model": "orientable", + "model": "torch", "textures": { - "side": "refinedstorage:blocks/side", - "top": "refinedstorage:blocks/side" + "torch": "refinedstorage:blocks/wireless_transmitter_disconnected" } }, "variants": { "inventory": [ { - "textures": { - "front": "refinedstorage:blocks/wireless_transmitter_disconnected" - }, - "transform": "forge:default-block", - "y": 0 + "transform": "forge:default-block" } ], "connected": { "true": { "textures": { - "front": "refinedstorage:blocks/wireless_transmitter_connected" + "torch": "refinedstorage:blocks/wireless_transmitter_connected" } }, "false": { - "textures": { - "front": "refinedstorage:blocks/wireless_transmitter_disconnected" - } - } - }, - "direction": { - "north": { - "y": 0 - }, - "east": { - "y": 90 - }, - "south": { - "y": 180 - }, - "west": { - "y": 270 - }, - "up": { - "x": 270 - }, - "down": { - "x": 90 } } } diff --git a/src/main/resources/assets/refinedstorage/lang/en_US.lang b/src/main/resources/assets/refinedstorage/lang/en_US.lang index bac579909..4b0efcd39 100755 --- a/src/main/resources/assets/refinedstorage/lang/en_US.lang +++ b/src/main/resources/assets/refinedstorage/lang/en_US.lang @@ -110,7 +110,6 @@ block.refinedstorage:crafting_monitor.name=Crafting Monitor block.refinedstorage:wireless_transmitter.name=Wireless Transmitter block.refinedstorage:crafter.name=Crafter block.refinedstorage:processing_pattern_encoder.name=Processing Pattern Encoder -block.refinedstorage:quartz_enriched_iron_block.name=Quartz Enriched Iron Block item.refinedstorage:storage_disk.0.name=1k Storage Disk item.refinedstorage:storage_disk.1.name=4k Storage Disk diff --git a/src/main/resources/assets/refinedstorage/lang/fr_FR.lang b/src/main/resources/assets/refinedstorage/lang/fr_FR.lang index 71f403792..87d64dc37 100755 --- a/src/main/resources/assets/refinedstorage/lang/fr_FR.lang +++ b/src/main/resources/assets/refinedstorage/lang/fr_FR.lang @@ -110,7 +110,6 @@ block.refinedstorage:crafting_monitor.name=Moniteur de Craft block.refinedstorage:wireless_transmitter.name=Transmetteur sans Fil block.refinedstorage:crafter.name=Crafteur block.refinedstorage:processing_pattern_encoder.name=Encodeur de Modèle de Traitement -block.refinedstorage:quartz_enriched_iron_block.name=Fer Enrichi de Quartz Bloc item.refinedstorage:storage_disk.0.name=Disque de Stockage de 1k item.refinedstorage:storage_disk.1.name=Disque de Stockage de 4k diff --git a/src/main/resources/assets/refinedstorage/lang/nl_NL.lang b/src/main/resources/assets/refinedstorage/lang/nl_NL.lang index 8aa9c3f09..fe838210b 100755 --- a/src/main/resources/assets/refinedstorage/lang/nl_NL.lang +++ b/src/main/resources/assets/refinedstorage/lang/nl_NL.lang @@ -110,7 +110,6 @@ block.refinedstorage:crafting_monitor.name=Crafting Monitor block.refinedstorage:wireless_transmitter.name=Draadloze Zender block.refinedstorage:crafter.name=Crafter block.refinedstorage:processing_pattern_encoder.name=Verwerkingspatroon Codeerder -block.refinedstorage:quartz_enriched_iron_block.name=Quartz Verrijkte IJzerblok item.refinedstorage:storage_disk.0.name=1k Opslagschijf item.refinedstorage:storage_disk.1.name=4k Opslagschijf diff --git a/src/main/resources/assets/refinedstorage/lang/pt_BR.lang b/src/main/resources/assets/refinedstorage/lang/pt_BR.lang index 7b4b79c0c..7aaece026 100755 --- a/src/main/resources/assets/refinedstorage/lang/pt_BR.lang +++ b/src/main/resources/assets/refinedstorage/lang/pt_BR.lang @@ -110,7 +110,6 @@ block.refinedstorage:crafting_monitor.name=Monitor de Fabricação block.refinedstorage:wireless_transmitter.name=Transmissor Sem Fio block.refinedstorage:crafter.name=Fabricador block.refinedstorage:processing_pattern_encoder.name=Codificador de Padrão de Processamento -block.refinedstorage:quartz_enriched_iron_block.name=Bloco de Ferro Enriquecido com Quartzo item.refinedstorage:storage_disk.0.name=Disco de Armazenamento 1k item.refinedstorage:storage_disk.1.name=Disco de Armazenamento 4k diff --git a/src/main/resources/assets/refinedstorage/models/block/detector.json b/src/main/resources/assets/refinedstorage/models/block/detector.json new file mode 100755 index 000000000..920834e59 --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/detector.json @@ -0,0 +1,176 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + "0": "refinedstorage:blocks/side" + }, + "elements": [ + { + "from": [ + 7, + 0, + 7 + ], + "to": [ + 9, + 10, + 9 + ], + "shade": false, + "faces": { + "down": { + "uv": [ + 7, + 13, + 9, + 15 + ], + "texture": "#torch" + }, + "up": { + "uv": [ + 7, + 6, + 9, + 8 + ], + "texture": "#torch" + } + } + }, + { + "from": [ + 7, + 0, + 0 + ], + "to": [ + 9, + 16, + 16 + ], + "shade": false, + "faces": { + "west": { + "uv": [ + 0, + 0, + 16, + 16 + ], + "texture": "#torch" + }, + "east": { + "uv": [ + 0, + 0, + 16, + 16 + ], + "texture": "#torch" + } + } + }, + { + "from": [ + 0, + 0, + 7 + ], + "to": [ + 16, + 16, + 9 + ], + "shade": false, + "faces": { + "north": { + "uv": [ + 0, + 0, + 16, + 16 + ], + "texture": "#torch" + }, + "south": { + "uv": [ + 0, + 0, + 16, + 16 + ], + "texture": "#torch" + } + } + }, + { + "name": "base", + "from": [ + 0.0, + 0.0, + 0.0 + ], + "to": [ + 16.0, + 4.0, + 16.0 + ], + "faces": { + "north": { + "texture": "#0", + "uv": [ + 0.0, + 12.0, + 16.0, + 16.0 + ] + }, + "east": { + "texture": "#0", + "uv": [ + 0.0, + 12.0, + 16.0, + 16.0 + ] + }, + "south": { + "texture": "#0", + "uv": [ + 0.0, + 12.0, + 16.0, + 16.0 + ] + }, + "west": { + "texture": "#0", + "uv": [ + 0.0, + 12.0, + 16.0, + 16.0 + ] + }, + "up": { + "texture": "#0", + "uv": [ + 0.0, + 0.0, + 16.0, + 16.0 + ] + }, + "down": { + "texture": "#0", + "uv": [ + 0.0, + 0.0, + 16.0, + 16.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/exporter.json b/src/main/resources/assets/refinedstorage/models/block/exporter.json new file mode 100755 index 000000000..59961643f --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/exporter.json @@ -0,0 +1,419 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "elements": [ + { + "name": "Line1", + "from": [ + 6.0, + 6.0, + 0.0 + ], + "to": [ + 10.0, + 10.0, + 2.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 5.0, + 5.0, + 2.0 + ], + "to": [ + 11.0, + 11.0, + 4.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + } + } + }, + { + "name": "Line3", + "from": [ + 3.0, + 3.0, + 4.0 + ], + "to": [ + 13.0, + 13.0, + 6.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + } + } + }, + { + "name": "Core", + "from": [ + 6.0, + 6.0, + 6.0 + ], + "to": [ + 10.0, + 10.0, + 10.0 + ], + "faces": { + "north": { + "texture": "#all", + "uv": [ + 4.0, + 4.0, + 8.0, + 8.0 + ] + }, + "east": { + "texture": "#all", + "uv": [ + 0.0, + 4.0, + 4.0, + 8.0 + ] + }, + "south": { + "texture": "#all", + "uv": [ + 12.0, + 4.0, + 16.0, + 8.0 + ] + }, + "west": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 12.0, + 8.0 + ] + }, + "up": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 4.0, + 0.0 + ] + }, + "down": { + "texture": "#all", + "uv": [ + 12.0, + 0.0, + 8.0, + 4.0 + ] + } + } + }, + { + "name": "East", + "from": [ + 10.0, + 6.0, + 6.0 + ], + "to": [ + 16.0, + 10.0, + 10.0 + ], + "faces": { + "north": { + "texture": "#all", + "uv": [ + 4.0, + 4.0, + 8.0, + 8.0 + ] + }, + "east": { + "texture": "#all", + "uv": [ + 0.0, + 4.0, + 4.0, + 8.0 + ] + }, + "south": { + "texture": "#all", + "uv": [ + 12.0, + 4.0, + 16.0, + 8.0 + ] + }, + "west": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 12.0, + 8.0 + ] + }, + "up": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 4.0, + 0.0 + ] + }, + "down": { + "texture": "#all", + "uv": [ + 12.0, + 0.0, + 8.0, + 4.0 + ] + } + } + }, + { + "name": "West", + "from": [ + 0.0, + 6.0, + 6.0 + ], + "to": [ + 6.0, + 10.0, + 10.0 + ], + "faces": { + "north": { + "texture": "#all", + "uv": [ + 4.0, + 4.0, + 8.0, + 8.0 + ] + }, + "east": { + "texture": "#all", + "uv": [ + 0.0, + 4.0, + 4.0, + 8.0 + ] + }, + "south": { + "texture": "#all", + "uv": [ + 12.0, + 4.0, + 16.0, + 8.0 + ] + }, + "west": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 12.0, + 8.0 + ] + }, + "up": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 4.0, + 0.0 + ] + }, + "down": { + "texture": "#all", + "uv": [ + 12.0, + 0.0, + 8.0, + 4.0 + ] + } + } + } + ] +} diff --git a/src/main/resources/assets/refinedstorage/models/block/exporter_down.json b/src/main/resources/assets/refinedstorage/models/block/exporter_down.json new file mode 100755 index 000000000..05555347b --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/exporter_down.json @@ -0,0 +1,214 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 6.0, + 0.0, + 6.0 + ], + "to": [ + 10.0, + 2.0, + 10.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 5.0, + 2.0, + 5.0 + ], + "to": [ + 11.0, + 4.0, + 11.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + } + } + }, + { + "name": "Line3", + "from": [ + 3.0, + 4.0, + 3.0 + ], + "to": [ + 13.0, + 6.0, + 13.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/exporter_east.json b/src/main/resources/assets/refinedstorage/models/block/exporter_east.json new file mode 100755 index 000000000..61b89b7bf --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/exporter_east.json @@ -0,0 +1,214 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 14.0, + 6.0, + 6.0 + ], + "to": [ + 16.0, + 10.0, + 10.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 12.0, + 5.0, + 5.0 + ], + "to": [ + 14.0, + 11.0, + 11.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + } + } + }, + { + "name": "Line3", + "from": [ + 10.0, + 3.0, + 3.0 + ], + "to": [ + 12.0, + 13.0, + 13.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/exporter_north.json b/src/main/resources/assets/refinedstorage/models/block/exporter_north.json new file mode 100755 index 000000000..88ad85d27 --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/exporter_north.json @@ -0,0 +1,214 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 6.0, + 6.0, + 0.0 + ], + "to": [ + 10.0, + 10.0, + 2.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 5.0, + 5.0, + 2.0 + ], + "to": [ + 11.0, + 11.0, + 4.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + } + } + }, + { + "name": "Line3", + "from": [ + 3.0, + 3.0, + 4.0 + ], + "to": [ + 13.0, + 13.0, + 6.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/exporter_south.json b/src/main/resources/assets/refinedstorage/models/block/exporter_south.json new file mode 100755 index 000000000..6863b4cd4 --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/exporter_south.json @@ -0,0 +1,214 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 6.0, + 6.0, + 14.0 + ], + "to": [ + 10.0, + 10.0, + 16.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 5.0, + 5.0, + 12.0 + ], + "to": [ + 11.0, + 11.0, + 14.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + } + } + }, + { + "name": "Line3", + "from": [ + 3.0, + 3.0, + 10.0 + ], + "to": [ + 13.0, + 13.0, + 12.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/exporter_up.json b/src/main/resources/assets/refinedstorage/models/block/exporter_up.json new file mode 100755 index 000000000..754316fc9 --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/exporter_up.json @@ -0,0 +1,214 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 6.0, + 14.0, + 6.0 + ], + "to": [ + 10.0, + 16.0, + 10.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 5.0, + 12.0, + 5.0 + ], + "to": [ + 11.0, + 14.0, + 11.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + } + } + }, + { + "name": "Line3", + "from": [ + 3.0, + 10.0, + 3.0 + ], + "to": [ + 13.0, + 12.0, + 13.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/exporter_west.json b/src/main/resources/assets/refinedstorage/models/block/exporter_west.json new file mode 100755 index 000000000..73c706393 --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/exporter_west.json @@ -0,0 +1,214 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 0.0, + 6.0, + 6.0 + ], + "to": [ + 2.0, + 10.0, + 10.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 2.0, + 5.0, + 5.0 + ], + "to": [ + 4.0, + 11.0, + 11.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + } + } + }, + { + "name": "Line3", + "from": [ + 4.0, + 3.0, + 3.0 + ], + "to": [ + 6.0, + 13.0, + 13.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/external_storage.json b/src/main/resources/assets/refinedstorage/models/block/external_storage.json new file mode 100755 index 000000000..efc98ae02 --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/external_storage.json @@ -0,0 +1,350 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "elements": [ + { + "name": "Line1", + "from": [ + 7.0, + 7.0, + 2.0 + ], + "to": [ + 9.0, + 9.0, + 6.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 3.0, + 3.0, + 0.0 + ], + "to": [ + 13.0, + 13.0, + 2.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + } + } + }, + { + "name": "Core", + "from": [ + 6.0, + 6.0, + 6.0 + ], + "to": [ + 10.0, + 10.0, + 10.0 + ], + "faces": { + "north": { + "texture": "#all", + "uv": [ + 4.0, + 4.0, + 8.0, + 8.0 + ] + }, + "east": { + "texture": "#all", + "uv": [ + 0.0, + 4.0, + 4.0, + 8.0 + ] + }, + "south": { + "texture": "#all", + "uv": [ + 12.0, + 4.0, + 16.0, + 8.0 + ] + }, + "west": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 12.0, + 8.0 + ] + }, + "up": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 4.0, + 0.0 + ] + }, + "down": { + "texture": "#all", + "uv": [ + 12.0, + 0.0, + 8.0, + 4.0 + ] + } + } + }, + { + "name": "East", + "from": [ + 10.0, + 6.0, + 6.0 + ], + "to": [ + 16.0, + 10.0, + 10.0 + ], + "faces": { + "north": { + "texture": "#all", + "uv": [ + 4.0, + 4.0, + 8.0, + 8.0 + ] + }, + "east": { + "texture": "#all", + "uv": [ + 0.0, + 4.0, + 4.0, + 8.0 + ] + }, + "south": { + "texture": "#all", + "uv": [ + 12.0, + 4.0, + 16.0, + 8.0 + ] + }, + "west": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 12.0, + 8.0 + ] + }, + "up": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 4.0, + 0.0 + ] + }, + "down": { + "texture": "#all", + "uv": [ + 12.0, + 0.0, + 8.0, + 4.0 + ] + } + } + }, + { + "name": "West", + "from": [ + 0.0, + 6.0, + 6.0 + ], + "to": [ + 6.0, + 10.0, + 10.0 + ], + "faces": { + "north": { + "texture": "#all", + "uv": [ + 4.0, + 4.0, + 8.0, + 8.0 + ] + }, + "east": { + "texture": "#all", + "uv": [ + 0.0, + 4.0, + 4.0, + 8.0 + ] + }, + "south": { + "texture": "#all", + "uv": [ + 12.0, + 4.0, + 16.0, + 8.0 + ] + }, + "west": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 12.0, + 8.0 + ] + }, + "up": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 4.0, + 0.0 + ] + }, + "down": { + "texture": "#all", + "uv": [ + 12.0, + 0.0, + 8.0, + 4.0 + ] + } + } + } + ] +} diff --git a/src/main/resources/assets/refinedstorage/models/block/external_storage_down.json b/src/main/resources/assets/refinedstorage/models/block/external_storage_down.json new file mode 100755 index 000000000..d1c17e5c9 --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/external_storage_down.json @@ -0,0 +1,145 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 7.0, + 2.0, + 7.0 + ], + "to": [ + 9.0, + 6.0, + 9.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 3.0, + 0.0, + 3.0 + ], + "to": [ + 13.0, + 2.0, + 13.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/external_storage_east.json b/src/main/resources/assets/refinedstorage/models/block/external_storage_east.json new file mode 100755 index 000000000..cf78c5e9e --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/external_storage_east.json @@ -0,0 +1,145 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 10.0, + 7.0, + 7.0 + ], + "to": [ + 14.0, + 9.0, + 9.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 14.0, + 3.0, + 3.0 + ], + "to": [ + 16.0, + 13.0, + 13.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/external_storage_north.json b/src/main/resources/assets/refinedstorage/models/block/external_storage_north.json new file mode 100755 index 000000000..d1505e33b --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/external_storage_north.json @@ -0,0 +1,145 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 7.0, + 7.0, + 2.0 + ], + "to": [ + 9.0, + 9.0, + 6.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 3.0, + 3.0, + 0.0 + ], + "to": [ + 13.0, + 13.0, + 2.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/external_storage_south.json b/src/main/resources/assets/refinedstorage/models/block/external_storage_south.json new file mode 100755 index 000000000..e39d324f8 --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/external_storage_south.json @@ -0,0 +1,145 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 7.0, + 7.0, + 10.0 + ], + "to": [ + 9.0, + 9.0, + 14.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 3.0, + 3.0, + 14.0 + ], + "to": [ + 13.0, + 13.0, + 16.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/external_storage_up.json b/src/main/resources/assets/refinedstorage/models/block/external_storage_up.json new file mode 100755 index 000000000..dbd8dc2c2 --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/external_storage_up.json @@ -0,0 +1,145 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 7.0, + 10.0, + 7.0 + ], + "to": [ + 9.0, + 14.0, + 9.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 3.0, + 14.0, + 3.0 + ], + "to": [ + 13.0, + 16.0, + 13.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/external_storage_west.json b/src/main/resources/assets/refinedstorage/models/block/external_storage_west.json new file mode 100755 index 000000000..f0915c0f0 --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/external_storage_west.json @@ -0,0 +1,145 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 2.0, + 7.0, + 7.0 + ], + "to": [ + 6.0, + 9.0, + 9.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 0.0, + 3.0, + 3.0 + ], + "to": [ + 2.0, + 13.0, + 13.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/importer.json b/src/main/resources/assets/refinedstorage/models/block/importer.json new file mode 100755 index 000000000..8369750a8 --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/importer.json @@ -0,0 +1,419 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "elements": [ + { + "name": "Line1", + "from": [ + 6.0, + 6.0, + 4.0 + ], + "to": [ + 10.0, + 10.0, + 6.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 5.0, + 5.0, + 2.0 + ], + "to": [ + 11.0, + 11.0, + 4.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 6.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 6.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + } + } + }, + { + "name": "Line3", + "from": [ + 3.0, + 3.0, + 0.0 + ], + "to": [ + 13.0, + 13.0, + 2.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + } + } + }, + { + "name": "Core", + "from": [ + 6.0, + 6.0, + 6.0 + ], + "to": [ + 10.0, + 10.0, + 10.0 + ], + "faces": { + "north": { + "texture": "#all", + "uv": [ + 4.0, + 4.0, + 8.0, + 8.0 + ] + }, + "east": { + "texture": "#all", + "uv": [ + 0.0, + 4.0, + 4.0, + 8.0 + ] + }, + "south": { + "texture": "#all", + "uv": [ + 12.0, + 4.0, + 16.0, + 8.0 + ] + }, + "west": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 12.0, + 8.0 + ] + }, + "up": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 4.0, + 0.0 + ] + }, + "down": { + "texture": "#all", + "uv": [ + 12.0, + 0.0, + 8.0, + 4.0 + ] + } + } + }, + { + "name": "East", + "from": [ + 10.0, + 6.0, + 6.0 + ], + "to": [ + 16.0, + 10.0, + 10.0 + ], + "faces": { + "north": { + "texture": "#all", + "uv": [ + 4.0, + 4.0, + 8.0, + 8.0 + ] + }, + "east": { + "texture": "#all", + "uv": [ + 0.0, + 4.0, + 4.0, + 8.0 + ] + }, + "south": { + "texture": "#all", + "uv": [ + 12.0, + 4.0, + 16.0, + 8.0 + ] + }, + "west": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 12.0, + 8.0 + ] + }, + "up": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 4.0, + 0.0 + ] + }, + "down": { + "texture": "#all", + "uv": [ + 12.0, + 0.0, + 8.0, + 4.0 + ] + } + } + }, + { + "name": "West", + "from": [ + 0.0, + 6.0, + 6.0 + ], + "to": [ + 6.0, + 10.0, + 10.0 + ], + "faces": { + "north": { + "texture": "#all", + "uv": [ + 4.0, + 4.0, + 8.0, + 8.0 + ] + }, + "east": { + "texture": "#all", + "uv": [ + 0.0, + 4.0, + 4.0, + 8.0 + ] + }, + "south": { + "texture": "#all", + "uv": [ + 12.0, + 4.0, + 16.0, + 8.0 + ] + }, + "west": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 12.0, + 8.0 + ] + }, + "up": { + "texture": "#all", + "uv": [ + 8.0, + 4.0, + 4.0, + 0.0 + ] + }, + "down": { + "texture": "#all", + "uv": [ + 12.0, + 0.0, + 8.0, + 4.0 + ] + } + } + } + ] +} diff --git a/src/main/resources/assets/refinedstorage/models/block/importer_down.json b/src/main/resources/assets/refinedstorage/models/block/importer_down.json new file mode 100755 index 000000000..de37d821f --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/importer_down.json @@ -0,0 +1,214 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 6.0, + 4.0, + 6.0 + ], + "to": [ + 10.0, + 6.0, + 10.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 5.0, + 2.0, + 5.0 + ], + "to": [ + 11.0, + 4.0, + 11.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + } + } + }, + { + "name": "Line3", + "from": [ + 3.0, + 0.0, + 3.0 + ], + "to": [ + 13.0, + 2.0, + 13.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/importer_east.json b/src/main/resources/assets/refinedstorage/models/block/importer_east.json new file mode 100755 index 000000000..1db248799 --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/importer_east.json @@ -0,0 +1,214 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 10.0, + 6.0, + 6.0 + ], + "to": [ + 12.0, + 10.0, + 10.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 12.0, + 5.0, + 5.0 + ], + "to": [ + 14.0, + 11.0, + 11.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 6.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 6.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 6.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 6.0 + ] + } + } + }, + { + "name": "Line3", + "from": [ + 14.0, + 3.0, + 3.0 + ], + "to": [ + 16.0, + 13.0, + 13.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/importer_north.json b/src/main/resources/assets/refinedstorage/models/block/importer_north.json new file mode 100755 index 000000000..b1e2236ed --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/importer_north.json @@ -0,0 +1,214 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 6.0, + 6.0, + 4.0 + ], + "to": [ + 10.0, + 10.0, + 6.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 5.0, + 5.0, + 2.0 + ], + "to": [ + 11.0, + 11.0, + 4.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 6.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 6.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + } + } + }, + { + "name": "Line3", + "from": [ + 3.0, + 3.0, + 0.0 + ], + "to": [ + 13.0, + 13.0, + 2.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/importer_south.json b/src/main/resources/assets/refinedstorage/models/block/importer_south.json new file mode 100755 index 000000000..b75805235 --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/importer_south.json @@ -0,0 +1,214 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 6.0, + 6.0, + 10.0 + ], + "to": [ + 10.0, + 10.0, + 12.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 5.0, + 5.0, + 12.0 + ], + "to": [ + 11.0, + 11.0, + 14.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 6.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 6.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + } + } + }, + { + "name": "Line3", + "from": [ + 3.0, + 3.0, + 14.0 + ], + "to": [ + 13.0, + 13.0, + 16.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/importer_up.json b/src/main/resources/assets/refinedstorage/models/block/importer_up.json new file mode 100755 index 000000000..78a01c181 --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/importer_up.json @@ -0,0 +1,214 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 6.0, + 10.0, + 6.0 + ], + "to": [ + 10.0, + 12.0, + 10.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 5.0, + 12.0, + 5.0 + ], + "to": [ + 11.0, + 14.0, + 11.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + } + } + }, + { + "name": "Line3", + "from": [ + 3.0, + 14.0, + 3.0 + ], + "to": [ + 13.0, + 16.0, + 13.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 2.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/importer_west.json b/src/main/resources/assets/refinedstorage/models/block/importer_west.json new file mode 100755 index 000000000..a1640073e --- /dev/null +++ b/src/main/resources/assets/refinedstorage/models/block/importer_west.json @@ -0,0 +1,214 @@ +{ + "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "textures": { + }, + "elements": [ + { + "name": "Line1", + "from": [ + 4.0, + 6.0, + 6.0 + ], + "to": [ + 6.0, + 10.0, + 10.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 4.0, + 4.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 4.0 + ] + } + } + }, + { + "name": "Line2", + "from": [ + 2.0, + 5.0, + 5.0 + ], + "to": [ + 4.0, + 11.0, + 11.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 6.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 6.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 6.0, + 6.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 6.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 6.0 + ] + } + } + }, + { + "name": "Line3", + "from": [ + 0.0, + 3.0, + 3.0 + ], + "to": [ + 2.0, + 13.0, + 13.0 + ], + "faces": { + "north": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "east": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "south": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "west": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 10.0, + 10.0 + ] + }, + "up": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + }, + "down": { + "texture": "#line", + "uv": [ + 0.0, + 0.0, + 2.0, + 10.0 + ] + } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/solderer.json b/src/main/resources/assets/refinedstorage/models/block/solderer.json old mode 100644 new mode 100755 index 5977eec7c..5d84a1218 --- a/src/main/resources/assets/refinedstorage/models/block/solderer.json +++ b/src/main/resources/assets/refinedstorage/models/block/solderer.json @@ -1,11 +1,9 @@ { "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "textures": { - "0": "refinedstorage:blocks/quartz_enriched_iron_block.pngquartz_enriched_iron_block", - "1": "refinedstorage:blocks/side.pngside", - "2": "blocks/quartz_enriched_iron_block", - "3": "blocks/redstone_block.pngredstone_block", - "4": "blocks/redstone_block" + "0": "refinedstorage:blocks/side", + "1": "refinedstorage:blocks/side", + "2": "refinedstorage:blocks/side_borderless" }, "elements": [ { diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/16k_storage_block.png b/src/main/resources/assets/refinedstorage/textures/blocks/16k_storage_block.png index 3349e82b2..8ff144587 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/16k_storage_block.png and b/src/main/resources/assets/refinedstorage/textures/blocks/16k_storage_block.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/1k_storage_block.png b/src/main/resources/assets/refinedstorage/textures/blocks/1k_storage_block.png index f3fce9a15..f2fa1ec83 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/1k_storage_block.png and b/src/main/resources/assets/refinedstorage/textures/blocks/1k_storage_block.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/4k_storage_block.png b/src/main/resources/assets/refinedstorage/textures/blocks/4k_storage_block.png index 287b2d63f..8a77c23ae 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/4k_storage_block.png and b/src/main/resources/assets/refinedstorage/textures/blocks/4k_storage_block.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/64k_storage_block.png b/src/main/resources/assets/refinedstorage/textures/blocks/64k_storage_block.png index e7136c7b8..9e41d73a7 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/64k_storage_block.png and b/src/main/resources/assets/refinedstorage/textures/blocks/64k_storage_block.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/cable.png b/src/main/resources/assets/refinedstorage/textures/blocks/cable.png index 123ad41e2..bd28f0ac4 100644 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/cable.png and b/src/main/resources/assets/refinedstorage/textures/blocks/cable.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/constructor.png b/src/main/resources/assets/refinedstorage/textures/blocks/constructor.png index 633c4f6d3..77a8932c5 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/constructor.png and b/src/main/resources/assets/refinedstorage/textures/blocks/constructor.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/controller_0.png b/src/main/resources/assets/refinedstorage/textures/blocks/controller_0.png index 6326694bc..d51bea7e9 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/controller_0.png and b/src/main/resources/assets/refinedstorage/textures/blocks/controller_0.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/controller_1.png b/src/main/resources/assets/refinedstorage/textures/blocks/controller_1.png index dc40db41b..c4049f7c0 100644 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/controller_1.png and b/src/main/resources/assets/refinedstorage/textures/blocks/controller_1.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/controller_2.png b/src/main/resources/assets/refinedstorage/textures/blocks/controller_2.png index 2b272658b..7f89eb51c 100644 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/controller_2.png and b/src/main/resources/assets/refinedstorage/textures/blocks/controller_2.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/controller_3.png b/src/main/resources/assets/refinedstorage/textures/blocks/controller_3.png index a9d310c12..9006af00e 100644 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/controller_3.png and b/src/main/resources/assets/refinedstorage/textures/blocks/controller_3.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/controller_4.png b/src/main/resources/assets/refinedstorage/textures/blocks/controller_4.png index f138e3c8b..af95a9f02 100644 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/controller_4.png and b/src/main/resources/assets/refinedstorage/textures/blocks/controller_4.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/controller_5.png b/src/main/resources/assets/refinedstorage/textures/blocks/controller_5.png index be1b37459..65418c597 100644 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/controller_5.png and b/src/main/resources/assets/refinedstorage/textures/blocks/controller_5.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/controller_6.png b/src/main/resources/assets/refinedstorage/textures/blocks/controller_6.png index 0581bb16e..99770062a 100644 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/controller_6.png and b/src/main/resources/assets/refinedstorage/textures/blocks/controller_6.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/controller_7.png b/src/main/resources/assets/refinedstorage/textures/blocks/controller_7.png index be02bc542..7e798a96e 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/controller_7.png and b/src/main/resources/assets/refinedstorage/textures/blocks/controller_7.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/controller_8.png b/src/main/resources/assets/refinedstorage/textures/blocks/controller_8.png deleted file mode 100755 index 026dc3183..000000000 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/controller_8.png and /dev/null differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/crafter_connected.png b/src/main/resources/assets/refinedstorage/textures/blocks/crafter_connected.png index dfbb17253..e3a6efd07 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/crafter_connected.png and b/src/main/resources/assets/refinedstorage/textures/blocks/crafter_connected.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/crafter_disconnected.png b/src/main/resources/assets/refinedstorage/textures/blocks/crafter_disconnected.png index 6e61a7b46..8fdad8afb 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/crafter_disconnected.png and b/src/main/resources/assets/refinedstorage/textures/blocks/crafter_disconnected.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/crafting_monitor.png b/src/main/resources/assets/refinedstorage/textures/blocks/crafting_monitor.png new file mode 100755 index 000000000..0d5423992 Binary files /dev/null and b/src/main/resources/assets/refinedstorage/textures/blocks/crafting_monitor.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/crafting_monitor_connected.png b/src/main/resources/assets/refinedstorage/textures/blocks/crafting_monitor_connected.png deleted file mode 100644 index 97fd64127..000000000 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/crafting_monitor_connected.png and /dev/null differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/crafting_monitor_disconnected.png b/src/main/resources/assets/refinedstorage/textures/blocks/crafting_monitor_disconnected.png deleted file mode 100644 index 47726405b..000000000 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/crafting_monitor_disconnected.png and /dev/null differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/creative_storage_block.png b/src/main/resources/assets/refinedstorage/textures/blocks/creative_storage_block.png index 954e5f1d3..96c077edf 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/creative_storage_block.png and b/src/main/resources/assets/refinedstorage/textures/blocks/creative_storage_block.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/destructor.png b/src/main/resources/assets/refinedstorage/textures/blocks/destructor.png index 966e61a91..b53384008 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/destructor.png and b/src/main/resources/assets/refinedstorage/textures/blocks/destructor.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/detector_powered.png b/src/main/resources/assets/refinedstorage/textures/blocks/detector_powered.png deleted file mode 100755 index 7625d1989..000000000 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/detector_powered.png and /dev/null differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/detector_unpowered.png b/src/main/resources/assets/refinedstorage/textures/blocks/detector_unpowered.png deleted file mode 100755 index e6c6452bd..000000000 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/detector_unpowered.png and /dev/null differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_0.png b/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_0.png index 157bbd049..a302984bb 100644 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_0.png and b/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_0.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_1.png b/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_1.png index 8282a19ec..a3d2901f9 100644 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_1.png and b/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_1.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_2.png b/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_2.png index bb95653c4..808a22f69 100644 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_2.png and b/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_2.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_3.png b/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_3.png index 4766d0b5b..6aaa339a2 100644 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_3.png and b/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_3.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_4.png b/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_4.png index 4e6c95b51..df441e13e 100644 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_4.png and b/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_4.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_5.png b/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_5.png index 4a54a9a95..c8b381a41 100644 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_5.png and b/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_5.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_6.png b/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_6.png index 69c4e0ebe..5a8112645 100644 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_6.png and b/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_6.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_7.png b/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_7.png index a4826431d..5a04aafdb 100644 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_7.png and b/src/main/resources/assets/refinedstorage/textures/blocks/disk_drive_7.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/exporter.png b/src/main/resources/assets/refinedstorage/textures/blocks/exporter.png deleted file mode 100644 index 1dce03344..000000000 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/exporter.png and /dev/null differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/external_storage.png b/src/main/resources/assets/refinedstorage/textures/blocks/external_storage.png deleted file mode 100644 index 4e20b443f..000000000 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/external_storage.png and /dev/null differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/grid.png b/src/main/resources/assets/refinedstorage/textures/blocks/grid.png new file mode 100644 index 000000000..b6dbbd026 Binary files /dev/null and b/src/main/resources/assets/refinedstorage/textures/blocks/grid.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/grid_connected.png b/src/main/resources/assets/refinedstorage/textures/blocks/grid_connected.png deleted file mode 100644 index 6bdf7cb7c..000000000 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/grid_connected.png and /dev/null differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/grid_disconnected.png b/src/main/resources/assets/refinedstorage/textures/blocks/grid_disconnected.png deleted file mode 100644 index 1dfb3e6a1..000000000 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/grid_disconnected.png and /dev/null differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/importer.png b/src/main/resources/assets/refinedstorage/textures/blocks/importer.png deleted file mode 100644 index d868b6e9e..000000000 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/importer.png and /dev/null differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/importer_exporter_external_storage.png b/src/main/resources/assets/refinedstorage/textures/blocks/importer_exporter_external_storage.png new file mode 100644 index 000000000..a0c07decf Binary files /dev/null and b/src/main/resources/assets/refinedstorage/textures/blocks/importer_exporter_external_storage.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/interface.png b/src/main/resources/assets/refinedstorage/textures/blocks/interface.png index f1eb74b71..ba08d5f5c 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/interface.png and b/src/main/resources/assets/refinedstorage/textures/blocks/interface.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/processing_pattern_encoder.png b/src/main/resources/assets/refinedstorage/textures/blocks/processing_pattern_encoder.png index aa522deae..540cfc314 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/processing_pattern_encoder.png and b/src/main/resources/assets/refinedstorage/textures/blocks/processing_pattern_encoder.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/processing_pattern_encoder_side.png b/src/main/resources/assets/refinedstorage/textures/blocks/processing_pattern_encoder_side.png new file mode 100755 index 000000000..7876508cf Binary files /dev/null and b/src/main/resources/assets/refinedstorage/textures/blocks/processing_pattern_encoder_side.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/quartz_enriched_iron_block.png b/src/main/resources/assets/refinedstorage/textures/blocks/quartz_enriched_iron_block.png deleted file mode 100644 index 39b0dc326..000000000 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/quartz_enriched_iron_block.png and /dev/null differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/relay_connected.png b/src/main/resources/assets/refinedstorage/textures/blocks/relay_connected.png index 9c0456f61..48f3bf8d7 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/relay_connected.png and b/src/main/resources/assets/refinedstorage/textures/blocks/relay_connected.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/relay_disconnected.png b/src/main/resources/assets/refinedstorage/textures/blocks/relay_disconnected.png index ad284051d..4a56b7cae 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/relay_disconnected.png and b/src/main/resources/assets/refinedstorage/textures/blocks/relay_disconnected.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/side.png b/src/main/resources/assets/refinedstorage/textures/blocks/side.png index 70d85da04..f6e70dd20 100644 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/side.png and b/src/main/resources/assets/refinedstorage/textures/blocks/side.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/side_borderless.png b/src/main/resources/assets/refinedstorage/textures/blocks/side_borderless.png new file mode 100755 index 000000000..5dd7d7719 Binary files /dev/null and b/src/main/resources/assets/refinedstorage/textures/blocks/side_borderless.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/solderer.png b/src/main/resources/assets/refinedstorage/textures/blocks/solderer.png deleted file mode 100755 index db73a6206..000000000 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/solderer.png and /dev/null differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/solderer_laser.png b/src/main/resources/assets/refinedstorage/textures/blocks/solderer_laser.png new file mode 100755 index 000000000..d7c097f6f Binary files /dev/null and b/src/main/resources/assets/refinedstorage/textures/blocks/solderer_laser.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/solderer_laser_working.png b/src/main/resources/assets/refinedstorage/textures/blocks/solderer_laser_working.png new file mode 100755 index 000000000..7d7a0a151 Binary files /dev/null and b/src/main/resources/assets/refinedstorage/textures/blocks/solderer_laser_working.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/solderer_working.png b/src/main/resources/assets/refinedstorage/textures/blocks/solderer_working.png deleted file mode 100755 index f088b9cc2..000000000 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/solderer_working.png and /dev/null differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/wireless_transmitter_connected.png b/src/main/resources/assets/refinedstorage/textures/blocks/wireless_transmitter_connected.png index b16d7514e..793945e55 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/wireless_transmitter_connected.png and b/src/main/resources/assets/refinedstorage/textures/blocks/wireless_transmitter_connected.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/wireless_transmitter_disconnected.png b/src/main/resources/assets/refinedstorage/textures/blocks/wireless_transmitter_disconnected.png index 21b25bcf7..44f8f0027 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/blocks/wireless_transmitter_disconnected.png and b/src/main/resources/assets/refinedstorage/textures/blocks/wireless_transmitter_disconnected.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/gui/detector.png b/src/main/resources/assets/refinedstorage/textures/gui/detector.png old mode 100644 new mode 100755 diff --git a/src/main/resources/assets/refinedstorage/textures/items/16k_storage_disk.png b/src/main/resources/assets/refinedstorage/textures/items/16k_storage_disk.png index efb0e4ba0..a9aa58bd9 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/16k_storage_disk.png and b/src/main/resources/assets/refinedstorage/textures/items/16k_storage_disk.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/16k_storage_part.png b/src/main/resources/assets/refinedstorage/textures/items/16k_storage_part.png index 943560600..6e1dc29b7 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/16k_storage_part.png and b/src/main/resources/assets/refinedstorage/textures/items/16k_storage_part.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/1k_storage_disk.png b/src/main/resources/assets/refinedstorage/textures/items/1k_storage_disk.png index b8b732a28..ee912463a 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/1k_storage_disk.png and b/src/main/resources/assets/refinedstorage/textures/items/1k_storage_disk.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/1k_storage_part.png b/src/main/resources/assets/refinedstorage/textures/items/1k_storage_part.png index b7f942c3b..6174d3413 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/1k_storage_part.png and b/src/main/resources/assets/refinedstorage/textures/items/1k_storage_part.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/4k_storage_disk.png b/src/main/resources/assets/refinedstorage/textures/items/4k_storage_disk.png index 3db0e473f..cd312ae75 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/4k_storage_disk.png and b/src/main/resources/assets/refinedstorage/textures/items/4k_storage_disk.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/4k_storage_part.png b/src/main/resources/assets/refinedstorage/textures/items/4k_storage_part.png index 1350ca28b..1e23c7dee 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/4k_storage_part.png and b/src/main/resources/assets/refinedstorage/textures/items/4k_storage_part.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/64k_storage_disk.png b/src/main/resources/assets/refinedstorage/textures/items/64k_storage_disk.png index 05c07e2cd..66d064de0 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/64k_storage_disk.png and b/src/main/resources/assets/refinedstorage/textures/items/64k_storage_disk.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/64k_storage_part.png b/src/main/resources/assets/refinedstorage/textures/items/64k_storage_part.png index 6bdf0db68..50d392b51 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/64k_storage_part.png and b/src/main/resources/assets/refinedstorage/textures/items/64k_storage_part.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/advanced_printed_processor.png b/src/main/resources/assets/refinedstorage/textures/items/advanced_printed_processor.png index cea47f5d1..f22e5945d 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/advanced_printed_processor.png and b/src/main/resources/assets/refinedstorage/textures/items/advanced_printed_processor.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/advanced_processor.png b/src/main/resources/assets/refinedstorage/textures/items/advanced_processor.png index 92b8688d9..6ddce529a 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/advanced_processor.png and b/src/main/resources/assets/refinedstorage/textures/items/advanced_processor.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/basic_printed_processor.png b/src/main/resources/assets/refinedstorage/textures/items/basic_printed_processor.png index 09636faaa..4591f0289 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/basic_printed_processor.png and b/src/main/resources/assets/refinedstorage/textures/items/basic_printed_processor.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/basic_processor.png b/src/main/resources/assets/refinedstorage/textures/items/basic_processor.png index 6a5ec3f50..41d9784c3 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/basic_processor.png and b/src/main/resources/assets/refinedstorage/textures/items/basic_processor.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/construction_core.png b/src/main/resources/assets/refinedstorage/textures/items/construction_core.png index 8b2b6974d..dea53d83a 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/construction_core.png and b/src/main/resources/assets/refinedstorage/textures/items/construction_core.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/crafting_upgrade.png b/src/main/resources/assets/refinedstorage/textures/items/crafting_upgrade.png index c1a269bb0..93cf8f7b8 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/crafting_upgrade.png and b/src/main/resources/assets/refinedstorage/textures/items/crafting_upgrade.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/creative_storage_disk.png b/src/main/resources/assets/refinedstorage/textures/items/creative_storage_disk.png index 3e50b7ec2..870c48ab4 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/creative_storage_disk.png and b/src/main/resources/assets/refinedstorage/textures/items/creative_storage_disk.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/debug_storage_disk.png b/src/main/resources/assets/refinedstorage/textures/items/debug_storage_disk.png deleted file mode 100755 index b3b3eefbc..000000000 Binary files a/src/main/resources/assets/refinedstorage/textures/items/debug_storage_disk.png and /dev/null differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/destruction_core.png b/src/main/resources/assets/refinedstorage/textures/items/destruction_core.png index c3e9635d4..16af3013a 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/destruction_core.png and b/src/main/resources/assets/refinedstorage/textures/items/destruction_core.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/improved_printed_processor.png b/src/main/resources/assets/refinedstorage/textures/items/improved_printed_processor.png index 2442ceafe..6bf3586dc 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/improved_printed_processor.png and b/src/main/resources/assets/refinedstorage/textures/items/improved_printed_processor.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/improved_processor.png b/src/main/resources/assets/refinedstorage/textures/items/improved_processor.png index a21526f3d..488a3228d 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/improved_processor.png and b/src/main/resources/assets/refinedstorage/textures/items/improved_processor.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/pattern.png b/src/main/resources/assets/refinedstorage/textures/items/pattern.png index 98129707b..e4c5d8ba0 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/pattern.png and b/src/main/resources/assets/refinedstorage/textures/items/pattern.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/printed_silicon.png b/src/main/resources/assets/refinedstorage/textures/items/printed_silicon.png index 9b02997e8..b1c09018f 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/printed_silicon.png and b/src/main/resources/assets/refinedstorage/textures/items/printed_silicon.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/range_upgrade.png b/src/main/resources/assets/refinedstorage/textures/items/range_upgrade.png index d55910b20..d538d5475 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/range_upgrade.png and b/src/main/resources/assets/refinedstorage/textures/items/range_upgrade.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/silicon.png b/src/main/resources/assets/refinedstorage/textures/items/silicon.png index 89cdf136c..c5f837dc7 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/silicon.png and b/src/main/resources/assets/refinedstorage/textures/items/silicon.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/speed_upgrade.png b/src/main/resources/assets/refinedstorage/textures/items/speed_upgrade.png index cb9b18fde..b0a0dc690 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/speed_upgrade.png and b/src/main/resources/assets/refinedstorage/textures/items/speed_upgrade.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/stack_upgrade.png b/src/main/resources/assets/refinedstorage/textures/items/stack_upgrade.png index bb5e48847..78e4d461f 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/stack_upgrade.png and b/src/main/resources/assets/refinedstorage/textures/items/stack_upgrade.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/storage_housing.png b/src/main/resources/assets/refinedstorage/textures/items/storage_housing.png index 148b2cbc1..5f2f99fee 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/storage_housing.png and b/src/main/resources/assets/refinedstorage/textures/items/storage_housing.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/upgrade.png b/src/main/resources/assets/refinedstorage/textures/items/upgrade.png index c7662f5ee..d2c17551f 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/upgrade.png and b/src/main/resources/assets/refinedstorage/textures/items/upgrade.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/wireless_grid_connected.png b/src/main/resources/assets/refinedstorage/textures/items/wireless_grid_connected.png index f0332e9ea..1359f98fc 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/wireless_grid_connected.png and b/src/main/resources/assets/refinedstorage/textures/items/wireless_grid_connected.png differ diff --git a/src/main/resources/assets/refinedstorage/textures/items/wireless_grid_disconnected.png b/src/main/resources/assets/refinedstorage/textures/items/wireless_grid_disconnected.png index 9f506593c..0659e66a1 100755 Binary files a/src/main/resources/assets/refinedstorage/textures/items/wireless_grid_disconnected.png and b/src/main/resources/assets/refinedstorage/textures/items/wireless_grid_disconnected.png differ diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info index 7eaaafccd..a04dd7f32 100755 --- a/src/main/resources/mcmod.info +++ b/src/main/resources/mcmod.info @@ -3,7 +3,7 @@ "modid": "refinedstorage", "name": "Refined Storage", "description": "A Minecraft mod all about storage.", - "version": "0.8.6", + "version": "0.8.8", "mcversion": "1.10", "url": "", "updateUrl": "",