From aaad4e0d6ef3a33ca7726e92516c6d427a1a59d8 Mon Sep 17 00:00:00 2001 From: Raoul Van den Berge Date: Fri, 16 Sep 2016 23:13:37 +0200 Subject: [PATCH] Fix some model stuff --- CHANGELOG.md | 1 + .../item/ItemBlockController.java | 23 +++---- .../refinedstorage/proxy/ClientProxy.java | 20 ++++-- .../blockstates/controller.json | 12 ---- .../refinedstorage/blockstates/crafter.json | 1 - .../blockstates/crafting_monitor.json | 1 - .../blockstates/creative_controller.json | 63 ------------------- .../blockstates/disk_drive.json | 1 - .../blockstates/disk_manipulator.json | 1 - .../blockstates/fluid_grid.json | 58 ----------------- .../refinedstorage/blockstates/grid.json | 6 -- .../processing_pattern_encoder.json | 3 +- 12 files changed, 25 insertions(+), 165 deletions(-) delete mode 100755 src/main/resources/assets/refinedstorage/blockstates/creative_controller.json mode change 100644 => 100755 src/main/resources/assets/refinedstorage/blockstates/disk_manipulator.json delete mode 100755 src/main/resources/assets/refinedstorage/blockstates/fluid_grid.json diff --git a/CHANGELOG.md b/CHANGELOG.md index 72fe5da48..3762e332e 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ - Solderer now accepts items from any side, allowing easier automation (raoulvdberge) - Solderer is now intelligent about items in slots, and will only accept an item if it is part of a recipe (raoulvdberge) - Changed recipe for upgrades in the Solderer, they now just take 1 of the unique item instead of 2, using redstone instead (raoulvdberge) +- Fixed blocks in hand facing wrong direction (raoulvdberge) - Updated to Forge 2088 (raoulvdberge) ### 1.0.2 diff --git a/src/main/java/refinedstorage/item/ItemBlockController.java b/src/main/java/refinedstorage/item/ItemBlockController.java index d66c8b314..be0806ff5 100755 --- a/src/main/java/refinedstorage/item/ItemBlockController.java +++ b/src/main/java/refinedstorage/item/ItemBlockController.java @@ -20,23 +20,18 @@ public class ItemBlockController extends ItemBlockBase { @Override public void addInformation(ItemStack stack, EntityPlayer player, List tooltip, boolean advanced) { if (stack.getMetadata() != EnumControllerType.CREATIVE.getId()) { - int energyStored = 0; - int energyCapacity = RefinedStorage.INSTANCE.controllerCapacity; - - if (stack.getTagCompound() != null) { - if (stack.getTagCompound().hasKey(TileController.NBT_ENERGY)) { - energyStored = stack.getTagCompound().getInteger(TileController.NBT_ENERGY); - } - - if (stack.getTagCompound().hasKey(TileController.NBT_ENERGY_CAPACITY)) { - energyCapacity = stack.getTagCompound().getInteger(TileController.NBT_ENERGY_CAPACITY); - } - } - - tooltip.add(I18n.format("misc.refinedstorage:energy_stored", energyStored, energyCapacity)); + tooltip.add(I18n.format("misc.refinedstorage:energy_stored", getEnergyStored(stack), getEnergyCapacity(stack))); } } + public static int getEnergyStored(ItemStack stack) { + return (stack.hasTagCompound() && stack.getTagCompound().hasKey(TileController.NBT_ENERGY)) ? stack.getTagCompound().getInteger(TileController.NBT_ENERGY) : 0; + } + + public static int getEnergyCapacity(ItemStack stack) { + return (stack.hasTagCompound() && stack.getTagCompound().hasKey(TileController.NBT_ENERGY_CAPACITY)) ? stack.getTagCompound().getInteger(TileController.NBT_ENERGY_CAPACITY) : RefinedStorage.INSTANCE.controllerCapacity; + } + @Override public void onCreated(ItemStack stack, World world, EntityPlayer player) { super.onCreated(stack, world, player); diff --git a/src/main/java/refinedstorage/proxy/ClientProxy.java b/src/main/java/refinedstorage/proxy/ClientProxy.java index ebefa6563..cbd0c95a8 100755 --- a/src/main/java/refinedstorage/proxy/ClientProxy.java +++ b/src/main/java/refinedstorage/proxy/ClientProxy.java @@ -9,6 +9,7 @@ import net.minecraft.client.renderer.Tessellator; import net.minecraft.client.renderer.VertexBuffer; import net.minecraft.client.renderer.block.model.ModelBakery; import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.client.renderer.block.statemap.StateMap; import net.minecraft.client.renderer.vertex.DefaultVertexFormats; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; @@ -28,6 +29,7 @@ import refinedstorage.RefinedStorageBlocks; import refinedstorage.RefinedStorageItems; import refinedstorage.block.*; import refinedstorage.item.*; +import refinedstorage.tile.TileController; import java.util.List; @@ -246,17 +248,15 @@ public class ClientProxy extends CommonProxy { // Blocks 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")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.GRID), EnumGridType.CRAFTING.getId(), new ModelResourceLocation("refinedstorage:grid", "inventory")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.GRID), EnumGridType.PATTERN.getId(), new ModelResourceLocation("refinedstorage:grid", "inventory")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.GRID), EnumGridType.FLUID.getId(), new ModelResourceLocation("refinedstorage:fluid_grid", "inventory")); + ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.GRID), EnumGridType.NORMAL.getId(), new ModelResourceLocation("refinedstorage:grid", "connected=false,direction=north,type=normal")); + ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.GRID), EnumGridType.CRAFTING.getId(), new ModelResourceLocation("refinedstorage:grid", "connected=false,direction=north,type=crafting")); + ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.GRID), EnumGridType.PATTERN.getId(), new ModelResourceLocation("refinedstorage:grid", "connected=false,direction=north,type=pattern")); + ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.GRID), EnumGridType.FLUID.getId(), new ModelResourceLocation("refinedstorage:grid", "connected=false,direction=north,type=fluid")); ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.MACHINE_CASING), 0, new ModelResourceLocation("refinedstorage:machine_casing", "inventory")); ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.EXPORTER), 0, new ModelResourceLocation("refinedstorage:exporter", "inventory")); ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.IMPORTER), 0, new ModelResourceLocation("refinedstorage:importer", "inventory")); ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.EXTERNAL_STORAGE), 0, new ModelResourceLocation("refinedstorage:external_storage", "inventory")); ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.DISK_DRIVE), 0, new ModelResourceLocation("refinedstorage:disk_drive", "inventory")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.CONTROLLER), EnumControllerType.NORMAL.getId(), new ModelResourceLocation("refinedstorage:controller", "inventory")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.CONTROLLER), EnumControllerType.CREATIVE.getId(), new ModelResourceLocation("refinedstorage:creative_controller", "inventory")); ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.CONSTRUCTOR), 0, new ModelResourceLocation("refinedstorage:constructor", "inventory")); ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.DESTRUCTOR), 0, new ModelResourceLocation("refinedstorage:destructor", "inventory")); ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.SOLDERER), 0, new ModelResourceLocation("refinedstorage:solderer", "inventory")); @@ -281,5 +281,13 @@ public class ClientProxy extends CommonProxy { ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.FLUID_STORAGE), EnumFluidStorageType.TYPE_512K.getId(), new ModelResourceLocation("refinedstorage:fluid_storage", "type=512k")); ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.FLUID_STORAGE), EnumFluidStorageType.TYPE_CREATIVE.getId(), new ModelResourceLocation("refinedstorage:fluid_storage", "type=creative")); ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(RefinedStorageBlocks.DISK_MANIPULATOR), 0, new ModelResourceLocation("refinedstorage:disk_manipulator", "inventory")); + + ModelLoader.setCustomStateMapper(RefinedStorageBlocks.CONTROLLER, new StateMap.Builder().ignore(BlockController.TYPE).build()); + + ModelLoader.setCustomMeshDefinition(Item.getItemFromBlock(RefinedStorageBlocks.CONTROLLER), stack -> { + int energy = stack.getItemDamage() == EnumControllerType.CREATIVE.getId() ? 7 : TileController.getEnergyScaled(ItemBlockController.getEnergyStored(stack), ItemBlockController.getEnergyCapacity(stack), 7); + + return new ModelResourceLocation("refinedstorage:controller", "direction=north,energy=" + energy); + }); } } diff --git a/src/main/resources/assets/refinedstorage/blockstates/controller.json b/src/main/resources/assets/refinedstorage/blockstates/controller.json index 3fdb5566c..cdeb2c4e0 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/controller.json +++ b/src/main/resources/assets/refinedstorage/blockstates/controller.json @@ -9,12 +9,6 @@ } }, "variants": { - "inventory": [ - { - "y": 0, - "transform": "forge:default-block" - } - ], "energy": { "0": { "textures": { @@ -57,12 +51,6 @@ } } }, - "type": { - "normal": { - }, - "creative": { - } - }, "direction": { "north": { "y": 0 diff --git a/src/main/resources/assets/refinedstorage/blockstates/crafter.json b/src/main/resources/assets/refinedstorage/blockstates/crafter.json index 256919661..d18a1219a 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/crafter.json +++ b/src/main/resources/assets/refinedstorage/blockstates/crafter.json @@ -13,7 +13,6 @@ "textures": { "front": "refinedstorage:blocks/crafter_disconnected" }, - "transform": "forge:default-block", "y": 0 } ], diff --git a/src/main/resources/assets/refinedstorage/blockstates/crafting_monitor.json b/src/main/resources/assets/refinedstorage/blockstates/crafting_monitor.json index 9b4d8f33a..9aea2d1a0 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/crafting_monitor.json +++ b/src/main/resources/assets/refinedstorage/blockstates/crafting_monitor.json @@ -11,7 +11,6 @@ "variants": { "inventory": [ { - "transform": "forge:default-block", "y": 0 } ], diff --git a/src/main/resources/assets/refinedstorage/blockstates/creative_controller.json b/src/main/resources/assets/refinedstorage/blockstates/creative_controller.json deleted file mode 100755 index 8190cba8e..000000000 --- a/src/main/resources/assets/refinedstorage/blockstates/creative_controller.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "orientable", - "textures": { - "side": "refinedstorage:blocks/side", - "top": "refinedstorage:blocks/side", - "front": "refinedstorage:blocks/controller_7" - } - }, - "variants": { - "inventory": [ - { - "y": 0, - "transform": "forge:default-block" - } - ], - "energy": { - "0": { - }, - "1": { - }, - "2": { - }, - "3": { - }, - "4": { - }, - "5": { - }, - "6": { - }, - "7": { - } - }, - "type": { - "normal": { - }, - "creative": { - } - }, - "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 7f2769a99..4c5061375 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/disk_drive.json +++ b/src/main/resources/assets/refinedstorage/blockstates/disk_drive.json @@ -11,7 +11,6 @@ "variants": { "inventory": [ { - "transform": "forge:default-block", "y": 0 } ], diff --git a/src/main/resources/assets/refinedstorage/blockstates/disk_manipulator.json b/src/main/resources/assets/refinedstorage/blockstates/disk_manipulator.json old mode 100644 new mode 100755 index 0f6ae13a7..2cc8c51b1 --- a/src/main/resources/assets/refinedstorage/blockstates/disk_manipulator.json +++ b/src/main/resources/assets/refinedstorage/blockstates/disk_manipulator.json @@ -11,7 +11,6 @@ "variants": { "inventory": [ { - "transform": "forge:default-block", "y": 0 } ], diff --git a/src/main/resources/assets/refinedstorage/blockstates/fluid_grid.json b/src/main/resources/assets/refinedstorage/blockstates/fluid_grid.json deleted file mode 100755 index 54c9bd0cf..000000000 --- a/src/main/resources/assets/refinedstorage/blockstates/fluid_grid.json +++ /dev/null @@ -1,58 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "orientable", - "textures": { - "side": "refinedstorage:blocks/fluid_grid_side", - "top": "refinedstorage:blocks/fluid_grid_side", - "front": "refinedstorage:blocks/fluid_grid_disconnected" - } - }, - "variants": { - "inventory": [ - { - "transform": "forge:default-block", - "y": 0 - } - ], - "connected": { - "true": { - "textures": { - "front": "refinedstorage:blocks/fluid_grid_connected" - } - }, - "false": { - } - }, - "type": { - "normal": { - }, - "crafting": { - }, - "pattern": { - }, - "fluid": { - } - }, - "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/grid.json b/src/main/resources/assets/refinedstorage/blockstates/grid.json index 7f4dc9ac1..054ca63e6 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/grid.json +++ b/src/main/resources/assets/refinedstorage/blockstates/grid.json @@ -9,12 +9,6 @@ } }, "variants": { - "inventory": [ - { - "transform": "forge:default-block", - "y": 0 - } - ], "connected": { "true": { "textures": { 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 a3c98690b..64c04521f 100755 --- a/src/main/resources/assets/refinedstorage/blockstates/processing_pattern_encoder.json +++ b/src/main/resources/assets/refinedstorage/blockstates/processing_pattern_encoder.json @@ -15,8 +15,7 @@ "variants": { "inventory": [ { - "transform": "forge:default-block", - "y": 0 + "transform": "forge:default-block" } ], "normal": {