diff --git a/color datagen/essence_storage.sh b/color datagen/essence_storage.sh new file mode 100644 index 000000000..bc868578e --- /dev/null +++ b/color datagen/essence_storage.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +node ./base_with_mask.js block/essence_storage block/essence_storage_mask essence_storage diff --git a/src/bb/bread_monster.bbmodel b/src/bb/bread_monster.bbmodel new file mode 100644 index 000000000..8d914607a --- /dev/null +++ b/src/bb/bread_monster.bbmodel @@ -0,0 +1 @@ +{"meta":{"format_version":"4.10","model_format":"modded_entity","box_uv":true},"name":"bread_monster","model_identifier":"","modded_entity_entity_class":"","modded_entity_version":"1.17","modded_entity_flip_y":true,"visible_box":[1,1,0],"variable_placeholders":"","variable_placeholder_buttons":[],"timeline_setups":[],"unhandled_root_fields":{},"resolution":{"width":64,"height":32},"elements":[{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-4,0,-5],"to":[4,6,1],"autouv":0,"color":3,"origin":[0,0,0],"faces":{"north":{"uv":[6,6,14,12],"texture":0},"east":{"uv":[0,6,6,12],"texture":0},"south":{"uv":[20,6,28,12],"texture":0},"west":{"uv":[14,6,20,12],"texture":0},"up":{"uv":[14,6,6,0],"texture":0},"down":{"uv":[22,0,14,6],"texture":0}},"type":"cube","uuid":"fa4523a4-8d01-c733-0b32-e6e9110d7e28"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-4,0,-7],"to":[4,3,-3],"autouv":0,"color":4,"inflate":0.1,"origin":[0,-2,-5],"uv_offset":[26,24],"faces":{"north":{"uv":[30,28,38,31],"texture":0},"east":{"uv":[26,28,30,31],"texture":0},"south":{"uv":[42,28,50,31],"texture":0},"west":{"uv":[38,28,42,31],"texture":0},"up":{"uv":[38,28,30,24],"texture":0},"down":{"uv":[46,24,38,28],"texture":0}},"type":"cube","uuid":"88abdc70-43b2-eae1-76fc-438ae188e456"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-4,3,-7],"to":[4,6,-2],"autouv":0,"color":4,"inflate":0.1,"origin":[0,1,-5],"uv_offset":[0,24],"faces":{"north":{"uv":[5,29,13,32],"texture":0},"east":{"uv":[0,29,5,32],"texture":0},"south":{"uv":[18,29,26,32],"texture":0},"west":{"uv":[13,29,18,32],"texture":0},"up":{"uv":[13,29,5,24],"texture":0},"down":{"uv":[21,24,13,29],"texture":0}},"type":"cube","uuid":"4045e434-568f-31c9-42c3-5129a8a4e558"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-4,0,0.9],"to":[4,6,6.9],"autouv":0,"color":3,"inflate":-0.1,"origin":[0,0,4.9],"uv_offset":[0,12],"faces":{"north":{"uv":[6,18,14,24],"texture":0},"east":{"uv":[0,18,6,24],"texture":0},"south":{"uv":[20,18,28,24],"texture":0},"west":{"uv":[14,18,20,24],"texture":0},"up":{"uv":[14,18,6,12],"texture":0},"down":{"uv":[22,12,14,18],"texture":0}},"type":"cube","uuid":"578bc61b-3bb2-8b53-b3e6-153dd51261bd"}],"outliner":[{"name":"root","origin":[0,0,0],"color":0,"uuid":"5859ff96-7f22-f022-5634-74e9ddbda30f","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":[{"name":"Body","origin":[0,3,0],"color":0,"uuid":"88720699-c6d7-c408-8ec2-c5ddd7227f0b","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["fa4523a4-8d01-c733-0b32-e6e9110d7e28",{"name":"Ljaw","origin":[0,1,-3],"color":0,"uuid":"2232c700-b7a6-4729-b081-78ff34dfbc41","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["88abdc70-43b2-eae1-76fc-438ae188e456"]},{"name":"UJaw","origin":[0,4,-3],"color":0,"uuid":"51b17377-4d34-1e21-ed59-71314a4858c4","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["4045e434-568f-31c9-42c3-5129a8a4e558"]},{"name":"tail","origin":[0,3,1],"color":0,"uuid":"6502f144-0905-ef6d-77a4-4d6f6c832582","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["578bc61b-3bb2-8b53-b3e6-153dd51261bd"]}]}]}],"textures":[{"path":"L:\\overdrive_that_matters\\src\\main\\resources\\assets\\overdrive_that_matters\\textures\\models\\bread_monster\\bread_monster.png","name":"bread_monster.png","folder":"block","namespace":"","id":"0","group":"","width":64,"height":32,"uv_width":64,"uv_height":64,"particle":false,"use_as_default":false,"layers_enabled":false,"sync_to_project":"","render_mode":"default","render_sides":"auto","pbr_channel":"color","frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":true,"saved":true,"uuid":"ab77f55b-7cd7-1d48-08ad-38d2efaed5e6","relative_path":"../main/resources/assets/overdrive_that_matters/textures/models/bread_monster/bread_monster.png","source":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAAgCAYAAACinX6EAAAAAXNSR0IArs4c6QAAA8ZJREFUaEPlWU1IVFEUPoM2QzlajX/4VwahErUKy2ihYJEQQdgiIjBd1LJFBNIqWoURLVrmInPnIjdhOdUii8iSNgb+ETg16uBP/mtoxYvvDud1fd4785jR4c10NvPm3fPuu+c7P/c797lII69byg0M+bzppkbgcCaV7M+ghY4xah1cpazpdd3j1No16dIOOmhAu0gGgEGYXf4tlv1+RxodOZpFL+6NRjQj6QFov3XQmPqh9nBetpve9S8pAVjMdYvISHoAVCnAFiMaOt7Op34ERLJQFwH8TNJHQLQU6AqtaYsg0qCjLZgcRZBDfWL+DxXuSSP8QpD/w+NrNLsU/s/iy0yj8iIPoQ5A+BlvXQ5l9c5Fre+nmocdBYxLrvZsPKxAiA+OhSu/Vc4fzzABYBBkHXke+T7ASgoA4P0PQ6s0uSCowCbJ3+2iExW7NkSBFQDrDoKIcSQAfYFaI/hthZa7Z8zQx4UdAKDHhjEAcgrJoEBvNNdNt28MOCsFOnuqhJu/fF6kjKFlc83+iTX6GVSnwM6SdDpT6BG6XAtkY1X8YaXCK1QcB8CdB4cEAGw8Ch+qOGR2Zn0TCDDelxMer3Tbd6ZjAVAmOREBGFBeXWXXEaGUYYKoDQDneWeIznn+eZp7gpRnglwcURtkAERq/A9UGMURxp/8FSZC3BbLEcDhrkqjlKfC3AvoQEh6AMAQ5cMQ9jIORVAYU6YGMA/ASQ8TIjA2O8L9gx1d6CxW7aX66l77e6fdiePQE70AFgaBZ3HNW18kTh/rOx3XC6Dt1XkcAOg4vRUAK1jWOXm84e5XZ0UAAJCN4YVH4vTQhx6fD3IfES0qAObNR9+dBcD9a/tMAJjXo2mR6bHVMNaDQaC4cg8BXdU9nsNxAFw9m2/ggCNeQQ/BUlybrQQQOk7bHpXhqNsCmQQlopDBMQyoimtsFZBaAGT2xwtJNACIpIH+JeXZ47YDoCJB3AckIgIuNpaYEaD6ArWtAIAcgQvIIMhfhhJxqMEAqIzfylNnZQrozgKw7R2YXqdY9nJst/5AMTVeqafTddfFe191PzRwjd9QaJwamlrENY+3P242hkfGqZx6Y3qnncK+4VQYLBAdIER1GMIA8MQy2YmWFiisgluUXaCCgiJ60/OJAoExAQiMh/hffhT/IXxvdO6Z6EijzW/HWJWOCQCMG+nLo9LSYqqpPmYuQl5U25PODQumkaeCEEGiLVD+/sA8g0HGu7ntlp2AaLM7f1wAsGcQggg7eIhDkkNVDlG+vnypxiirnNpWD8VqmN3n/gLOMT4/WuItIgAAAABJRU5ErkJggg=="}],"animations":[{"uuid":"d7bf1cb6-1a54-3b38-f7f3-f6cbfa366f4b","name":"idle","loop":"loop","override":false,"length":1.44,"snapping":25,"selected":false,"anim_time_update":"","blend_weight":"","start_delay":"","loop_delay":"","animators":{"88720699-c6d7-c408-8ec2-c5ddd7227f0b":{"name":"Body","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"0","y":"-2.5","z":"0"}],"uuid":"5a668d16-f5c6-8e39-03af-670568968123","time":0,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"3.33","z":"0"}],"uuid":"6f8863cd-46f7-50cb-d5ae-ad498c99f650","time":0.72,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"-2.5","z":"0"}],"uuid":"0432cfdd-65d3-56ec-d02e-92f96e3ca66c","time":1.44,"color":-1,"interpolation":"linear"}]},"2232c700-b7a6-4729-b081-78ff34dfbc41":{"name":"Ljaw","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"2.5","y":"0","z":"0"}],"uuid":"69d0bbcc-3b05-3660-2cff-5364785da4c7","time":0,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"5","y":"0","z":"0"}],"uuid":"b146f64a-62d8-3799-587c-08b0388298b8","time":0.72,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"2.5","y":"0","z":"0"}],"uuid":"ce4020e4-c2ce-c65f-d716-b92f8b196ad3","time":1.44,"color":-1,"interpolation":"linear"}]},"51b17377-4d34-1e21-ed59-71314a4858c4":{"name":"UJaw","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"-2.5","y":"0","z":"0"}],"uuid":"a12df9b3-1bb5-f85f-cd29-c1d833a4083b","time":0,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"-5","y":"0","z":"0"}],"uuid":"2caeda6c-3904-7e9a-ac45-278c455a00b8","time":0.72,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"-2.5","y":"0","z":"0"}],"uuid":"7b2a6773-0830-e658-b98f-a24f691d59cf","time":1.44,"color":-1,"interpolation":"linear"}]},"6502f144-0905-ef6d-77a4-4d6f6c832582":{"name":"tail","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"0","y":"5","z":"0"}],"uuid":"de793c8b-db32-6813-ab51-c0da733c8178","time":0,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"5","z":"0"}],"uuid":"d8ac39a5-dc82-fc1b-a448-88ffe3fbf45a","time":1.44,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"-7.5","z":"0"}],"uuid":"5e01c8c4-d7a6-98c8-d3e7-d99930c8a74e","time":0.72,"color":-1,"interpolation":"linear"}]}}},{"uuid":"6b67c492-b0cc-1672-3b1c-5de6c2d23e77","name":"move","loop":"loop","override":false,"length":1.44,"snapping":25,"selected":false,"anim_time_update":"","blend_weight":"","start_delay":"","loop_delay":"","animators":{"5859ff96-7f22-f022-5634-74e9ddbda30f":{"name":"root","type":"bone","keyframes":[{"channel":"position","data_points":[{"x":"1","y":"0","z":"2"}],"uuid":"8cda900f-d10c-7618-92f5-c1cd6c9ae5c4","time":0,"color":-1,"interpolation":"linear"},{"channel":"position","data_points":[{"x":"0","y":"5","z":"-1"}],"uuid":"b6463f24-0648-6ae0-88b7-e841c01b730d","time":0.12,"color":-1,"interpolation":"linear"},{"channel":"position","data_points":[{"x":"-1","y":"0","z":"-1"}],"uuid":"86a97c35-5faa-d7ef-982b-d7ca7b8c177d","time":0.24,"color":-1,"interpolation":"linear"},{"channel":"position","data_points":[{"x":"-2","y":"0","z":"2"}],"uuid":"2fd43a6d-c710-e031-9732-94d86746502b","time":0.72,"color":-1,"interpolation":"linear"},{"channel":"position","data_points":[{"x":"0","y":"5","z":"-1"}],"uuid":"57b6a1ef-0c55-269c-1f00-afdc0918b181","time":0.84,"color":-1,"interpolation":"linear"},{"channel":"position","data_points":[{"x":"1","y":"0","z":"-1"}],"uuid":"2dd5e925-6cb6-8d81-4f8d-48f65b4ec006","time":0.96,"color":-1,"interpolation":"linear"},{"channel":"position","data_points":[{"x":"1","y":"0","z":"2"}],"uuid":"63c9dfd6-9898-8511-9473-954817e9cf8e","time":1.44,"color":-1,"interpolation":"linear"}]},"88720699-c6d7-c408-8ec2-c5ddd7227f0b":{"name":"Body","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"7.5283207965","y":"4.95711679","z":"0.6542642739"}],"uuid":"1671ea6a-b095-a26b-7304-e5df39c97022","time":0.12,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"ca91aedc-1796-55d6-b2b9-9c32f9b90934","time":0,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"7.5283207965","y":"-4.95711679","z":"-0.6542642739"}],"uuid":"5808eaf7-4d3b-f0d2-f00e-51494ef2132c","time":0.84,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"0404b1b0-0255-0e90-f33f-ab06776eec70","time":0.24,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"4114f4e6-ce10-38c8-4935-20c25720bdf7","time":0.72,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"c34130e9-1ac6-c643-efdb-50f8fc31a6fb","time":0.96,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"12.5094402655","y":"1.6523722633","z":"0.2180880913"}],"uuid":"4f1744db-52a0-7b22-e54d-ecd7f53af326","time":0.2,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"15.018880531","y":"-3.3047445267","z":"-0.4361761826"}],"uuid":"4320bd01-5d42-6eae-aa32-d7df4dbf25d3","time":0.92,"color":-1,"interpolation":"linear"}]},"2232c700-b7a6-4729-b081-78ff34dfbc41":{"name":"Ljaw","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"25","y":"0","z":"0"}],"uuid":"cca380c4-1702-bbf4-ec96-384d19a85ea0","time":0.12,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"311d826c-e7ad-1d2f-3c1c-64d7982f2300","time":0,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"a2222357-8425-ae5f-c8da-bea86f996c53","time":0.32,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"ef6ef43f-85be-8663-357d-8c206c2ac565","time":0.72,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"1d9ce2b8-a33f-fad7-a9be-735d10333cf9","time":1.04,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"25","y":"0","z":"0"}],"uuid":"9263e391-0ad4-6cfc-2b49-800ae8ed7cf4","time":0.84,"color":-1,"interpolation":"linear"}]},"51b17377-4d34-1e21-ed59-71314a4858c4":{"name":"UJaw","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"-25","y":"0","z":"0"}],"uuid":"15c13b71-07df-b6b2-5591-7093cd4b061e","time":0.12,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"c17e2a73-a449-1cb7-d681-cd72470f7221","time":0,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"585b7866-7eba-d2bb-88d9-deae443066e3","time":0.32,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"0355a961-3968-b49a-b1ce-bf4454ca53c5","time":0.72,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"cc959d9d-4c32-f5c4-a0ec-42643ea67784","time":1.04,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"-30","y":"0","z":"0"}],"uuid":"8f37bb68-e309-6fa3-7b6d-a103f9422944","time":0.84,"color":-1,"interpolation":"linear"}]},"6502f144-0905-ef6d-77a4-4d6f6c832582":{"name":"tail","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"-10.0374230459","y":"-4.9238497548","z":"0.870384675"}],"uuid":"b62ac8a4-efef-23b6-71bd-ecbfd6c13431","time":0.12,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"303a465c-d181-26bc-48d3-a41ff92f8c26","time":0,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"-12.5462389525","y":"4.8811889482","z":"-1.08482395"}],"uuid":"0e612eb6-23db-4b47-8412-eb2785018bd7","time":0.84,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"fed0b380-5b3c-0864-56c1-75b377c7395b","time":0.24,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"b5f10a67-6e22-19d1-25b6-ca94d7613fec","time":0.72,"color":-1,"interpolation":"linear"},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"9a91e2da-a5a3-8d02-b1a3-82bd0ba78809","time":0.96,"color":-1,"interpolation":"linear"}]}}}]} \ No newline at end of file diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/DataGen.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/DataGen.kt index ef839348e..37cd0efe8 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/DataGen.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/DataGen.kt @@ -93,6 +93,11 @@ object DataGen { blockStateProvider.simpleBlockM(*blocks) } + fun decorativeCubeAllCutout(vararg blocks: Block) { + blockModelProvider.decorativeCubeAllCutout(*blocks) + blockStateProvider.simpleBlockM(*blocks) + } + fun decorativeCubeAll(subdir: String, vararg blocks: Block) { blockModelProvider.decorativeCubeAll(subdir, *blocks) blockStateProvider.simpleBlockM(*blocks) diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/DecorativeData.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/DecorativeData.kt index 886c9ce79..44f383f0f 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/DecorativeData.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/DecorativeData.kt @@ -35,6 +35,7 @@ fun addDecorativeData(blockStateProvider: MatteryBlockStateProvider, itemModelPr } DataGen.decorativeCubeAll(MBlocks.CARBON_FIBRE_BLOCK) + DataGen.decorativeCubeAllCutout(MBlocks.METAL_MESH) DataGen.decoratives(MRegistry.TRITANIUM_BLOCK) diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockModels.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockModels.kt index 28e75c3a4..bbf8da1e4 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockModels.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockModels.kt @@ -23,16 +23,25 @@ fun addBlockModels(provider: MatteryBlockModelProvider) { cubeAll(MBlocks.FLYWHEEL_HOUSING) column(MBlocks.FLYWHEEL_BEARING, "block/flywheel_bearing","block/flywheel_bearing_top") column(MBlocks.FLYWHEEL_SHAFT, "block/flywheel_shaft","block/flywheel_shaft_top") + orientable(MBlocks.FLYWHEEL_BATTERY,"block/flywheel_housing","block/flywheel_controller") column(MBlocks.GENERATOR_BLOCK, "block/generator_block","block/generator_block_top") + cubeAllFramed("modular_frame", "block/modular_frame") + cubeAllFramed("heavy_modular_frame", "block/heavy_modular_frame") + cubeAll(MBlocks.ENERGY_INPUT_INTERFACE) cubeAll(MBlocks.ENERGY_OUTPUT_INTERFACE) - orientable(MBlocks.MATTER_INPUT_HATCH,"block/hatch","block/matter_input_hatch") - orientable(MBlocks.MATTER_OUTPUT_HATCH,"block/hatch","block/matter_output_hatch") + cubeAll(MBlocks.TRITANIUM_HULL) - orientable(MBlocks.ENERGY_INPUT_HATCH,"block/hatch","block/energy_input_hatch") - orientable(MBlocks.ENERGY_OUTPUT_HATCH,"block/hatch","block/energy_output_hatch") + orientable(MBlocks.MATTER_INPUT_HATCH,"block/tritanium_hull","block/matter_input_hatch") + orientable(MBlocks.MATTER_OUTPUT_HATCH,"block/tritanium_hull","block/matter_output_hatch") + + orientable(MBlocks.ENERGY_INPUT_HATCH,"block/tritanium_hull","block/energy_input_hatch") + orientable(MBlocks.ENERGY_OUTPUT_HATCH,"block/tritanium_hull","block/energy_output_hatch") + + orientable(MBlocks.ITEM_INPUT_HATCH,"block/tritanium_hull","block/item_input_hatch") + orientable(MBlocks.ITEM_OUTPUT_HATCH,"block/tritanium_hull","block/item_output_hatch") cable("crude_energy_cable", "block/power_cable_0", powered = true) cable("regular_energy_cable", "block/power_cable_1", powered = true) diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockStates.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockStates.kt index 480e06e0e..597b94ab4 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockStates.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockStates.kt @@ -31,7 +31,6 @@ fun addBlockStates(provider: MatteryBlockStateProvider) { provider.ore(MBlocks.TRITANIUM_ORE) provider.ore(MBlocks.TRITANIUM_RAW_BLOCK) provider.block(MBlocks.TRITANIUM_INGOT_BLOCK) - provider.block(MBlocks.METAL_MESH) provider.ore(MBlocks.DILITHIUM_ORE) provider.ore(MBlocks.DEEPSLATE_DILITHIUM_ORE) @@ -105,6 +104,7 @@ fun addBlockStates(provider: MatteryBlockStateProvider) { provider.block(MBlocks.MATTER_DECOMPOSER.values) provider.block(MBlocks.MATTER_REPLICATOR.values) + provider.block(MBlocks.MATTER_ENTANGLER) provider.block(MBlocks.PLATE_PRESS.values) provider.block(MBlocks.TWIN_PLATE_PRESS.values) provider.block(MBlocks.GRAVITATION_STABILIZER) @@ -335,11 +335,18 @@ fun addBlockStates(provider: MatteryBlockStateProvider) { return@forAllStates generated.toTypedArray() } } + + provider.block(MBlocks.TRITANIUM_HULL) + provider.block(MBlocks.FLYWHEEL_HOUSING) provider.block(MBlocks.FLYWHEEL_BEARING) provider.block(MBlocks.FLYWHEEL_SHAFT) + provider.block(MBlocks.FLYWHEEL_BATTERY) provider.block(MBlocks.GENERATOR_BLOCK) + provider.block(MBlocks.MODULAR_FRAME) + provider.block(MBlocks.HEAVY_MODULAR_FRAME) + provider.block(MBlocks.ENERGY_INPUT_INTERFACE) provider.block(MBlocks.ENERGY_OUTPUT_INTERFACE) @@ -348,4 +355,8 @@ fun addBlockStates(provider: MatteryBlockStateProvider) { provider.block(MBlocks.MATTER_INPUT_HATCH) provider.block(MBlocks.MATTER_OUTPUT_HATCH) + + provider.block(MBlocks.ITEM_INPUT_HATCH) + provider.block(MBlocks.ITEM_OUTPUT_HATCH) + } diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/items/ItemModels.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/items/ItemModels.kt index 497866bfb..87984511b 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/items/ItemModels.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/items/ItemModels.kt @@ -192,6 +192,7 @@ fun addItemModels(provider: MatteryItemModelProvider) { provider.coloredWithBaseBlock(MItems.MATTER_BOTTLER, "matter_bottler", "_idle") provider.coloredWithBaseBlock(MItems.MATTER_SCANNER, "matter_scanner", "_idle") provider.coloredWithBaseBlock(MItems.MATTER_REPLICATOR, "matter_replicator", "_idle") + provider.block(MItems.MATTER_ENTANGLER, "matter_entangler_idle") provider.coloredWithBaseBlock(MItems.DRIVE_VIEWER, "drive_viewer", "_idle") provider.coloredWithBaseBlock(MItems.MATTER_DECOMPOSER, "matter_decomposer", "_idle") provider.coloredWithBaseBlock(MItems.ENERGY_SERVO, "energy_servo") @@ -237,6 +238,9 @@ fun addItemModels(provider: MatteryItemModelProvider) { provider.block(MItems.FLYWHEEL_HOUSING) provider.block(MItems.FLYWHEEL_BEARING) provider.block(MItems.FLYWHEEL_SHAFT) + provider.block(MItems.FLYWHEEL_BATTERY) + + provider.block(MItems.TRITANIUM_HULL) provider.block(MItems.GENERATOR_BLOCK) provider.block(MItems.ENERGY_INPUT_INTERFACE) @@ -248,6 +252,12 @@ fun addItemModels(provider: MatteryItemModelProvider) { provider.block(MItems.MATTER_INPUT_HATCH) provider.block(MItems.MATTER_OUTPUT_HATCH) + provider.block(MItems.ITEM_INPUT_HATCH) + provider.block(MItems.ITEM_OUTPUT_HATCH) + + provider.block(MItems.MODULAR_FRAME) + provider.block(MItems.HEAVY_MODULAR_FRAME) + MItems.TRITANIUM_ANVIL.values.forEach { provider.blocks(it) } for ((color, item) in MItems.CARGO_CRATE_MINECARTS) { diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/English.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/English.kt index 45f548eb3..b60fdaff0 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/English.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/English.kt @@ -549,13 +549,12 @@ private fun blocks(provider: MatteryLanguageProvider) { addBlock(MBlocks.DRIVE_VIEWER.values, "Drive Viewer") add(MBlocks.BLACK_HOLE, "Local Anomalous Spacetime Dilation Singular Point") - add(MBlocks.BLACK_HOLE_GENERATOR, "Matter Acceleration Power Generator") add(MBlocks.FLYWHEEL_SHAFT, "Flywheel Shaft") add(MBlocks.FLYWHEEL_SHAFT, "desc", "Placed between bearings, safe for decoration") add(MBlocks.FLYWHEEL_BEARING, "Flywheel Bearing") - add(MBlocks.FLYWHEEL_BEARING, "desc", "Replaces center block of housing at bottom and top, safe for decoration") + add(MBlocks.FLYWHEEL_BEARING, "desc", "Replaces top and bottom housing blocks in the center, safe for decoration") add(MBlocks.FLYWHEEL_BATTERY, "Flywheel Controller") add(MBlocks.FLYWHEEL_BATTERY, "desc", "Multiblock controller, requires housing, bearing, shaft, generator and core material of choice") @@ -570,7 +569,10 @@ private fun blocks(provider: MatteryLanguageProvider) { add(MBlocks.FLYWHEEL_HOUSING, "desc", "5xNx5 multiblock casing, safe for decoration") add(MBlocks.GENERATOR_BLOCK, "Generator Block") - add(MBlocks.GENERATOR_BLOCK, "desc", "Part of multiblock, safe for decoration") + add(MBlocks.GENERATOR_BLOCK, "desc", "Part of a multiblock, safe for decoration") + + add(MBlocks.MODULAR_FRAME, "Modular Frame") + add(MBlocks.HEAVY_MODULAR_FRAME, "Heavy Modular Frame") add(MBlocks.ENERGY_INPUT_INTERFACE, "Energy Input Interface") add(MBlocks.ENERGY_OUTPUT_INTERFACE, "Energy Output Interface") @@ -582,6 +584,9 @@ private fun blocks(provider: MatteryLanguageProvider) { add(MBlocks.ITEM_OUTPUT_HATCH, "Item Output Hatch") add(MBlocks.MATTER_OUTPUT_HATCH, "Matter Output Hatch") + add(MBlocks.BLACK_HOLE_GENERATOR, "Matter Acceleration Power Generator") + add(MBlocks.TRITANIUM_HULL, "Tritanium Hull") + add(MBlocks.TRITANIUM_HULL, "desc", "A sturdy part of a multiblock, safe for decoration") add(MBlocks.MATTER_INJECTOR, "Matter Injector") add(MBlocks.ANTIMATTER_INJECTOR, "Antimatter Injector") add(MBlocks.HIGH_ENERGY_PARTICLE_COLLECTOR, "High Energy Particle Collector") @@ -809,6 +814,8 @@ private fun items(provider: MatteryLanguageProvider) { add(MItems.MIRROR, "desc", "I can clearly see my own reflection in this mirror") add(MItems.REINFORCED_TRITANIUM_PLATE, "Reinforced Tritanium Plate") add(MItems.REINFORCED_TRITANIUM_PLATE, "desc", "An armor plate, reinforced to withstand great kinetic forces") + add(MItems.REINFORCED_IRON_PLATE, "Reinforced Iron Plate") + add(MItems.REINFORCED_IRON_PLATE, "desc", "A sturdier and more durable Iron Plate") add(MItems.ARMOR_ASSEMBLY, "Armor assembly") add(MItems.CARBON_MESH, "Carbon Mesh") diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/Russian.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/Russian.kt index 5aa057e8f..d4867917a 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/Russian.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/Russian.kt @@ -555,13 +555,12 @@ private fun blocks(provider: MatteryLanguageProvider) { add(MBlocks.INFINITE_WATER_SOURCE, "desc", "Выталкивает воду в соседние блоки автоматически") add(MBlocks.BLACK_HOLE, "Локализированная сингулярная точка аномального искажения пространства-времени") - add(MBlocks.BLACK_HOLE_GENERATOR, "Генератор энергии ускорением материи") add(MBlocks.FLYWHEEL_SHAFT, "Маховый вал") add(MBlocks.FLYWHEEL_SHAFT, "desc", "Устанавливается между подшипников") add(MBlocks.FLYWHEEL_BEARING, "Маховый подшипник") - add(MBlocks.FLYWHEEL_BEARING, "desc", "Заменяет центральный блок корпуса снизу и сверху") + add(MBlocks.FLYWHEEL_BEARING, "desc", "Заменяет центральный блок корпуса сверху и снизу") add(MBlocks.FLYWHEEL_BATTERY, "Блок управления маховым хранилищем энергии") add(MBlocks.FLYWHEEL_BATTERY, "desc", "Мультиблок, который требует подшипники, корпус, вал, блоки генераторов и ядро из материала на ваше усмотрение") @@ -575,8 +574,11 @@ private fun blocks(provider: MatteryLanguageProvider) { add(MBlocks.FLYWHEEL_HOUSING, "Корпус махового хранилища энергии") add(MBlocks.FLYWHEEL_HOUSING, "desc", "Мультиблок структура с размерностью 5xNx5") - add(MBlocks.GENERATOR_BLOCK, "Generator Block") - add(MBlocks.GENERATOR_BLOCK, "desc", "Part of multiblock, safe for decoration") + add(MBlocks.GENERATOR_BLOCK, "Генераторный блок") + add(MBlocks.GENERATOR_BLOCK, "desc", "Часть мультиблока, безопасна в качестве декорации") + + add(MBlocks.MODULAR_FRAME, "Модульный каркас") + add(MBlocks.HEAVY_MODULAR_FRAME, "Тяжёлый модульный каркас") add(MBlocks.ENERGY_INPUT_INTERFACE, "Входной энергетический интерфейс") add(MBlocks.ENERGY_OUTPUT_INTERFACE, "Выходной энергетический интерфейс") @@ -588,6 +590,9 @@ private fun blocks(provider: MatteryLanguageProvider) { add(MBlocks.ITEM_OUTPUT_HATCH, "Выходной предметный клапан") add(MBlocks.MATTER_OUTPUT_HATCH, "Выходной клапан материи") + add(MBlocks.BLACK_HOLE_GENERATOR, "Генератор энергии ускорением материи") + add(MBlocks.TRITANIUM_HULL, "Тритановый корпус") + add(MBlocks.TRITANIUM_HULL, "desc", "Прочная часть мультиблока, безопасна в качестве декорации") add(MBlocks.MATTER_INJECTOR, "Инжектор материи") add(MBlocks.ANTIMATTER_INJECTOR, "Инжектор анти-материи") add(MBlocks.HIGH_ENERGY_PARTICLE_COLLECTOR, "Коллектор высокоэнергичных частиц") @@ -802,6 +807,8 @@ private fun items(provider: MatteryLanguageProvider) { add(MItems.MIRROR, "desc", "Я могу очень отчётливо видеть своё отражение в этом зеркале") add(MItems.REINFORCED_TRITANIUM_PLATE, "Укреплённая тритановая пластина") add(MItems.REINFORCED_TRITANIUM_PLATE, "desc", "Бронированная пластина, усиленная чтобы выдержать большие кинетические силы") + add(MItems.REINFORCED_IRON_PLATE, "Укреплённая железная пластина") + add(MItems.REINFORCED_IRON_PLATE, "desc", "Более надёжная и прочная железная пластина") add(MItems.ARMOR_ASSEMBLY, "Стройка брони") add(MItems.CARBON_MESH, "Углеродная сетка") diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/loot/DecorativeLoot.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/loot/DecorativeLoot.kt index 53b969cc1..4fe3eb50b 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/loot/DecorativeLoot.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/loot/DecorativeLoot.kt @@ -35,6 +35,8 @@ fun addDecorativeLoot(lootTables: LootTables) { lootTables.dropsSelf(MBlocks.METAL_MESH) { condition(ExplosionCondition.survivesExplosion()) } lootTables.dropsSelf(MBlocks.METAL_RAILING) { condition(ExplosionCondition.survivesExplosion()) } + lootTables.dropsSelf(MBlocks.METAL_JUNK) { condition(ExplosionCondition.survivesExplosion()) } + lootTables.dropsSelf(MBlocks.TRITANIUM_RAW_BLOCK) { condition(ExplosionCondition.survivesExplosion()) } lootTables.dropsSelf(MBlocks.TRITANIUM_STRIPED_BLOCK.values) { condition(ExplosionCondition.survivesExplosion()) } lootTables.dropsSelf(MBlocks.TRITANIUM_STRIPED_WALL.values) { condition(ExplosionCondition.survivesExplosion()) } @@ -48,7 +50,12 @@ fun addDecorativeLoot(lootTables: LootTables) { lootTables.dropsSelf(MBlocks.TRITANIUM_INGOT_BLOCK) { condition(ExplosionCondition.survivesExplosion()) } lootTables.dropsSelf(MBlocks.TRITANIUM_BARS) { condition(ExplosionCondition.survivesExplosion()) } + lootTables.dropsSelf(MBlocks.TRITANIUM_HULL) { condition(ExplosionCondition.survivesExplosion()) } + lootTables.dropsSelf(MBlocks.GENERATOR_BLOCK) { condition(ExplosionCondition.survivesExplosion()) } + lootTables.dropsSelf(MBlocks.MODULAR_FRAME) { condition(ExplosionCondition.survivesExplosion()) } + lootTables.dropsSelf(MBlocks.HEAVY_MODULAR_FRAME) { condition(ExplosionCondition.survivesExplosion()) } + lootTables.dropsSelf(MBlocks.FLYWHEEL_SHAFT) { condition(ExplosionCondition.survivesExplosion()) } lootTables.dropsSelf(MBlocks.FLYWHEEL_HOUSING) { condition(ExplosionCondition.survivesExplosion()) } lootTables.dropsSelf(MBlocks.FLYWHEEL_BEARING) { condition(ExplosionCondition.survivesExplosion()) } diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/loot/MachineLoot.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/loot/MachineLoot.kt index f82416f55..f0b185bf4 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/loot/MachineLoot.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/loot/MachineLoot.kt @@ -59,6 +59,7 @@ fun addMachineLoot(lootTables: LootTables) { lootTables.tile(MBlocks.MATTER_BOTTLER.values) lootTables.tile(MBlocks.BLACK_HOLE_GENERATOR) + lootTables.tile(MBlocks.FLYWHEEL_BATTERY) lootTables.dropsSelf(listOf( @@ -69,10 +70,13 @@ fun addMachineLoot(lootTables: LootTables) { lootTables.tile(MBlocks.ITEM_INPUT_HATCH) lootTables.tile(MBlocks.ITEM_OUTPUT_HATCH) + lootTables.tile(MBlocks.ENERGY_INPUT_HATCH) lootTables.tile(MBlocks.ENERGY_OUTPUT_HATCH) + lootTables.tile(MBlocks.MATTER_INPUT_HATCH) lootTables.tile(MBlocks.MATTER_OUTPUT_HATCH) + lootTables.tile(MBlocks.ENERGY_INPUT_INTERFACE) lootTables.tile(MBlocks.ENERGY_OUTPUT_INTERFACE) } diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/models/MatteryModelProvider.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/models/MatteryModelProvider.kt index 645325e3a..29d81d18d 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/models/MatteryModelProvider.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/models/MatteryModelProvider.kt @@ -34,6 +34,22 @@ class MatteryBlockModelProvider(event: GatherDataEvent) : BlockModelProvider(eve } } + fun cubeAllCutout(vararg blocks: Block) { + for (block in blocks) { + exec { + cubeAll(block.registryName!!.path, modLocation("block/${block.registryName!!.path}")).renderType("cutout_mipped") + } + } + } + + fun cubeAllFramed(modelName: String, textureName: String) { + exec { + withExistingParent(modelName, modLocation("block/frame_block")) + .texture("texture", textureName) + .renderType("cutout_mipped") + } + } + fun decorativeGlassAll(blocks: Collection) { for (block in blocks) { exec { @@ -58,6 +74,14 @@ class MatteryBlockModelProvider(event: GatherDataEvent) : BlockModelProvider(eve } } + fun decorativeCubeAllCutout(vararg blocks: Block) { + for (block in blocks) { + exec { + cubeAll(block.registryName!!.path, modLocation("block/decorative/${block.registryName!!.path}")).renderType("cutout_mipped") + } + } + } + fun decorativeCubeAll(subdir: String, vararg blocks: Block) { for (block in blocks) { exec { diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/CraftingTableRecipes.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/CraftingTableRecipes.kt index 5ba4a2ce6..2389b6cb9 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/CraftingTableRecipes.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/CraftingTableRecipes.kt @@ -262,11 +262,19 @@ fun addCraftingTableRecipes(consumer: RecipeOutput) { .build(consumer) MatteryRecipe(MItems.REINFORCED_TRITANIUM_PLATE, category = RecipeCategory.MISC) - .rowB(MItemTags.CARBON_PLATES) - .row(MItemTags.CARBON_PLATES, MItemTags.TRITANIUM_PLATES, MItemTags.CARBON_PLATES) - .rowB(MItemTags.CARBON_PLATES) - .unlockedBy(MItemTags.TRITANIUM_PLATES) - .build(consumer) + .rowB(MItemTags.CARBON_PLATES) + .row(MItemTags.CARBON_PLATES, MItemTags.TRITANIUM_PLATES, MItemTags.CARBON_PLATES) + .rowB(MItemTags.CARBON_PLATES) + .unlockedBy(MItemTags.TRITANIUM_PLATES) + .build(consumer) + + MatteryRecipe(MItems.REINFORCED_IRON_PLATE, category = RecipeCategory.MISC) + .rowB(MItemTags.CARBON_PLATES) + .row(MItemTags.CARBON_PLATES, MItemTags.IRON_PLATES, MItemTags.CARBON_PLATES) + .rowB(MItemTags.CARBON_PLATES) + .unlockedBy(MItemTags.IRON_PLATES) + .build(consumer) + MatteryRecipe(MItems.ARMOR_ASSEMBLY, category = RecipeCategory.MISC) .row(MItemTags.CARBON_PLATES, MItemTags.IRON_PLATES, MItemTags.CARBON_PLATES) .row(MItemTags.IRON_PLATES, Items.DIAMOND, MItemTags.IRON_PLATES) diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/MultiblockRecipes.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/MultiblockRecipes.kt index 224df8dea..433218a58 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/MultiblockRecipes.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/MultiblockRecipes.kt @@ -116,6 +116,18 @@ fun addMultiblockRecipes(consumer: RecipeOutput) { .row(MItems.ELECTRIC_PARTS, MItems.ELECTROMOTOR, MItems.ELECTRIC_PARTS) .build(consumer) + MatteryRecipe(MItems.MODULAR_FRAME, count = 4, category = machinesCategory) + .row(MItemTags.IRON_PLATES, Tags.Items.INGOTS_IRON, MItemTags.IRON_PLATES) + .rowAC(Tags.Items.INGOTS_IRON, Tags.Items.INGOTS_IRON) + .row(MItemTags.IRON_PLATES, Tags.Items.INGOTS_IRON, MItemTags.IRON_PLATES) + .build(consumer) + + MatteryRecipe(MItems.HEAVY_MODULAR_FRAME, count = 2, category = machinesCategory) + .rowB(MItems.REINFORCED_IRON_PLATE) + .row(MItems.REINFORCED_IRON_PLATE, MItems.MODULAR_FRAME, MItems.REINFORCED_IRON_PLATE) + .rowB(MItems.REINFORCED_IRON_PLATE) + .build(consumer) + // blackhole generator MatteryRecipe(MItems.BLACK_HOLE_GENERATOR, category = machinesCategory) .row(MItemTags.ADVANCED_CIRCUIT, MItems.BLACK_HOLE_SCANNER, MItemTags.ADVANCED_CIRCUIT) @@ -123,6 +135,12 @@ fun addMultiblockRecipes(consumer: RecipeOutput) { .row(MItems.MATTER_CAPACITOR_PARTS, Tags.Items.GEMS_DIAMOND, MItems.MATTER_CAPACITOR_PARTS) .build(consumer) + MatteryRecipe(MItems.TRITANIUM_HULL, count = 4, category = machinesCategory) + .row(MItemTags.TRITANIUM_PLATES, MItemTags.IRON_PLATES, MItemTags.TRITANIUM_PLATES) + .row(MItemTags.IRON_PLATES, MItems.MODULAR_FRAME, MItemTags.IRON_PLATES) + .row(MItemTags.TRITANIUM_PLATES, MItemTags.IRON_PLATES, MItemTags.TRITANIUM_PLATES) + .build(consumer) + MatteryRecipe(MItems.MATTER_INJECTOR, category = machinesCategory) .row(MItemTags.ADVANCED_CIRCUIT, MItems.MATTER_TRANSFORM_MATRIX, MItemTags.ADVANCED_CIRCUIT) .row(MItemTags.DILITHIUM_GEMS, MItems.MACHINE_FRAME, MItemTags.DILITHIUM_GEMS) diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/tags/MineableTags.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/tags/MineableTags.kt index 48cd4aada..f89bde310 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/tags/MineableTags.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/tags/MineableTags.kt @@ -64,10 +64,12 @@ fun addMineableTags(tagsProvider: TagsProvider) { MBlocks.FLUID_TANK, *MBlocks.ANDROID_CHARGER.values.toTypedArray(), + MBlocks.TRITANIUM_HULL, MBlocks.BLACK_HOLE_GENERATOR, MBlocks.MATTER_INJECTOR, MBlocks.ANTIMATTER_INJECTOR, MBlocks.HIGH_ENERGY_PARTICLE_COLLECTOR, + MBlocks.ITEM_INPUT_HATCH, MBlocks.ITEM_OUTPUT_HATCH, MBlocks.ENERGY_INPUT_HATCH, @@ -81,7 +83,10 @@ fun addMineableTags(tagsProvider: TagsProvider) { MBlocks.FLYWHEEL_BEARING, MBlocks.FLYWHEEL_HOUSING, MBlocks.FLYWHEEL_BATTERY, + MBlocks.GENERATOR_BLOCK, + MBlocks.MODULAR_FRAME, + MBlocks.HEAVY_MODULAR_FRAME, MBlocks.REINFORCED_REDSTONE_LAMP, MBlocks.REINFORCED_REDSTONE_LAMP_INVERTED, diff --git a/src/main/java/ru/dbotthepony/mc/otm/shapes/BlockShapes.java b/src/main/java/ru/dbotthepony/mc/otm/shapes/BlockShapes.java index 93243d876..e2e199955 100644 --- a/src/main/java/ru/dbotthepony/mc/otm/shapes/BlockShapes.java +++ b/src/main/java/ru/dbotthepony/mc/otm/shapes/BlockShapes.java @@ -99,16 +99,6 @@ public class BlockShapes { public static final BlockShape MATTER_REPLICATOR = new BlockShape( new SimpleCuboid(0.9375d, 0d, 0d, 1d, 0.6875d, 1d), new SimpleCuboid(0d, 0d, 0d, 0.0625d, 0.6875d, 1d), - new SimpleCuboid(0d, 0.6875d, 0.0625d, 0.5d, 1d, 0.375d), - new SimpleCuboid(0.5d, 0.6875d, 0d, 1d, 1d, 0.375d), - new SimpleCuboid(0.1875d, 0.6875d, 0.6875d, 0.9375d, 0.9375d, 0.9375d), - new SimpleCuboid(0.1875d, 0.6875d, 0.375d, 0.9375d, 0.9375d, 0.625d), - new SimpleCuboid(0.0625d, 0.6875d, 0.4375d, 0.1875d, 0.875d, 0.5625d), - new SimpleCuboid(0.0625d, 0.6875d, 0.75d, 0.1875d, 0.875d, 0.875d), - new SimpleCuboid(0d, 0.6875d, 0.9375d, 0.03125d, 1d, 1d), - new SimpleCuboid(0.96875d, 0.6875d, 0.9375d, 1d, 1d, 1d), - new SimpleCuboid(0.96875d, 0.9375d, 0.375d, 1d, 1d, 0.9375d), - new SimpleCuboid(0d, 0.9375d, 0.375d, 0.03125d, 1d, 0.9375d), new SimpleCuboid(0.0625d, 0d, 0d, 0.9375d, 0.0625d, 1d), new SimpleCuboid(0.5d, 0.4375d, 0d, 0.9375d, 0.6875d, 0.0625d), new SimpleCuboid(0.0625d, 0.5625d, 0d, 0.5d, 0.6875d, 0.0625d), @@ -117,7 +107,36 @@ public class BlockShapes { new SimpleCuboid(0.125d, 0.0625d, 0d, 0.875d, 0.125d, 0.0625d), new SimpleCuboid(0.0625d, 0.625d, 0.0625d, 0.9375d, 0.6875d, 0.9375d), new SimpleCuboid(0.0625d, 0.0625d, 0.9375d, 0.9375d, 0.6875d, 1d), - new SimpleCuboid(0.1875d, 0.0625d, 0.1875d, 0.8125d, 0.125d, 0.8125d) + new SimpleCuboid(0.15625d, 0.0625d, 0.15625d, 0.84375d, 0.125d, 0.84375d), + new SimpleCuboid(0.15625d, 0.5625d, 0.15625d, 0.84375d, 0.625d, 0.84375d), + new SimpleCuboid(0.5d, 0.6875d, 0d, 1d, 1d, 0.375d), + new SimpleCuboid(0d, 0.6875d, 0.0625d, 0.5d, 1d, 0.375d), + new SimpleCuboid(0d, 0.6875d, 0.375d, 1d, 1d, 1d), + new SimpleCuboid(0.5625d, 0.5d, -0.00625d, 0.9375d, 0.8125d, -0.00625d), + new SimpleCuboid(0.1875d, 0.25d, 1.00625d, 0.8125d, 0.3125d, 1.00625d), + new SimpleCuboid(0.71875d, 0.128125d, 0.21875d, 0.78125d, 0.128125d, 0.28125d), + new SimpleCuboid(0.21875d, 0.128125d, 0.21875d, 0.28125d, 0.128125d, 0.28125d), + new SimpleCuboid(0.21875d, 0.128125d, 0.71875d, 0.28125d, 0.128125d, 0.78125d), + new SimpleCuboid(0.71875d, 0.128125d, 0.71875d, 0.78125d, 0.128125d, 0.78125d), + new SimpleCuboid(0.1875d, 0.375d, 1.00625d, 0.8125d, 0.4375d, 1.00625d) + ); + + public static final BlockShape MATTER_ENTANGLER = new BlockShape( + new SimpleCuboid(0d, 0d, 0d, 1d, 0.3125d, 0.875d), + new SimpleCuboid(0d, 0d, 0.875d, 0.125d, 0.3125d, 1d), + new SimpleCuboid(0.875d, 0d, 0.875d, 1d, 0.3125d, 1d), + new SimpleCuboid(0.1875d, 0.375d, 0.1875d, 0.8125d, 1d, 0.8125d), + new SimpleCuboid(0d, 0.4375d, 0.25d, 0.125d, 0.9375d, 0.75d), + new SimpleCuboid(0.125d, 0.5d, 0.3125d, 0.1875d, 0.875d, 0.6875d), + new SimpleCuboid(0.8125d, 0.5d, 0.3125d, 0.875d, 0.875d, 0.6875d), + new SimpleCuboid(0.875d, 0.4375d, 0.25d, 1d, 0.9375d, 0.75d), + new SimpleCuboid(0d, 0.3125d, 0.875d, 1d, 0.4375d, 1d), + new SimpleCuboid(0d, 0.3125d, 0d, 1d, 0.4375d, 0.125d), + new SimpleCuboid(0d, 0.3125d, 0.125d, 0.125d, 0.4375d, 0.875d), + new SimpleCuboid(0.875d, 0.3125d, 0.125d, 1d, 0.4375d, 0.875d), + new SimpleCuboid(0.125d, 0.0625d, 0.84375d, 0.1875d, 0.25d, 0.96875d), + new SimpleCuboid(0.8125d, 0.0625d, 0.84375d, 0.875d, 0.25d, 0.96875d), + new SimpleCuboid(0.1875d, 0.0625d, 0.84375d, 0.8125d, 0.25d, 0.96875d) ); public static final BlockShape MATTER_DECOMPOSER = new BlockShape( diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/block/matter/MatterEntanglerBlock.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/block/matter/MatterEntanglerBlock.kt index 9ba4d4452..9c7d9bbf5 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/block/matter/MatterEntanglerBlock.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/block/matter/MatterEntanglerBlock.kt @@ -1,14 +1,23 @@ package ru.dbotthepony.mc.otm.block.matter import net.minecraft.core.BlockPos +import net.minecraft.world.level.BlockGetter import net.minecraft.world.level.Level +import net.minecraft.world.level.block.Block import net.minecraft.world.level.block.EntityBlock import net.minecraft.world.level.block.entity.BlockEntity import net.minecraft.world.level.block.entity.BlockEntityTicker import net.minecraft.world.level.block.entity.BlockEntityType import net.minecraft.world.level.block.state.BlockState +import net.minecraft.world.level.block.state.StateDefinition +import net.minecraft.world.phys.shapes.CollisionContext +import net.minecraft.world.phys.shapes.VoxelShape import ru.dbotthepony.mc.otm.block.RotatableMatteryBlock +import ru.dbotthepony.mc.otm.block.entity.WorkerState import ru.dbotthepony.mc.otm.block.entity.matter.MatterEntanglerBlockEntity +import ru.dbotthepony.mc.otm.block.getShapeForEachState +import ru.dbotthepony.mc.otm.core.get +import ru.dbotthepony.mc.otm.shapes.BlockShapes class MatterEntanglerBlock : RotatableMatteryBlock(DEFAULT_MACHINE_PROPERTIES), EntityBlock { init { @@ -20,8 +29,25 @@ class MatterEntanglerBlock : RotatableMatteryBlock(DEFAULT_MACHINE_PROPERTIES), return MatterEntanglerBlockEntity(blockPos, blockState) } + override fun createBlockStateDefinition(builder: StateDefinition.Builder) { + super.createBlockStateDefinition(builder) + builder.add(WorkerState.WORKER_STATE) + } + override fun getTicker(p_153212_: Level, p_153213_: BlockState, p_153214_: BlockEntityType): BlockEntityTicker? { if (p_153212_.isClientSide) return null return BlockEntityTicker { _, _, _, tile -> if (tile is MatterEntanglerBlockEntity) tile.tick() } } + + private val shapes = getShapeForEachState(rotationProperty) { BlockShapes.MATTER_ENTANGLER.rotateFromNorth(it[rotationProperty]).computeShape() } + + @Suppress("override_deprecation") + override fun getShape( + state: BlockState, + blockGetter: BlockGetter, + pos: BlockPos, + context: CollisionContext + ): VoxelShape { + return shapes[state]!! + } } diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/block/tech/BlackHoleGeneratorBlock.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/block/tech/BlackHoleGeneratorBlock.kt index 857f013a5..b52cd2e81 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/block/tech/BlackHoleGeneratorBlock.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/block/tech/BlackHoleGeneratorBlock.kt @@ -5,6 +5,7 @@ import net.minecraft.core.SectionPos import net.minecraft.world.item.context.BlockPlaceContext import net.minecraft.world.level.Level import net.minecraft.world.level.block.EntityBlock +import net.minecraft.world.level.block.SoundType import net.minecraft.world.level.block.entity.BlockEntity import net.minecraft.world.level.block.entity.BlockEntityTicker import net.minecraft.world.level.block.entity.BlockEntityType @@ -17,7 +18,7 @@ import ru.dbotthepony.mc.otm.core.math.BlockRotationFreedom import ru.dbotthepony.mc.otm.core.math.plus import ru.dbotthepony.mc.otm.core.math.times -class BlackHoleGeneratorBlock : RotatableMatteryBlock(Properties.of().mapColor(MapColor.METAL).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(160.0f)), EntityBlock { +class BlackHoleGeneratorBlock : RotatableMatteryBlock(Properties.of().mapColor(MapColor.METAL).sound(SoundType.NETHERITE_BLOCK).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(160.0f)), EntityBlock { override fun newBlockEntity(blockPos: BlockPos, blockState: BlockState): BlockEntity { return BlackHoleGeneratorBlockEntity(blockPos, blockState) } diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/block/tech/HatchBlock.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/block/tech/HatchBlock.kt index 6a9871af4..d0b1cd89c 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/block/tech/HatchBlock.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/block/tech/HatchBlock.kt @@ -5,6 +5,7 @@ import net.minecraft.core.BlockPos import net.minecraft.world.item.context.BlockPlaceContext import net.minecraft.world.level.Level import net.minecraft.world.level.block.EntityBlock +import net.minecraft.world.level.block.SoundType import net.minecraft.world.level.block.entity.BlockEntity import net.minecraft.world.level.block.entity.BlockEntityTicker import net.minecraft.world.level.block.entity.BlockEntityType @@ -14,7 +15,8 @@ import ru.dbotthepony.mc.otm.block.RotatableMatteryBlock import ru.dbotthepony.mc.otm.block.entity.MatteryBlockEntity import ru.dbotthepony.mc.otm.core.TranslatableComponent -class HatchBlock(val factory: BlockEntityType.BlockEntitySupplier, val needsTicking: Boolean = false) : RotatableMatteryBlock(Properties.of().mapColor(MapColor.METAL).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(80.0f)), EntityBlock { +class HatchBlock(val factory: BlockEntityType.BlockEntitySupplier, val needsTicking: Boolean = false) : RotatableMatteryBlock(Properties.of().mapColor(MapColor.METAL).sound( + SoundType.VAULT).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(80.0f)), EntityBlock { override fun newBlockEntity(blockPos: BlockPos, blockState: BlockState): BlockEntity { return factory.create(blockPos, blockState) } diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MNames.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MNames.kt index 12b1734de..5a4218d0a 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MNames.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MNames.kt @@ -32,6 +32,7 @@ object MNames { const val MATTER_OUTPUT_HATCH = "matter_output_hatch" const val PAINTER = "painter" const val MATTER_ENTANGLER = "matter_entangler" + const val TRITANIUM_HULL = "tritanium_hull" // blocks const val ANDROID_STATION = "android_station" @@ -65,7 +66,10 @@ object MNames { const val FLYWHEEL_BEARING = "flywheel_bearing" const val FLYWHEEL_SHAFT = "flywheel_shaft" const val FLYWHEEL_HOUSING = "flywheel_housing" + const val GENERATOR_BLOCK = "generator_block" + const val MODULAR_FRAME = "modular_frame" + const val HEAVY_MODULAR_FRAME = "heavy_modular_frame" const val STORAGE_CABLE = "storage_cable" // нужен рецепт const val STORAGE_POWER_SUPPLIER = "storage_power_supplier" // нужен рецепт @@ -200,6 +204,7 @@ object MNames { const val CARBON_MESH = "carbon_mesh" const val ARMOR_ASSEMBLY = "armor_assembly" const val REINFORCED_TRITANIUM_PLATE = "reinforced_tritanium_plate" + const val REINFORCED_IRON_PLATE = "reinforced_iron_plate" const val QUANTUM_TRANSCEIVER = "quantum_transceiver" const val ELECTROMAGNET = "electromagnet" diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/game/MBlocks.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/game/MBlocks.kt index 1fd3cd3fd..5df204d9a 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/game/MBlocks.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/game/MBlocks.kt @@ -188,10 +188,17 @@ object MBlocks { MatteryBlock(BlockBehaviour.Properties.of().sound(SoundType.NETHERITE_BLOCK).explosionResistance(40f).mapColor(MapColor.COLOR_GRAY).destroyTime(2f).requiresCorrectToolForDrops()) .addSimpleDescription() } + val GENERATOR_BLOCK by registry.register(MNames.GENERATOR_BLOCK) { MatteryBlock(BlockBehaviour.Properties.of().sound(SoundType.NETHERITE_BLOCK).explosionResistance(30f).mapColor(MapColor.COLOR_GRAY).destroyTime(2.5f).requiresCorrectToolForDrops()) .addSimpleDescription() } + val MODULAR_FRAME by registry.register(MNames.MODULAR_FRAME) { TransparentBlock( + BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_GRAY).noOcclusion().sound(SoundType.METAL).requiresCorrectToolForDrops().explosionResistance(30f).destroyTime(2f) + )} + val HEAVY_MODULAR_FRAME by registry.register(MNames.HEAVY_MODULAR_FRAME) { TransparentBlock( + BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_GRAY).noOcclusion().sound(SoundType.NETHERITE_BLOCK).requiresCorrectToolForDrops().explosionResistance(60f).destroyTime(2.5f) + )} val STORAGE_BUS: Block by registry.register(MNames.STORAGE_BUS, ::StorageBusBlock) val STORAGE_IMPORTER: Block by registry.register(MNames.STORAGE_IMPORTER, ::StorageImporterBlock) @@ -214,9 +221,14 @@ object MBlocks { val DEV_CHEST: DevChestBlock by registry.register(MNames.DEV_CHEST) { DevChestBlock() } val BLACK_HOLE_GENERATOR by registry.register(MNames.BLACK_HOLE_GENERATOR) { BlackHoleGeneratorBlock() } - val MATTER_INJECTOR by registry.register(MNames.MATTER_INJECTOR) { RotatableMatteryBlock(BlockBehaviour.Properties.of().mapColor(MapColor.METAL).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(160.0f)) } - val ANTIMATTER_INJECTOR by registry.register(MNames.ANTIMATTER_INJECTOR) { RotatableMatteryBlock(BlockBehaviour.Properties.of().mapColor(MapColor.METAL).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(160.0f)) } - val HIGH_ENERGY_PARTICLE_COLLECTOR by registry.register(MNames.HIGH_ENERGY_PARTICLE_COLLECTOR) { RotatableMatteryBlock(BlockBehaviour.Properties.of().mapColor(MapColor.METAL).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(160.0f)) } + val TRITANIUM_HULL by registry.register(MNames.TRITANIUM_HULL) { + MatteryBlock(BlockBehaviour.Properties.of().sound(SoundType.VAULT).explosionResistance(80f).mapColor(MapColor.COLOR_LIGHT_BLUE).destroyTime(2.5f).requiresCorrectToolForDrops()) + .addSimpleDescription() + } + val MATTER_INJECTOR by registry.register(MNames.MATTER_INJECTOR) { RotatableMatteryBlock(BlockBehaviour.Properties.of().mapColor(MapColor.METAL).sound(SoundType.NETHERITE_BLOCK).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(160.0f)) } + val ANTIMATTER_INJECTOR by registry.register(MNames.ANTIMATTER_INJECTOR) { RotatableMatteryBlock(BlockBehaviour.Properties.of().mapColor(MapColor.METAL).sound(SoundType.NETHERITE_BLOCK).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(160.0f)) } + val HIGH_ENERGY_PARTICLE_COLLECTOR by registry.register(MNames.HIGH_ENERGY_PARTICLE_COLLECTOR) { RotatableMatteryBlock(BlockBehaviour.Properties.of().mapColor(MapColor.METAL).sound(SoundType.NETHERITE_BLOCK).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(160.0f)) } + val ITEM_INPUT_HATCH by registry.register(MNames.ITEM_INPUT_HATCH) { HatchBlock(ItemHatchBlockEntity::input) } val ITEM_OUTPUT_HATCH by registry.register(MNames.ITEM_OUTPUT_HATCH) { HatchBlock(ItemHatchBlockEntity::output) } val ENERGY_INPUT_HATCH by registry.register(MNames.ENERGY_INPUT_HATCH) { HatchBlock(EnergyHatchBlockEntity::input, true) } diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/game/MCreativeTabs.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/game/MCreativeTabs.kt index 5e979ea79..0b762632e 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/game/MCreativeTabs.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/game/MCreativeTabs.kt @@ -184,7 +184,10 @@ private fun addMainCreativeTabItems(consumer: CreativeModeTab.Output) { accept(MItems.FLYWHEEL_BEARING) accept(MItems.GENERATOR_BLOCK) + accept(MItems.MODULAR_FRAME) + accept(MItems.HEAVY_MODULAR_FRAME) + accept(MItems.TRITANIUM_HULL) accept(MItems.BLACK_HOLE_GENERATOR) accept(MItems.MATTER_INJECTOR) accept(MItems.ANTIMATTER_INJECTOR) diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/game/MItems.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/game/MItems.kt index 4719fdd34..b200f0536 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/game/MItems.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/game/MItems.kt @@ -153,14 +153,18 @@ object MItems { val FLYWHEEL_HOUSING by registry.register(MNames.FLYWHEEL_HOUSING) { BlockItem(MBlocks.FLYWHEEL_HOUSING, DEFAULT_PROPERTIES) } val GENERATOR_BLOCK by registry.register(MNames.GENERATOR_BLOCK) { BlockItem(MBlocks.GENERATOR_BLOCK, DEFAULT_PROPERTIES) } + val MODULAR_FRAME by registry.register(MNames.MODULAR_FRAME) { BlockItem(MBlocks.MODULAR_FRAME, DEFAULT_PROPERTIES) } + val HEAVY_MODULAR_FRAME by registry.register(MNames.HEAVY_MODULAR_FRAME) { BlockItem(MBlocks.HEAVY_MODULAR_FRAME, DEFAULT_PROPERTIES) } val DEV_CHEST: BlockItem by registry.register(MNames.DEV_CHEST) { BlockItem(MBlocks.DEV_CHEST, DEFAULT_PROPERTIES) } val PAINTER: BlockItem by registry.register(MNames.PAINTER) { BlockItem(MBlocks.PAINTER, DEFAULT_PROPERTIES) } val MATTER_ENTANGLER: BlockItem by registry.register(MNames.MATTER_ENTANGLER) { BlockItem(MBlocks.MATTER_ENTANGLER, DEFAULT_PROPERTIES) } + val TRITANIUM_HULL by registry.register(MNames.TRITANIUM_HULL) { BlockItem(MBlocks.TRITANIUM_HULL, DEFAULT_PROPERTIES) } val BLACK_HOLE_GENERATOR by registry.register(MNames.BLACK_HOLE_GENERATOR) { BlockItem(MBlocks.BLACK_HOLE_GENERATOR, DEFAULT_PROPERTIES) } val MATTER_INJECTOR by registry.register(MNames.MATTER_INJECTOR) { BlockItem(MBlocks.MATTER_INJECTOR, DEFAULT_PROPERTIES) } val ANTIMATTER_INJECTOR by registry.register(MNames.ANTIMATTER_INJECTOR) { BlockItem(MBlocks.ANTIMATTER_INJECTOR, DEFAULT_PROPERTIES) } + val HIGH_ENERGY_PARTICLE_COLLECTOR by registry.register(MNames.HIGH_ENERGY_PARTICLE_COLLECTOR) { BlockItem(MBlocks.HIGH_ENERGY_PARTICLE_COLLECTOR, DEFAULT_PROPERTIES) } val ITEM_INPUT_HATCH by registry.register(MNames.ITEM_INPUT_HATCH) { BlockItem(MBlocks.ITEM_INPUT_HATCH, DEFAULT_PROPERTIES) } val ITEM_OUTPUT_HATCH by registry.register(MNames.ITEM_OUTPUT_HATCH) { BlockItem(MBlocks.ITEM_OUTPUT_HATCH, DEFAULT_PROPERTIES) } @@ -535,6 +539,9 @@ object MItems { val REINFORCED_TRITANIUM_PLATE: Item by registry.register(MNames.REINFORCED_TRITANIUM_PLATE) { MatteryItem( DEFAULT_PROPERTIES ).addSimpleDescription() } + val REINFORCED_IRON_PLATE: Item by registry.register(MNames.REINFORCED_IRON_PLATE) { MatteryItem( + DEFAULT_PROPERTIES + ).addSimpleDescription() } val QUANTUM_TRANSCEIVER: Item by registry.register(MNames.QUANTUM_TRANSCEIVER) { Item(DEFAULT_PROPERTIES) } val ELECTROMAGNET: Item by registry.register(MNames.ELECTROMAGNET) { Item(DEFAULT_PROPERTIES) } @@ -608,6 +615,7 @@ object MItems { MItems::CARBON_MESH, MItems::ARMOR_ASSEMBLY, MItems::REINFORCED_TRITANIUM_PLATE, + MItems::REINFORCED_IRON_PLATE, ) val CARGO_CRATE_MINECARTS = registry.coloredWithBase(MNames.MINECART_CARGO_CRATE, ::MinecartCargoCrateItem) diff --git a/src/main/resources/assets/overdrive_that_matters/models/block/frame_block.json b/src/main/resources/assets/overdrive_that_matters/models/block/frame_block.json new file mode 100644 index 000000000..5aea3aa89 --- /dev/null +++ b/src/main/resources/assets/overdrive_that_matters/models/block/frame_block.json @@ -0,0 +1,33 @@ +{ + "parent": "block/block", + "textures": { + "particle": "#texture" + }, + "elements": [ + { + "from": [0, 0, 0], + "to": [16, 16, 16], + "faces": { + "north": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "north"}, + "east": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "east"}, + "south": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "south"}, + "west": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "west"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "up"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "down"} + } + }, + { + "from": [15.99995, 15.99995, 15.99995], + "to": [0.00005, 0.00005, 0.00005], + "rotation": {"angle": 0, "axis": "y", "origin": [16, 16, 16]}, + "faces": { + "north": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "south"}, + "east": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "west"}, + "south": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "north"}, + "west": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "east"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "down"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "up"} + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/models/block/matter_entangler.json b/src/main/resources/assets/overdrive_that_matters/models/block/matter_entangler.json new file mode 100644 index 000000000..286480624 --- /dev/null +++ b/src/main/resources/assets/overdrive_that_matters/models/block/matter_entangler.json @@ -0,0 +1,453 @@ +{ + "credit": "Made with Blockbench", + "parent": "block/block", + "render_type": "cutout", + "texture_size": [32, 32], + "textures": { + "0": "overdrive_that_matters:block/machine_base", + "1": "overdrive_that_matters:block/matter_entangler", + "2": "overdrive_that_matters:block/matter_entangler_details", + "particle": "overdrive_that_matters:block/matter_entangler", + "status": "overdrive_that_matters:block/screen_status_ok" + }, + "elements": [ + { + "name": "base", + "from": [0, 0, 0], + "to": [16, 5, 14], + "faces": { + "north": {"uv": [8, 9, 16, 11.5], "texture": "#1"}, + "east": {"uv": [1, 1, 8, 3.5], "texture": "#1"}, + "south": {"uv": [0, 8.5, 8, 11], "texture": "#1"}, + "west": {"uv": [0, 1, 7, 3.5], "texture": "#1"}, + "up": {"uv": [8, 0, 16, 8], "texture": "#1"}, + "down": {"uv": [0, 2, 16, 16], "texture": "#0"} + } + }, + { + "name": "base", + "from": [0, 0, 14], + "to": [2, 5, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [0, 0, 14]}, + "faces": { + "east": {"uv": [0, 1, 1, 3.5], "texture": "#1"}, + "south": {"uv": [0, 8.5, 1, 11], "texture": "#1"}, + "west": {"uv": [7, 1, 8, 3.5], "texture": "#1"}, + "down": {"uv": [0, 0, 2, 2], "texture": "#0"} + } + }, + { + "name": "base", + "from": [14, 0, 14], + "to": [16, 5, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [14, 0, 14]}, + "faces": { + "east": {"uv": [0, 1, 1, 3.5], "texture": "#1"}, + "south": {"uv": [0, 8.5, 1, 11], "texture": "#1"}, + "west": {"uv": [7, 1, 8, 3.5], "texture": "#1"}, + "down": {"uv": [14, 0, 16, 2], "texture": "#0"} + } + }, + { + "name": "chamber", + "from": [3, 6, 3], + "to": [13, 16, 13], + "rotation": {"angle": 0, "axis": "y", "origin": [7, 6, 7]}, + "faces": { + "north": {"uv": [0, 5, 5, 10], "texture": "#2"}, + "east": {"uv": [5, 5, 10, 10], "texture": "#2"}, + "south": {"uv": [5, 0, 10, 5], "texture": "#2"}, + "west": {"uv": [5, 5, 10, 10], "texture": "#2"}, + "up": {"uv": [0, 0, 5, 5], "rotation": 180, "texture": "#2"}, + "down": {"uv": [10, 0, 15, 5], "texture": "#2"} + } + }, + { + "name": "chamber", + "from": [13, 6, 3], + "to": [3, 16, 13], + "rotation": {"angle": 0, "axis": "y", "origin": [17, 6, 7]}, + "faces": { + "north": {"uv": [0, 5, 5, 10], "texture": "#2"}, + "east": {"uv": [5, 5, 10, 10], "texture": "#2"}, + "south": {"uv": [5, 0, 10, 5], "texture": "#2"}, + "west": {"uv": [5, 5, 10, 10], "texture": "#2"}, + "up": {"uv": [0, 0, 5, 5], "rotation": 180, "texture": "#2"}, + "down": {"uv": [10, 0, 15, 5], "texture": "#2"} + } + }, + { + "name": "base", + "from": [0, 7, 4], + "to": [2, 15, 12], + "rotation": {"angle": 0, "axis": "y", "origin": [0, 5, 4]}, + "faces": { + "north": {"uv": [4, 4.5, 8, 5.5], "rotation": 90, "texture": "#1"}, + "east": {"uv": [0, 3.5, 4, 7.5], "texture": "#1"}, + "south": {"uv": [4, 4.5, 8, 5.5], "rotation": 90, "texture": "#1"}, + "west": {"uv": [0, 3.5, 4, 7.5], "texture": "#1"}, + "up": {"uv": [4, 3.5, 8, 4.5], "rotation": 90, "texture": "#1"} + } + }, + { + "from": [2, 8, 5], + "to": [3, 14, 11], + "rotation": {"angle": 0, "axis": "y", "origin": [1, 5, 4]}, + "faces": { + "north": {"uv": [0.5, 4, 1, 7], "texture": "#1"}, + "south": {"uv": [0.5, 4, 1, 7], "texture": "#1"}, + "up": {"uv": [0.5, 4, 1, 7], "texture": "#1"}, + "down": {"uv": [0.5, 4, 1, 7], "texture": "#1"} + } + }, + { + "from": [13, 8, 5], + "to": [14, 14, 11], + "rotation": {"angle": 0, "axis": "y", "origin": [12, 4, 4]}, + "faces": { + "north": {"uv": [0.5, 4, 1, 7], "texture": "#1"}, + "south": {"uv": [0.5, 4, 1, 7], "texture": "#1"}, + "up": {"uv": [0.5, 4, 1, 7], "texture": "#1"}, + "down": {"uv": [0.5, 4, 1, 7], "texture": "#1"} + } + }, + { + "name": "base", + "from": [14, 7, 4], + "to": [16, 15, 12], + "rotation": {"angle": 0, "axis": "y", "origin": [14, 5, 4]}, + "faces": { + "north": {"uv": [4, 4.5, 8, 5.5], "rotation": 90, "texture": "#1"}, + "east": {"uv": [0, 3.5, 4, 7.5], "texture": "#1"}, + "south": {"uv": [4, 4.5, 8, 5.5], "rotation": 90, "texture": "#1"}, + "west": {"uv": [0, 3.5, 4, 7.5], "texture": "#1"}, + "up": {"uv": [4, 3.5, 8, 4.5], "rotation": 90, "texture": "#1"} + } + }, + { + "name": "base", + "from": [0, 5, 14], + "to": [16, 7, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [0, 5, 14]}, + "faces": { + "north": {"uv": [8, 7, 16, 8], "texture": "#1"}, + "east": {"uv": [0, 0, 1, 1], "texture": "#1"}, + "south": {"uv": [0, 7.5, 8, 8.5], "texture": "#1"}, + "west": {"uv": [7, 0, 8, 1], "texture": "#1"}, + "up": {"uv": [8, 7, 16, 8], "texture": "#1"}, + "down": {"uv": [0, 7.5, 8, 8.5], "rotation": 180, "texture": "#1"} + } + }, + { + "name": "base", + "from": [0, 5, 0], + "to": [16, 7, 2], + "rotation": {"angle": 0, "axis": "y", "origin": [0, 5, 0]}, + "faces": { + "north": {"uv": [8, 8, 16, 9], "texture": "#1"}, + "east": {"uv": [7, 0, 8, 1], "texture": "#1"}, + "south": {"uv": [8, 7, 16, 8], "texture": "#1"}, + "west": {"uv": [0, 0, 1, 1], "texture": "#1"}, + "up": {"uv": [8, 0, 16, 1], "texture": "#1"} + } + }, + { + "name": "base", + "from": [0, 5, 2], + "to": [2, 7, 14], + "rotation": {"angle": 0, "axis": "y", "origin": [0, 5, 2]}, + "faces": { + "east": {"uv": [9, 7, 15, 8], "texture": "#1"}, + "west": {"uv": [1, 0, 7, 1], "texture": "#1"}, + "up": {"uv": [8, 1, 9, 7], "texture": "#1"} + } + }, + { + "name": "base", + "from": [14, 5, 2], + "to": [16, 7, 14], + "rotation": {"angle": 0, "axis": "y", "origin": [14, 5, 2]}, + "faces": { + "east": {"uv": [1, 0, 7, 1], "texture": "#1"}, + "west": {"uv": [9, 7, 15, 8], "texture": "#1"}, + "up": {"uv": [15, 1, 16, 7], "texture": "#1"} + } + }, + { + "name": "keyboard", + "from": [2, 7, -1], + "to": [10, 8, 2], + "rotation": {"angle": -45, "axis": "x", "origin": [6, 7.5, 0.5]}, + "faces": { + "north": {"uv": [5, 15.5, 9, 16], "texture": "#2"}, + "east": {"uv": [4.5, 14, 5, 15.5], "rotation": 90, "texture": "#2"}, + "south": {"uv": [5, 13.5, 9, 14], "texture": "#2"}, + "west": {"uv": [9, 14, 9.5, 15.5], "rotation": 90, "texture": "#2"}, + "up": {"uv": [5, 14, 9, 15.5], "rotation": 180, "texture": "#2"}, + "down": {"uv": [0, 14.5, 4, 16], "texture": "#2"} + } + }, + { + "name": "screen", + "from": [11, 6, 0], + "to": [15, 10, 1], + "rotation": {"angle": 45, "axis": "x", "origin": [12.5, 7.5, 0.5]}, + "faces": { + "north": {"uv": [0, 10, 2, 12], "rotation": 180, "texture": "#2"}, + "east": {"uv": [2, 12, 4, 12.5], "rotation": 90, "texture": "#2"}, + "south": {"uv": [2, 12.5, 4, 14.5], "texture": "#2"}, + "west": {"uv": [2, 12, 4, 12.5], "rotation": 270, "texture": "#2"}, + "up": {"uv": [2, 12, 4, 12.5], "texture": "#2"}, + "down": {"uv": [2, 12, 4, 12.5], "rotation": 180, "texture": "#2"} + } + }, + { + "name": "screen_glow", + "from": [11, 6.05, -0.05], + "to": [15, 10.05, -0.05], + "rotation": {"angle": 45, "axis": "x", "origin": [12.5, 7.5, 0.5]}, + "faces": { + "north": {"uv": [0, 0, 16, 16], "texture": "#status", "neoforge_data": {"block_light": 15}} + } + }, + { + "name": "shield", + "from": [0, 8, 12], + "to": [16, 14, 14], + "rotation": {"angle": 0, "axis": "y", "origin": [0, 11, 12]}, + "faces": { + "east": {"uv": [8, 11.5, 7, 14.5], "texture": "#1"}, + "south": {"uv": [8, 11.5, 16, 14.5], "texture": "#1"}, + "west": {"uv": [7, 11.5, 8, 14.5], "texture": "#1"} + } + }, + { + "name": "shield", + "from": [0, 14, 12], + "to": [16, 8, 14], + "rotation": {"angle": 0, "axis": "y", "origin": [0, 17, 12]}, + "faces": { + "east": {"uv": [8, 11.5, 7, 14.5], "texture": "#1"}, + "south": {"uv": [8, 11.5, 16, 14.5], "texture": "#1"}, + "west": {"uv": [7, 11.5, 8, 14.5], "texture": "#1"} + } + }, + { + "name": "lower", + "from": [6.91342, 11.3806, 9.3], + "to": [8.91342, 15.3806, 10], + "rotation": {"angle": 22.5, "axis": "z", "origin": [8, 12, 9.675]}, + "faces": { + "north": {"uv": [13.5, 6.5, 15.5, 7.5], "rotation": 90, "texture": "#2"}, + "east": {"uv": [13.5, 7.5, 15.5, 8], "rotation": 270, "texture": "#2"}, + "south": {"uv": [13.5, 6.5, 15.5, 7.5], "rotation": 270, "texture": "#2"}, + "west": {"uv": [13.5, 6, 15.5, 6.5], "rotation": 270, "texture": "#2"}, + "up": {"uv": [13, 6.5, 13.5, 7.5], "rotation": 270, "texture": "#2"}, + "down": {"uv": [13, 6.5, 13.5, 7.5], "rotation": 270, "texture": "#2"} + } + }, + { + "name": "lower", + "from": [6.24264, 8.58579, 5.9], + "to": [10.24264, 10.58579, 6.6], + "rotation": {"angle": -45, "axis": "z", "origin": [10, 9, 6.275]}, + "faces": { + "north": {"uv": [13.5, 6.5, 15.5, 7.5], "texture": "#2"}, + "east": {"uv": [13, 6.5, 13.5, 7.5], "texture": "#2"}, + "south": {"uv": [13.5, 6.5, 15.5, 7.5], "texture": "#2"}, + "west": {"uv": [13, 6.5, 13.5, 7.5], "texture": "#2"}, + "up": {"uv": [13.5, 6, 15.5, 6.5], "texture": "#2"}, + "down": {"uv": [13.5, 7.5, 15.5, 8], "texture": "#2"} + } + }, + { + "name": "joint", + "from": [2, 11, 8.7], + "to": [4, 13, 10.7], + "rotation": {"angle": -22.5, "axis": "z", "origin": [3, 12, 9.675]}, + "faces": { + "north": {"uv": [11, 5, 12, 6], "texture": "#2"}, + "east": {"uv": [10, 5, 11, 6], "texture": "#2"}, + "south": {"uv": [11, 5, 12, 6], "texture": "#2"}, + "west": {"uv": [10, 5, 11, 6], "texture": "#2"}, + "up": {"uv": [10, 5, 11, 6], "texture": "#2"}, + "down": {"uv": [10, 5, 11, 6], "texture": "#2"} + } + }, + { + "name": "joint", + "from": [12, 12, 5.3], + "to": [14, 14, 7.3], + "rotation": {"angle": 45, "axis": "z", "origin": [13, 13, 6.275]}, + "faces": { + "north": {"uv": [11, 5, 12, 6], "texture": "#2"}, + "east": {"uv": [10, 5, 11, 6], "texture": "#2"}, + "south": {"uv": [11, 5, 12, 6], "texture": "#2"}, + "west": {"uv": [10, 5, 11, 6], "texture": "#2"}, + "up": {"uv": [10, 5, 11, 6], "texture": "#2"}, + "down": {"uv": [10, 5, 11, 6], "texture": "#2"} + } + }, + { + "name": "upper", + "from": [3, 12, 9.2], + "to": [8, 14, 10.2], + "rotation": {"angle": -22.5, "axis": "z", "origin": [3, 12, 9.675]}, + "faces": { + "north": {"uv": [10.5, 6.5, 13, 7.5], "texture": "#2"}, + "east": {"uv": [10, 6.5, 10.5, 7.5], "texture": "#2"}, + "south": {"uv": [10.5, 6.5, 13, 7.5], "texture": "#2"}, + "west": {"uv": [10, 6.5, 10.5, 7.5], "texture": "#2"}, + "up": {"uv": [10.5, 6, 13, 6.5], "texture": "#2"}, + "down": {"uv": [10.5, 7.5, 13, 8], "texture": "#2"} + } + }, + { + "name": "upper", + "from": [11, 8, 5.8], + "to": [13, 13, 6.8], + "rotation": {"angle": -22.5, "axis": "z", "origin": [13, 13, 6.275]}, + "faces": { + "north": {"uv": [10.5, 6.5, 13, 7.5], "rotation": 90, "texture": "#2"}, + "east": {"uv": [10.5, 7.5, 13, 8], "rotation": 270, "texture": "#2"}, + "south": {"uv": [10.5, 6.5, 13, 7.5], "rotation": 270, "texture": "#2"}, + "west": {"uv": [10.5, 6, 13, 6.5], "rotation": 270, "texture": "#2"}, + "up": {"uv": [10, 6.5, 10.5, 7.5], "rotation": 270, "texture": "#2"}, + "down": {"uv": [10, 6.5, 10.5, 7.5], "rotation": 270, "texture": "#2"} + } + }, + { + "name": "upper", + "from": [6.77817, 6.87868, 5.8], + "to": [8.77817, 11.87868, 6.8], + "rotation": {"angle": -22.5, "axis": "z", "origin": [8, 12, 6.275]}, + "faces": { + "north": {"uv": [10.5, 6.5, 13, 7.5], "rotation": 90, "texture": "#2"}, + "east": {"uv": [10.5, 7.5, 13, 8], "rotation": 270, "texture": "#2"}, + "south": {"uv": [10.5, 6.5, 13, 7.5], "rotation": 270, "texture": "#2"}, + "west": {"uv": [10.5, 6, 13, 6.5], "rotation": 270, "texture": "#2"}, + "up": {"uv": [10, 6.5, 10.5, 7.5], "rotation": 270, "texture": "#2"}, + "down": {"uv": [10, 6.5, 10.5, 7.5], "rotation": 270, "texture": "#2"} + } + }, + { + "name": "upper", + "from": [6.68925, 14.22628, 9.2], + "to": [11.68925, 16.22628, 10.2], + "rotation": {"angle": -45, "axis": "z", "origin": [7, 15, 9.675]}, + "faces": { + "north": {"uv": [10.5, 6.5, 13, 7.5], "texture": "#2"}, + "east": {"uv": [10, 6.5, 10.5, 7.5], "texture": "#2"}, + "south": {"uv": [10.5, 6.5, 13, 7.5], "texture": "#2"}, + "west": {"uv": [10, 6.5, 10.5, 7.5], "texture": "#2"}, + "up": {"uv": [10.5, 6, 13, 6.5], "texture": "#2"}, + "down": {"uv": [10.5, 7.5, 13, 8], "texture": "#2"} + } + }, + { + "name": "pointer", + "from": [9.22628, 10.55339, 9.3], + "to": [10.22628, 11.55339, 10.1], + "rotation": {"angle": 0, "axis": "y", "origin": [10, 12, 9.675]}, + "faces": { + "north": {"uv": [10.5, 8.5, 11, 9], "texture": "#2"}, + "east": {"uv": [10, 8.5, 10.4, 9], "texture": "#2"}, + "south": {"uv": [10.5, 8.5, 11, 9], "texture": "#2"}, + "west": {"uv": [10, 8.5, 10.4, 9], "texture": "#2"}, + "up": {"uv": [10.5, 8, 11, 8.4], "texture": "#2"} + } + }, + { + "name": "pointer_glow", + "from": [9.22628, 9.55339, 9.3], + "to": [10.22628, 10.55339, 10.1], + "rotation": {"angle": 0, "axis": "y", "origin": [10, 12, 9.675]}, + "faces": { + "north": {"uv": [10.5, 9, 11, 9.5], "texture": "#2", "neoforge_data": {"block_light": 15}}, + "east": {"uv": [10, 9, 10.4, 9.5], "texture": "#2", "neoforge_data": {"block_light": 15}}, + "south": {"uv": [10.5, 9, 11, 9.5], "texture": "#2", "neoforge_data": {"block_light": 15}}, + "west": {"uv": [10, 9, 10.4, 9.5], "texture": "#2", "neoforge_data": {"block_light": 15}}, + "down": {"uv": [10.5, 9.5, 11, 9.9], "texture": "#2", "neoforge_data": {"block_light": 15}} + } + }, + { + "name": "pointer", + "from": [7.77817, 5.87868, 5.9], + "to": [8.77817, 6.87868, 6.7], + "rotation": {"angle": -22.5, "axis": "z", "origin": [8, 12, 6.275]}, + "faces": { + "north": {"uv": [10.5, 8.5, 11, 9], "texture": "#2"}, + "east": {"uv": [10, 8.5, 10.4, 9], "texture": "#2"}, + "south": {"uv": [10.5, 8.5, 11, 9], "texture": "#2"}, + "west": {"uv": [10, 8.5, 10.4, 9], "texture": "#2"}, + "up": {"uv": [10.5, 8, 11, 8.4], "texture": "#2"} + } + }, + { + "name": "pointer_glow", + "from": [7.77817, 4.87868, 5.9], + "to": [8.77817, 5.87868, 6.7], + "rotation": {"angle": -22.5, "axis": "z", "origin": [8, 12, 6.275]}, + "faces": { + "north": {"uv": [10.5, 9, 11, 9.5], "texture": "#2", "neoforge_data": {"block_light": 15}}, + "east": {"uv": [10, 9, 10.4, 9.5], "texture": "#2", "neoforge_data": {"block_light": 15}}, + "south": {"uv": [10.5, 9, 11, 9.5], "texture": "#2", "neoforge_data": {"block_light": 15}}, + "west": {"uv": [10, 9, 10.4, 9.5], "texture": "#2", "neoforge_data": {"block_light": 15}}, + "down": {"uv": [10.5, 9.5, 11, 9.9], "texture": "#2", "neoforge_data": {"block_light": 15}} + } + }, + { + "name": "canister", + "from": [2, 1, 13.5], + "to": [3, 4, 15.5], + "rotation": {"angle": 0, "axis": "y", "origin": [2, 2, 13.5]}, + "faces": { + "south": {"uv": [4.5, 12, 5, 13.5], "texture": "#2"}, + "up": {"uv": [4.5, 11, 5, 12], "texture": "#2"}, + "down": {"uv": [4.5, 12, 5, 11], "texture": "#2"} + } + }, + { + "name": "canister", + "from": [13, 1, 13.5], + "to": [14, 4, 15.5], + "rotation": {"angle": 0, "axis": "y", "origin": [13, 2, 13.5]}, + "faces": { + "south": {"uv": [10, 12, 10.5, 13.5], "texture": "#2"}, + "up": {"uv": [10, 11, 10.5, 12], "texture": "#2"}, + "down": {"uv": [10, 12, 10.5, 11], "texture": "#2"} + } + }, + { + "name": "canister_glow", + "from": [3, 1, 13.5], + "to": [13, 4, 15.5], + "rotation": {"angle": 0, "axis": "y", "origin": [2, 2, 13.5]}, + "faces": { + "south": {"uv": [5, 12, 10, 13.5], "texture": "#2", "neoforge_data": {"block_light": 15}}, + "up": {"uv": [5, 11, 10, 12], "texture": "#2", "neoforge_data": {"block_light": 15}}, + "down": {"uv": [5, 13.5, 10, 12.5], "texture": "#2", "neoforge_data": {"block_light": 15}} + } + }, + { + "name": "wires", + "from": [15, 9, 11], + "to": [15, 17, 17], + "rotation": {"angle": 22.5, "axis": "y", "origin": [15, 13, 12]}, + "faces": { + "east": {"uv": [10.5, 12, 13.5, 16], "texture": "#2"}, + "west": {"uv": [13.5, 12, 10.5, 16], "texture": "#2"} + } + }, + { + "name": "wires", + "from": [15, 10, 11], + "to": [15, 18, 17], + "rotation": {"angle": 0, "axis": "y", "origin": [15, 14, 12]}, + "faces": { + "east": {"uv": [11, 8, 14, 12], "texture": "#2"}, + "west": {"uv": [14, 8, 11, 12], "texture": "#2"} + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/models/block/matter_entangler_error.json b/src/main/resources/assets/overdrive_that_matters/models/block/matter_entangler_error.json new file mode 100644 index 000000000..fd3dc6733 --- /dev/null +++ b/src/main/resources/assets/overdrive_that_matters/models/block/matter_entangler_error.json @@ -0,0 +1,7 @@ +{ + "parent": "overdrive_that_matters:block/matter_entangler, + "texture_size": [32, 32], + "textures": { + "status": "overdrive_that_matters:block/screen_status_error" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/models/block/matter_entangler_idle.json b/src/main/resources/assets/overdrive_that_matters/models/block/matter_entangler_idle.json new file mode 100644 index 000000000..4ea3ac6cf --- /dev/null +++ b/src/main/resources/assets/overdrive_that_matters/models/block/matter_entangler_idle.json @@ -0,0 +1,7 @@ +{ + "parent": "overdrive_that_matters:block/matter_entangler", + "texture_size": [32, 32], + "textures": { + "status": "overdrive_that_matters:block/screen_status_offline" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/models/block/matter_entangler_working.json b/src/main/resources/assets/overdrive_that_matters/models/block/matter_entangler_working.json new file mode 100644 index 000000000..1db035e11 --- /dev/null +++ b/src/main/resources/assets/overdrive_that_matters/models/block/matter_entangler_working.json @@ -0,0 +1,7 @@ +{ + "parent": "overdrive_that_matters:block/matter_entangler", + "texture_size": [32, 32], + "textures": { + "status": "overdrive_that_matters:block/screen_status_ok" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/models/block/matter_replicator.json b/src/main/resources/assets/overdrive_that_matters/models/block/matter_replicator.json index 6aa7e9bd7..5dfb18b6e 100644 --- a/src/main/resources/assets/overdrive_that_matters/models/block/matter_replicator.json +++ b/src/main/resources/assets/overdrive_that_matters/models/block/matter_replicator.json @@ -292,9 +292,9 @@ }, { "name": "monitor", - "from": [9, 8, 0], - "to": [15, 13, 0], - "rotation": {"angle": 0, "axis": "y", "origin": [13, 11, -2]}, + "from": [9, 8, -0.1], + "to": [15, 13, -0.1], + "rotation": {"angle": 0, "axis": "y", "origin": [13, 11, -2.05]}, "faces": { "north": {"uv": [0, 3.2, 9.56, 11.14], "texture": "#status", "neoforge_data": {"block_light": 15}} } diff --git a/src/main/resources/assets/overdrive_that_matters/models/block/metal_mesh.json b/src/main/resources/assets/overdrive_that_matters/models/block/metal_mesh.json deleted file mode 100644 index b18a8d695..000000000 --- a/src/main/resources/assets/overdrive_that_matters/models/block/metal_mesh.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "render_type": "cutout", - "textures": { - "all": "overdrive_that_matters:block/decorative/metal_mesh" - } -} \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/models/bread_monster.animation.json b/src/main/resources/assets/overdrive_that_matters/models/bread_monster.animation.json new file mode 100644 index 000000000..5f5ed8ce2 --- /dev/null +++ b/src/main/resources/assets/overdrive_that_matters/models/bread_monster.animation.json @@ -0,0 +1,98 @@ +{ + "format_version": "1.8.0", + "animations": { + "idle": { + "loop": true, + "animation_length": 1.44, + "bones": { + "Body": { + "rotation": { + "0.0": [0, -2.5, 0], + "0.72": [0, 3.33, 0], + "1.44": [0, -2.5, 0] + } + }, + "Ljaw": { + "rotation": { + "0.0": [2.5, 0, 0], + "0.72": [5, 0, 0], + "1.44": [2.5, 0, 0] + } + }, + "UJaw": { + "rotation": { + "0.0": [-2.5, 0, 0], + "0.72": [-5, 0, 0], + "1.44": [-2.5, 0, 0] + } + }, + "tail": { + "rotation": { + "0.0": [0, 5, 0], + "0.72": [0, -7.5, 0], + "1.44": [0, 5, 0] + } + } + } + }, + "move": { + "loop": true, + "animation_length": 1.44, + "bones": { + "root": { + "position": { + "0.0": [1, 0, 2], + "0.12": [0, 5, -1], + "0.24": [-1, 0, -1], + "0.72": [-2, 0, 2], + "0.84": [0, 5, -1], + "0.96": [1, 0, -1], + "1.44": [1, 0, 2] + } + }, + "Body": { + "rotation": { + "0.0": [0, 0, 0], + "0.12": [7.52832, 4.95712, 0.65426], + "0.2": [12.50944, 1.65237, 0.21809], + "0.24": [0, 0, 0], + "0.72": [0, 0, 0], + "0.84": [7.52832, -4.95712, -0.65426], + "0.92": [15.01888, -3.30474, -0.43618], + "0.96": [0, 0, 0] + } + }, + "Ljaw": { + "rotation": { + "0.0": [0, 0, 0], + "0.12": [25, 0, 0], + "0.32": [0, 0, 0], + "0.72": [0, 0, 0], + "0.84": [25, 0, 0], + "1.04": [0, 0, 0] + } + }, + "UJaw": { + "rotation": { + "0.0": [0, 0, 0], + "0.12": [-25, 0, 0], + "0.32": [0, 0, 0], + "0.72": [0, 0, 0], + "0.84": [-30, 0, 0], + "1.04": [0, 0, 0] + } + }, + "tail": { + "rotation": { + "0.0": [0, 0, 0], + "0.12": [-10.03742, -4.92385, 0.87038], + "0.24": [0, 0, 0], + "0.72": [0, 0, 0], + "0.84": [-12.54624, 4.88119, -1.08482], + "0.96": [0, 0, 0] + } + } + } + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/models/bread_monster.java b/src/main/resources/assets/overdrive_that_matters/models/bread_monster.java new file mode 100644 index 000000000..5926248d2 --- /dev/null +++ b/src/main/resources/assets/overdrive_that_matters/models/bread_monster.java @@ -0,0 +1,49 @@ +// Made with Blockbench 4.12.3 +// Exported for Minecraft version 1.17 or later with Mojang mappings +// Paste this class into your mod and generate all required imports + + +public class bread_monster extends EntityModel { + // This layer location should be baked with EntityRendererProvider.Context in the entity renderer and passed into this model's constructor + public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(new ResourceLocation("modid", "bread_monster"), "main"); + private final ModelPart root; + private final ModelPart Body; + private final ModelPart Ljaw; + private final ModelPart UJaw; + private final ModelPart tail; + + public bread_monster(ModelPart root) { + this.root = root.getChild("root"); + this.Body = this.root.getChild("Body"); + this.Ljaw = this.Body.getChild("Ljaw"); + this.UJaw = this.Body.getChild("UJaw"); + this.tail = this.Body.getChild("tail"); + } + + public static LayerDefinition createBodyLayer() { + MeshDefinition meshdefinition = new MeshDefinition(); + PartDefinition partdefinition = meshdefinition.getRoot(); + + PartDefinition root = partdefinition.addOrReplaceChild("root", CubeListBuilder.create(), PartPose.offset(0.0F, 24.0F, 0.0F)); + + PartDefinition Body = root.addOrReplaceChild("Body", CubeListBuilder.create().texOffs(0, 0).addBox(-4.0F, -3.0F, -5.0F, 8.0F, 6.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, -3.0F, 0.0F)); + + PartDefinition Ljaw = Body.addOrReplaceChild("Ljaw", CubeListBuilder.create().texOffs(26, 24).addBox(-4.0F, -2.0F, -4.0F, 8.0F, 3.0F, 4.0F, new CubeDeformation(0.1F)), PartPose.offset(0.0F, 2.0F, -3.0F)); + + PartDefinition UJaw = Body.addOrReplaceChild("UJaw", CubeListBuilder.create().texOffs(0, 24).addBox(-4.0F, -2.0F, -4.0F, 8.0F, 3.0F, 5.0F, new CubeDeformation(0.1F)), PartPose.offset(0.0F, -1.0F, -3.0F)); + + PartDefinition tail = Body.addOrReplaceChild("tail", CubeListBuilder.create().texOffs(0, 12).addBox(-4.0F, -3.0F, -0.1F, 8.0F, 6.0F, 6.0F, new CubeDeformation(-0.1F)), PartPose.offset(0.0F, 0.0F, 1.0F)); + + return LayerDefinition.create(meshdefinition, 64, 32); + } + + @Override + public void setupAnim(Entity entity, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch) { + + } + + @Override + public void renderToBuffer(PoseStack poseStack, VertexConsumer vertexConsumer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) { + root.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha); + } +} \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/energy_input_hatch.png b/src/main/resources/assets/overdrive_that_matters/textures/block/energy_input_hatch.png index 1c015fbd7..c147872cc 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/energy_input_hatch.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/energy_input_hatch.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/energy_output_hatch.png b/src/main/resources/assets/overdrive_that_matters/textures/block/energy_output_hatch.png index e728d0122..1f1389d5a 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/energy_output_hatch.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/energy_output_hatch.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/black.png b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/black.png index 0c76753ce..4a94e8d1e 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/black.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/black.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/blue.png b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/blue.png index 90cc6fa92..9d8f5d85f 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/blue.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/blue.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/brown.png b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/brown.png index 3bfde41bf..1a84c2a7c 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/brown.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/brown.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/cyan.png b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/cyan.png index a0b70f47e..ce0e954ac 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/cyan.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/cyan.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/gray.png b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/gray.png index 5f74405fa..71bdbe0e9 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/gray.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/gray.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/green.png b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/green.png index 103cac4e8..d82f7e417 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/green.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/green.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/light_blue.png b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/light_blue.png index cbf458e94..88f705651 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/light_blue.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/light_blue.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/light_gray.png b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/light_gray.png index c93546b87..5f89f4943 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/light_gray.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/light_gray.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/lime.png b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/lime.png index be42ad657..3cab89547 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/lime.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/lime.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/magenta.png b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/magenta.png index 3809cf5cb..e68bc862a 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/magenta.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/magenta.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/orange.png b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/orange.png index 54c5b75fd..1bbc690c6 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/orange.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/orange.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/pink.png b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/pink.png index 1e0559b7f..404d83077 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/pink.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/pink.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/purple.png b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/purple.png index d278320e7..7981639ce 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/purple.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/purple.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/red.png b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/red.png index f6fa2764b..1c92eb73c 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/red.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/red.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/white.png b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/white.png index 79a8ae9ec..e89d0cf81 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/white.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/white.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/yellow.png b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/yellow.png index 66005cda3..d6a428eb5 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/yellow.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/essence_storage/yellow.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/generator_block.png b/src/main/resources/assets/overdrive_that_matters/textures/block/generator_block.png index 61e59a0ff..73e183d31 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/generator_block.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/generator_block.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/generator_block_top.png b/src/main/resources/assets/overdrive_that_matters/textures/block/generator_block_top.png index 2c2eac5d8..6ffc2ea24 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/generator_block_top.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/generator_block_top.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/heavy_modular_frame.png b/src/main/resources/assets/overdrive_that_matters/textures/block/heavy_modular_frame.png new file mode 100644 index 000000000..1f5295b47 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/heavy_modular_frame.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_input_hatch.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_input_hatch.png new file mode 100644 index 000000000..daac2e093 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_input_hatch.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_output_hatch.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_output_hatch.png new file mode 100644 index 000000000..89007c06e Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_output_hatch.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_entangler.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_entangler.png new file mode 100644 index 000000000..8ee48bedc Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_entangler.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_entangler_details.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_entangler_details.png new file mode 100644 index 000000000..f4bea2d0b Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_entangler_details.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_input_hatch.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_input_hatch.png index 97995e7d5..7e554035f 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_input_hatch.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_input_hatch.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_output_hatch.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_output_hatch.png index 8ef02fe56..8cbad6b5e 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_output_hatch.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_output_hatch.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_reconstructor.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_reconstructor.png index 854ab7991..4ce929ff8 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_reconstructor.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_reconstructor.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator.png index d61b67e7e..526989bde 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/black.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/black.png index dab140444..41159397d 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/black.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/black.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/blue.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/blue.png index 500bd685a..e81f09860 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/blue.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/blue.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/brown.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/brown.png index 80f9f49fe..81819efd1 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/brown.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/brown.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/cyan.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/cyan.png index 1430faf97..5db7745c3 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/cyan.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/cyan.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/gray.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/gray.png index 8abb7268c..2423c7938 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/gray.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/gray.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/green.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/green.png index 6a9dbbaff..f974ee543 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/green.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/green.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/light_blue.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/light_blue.png index 519ea8f83..2e5df5204 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/light_blue.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/light_blue.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/light_gray.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/light_gray.png index 0eda21fc4..ac441bb24 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/light_gray.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/light_gray.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/lime.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/lime.png index d0e4f92cf..e636b7269 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/lime.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/lime.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/magenta.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/magenta.png index 500baf8e6..dffac3307 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/magenta.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/magenta.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/orange.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/orange.png index 48112da37..648e672fc 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/orange.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/orange.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/pink.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/pink.png index 9fa3116c1..048c8e692 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/pink.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/pink.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/purple.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/purple.png index 8c0e6dbe7..490bd5180 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/purple.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/purple.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/red.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/red.png index f2a5ae0d7..839c8f7b9 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/red.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/red.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/white.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/white.png index b790bb1c4..2b44db7d8 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/white.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/white.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/yellow.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/yellow.png index 77a982df8..691a12a03 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/yellow.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator/yellow.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/black.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/black.png index 8a13286ce..2e6512a82 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/black.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/black.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/blue.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/blue.png index 3f57c7eb6..0b4ea350c 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/blue.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/blue.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/brown.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/brown.png index f8684a49c..03852a70c 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/brown.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/brown.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/cyan.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/cyan.png index 8141db55f..ee72b8db4 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/cyan.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/cyan.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/gray.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/gray.png index 6eaa71dad..ddc1d6f54 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/gray.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/gray.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/green.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/green.png index a8515a148..dab6bf0a5 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/green.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/green.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/light_blue.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/light_blue.png index 2ea39b209..b29682f02 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/light_blue.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/light_blue.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/light_gray.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/light_gray.png index fe5d60f7b..8bb5e58a4 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/light_gray.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/light_gray.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/lime.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/lime.png index f3ed301a4..73fdb7caf 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/lime.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/lime.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/magenta.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/magenta.png index 6390ac3e0..eddbd1394 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/magenta.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/magenta.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/orange.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/orange.png index 6df3cc25d..74ad16a7e 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/orange.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/orange.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/pink.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/pink.png index aad9c3d98..a739951ff 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/pink.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/pink.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/purple.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/purple.png index e4519fc21..3e16d8e3a 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/purple.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/purple.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/red.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/red.png index 94a18f26c..dfaecd7ef 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/red.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/red.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/white.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/white.png index 375b38a50..228f301fe 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/white.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/white.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/yellow.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/yellow.png index 9b8627132..5ad2c01eb 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/yellow.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_replicator_base/yellow.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/modular_frame.png b/src/main/resources/assets/overdrive_that_matters/textures/block/modular_frame.png new file mode 100644 index 000000000..8709ae471 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/modular_frame.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/screen_status_error.png b/src/main/resources/assets/overdrive_that_matters/textures/block/screen_status_error.png new file mode 100644 index 000000000..803bef643 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/screen_status_error.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/screen_status_offline.png b/src/main/resources/assets/overdrive_that_matters/textures/block/screen_status_offline.png new file mode 100644 index 000000000..9e2ad804b Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/screen_status_offline.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/screen_status_ok.png b/src/main/resources/assets/overdrive_that_matters/textures/block/screen_status_ok.png new file mode 100644 index 000000000..c90482ef5 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/screen_status_ok.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/hatch.png b/src/main/resources/assets/overdrive_that_matters/textures/block/tritanium_hull.png similarity index 70% rename from src/main/resources/assets/overdrive_that_matters/textures/block/hatch.png rename to src/main/resources/assets/overdrive_that_matters/textures/block/tritanium_hull.png index 9b4e71a71..4b23a01ab 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/hatch.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/tritanium_hull.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/item/component/reinforced_iron_plate.png b/src/main/resources/assets/overdrive_that_matters/textures/item/component/reinforced_iron_plate.png new file mode 100644 index 000000000..928758f1b Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/item/component/reinforced_iron_plate.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/item/component/reinforced_tritanium_plate.png b/src/main/resources/assets/overdrive_that_matters/textures/item/component/reinforced_tritanium_plate.png index 5e41fa125..165517bc5 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/item/component/reinforced_tritanium_plate.png and b/src/main/resources/assets/overdrive_that_matters/textures/item/component/reinforced_tritanium_plate.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/item/salvaged_android_arm.png b/src/main/resources/assets/overdrive_that_matters/textures/item/salvaged_android_arm.png new file mode 100644 index 000000000..4735392b4 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/item/salvaged_android_arm.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/models/bread_monster/bread_monster.png b/src/main/resources/assets/overdrive_that_matters/textures/models/bread_monster/bread_monster.png new file mode 100644 index 000000000..ba0c4d3c5 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/models/bread_monster/bread_monster.png differ