From b70fff10db387e4d36378f5b44dd07c959308c0d Mon Sep 17 00:00:00 2001 From: Raoul Van den Berge Date: Sun, 10 Jul 2016 00:43:27 +0200 Subject: [PATCH] Model improvements --- CHANGELOG.md | 7 + .../refinedstorage/block/BlockDetector.java | 14 ++ .../refinedstorage/block/BlockSolderer.java | 15 ++ .../block/BlockWirelessTransmitter.java | 5 + .../refinedstorage/proxy/ClientProxy.java | 5 - .../refinedstorage/blockstates/detector.json | 7 +- .../refinedstorage/blockstates/solderer.json | 15 +- .../blockstates/wireless_transmitter.json | 12 +- .../refinedstorage/models/block/detector.json | 222 ++++++++---------- .../refinedstorage/models/block/solderer.json | 4 +- ...ector_unpowered.png => solderer_laser.png} | Bin ...powered.png => solderer_laser_working.png} | Bin .../textures/blocks/wireless_transmitter.png | Bin 328 -> 0 bytes .../blocks/wireless_transmitter_connected.png | Bin 0 -> 278 bytes .../wireless_transmitter_disconnected.png | Bin 0 -> 272 bytes 15 files changed, 166 insertions(+), 140 deletions(-) rename src/main/resources/assets/refinedstorage/textures/blocks/{detector_unpowered.png => solderer_laser.png} (100%) rename src/main/resources/assets/refinedstorage/textures/blocks/{detector_powered.png => solderer_laser_working.png} (100%) delete mode 100755 src/main/resources/assets/refinedstorage/textures/blocks/wireless_transmitter.png create mode 100755 src/main/resources/assets/refinedstorage/textures/blocks/wireless_transmitter_connected.png create mode 100755 src/main/resources/assets/refinedstorage/textures/blocks/wireless_transmitter_disconnected.png diff --git a/CHANGELOG.md b/CHANGELOG.md index 22d450f89..12bea602b 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # 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 **Bugfixes** - Fixed External Storage disconnecting on world reload diff --git a/src/main/java/refinedstorage/block/BlockDetector.java b/src/main/java/refinedstorage/block/BlockDetector.java index 95979a4d5..c29c2f6e4 100755 --- a/src/main/java/refinedstorage/block/BlockDetector.java +++ b/src/main/java/refinedstorage/block/BlockDetector.java @@ -6,8 +6,10 @@ 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; @@ -16,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() { @@ -35,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(); @@ -74,6 +83,11 @@ public class BlockDetector extends BlockNode { return false; } + @Override + public BlockRenderLayer getBlockLayer() { + return BlockRenderLayer.CUTOUT; + } + @Override public EnumPlacementType getPlacementType() { return null; diff --git a/src/main/java/refinedstorage/block/BlockSolderer.java b/src/main/java/refinedstorage/block/BlockSolderer.java index 037a38e73..8533380f9 100755 --- a/src/main/java/refinedstorage/block/BlockSolderer.java +++ b/src/main/java/refinedstorage/block/BlockSolderer.java @@ -8,13 +8,17 @@ 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; import refinedstorage.RefinedStorage; 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() { @@ -35,6 +39,11 @@ 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 super.createBlockStateBuilder() @@ -42,6 +51,12 @@ public class BlockSolderer extends BlockNode { .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 public boolean isOpaqueCube(IBlockState state) { return false; diff --git a/src/main/java/refinedstorage/block/BlockWirelessTransmitter.java b/src/main/java/refinedstorage/block/BlockWirelessTransmitter.java index cb09b9b3b..af2496aab 100755 --- a/src/main/java/refinedstorage/block/BlockWirelessTransmitter.java +++ b/src/main/java/refinedstorage/block/BlockWirelessTransmitter.java @@ -76,6 +76,11 @@ public class BlockWirelessTransmitter extends BlockNode { return BlockRenderLayer.CUTOUT; } + @Override + public boolean hasConnectivityState() { + return true; + } + @Override public EnumPlacementType getPlacementType() { return null; diff --git a/src/main/java/refinedstorage/proxy/ClientProxy.java b/src/main/java/refinedstorage/proxy/ClientProxy.java index c1d5c36b9..9df90ace4 100755 --- a/src/main/java/refinedstorage/proxy/ClientProxy.java +++ b/src/main/java/refinedstorage/proxy/ClientProxy.java @@ -102,11 +102,6 @@ public class ClientProxy extends CommonProxy { ModelLoader.setCustomModelResourceLocation(RefinedStorageItems.UPGRADE, ItemUpgrade.TYPE_STACK, new ModelResourceLocation("refinedstorage:stack_upgrade", "inventory")); // Blocks - ModelLoader.setCustomStateMapper(RefinedStorageBlocks.SOLDERER, (new StateMap.Builder()) - .ignore(RefinedStorageBlocks.SOLDERER.WORKING) - .build() - ); - ModelLoader.setCustomStateMapper(RefinedStorageBlocks.GRID, (new StateMap.Builder()) .ignore(RefinedStorageBlocks.GRID.TYPE) .build()); diff --git a/src/main/resources/assets/refinedstorage/blockstates/detector.json b/src/main/resources/assets/refinedstorage/blockstates/detector.json index a360c78b7..587bd4748 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/detector.json +++ b/src/main/resources/assets/refinedstorage/blockstates/detector.json @@ -3,10 +3,9 @@ "defaults": { "textures": { "particle": "refinedstorage:blocks/side_borderless", - "2": "refinedstorage:blocks/detector_unpowered" + "torch": "refinedstorage:blocks/wireless_transmitter_disconnected" }, - "model": "refinedstorage:detector", - "uvlock": true + "model": "refinedstorage:detector" }, "variants": { "inventory": [ @@ -17,7 +16,7 @@ "powered": { "true": { "textures": { - "2": "refinedstorage:blocks/detector_powered" + "torch": "refinedstorage:blocks/wireless_transmitter_connected" } }, "false": { diff --git a/src/main/resources/assets/refinedstorage/blockstates/solderer.json b/src/main/resources/assets/refinedstorage/blockstates/solderer.json index b42218f21..6009430ca 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/solderer.json +++ b/src/main/resources/assets/refinedstorage/blockstates/solderer.json @@ -2,7 +2,9 @@ "forge_marker": 1, "defaults": { "textures": { - "particle": "refinedstorage:blocks/side_borderless" + "particle": "refinedstorage:blocks/side_borderless", + "3": "refinedstorage:blocks/solderer_laser", + "4": "refinedstorage:blocks/solderer_laser" }, "model": "refinedstorage:solderer", "uvlock": true @@ -14,8 +16,15 @@ "transform": "forge:default-block" } ], - "normal": { - "model": "refinedstorage:solderer" + "working": { + "true": { + "textures": { + "3": "refinedstorage:blocks/solderer_laser_working", + "4": "refinedstorage:blocks/solderer_laser_working" + } + }, + "false": { + } } } } \ 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 59d1e53a0..80c34a129 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/wireless_transmitter.json +++ b/src/main/resources/assets/refinedstorage/blockstates/wireless_transmitter.json @@ -3,7 +3,7 @@ "defaults": { "model": "torch", "textures": { - "torch": "refinedstorage:blocks/wireless_transmitter" + "torch": "refinedstorage:blocks/wireless_transmitter_disconnected" } }, "variants": { @@ -12,8 +12,14 @@ "transform": "forge:default-block" } ], - "normal": { - "model": "torch" + "connected": { + "true": { + "textures": { + "torch": "refinedstorage:blocks/wireless_transmitter_connected" + } + }, + "false": { + } } } } \ No newline at end of file diff --git a/src/main/resources/assets/refinedstorage/models/block/detector.json b/src/main/resources/assets/refinedstorage/models/block/detector.json index c03b57e87..920834e59 100755 --- a/src/main/resources/assets/refinedstorage/models/block/detector.json +++ b/src/main/resources/assets/refinedstorage/models/block/detector.json @@ -1,10 +1,108 @@ { "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "textures": { - "0": "refinedstorage:blocks/side", - "1": "refinedstorage:blocks/side_borderless" + "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": [ @@ -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 - ] - } - } } ] } \ 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 index d4c9a0667..5d84a1218 100755 --- a/src/main/resources/assets/refinedstorage/models/block/solderer.json +++ b/src/main/resources/assets/refinedstorage/models/block/solderer.json @@ -3,9 +3,7 @@ "textures": { "0": "refinedstorage:blocks/side", "1": "refinedstorage:blocks/side", - "2": "refinedstorage:blocks/side_borderless", - "3": "blocks/redstone_block", - "4": "blocks/redstone_block" + "2": "refinedstorage:blocks/side_borderless" }, "elements": [ { diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/detector_unpowered.png b/src/main/resources/assets/refinedstorage/textures/blocks/solderer_laser.png similarity index 100% rename from src/main/resources/assets/refinedstorage/textures/blocks/detector_unpowered.png rename to src/main/resources/assets/refinedstorage/textures/blocks/solderer_laser.png diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/detector_powered.png b/src/main/resources/assets/refinedstorage/textures/blocks/solderer_laser_working.png similarity index 100% rename from src/main/resources/assets/refinedstorage/textures/blocks/detector_powered.png rename to src/main/resources/assets/refinedstorage/textures/blocks/solderer_laser_working.png diff --git a/src/main/resources/assets/refinedstorage/textures/blocks/wireless_transmitter.png b/src/main/resources/assets/refinedstorage/textures/blocks/wireless_transmitter.png deleted file mode 100755 index 85b505d72353998f934abd2617eb36816bc42a7b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 328 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85sBugD~Uq{1qucL5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33 zJ2Aw(#3Idn8qXit}c(D5QVo#B27BoE=on6 zczN%E(}{&YGCo{*YWqR(1>+CyUcHPG$Hm-Iu@^GhX7(pOJbkjU}!k zTX%f-!a&<_VVi50zbil2|KH@cxPL|Af0xCYU9z8QwAJs6_Nw(oy96qOS-#dPC*Az^ zX-oM=zMGgjcTP>X$t;64f!EzFf3C|g@x8n_*T3jf?8S^#uRc81K2Xh=Ve;DcqmyAY P&=U-vu6{1-oD!M!lvI6;>1s;*b z3=DjSK$uZf!>a)(C{f}XQ4*Y=R#Ki=l*&+$n3-3imzP?iV4`QBXPIMM=Lb|X#nZ(x z#KM2+MQ^TV2Z5Hv?Qu%tA|D$U9X4VBnel+i|_xn>+>gW9K=qdThJf+&lXjf%j(k!{MS94QJVy9o&cF}L|!lvI6;>1s;*b z3=DjSK$uZf!>a)(C{f}XQ4*Y=R#Ki=l*&+$n3-3imzP?iV4`QBXPIMM=Lb~N=jq}Y zV&T8^;#sa{0|D2>`{8TsHKbHRqHa08wDy0l$L3`z(A3S}R@^BqZEVe&%-dsXaP2?@ zbMlTKI{*KQyLBF4+Mh7xviyWg$p(bwPBebSRSY$0dH6K-EA z-jf(BZ|2)Re-HPu3)@ZxRsB4