diff --git a/src/main/java/com/simibubi/create/AllBlockPartials.java b/src/main/java/com/simibubi/create/AllBlockPartials.java index 54122026a..f0b558da7 100644 --- a/src/main/java/com/simibubi/create/AllBlockPartials.java +++ b/src/main/java/com/simibubi/create/AllBlockPartials.java @@ -109,6 +109,8 @@ public class AllBlockPartials { SPOUT_TOP = get("spout/top"), SPOUT_MIDDLE = get("spout/middle"), SPOUT_BOTTOM = get("spout/bottom"), + SPEED_CONTROLLER_BRACKET = get("rotation_speed_controller/bracket"), + COUPLING_ATTACHMENT = getEntity("minecart_coupling/attachment"), COUPLING_RING = getEntity("minecart_coupling/ring"), COUPLING_CONNECTOR = getEntity("minecart_coupling/connector") diff --git a/src/main/java/com/simibubi/create/AllShapes.java b/src/main/java/com/simibubi/create/AllShapes.java index ee77c574d..ad49e3edb 100644 --- a/src/main/java/com/simibubi/create/AllShapes.java +++ b/src/main/java/com/simibubi/create/AllShapes.java @@ -41,10 +41,6 @@ public class AllShapes { SAIL_FRAME_COLLISION = shape(0, 5, 0, 16, 9, 16).erase(2, 0, 2, 14, 16, 14) .forDirectional(), SAIL_FRAME = shape(0, 5, 0, 16, 9, 16).forDirectional(), SAIL = shape(0, 5, 0, 16, 10, 16).forDirectional(), - SPEED_CONTROLLER = shape(0, 0, 0, 16, 2, 16).add(1, 1, 1, 15, 15, 15) - .erase(0, 8, 5, 16, 16, 11) - .add(2, 9, 2, 14, 14, 14) - .forHorizontalAxis(), HARVESTER_BASE = shape(0, 2, 0, 16, 14, 3).forDirectional(SOUTH), NOZZLE = shape(2, 0, 2, 14, 14, 14).add(1, 13, 1, 15, 15, 15) .erase(3, 13, 3, 13, 15, 13) @@ -144,6 +140,8 @@ public class AllShapes { BASIN_COLLISION_SHAPE = shape(0, 2, 0, 16, 13, 16).erase(2, 5, 2, 14, 16, 14) .add(2, 0, 2, 14, 2, 14) .build(), + SPEED_CONTROLLER = shape(0, 0, 0, 16, 4, 16).add(1, 1, 1, 15, 13, 15) + .add(0, 8, 0, 16, 14, 16).build(), HEATER_BLOCK_SHAPE = shape(2, 0, 2, 14, 14, 14).add(0, 0, 0, 16, 4, 16) .build(), HEATER_BLOCK_SPECIAL_COLLISION_SHAPE = shape(0, 0, 0, 16, 4, 16).build(), diff --git a/src/main/java/com/simibubi/create/content/contraptions/relays/advanced/SpeedControllerBlock.java b/src/main/java/com/simibubi/create/content/contraptions/relays/advanced/SpeedControllerBlock.java index 7604042ff..5d9071e98 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/relays/advanced/SpeedControllerBlock.java +++ b/src/main/java/com/simibubi/create/content/contraptions/relays/advanced/SpeedControllerBlock.java @@ -1,16 +1,21 @@ package com.simibubi.create.content.contraptions.relays.advanced; +import java.util.function.Predicate; + import com.simibubi.create.AllBlocks; import com.simibubi.create.AllShapes; import com.simibubi.create.AllTileEntities; import com.simibubi.create.content.contraptions.base.HorizontalAxisKineticBlock; import com.simibubi.create.content.contraptions.relays.elementary.CogWheelBlock; import com.simibubi.create.content.contraptions.relays.elementary.CogwheelBlockItem; +import com.simibubi.create.foundation.block.ITE; import com.simibubi.create.foundation.utility.VecHelper; import com.simibubi.create.foundation.utility.placement.IPlacementHelper; import com.simibubi.create.foundation.utility.placement.PlacementHelpers; import com.simibubi.create.foundation.utility.placement.PlacementOffset; + import mcp.MethodsReturnNonnullByDefault; +import net.minecraft.block.Block; import net.minecraft.block.BlockState; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.item.BlockItemUseContext; @@ -27,9 +32,7 @@ import net.minecraft.util.math.shapes.VoxelShape; import net.minecraft.world.IBlockReader; import net.minecraft.world.World; -import java.util.function.Predicate; - -public class SpeedControllerBlock extends HorizontalAxisKineticBlock { +public class SpeedControllerBlock extends HorizontalAxisKineticBlock implements ITE { private static final int placementHelperId = PlacementHelpers.register(new PlacementHelper()); @@ -41,17 +44,28 @@ public class SpeedControllerBlock extends HorizontalAxisKineticBlock { public TileEntity createTileEntity(BlockState state, IBlockReader world) { return AllTileEntities.ROTATION_SPEED_CONTROLLER.create(); } - + @Override public BlockState getStateForPlacement(BlockItemUseContext context) { - BlockState above = context.getWorld().getBlockState(context.getPos().up()); - if (CogWheelBlock.isLargeCog(above) && above.get(CogWheelBlock.AXIS).isHorizontal()) + BlockState above = context.getWorld() + .getBlockState(context.getPos() + .up()); + if (CogWheelBlock.isLargeCog(above) && above.get(CogWheelBlock.AXIS) + .isHorizontal()) return getDefaultState().with(HORIZONTAL_AXIS, above.get(CogWheelBlock.AXIS) == Axis.X ? Axis.Z : Axis.X); return super.getStateForPlacement(context); } @Override - public ActionResultType onUse(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockRayTraceResult ray) { + public void neighborChanged(BlockState state, World world, BlockPos pos, Block p_220069_4_, BlockPos neighbourPos, + boolean p_220069_6_) { + if (neighbourPos.equals(pos.up())) + withTileEntityDo(world, pos, SpeedControllerTileEntity::updateBracket); + } + + @Override + public ActionResultType onUse(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, + BlockRayTraceResult ray) { IPlacementHelper helper = PlacementHelpers.get(placementHelperId); ItemStack heldItem = player.getHeldItem(hand); @@ -72,7 +86,7 @@ public class SpeedControllerBlock extends HorizontalAxisKineticBlock { @Override public VoxelShape getShape(BlockState state, IBlockReader worldIn, BlockPos pos, ISelectionContext context) { - return AllShapes.SPEED_CONTROLLER.get(state.get(HORIZONTAL_AXIS)); + return AllShapes.SPEED_CONTROLLER; } @MethodsReturnNonnullByDefault @@ -90,12 +104,15 @@ public class SpeedControllerBlock extends HorizontalAxisKineticBlock { @Override public PlacementOffset getOffset(World world, BlockState state, BlockPos pos, BlockRayTraceResult ray) { BlockPos newPos = pos.up(); - if (!world.getBlockState(newPos).getMaterial().isReplaceable()) + if (!world.getBlockState(newPos) + .getMaterial() + .isReplaceable()) return PlacementOffset.fail(); Axis newAxis = state.get(HORIZONTAL_AXIS) == Axis.X ? Axis.Z : Axis.X; - if (CogwheelBlockItem.DiagonalCogHelper.hasLargeCogwheelNeighbor(world, newPos, newAxis) || CogwheelBlockItem.DiagonalCogHelper.hasSmallCogwheelNeighbor(world, newPos, newAxis)) + if (CogwheelBlockItem.DiagonalCogHelper.hasLargeCogwheelNeighbor(world, newPos, newAxis) + || CogwheelBlockItem.DiagonalCogHelper.hasSmallCogwheelNeighbor(world, newPos, newAxis)) return PlacementOffset.fail(); return PlacementOffset.success(newPos, s -> s.with(CogWheelBlock.AXIS, newAxis)); @@ -103,7 +120,14 @@ public class SpeedControllerBlock extends HorizontalAxisKineticBlock { @Override public void renderAt(BlockPos pos, BlockState state, BlockRayTraceResult ray, PlacementOffset offset) { - IPlacementHelper.renderArrow(VecHelper.getCenterOf(pos), VecHelper.getCenterOf(offset.getPos()), Direction.getFacingFromAxis(Direction.AxisDirection.POSITIVE, state.get(HORIZONTAL_AXIS) == Axis.X ? Axis.Z : Axis.X)); + IPlacementHelper.renderArrow(VecHelper.getCenterOf(pos), VecHelper.getCenterOf(offset.getPos()), + Direction.getFacingFromAxis(Direction.AxisDirection.POSITIVE, + state.get(HORIZONTAL_AXIS) == Axis.X ? Axis.Z : Axis.X)); } } + + @Override + public Class getTileEntityClass() { + return SpeedControllerTileEntity.class; + } } diff --git a/src/main/java/com/simibubi/create/content/contraptions/relays/advanced/SpeedControllerRenderer.java b/src/main/java/com/simibubi/create/content/contraptions/relays/advanced/SpeedControllerRenderer.java index 0bd5d9096..bf43e7db4 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/relays/advanced/SpeedControllerRenderer.java +++ b/src/main/java/com/simibubi/create/content/contraptions/relays/advanced/SpeedControllerRenderer.java @@ -1,14 +1,22 @@ package com.simibubi.create.content.contraptions.relays.advanced; import com.mojang.blaze3d.matrix.MatrixStack; +import com.mojang.blaze3d.vertex.IVertexBuilder; +import com.simibubi.create.AllBlockPartials; import com.simibubi.create.CreateClient; import com.simibubi.create.content.contraptions.base.KineticTileEntityRenderer; import com.simibubi.create.foundation.tileEntity.renderer.SmartTileEntityRenderer; import com.simibubi.create.foundation.utility.SuperByteBuffer; +import net.minecraft.block.BlockState; import net.minecraft.client.renderer.IRenderTypeBuffer; import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.WorldRenderer; import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher; +import net.minecraft.util.Direction; +import net.minecraft.util.Direction.Axis; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.World; public class SpeedControllerRenderer extends SmartTileEntityRenderer { @@ -18,16 +26,30 @@ public class SpeedControllerRenderer extends SmartTileEntityRenderer type) { super(type); + hasBracket = false; + } + + @Override + public void lazyTick() { + super.lazyTick(); + updateBracket(); } @Override @@ -56,7 +67,7 @@ public class SpeedControllerTileEntity extends KineticTileEntity { } public static float getConveyedSpeed(KineticTileEntity cogWheel, KineticTileEntity speedControllerIn, - boolean targetingController) { + boolean targetingController) { if (!(speedControllerIn instanceof SpeedControllerTileEntity)) return 0; @@ -74,7 +85,7 @@ public class SpeedControllerTileEntity extends KineticTileEntity { } public static float getDesiredOutputSpeed(KineticTileEntity cogWheel, KineticTileEntity speedControllerIn, - boolean targetingController) { + boolean targetingController) { SpeedControllerTileEntity speedController = (SpeedControllerTileEntity) speedControllerIn; float targetSpeed = speedController.targetSpeed.getValue(); float speed = speedControllerIn.getTheoreticalSpeed(); @@ -103,16 +114,25 @@ public class SpeedControllerTileEntity extends KineticTileEntity { return targetSpeed; } + public void updateBracket() { + if (world == null || !world.isRemote) + return; + BlockState stateAbove = world.getBlockState(pos.up()); + hasBracket = AllBlocks.LARGE_COGWHEEL.has(stateAbove) && stateAbove.get(CogWheelBlock.AXIS) + .isHorizontal(); + } + private class ControllerValueBoxTransform extends ValueBoxTransform.Sided { @Override protected Vec3d getSouthLocation() { - return VecHelper.voxelSpace(8, 11.5f, 14); + return VecHelper.voxelSpace(8, 11f, 16); } @Override protected boolean isSideActive(BlockState state, Direction direction) { - if (direction.getAxis().isVertical()) + if (direction.getAxis() + .isVertical()) return false; return state.get(SpeedControllerBlock.HORIZONTAL_AXIS) != direction.getAxis(); } diff --git a/src/main/resources/assets/create/models/block/bracket/cog/ground.json b/src/main/resources/assets/create/models/block/bracket/cog/ground.json index d219fe22e..cb04e2b39 100644 --- a/src/main/resources/assets/create/models/block/bracket/cog/ground.json +++ b/src/main/resources/assets/create/models/block/bracket/cog/ground.json @@ -3,7 +3,8 @@ "parent": "block/block", "textures": { "4": "#plate", - "5": "#bracket" + "5": "#bracket", + "particle": "#plate" }, "elements": [ { diff --git a/src/main/resources/assets/create/models/block/clutch/item.json b/src/main/resources/assets/create/models/block/clutch/item.json index eda38aa09..102f2202d 100644 --- a/src/main/resources/assets/create/models/block/clutch/item.json +++ b/src/main/resources/assets/create/models/block/clutch/item.json @@ -14,11 +14,11 @@ "from": [0, 0, 0], "to": [16, 2, 16], "faces": { - "north": {"uv": [0, 14, 16, 16], "texture": "#0"}, + "north": {"uv": [0, 14, 16, 16], "texture": "#1"}, "east": {"uv": [0, 14, 16, 16], "texture": "#0"}, - "south": {"uv": [0, 14, 16, 16], "texture": "#0"}, + "south": {"uv": [0, 14, 16, 16], "texture": "#1"}, "west": {"uv": [0, 14, 16, 16], "texture": "#0"}, - "up": {"uv": [0, 0, 16, 16], "texture": "#0"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#1"}, "down": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#0"} } }, @@ -36,12 +36,12 @@ "from": [0, 14, 0], "to": [16, 16, 16], "faces": { - "north": {"uv": [0, 0, 16, 2], "texture": "#0"}, + "north": {"uv": [0, 0, 16, 2], "texture": "#1"}, "east": {"uv": [0, 0, 16, 2], "texture": "#0"}, - "south": {"uv": [0, 0, 16, 2], "texture": "#0"}, + "south": {"uv": [0, 0, 16, 2], "texture": "#1"}, "west": {"uv": [0, 0, 16, 2], "texture": "#0"}, "up": {"uv": [0, 0, 16, 16], "rotation": 90, "texture": "#0"}, - "down": {"uv": [0, 0, 16, 16], "texture": "#0"} + "down": {"uv": [0, 0, 16, 16], "texture": "#1"} } }, { diff --git a/src/main/resources/assets/create/models/block/gearshift/block.json b/src/main/resources/assets/create/models/block/gearshift/block.json index 1189b38c5..01d833677 100644 --- a/src/main/resources/assets/create/models/block/gearshift/block.json +++ b/src/main/resources/assets/create/models/block/gearshift/block.json @@ -14,10 +14,10 @@ "faces": { "north": {"uv": [0, 0, 16, 16], "rotation": 90, "texture": "#0"}, "east": {"uv": [0, 14, 16, 16], "rotation": 270, "texture": "#0"}, - "south": {"uv": [0, 0, 16, 16], "texture": "#0"}, + "south": {"uv": [0, 0, 16, 16], "texture": "#1"}, "west": {"uv": [0, 14, 16, 16], "rotation": 90, "texture": "#0"}, - "up": {"uv": [0, 14, 16, 16], "rotation": 180, "texture": "#0"}, - "down": {"uv": [0, 14, 16, 16], "texture": "#0"} + "up": {"uv": [0, 14, 16, 16], "rotation": 180, "texture": "#1"}, + "down": {"uv": [0, 14, 16, 16], "texture": "#1"} } }, { @@ -34,12 +34,12 @@ "from": [0, 0, 14], "to": [16, 16, 16], "faces": { - "north": {"uv": [0, 0, 16, 16], "rotation": 180, "texture": "#0"}, + "north": {"uv": [0, 0, 16, 16], "rotation": 180, "texture": "#1"}, "east": {"uv": [0, 0, 16, 2], "rotation": 270, "texture": "#0"}, "south": {"uv": [0, 0, 16, 16], "rotation": 90, "texture": "#0"}, "west": {"uv": [0, 0, 16, 2], "rotation": 90, "texture": "#0"}, - "up": {"uv": [0, 0, 16, 2], "rotation": 180, "texture": "#0"}, - "down": {"uv": [0, 0, 16, 2], "texture": "#0"} + "up": {"uv": [0, 0, 16, 2], "rotation": 180, "texture": "#1"}, + "down": {"uv": [0, 0, 16, 2], "texture": "#1"} } }, { @@ -47,7 +47,7 @@ "from": [0, 0, 2], "to": [2, 16, 14], "faces": { - "east": {"uv": [0, 2, 16, 14], "rotation": 270, "texture": "#0"}, + "east": {"uv": [0, 2, 16, 14], "rotation": 270, "texture": "#1"}, "west": {"uv": [0, 2, 16, 14], "rotation": 90, "texture": "#0"}, "up": {"uv": [14, 2, 16, 14], "rotation": 180, "texture": "#0"}, "down": {"uv": [0, 2, 2, 14], "texture": "#0"} @@ -59,7 +59,7 @@ "to": [16, 16, 14], "faces": { "east": {"uv": [0, 2, 16, 14], "rotation": 270, "texture": "#0"}, - "west": {"uv": [0, 2, 16, 14], "rotation": 90, "texture": "#0"}, + "west": {"uv": [0, 2, 16, 14], "rotation": 90, "texture": "#1"}, "up": {"uv": [0, 2, 2, 14], "rotation": 180, "texture": "#0"}, "down": {"uv": [14, 2, 16, 14], "texture": "#0"} } diff --git a/src/main/resources/assets/create/models/block/gearshift/item.json b/src/main/resources/assets/create/models/block/gearshift/item.json index 52e8f3ac2..13d81d0df 100644 --- a/src/main/resources/assets/create/models/block/gearshift/item.json +++ b/src/main/resources/assets/create/models/block/gearshift/item.json @@ -14,11 +14,11 @@ "from": [0, 0, 0], "to": [16, 2, 16], "faces": { - "north": {"uv": [0, 14, 16, 16], "texture": "#0"}, + "north": {"uv": [0, 14, 16, 16], "texture": "#1"}, "east": {"uv": [0, 14, 16, 16], "texture": "#0"}, - "south": {"uv": [0, 14, 16, 16], "texture": "#0"}, + "south": {"uv": [0, 14, 16, 16], "texture": "#1"}, "west": {"uv": [0, 14, 16, 16], "texture": "#0"}, - "up": {"uv": [0, 0, 16, 16], "texture": "#0"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#1"}, "down": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#0"} } }, @@ -36,12 +36,12 @@ "from": [0, 14, 0], "to": [16, 16, 16], "faces": { - "north": {"uv": [0, 0, 16, 2], "texture": "#0"}, + "north": {"uv": [0, 0, 16, 2], "texture": "#1"}, "east": {"uv": [0, 0, 16, 2], "texture": "#0"}, - "south": {"uv": [0, 0, 16, 2], "texture": "#0"}, + "south": {"uv": [0, 0, 16, 2], "texture": "#1"}, "west": {"uv": [0, 0, 16, 2], "texture": "#0"}, "up": {"uv": [0, 0, 16, 16], "rotation": 90, "texture": "#0"}, - "down": {"uv": [0, 0, 16, 16], "texture": "#0"} + "down": {"uv": [0, 0, 16, 16], "texture": "#1"} } }, { diff --git a/src/main/resources/assets/create/models/block/rotation_speed_controller/block.json b/src/main/resources/assets/create/models/block/rotation_speed_controller/block.json index be9c98dc7..d4da4d489 100644 --- a/src/main/resources/assets/create/models/block/rotation_speed_controller/block.json +++ b/src/main/resources/assets/create/models/block/rotation_speed_controller/block.json @@ -2,117 +2,86 @@ "credit": "Made with Blockbench", "parent": "create:block/large_wheels", "textures": { + "0": "create:block/rotation_speed_controller", + "3": "create:block/brass_funnel_plating", "4": "create:block/brass_gearbox", - "5": "create:block/brass_casing_side", - "6": "create:block/brass_casing", - "8": "create:block/encased_chain_drive_middle", - "9": "create:block/brass_block", - "particle": "create:block/brass_casing" + "5": "create:block/rotation_speed_controller_top", + "6": "create:block/brass_block", + "particle": "create:block/brass_gearbox" }, "elements": [ - { - "from": [1, 2, 1], - "to": [6, 15, 5], - "faces": { - "north": {"uv": [10, 1, 15, 14], "texture": "#4"}, - "east": {"uv": [12, 1, 16, 14], "texture": "#5"}, - "south": {"uv": [4, 1, 9, 14], "texture": "#6"}, - "west": {"uv": [1, 1, 5, 14], "texture": "#6"}, - "up": {"uv": [1, 10, 5, 15], "rotation": 90, "texture": "#9"} - } - }, - { - "from": [10, 2, 1], - "to": [15, 15, 5], - "faces": { - "north": {"uv": [15, 1, 10, 14], "texture": "#4"}, - "east": {"uv": [5, 1, 1, 14], "texture": "#6"}, - "south": {"uv": [9, 1, 4, 14], "texture": "#6"}, - "west": {"uv": [16, 1, 12, 14], "texture": "#5"}, - "up": {"uv": [1, 1, 5, 6], "rotation": 90, "texture": "#9"} - } - }, - { - "from": [1, 2, 11], - "to": [6, 15, 15], - "faces": { - "north": {"uv": [4, 1, 9, 14], "texture": "#6"}, - "east": {"uv": [0, 1, 4, 14], "texture": "#5"}, - "south": {"uv": [1, 1, 6, 14], "texture": "#4"}, - "west": {"uv": [11, 1, 15, 14], "texture": "#6"}, - "up": {"uv": [11, 10, 15, 15], "rotation": 90, "texture": "#9"} - } - }, - { - "from": [10, 2, 11], - "to": [15, 15, 15], - "faces": { - "north": {"uv": [9, 1, 4, 14], "texture": "#6"}, - "east": {"uv": [15, 1, 11, 14], "texture": "#6"}, - "south": {"uv": [6, 1, 1, 14], "texture": "#4"}, - "west": {"uv": [4, 1, 0, 14], "texture": "#5"}, - "up": {"uv": [11, 1, 15, 6], "rotation": 90, "texture": "#9"} - } - }, - { - "from": [1, 2, 5], - "to": [6, 8, 11], - "faces": { - "north": {"uv": [10, 1, 15, 14], "texture": "#4"}, - "west": {"uv": [5, 8, 11, 14], "texture": "#6"}, - "up": {"uv": [5, 3, 11, 8], "rotation": 90, "texture": "#6"} - } - }, - { - "from": [10, 2, 5], - "to": [15, 8, 11], - "faces": { - "north": {"uv": [15, 1, 10, 14], "texture": "#4"}, - "east": {"uv": [11, 8, 5, 14], "texture": "#6"}, - "up": {"uv": [5, 8, 11, 3], "rotation": 90, "texture": "#6"} - } - }, - { - "from": [10, 9, 5], - "to": [14, 14, 11], - "faces": { - "north": {"uv": [15, 1, 10, 14], "texture": "#4"}, - "east": {"uv": [12, 9, 6, 14], "texture": "#5"}, - "west": {"uv": [12, 9, 6, 14], "texture": "#5"}, - "up": {"uv": [6, 6, 12, 2], "rotation": 90, "texture": "#5"}, - "down": {"uv": [6, 6, 12, 2], "rotation": 90, "texture": "#5"} - } - }, - { - "from": [2, 9, 5], - "to": [6, 14, 11], - "faces": { - "north": {"uv": [10, 1, 15, 14], "texture": "#4"}, - "east": {"uv": [6, 9, 12, 14], "texture": "#5"}, - "west": {"uv": [6, 9, 12, 14], "texture": "#5"}, - "up": {"uv": [6, 2, 12, 6], "rotation": 90, "texture": "#5"}, - "down": {"uv": [6, 2, 12, 6], "rotation": 90, "texture": "#5"} - } - }, { "from": [0, 0, 0], - "to": [16, 2, 16], + "to": [16, 4, 16], "faces": { - "north": {"uv": [0, 14, 16, 16], "texture": "#5"}, - "east": {"uv": [0, 14, 16, 16], "texture": "#5"}, - "south": {"uv": [0, 14, 16, 16], "texture": "#5"}, - "west": {"uv": [0, 14, 16, 16], "texture": "#5"}, - "up": {"uv": [0, 0, 16, 16], "rotation": 90, "texture": "#4"}, - "down": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#6"} + "north": {"uv": [0, 12, 16, 16], "texture": "#0"}, + "east": {"uv": [0, 12, 16, 16], "texture": "#0"}, + "south": {"uv": [0, 12, 16, 16], "texture": "#0"}, + "west": {"uv": [0, 12, 16, 16], "texture": "#0"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#4"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#6"} } }, { - "from": [6, 2, 1], - "to": [10, 11, 15], + "from": [0, 8, 0], + "to": [5, 14, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 18, 8]}, "faces": { - "north": {"uv": [6, 5, 10, 14], "texture": "#4"}, - "south": {"uv": [6, 5, 10, 14], "texture": "#4"}, - "up": {"uv": [1, 6, 15, 10], "rotation": 90, "texture": "#8"} + "north": {"uv": [6, 6, 11, 0], "texture": "#0"}, + "east": {"uv": [0, 10, 16, 16], "texture": "#4"}, + "south": {"uv": [0, 0, 5, 6], "texture": "#0"}, + "west": {"uv": [0, 0, 8, 3], "texture": "#3"}, + "up": {"uv": [0, 0, 5, 16], "texture": "#5"}, + "down": {"uv": [0, 0, 5, 16], "texture": "#6"} + } + }, + { + "from": [1, 4, 1], + "to": [15, 12, 15], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 14, 8]}, + "faces": { + "north": {"uv": [1, 4, 15, 12], "texture": "#4"}, + "east": {"uv": [1, 4, 15, 12], "texture": "#0"}, + "south": {"uv": [1, 4, 15, 12], "texture": "#4"}, + "west": {"uv": [1, 4, 15, 12], "texture": "#0"}, + "up": {"uv": [1, 1, 15, 15], "texture": "#5"} + } + }, + { + "from": [11, 8, 0], + "to": [16, 14, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [19, 18, 8]}, + "faces": { + "north": {"uv": [0, 0, 5, 6], "texture": "#0"}, + "east": {"uv": [0, 0, 8, 3], "texture": "#3"}, + "south": {"uv": [6, 6, 11, 0], "texture": "#0"}, + "west": {"uv": [0, 10, 16, 16], "texture": "#4"}, + "up": {"uv": [11, 0, 16, 16], "texture": "#5"}, + "down": {"uv": [11, 0, 16, 16], "texture": "#6"} + } + }, + { + "from": [10, 11, 0], + "to": [11, 14, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [18, 18, 8]}, + "faces": { + "north": {"uv": [5, 0, 6, 3], "texture": "#0"}, + "south": {"uv": [5, 6, 6, 3], "texture": "#0"}, + "west": {"uv": [6, 0, 3, 16], "rotation": 90, "texture": "#5"}, + "up": {"uv": [11, 0, 10, 16], "texture": "#5"}, + "down": {"uv": [15, 0, 16, 16], "texture": "#6"} + } + }, + { + "from": [5, 11, 0], + "to": [6, 14, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [-2, 18, 8]}, + "faces": { + "north": {"uv": [5, 6, 6, 3], "texture": "#0"}, + "east": {"uv": [6, 0, 3, 16], "rotation": 90, "texture": "#5"}, + "south": {"uv": [5, 0, 6, 3], "texture": "#0"}, + "up": {"uv": [6, 0, 5, 16], "texture": "#5"}, + "down": {"uv": [16, 0, 15, 16], "texture": "#6"} } } ] diff --git a/src/main/resources/assets/create/models/block/rotation_speed_controller/bracket.json b/src/main/resources/assets/create/models/block/rotation_speed_controller/bracket.json new file mode 100644 index 000000000..7ca552898 --- /dev/null +++ b/src/main/resources/assets/create/models/block/rotation_speed_controller/bracket.json @@ -0,0 +1,210 @@ +{ + "credit": "Made with Blockbench", + "parent": "block/block", + "textures": { + "2": "create:block/brass_casing", + "3": "create:block/brass_casing_side", + "4": "create:block/brass_block", + "5": "create:block/rotation_speed_controller_bracket", + "6": "create:block/rotation_speed_controller", + "particle": "create:block/brass_block" + }, + "elements": [ + { + "from": [11.9, 3, 2], + "to": [14, 6, 6], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 4.5, -24]}, + "faces": { + "north": {"uv": [8, 3, 10, 6], "texture": "#5"}, + "east": {"uv": [10, 3, 14, 6], "texture": "#5"}, + "south": {"uv": [10, 3, 8, 6], "texture": "#5"}, + "up": {"uv": [10, 1, 14, 3], "rotation": 90, "texture": "#5"}, + "down": {"uv": [10, 1, 14, 3], "rotation": 90, "texture": "#5"} + } + }, + { + "from": [4.1, 3, 2], + "to": [11.9, 13, 6], + "rotation": {"angle": 0, "axis": "y", "origin": [10, 4.5, -24]}, + "faces": { + "north": {"uv": [0, 0, 8, 10], "rotation": 180, "texture": "#5"}, + "east": {"uv": [7, 0, 8, 10], "texture": "#5"}, + "south": {"uv": [0, 0, 8, 10], "rotation": 180, "texture": "#5"}, + "west": {"uv": [7, 0, 8, 10], "texture": "#5"}, + "up": {"uv": [8, 6, 16, 10], "texture": "#5"} + } + }, + { + "from": [2, 3, 2], + "to": [4.1, 6, 6], + "rotation": {"angle": 0, "axis": "y", "origin": [3, 4.5, -24]}, + "faces": { + "north": {"uv": [10, 3, 8, 6], "texture": "#5"}, + "south": {"uv": [8, 3, 10, 6], "texture": "#5"}, + "west": {"uv": [10, 3, 14, 6], "texture": "#5"}, + "up": {"uv": [10, 1, 14, 3], "rotation": 270, "texture": "#5"}, + "down": {"uv": [10, 1, 14, 3], "rotation": 270, "texture": "#5"} + } + }, + { + "from": [2, 10, 2], + "to": [4.1, 13, 6], + "rotation": {"angle": 0, "axis": "y", "origin": [3, 11.5, -24]}, + "faces": { + "north": {"uv": [10, 3, 8, 6], "texture": "#5"}, + "south": {"uv": [8, 3, 10, 6], "texture": "#5"}, + "west": {"uv": [10, 3, 14, 6], "texture": "#5"}, + "up": {"uv": [10, 1, 14, 3], "rotation": 270, "texture": "#5"}, + "down": {"uv": [10, 1, 14, 3], "rotation": 270, "texture": "#5"} + } + }, + { + "from": [12.5, 6, 3.5], + "to": [13.5, 14, 4.5], + "rotation": {"angle": 0, "axis": "y", "origin": [20, 14, -16]}, + "faces": { + "north": {"uv": [6, 13, 14, 14], "rotation": 90, "texture": "#3"}, + "east": {"uv": [6, 13, 14, 14], "rotation": 90, "texture": "#3"}, + "south": {"uv": [6, 13, 14, 14], "rotation": 90, "texture": "#3"}, + "west": {"uv": [6, 13, 14, 14], "rotation": 90, "texture": "#3"}, + "up": {"uv": [13, 9, 14, 10], "texture": "#3"}, + "down": {"uv": [0, 0, 0, 0], "texture": "#4"} + } + }, + { + "from": [11.9, 10, 2], + "to": [14, 13, 6], + "rotation": {"angle": 0, "axis": "y", "origin": [18, 11.5, -24]}, + "faces": { + "north": {"uv": [8, 3, 10, 6], "texture": "#5"}, + "east": {"uv": [10, 3, 14, 6], "texture": "#5"}, + "south": {"uv": [10, 3, 8, 6], "texture": "#5"}, + "up": {"uv": [10, 1, 14, 3], "rotation": 90, "texture": "#5"}, + "down": {"uv": [10, 1, 14, 3], "rotation": 90, "texture": "#5"} + } + }, + { + "from": [2.5, 6, 3.5], + "to": [3.5, 14, 4.5], + "rotation": {"angle": 0, "axis": "y", "origin": [10, 14, -16]}, + "faces": { + "north": {"uv": [6, 13, 14, 14], "rotation": 90, "texture": "#3"}, + "east": {"uv": [6, 13, 14, 14], "rotation": 90, "texture": "#3"}, + "south": {"uv": [6, 13, 14, 14], "rotation": 90, "texture": "#3"}, + "west": {"uv": [6, 13, 14, 14], "rotation": 90, "texture": "#3"}, + "up": {"uv": [13, 9, 14, 10], "texture": "#3"}, + "down": {"uv": [0, 0, 0, 0], "texture": "#4"} + } + }, + { + "from": [11.9, 3, 10], + "to": [14, 6, 14], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 4.5, -16]}, + "faces": { + "north": {"uv": [8, 3, 10, 6], "texture": "#5"}, + "east": {"uv": [10, 3, 14, 6], "texture": "#5"}, + "south": {"uv": [10, 3, 8, 6], "texture": "#5"}, + "up": {"uv": [10, 1, 14, 3], "rotation": 90, "texture": "#5"}, + "down": {"uv": [10, 1, 14, 3], "rotation": 90, "texture": "#5"} + } + }, + { + "from": [4.1, 3, 10], + "to": [11.9, 13, 14], + "rotation": {"angle": 0, "axis": "y", "origin": [10, 4.5, -16]}, + "faces": { + "north": {"uv": [0, 0, 8, 10], "rotation": 180, "texture": "#5"}, + "east": {"uv": [7, 0, 8, 10], "texture": "#5"}, + "south": {"uv": [0, 0, 8, 10], "rotation": 180, "texture": "#5"}, + "west": {"uv": [7, 0, 8, 10], "texture": "#5"}, + "up": {"uv": [8, 6, 16, 10], "texture": "#5"} + } + }, + { + "from": [2, 3, 10], + "to": [4.1, 6, 14], + "rotation": {"angle": 0, "axis": "y", "origin": [3, 4.5, -16]}, + "faces": { + "north": {"uv": [10, 3, 8, 6], "texture": "#5"}, + "south": {"uv": [8, 3, 10, 6], "texture": "#5"}, + "west": {"uv": [10, 3, 14, 6], "texture": "#5"}, + "up": {"uv": [10, 1, 14, 3], "rotation": 270, "texture": "#5"}, + "down": {"uv": [10, 1, 14, 3], "rotation": 270, "texture": "#5"} + } + }, + { + "from": [2, 10, 10], + "to": [4.1, 13, 14], + "rotation": {"angle": 0, "axis": "y", "origin": [3, 11.5, -16]}, + "faces": { + "north": {"uv": [10, 3, 8, 6], "texture": "#5"}, + "south": {"uv": [8, 3, 10, 6], "texture": "#5"}, + "west": {"uv": [10, 3, 14, 6], "texture": "#5"}, + "up": {"uv": [10, 1, 14, 3], "rotation": 270, "texture": "#5"}, + "down": {"uv": [10, 1, 14, 3], "rotation": 270, "texture": "#5"} + } + }, + { + "from": [12.5, 6, 11.5], + "to": [13.5, 14, 12.5], + "rotation": {"angle": 0, "axis": "y", "origin": [20, 14, -8]}, + "faces": { + "north": {"uv": [6, 13, 14, 14], "rotation": 90, "texture": "#3"}, + "east": {"uv": [6, 13, 14, 14], "rotation": 90, "texture": "#3"}, + "south": {"uv": [6, 13, 14, 14], "rotation": 90, "texture": "#3"}, + "west": {"uv": [6, 13, 14, 14], "rotation": 90, "texture": "#3"}, + "up": {"uv": [13, 9, 14, 10], "texture": "#3"}, + "down": {"uv": [0, 0, 0, 0], "texture": "#4"} + } + }, + { + "from": [11.9, 10, 10], + "to": [14, 13, 14], + "rotation": {"angle": 0, "axis": "y", "origin": [18, 11.5, -16]}, + "faces": { + "north": {"uv": [8, 3, 10, 6], "texture": "#5"}, + "east": {"uv": [10, 3, 14, 6], "texture": "#5"}, + "south": {"uv": [10, 3, 8, 6], "texture": "#5"}, + "up": {"uv": [10, 1, 14, 3], "rotation": 90, "texture": "#5"}, + "down": {"uv": [10, 1, 14, 3], "rotation": 90, "texture": "#5"} + } + }, + { + "from": [2.5, 6, 11.5], + "to": [3.5, 14, 12.5], + "rotation": {"angle": 0, "axis": "y", "origin": [10, 14, -8]}, + "faces": { + "north": {"uv": [6, 13, 14, 14], "rotation": 90, "texture": "#3"}, + "east": {"uv": [6, 13, 14, 14], "rotation": 90, "texture": "#3"}, + "south": {"uv": [6, 13, 14, 14], "rotation": 90, "texture": "#3"}, + "west": {"uv": [6, 13, 14, 14], "rotation": 90, "texture": "#3"}, + "up": {"uv": [13, 9, 14, 10], "texture": "#3"}, + "down": {"uv": [0, 0, 0, 0], "texture": "#4"} + } + }, + { + "from": [1, -2, 10], + "to": [15, 3, 15], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 1.5, 8]}, + "faces": { + "north": {"uv": [0, 10, 14, 15], "texture": "#5"}, + "east": {"uv": [11, 1, 16, 6], "texture": "#6"}, + "south": {"uv": [0, 10, 14, 15], "texture": "#5"}, + "west": {"uv": [11, 1, 16, 6], "texture": "#6"}, + "up": {"uv": [10, 1, 15, 15], "rotation": 90, "texture": "#2"} + } + }, + { + "from": [1, -2, 1], + "to": [15, 3, 6], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 1.5, 8]}, + "faces": { + "north": {"uv": [14, 10, 0, 15], "texture": "#5"}, + "east": {"uv": [11, 1, 16, 6], "texture": "#6"}, + "south": {"uv": [0, 10, 14, 15], "texture": "#5"}, + "west": {"uv": [11, 1, 16, 6], "texture": "#6"}, + "up": {"uv": [15, 1, 10, 15], "rotation": 90, "texture": "#2"} + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/create/models/block/rotation_speed_controller/item.json b/src/main/resources/assets/create/models/block/rotation_speed_controller/item.json index 3d97bf020..160965c86 100644 --- a/src/main/resources/assets/create/models/block/rotation_speed_controller/item.json +++ b/src/main/resources/assets/create/models/block/rotation_speed_controller/item.json @@ -1,101 +1,17 @@ { "credit": "Made with Blockbench", - "parent": "block/block", + "parent": "create:block/block", "textures": { "0": "create:block/axis", "3": "create:block/axis_top", "4": "create:block/brass_gearbox", - "5": "create:block/brass_casing_side", - "6": "create:block/brass_casing", - "8": "create:block/encased_chain_drive_middle", "9": "create:block/brass_block", - "particle": "create:block/brass_casing" + "particle": "create:block/brass_gearbox", + "1_0": "create:block/rotation_speed_controller", + "1_3": "create:block/brass_funnel_plating", + "1_5": "create:block/rotation_speed_controller_top" }, "elements": [ - { - "from": [1, 2, 1], - "to": [6, 15, 5], - "faces": { - "north": {"uv": [10, 1, 15, 14], "texture": "#4"}, - "east": {"uv": [12, 1, 16, 14], "texture": "#5"}, - "south": {"uv": [4, 1, 9, 14], "texture": "#6"}, - "west": {"uv": [1, 1, 5, 14], "texture": "#6"}, - "up": {"uv": [1, 10, 5, 15], "rotation": 90, "texture": "#9"} - } - }, - { - "from": [10, 2, 1], - "to": [15, 15, 5], - "faces": { - "north": {"uv": [15, 1, 10, 14], "texture": "#4"}, - "east": {"uv": [5, 1, 1, 14], "texture": "#6"}, - "south": {"uv": [9, 1, 4, 14], "texture": "#6"}, - "west": {"uv": [16, 1, 12, 14], "texture": "#5"}, - "up": {"uv": [1, 1, 5, 6], "rotation": 90, "texture": "#9"} - } - }, - { - "from": [1, 2, 11], - "to": [6, 15, 15], - "faces": { - "north": {"uv": [4, 1, 9, 14], "texture": "#6"}, - "east": {"uv": [0, 1, 4, 14], "texture": "#5"}, - "south": {"uv": [1, 1, 6, 14], "texture": "#4"}, - "west": {"uv": [11, 1, 15, 14], "texture": "#6"}, - "up": {"uv": [11, 10, 15, 15], "rotation": 90, "texture": "#9"} - } - }, - { - "from": [10, 2, 11], - "to": [15, 15, 15], - "faces": { - "north": {"uv": [9, 1, 4, 14], "texture": "#6"}, - "east": {"uv": [15, 1, 11, 14], "texture": "#6"}, - "south": {"uv": [6, 1, 1, 14], "texture": "#4"}, - "west": {"uv": [4, 1, 0, 14], "texture": "#5"}, - "up": {"uv": [11, 1, 15, 6], "rotation": 90, "texture": "#9"} - } - }, - { - "from": [1, 2, 5], - "to": [6, 8, 11], - "faces": { - "north": {"uv": [10, 1, 15, 14], "texture": "#4"}, - "west": {"uv": [5, 8, 11, 14], "texture": "#6"}, - "up": {"uv": [5, 3, 11, 8], "rotation": 90, "texture": "#6"} - } - }, - { - "from": [10, 2, 5], - "to": [15, 8, 11], - "faces": { - "north": {"uv": [15, 1, 10, 14], "texture": "#4"}, - "east": {"uv": [11, 8, 5, 14], "texture": "#6"}, - "up": {"uv": [5, 8, 11, 3], "rotation": 90, "texture": "#6"} - } - }, - { - "from": [2, 9, 5], - "to": [6, 14, 11], - "faces": { - "north": {"uv": [10, 1, 15, 14], "texture": "#4"}, - "east": {"uv": [6, 9, 12, 14], "texture": "#5"}, - "west": {"uv": [6, 9, 12, 14], "texture": "#5"}, - "up": {"uv": [8, 2, 14, 6], "rotation": 90, "texture": "#5"}, - "down": {"uv": [8, 2, 14, 6], "rotation": 90, "texture": "#5"} - } - }, - { - "from": [10, 9, 5], - "to": [14, 14, 11], - "faces": { - "north": {"uv": [15, 1, 10, 14], "texture": "#4"}, - "east": {"uv": [6, 9, 12, 14], "texture": "#5"}, - "west": {"uv": [6, 9, 12, 14], "texture": "#5"}, - "up": {"uv": [8, 2, 14, 6], "rotation": 270, "texture": "#5"}, - "down": {"uv": [8, 2, 14, 6], "rotation": 90, "texture": "#5"} - } - }, { "name": "Axis", "from": [6, 6, 0], @@ -111,24 +27,84 @@ }, { "from": [0, 0, 0], - "to": [16, 2, 16], + "to": [16, 4, 16], "faces": { - "north": {"uv": [0, 14, 16, 16], "texture": "#5"}, - "east": {"uv": [0, 14, 16, 16], "texture": "#5"}, - "south": {"uv": [0, 14, 16, 16], "texture": "#5"}, - "west": {"uv": [0, 14, 16, 16], "texture": "#5"}, - "up": {"uv": [0, 0, 16, 16], "rotation": 90, "texture": "#4"}, - "down": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#6"} + "north": {"uv": [0, 12, 16, 16], "texture": "#1_0"}, + "east": {"uv": [0, 12, 16, 16], "texture": "#1_0"}, + "south": {"uv": [0, 12, 16, 16], "texture": "#1_0"}, + "west": {"uv": [0, 12, 16, 16], "texture": "#1_0"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#4"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#9"} } }, { - "from": [6, 2, 1], - "to": [10, 11, 15], + "from": [0, 8, 0], + "to": [5, 14, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 18, 8]}, "faces": { - "north": {"uv": [6, 5, 10, 14], "texture": "#4"}, - "south": {"uv": [6, 5, 10, 14], "texture": "#4"}, - "up": {"uv": [1, 6, 15, 10], "rotation": 90, "texture": "#8"} + "north": {"uv": [6, 6, 11, 0], "texture": "#1_0"}, + "east": {"uv": [0, 10, 16, 16], "texture": "#4"}, + "south": {"uv": [0, 0, 5, 6], "texture": "#1_0"}, + "west": {"uv": [0, 0, 8, 3], "texture": "#1_3"}, + "up": {"uv": [0, 0, 5, 16], "texture": "#1_5"}, + "down": {"uv": [0, 0, 5, 16], "texture": "#9"} } + }, + { + "from": [1, 4, 1], + "to": [15, 12, 15], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 14, 8]}, + "faces": { + "north": {"uv": [1, 4, 15, 12], "texture": "#4"}, + "east": {"uv": [1, 4, 15, 12], "texture": "#1_0"}, + "south": {"uv": [1, 4, 15, 12], "texture": "#4"}, + "west": {"uv": [1, 4, 15, 12], "texture": "#1_0"}, + "up": {"uv": [1, 1, 15, 15], "texture": "#1_5"} + } + }, + { + "from": [11, 8, 0], + "to": [16, 14, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [19, 18, 8]}, + "faces": { + "north": {"uv": [0, 0, 5, 6], "texture": "#1_0"}, + "east": {"uv": [0, 0, 8, 3], "texture": "#1_3"}, + "south": {"uv": [6, 6, 11, 0], "texture": "#1_0"}, + "west": {"uv": [0, 10, 16, 16], "texture": "#4"}, + "up": {"uv": [11, 0, 16, 16], "texture": "#1_5"}, + "down": {"uv": [11, 0, 16, 16], "texture": "#9"} + } + }, + { + "from": [10, 11, 0], + "to": [11, 14, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [18, 18, 8]}, + "faces": { + "north": {"uv": [5, 0, 6, 3], "texture": "#1_0"}, + "south": {"uv": [5, 6, 6, 3], "texture": "#1_0"}, + "west": {"uv": [6, 0, 3, 16], "rotation": 90, "texture": "#1_5"}, + "up": {"uv": [11, 0, 10, 16], "texture": "#1_5"}, + "down": {"uv": [15, 0, 16, 16], "texture": "#9"} + } + }, + { + "from": [5, 11, 0], + "to": [6, 14, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [-2, 18, 8]}, + "faces": { + "north": {"uv": [5, 6, 6, 3], "texture": "#1_0"}, + "east": {"uv": [6, 0, 3, 16], "rotation": 90, "texture": "#1_5"}, + "south": {"uv": [5, 0, 6, 3], "texture": "#1_0"}, + "up": {"uv": [6, 0, 5, 16], "texture": "#1_5"}, + "down": {"uv": [16, 0, 15, 16], "texture": "#9"} + } + } + ], + "groups": [0, + { + "name": "block", + "origin": [8, 8, 8], + "children": [1, 2, 3, 4, 5, 6] } ] } \ No newline at end of file diff --git a/src/main/resources/assets/create/models/block/sequenced_gearshift/idle.json b/src/main/resources/assets/create/models/block/sequenced_gearshift/idle.json index 25b73b6ec..d1ea1860b 100644 --- a/src/main/resources/assets/create/models/block/sequenced_gearshift/idle.json +++ b/src/main/resources/assets/create/models/block/sequenced_gearshift/idle.json @@ -2,73 +2,44 @@ "credit": "Made with Blockbench", "parent": "block/block", "textures": { - "0": "create:block/brass_casing", "1": "create:block/brass_gearbox", "4": "create:block/sequenced_gearshift", "particle": "create:block/brass_gearbox" }, "elements": [ - { - "name": "Core", - "from": [1, 1, 1], - "to": [15, 15, 15], - "faces": { - "north": {"uv": [1, 1, 15, 15], "texture": "#1"}, - "south": {"uv": [1, 1, 15, 15], "texture": "#1"}, - "up": {"uv": [1, 1, 15, 15], "texture": "#4"}, - "down": {"uv": [1, 1, 15, 15], "texture": "#4"} - } - }, - { - "name": "Top", - "from": [0, 14, 0], - "to": [5, 16, 16], - "faces": { - "north": {"uv": [11, 0, 16, 2], "texture": "#0"}, - "east": {"uv": [0, 0, 2, 16], "rotation": 90, "texture": "#4"}, - "south": {"uv": [0, 0, 5, 2], "texture": "#0"}, - "west": {"uv": [0, 0, 2, 16], "rotation": 270, "texture": "#4"}, - "up": {"uv": [0, 0, 5, 16], "texture": "#4"}, - "down": {"uv": [0, 0, 16, 16], "texture": "#0"} - } - }, { "name": "Bottom", - "from": [0, 0, 0], - "to": [5, 2, 16], - "faces": { - "north": {"uv": [11, 14, 16, 16], "texture": "#0"}, - "east": {"uv": [2, 0, 0, 16], "rotation": 90, "texture": "#4"}, - "south": {"uv": [0, 14, 5, 16], "texture": "#0"}, - "west": {"uv": [2, 0, 0, 16], "rotation": 90, "texture": "#4"}, - "up": {"uv": [0, 16, 16, 0], "texture": "#0"}, - "down": {"uv": [0, 16, 5, 0], "texture": "#4"} - } - }, - { - "name": "Top", - "from": [11, 14, 0], + "from": [0, 14, 0], "to": [16, 16, 16], "faces": { - "north": {"uv": [16, 0, 11, 2], "texture": "#0"}, - "east": {"uv": [0, 16, 2, 0], "rotation": 90, "texture": "#4"}, - "south": {"uv": [5, 0, 0, 2], "texture": "#0"}, - "west": {"uv": [0, 16, 2, 0], "rotation": 90, "texture": "#4"}, - "up": {"uv": [11, 0, 16, 16], "texture": "#4"}, - "down": {"uv": [16, 0, 0, 16], "texture": "#0"} + "north": {"uv": [0, 14, 16, 16], "rotation": 180, "texture": "#1"}, + "east": {"uv": [0, 14, 16, 16], "rotation": 180, "texture": "#4"}, + "south": {"uv": [0, 14, 16, 16], "rotation": 180, "texture": "#1"}, + "west": {"uv": [0, 14, 16, 16], "rotation": 180, "texture": "#4"}, + "up": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#4"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#1"} } }, { - "name": "Bottom", - "from": [11, 0, 0], + "name": "Core", + "from": [1, 2, 1], + "to": [15, 14, 15], + "faces": { + "north": {"uv": [1, 2, 15, 14], "rotation": 180, "texture": "#1"}, + "south": {"uv": [1, 2, 15, 14], "rotation": 180, "texture": "#1"} + } + }, + { + "name": "Top", + "from": [0, 0, 0], "to": [16, 2, 16], "faces": { - "north": {"uv": [0, 14, 5, 16], "texture": "#0"}, - "east": {"uv": [2, 16, 0, 0], "rotation": 90, "texture": "#4"}, - "south": {"uv": [11, 14, 16, 16], "texture": "#0"}, - "west": {"uv": [2, 16, 0, 0], "rotation": 90, "texture": "#4"}, - "up": {"uv": [16, 16, 0, 0], "texture": "#0"}, - "down": {"uv": [11, 16, 16, 0], "texture": "#4"} + "north": {"uv": [0, 0, 16, 2], "rotation": 180, "texture": "#1"}, + "east": {"uv": [0, 0, 16, 2], "rotation": 180, "texture": "#4"}, + "south": {"uv": [0, 0, 16, 2], "rotation": 180, "texture": "#1"}, + "west": {"uv": [0, 0, 16, 2], "rotation": 180, "texture": "#4"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#1"}, + "down": {"uv": [0, 0, 16, 16], "rotation": 90, "texture": "#4"} } }, { @@ -76,10 +47,10 @@ "from": [0, 2, 0], "to": [2, 14, 16], "faces": { - "north": {"uv": [14, 2, 16, 14], "texture": "#0"}, - "east": {"uv": [0, 2, 16, 14], "texture": "#0"}, - "south": {"uv": [0, 2, 2, 14], "texture": "#0"}, - "west": {"uv": [0, 2, 16, 14], "texture": "#0"} + "north": {"uv": [0, 2, 2, 14], "rotation": 180, "texture": "#1"}, + "east": {"uv": [0, 2, 16, 14], "rotation": 180, "texture": "#1"}, + "south": {"uv": [14, 2, 16, 14], "rotation": 180, "texture": "#1"}, + "west": {"uv": [0, 2, 16, 14], "rotation": 180, "texture": "#4"} } }, { @@ -87,24 +58,18 @@ "from": [14, 2, 0], "to": [16, 14, 16], "faces": { - "north": {"uv": [0, 2, 2, 14], "texture": "#0"}, - "east": {"uv": [0, 2, 16, 14], "texture": "#0"}, - "south": {"uv": [14, 2, 16, 14], "texture": "#0"}, - "west": {"uv": [0, 2, 16, 14], "texture": "#0"} + "north": {"uv": [14, 2, 16, 14], "rotation": 180, "texture": "#1"}, + "east": {"uv": [0, 2, 16, 14], "rotation": 180, "texture": "#4"}, + "south": {"uv": [0, 2, 2, 14], "rotation": 180, "texture": "#1"}, + "west": {"uv": [0, 2, 16, 14], "rotation": 180, "texture": "#1"} } } ], "groups": [ { - "name": "encased_shaft", + "name": "block", "origin": [8, 8, 8], - "children": [0, 1, 2, 3, 4, 5, 6, - { - "name": "shaft", - "origin": [8, 8, 8], - "children": [] - } - ] + "children": [0, 1, 2, 3, 4] } ] } \ No newline at end of file diff --git a/src/main/resources/assets/create/models/block/sequenced_gearshift/item.json b/src/main/resources/assets/create/models/block/sequenced_gearshift/item.json index b87b557db..c6aecc103 100644 --- a/src/main/resources/assets/create/models/block/sequenced_gearshift/item.json +++ b/src/main/resources/assets/create/models/block/sequenced_gearshift/item.json @@ -2,99 +2,13 @@ "credit": "Made with Blockbench", "parent": "block/block", "textures": { - "0": "create:block/brass_casing", "1": "create:block/brass_gearbox", "4": "create:block/sequenced_gearshift", - "particle": "create:block/axis", + "particle": "create:block/brass_gearbox", "1_0": "create:block/axis", "1_1": "create:block/axis_top" }, "elements": [ - { - "name": "Core", - "from": [1, 1, 1], - "to": [15, 15, 15], - "faces": { - "north": {"uv": [1, 1, 15, 15], "texture": "#1"}, - "south": {"uv": [1, 1, 15, 15], "texture": "#1"}, - "up": {"uv": [1, 1, 15, 15], "texture": "#4"}, - "down": {"uv": [1, 1, 15, 15], "texture": "#4"} - } - }, - { - "name": "Top", - "from": [0, 14, 0], - "to": [5, 16, 16], - "faces": { - "north": {"uv": [11, 0, 16, 2], "texture": "#0"}, - "east": {"uv": [0, 0, 2, 16], "rotation": 90, "texture": "#4"}, - "south": {"uv": [0, 0, 5, 2], "texture": "#0"}, - "west": {"uv": [0, 0, 2, 16], "rotation": 270, "texture": "#4"}, - "up": {"uv": [0, 0, 5, 16], "texture": "#4"}, - "down": {"uv": [0, 0, 16, 16], "texture": "#0"} - } - }, - { - "name": "Bottom", - "from": [0, 0, 0], - "to": [5, 2, 16], - "faces": { - "north": {"uv": [11, 14, 16, 16], "texture": "#0"}, - "east": {"uv": [2, 0, 0, 16], "rotation": 90, "texture": "#4"}, - "south": {"uv": [0, 14, 5, 16], "texture": "#0"}, - "west": {"uv": [2, 0, 0, 16], "rotation": 90, "texture": "#4"}, - "up": {"uv": [0, 16, 16, 0], "texture": "#0"}, - "down": {"uv": [0, 16, 5, 0], "texture": "#4"} - } - }, - { - "name": "Top", - "from": [11, 14, 0], - "to": [16, 16, 16], - "faces": { - "north": {"uv": [16, 0, 11, 2], "texture": "#0"}, - "east": {"uv": [0, 16, 2, 0], "rotation": 90, "texture": "#4"}, - "south": {"uv": [5, 0, 0, 2], "texture": "#0"}, - "west": {"uv": [0, 16, 2, 0], "rotation": 90, "texture": "#4"}, - "up": {"uv": [11, 0, 16, 16], "texture": "#4"}, - "down": {"uv": [16, 0, 0, 16], "texture": "#0"} - } - }, - { - "name": "Bottom", - "from": [11, 0, 0], - "to": [16, 2, 16], - "faces": { - "north": {"uv": [0, 14, 5, 16], "texture": "#0"}, - "east": {"uv": [2, 16, 0, 0], "rotation": 90, "texture": "#4"}, - "south": {"uv": [11, 14, 16, 16], "texture": "#0"}, - "west": {"uv": [2, 16, 0, 0], "rotation": 90, "texture": "#4"}, - "up": {"uv": [16, 16, 0, 0], "texture": "#0"}, - "down": {"uv": [11, 16, 16, 0], "texture": "#4"} - } - }, - { - "name": "SideWest", - "from": [0, 2, 0], - "to": [2, 14, 16], - "faces": { - "north": {"uv": [14, 2, 16, 14], "texture": "#0"}, - "east": {"uv": [0, 2, 16, 14], "texture": "#0"}, - "south": {"uv": [0, 2, 2, 14], "texture": "#0"}, - "west": {"uv": [0, 2, 16, 14], "texture": "#0"} - } - }, - { - "name": "SideEast", - "from": [14, 2, 0], - "to": [16, 14, 16], - "faces": { - "north": {"uv": [0, 2, 2, 14], "texture": "#0"}, - "east": {"uv": [0, 2, 16, 14], "texture": "#0"}, - "south": {"uv": [14, 2, 16, 14], "texture": "#0"}, - "west": {"uv": [0, 2, 16, 14], "texture": "#0"} - } - }, { "name": "Axis", "from": [6, 6, 0], @@ -107,17 +21,85 @@ "up": {"uv": [6, 0, 10, 16], "texture": "#1_0"}, "down": {"uv": [6, 0, 10, 16], "rotation": 180, "texture": "#1_0"} } + }, + { + "name": "Bottom", + "from": [0, 14, 0], + "to": [16, 16, 16], + "faces": { + "north": {"uv": [0, 14, 16, 16], "rotation": 180, "texture": "#1"}, + "east": {"uv": [0, 14, 16, 16], "rotation": 180, "texture": "#4"}, + "south": {"uv": [0, 14, 16, 16], "rotation": 180, "texture": "#1"}, + "west": {"uv": [0, 14, 16, 16], "rotation": 180, "texture": "#4"}, + "up": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#4"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#1"} + } + }, + { + "name": "Core", + "from": [1, 2, 1], + "to": [15, 14, 15], + "faces": { + "north": {"uv": [1, 2, 15, 14], "rotation": 180, "texture": "#1"}, + "south": {"uv": [1, 2, 15, 14], "rotation": 180, "texture": "#1"} + } + }, + { + "name": "Top", + "from": [0, 0, 0], + "to": [16, 2, 16], + "faces": { + "north": {"uv": [0, 0, 16, 2], "rotation": 180, "texture": "#1"}, + "east": {"uv": [0, 0, 16, 2], "rotation": 180, "texture": "#4"}, + "south": {"uv": [0, 0, 16, 2], "rotation": 180, "texture": "#1"}, + "west": {"uv": [0, 0, 16, 2], "rotation": 180, "texture": "#4"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#1"}, + "down": {"uv": [0, 0, 16, 16], "rotation": 90, "texture": "#4"} + } + }, + { + "name": "SideWest", + "from": [0, 2, 0], + "to": [2, 14, 16], + "faces": { + "north": {"uv": [0, 2, 2, 14], "rotation": 180, "texture": "#1"}, + "east": {"uv": [0, 2, 16, 14], "rotation": 180, "texture": "#1"}, + "south": {"uv": [14, 2, 16, 14], "rotation": 180, "texture": "#1"}, + "west": {"uv": [0, 2, 16, 14], "rotation": 180, "texture": "#4"} + } + }, + { + "name": "SideEast", + "from": [14, 2, 0], + "to": [16, 14, 16], + "faces": { + "north": {"uv": [14, 2, 16, 14], "rotation": 180, "texture": "#1"}, + "east": {"uv": [0, 2, 16, 14], "rotation": 180, "texture": "#4"}, + "south": {"uv": [0, 2, 2, 14], "rotation": 180, "texture": "#1"}, + "west": {"uv": [0, 2, 16, 14], "rotation": 180, "texture": "#1"} + } } ], "groups": [ { "name": "encased_shaft", "origin": [8, 8, 8], - "children": [0, 1, 2, 3, 4, 5, 6, + "children": [ { "name": "shaft", "origin": [8, 8, 8], - "children": [7] + "children": [0] + } + ] + }, + { + "name": "idle", + "origin": [8, 8, 8], + "children": [ + { + "name": "block", + "origin": [8, 8, 8], + "children": [1, 2, 3, 4, 5] } ] } diff --git a/src/main/resources/assets/create/textures/block/clutch_off.png b/src/main/resources/assets/create/textures/block/clutch_off.png index 2988f8b8f..802f5bbb7 100644 Binary files a/src/main/resources/assets/create/textures/block/clutch_off.png and b/src/main/resources/assets/create/textures/block/clutch_off.png differ diff --git a/src/main/resources/assets/create/textures/block/clutch_on.png b/src/main/resources/assets/create/textures/block/clutch_on.png index 15abb7c36..c080a88d7 100644 Binary files a/src/main/resources/assets/create/textures/block/clutch_on.png and b/src/main/resources/assets/create/textures/block/clutch_on.png differ diff --git a/src/main/resources/assets/create/textures/block/gearbox.png b/src/main/resources/assets/create/textures/block/gearbox.png index 2a6056dc0..1d2cb6b81 100644 Binary files a/src/main/resources/assets/create/textures/block/gearbox.png and b/src/main/resources/assets/create/textures/block/gearbox.png differ diff --git a/src/main/resources/assets/create/textures/block/gearshift_off.png b/src/main/resources/assets/create/textures/block/gearshift_off.png index e9504c00b..e3e5d4a4c 100644 Binary files a/src/main/resources/assets/create/textures/block/gearshift_off.png and b/src/main/resources/assets/create/textures/block/gearshift_off.png differ diff --git a/src/main/resources/assets/create/textures/block/gearshift_on.png b/src/main/resources/assets/create/textures/block/gearshift_on.png index 50faee2c9..65f83e83e 100644 Binary files a/src/main/resources/assets/create/textures/block/gearshift_on.png and b/src/main/resources/assets/create/textures/block/gearshift_on.png differ diff --git a/src/main/resources/assets/create/textures/block/rotation_speed_controller.png b/src/main/resources/assets/create/textures/block/rotation_speed_controller.png new file mode 100644 index 000000000..214cd3a91 Binary files /dev/null and b/src/main/resources/assets/create/textures/block/rotation_speed_controller.png differ diff --git a/src/main/resources/assets/create/textures/block/rotation_speed_controller_bracket.png b/src/main/resources/assets/create/textures/block/rotation_speed_controller_bracket.png new file mode 100644 index 000000000..fcc00d5db Binary files /dev/null and b/src/main/resources/assets/create/textures/block/rotation_speed_controller_bracket.png differ diff --git a/src/main/resources/assets/create/textures/block/rotation_speed_controller_top.png b/src/main/resources/assets/create/textures/block/rotation_speed_controller_top.png new file mode 100644 index 000000000..5d11cd315 Binary files /dev/null and b/src/main/resources/assets/create/textures/block/rotation_speed_controller_top.png differ diff --git a/src/main/resources/assets/create/textures/block/sequenced_gearshift.png b/src/main/resources/assets/create/textures/block/sequenced_gearshift.png index 1e0a9443c..bcafe5f20 100644 Binary files a/src/main/resources/assets/create/textures/block/sequenced_gearshift.png and b/src/main/resources/assets/create/textures/block/sequenced_gearshift.png differ diff --git a/src/main/resources/assets/create/textures/block/sequenced_gearshift_1.png b/src/main/resources/assets/create/textures/block/sequenced_gearshift_1.png index 7a0d375d6..d5bc2ae41 100644 Binary files a/src/main/resources/assets/create/textures/block/sequenced_gearshift_1.png and b/src/main/resources/assets/create/textures/block/sequenced_gearshift_1.png differ diff --git a/src/main/resources/assets/create/textures/block/sequenced_gearshift_2.png b/src/main/resources/assets/create/textures/block/sequenced_gearshift_2.png index c6f63c365..f6f3304f4 100644 Binary files a/src/main/resources/assets/create/textures/block/sequenced_gearshift_2.png and b/src/main/resources/assets/create/textures/block/sequenced_gearshift_2.png differ diff --git a/src/main/resources/assets/create/textures/block/sequenced_gearshift_3.png b/src/main/resources/assets/create/textures/block/sequenced_gearshift_3.png index 0ed6ea628..95affcedb 100644 Binary files a/src/main/resources/assets/create/textures/block/sequenced_gearshift_3.png and b/src/main/resources/assets/create/textures/block/sequenced_gearshift_3.png differ diff --git a/src/main/resources/assets/create/textures/block/sequenced_gearshift_4.png b/src/main/resources/assets/create/textures/block/sequenced_gearshift_4.png index 8c4e19434..4f984c196 100644 Binary files a/src/main/resources/assets/create/textures/block/sequenced_gearshift_4.png and b/src/main/resources/assets/create/textures/block/sequenced_gearshift_4.png differ diff --git a/src/main/resources/assets/create/textures/block/sequenced_gearshift_5.png b/src/main/resources/assets/create/textures/block/sequenced_gearshift_5.png index 628c9f076..77f9f402d 100644 Binary files a/src/main/resources/assets/create/textures/block/sequenced_gearshift_5.png and b/src/main/resources/assets/create/textures/block/sequenced_gearshift_5.png differ