Model improvements
@@ -1,5 +1,12 @@
|
|||||||
# Refined Storage Changelog
|
# Refined Storage Changelog
|
||||||
|
|
||||||
|
### 0.8.7
|
||||||
|
**Bugfixes**
|
||||||
|
- Improved detector model, add a better hitbox for it
|
||||||
|
- Improved the Wireless Transmitter texture
|
||||||
|
- Made the Solderer beams be bright red when they are working
|
||||||
|
- Added better hitbox for the Solderer
|
||||||
|
|
||||||
### 0.8.6
|
### 0.8.6
|
||||||
**Bugfixes**
|
**Bugfixes**
|
||||||
- Fixed External Storage disconnecting on world reload
|
- Fixed External Storage disconnecting on world reload
|
||||||
|
|||||||
@@ -6,8 +6,10 @@ import net.minecraft.block.state.IBlockState;
|
|||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
|
import net.minecraft.util.BlockRenderLayer;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.EnumHand;
|
import net.minecraft.util.EnumHand;
|
||||||
|
import net.minecraft.util.math.AxisAlignedBB;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.world.IBlockAccess;
|
import net.minecraft.world.IBlockAccess;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
@@ -16,6 +18,8 @@ import refinedstorage.RefinedStorageGui;
|
|||||||
import refinedstorage.tile.TileDetector;
|
import refinedstorage.tile.TileDetector;
|
||||||
|
|
||||||
public class BlockDetector extends BlockNode {
|
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 static final PropertyBool POWERED = PropertyBool.create("powered");
|
||||||
|
|
||||||
public BlockDetector() {
|
public BlockDetector() {
|
||||||
@@ -35,6 +39,11 @@ public class BlockDetector extends BlockNode {
|
|||||||
.withProperty(POWERED, ((TileDetector) world.getTileEntity(pos)).isPowered());
|
.withProperty(POWERED, ((TileDetector) world.getTileEntity(pos)).isPowered());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) {
|
||||||
|
return AABB_DETECTOR;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public TileEntity createTileEntity(World world, IBlockState state) {
|
public TileEntity createTileEntity(World world, IBlockState state) {
|
||||||
return new TileDetector();
|
return new TileDetector();
|
||||||
@@ -74,6 +83,11 @@ public class BlockDetector extends BlockNode {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public BlockRenderLayer getBlockLayer() {
|
||||||
|
return BlockRenderLayer.CUTOUT;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public EnumPlacementType getPlacementType() {
|
public EnumPlacementType getPlacementType() {
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
@@ -8,13 +8,17 @@ import net.minecraft.item.ItemStack;
|
|||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.EnumHand;
|
import net.minecraft.util.EnumHand;
|
||||||
|
import net.minecraft.util.math.AxisAlignedBB;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
|
import net.minecraft.world.IBlockAccess;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import refinedstorage.RefinedStorage;
|
import refinedstorage.RefinedStorage;
|
||||||
import refinedstorage.RefinedStorageGui;
|
import refinedstorage.RefinedStorageGui;
|
||||||
import refinedstorage.tile.TileSolderer;
|
import refinedstorage.tile.TileSolderer;
|
||||||
|
|
||||||
public class BlockSolderer extends BlockNode {
|
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 static final PropertyBool WORKING = PropertyBool.create("working");
|
||||||
|
|
||||||
public BlockSolderer() {
|
public BlockSolderer() {
|
||||||
@@ -35,6 +39,11 @@ public class BlockSolderer extends BlockNode {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) {
|
||||||
|
return AABB_SOLDERER;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected BlockStateContainer createBlockState() {
|
protected BlockStateContainer createBlockState() {
|
||||||
return super.createBlockStateBuilder()
|
return super.createBlockStateBuilder()
|
||||||
@@ -42,6 +51,12 @@ public class BlockSolderer extends BlockNode {
|
|||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState getActualState(IBlockState state, IBlockAccess world, BlockPos pos) {
|
||||||
|
return super.getActualState(state, world, pos)
|
||||||
|
.withProperty(WORKING, ((TileSolderer) world.getTileEntity(pos)).isWorking());
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isOpaqueCube(IBlockState state) {
|
public boolean isOpaqueCube(IBlockState state) {
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -76,6 +76,11 @@ public class BlockWirelessTransmitter extends BlockNode {
|
|||||||
return BlockRenderLayer.CUTOUT;
|
return BlockRenderLayer.CUTOUT;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean hasConnectivityState() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public EnumPlacementType getPlacementType() {
|
public EnumPlacementType getPlacementType() {
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
@@ -102,11 +102,6 @@ public class ClientProxy extends CommonProxy {
|
|||||||
ModelLoader.setCustomModelResourceLocation(RefinedStorageItems.UPGRADE, ItemUpgrade.TYPE_STACK, new ModelResourceLocation("refinedstorage:stack_upgrade", "inventory"));
|
ModelLoader.setCustomModelResourceLocation(RefinedStorageItems.UPGRADE, ItemUpgrade.TYPE_STACK, new ModelResourceLocation("refinedstorage:stack_upgrade", "inventory"));
|
||||||
|
|
||||||
// Blocks
|
// Blocks
|
||||||
ModelLoader.setCustomStateMapper(RefinedStorageBlocks.SOLDERER, (new StateMap.Builder())
|
|
||||||
.ignore(RefinedStorageBlocks.SOLDERER.WORKING)
|
|
||||||
.build()
|
|
||||||
);
|
|
||||||
|
|
||||||
ModelLoader.setCustomStateMapper(RefinedStorageBlocks.GRID, (new StateMap.Builder())
|
ModelLoader.setCustomStateMapper(RefinedStorageBlocks.GRID, (new StateMap.Builder())
|
||||||
.ignore(RefinedStorageBlocks.GRID.TYPE)
|
.ignore(RefinedStorageBlocks.GRID.TYPE)
|
||||||
.build());
|
.build());
|
||||||
|
|||||||
@@ -3,10 +3,9 @@
|
|||||||
"defaults": {
|
"defaults": {
|
||||||
"textures": {
|
"textures": {
|
||||||
"particle": "refinedstorage:blocks/side_borderless",
|
"particle": "refinedstorage:blocks/side_borderless",
|
||||||
"2": "refinedstorage:blocks/detector_unpowered"
|
"torch": "refinedstorage:blocks/wireless_transmitter_disconnected"
|
||||||
},
|
},
|
||||||
"model": "refinedstorage:detector",
|
"model": "refinedstorage:detector"
|
||||||
"uvlock": true
|
|
||||||
},
|
},
|
||||||
"variants": {
|
"variants": {
|
||||||
"inventory": [
|
"inventory": [
|
||||||
@@ -17,7 +16,7 @@
|
|||||||
"powered": {
|
"powered": {
|
||||||
"true": {
|
"true": {
|
||||||
"textures": {
|
"textures": {
|
||||||
"2": "refinedstorage:blocks/detector_powered"
|
"torch": "refinedstorage:blocks/wireless_transmitter_connected"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"false": {
|
"false": {
|
||||||
|
|||||||
@@ -2,7 +2,9 @@
|
|||||||
"forge_marker": 1,
|
"forge_marker": 1,
|
||||||
"defaults": {
|
"defaults": {
|
||||||
"textures": {
|
"textures": {
|
||||||
"particle": "refinedstorage:blocks/side_borderless"
|
"particle": "refinedstorage:blocks/side_borderless",
|
||||||
|
"3": "refinedstorage:blocks/solderer_laser",
|
||||||
|
"4": "refinedstorage:blocks/solderer_laser"
|
||||||
},
|
},
|
||||||
"model": "refinedstorage:solderer",
|
"model": "refinedstorage:solderer",
|
||||||
"uvlock": true
|
"uvlock": true
|
||||||
@@ -14,8 +16,15 @@
|
|||||||
"transform": "forge:default-block"
|
"transform": "forge:default-block"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"normal": {
|
"working": {
|
||||||
"model": "refinedstorage:solderer"
|
"true": {
|
||||||
|
"textures": {
|
||||||
|
"3": "refinedstorage:blocks/solderer_laser_working",
|
||||||
|
"4": "refinedstorage:blocks/solderer_laser_working"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"false": {
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
"defaults": {
|
"defaults": {
|
||||||
"model": "torch",
|
"model": "torch",
|
||||||
"textures": {
|
"textures": {
|
||||||
"torch": "refinedstorage:blocks/wireless_transmitter"
|
"torch": "refinedstorage:blocks/wireless_transmitter_disconnected"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"variants": {
|
"variants": {
|
||||||
@@ -12,8 +12,14 @@
|
|||||||
"transform": "forge:default-block"
|
"transform": "forge:default-block"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"normal": {
|
"connected": {
|
||||||
"model": "torch"
|
"true": {
|
||||||
|
"textures": {
|
||||||
|
"torch": "refinedstorage:blocks/wireless_transmitter_connected"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"false": {
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,10 +1,108 @@
|
|||||||
{
|
{
|
||||||
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
|
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
|
||||||
"textures": {
|
"textures": {
|
||||||
"0": "refinedstorage:blocks/side",
|
"0": "refinedstorage:blocks/side"
|
||||||
"1": "refinedstorage:blocks/side_borderless"
|
|
||||||
},
|
},
|
||||||
"elements": [
|
"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",
|
"name": "base",
|
||||||
"from": [
|
"from": [
|
||||||
@@ -73,126 +171,6 @@
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "holder",
|
|
||||||
"from": [
|
|
||||||
7.0,
|
|
||||||
4.0,
|
|
||||||
7.0
|
|
||||||
],
|
|
||||||
"to": [
|
|
||||||
9.0,
|
|
||||||
9.0,
|
|
||||||
9.0
|
|
||||||
],
|
|
||||||
"faces": {
|
|
||||||
"north": {
|
|
||||||
"texture": "#1",
|
|
||||||
"uv": [
|
|
||||||
0.0,
|
|
||||||
0.0,
|
|
||||||
4.0,
|
|
||||||
1.0
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"east": {
|
|
||||||
"texture": "#1",
|
|
||||||
"uv": [
|
|
||||||
4.0,
|
|
||||||
0.0,
|
|
||||||
8.0,
|
|
||||||
1.0
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"south": {
|
|
||||||
"texture": "#1",
|
|
||||||
"uv": [
|
|
||||||
7.0,
|
|
||||||
0.0,
|
|
||||||
11.0,
|
|
||||||
1.0
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"west": {
|
|
||||||
"texture": "#1",
|
|
||||||
"uv": [
|
|
||||||
12.0,
|
|
||||||
0.0,
|
|
||||||
16.0,
|
|
||||||
1.0
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"up": {
|
|
||||||
"texture": "#1",
|
|
||||||
"uv": [
|
|
||||||
2.0,
|
|
||||||
2.0,
|
|
||||||
6.0,
|
|
||||||
6.0
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "redstone",
|
|
||||||
"from": [
|
|
||||||
6.0,
|
|
||||||
9.0,
|
|
||||||
6.0
|
|
||||||
],
|
|
||||||
"to": [
|
|
||||||
10.0,
|
|
||||||
13.0,
|
|
||||||
10.0
|
|
||||||
],
|
|
||||||
"faces": {
|
|
||||||
"north": {
|
|
||||||
"texture": "#2",
|
|
||||||
"uv": [
|
|
||||||
0.0,
|
|
||||||
0.0,
|
|
||||||
4.0,
|
|
||||||
1.0
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"east": {
|
|
||||||
"texture": "#2",
|
|
||||||
"uv": [
|
|
||||||
4.0,
|
|
||||||
0.0,
|
|
||||||
8.0,
|
|
||||||
1.0
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"south": {
|
|
||||||
"texture": "#2",
|
|
||||||
"uv": [
|
|
||||||
8.0,
|
|
||||||
0.0,
|
|
||||||
12.0,
|
|
||||||
1.0
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"west": {
|
|
||||||
"texture": "#2",
|
|
||||||
"uv": [
|
|
||||||
12.0,
|
|
||||||
0.0,
|
|
||||||
16.0,
|
|
||||||
1.0
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"up": {
|
|
||||||
"texture": "#2",
|
|
||||||
"uv": [
|
|
||||||
10.0,
|
|
||||||
2.0,
|
|
||||||
14.0,
|
|
||||||
6.0
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -3,9 +3,7 @@
|
|||||||
"textures": {
|
"textures": {
|
||||||
"0": "refinedstorage:blocks/side",
|
"0": "refinedstorage:blocks/side",
|
||||||
"1": "refinedstorage:blocks/side",
|
"1": "refinedstorage:blocks/side",
|
||||||
"2": "refinedstorage:blocks/side_borderless",
|
"2": "refinedstorage:blocks/side_borderless"
|
||||||
"3": "blocks/redstone_block",
|
|
||||||
"4": "blocks/redstone_block"
|
|
||||||
},
|
},
|
||||||
"elements": [
|
"elements": [
|
||||||
{
|
{
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 190 B After Width: | Height: | Size: 190 B |
|
Before Width: | Height: | Size: 169 B After Width: | Height: | Size: 169 B |
|
Before Width: | Height: | Size: 328 B |
|
After Width: | Height: | Size: 278 B |
|
After Width: | Height: | Size: 272 B |