diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/steam/SteamEngineBlockEntity.java b/src/main/java/com/simibubi/create/content/contraptions/components/steam/SteamEngineBlockEntity.java index 180f8eedb..1193ce618 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/steam/SteamEngineBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/steam/SteamEngineBlockEntity.java @@ -55,7 +55,6 @@ public class SteamEngineBlockEntity extends SmartBlockEntity implements IHaveGog public void addBehaviours(List behaviours) { movementDirection = new ScrollOptionBehaviour<>(RotationDirection.class, Lang.translateDirect("contraptions.windmill.rotation_direction"), this, new SteamEngineValueBox()); - movementDirection.requiresWrench(); movementDirection.onlyActiveWhen(() -> { PoweredShaftBlockEntity shaft = getShaft(); return shaft == null || !shaft.hasSource(); diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/bearing/ClockworkBearingBlockEntity.java b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/bearing/ClockworkBearingBlockEntity.java index 284385ff3..219e7d487 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/bearing/ClockworkBearingBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/bearing/ClockworkBearingBlockEntity.java @@ -55,7 +55,6 @@ public class ClockworkBearingBlockEntity extends KineticBlockEntity super.addBehaviours(behaviours); operationMode = new ScrollOptionBehaviour<>(ClockHands.class, Lang.translateDirect("contraptions.clockwork.clock_hands"), this, getMovementModeSlot()); - operationMode.requiresWrench(); behaviours.add(operationMode); registerAwardables(behaviours, AllAdvancements.CLOCKWORK_BEARING); } diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/bearing/MechanicalBearingBlockEntity.java b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/bearing/MechanicalBearingBlockEntity.java index 7b50883ac..6751d1ff3 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/bearing/MechanicalBearingBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/bearing/MechanicalBearingBlockEntity.java @@ -53,7 +53,6 @@ public class MechanicalBearingBlockEntity extends GeneratingKineticBlockEntity super.addBehaviours(behaviours); movementMode = new ScrollOptionBehaviour<>(RotationMode.class, Lang.translateDirect("contraptions.movement_mode"), this, getMovementModeSlot()); - movementMode.requiresWrench(); behaviours.add(movementMode); registerAwardables(behaviours, AllAdvancements.CONTRAPTION_ACTORS); } diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/bearing/WindmillBearingBlockEntity.java b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/bearing/WindmillBearingBlockEntity.java index 6c7998850..fbb13044e 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/bearing/WindmillBearingBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/bearing/WindmillBearingBlockEntity.java @@ -102,7 +102,6 @@ public class WindmillBearingBlockEntity extends MechanicalBearingBlockEntity { behaviours.remove(movementMode); movementDirection = new ScrollOptionBehaviour<>(RotationDirection.class, Lang.translateDirect("contraptions.windmill.rotation_direction"), this, getMovementModeSlot()); - movementDirection.requiresWrench(); movementDirection.withCallback($ -> onDirectionChanged()); behaviours.add(movementDirection); registerAwardables(behaviours, AllAdvancements.WINDMILL, AllAdvancements.WINDMILL_MAXED); diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/mounted/CartAssemblerBlockEntity.java b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/mounted/CartAssemblerBlockEntity.java index 7e7e7a467..4c7320bbf 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/mounted/CartAssemblerBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/mounted/CartAssemblerBlockEntity.java @@ -235,7 +235,6 @@ public class CartAssemblerBlockEntity extends SmartBlockEntity implements IDispl public void addBehaviours(List behaviours) { movementMode = new ScrollOptionBehaviour<>(CartMovementMode.class, Lang.translateDirect("contraptions.cart_movement_mode"), this, getMovementModeSlot()); - movementMode.requiresWrench(); behaviours.add(movementMode); registerAwardables(behaviours, AllAdvancements.CONTRAPTION_ACTORS); } diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/piston/LinearActuatorBlockEntity.java b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/piston/LinearActuatorBlockEntity.java index a34d14de0..39c4e626e 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/piston/LinearActuatorBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/piston/LinearActuatorBlockEntity.java @@ -51,7 +51,6 @@ public abstract class LinearActuatorBlockEntity extends KineticBlockEntity super.addBehaviours(behaviours); movementMode = new ScrollOptionBehaviour<>(MovementMode.class, Lang.translateDirect("contraptions.movement_mode"), this, getMovementModeSlot()); - movementMode.requiresWrench(); movementMode.withCallback(t -> waitingForSpeedChange = false); behaviours.add(movementMode); registerAwardables(behaviours, AllAdvancements.CONTRAPTION_ACTORS); diff --git a/src/main/java/com/simibubi/create/content/logistics/block/belts/tunnel/BrassTunnelBlockEntity.java b/src/main/java/com/simibubi/create/content/logistics/block/belts/tunnel/BrassTunnelBlockEntity.java index 279ec0be1..819ded765 100644 --- a/src/main/java/com/simibubi/create/content/logistics/block/belts/tunnel/BrassTunnelBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/logistics/block/belts/tunnel/BrassTunnelBlockEntity.java @@ -100,7 +100,6 @@ public class BrassTunnelBlockEntity extends BeltTunnelBlockEntity implements IHa behaviours.add(selectionMode = new ScrollOptionBehaviour<>(SelectionMode.class, Lang.translateDirect("logistics.when_multiple_outputs_available"), this, new CenteredSideValueBoxTransform((state, d) -> d == Direction.UP))); - selectionMode.requiresWrench(); // Propagate settings across connected tunnels selectionMode.withCallback(setting -> { diff --git a/src/main/java/com/simibubi/create/content/logistics/block/depot/EjectorBlockEntity.java b/src/main/java/com/simibubi/create/content/logistics/block/depot/EjectorBlockEntity.java index 9cd3f5bbc..2d0ac0308 100644 --- a/src/main/java/com/simibubi/create/content/logistics/block/depot/EjectorBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/logistics/block/depot/EjectorBlockEntity.java @@ -105,8 +105,7 @@ public class EjectorBlockEntity extends KineticBlockEntity { maxStackSize = new ScrollValueBehaviour(Lang.translateDirect("weighted_ejector.stack_size"), this, new EjectorSlot()) .between(0, 64) .withFormatter(i -> i == 0 ? "*" : String.valueOf(i)) - .onlyActiveWhen(() -> state == State.CHARGED) - .requiresWrench(); + .onlyActiveWhen(() -> state == State.CHARGED); behaviours.add(maxStackSize); depotBehaviour.maxStackSize = () -> maxStackSize.getValue(); diff --git a/src/main/java/com/simibubi/create/content/logistics/block/mechanicalArm/ArmBlockEntity.java b/src/main/java/com/simibubi/create/content/logistics/block/mechanicalArm/ArmBlockEntity.java index 30d87968e..4de32967a 100644 --- a/src/main/java/com/simibubi/create/content/logistics/block/mechanicalArm/ArmBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/logistics/block/mechanicalArm/ArmBlockEntity.java @@ -106,7 +106,6 @@ public class ArmBlockEntity extends KineticBlockEntity implements ITransformable selectionMode = new ScrollOptionBehaviour(SelectionMode.class, Lang.translateDirect("logistics.when_multiple_outputs_available"), this, new SelectionModeValueBox()); - selectionMode.requiresWrench(); behaviours.add(selectionMode); registerAwardables(behaviours, AllAdvancements.ARM_BLAZE_BURNER, AllAdvancements.ARM_MANY_TARGETS, diff --git a/src/main/java/com/simibubi/create/foundation/blockEntity/behaviour/ValueBoxRenderer.java b/src/main/java/com/simibubi/create/foundation/blockEntity/behaviour/ValueBoxRenderer.java index 2e8df84f1..70c0376f2 100644 --- a/src/main/java/com/simibubi/create/foundation/blockEntity/behaviour/ValueBoxRenderer.java +++ b/src/main/java/com/simibubi/create/foundation/blockEntity/behaviour/ValueBoxRenderer.java @@ -30,7 +30,8 @@ public class ValueBoxRenderer { .getItemRenderer(); BakedModel modelWithOverrides = itemRenderer.getModel(filter, null, null, 0); boolean blockItem = modelWithOverrides.isGui3d() && !(modelWithOverrides instanceof ItemMultiLayerBakedModel); - float scale = (!blockItem ? .5f : 1f) + 1 / 64f; + boolean filterItem = filter.getItem() instanceof FilterItem; + float scale = (!blockItem && !filterItem ? .5f : 1f) + 1 / 64f; float zOffset = (!blockItem ? -.15f : 0) + customZOffset(filter.getItem()); ms.scale(scale, scale, scale); ms.translate(0, 0, zOffset); @@ -80,7 +81,7 @@ public class ValueBoxRenderer { private static float customZOffset(Item item) { float nudge = -.1f; if (item instanceof FilterItem) - return nudge; + return -nudge / 2; if (item instanceof BlockItem) { Block block = ((BlockItem) item).getBlock(); if (block instanceof AbstractSimpleShaftBlock) diff --git a/src/main/resources/assets/create/models/item/attribute_filter.json b/src/main/resources/assets/create/models/item/attribute_filter.json index 93cc3e8e0..455e07022 100644 --- a/src/main/resources/assets/create/models/item/attribute_filter.json +++ b/src/main/resources/assets/create/models/item/attribute_filter.json @@ -1,7 +1,7 @@ { "parent": "create:item/filter", "textures": { - "0": "create:item/property_filter", - "particle": "create:item/property_filter" + "layer0": "create:item/brass_filter", + "particle": "create:item/brass_filter" } } \ No newline at end of file diff --git a/src/main/resources/assets/create/models/item/filter.json b/src/main/resources/assets/create/models/item/filter.json index d4ba74a71..0df569188 100644 --- a/src/main/resources/assets/create/models/item/filter.json +++ b/src/main/resources/assets/create/models/item/filter.json @@ -1,115 +1,36 @@ { "credit": "Made with Blockbench", - "parent": "block/block", + "parent": "builtin/generated", "textures": { - "0": "create:item/filter", - "particle": "create:item/filter" + "particle": "create:item/andesite_filter", + "layer0": "create:item/andesite_filter" }, - "elements": [ - { - "name": "siderim", - "from": [5, -0.25, 6], - "to": [6, 0.75, 10], - "faces": { - "north": {"uv": [15, 0, 16, 1], "texture": "#0"}, - "east": {"uv": [14, 7, 15, 3], "rotation": 270, "texture": "#0"}, - "south": {"uv": [15, 0, 16, 1], "texture": "#0"}, - "west": {"uv": [15, 8, 16, 4], "rotation": 270, "texture": "#0"}, - "up": {"uv": [15, 4, 16, 8], "rotation": 180, "texture": "#0"}, - "down": {"uv": [15, 4, 14, 8], "rotation": 180, "texture": "#0"} - } - }, - { - "name": "siderim", - "from": [10, -0.25, 6], - "to": [11, 0.75, 10], - "faces": { - "north": {"uv": [15, 0, 16, 1], "texture": "#0"}, - "east": {"uv": [15, 8, 16, 4], "rotation": 270, "texture": "#0"}, - "south": {"uv": [15, 0, 16, 1], "texture": "#0"}, - "west": {"uv": [14, 7, 15, 3], "rotation": 270, "texture": "#0"}, - "up": {"uv": [15, 5, 16, 9], "rotation": 180, "texture": "#0"}, - "down": {"uv": [15, 4, 14, 8], "rotation": 180, "texture": "#0"} - } - }, - { - "name": "net", - "from": [6, 0.5, 6], - "to": [10, 0.6, 10], - "faces": { - "north": {"uv": [0, 0, 4, 0.1], "texture": "#0"}, - "east": {"uv": [0, 0, 4, 0.1], "texture": "#0"}, - "south": {"uv": [0, 0, 4, 0.1], "texture": "#0"}, - "west": {"uv": [0, 0, 4, 0.1], "texture": "#0"}, - "up": {"uv": [2, 0, 6, 4], "texture": "#0"}, - "down": {"uv": [2.5, 0.5, 6.5, 4.5], "texture": "#0"} - } - }, - { - "name": "toprim", - "from": [5, -0.25, 5], - "to": [11, 0.75, 6], - "faces": { - "north": {"uv": [3, 9, 9, 10], "texture": "#0"}, - "east": {"uv": [12, 9, 13, 10], "texture": "#0"}, - "south": {"uv": [3, 9, 9, 10], "rotation": 180, "texture": "#0"}, - "west": {"uv": [12, 9, 13, 10], "texture": "#0"}, - "up": {"uv": [3, 9, 9, 10], "rotation": 180, "texture": "#0"}, - "down": {"uv": [3, 9, 9, 10], "rotation": 180, "texture": "#0"} - } - }, - { - "name": "toprim", - "from": [5, -0.25, 10], - "to": [11, 0.75, 11], - "faces": { - "north": {"uv": [3, 9, 9, 10], "texture": "#0"}, - "east": {"uv": [12, 9, 13, 10], "texture": "#0"}, - "south": {"uv": [5, 9, 11, 10], "rotation": 180, "texture": "#0"}, - "west": {"uv": [12, 9, 13, 10], "texture": "#0"}, - "up": {"uv": [5, 9, 11, 10], "rotation": 180, "texture": "#0"}, - "down": {"uv": [3, 9, 9, 10], "rotation": 180, "texture": "#0"} - } - } - ], "display": { "thirdperson_righthand": { - "rotation": [75, -180, 0], - "translation": [-2.75, 2, 4.75], - "scale": [0.6, 0.6, 0.6] + "translation": [0, 1.5, 1], + "scale": [0.55, 0.55, 0.55] }, "thirdperson_lefthand": { - "rotation": [75, -180, 0], - "translation": [-2.75, 2, 4.75], - "scale": [0.6, 0.6, 0.6] + "translation": [0, 1.5, 1], + "scale": [0.55, 0.55, 0.55] }, "firstperson_righthand": { - "rotation": [75, -180, 0], - "translation": [2.25, 1.5, 4.75], - "scale": [1.35, 1.35, 1.35] + "rotation": [0, -90, 25], + "translation": [1.13, 3.2, 2.88], + "scale": [0.68, 0.68, 0.68] }, "firstperson_lefthand": { - "rotation": [75, -180, 0], - "translation": [2.25, 1.5, 4.75], - "scale": [1.35, 1.35, 1.35] - }, - "ground": { - "translation": [0, 3, 0], - "scale": [0.76, 0.76, 0.76] + "rotation": [0, -90, 25], + "translation": [1.13, 3.2, 2.88], + "scale": [0.68, 0.68, 0.68] }, "gui": { - "rotation": [30, 225, 0], - "translation": [0, 9.5, 0], + "rotation": [30, 135, 0], "scale": [1.5, 1.5, 1.5] }, - "head": { - "translation": [0, 18.25, 0], - "scale": [1.43, 1.43, 1.43] - }, "fixed": { - "rotation": [90, 0, 179.5], - "translation": [0, 0, -15], - "scale": [2.04, 2.04, 2.04] + "rotation": [0, 180, 0], + "scale": [2, 2, 2] } } } \ No newline at end of file diff --git a/src/main/resources/assets/create/textures/item/andesite_filter.png b/src/main/resources/assets/create/textures/item/andesite_filter.png new file mode 100644 index 000000000..b2961e353 Binary files /dev/null and b/src/main/resources/assets/create/textures/item/andesite_filter.png differ diff --git a/src/main/resources/assets/create/textures/item/brass_filter.png b/src/main/resources/assets/create/textures/item/brass_filter.png new file mode 100644 index 000000000..d764142f8 Binary files /dev/null and b/src/main/resources/assets/create/textures/item/brass_filter.png differ diff --git a/src/main/resources/assets/create/textures/item/filter.png b/src/main/resources/assets/create/textures/item/filter.png deleted file mode 100644 index fd7fad265..000000000 Binary files a/src/main/resources/assets/create/textures/item/filter.png and /dev/null differ diff --git a/src/main/resources/assets/create/textures/item/property_filter.png b/src/main/resources/assets/create/textures/item/property_filter.png deleted file mode 100644 index 695608a8a..000000000 Binary files a/src/main/resources/assets/create/textures/item/property_filter.png and /dev/null differ