From cfdc9d0a5e6ee133f355d23d21f345d4e4c9ea11 Mon Sep 17 00:00:00 2001 From: simibubi <31564874+simibubi@users.noreply.github.com> Date: Thu, 4 Jun 2020 21:02:29 +0200 Subject: [PATCH] Directional sources of rotation - Fixed gearbox pretending to be a deployer - Fixed reversed rendering in the furnace engine TER - Motors, fans, flywheels and handcranks now reverse their rotation when facing in negative axisdirections. Addresses #236 - Cart assemblers no longer auto-attach to blocks on their sides (top only) --- .../java/com/simibubi/create/AllShapes.java | 2 +- .../com/simibubi/create/AllTileEntities.java | 5 +- .../contraptions/base/KineticTileEntity.java | 6 + .../components/crank/HandCrankTileEntity.java | 10 +- .../components/fan/EncasedFanTileEntity.java | 6 +- .../components/fan/NozzleTileEntity.java | 2 +- .../flywheel/FlywheelTileEntity.java | 6 +- .../flywheel/engine/EngineRenderer.java | 16 +- .../motor/CreativeMotorTileEntity.java | 5 +- .../mounted/MountedContraption.java | 14 -- .../relays/gauge/GaugeRenderer.java | 10 +- .../relays/gearbox/GearboxBlock.java | 2 +- .../models/block/cart_assembler/block.json | 190 +++++++++--------- .../block/cart_assembler/minecart_anchor.json | 2 +- .../create/models/block/gearbox/block.json | 90 ++++----- .../create/models/block/gearbox/item.json | 2 +- .../models/block/gearbox/item_vertical.json | 2 +- .../textures/block/cart_assembler_side.png | Bin 0 -> 472 bytes 18 files changed, 196 insertions(+), 174 deletions(-) create mode 100644 src/main/resources/assets/create/textures/block/cart_assembler_side.png diff --git a/src/main/java/com/simibubi/create/AllShapes.java b/src/main/java/com/simibubi/create/AllShapes.java index 1bf494a41..bddeb7caf 100644 --- a/src/main/java/com/simibubi/create/AllShapes.java +++ b/src/main/java/com/simibubi/create/AllShapes.java @@ -53,7 +53,7 @@ public class AllShapes { .forDirectional(), CRANK = shape(5, 0, 5, 11, 6, 11).add(1, 3, 1, 15, 8, 15) .forDirectional(), - CART_ASSEMBLER = shape(VoxelShapes.fullCube()).add(-2, 0, 1, 18, 13, 15) + CART_ASSEMBLER = shape(0,12,0,16,16,16).add(-2, 0, 1, 18, 14, 15) .forHorizontalAxis(), STOCKPILE_SWITCH = shape(0, 0, 0, 16, 2, 16).add(1, 0, 1, 15, 16, 15) .add(0, 14, 0, 16, 16, 16) diff --git a/src/main/java/com/simibubi/create/AllTileEntities.java b/src/main/java/com/simibubi/create/AllTileEntities.java index 5eb3f62a5..0ac617bd1 100644 --- a/src/main/java/com/simibubi/create/AllTileEntities.java +++ b/src/main/java/com/simibubi/create/AllTileEntities.java @@ -58,7 +58,6 @@ import com.simibubi.create.content.contraptions.relays.encased.ClutchTileEntity; import com.simibubi.create.content.contraptions.relays.encased.EncasedShaftRenderer; import com.simibubi.create.content.contraptions.relays.encased.EncasedShaftTileEntity; import com.simibubi.create.content.contraptions.relays.encased.SplitShaftRenderer; -import com.simibubi.create.content.contraptions.relays.gauge.GaugeBlock; import com.simibubi.create.content.contraptions.relays.gauge.GaugeRenderer; import com.simibubi.create.content.contraptions.relays.gauge.SpeedGaugeTileEntity; import com.simibubi.create.content.contraptions.relays.gauge.StressGaugeTileEntity; @@ -259,8 +258,8 @@ public class AllTileEntities { bind(MECHANICAL_PRESS, MechanicalPressRenderer::new); bind(MECHANICAL_MIXER, MechanicalMixerRenderer::new); bind(MECHANICAL_CRAFTER, MechanicalCrafterRenderer::new); - bind(SPEEDOMETER, disp -> new GaugeRenderer(disp, GaugeBlock.Type.SPEED)); - bind(STRESSOMETER, disp -> new GaugeRenderer(disp, GaugeBlock.Type.STRESS)); + bind(SPEEDOMETER, GaugeRenderer::speed); + bind(STRESSOMETER, GaugeRenderer::stress); bind(BASIN, BasinRenderer::new); bind(DEPLOYER, DeployerRenderer::new); bind(FLYWHEEL, FlywheelRenderer::new); diff --git a/src/main/java/com/simibubi/create/content/contraptions/base/KineticTileEntity.java b/src/main/java/com/simibubi/create/content/contraptions/base/KineticTileEntity.java index bbaacd262..0cb19034e 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/base/KineticTileEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/base/KineticTileEntity.java @@ -28,6 +28,8 @@ import net.minecraft.nbt.NBTUtil; import net.minecraft.tileentity.ITickableTileEntity; import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntityType; +import net.minecraft.util.Direction; +import net.minecraft.util.Direction.AxisDirection; import net.minecraft.util.math.BlockPos; import net.minecraft.util.text.TextFormatting; import net.minecraft.world.World; @@ -445,5 +447,9 @@ public abstract class KineticTileEntity extends SmartTileEntity public int getFlickerScore() { return flickerTally; } + + public static float convertToDirection(float axisSpeed, Direction d) { + return d.getAxisDirection() == AxisDirection.POSITIVE ? axisSpeed : -axisSpeed; + } } diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/crank/HandCrankTileEntity.java b/src/main/java/com/simibubi/create/content/contraptions/components/crank/HandCrankTileEntity.java index 0f4ef91d9..c1af6a112 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/crank/HandCrankTileEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/crank/HandCrankTileEntity.java @@ -1,5 +1,6 @@ package com.simibubi.create.content.contraptions.components.crank; +import com.simibubi.create.AllBlocks; import com.simibubi.create.content.contraptions.base.GeneratingKineticTileEntity; import net.minecraft.nbt.CompoundNBT; @@ -30,15 +31,18 @@ public class HandCrankTileEntity extends GeneratingKineticTileEntity { @Override public float getGeneratedSpeed() { - return inUse == 0 ? 0 : backwards ? -32 : 32; + if (!AllBlocks.HAND_CRANK.has(getBlockState())) + return 0; + int speed = inUse == 0 ? 0 : backwards ? -32 : 32; + return convertToDirection(speed, getBlockState().get(HandCrankBlock.FACING)); } - + @Override public CompoundNBT write(CompoundNBT compound) { compound.putInt("InUse", inUse); return super.write(compound); } - + @Override public void read(CompoundNBT compound) { inUse = compound.getInt("InUse"); diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/fan/EncasedFanTileEntity.java b/src/main/java/com/simibubi/create/content/contraptions/components/fan/EncasedFanTileEntity.java index 15bc4e0e5..5f25a0bdd 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/fan/EncasedFanTileEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/fan/EncasedFanTileEntity.java @@ -82,10 +82,12 @@ public class EncasedFanTileEntity extends GeneratingKineticTileEntity { } public Direction getAirFlowDirection() { - if (getSpeed() == 0) + float speed = getSpeed(); + if (speed == 0) return null; Direction facing = getBlockState().get(BlockStateProperties.FACING); - return getSpeed() > 0 ? facing : facing.getOpposite(); + speed = convertToDirection(speed, facing); + return speed > 0 ? facing : facing.getOpposite(); } @Override diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/fan/NozzleTileEntity.java b/src/main/java/com/simibubi/create/content/contraptions/components/fan/NozzleTileEntity.java index bdc9e1dad..81ce41fb2 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/fan/NozzleTileEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/fan/NozzleTileEntity.java @@ -125,7 +125,7 @@ public class NozzleTileEntity extends SmartTileEntity { return 0; if (fan.getSpeed() == 0) return 0; - pushing = fan.getSpeed() > 0; + pushing = fan.getAirFlowDirection() == fan.getBlockState().get(EncasedFanBlock.FACING); return fan.getMaxDistance(); } diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/flywheel/FlywheelTileEntity.java b/src/main/java/com/simibubi/create/content/contraptions/components/flywheel/FlywheelTileEntity.java index b4aa412db..c55e0ed0f 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/flywheel/FlywheelTileEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/flywheel/FlywheelTileEntity.java @@ -39,7 +39,7 @@ public class FlywheelTileEntity extends GeneratingKineticTileEntity { @Override public float getGeneratedSpeed() { - return generatedSpeed; + return convertToDirection(generatedSpeed, getBlockState().get(FlywheelBlock.HORIZONTAL_FACING)); } @Override @@ -60,7 +60,7 @@ public class FlywheelTileEntity extends GeneratingKineticTileEntity { @Override public void readClientUpdate(CompoundNBT tag) { super.readClientUpdate(tag); - visualSpeed.withSpeed(1 / 32f).target(generatedSpeed); + visualSpeed.withSpeed(1 / 32f).target(getGeneratedSpeed()); } @Override @@ -84,7 +84,7 @@ public class FlywheelTileEntity extends GeneratingKineticTileEntity { super.tick(); if (world.isRemote) { - visualSpeed.target(generatedSpeed); + visualSpeed.target(getGeneratedSpeed()); visualSpeed.tick(); angle += visualSpeed.value * 3 / 10f; angle %= 360; diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/flywheel/engine/EngineRenderer.java b/src/main/java/com/simibubi/create/content/contraptions/components/flywheel/engine/EngineRenderer.java index d6f932f7a..477348870 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/flywheel/engine/EngineRenderer.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/flywheel/engine/EngineRenderer.java @@ -20,17 +20,21 @@ public class EngineRenderer extends SafeTileEntityRe @Override protected void renderSafe(T te, float partialTicks, MatrixStack ms, IRenderTypeBuffer buffer, int light, - int overlay) { - Block block = te.getBlockState().getBlock(); + int overlay) { + Block block = te.getBlockState() + .getBlock(); if (block instanceof EngineBlock) { EngineBlock engineBlock = (EngineBlock) block; AllBlockPartials frame = engineBlock.getFrameModel(); if (frame != null) { - Direction facing = te.getBlockState().get(EngineBlock.HORIZONTAL_FACING); + Direction facing = te.getBlockState() + .get(EngineBlock.HORIZONTAL_FACING); float angle = AngleHelper.rad(AngleHelper.horizontalAngle(facing)); - frame.renderOn(te.getBlockState()).translate(0, 0, -1).rotateCentered(Direction.UP, angle) - .light(WorldRenderer.getLightmapCoordinates(te.getWorld(), te.getBlockState(), te.getPos())) - .renderInto(ms, buffer.getBuffer(RenderType.getSolid())); + frame.renderOn(te.getBlockState()) + .rotateCentered(Direction.UP, angle) + .translate(0, 0, -1) + .light(WorldRenderer.getLightmapCoordinates(te.getWorld(), te.getBlockState(), te.getPos())) + .renderInto(ms, buffer.getBuffer(RenderType.getSolid())); } } } diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/motor/CreativeMotorTileEntity.java b/src/main/java/com/simibubi/create/content/contraptions/components/motor/CreativeMotorTileEntity.java index 83ccc8421..79d4268b9 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/motor/CreativeMotorTileEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/motor/CreativeMotorTileEntity.java @@ -2,6 +2,7 @@ package com.simibubi.create.content.contraptions.components.motor; import java.util.List; +import com.simibubi.create.AllBlocks; import com.simibubi.create.content.contraptions.base.GeneratingKineticTileEntity; import com.simibubi.create.foundation.config.AllConfigs; import com.simibubi.create.foundation.tileEntity.TileEntityBehaviour; @@ -48,7 +49,9 @@ public class CreativeMotorTileEntity extends GeneratingKineticTileEntity { @Override public float getGeneratedSpeed() { - return generatedSpeed.getValue(); + if (!AllBlocks.CREATIVE_MOTOR.has(getBlockState())) + return 0; + return convertToDirection(generatedSpeed.getValue(), getBlockState().get(CreativeMotorBlock.FACING)); } public static int step(StepContext context) { diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/mounted/MountedContraption.java b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/mounted/MountedContraption.java index fbe38eeb0..66c619a54 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/mounted/MountedContraption.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/mounted/MountedContraption.java @@ -8,7 +8,6 @@ import org.apache.commons.lang3.tuple.Pair; import com.simibubi.create.AllBlocks; import com.simibubi.create.content.contraptions.components.structureMovement.AllContraptionTypes; -import com.simibubi.create.content.contraptions.components.structureMovement.BlockMovementTraits; import com.simibubi.create.content.contraptions.components.structureMovement.Contraption; import com.simibubi.create.content.contraptions.components.structureMovement.mounted.CartAssemblerTileEntity.CartMovementMode; import com.simibubi.create.foundation.utility.NBTHelper; @@ -20,7 +19,6 @@ import net.minecraft.state.properties.RailShape; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.Direction; import net.minecraft.util.Direction.Axis; -import net.minecraft.util.Direction.AxisDirection; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.Vec3d; import net.minecraft.world.IWorld; @@ -63,18 +61,6 @@ public class MountedContraption extends Contraption { protected boolean addToInitialFrontier(World world, BlockPos pos, Direction direction, List frontier) { frontier.clear(); frontier.add(pos.up()); - BlockState state = world.getBlockState(pos); - if (!AllBlocks.CART_ASSEMBLER.has(state)) - return false; - Axis axis = state.get(CartAssemblerBlock.RAIL_SHAPE) == RailShape.EAST_WEST ? Axis.Z : Axis.X; - for (AxisDirection axisDirection : AxisDirection.values()) { - Direction facingFromAxis = Direction.getFacingFromAxis(axisDirection, axis); - BlockPos offset = pos.offset(facingFromAxis); - BlockState blockState = world.getBlockState(offset); - if (!BlockMovementTraits.isBrittle(blockState) - || BlockMovementTraits.isBlockAttachedTowards(blockState, facingFromAxis.getOpposite())) - frontier.add(offset); - } return true; } diff --git a/src/main/java/com/simibubi/create/content/contraptions/relays/gauge/GaugeRenderer.java b/src/main/java/com/simibubi/create/content/contraptions/relays/gauge/GaugeRenderer.java index edebd9556..ce652d4c4 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/relays/gauge/GaugeRenderer.java +++ b/src/main/java/com/simibubi/create/content/contraptions/relays/gauge/GaugeRenderer.java @@ -20,7 +20,15 @@ public class GaugeRenderer extends KineticTileEntityRenderer { protected GaugeBlock.Type type; - public GaugeRenderer(TileEntityRendererDispatcher dispatcher, GaugeBlock.Type type) { + public static GaugeRenderer speed(TileEntityRendererDispatcher dispatcher) { + return new GaugeRenderer(dispatcher, Type.SPEED); + } + + public static GaugeRenderer stress(TileEntityRendererDispatcher dispatcher) { + return new GaugeRenderer(dispatcher, Type.STRESS); + } + + protected GaugeRenderer(TileEntityRendererDispatcher dispatcher, GaugeBlock.Type type) { super(dispatcher); this.type = type; } diff --git a/src/main/java/com/simibubi/create/content/contraptions/relays/gearbox/GearboxBlock.java b/src/main/java/com/simibubi/create/content/contraptions/relays/gearbox/GearboxBlock.java index 7995f758d..9ef54a817 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/relays/gearbox/GearboxBlock.java +++ b/src/main/java/com/simibubi/create/content/contraptions/relays/gearbox/GearboxBlock.java @@ -31,7 +31,7 @@ public class GearboxBlock extends RotatedPillarKineticBlock { @Override public TileEntity createTileEntity(BlockState state, IBlockReader world) { - return AllTileEntities.DEPLOYER.create(); + return AllTileEntities.GEARBOX.create(); } @Override diff --git a/src/main/resources/assets/create/models/block/cart_assembler/block.json b/src/main/resources/assets/create/models/block/cart_assembler/block.json index 8ffd6f8bf..f86811033 100644 --- a/src/main/resources/assets/create/models/block/cart_assembler/block.json +++ b/src/main/resources/assets/create/models/block/cart_assembler/block.json @@ -1,93 +1,103 @@ { - "__comment": "Model generated using MrCrayfish's Model Creator (https://mrcrayfish.com/tools?id=mc)", + "credit": "Made with Blockbench", "parent": "block/block", - "textures": { - "particle": "create:block/linear_chassis_side", - "gearbox_top": "create:block/gearbox_top", - "clutch_off": "create:block/clutch_off", - "rail": "minecraft:block/rail", - "translation_chassis_side": "create:block/linear_chassis_side" - }, - "elements": [ - { - "name": "Rail", - "from": [ 0, 1, 0 ], - "to": [ 16, 1, 16 ], - "faces": { - "up": { "texture": "#rail", "uv": [ 0, 0, 16, 16 ] }, - "down": { "texture": "#rail", "uv": [ 0, 0, 16, 16 ], "rotation": 180 } - } - }, - { - "name": "Side", - "from": [ 0, 0, 0 ], - "to": [ 2, 16, 16 ], - "faces": { - "north": { "texture": "#gearbox_top", "uv": [ 14, 0, 16, 16 ] }, - "east": { "texture": "#translation_chassis_side", "uv": [ 0, 0, 16, 16 ], "rotation": 90 }, - "south": { "texture": "#gearbox_top", "uv": [ 0, 16, 2, 0 ] }, - "west": { "texture": "#translation_chassis_side", "uv": [ 0, 0, 16, 16 ], "rotation": 90 }, - "up": { "texture": "#translation_chassis_side", "uv": [ 0, 0, 2, 16 ] }, - "down": { "texture": "#translation_chassis_side", "uv": [ 0, 0, 2, 16 ] } - } - }, - { - "name": "Side", - "from": [ 14, 0, 0 ], - "to": [ 16, 16, 16 ], - "faces": { - "north": { "texture": "#gearbox_top", "uv": [ 0, 0, 2, 16 ] }, - "east": { "texture": "#translation_chassis_side", "uv": [ 0, 0, 16, 16 ], "rotation": 90 }, - "south": { "texture": "#gearbox_top", "uv": [ 14, 16, 16, 0 ] }, - "west": { "texture": "#translation_chassis_side", "uv": [ 0, 0, 16, 16 ], "rotation": 90 }, - "up": { "texture": "#translation_chassis_side", "uv": [ 14, 0, 16, 16 ] }, - "down": { "texture": "#translation_chassis_side", "uv": [ 14, 0, 16, 16 ] } - } - }, - { - "name": "Top", - "from": [ 2, 14, 0 ], - "to": [ 14, 16, 16 ], - "faces": { - "north": { "texture": "#gearbox_top", "uv": [ 2, 0, 14, 2 ] }, - "south": { "texture": "#gearbox_top", "uv": [ 2, 0, 14, 2 ] }, - "up": { "texture": "#translation_chassis_side", "uv": [ 2, 0, 14, 16 ], "rotation": 180 }, - "down": { "texture": "#translation_chassis_side", "uv": [ 2, 0, 14, 16 ] } - } - }, - { - "name": "Indicator", - "from": [ 1, 10, 2 ], - "to": [ 15, 14, 14 ], - "faces": { - "north": { "texture": "#clutch_off", "uv": [ 1, 6, 15, 10 ] }, - "south": { "texture": "#clutch_off", "uv": [ 1, 6, 15, 10 ] }, - "down": { "texture": "#gearbox_top", "uv": [ 1, 2, 15, 14 ] } - } - }, - { - "name": "Side", - "from": [ 15.875, 0.062, 1.125 ], - "to": [ 17.875, 12.937, 14.875 ], - "faces": { - "north": { "texture": "#gearbox_top", "uv": [ 0, 0, 2, 12.875 ] }, - "east": { "texture": "#translation_chassis_side", "uv": [ 2, 1, 14, 15 ], "rotation": 90 }, - "south": { "texture": "#gearbox_top", "uv": [ 14, 16, 16, 3 ] }, - "up": { "texture": "#translation_chassis_side", "uv": [ 7, 1, 9, 15 ] }, - "down": { "texture": "#translation_chassis_side", "uv": [ 7, 1, 9, 15 ] } - } - }, - { - "name": "Side", - "from": [ -1.875, 0.062, 1.125 ], - "to": [ 0.125, 12.937, 14.875 ], - "faces": { - "north": { "texture": "#gearbox_top", "uv": [ 14, 0, 16, 12.875 ] }, - "south": { "texture": "#gearbox_top", "uv": [ 0, 16, 2, 3 ] }, - "west": { "texture": "#translation_chassis_side", "uv": [ 2, 1, 14, 15 ], "rotation": 90 }, - "up": { "texture": "#translation_chassis_side", "uv": [ 7, 1, 9, 15 ] }, - "down": { "texture": "#translation_chassis_side", "uv": [ 7, 1, 9, 15 ] } - } - } - ] + "textures": { + "4": "create:block/bearing_top", + "5": "create:block/mechanical_bearing_side", + "clutch_off": "create:block/clutch_off", + "rail": "block/rail", + "translation_chassis_side": "create:block/cart_assembler_side", + "particle": "create:block/cart_assembler_side" + }, + "elements": [ + { + "name": "Rail", + "from": [0, 1, 0], + "to": [16, 1, 16], + "faces": { + "up": {"uv": [0, 0, 16, 16], "texture": "#rail"}, + "down": {"uv": [0, 0, 16, 16], "rotation": 180, "texture": "#rail"} + } + }, + { + "name": "Side", + "from": [13.875, 0.062, 1.125], + "to": [17.875, 13.937, 14.875], + "faces": { + "north": {"uv": [1, 4, 15, 0], "rotation": 90, "texture": "#translation_chassis_side"}, + "east": {"uv": [1, 1, 15, 15], "rotation": 90, "texture": "#translation_chassis_side"}, + "south": {"uv": [1, 0, 15, 4], "rotation": 90, "texture": "#translation_chassis_side"}, + "west": {"uv": [1, 1, 15, 15], "rotation": 90, "texture": "#translation_chassis_side"}, + "up": {"uv": [5, 1, 9, 15], "texture": "#translation_chassis_side"}, + "down": {"uv": [2, 1, 6, 15], "texture": "#translation_chassis_side"} + } + }, + { + "name": "Side", + "from": [-1.875, 0.062, 1.125], + "to": [2.125, 13.937, 14.875], + "faces": { + "north": {"uv": [1, 0, 15, 4], "rotation": 90, "texture": "#translation_chassis_side"}, + "east": {"uv": [1, 15, 15, 1], "rotation": 90, "texture": "#translation_chassis_side"}, + "south": {"uv": [1, 4, 15, 0], "rotation": 90, "texture": "#translation_chassis_side"}, + "west": {"uv": [1, 15, 15, 1], "rotation": 90, "texture": "#translation_chassis_side"}, + "up": {"uv": [9, 1, 5, 15], "texture": "#translation_chassis_side"}, + "down": {"uv": [6, 1, 2, 15], "texture": "#translation_chassis_side"} + } + }, + { + "from": [0, 12, 0], + "to": [16, 16, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 23, 8]}, + "faces": { + "north": {"uv": [0, 0, 16, 4], "texture": "#5"}, + "east": {"uv": [0, 0, 16, 4], "texture": "#5"}, + "south": {"uv": [0, 0, 16, 4], "texture": "#5"}, + "west": {"uv": [0, 0, 16, 4], "texture": "#5"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#4"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#translation_chassis_side"} + } + }, + { + "from": [2, 10, 1], + "to": [14, 12, 15], + "rotation": {"angle": 0, "axis": "y", "origin": [18, 22, 10]}, + "faces": { + "north": {"uv": [2, 7, 14, 9], "texture": "#clutch_off"}, + "south": {"uv": [2, 7, 14, 9], "texture": "#clutch_off"}, + "down": {"uv": [2, 1, 14, 15], "texture": "#translation_chassis_side"} + } + } + ], + "display": { + "thirdperson_righthand": { + "rotation": [75, 45, 0], + "translation": [0, 2.5, 0], + "scale": [0.375, 0.375, 0.375] + }, + "thirdperson_lefthand": { + "rotation": [75, 45, 0], + "translation": [0, 2.5, 0], + "scale": [0.375, 0.375, 0.375] + }, + "firstperson_righthand": { + "rotation": [0, 45, 0], + "scale": [0.4, 0.4, 0.4] + }, + "firstperson_lefthand": { + "rotation": [0, 225, 0], + "scale": [0.4, 0.4, 0.4] + }, + "ground": { + "translation": [0, 3, 0], + "scale": [0.25, 0.25, 0.25] + }, + "gui": { + "rotation": [30, 225, 0], + "scale": [0.625, 0.625, 0.625] + }, + "fixed": { + "scale": [0.5, 0.5, 0.5] + } + } } \ No newline at end of file diff --git a/src/main/resources/assets/create/models/block/cart_assembler/minecart_anchor.json b/src/main/resources/assets/create/models/block/cart_assembler/minecart_anchor.json index 6ba0d7063..6be0bc082 100644 --- a/src/main/resources/assets/create/models/block/cart_assembler/minecart_anchor.json +++ b/src/main/resources/assets/create/models/block/cart_assembler/minecart_anchor.json @@ -1,7 +1,7 @@ { "__comment": "Model generated using MrCrayfish's Model Creator (https://mrcrayfish.com/tools?id=mc)", "textures": { - "translation_chassis_side": "create:block/linear_chassis_side" + "translation_chassis_side": "create:block/cart_assembler_side" }, "elements": [ { diff --git a/src/main/resources/assets/create/models/block/gearbox/block.json b/src/main/resources/assets/create/models/block/gearbox/block.json index 893db5ca3..e3fe13736 100644 --- a/src/main/resources/assets/create/models/block/gearbox/block.json +++ b/src/main/resources/assets/create/models/block/gearbox/block.json @@ -1,48 +1,48 @@ { - "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", + "credit": "Made with Blockbench", "parent": "block/block", - "textures": { - "0": "create:block/gearbox_top", - "1": "create:block/gearbox", - "particle": "create:block/gearbox_top" - }, - "elements": [ - { - "name": "Bottom", - "from": [ 0.0, 0.0, 0.0 ], - "to": [ 16.0, 2.0, 16.0 ], - "faces": { - "north": { "texture": "#0", "uv": [ 0.0, 14.0, 16.0, 16.0 ] }, - "east": { "texture": "#0", "uv": [ 0.0, 14.0, 16.0, 16.0 ] }, - "south": { "texture": "#0", "uv": [ 0.0, 14.0, 16.0, 16.0 ] }, - "west": { "texture": "#0", "uv": [ 0.0, 14.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 ] } - } - }, - { - "name": "Core", - "from": [ 1.0, 2.0, 1.0 ], - "to": [ 15.0, 14.0, 15.0 ], - "faces": { - "north": { "texture": "#1", "uv": [ 1.0, 2.0, 15.0, 14.0 ] }, - "east": { "texture": "#1", "uv": [ 1.0, 2.0, 15.0, 14.0 ] }, - "south": { "texture": "#1", "uv": [ 1.0, 2.0, 15.0, 14.0 ] }, - "west": { "texture": "#1", "uv": [ 1.0, 2.0, 15.0, 14.0 ] } - } - }, - { - "name": "Top", - "from": [ 0.0, 14.0, 0.0 ], - "to": [ 16.0, 16.0, 16.0 ], - "faces": { - "north": { "texture": "#0", "uv": [ 0.0, 0.0, 16.0, 2.0 ] }, - "east": { "texture": "#0", "uv": [ 0.0, 0.0, 16.0, 2.0 ] }, - "south": { "texture": "#0", "uv": [ 0.0, 0.0, 16.0, 2.0 ] }, - "west": { "texture": "#0", "uv": [ 0.0, 0.0, 16.0, 2.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 ] } - } - } - ] + "textures": { + "0": "create:block/andesite_casing", + "1": "create:block/gearbox", + "particle": "create:block/andesite_casing" + }, + "elements": [ + { + "name": "Bottom", + "from": [0, 0, 0], + "to": [16, 2, 16], + "faces": { + "north": {"uv": [0, 14, 16, 16], "texture": "#0"}, + "east": {"uv": [0, 14, 16, 16], "texture": "#0"}, + "south": {"uv": [0, 14, 16, 16], "texture": "#0"}, + "west": {"uv": [0, 14, 16, 16], "texture": "#0"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#0"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#0"} + } + }, + { + "name": "Core", + "from": [1, 2, 1], + "to": [15, 14, 15], + "faces": { + "north": {"uv": [1, 2, 15, 14], "texture": "#1"}, + "east": {"uv": [1, 2, 15, 14], "texture": "#1"}, + "south": {"uv": [1, 2, 15, 14], "texture": "#1"}, + "west": {"uv": [1, 2, 15, 14], "texture": "#1"} + } + }, + { + "name": "Top", + "from": [0, 14, 0], + "to": [16, 16, 16], + "faces": { + "north": {"uv": [0, 0, 16, 2], "texture": "#0"}, + "east": {"uv": [0, 0, 16, 2], "texture": "#0"}, + "south": {"uv": [0, 0, 16, 2], "texture": "#0"}, + "west": {"uv": [0, 0, 16, 2], "texture": "#0"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#0"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#0"} + } + } + ] } \ No newline at end of file diff --git a/src/main/resources/assets/create/models/block/gearbox/item.json b/src/main/resources/assets/create/models/block/gearbox/item.json index aa9a6d7d1..cd7ada680 100644 --- a/src/main/resources/assets/create/models/block/gearbox/item.json +++ b/src/main/resources/assets/create/models/block/gearbox/item.json @@ -2,7 +2,7 @@ "credit": "Made with Blockbench", "parent": "block/block", "textures": { - "0": "create:block/gearbox_top", + "0": "create:block/andesite_casing", "1": "create:block/gearbox", "particle": "create:block/axis", "1_0": "create:block/axis", diff --git a/src/main/resources/assets/create/models/block/gearbox/item_vertical.json b/src/main/resources/assets/create/models/block/gearbox/item_vertical.json index d802c2cac..c76ff5ce0 100644 --- a/src/main/resources/assets/create/models/block/gearbox/item_vertical.json +++ b/src/main/resources/assets/create/models/block/gearbox/item_vertical.json @@ -4,7 +4,7 @@ "textures": { "0": "create:block/axis", "1": "create:block/axis_top", - "gearbox_top": "create:block/gearbox_top", + "gearbox_top": "create:block/andesite_casing", "gearbox": "create:block/gearbox", "particle": "create:block/axis" }, diff --git a/src/main/resources/assets/create/textures/block/cart_assembler_side.png b/src/main/resources/assets/create/textures/block/cart_assembler_side.png new file mode 100644 index 0000000000000000000000000000000000000000..80dcb5f01115cec5adad15f1c4b86e6dfe98f9d4 GIT binary patch literal 472 zcmV;}0Vn>6P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!TFjL}+y0oQe*ZQHgii`}qTET+>bpU>xU94nWuG1u1ydK zY?|EnzcTeOj`E^L#TYi~hn3-W{GMC_uh6wgvOEyJR5ENgPH1WoZ2D-aNzhQg<9wtQ zRp19>5glzzoO1~^8FYSz2s8@7PXcHX5XyZ{XTonMx0|=a-uUeZalH~<8UkC