diff --git a/src/main/java/rearth/oritech/client/init/ModRenderers.java b/src/main/java/rearth/oritech/client/init/ModRenderers.java index e812d5528..3da77c5f8 100644 --- a/src/main/java/rearth/oritech/client/init/ModRenderers.java +++ b/src/main/java/rearth/oritech/client/init/ModRenderers.java @@ -16,7 +16,7 @@ public static void registerRenderers() { BlockEntityRendererFactories.register(BlockEntitiesContent.PULVERIZER_ENTITY, ctx -> new MachineRenderer<>("models/pulverizer_block")); BlockEntityRendererFactories.register(BlockEntitiesContent.GRINDER_ENTITY, ctx -> new MachineRenderer<>("models/grinder_block")); BlockEntityRendererFactories.register(BlockEntitiesContent.ASSEMBLER_ENTITY, ctx -> new MachineRenderer<>("models/assembler_block")); - BlockEntityRendererFactories.register(BlockEntitiesContent.FOUNDRY_ENTITY, ctx -> new MachineRenderer<>("models/foundry_block")); + BlockEntityRendererFactories.register(BlockEntitiesContent.FOUNDRY_ENTITY, ctx -> new MachineRenderer<>("models/atomic_forge")); BlockEntityRendererFactories.register(BlockEntitiesContent.CENTRIFUGE_ENTITY, ctx -> new MachineRenderer<>("models/centrifuge_block")); BlockEntityRendererFactories.register(BlockEntitiesContent.POWERED_FURNACE_ENTITY, ctx -> new MachineRenderer<>("models/powered_furnace_block")); BlockEntityRendererFactories.register(BlockEntitiesContent.PLACER_BLOCK_ENTITY, ctx -> new MachineGantryRenderer()); diff --git a/src/main/resources/assets/oritech/animations/block/models/atomic_forge.animation.json b/src/main/resources/assets/oritech/animations/block/models/atomic_forge.animation.json new file mode 100644 index 000000000..e1cdeded2 --- /dev/null +++ b/src/main/resources/assets/oritech/animations/block/models/atomic_forge.animation.json @@ -0,0 +1,617 @@ +{ + "format_version": "1.8.0", + "animations": { + "idle": { + "loop": true + }, + "packaged": { + "animation_length": 0.25, + "bones": { + "rods": { + "scale": { + "vector": [0.799, 0.799, 0.799] + } + }, + "podest": { + "scale": { + "vector": [0.5, 0.5, 0.5] + } + }, + "outline_ring": { + "position": { + "vector": [0, -1.75, 0] + }, + "scale": { + "vector": [0.4, 0.4, 0.4] + } + }, + "ring_support": { + "scale": { + "vector": [0.3, 0.3, 0.3] + } + }, + "capacitor_bank": { + "rotation": { + "vector": [90, 0, 0] + }, + "position": { + "vector": [-15, 1.25, -11.25] + }, + "scale": { + "vector": [1, 1, 0.6] + } + }, + "tanks": { + "position": { + "vector": [17.25, 4.25, 17.75] + } + }, + "tubes": { + "position": { + "vector": [10, 0, 17] + }, + "scale": { + "vector": [0.3, 0.2, 0.5] + } + }, + "edge": { + "position": { + "vector": [15, 0, -15] + } + }, + "tubes_second": { + "position": { + "vector": [-16, -2, 18] + }, + "scale": { + "vector": [1, 0.4, 1] + } + }, + "tanks_second": { + "position": { + "vector": [-18.5, -5.5, 18.25] + }, + "scale": { + "vector": [1, 0.075, 1] + } + }, + "longPanel": { + "scale": { + "vector": [0.9, 1, 0.3] + } + }, + "bone3": { + "position": { + "vector": [-2, -6, 0] + } + }, + "bone4": { + "position": { + "vector": [-2, -6, 0] + } + }, + "bone5": { + "position": { + "vector": [2, -6, 0] + } + }, + "bone6": { + "position": { + "vector": [2, -6, 0] + } + }, + "sidePillars": { + "position": { + "vector": [0, -5, 0] + }, + "scale": { + "vector": [1, 0.2, 1] + } + }, + "panelB": { + "rotation": { + "vector": [0, 0, -90] + }, + "position": { + "vector": [-5.499, 0, 0] + } + }, + "panelA": { + "rotation": { + "vector": [0, 0, 90] + }, + "position": { + "vector": [4, 0, 0] + } + }, + "bottomPlate": { + "scale": { + "vector": [0.35, 0.35, 0.35] + } + } + } + }, + "deploy": { + "animation_length": 5.25, + "bones": { + "rods": { + "scale": { + "1.9583": { + "vector": [0.799, 0.799, 0.799] + }, + "2.5": { + "vector": [0.9, 0.9, 0.9], + "easing": "easeInOutQuart" + }, + "3.2083": { + "vector": [0.9, 0.9, 0.9] + }, + "3.5": { + "vector": [1, 1, 1] + } + } + }, + "podest": { + "scale": { + "0.9583": { + "vector": [0.5, 0.5, 0.5] + }, + "1.4167": { + "vector": [1, 1, 1], + "easing": "easeInQuart" + } + } + }, + "outline_ring": { + "position": { + "1.0833": { + "vector": [0, -1.75, 0] + }, + "1.5833": { + "vector": [0, 3.76, 0], + "easing": "easeInOutQuint" + }, + "1.875": { + "vector": [0, 3.76, 0], + "easing": "easeInOutQuint" + }, + "2.0833": { + "vector": [0, 3.76, 0.25], + "easing": "easeInOutQuint" + }, + "2.25": { + "vector": [0, 3.76, -0.19], + "easing": "easeInOutQuint" + }, + "2.5": { + "vector": [0, 3.76, 0], + "easing": "easeInOutQuint" + }, + "2.7917": { + "vector": [0, 3.76, 0], + "easing": "easeInOutQuint" + }, + "3.2083": { + "vector": [0, 0, 0], + "easing": "easeOutQuart" + } + }, + "scale": { + "0.7083": { + "vector": [0.4, 0.4, 0.4] + }, + "1.2083": { + "vector": [0.5759, 0.5759, 0.5759], + "easing": "easeInOutQuint" + }, + "2.5": { + "vector": [0.5759, 0.5759, 0.5759], + "easing": "easeInOutQuint" + }, + "2.875": { + "vector": [1, 1, 1], + "easing": "easeOutQuint" + } + } + }, + "ring_support": { + "position": { + "0.0": { + "vector": [0, 0, 0] + }, + "2.625": { + "vector": [0, -2, 0] + }, + "3.2083": { + "vector": [0, 0, 0] + } + }, + "scale": { + "2.5": { + "vector": [0.3, 0.3, 0.3] + }, + "2.875": { + "vector": [1, 0.3, 1] + }, + "3.1667": { + "vector": [1, 1, 1] + } + } + }, + "capacitor_bank": { + "rotation": { + "2.3333": { + "vector": [90, 0, 0] + }, + "2.75": { + "vector": [0, 0, 0], + "easing": "easeInOutCubic" + } + }, + "position": { + "1.7083": { + "vector": [-15, 1.25, -11.25] + }, + "2.2917": { + "vector": [0, 1.25, -11.25], + "easing": "easeInOutQuint" + }, + "2.9583": { + "vector": [0, 0, -11.25], + "easing": "easeInOutQuint" + }, + "3.5833": { + "vector": [0, 0, 0], + "easing": "easeInOutBack" + } + }, + "scale": { + "2.375": { + "vector": [1, 1, 0.6] + }, + "2.75": { + "vector": [1, 1, 1], + "easing": "easeInOutCubic" + } + } + }, + "tanks": { + "position": { + "0.0": { + "vector": [17.25, 4.25, 17.75] + }, + "0.7917": { + "vector": [17.25, -2.75, 17.75] + }, + "1.8333": { + "vector": [17.25, -2.75, 17.75] + }, + "2.5417": { + "vector": [0, -2.75, 17.75], + "easing": "easeOutQuint" + }, + "3.4583": { + "vector": [0, -2.75, 0], + "easing": "easeInOutQuart" + }, + "3.9167": { + "vector": [0, 0, 0] + } + } + }, + "tubes": { + "position": { + "2.625": { + "vector": [10, -3, 17] + }, + "2.9583": { + "vector": [0, -5, 0] + }, + "3.2083": { + "vector": [0, 0, 0] + } + }, + "scale": { + "2.875": { + "vector": [0.025, 0.2, 0.5] + }, + "3.4167": { + "vector": [0.025, 0.2, 0.5] + }, + "3.7917": { + "vector": [0.025, 1, 1] + }, + "4.125": { + "vector": [1, 1, 1] + }, + "4.5": { + "vector": [1, 1, 1] + }, + "4.7083": { + "vector": [0.985, 1, 1], + "easing": "easeInOutQuint" + }, + "4.9583": { + "vector": [1.02, 1, 1], + "easing": "easeInOutQuint" + }, + "5.25": { + "vector": [1, 1, 1] + } + } + }, + "edge": { + "position": { + "1.625": { + "vector": [15, 0, -15] + }, + "2.0833": { + "vector": [0, 0, 0], + "easing": "easeOutExpo" + } + } + }, + "tubes_second": { + "position": { + "3.2083": { + "vector": [-16, -2, 18] + }, + "3.4583": { + "vector": [-16, -2.75, 18] + }, + "4.1667": { + "vector": [0, -3, 0.5] + }, + "4.625": { + "vector": [0, 0, 0], + "easing": "easeInQuart" + } + }, + "scale": { + "4.1667": { + "vector": [1, 0.05, 1] + }, + "4.625": { + "vector": [1, 1, 1], + "easing": "easeInQuart" + } + } + }, + "tanks_second": { + "rotation": { + "vector": [0, 0, 0] + }, + "position": { + "3.4167": { + "vector": [-18.5, -5.5, 18.25] + }, + "3.875": { + "vector": [-18.5, 0, 0], + "easing": "easeOutQuint" + }, + "4.375": { + "vector": [0, 0, 0], + "easing": "easeInOutQuint" + } + }, + "scale": { + "3.0": { + "vector": [1, 0.075, 1] + }, + "3.3333": { + "vector": [1, 1, 1] + } + } + }, + "longPanel": { + "position": { + "0.9583": { + "vector": [0, 0, 0] + }, + "1.2917": { + "vector": [0, 0, 0] + }, + "1.7917": { + "vector": [0, 0, 0] + } + }, + "scale": { + "0.4167": { + "vector": [0.9, 1, 0.3] + }, + "1.1667": { + "vector": [0.9, 0.2, 0.3] + }, + "1.7083": { + "vector": [1, 0.2, 1], + "easing": "linear" + }, + "2.125": { + "vector": [1, 1, 1], + "easing": "easeInOutCirc" + } + } + }, + "bone3": { + "position": { + "3.5": { + "vector": [-2, -6, 0] + }, + "3.875": { + "vector": [0, -6, 0], + "easing": "easeInCubic" + }, + "4.3333": { + "vector": [0, 0, 0], + "easing": "easeInCubic" + } + } + }, + "bone4": { + "position": { + "4.25": { + "vector": [-2, -6, 0] + }, + "4.5": { + "vector": [0, -6, 0], + "easing": "easeInQuart" + }, + "4.875": { + "vector": [0, 0, 0], + "easing": "easeInQuart" + } + } + }, + "bone5": { + "position": { + "4.0": { + "vector": [2, -6, 0] + }, + "4.4167": { + "vector": [0, -6, 0], + "easing": "easeInQuart" + }, + "4.7083": { + "vector": [0, 0, 0], + "easing": "easeInQuart" + } + } + }, + "bone6": { + "position": { + "3.6667": { + "vector": [2, -6, 0] + }, + "4.0": { + "vector": [0, -6, 0], + "easing": "easeInCubic" + }, + "4.4583": { + "vector": [0, 0, 0], + "easing": "easeInQuart" + } + } + }, + "sidePillars": { + "position": { + "1.625": { + "vector": [0, -5, 0] + }, + "2.3333": { + "vector": [0, 0, 0], + "easing": "easeOutExpo" + }, + "2.5833": { + "vector": [0, -0.25, 0.25], + "easing": "easeInOutExpo" + }, + "2.875": { + "vector": [0, 0.2, 0.01], + "easing": "easeInOutExpo" + }, + "3.2083": { + "vector": [0, 0, 0], + "easing": "easeOutExpo" + } + }, + "scale": { + "1.2917": { + "vector": [1, 0.2, 1] + }, + "1.7083": { + "vector": [1, 1, 1], + "easing": "easeInBack" + } + } + }, + "panelB": { + "rotation": { + "0.125": { + "vector": [0, 0, -90] + }, + "0.9167": { + "vector": [0, 0, 0], + "easing": "easeInBounce", + "easingArgs": [0.2] + } + }, + "position": { + "1.0833": { + "vector": [-5.499, 0, 0] + }, + "1.5": { + "vector": [0, 0, 0], + "easing": "easeInExpo" + } + } + }, + "panelA": { + "rotation": { + "0.0": { + "vector": [0, 0, 90] + }, + "0.8333": { + "vector": [0, 0, 0], + "easing": "easeInBounce", + "easingArgs": [0.2] + } + }, + "position": { + "1.0833": { + "vector": [4, 0, 0] + }, + "1.5": { + "vector": [0, 0, 0], + "easing": "easeInOutQuart" + } + } + }, + "ring_a": { + "position": { + "3.4167": { + "vector": [0, 0, 0] + }, + "3.7083": { + "vector": [0, 0, 0.3], + "easing": "easeInOutQuart" + }, + "4.0": { + "vector": [0, 0, -0.26], + "easing": "easeInOutQuart" + }, + "4.375": { + "vector": [0, 0, 0] + } + } + }, + "ring_b": { + "position": { + "3.2917": { + "vector": [0, 0, 0] + }, + "3.5833": { + "vector": [0, -1, 0], + "easing": "easeOutBack" + }, + "3.9167": { + "vector": [0, 0, 0], + "easing": "easeOutQuint" + } + } + }, + "bottomPlate": { + "scale": { + "1.25": { + "vector": [0.35, 0.35, 0.35] + }, + "1.8333": { + "vector": [1, 1, 1], + "easing": "easeOutExpo" + } + } + } + } + } + }, + "geckolib_format_version": 2 +} \ No newline at end of file diff --git a/src/main/resources/assets/oritech/geo/block/models/atomic_forge.geo.json b/src/main/resources/assets/oritech/geo/block/models/atomic_forge.geo.json new file mode 100644 index 000000000..7e494d721 --- /dev/null +++ b/src/main/resources/assets/oritech/geo/block/models/atomic_forge.geo.json @@ -0,0 +1,236 @@ +{ + "format_version": "1.12.0", + "minecraft:geometry": [ + { + "description": { + "identifier": "geometry.unknown", + "texture_width": 256, + "texture_height": 256, + "visible_bounds_width": 4, + "visible_bounds_height": 2.5, + "visible_bounds_offset": [0, 0.75, 0] + }, + "bones": [ + { + "name": "base", + "pivot": [0, 0, 0] + }, + { + "name": "bottomPlate", + "parent": "base", + "pivot": [0, 0, 0], + "cubes": [ + {"origin": [-23, -0.003, -23], "size": [46, 1, 46], "uv": [0, 0]} + ] + }, + { + "name": "longPanel", + "parent": "base", + "pivot": [0, 0, 0], + "cubes": [ + {"origin": [-8, 0, -24], "size": [16, 2, 48], "uv": [0, 47]} + ] + }, + { + "name": "shortpanels", + "parent": "base", + "pivot": [0, 0, 0] + }, + { + "name": "panelA", + "parent": "shortpanels", + "pivot": [-11, 1, 0], + "cubes": [ + { + "origin": [-24, 0, -8], + "size": [13, 2, 16], + "uv": { + "north": {"uv": [96, 63], "uv_size": [13, 2]}, + "east": {"uv": [80, 63], "uv_size": [16, 2]}, + "south": {"uv": [160, 63], "uv_size": [13, 2]}, + "west": {"uv": [15, 2], "uv_size": [16, 2]}, + "up": {"uv": [96, 47], "uv_size": [13, 16]}, + "down": {"uv": [145, 63], "uv_size": [-13, -16]} + } + } + ] + }, + { + "name": "panelB", + "parent": "shortpanels", + "pivot": [12.5, 1, 0], + "cubes": [ + { + "origin": [1, 0, -8], + "size": [13, 2, 16], + "pivot": [12.5, 1, 0], + "rotation": [0, 180, 0], + "uv": { + "north": {"uv": [96, 63], "uv_size": [13, 2]}, + "east": {"uv": [80, 63], "uv_size": [16, 2]}, + "south": {"uv": [160, 63], "uv_size": [13, 2]}, + "west": {"uv": [15, 2], "uv_size": [16, 2]}, + "up": {"uv": [96, 47], "uv_size": [13, 16]}, + "down": {"uv": [145, 63], "uv_size": [-13, -16]} + } + } + ] + }, + { + "name": "rods", + "pivot": [0, 0, 0] + }, + { + "name": "bone3", + "parent": "rods", + "pivot": [8, 14.375, 10], + "cubes": [ + {"origin": [6, 7, 6], "size": [4, 9, 4], "uv": [46, 125]} + ] + }, + { + "name": "bone4", + "parent": "rods", + "pivot": [8, 14.375, -10], + "cubes": [ + {"origin": [6, 7, -10], "size": [4, 9, 4], "uv": [30, 125]} + ] + }, + { + "name": "bone5", + "parent": "rods", + "pivot": [-8, 14.375, -10], + "cubes": [ + {"origin": [-10, 7, -10], "size": [4, 9, 4], "uv": [14, 125]} + ] + }, + { + "name": "bone6", + "parent": "rods", + "pivot": [-8, 14.375, 10], + "cubes": [ + {"origin": [-10, 7, 6], "size": [4, 9, 4], "uv": [80, 47]} + ] + }, + { + "name": "podest", + "pivot": [0, 0, 0] + }, + { + "name": "center", + "parent": "podest", + "pivot": [0, 9, 0], + "cubes": [ + {"origin": [-7, 9, -7], "size": [14, 2, 14], "uv": [72, 97]}, + {"origin": [-6, 6, -6], "size": [12, 3, 12], "uv": [0, 47]}, + {"origin": [-13, 5, -13], "size": [26, 2, 26], "inflate": 0.01, "uv": [80, 65]}, + {"origin": [-12, 1, -12], "size": [24, 4, 24], "inflate": 0.01, "uv": [0, 97]} + ] + }, + { + "name": "sidePillars", + "parent": "podest", + "pivot": [0, 10.5, 0], + "cubes": [ + {"origin": [-8, 4, -2], "size": [2, 8, 4], "uv": [0, 47]}, + {"origin": [-2, 4, 6], "size": [4, 8, 2], "uv": [0, 62]}, + {"origin": [-2, 4, -8], "size": [4, 8, 2], "uv": [72, 97]}, + {"origin": [6, 4, -2], "size": [2, 8, 4], "uv": [36, 47]} + ] + }, + { + "name": "outline_ring", + "pivot": [0, 0, 0] + }, + { + "name": "ring_a", + "parent": "outline_ring", + "pivot": [10.57409, 8.00667, -10.59258], + "cubes": [ + {"origin": [17, 7, -10], "size": [2, 2, 20], "uv": [0, 22]}, + {"origin": [11.75, 7.02, -19.75], "size": [2, 2, 12.75], "pivot": [12.75, 8, -14.75], "rotation": [0, 45, 0], "uv": [84, 118]}, + {"origin": [-10, 7, -19], "size": [20, 2, 2], "uv": [0, 85]} + ] + }, + { + "name": "ring_b", + "parent": "outline_ring", + "pivot": [-10.58294, 8.00667, 10.56446], + "cubes": [ + {"origin": [-19, 7, -10], "size": [2, 2, 20], "uv": [0, 0]}, + {"origin": [-27.1, 7.02, -19.75], "size": [2, 2, 12.75], "pivot": [12.75, 8, -14.75], "rotation": [0, 45, 0], "uv": [114, 97]}, + {"origin": [-10, 7, 17], "size": [20, 2, 2], "uv": [0, 81]} + ] + }, + { + "name": "ring_support", + "pivot": [0, 0, 0], + "cubes": [ + {"origin": [-19, 1, -10], "size": [2, 6, 2], "uv": [24, 32]}, + {"origin": [17, 1, 8], "size": [2, 6, 2], "uv": [96, 81]}, + {"origin": [-10, 1, -19], "size": [2, 6, 2], "uv": [39, 73]}, + {"origin": [8, 1, 17], "size": [2, 6, 2], "uv": [36, 32]} + ] + }, + { + "name": "capacitor_bank", + "pivot": [17.50333, 1, 16.335], + "cubes": [ + {"origin": [14, 0, 13], "size": [7, 12, 1], "uv": [25, 62]}, + {"origin": [14, 0, 14.01], "size": [7, 11, 5], "uv": [80, 65]}, + {"origin": [20.01, 0, 14], "size": [1, 12, 6], "uv": [0, 125]}, + {"origin": [18.01, 0, 14], "size": [1, 12, 6], "uv": [112, 118]}, + {"origin": [16.01, 0, 14], "size": [1, 12, 6], "uv": [0, 22]}, + {"origin": [13.99, 0, 14], "size": [1, 12, 6], "uv": [0, 0]} + ] + }, + { + "name": "tanks", + "pivot": [-16.33333, 6, -17], + "cubes": [ + {"origin": [-16, 4, -24], "size": [4, 4, 7], "uv": [24, 0]}, + {"origin": [-24, 3, -24], "size": [6, 6, 13], "uv": [0, 62]}, + {"origin": [-16, 4, -15], "size": [4, 4, 4], "uv": [80, 81]} + ] + }, + { + "name": "tubes", + "pivot": [-13.58333, 4.51667, -17.58333], + "cubes": [ + {"origin": [-15, 1, -14], "size": [2, 3, 2], "uv": [16, 89]}, + {"origin": [-15, 1, -22], "size": [2, 3, 4], "uv": [12, 113]}, + {"origin": [-18, 5, -22], "size": [2, 2, 3], "uv": [8, 0]}, + {"origin": [-12, 5, -23], "size": [27, 2, 3], "uv": [72, 113]}, + {"origin": [-18, 5, -14], "size": [2, 2, 2], "uv": [36, 11]}, + {"origin": [-23, 1, -21], "size": [4, 3, 7], "uv": [24, 22]} + ] + }, + { + "name": "edge", + "pivot": [-17, 2, 17.5], + "cubes": [ + {"origin": [-18, 1, 18], "size": [6, 2, 2], "uv": [0, 89]}, + {"origin": [-20, 1, 12], "size": [2, 2, 8], "uv": [24, 32]} + ] + }, + { + "name": "tubes_second", + "pivot": [18.66667, 3.66667, -17.33333], + "cubes": [ + {"origin": [18, 1, -15], "size": [2, 3, 2], "uv": [8, 22]}, + {"origin": [18, 5, -18], "size": [2, 2, 2], "uv": [12, 16]}, + {"origin": [16, 1, -23], "size": [4, 3, 4], "uv": [0, 110]} + ] + }, + { + "name": "tanks_second", + "pivot": [18.5, 6.25, -17.5], + "cubes": [ + {"origin": [15, 3, -24], "size": [6, 7, 6], "uv": [0, 97]}, + {"origin": [17, 4, -16], "size": [4, 4, 4], "uv": [24, 11]} + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/oritech/textures/block/models/atomic_forge.png b/src/main/resources/assets/oritech/textures/block/models/atomic_forge.png new file mode 100644 index 000000000..3031018a1 Binary files /dev/null and b/src/main/resources/assets/oritech/textures/block/models/atomic_forge.png differ