diff --git a/src/generated/resources/.cache/cache b/src/generated/resources/.cache/cache index 40d7725f0..691f804e2 100644 --- a/src/generated/resources/.cache/cache +++ b/src/generated/resources/.cache/cache @@ -49,7 +49,7 @@ b59324f051f21d8ce1a48a08f4721a61a3c414d6 assets/create/blockstates/chute.json 1f33834c685e3243882acfe20183fe64dfa872be assets/create/blockstates/clutch.json e5e3757e99c139d67b2a70288466d8a74d818841 assets/create/blockstates/cogwheel.json 36f54136a7756c97f71bc6b47ef4e8e575e72879 assets/create/blockstates/content_observer.json -c309aead7e052aef770baebfb4d0e65dfd257b66 assets/create/blockstates/controller_rail.json +cfea7283f0ebd2432d67e80a523f2a12e24c0bd5 assets/create/blockstates/controller_rail.json f8eff64c75fc599e9a44a003f54ae9931cd8ce7c assets/create/blockstates/copper_block.json cabf6b8c59eb0e3d56a0a5a856ca058bb3200882 assets/create/blockstates/copper_casing.json 3355a852cdc717e257ca19b3db836068964733e3 assets/create/blockstates/copper_ore.json @@ -140,7 +140,7 @@ fc652317e03b57c76e23a805da16a28d15254029 assets/create/blockstates/fancy_scoria_ fc9ac0a7e7191b93516719455a17177fa6524ecc assets/create/blockstates/fancy_weathered_limestone_bricks_slab.json b2a7c321b1795f20e7433f81a55ce4683de081b8 assets/create/blockstates/fancy_weathered_limestone_bricks_stairs.json 8e532856c3c2b4e4e59c65a2a81a694e35d14658 assets/create/blockstates/fancy_weathered_limestone_bricks_wall.json -3d97226b5e8d8f70ed08e45e78db1faf78d5e28b assets/create/blockstates/fluid_pipe.json +6e9589feb7fab2ac3bed5b4d70be383dfd7e9d7c assets/create/blockstates/fluid_pipe.json f0eaab18e16c4f3f65ebf3b55b08f0dc445720fe assets/create/blockstates/fluid_tank.json 5408d92ab02af86539ac42971d4033545970bb3a assets/create/blockstates/fluid_valve.json e9da1794b6ece7f9aa8bcb43d42c23a55446133b assets/create/blockstates/flywheel.json @@ -334,7 +334,7 @@ e8b0a401c10d1ba67ed71ba31bd5f9bc28571b65 assets/create/blockstates/powered_toggl d06cd9a1101b18d306a786320aab12018b1325d6 assets/create/blockstates/purple_sail.json 92957119abd5fbcca36a113b2a80255fd70fc303 assets/create/blockstates/purple_seat.json 61035f8afe75ff7bbd291da5d8690bcbebe679eb assets/create/blockstates/purple_valve_handle.json -8d7e653bfd9846e684a0d3725595714a19201017 assets/create/blockstates/radial_chassis.json +4bb26546ac954604a0317b059f2c36a1123772cb assets/create/blockstates/radial_chassis.json 45877c4d90a7185c2f304edbd67379d800920439 assets/create/blockstates/red_sail.json da1b08387af7afa0855ee8d040f620c01f20660a assets/create/blockstates/red_seat.json 722fc77bbf387af8a4016e42cbf9501d2b968881 assets/create/blockstates/red_valve_handle.json @@ -399,16 +399,16 @@ a3a11524cd3515fc01d905767b4b7ea782adaf03 assets/create/blockstates/yellow_seat.j 7f39521b211441f5c3e06d60c5978cebe16cacfb assets/create/blockstates/zinc_block.json b7181bcd8182b2f17088e5aa881f374c9c65470c assets/create/blockstates/zinc_ore.json 0818cf173b4de38b28dc3350d57265cb2cfeecef assets/create/lang/en_ud.json -5583aad2ad39680a334b4a5bf36309a90189ae97 assets/create/lang/en_us.json -aa1b156e35c1f1d98984b6fc21439aad38c3fa2d assets/create/lang/unfinished/de_de.json -8f7bbbbc4da32798751742300a57403e40e842d3 assets/create/lang/unfinished/fr_fr.json -59f771f54220e922f2d3b3b351b279357142b158 assets/create/lang/unfinished/it_it.json -3ce96d122be8a453ebbd0d233386cf139e6925e3 assets/create/lang/unfinished/ja_jp.json -46ba934fcbc2d106d5011be1642f5e64b046ec2e assets/create/lang/unfinished/ko_kr.json -de37a1e084aa6ed4e64aa11907a204730ba5794c assets/create/lang/unfinished/nl_nl.json -59f7da327f9b9bafd916c0cb2c23811cec112ae4 assets/create/lang/unfinished/pt_br.json -368657c789f9297d5e7bb994e637e41f9928e111 assets/create/lang/unfinished/ru_ru.json -b84418c554f0a373cf036dffb15bdcf8f081d904 assets/create/lang/unfinished/zh_cn.json +a7bab585394476bcd60cd1830e683e0442d11146 assets/create/lang/en_us.json +2e28b75914db0ce50cb932ad39184733295a133a assets/create/lang/unfinished/de_de.json +4d0851a65217705fa9fdc853f97ba7e018fa9c85 assets/create/lang/unfinished/fr_fr.json +cc26369f8f17da973a85518f63465a08fc2eb7e4 assets/create/lang/unfinished/it_it.json +60bd143d7aeee9d25e66871545195abc1f04d521 assets/create/lang/unfinished/ja_jp.json +d92aa511fe1efb9ed17995e19cf2b556f7297ad0 assets/create/lang/unfinished/ko_kr.json +271f510a7024eaf0f66251f4d65240dad598d277 assets/create/lang/unfinished/nl_nl.json +d3b9a27d8d4f198e7dd2e13f1dbdb734dc89bafe assets/create/lang/unfinished/pt_br.json +1822ab6835574ef6e00db85d8c06ed8749bfa31a assets/create/lang/unfinished/ru_ru.json +c70d14495882c22790c6072c642e81d412c5a4ac assets/create/lang/unfinished/zh_cn.json 487a511a01b2a4531fb672f917922312db78f958 assets/create/models/block/acacia_window.json b48060cba1a382f373a05bf0039054053eccf076 assets/create/models/block/acacia_window_pane_noside.json 3066db1bf03cffa1a9c7fbacf47ae586632f4eb3 assets/create/models/block/acacia_window_pane_noside_alt.json @@ -1216,7 +1216,7 @@ c1da21be9f1af4f7a2ef4ec9cd92195d65ada316 assets/create/models/item/clockwork_bea 0a2a0f0aafeab0088172f77afd40c1fa2cc1f2b8 assets/create/models/item/clutch.json dcb09deae110077bcddf090996b51cc66e9a7de3 assets/create/models/item/cogwheel.json 7717e3b21cff39f497f07687c70c1fa40eaa756d assets/create/models/item/content_observer.json -affb7308b2ff8341d8be1d34c38ee2126d6b48b9 assets/create/models/item/controller_rail.json +e903818e22c6286af8e09dc01551335174a83fe0 assets/create/models/item/controller_rail.json 965a90a882d85dba93b30af9bce7ecf8e68ce747 assets/create/models/item/copper_block.json 759bcb5fe7dfdd628716f9b4ff19a5ab00393381 assets/create/models/item/copper_casing.json c2a320162daa2d24cef969d1d14a0cbd55eb574f assets/create/models/item/copper_ingot.json @@ -1653,6 +1653,7 @@ d3ca638ffbca177b4970f046f6c42770e757e33e data/create/advancements/recipes/create a49a70403523bc9d4eadffdac5507806aca9fd9d data/create/advancements/recipes/create.base/crafting/kinetics/clockwork_bearing.json 403fd0da8ee42a52234e544cf532e454fb80137b data/create/advancements/recipes/create.base/crafting/kinetics/clutch.json 5bbaac432fce5435c8c3df56ec81d31a0b76a4ee data/create/advancements/recipes/create.base/crafting/kinetics/cogwheel.json +b42213bffce4e51618e1bba481959208d247c120 data/create/advancements/recipes/create.base/crafting/kinetics/controller_rail.json 27930edef02aac6e74bfab62128688ecfb575008 data/create/advancements/recipes/create.base/crafting/kinetics/copper_valve_handle.json 512e4d45657f6df3df2639040e8c5e76f9119f17 data/create/advancements/recipes/create.base/crafting/kinetics/copper_valve_handle_from_others.json 7b80f6b25e1e21e9545120592bc1a3561ee49603 data/create/advancements/recipes/create.base/crafting/kinetics/crafter_slot_cover.json @@ -2671,10 +2672,11 @@ c50077a130bc43cd3659faa02ce95789399478b2 data/create/recipes/crafting/kinetics/b a3c99b38fc8896c9971a5e9dcbae747786ff610d data/create/recipes/crafting/kinetics/brown_seat_from_other_seat.json 43233c87cfb80d57345a561c3dd2646c8d3c0d8a data/create/recipes/crafting/kinetics/brown_valve_handle_from_other_valve_handle.json 860796dce8756c4cd234f18bbe52108f3b2254c2 data/create/recipes/crafting/kinetics/cart_assembler.json -3bc3510b64e576d68b19f4ceb5d9bd6591dbcf6c data/create/recipes/crafting/kinetics/chute.json +abf8a28b4b8ae4ba15beed938736ef3a5a7b27ff data/create/recipes/crafting/kinetics/chute.json a80e3eabbeba2931d0d58dd9492018a0d78da8b5 data/create/recipes/crafting/kinetics/clockwork_bearing.json 501ad764d087b40ce36f3d4256b0d5ee25b2081e data/create/recipes/crafting/kinetics/clutch.json e46bcc6778ff5118252fe6371ef817ae1302253a data/create/recipes/crafting/kinetics/cogwheel.json +11fe2ccc11f470e5735c3e848a944f889697ff73 data/create/recipes/crafting/kinetics/controller_rail.json 3093be508f6597eee2f3230cd9072f12d2821a6f data/create/recipes/crafting/kinetics/copper_valve_handle.json 886caa21481e62d44d70fd103f8d29f9bac64d60 data/create/recipes/crafting/kinetics/copper_valve_handle_from_others.json 59db5170cec390fe6c20a27d6154deebe044580c data/create/recipes/crafting/kinetics/crafter_slot_cover.json @@ -2832,6 +2834,7 @@ b83ef0af844ca068e0353330b8273bace5b6a8c3 data/create/recipes/crushing/coal_ore.j da4ed79975391ec9f263869936b84474f1f727d3 data/create/recipes/crushing/copper_block.json d49472887067c871943de1b80887b169682eeca9 data/create/recipes/crushing/copper_ore.json 4c482db5575b74b4111800602d7fce22b2e6d32a data/create/recipes/crushing/diamond_horse_armor.json +28ba8cf655bd11bb6c600cd862b98349c812915f data/create/recipes/crushing/diamond_ore.json e1bb927c62c59f5bf5063bd110da9231de378a1f data/create/recipes/crushing/emerald_ore.json b26b1f0dccf2ffb194ce12173890a83e93369b39 data/create/recipes/crushing/glowstone.json 50e75cdde6996c47b5dc25f27b84367040249107 data/create/recipes/crushing/gold_ore.json @@ -3347,7 +3350,7 @@ d3fdb8ece6cb072a93ddb64a0baad5ac952117a4 data/create/recipes/weathered_limestone 0f3c993eb6dd3f37953f304b8fad15bf60469ef4 data/create/recipes/weathered_limestone_cobblestone_wall_from_weathered_limestone_cobblestone_stonecutting.json 6eceb25fabbb6b389ca35de3b829ad061c9c456a data/create/recipes/weathered_limestone_pillar.json 11667414f73bc2d00bda7c5c1a7d2934bf6e9165 data/create/recipes/weathered_limestone_pillar_from_weathered_limestone_stonecutting.json -f9ecec40e11a87de73c9dc7c2963c1cb10b1a180 data/create/tags/blocks/brittle.json +eedf31af7134d03656c5fa57229982f9c5bed07c data/create/tags/blocks/brittle.json 13b55d6e905a02403d2e95e9ba2357f99c5f2241 data/create/tags/blocks/fan_heaters.json 3bc64e3a1e7980237435b1770a9ba2102d57fcd4 data/create/tags/blocks/fan_transparent.json 74700d556ca80c7a1db5fd4efb09c3ddb26cad66 data/create/tags/blocks/non_movable.json diff --git a/src/generated/resources/assets/create/blockstates/controller_rail.json b/src/generated/resources/assets/create/blockstates/controller_rail.json index 65f6ee81b..033305478 100644 --- a/src/generated/resources/assets/create/blockstates/controller_rail.json +++ b/src/generated/resources/assets/create/blockstates/controller_rail.json @@ -1,724 +1,49 @@ { "variants": { - "backwards=false,power=0,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_off" + "backwards=false,shape=north_south": { + "model": "create:block/controller_rail/block_north_south" }, - "backwards=true,power=0,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_off", + "backwards=true,shape=north_south": { + "model": "create:block/controller_rail/block_north_south", "y": 180 }, - "backwards=false,power=1,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog" + "backwards=false,shape=east_west": { + "model": "create:block/controller_rail/block_north_south", + "y": 270 }, - "backwards=true,power=1,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog", + "backwards=true,shape=east_west": { + "model": "create:block/controller_rail/block_north_south", + "y": 90 + }, + "backwards=false,shape=ascending_east": { + "model": "create:block/controller_rail/block_ascending_south", + "y": 270 + }, + "backwards=true,shape=ascending_east": { + "model": "create:block/controller_rail/block_ascending_north", + "y": 90 + }, + "backwards=false,shape=ascending_west": { + "model": "create:block/controller_rail/block_ascending_north", + "y": 270 + }, + "backwards=true,shape=ascending_west": { + "model": "create:block/controller_rail/block_ascending_south", + "y": 90 + }, + "backwards=false,shape=ascending_north": { + "model": "create:block/controller_rail/block_ascending_north" + }, + "backwards=true,shape=ascending_north": { + "model": "create:block/controller_rail/block_ascending_south", "y": 180 }, - "backwards=false,power=2,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog" + "backwards=false,shape=ascending_south": { + "model": "create:block/controller_rail/block_ascending_south" }, - "backwards=true,power=2,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog", + "backwards=true,shape=ascending_south": { + "model": "create:block/controller_rail/block_ascending_north", "y": 180 - }, - "backwards=false,power=3,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog" - }, - "backwards=true,power=3,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 180 - }, - "backwards=false,power=4,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog" - }, - "backwards=true,power=4,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 180 - }, - "backwards=false,power=5,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog" - }, - "backwards=true,power=5,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 180 - }, - "backwards=false,power=6,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog" - }, - "backwards=true,power=6,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 180 - }, - "backwards=false,power=7,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog" - }, - "backwards=true,power=7,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 180 - }, - "backwards=false,power=8,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog" - }, - "backwards=true,power=8,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 180 - }, - "backwards=false,power=9,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog" - }, - "backwards=true,power=9,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 180 - }, - "backwards=false,power=10,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog" - }, - "backwards=true,power=10,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 180 - }, - "backwards=false,power=11,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog" - }, - "backwards=true,power=11,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 180 - }, - "backwards=false,power=12,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog" - }, - "backwards=true,power=12,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 180 - }, - "backwards=false,power=13,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog" - }, - "backwards=true,power=13,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 180 - }, - "backwards=false,power=14,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog" - }, - "backwards=true,power=14,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 180 - }, - "backwards=false,power=15,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_on" - }, - "backwards=true,power=15,shape=north_south": { - "model": "create:block/controller_rail/block_north_south_on", - "y": 180 - }, - "backwards=false,power=0,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_off", - "y": 270 - }, - "backwards=true,power=0,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_off", - "y": 90 - }, - "backwards=false,power=1,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 270 - }, - "backwards=true,power=1,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 90 - }, - "backwards=false,power=2,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 270 - }, - "backwards=true,power=2,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 90 - }, - "backwards=false,power=3,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 270 - }, - "backwards=true,power=3,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 90 - }, - "backwards=false,power=4,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 270 - }, - "backwards=true,power=4,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 90 - }, - "backwards=false,power=5,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 270 - }, - "backwards=true,power=5,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 90 - }, - "backwards=false,power=6,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 270 - }, - "backwards=true,power=6,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 90 - }, - "backwards=false,power=7,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 270 - }, - "backwards=true,power=7,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 90 - }, - "backwards=false,power=8,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 270 - }, - "backwards=true,power=8,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 90 - }, - "backwards=false,power=9,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 270 - }, - "backwards=true,power=9,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 90 - }, - "backwards=false,power=10,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 270 - }, - "backwards=true,power=10,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 90 - }, - "backwards=false,power=11,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 270 - }, - "backwards=true,power=11,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 90 - }, - "backwards=false,power=12,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 270 - }, - "backwards=true,power=12,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 90 - }, - "backwards=false,power=13,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 270 - }, - "backwards=true,power=13,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 90 - }, - "backwards=false,power=14,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 270 - }, - "backwards=true,power=14,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_analog", - "y": 90 - }, - "backwards=false,power=15,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_on", - "y": 270 - }, - "backwards=true,power=15,shape=east_west": { - "model": "create:block/controller_rail/block_north_south_on", - "y": 90 - }, - "backwards=false,power=0,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_north_off", - "y": 90 - }, - "backwards=true,power=0,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_south_off", - "y": 270 - }, - "backwards=false,power=1,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 90 - }, - "backwards=true,power=1,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 270 - }, - "backwards=false,power=2,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 90 - }, - "backwards=true,power=2,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 270 - }, - "backwards=false,power=3,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 90 - }, - "backwards=true,power=3,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 270 - }, - "backwards=false,power=4,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 90 - }, - "backwards=true,power=4,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 270 - }, - "backwards=false,power=5,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 90 - }, - "backwards=true,power=5,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 270 - }, - "backwards=false,power=6,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 90 - }, - "backwards=true,power=6,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 270 - }, - "backwards=false,power=7,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 90 - }, - "backwards=true,power=7,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 270 - }, - "backwards=false,power=8,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 90 - }, - "backwards=true,power=8,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 270 - }, - "backwards=false,power=9,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 90 - }, - "backwards=true,power=9,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 270 - }, - "backwards=false,power=10,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 90 - }, - "backwards=true,power=10,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 270 - }, - "backwards=false,power=11,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 90 - }, - "backwards=true,power=11,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 270 - }, - "backwards=false,power=12,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 90 - }, - "backwards=true,power=12,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 270 - }, - "backwards=false,power=13,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 90 - }, - "backwards=true,power=13,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 270 - }, - "backwards=false,power=14,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 90 - }, - "backwards=true,power=14,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 270 - }, - "backwards=false,power=15,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_north_on", - "y": 90 - }, - "backwards=true,power=15,shape=ascending_east": { - "model": "create:block/controller_rail/block_ascending_south_on", - "y": 270 - }, - "backwards=false,power=0,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_north_off", - "y": 270 - }, - "backwards=true,power=0,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_south_off", - "y": 90 - }, - "backwards=false,power=1,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 270 - }, - "backwards=true,power=1,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 90 - }, - "backwards=false,power=2,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 270 - }, - "backwards=true,power=2,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 90 - }, - "backwards=false,power=3,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 270 - }, - "backwards=true,power=3,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 90 - }, - "backwards=false,power=4,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 270 - }, - "backwards=true,power=4,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 90 - }, - "backwards=false,power=5,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 270 - }, - "backwards=true,power=5,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 90 - }, - "backwards=false,power=6,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 270 - }, - "backwards=true,power=6,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 90 - }, - "backwards=false,power=7,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 270 - }, - "backwards=true,power=7,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 90 - }, - "backwards=false,power=8,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 270 - }, - "backwards=true,power=8,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 90 - }, - "backwards=false,power=9,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 270 - }, - "backwards=true,power=9,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 90 - }, - "backwards=false,power=10,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 270 - }, - "backwards=true,power=10,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 90 - }, - "backwards=false,power=11,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 270 - }, - "backwards=true,power=11,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 90 - }, - "backwards=false,power=12,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 270 - }, - "backwards=true,power=12,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 90 - }, - "backwards=false,power=13,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 270 - }, - "backwards=true,power=13,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 90 - }, - "backwards=false,power=14,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 270 - }, - "backwards=true,power=14,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 90 - }, - "backwards=false,power=15,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_north_on", - "y": 270 - }, - "backwards=true,power=15,shape=ascending_west": { - "model": "create:block/controller_rail/block_ascending_south_on", - "y": 90 - }, - "backwards=false,power=0,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_north_off" - }, - "backwards=true,power=0,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_south_off", - "y": 180 - }, - "backwards=false,power=1,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_north_analog" - }, - "backwards=true,power=1,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 180 - }, - "backwards=false,power=2,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_north_analog" - }, - "backwards=true,power=2,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 180 - }, - "backwards=false,power=3,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_north_analog" - }, - "backwards=true,power=3,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 180 - }, - "backwards=false,power=4,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_north_analog" - }, - "backwards=true,power=4,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 180 - }, - "backwards=false,power=5,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_north_analog" - }, - "backwards=true,power=5,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 180 - }, - "backwards=false,power=6,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_north_analog" - }, - "backwards=true,power=6,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 180 - }, - "backwards=false,power=7,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_north_analog" - }, - "backwards=true,power=7,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 180 - }, - "backwards=false,power=8,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_north_analog" - }, - "backwards=true,power=8,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 180 - }, - "backwards=false,power=9,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_north_analog" - }, - "backwards=true,power=9,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 180 - }, - "backwards=false,power=10,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_north_analog" - }, - "backwards=true,power=10,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 180 - }, - "backwards=false,power=11,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_north_analog" - }, - "backwards=true,power=11,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 180 - }, - "backwards=false,power=12,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_north_analog" - }, - "backwards=true,power=12,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 180 - }, - "backwards=false,power=13,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_north_analog" - }, - "backwards=true,power=13,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 180 - }, - "backwards=false,power=14,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_north_analog" - }, - "backwards=true,power=14,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_south_analog", - "y": 180 - }, - "backwards=false,power=15,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_north_on" - }, - "backwards=true,power=15,shape=ascending_north": { - "model": "create:block/controller_rail/block_ascending_south_on", - "y": 180 - }, - "backwards=false,power=0,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_north_off", - "y": 180 - }, - "backwards=true,power=0,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_south_off" - }, - "backwards=false,power=1,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 180 - }, - "backwards=true,power=1,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_south_analog" - }, - "backwards=false,power=2,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 180 - }, - "backwards=true,power=2,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_south_analog" - }, - "backwards=false,power=3,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 180 - }, - "backwards=true,power=3,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_south_analog" - }, - "backwards=false,power=4,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 180 - }, - "backwards=true,power=4,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_south_analog" - }, - "backwards=false,power=5,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 180 - }, - "backwards=true,power=5,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_south_analog" - }, - "backwards=false,power=6,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 180 - }, - "backwards=true,power=6,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_south_analog" - }, - "backwards=false,power=7,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 180 - }, - "backwards=true,power=7,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_south_analog" - }, - "backwards=false,power=8,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 180 - }, - "backwards=true,power=8,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_south_analog" - }, - "backwards=false,power=9,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 180 - }, - "backwards=true,power=9,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_south_analog" - }, - "backwards=false,power=10,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 180 - }, - "backwards=true,power=10,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_south_analog" - }, - "backwards=false,power=11,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 180 - }, - "backwards=true,power=11,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_south_analog" - }, - "backwards=false,power=12,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 180 - }, - "backwards=true,power=12,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_south_analog" - }, - "backwards=false,power=13,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 180 - }, - "backwards=true,power=13,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_south_analog" - }, - "backwards=false,power=14,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_north_analog", - "y": 180 - }, - "backwards=true,power=14,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_south_analog" - }, - "backwards=false,power=15,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_north_on", - "y": 180 - }, - "backwards=true,power=15,shape=ascending_south": { - "model": "create:block/controller_rail/block_ascending_south_on" } } } \ No newline at end of file diff --git a/src/generated/resources/assets/create/blockstates/fluid_pipe.json b/src/generated/resources/assets/create/blockstates/fluid_pipe.json index a4cffcde7..3b646b920 100644 --- a/src/generated/resources/assets/create/blockstates/fluid_pipe.json +++ b/src/generated/resources/assets/create/blockstates/fluid_pipe.json @@ -303,8 +303,8 @@ { "when": { "west": "false", - "down": "false", "east": "true", + "down": "false", "up": "true" }, "apply": { @@ -314,8 +314,8 @@ { "when": { "west": "true", - "down": "false", "east": "false", + "down": "false", "up": "true" }, "apply": { @@ -325,8 +325,8 @@ { "when": { "west": "false", - "down": "true", "east": "true", + "down": "true", "up": "false" }, "apply": { @@ -336,8 +336,8 @@ { "when": { "west": "true", - "down": "true", "east": "false", + "down": "true", "up": "false" }, "apply": { @@ -347,8 +347,8 @@ { "when": { "west": "false", - "down": "true", "east": "false", + "down": "true", "up": "true" }, "apply": { @@ -358,8 +358,8 @@ { "when": { "west": "false", - "down": "false", "east": "false", + "down": "false", "up": "true" }, "apply": { @@ -369,8 +369,8 @@ { "when": { "west": "false", - "down": "true", "east": "false", + "down": "true", "up": "false" }, "apply": { @@ -380,8 +380,8 @@ { "when": { "west": "true", - "down": "false", "east": "true", + "down": "false", "up": "false" }, "apply": { @@ -391,8 +391,8 @@ { "when": { "west": "false", - "down": "false", "east": "true", + "down": "false", "up": "false" }, "apply": { @@ -402,8 +402,8 @@ { "when": { "west": "true", - "down": "false", "east": "false", + "down": "false", "up": "false" }, "apply": { @@ -413,8 +413,8 @@ { "when": { "west": "false", - "down": "false", "east": "false", + "down": "false", "up": "false" }, "apply": { diff --git a/src/generated/resources/assets/create/lang/en_us.json b/src/generated/resources/assets/create/lang/en_us.json index e9a1b628d..185840645 100644 --- a/src/generated/resources/assets/create/lang/en_us.json +++ b/src/generated/resources/assets/create/lang/en_us.json @@ -726,6 +726,7 @@ "create.gui.goggles.generator_stats": "Generator Stats:", "create.gui.goggles.kinetic_stats": "Kinetic Stats:", "create.gui.goggles.at_current_speed": "at current speed", + "create.gui.goggles.pole_length": "Pole Length:", "create.gui.gauge.info_header": "Gauge Information:", "create.gui.speedometer.title": "Rotation Speed", "create.gui.stressometer.title": "Network Stress", diff --git a/src/generated/resources/assets/create/lang/unfinished/de_de.json b/src/generated/resources/assets/create/lang/unfinished/de_de.json index 00435465a..ee391b900 100644 --- a/src/generated/resources/assets/create/lang/unfinished/de_de.json +++ b/src/generated/resources/assets/create/lang/unfinished/de_de.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 1055", + "_": "Missing Localizations: 1056", "_": "->------------------------] Game Elements [------------------------<-", @@ -727,6 +727,7 @@ "create.gui.goggles.generator_stats": "UNLOCALIZED: Generator Stats:", "create.gui.goggles.kinetic_stats": "UNLOCALIZED: Kinetic Stats:", "create.gui.goggles.at_current_speed": "UNLOCALIZED: at current speed", + "create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:", "create.gui.gauge.info_header": "UNLOCALIZED: Gauge Information:", "create.gui.speedometer.title": "UNLOCALIZED: Rotation Speed", "create.gui.stressometer.title": "UNLOCALIZED: Network Stress", diff --git a/src/generated/resources/assets/create/lang/unfinished/fr_fr.json b/src/generated/resources/assets/create/lang/unfinished/fr_fr.json index 7f9ba7a08..0f1e9ba63 100644 --- a/src/generated/resources/assets/create/lang/unfinished/fr_fr.json +++ b/src/generated/resources/assets/create/lang/unfinished/fr_fr.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 685", + "_": "Missing Localizations: 686", "_": "->------------------------] Game Elements [------------------------<-", @@ -727,6 +727,7 @@ "create.gui.goggles.generator_stats": "Statistiques du générateur:", "create.gui.goggles.kinetic_stats": "Statistiques cinétiques:", "create.gui.goggles.at_current_speed": "À la vitesse actuelle", + "create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:", "create.gui.gauge.info_header": "Informations sur la jauge:", "create.gui.speedometer.title": "Vitesse de rotation", "create.gui.stressometer.title": "Stress du réseau", diff --git a/src/generated/resources/assets/create/lang/unfinished/it_it.json b/src/generated/resources/assets/create/lang/unfinished/it_it.json index 59d1352fb..4978e028d 100644 --- a/src/generated/resources/assets/create/lang/unfinished/it_it.json +++ b/src/generated/resources/assets/create/lang/unfinished/it_it.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 669", + "_": "Missing Localizations: 670", "_": "->------------------------] Game Elements [------------------------<-", @@ -727,6 +727,7 @@ "create.gui.goggles.generator_stats": "Statistiche del Generatore:", "create.gui.goggles.kinetic_stats": "Statistiche Cinetiche:", "create.gui.goggles.at_current_speed": "Alla velocità Attuale", + "create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:", "create.gui.gauge.info_header": "Informazioni sul Calibro:", "create.gui.speedometer.title": "Velocità di Rotazione", "create.gui.stressometer.title": "Stress della Rete", diff --git a/src/generated/resources/assets/create/lang/unfinished/ja_jp.json b/src/generated/resources/assets/create/lang/unfinished/ja_jp.json index 94356e4e4..37264babb 100644 --- a/src/generated/resources/assets/create/lang/unfinished/ja_jp.json +++ b/src/generated/resources/assets/create/lang/unfinished/ja_jp.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 668", + "_": "Missing Localizations: 669", "_": "->------------------------] Game Elements [------------------------<-", @@ -727,6 +727,7 @@ "create.gui.goggles.generator_stats": "ジェネレータの統計:", "create.gui.goggles.kinetic_stats": "動力の統計:", "create.gui.goggles.at_current_speed": "現在の速度", + "create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:", "create.gui.gauge.info_header": "計器の情報:", "create.gui.speedometer.title": "回転速度", "create.gui.stressometer.title": "ネットワークの応力", diff --git a/src/generated/resources/assets/create/lang/unfinished/ko_kr.json b/src/generated/resources/assets/create/lang/unfinished/ko_kr.json index 2ef9d6918..fd22d72dc 100644 --- a/src/generated/resources/assets/create/lang/unfinished/ko_kr.json +++ b/src/generated/resources/assets/create/lang/unfinished/ko_kr.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 669", + "_": "Missing Localizations: 670", "_": "->------------------------] Game Elements [------------------------<-", @@ -727,6 +727,7 @@ "create.gui.goggles.generator_stats": "발전 상태:", "create.gui.goggles.kinetic_stats": "가동 상태:", "create.gui.goggles.at_current_speed": "현재 속도", + "create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:", "create.gui.gauge.info_header": "게이지 정보:", "create.gui.speedometer.title": "회전 속도", "create.gui.stressometer.title": "네트워크 부하", diff --git a/src/generated/resources/assets/create/lang/unfinished/nl_nl.json b/src/generated/resources/assets/create/lang/unfinished/nl_nl.json index 842f13835..e12a0339f 100644 --- a/src/generated/resources/assets/create/lang/unfinished/nl_nl.json +++ b/src/generated/resources/assets/create/lang/unfinished/nl_nl.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 996", + "_": "Missing Localizations: 997", "_": "->------------------------] Game Elements [------------------------<-", @@ -727,6 +727,7 @@ "create.gui.goggles.generator_stats": "UNLOCALIZED: Generator Stats:", "create.gui.goggles.kinetic_stats": "UNLOCALIZED: Kinetic Stats:", "create.gui.goggles.at_current_speed": "UNLOCALIZED: at current speed", + "create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:", "create.gui.gauge.info_header": "UNLOCALIZED: Gauge Information:", "create.gui.speedometer.title": "UNLOCALIZED: Rotation Speed", "create.gui.stressometer.title": "UNLOCALIZED: Network Stress", diff --git a/src/generated/resources/assets/create/lang/unfinished/pt_br.json b/src/generated/resources/assets/create/lang/unfinished/pt_br.json index 841825d1a..e6e561f49 100644 --- a/src/generated/resources/assets/create/lang/unfinished/pt_br.json +++ b/src/generated/resources/assets/create/lang/unfinished/pt_br.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 1062", + "_": "Missing Localizations: 1063", "_": "->------------------------] Game Elements [------------------------<-", @@ -727,6 +727,7 @@ "create.gui.goggles.generator_stats": "UNLOCALIZED: Generator Stats:", "create.gui.goggles.kinetic_stats": "UNLOCALIZED: Kinetic Stats:", "create.gui.goggles.at_current_speed": "UNLOCALIZED: at current speed", + "create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:", "create.gui.gauge.info_header": "UNLOCALIZED: Gauge Information:", "create.gui.speedometer.title": "UNLOCALIZED: Rotation Speed", "create.gui.stressometer.title": "UNLOCALIZED: Network Stress", diff --git a/src/generated/resources/assets/create/lang/unfinished/ru_ru.json b/src/generated/resources/assets/create/lang/unfinished/ru_ru.json index 152917390..80421141f 100644 --- a/src/generated/resources/assets/create/lang/unfinished/ru_ru.json +++ b/src/generated/resources/assets/create/lang/unfinished/ru_ru.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 338", + "_": "Missing Localizations: 339", "_": "->------------------------] Game Elements [------------------------<-", @@ -727,6 +727,7 @@ "create.gui.goggles.generator_stats": "Статистика генератора:", "create.gui.goggles.kinetic_stats": "Кинетическая статистика:", "create.gui.goggles.at_current_speed": "На текущей скорости", + "create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:", "create.gui.gauge.info_header": "Калибровочная информация:", "create.gui.speedometer.title": "Скорость вращения", "create.gui.stressometer.title": "Сетевой момент", diff --git a/src/generated/resources/assets/create/lang/unfinished/zh_cn.json b/src/generated/resources/assets/create/lang/unfinished/zh_cn.json index 0f3911df7..749fe6ef5 100644 --- a/src/generated/resources/assets/create/lang/unfinished/zh_cn.json +++ b/src/generated/resources/assets/create/lang/unfinished/zh_cn.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 351", + "_": "Missing Localizations: 352", "_": "->------------------------] Game Elements [------------------------<-", @@ -727,6 +727,7 @@ "create.gui.goggles.generator_stats": "产能器状态:", "create.gui.goggles.kinetic_stats": "动能状态:", "create.gui.goggles.at_current_speed": "当前速度应力值", + "create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:", "create.gui.gauge.info_header": "仪表信息:", "create.gui.speedometer.title": "旋转速度", "create.gui.stressometer.title": "网络应力", diff --git a/src/generated/resources/assets/create/models/item/controller_rail.json b/src/generated/resources/assets/create/models/item/controller_rail.json index 5812829bc..3e4d4be29 100644 --- a/src/generated/resources/assets/create/models/item/controller_rail.json +++ b/src/generated/resources/assets/create/models/item/controller_rail.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/generated", "textures": { - "layer0": "create:block/controller_rail_analog" + "layer0": "create:block/controller_rail_item" } } \ No newline at end of file diff --git a/src/generated/resources/data/create/advancements/recipes/create.base/crafting/kinetics/controller_rail.json b/src/generated/resources/data/create/advancements/recipes/create.base/crafting/kinetics/controller_rail.json new file mode 100644 index 000000000..0e88c3224 --- /dev/null +++ b/src/generated/resources/data/create/advancements/recipes/create.base/crafting/kinetics/controller_rail.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "create:crafting/kinetics/controller_rail" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "item": "minecraft:powered_rail" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "create:crafting/kinetics/controller_rail" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crafting/kinetics/chute.json b/src/generated/resources/data/create/recipes/crafting/kinetics/chute.json index 9b272de35..e8bddbe4b 100644 --- a/src/generated/resources/data/create/recipes/crafting/kinetics/chute.json +++ b/src/generated/resources/data/create/recipes/crafting/kinetics/chute.json @@ -13,6 +13,7 @@ } }, "result": { - "item": "create:chute" + "item": "create:chute", + "count": 4 } } \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crafting/kinetics/controller_rail.json b/src/generated/resources/data/create/recipes/crafting/kinetics/controller_rail.json new file mode 100644 index 000000000..fadc95421 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crafting/kinetics/controller_rail.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "A A", + "ASA", + "AEA" + ], + "key": { + "A": { + "tag": "forge:ingots/gold" + }, + "E": { + "item": "create:electron_tube" + }, + "S": { + "tag": "forge:rods/wooden" + } + }, + "result": { + "item": "create:controller_rail", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/create/recipes/crushing/diamond_ore.json b/src/generated/resources/data/create/recipes/crushing/diamond_ore.json new file mode 100644 index 000000000..f16220528 --- /dev/null +++ b/src/generated/resources/data/create/recipes/crushing/diamond_ore.json @@ -0,0 +1,23 @@ +{ + "type": "create:crushing", + "ingredients": [ + { + "item": "minecraft:diamond_ore" + } + ], + "results": [ + { + "item": "minecraft:diamond", + "count": 2 + }, + { + "item": "minecraft:diamond", + "chance": 0.25 + }, + { + "item": "minecraft:cobblestone", + "chance": 0.125 + } + ], + "processingTime": 500 +} \ No newline at end of file diff --git a/src/generated/resources/data/create/tags/blocks/brittle.json b/src/generated/resources/data/create/tags/blocks/brittle.json index 07cbfbb2c..c028ad70c 100644 --- a/src/generated/resources/data/create/tags/blocks/brittle.json +++ b/src/generated/resources/data/create/tags/blocks/brittle.json @@ -26,6 +26,7 @@ "create:redstone_link", "#minecraft:doors", "minecraft:flower_pot", - "minecraft:bell" + "minecraft:bell", + "minecraft:cocoa" ] } \ No newline at end of file diff --git a/src/main/java/com/simibubi/create/AllBlocks.java b/src/main/java/com/simibubi/create/AllBlocks.java index 79aaac79a..a8fc6b627 100644 --- a/src/main/java/com/simibubi/create/AllBlocks.java +++ b/src/main/java/com/simibubi/create/AllBlocks.java @@ -62,6 +62,7 @@ import com.simibubi.create.content.contraptions.components.structureMovement.pis import com.simibubi.create.content.contraptions.components.structureMovement.piston.PistonExtensionPoleBlock; import com.simibubi.create.content.contraptions.components.structureMovement.pulley.PulleyBlock; import com.simibubi.create.content.contraptions.components.tracks.ControllerRailBlock; +import com.simibubi.create.content.contraptions.components.tracks.ControllerRailGenerator; import com.simibubi.create.content.contraptions.components.tracks.ReinforcedRailBlock; import com.simibubi.create.content.contraptions.components.turntable.TurntableBlock; import com.simibubi.create.content.contraptions.components.waterwheel.WaterWheelBlock; @@ -740,12 +741,14 @@ public class AllBlocks { public static final BlockEntry CONTROLLER_RAIL = REGISTRATE.block("controller_rail", ControllerRailBlock::new) .initialProperties(() -> Blocks.POWERED_RAIL) - .blockstate(BlockStateGen.controllerRail()) + .blockstate(new ControllerRailGenerator()::generate) .addLayer(() -> RenderType::getCutoutMipped) + .onRegister(CreateRegistrate.blockColors(() -> AllColorHandlers::getRedstonePower)) .tag(BlockTags.RAILS) .item() - .model((c, p) -> p.generated(c, Create.asResource("block/controller_rail_analog"))) - .build().register(); + .model((c, p) -> p.generated(c, Create.asResource("block/" + c.getName() + "_item"))) + .build() + .register(); public static final BlockEntry MINECART_ANCHOR = REGISTRATE.block("minecart_anchor", MinecartAnchorBlock::new) diff --git a/src/main/java/com/simibubi/create/AllColorHandlers.java b/src/main/java/com/simibubi/create/AllColorHandlers.java index 6c0b87d6f..38a7abc3e 100644 --- a/src/main/java/com/simibubi/create/AllColorHandlers.java +++ b/src/main/java/com/simibubi/create/AllColorHandlers.java @@ -1,30 +1,31 @@ package com.simibubi.create; -import java.util.HashMap; -import java.util.Map; - import com.simibubi.create.foundation.block.IBlockVertexColor; import com.simibubi.create.foundation.block.render.ColoredVertexModel; - import net.minecraft.block.Block; import net.minecraft.block.BlockState; +import net.minecraft.block.RedstoneWireBlock; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.color.BlockColors; import net.minecraft.client.renderer.color.IBlockColor; import net.minecraft.client.renderer.color.IItemColor; import net.minecraft.client.renderer.color.ItemColors; import net.minecraft.item.ItemStack; +import net.minecraft.state.properties.BlockStateProperties; import net.minecraft.util.IItemProvider; import net.minecraft.util.math.BlockPos; import net.minecraft.world.GrassColors; import net.minecraft.world.IBlockDisplayReader; import net.minecraft.world.biome.BiomeColors; +import java.util.HashMap; +import java.util.Map; + public class AllColorHandlers { - private Map coloredVertexBlocks = new HashMap<>(); - private Map coloredBlocks = new HashMap<>(); - private Map coloredItems = new HashMap<>(); + private final Map coloredVertexBlocks = new HashMap<>(); + private final Map coloredBlocks = new HashMap<>(); + private final Map coloredItems = new HashMap<>(); // @@ -38,6 +39,12 @@ public class AllColorHandlers { return new ItemColor((stack, layer) -> GrassColors.get(0.5D, 1.0D)); } + public static IBlockColor getRedstonePower() { + return new BlockColor( + (state, world, pos, layer) -> RedstoneWireBlock.colorMultiplier(pos != null && world != null ? state.get(BlockStateProperties.POWER_0_15) : 0) + ); + } + // public void register(Block block, IBlockColor color) { diff --git a/src/main/java/com/simibubi/create/AllTags.java b/src/main/java/com/simibubi/create/AllTags.java index 053bec1d7..7cad372a9 100644 --- a/src/main/java/com/simibubi/create/AllTags.java +++ b/src/main/java/com/simibubi/create/AllTags.java @@ -161,7 +161,7 @@ public class AllTags { AllBlockTags.WINDMILL_SAILS.includeAll(BlockTags.WOOL); AllBlockTags.BRITTLE.includeAll(BlockTags.DOORS); - AllBlockTags.BRITTLE.add(Blocks.FLOWER_POT, Blocks.BELL); + AllBlockTags.BRITTLE.add(Blocks.FLOWER_POT, Blocks.BELL, Blocks.COCOA); AllBlockTags.FAN_TRANSPARENT.includeAll(BlockTags.FENCES); AllBlockTags.FAN_TRANSPARENT.add(Blocks.IRON_BARS); diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/piston/PistonExtensionPoleBlock.java b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/piston/PistonExtensionPoleBlock.java index 4c49bee1c..b2ec441db 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/piston/PistonExtensionPoleBlock.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/piston/PistonExtensionPoleBlock.java @@ -131,7 +131,7 @@ public class PistonExtensionPoleBlock extends ProperDirectionalBlock implements return ActionResultType.SUCCESS; world.setBlockState(newPos, AllBlocks.PISTON_EXTENSION_POLE.getDefaultState() - .with(FACING, offset.getFirst())); + .with(FACING, state.get(FACING))); if (!player.isCreative()) heldItem.shrink(1); @@ -162,4 +162,5 @@ public class PistonExtensionPoleBlock extends ProperDirectionalBlock implements } return state; } + } diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/piston/PistonPolePlacementHelper.java b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/piston/PistonPolePlacementHelper.java index 0669c661d..6b28d3b0a 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/piston/PistonPolePlacementHelper.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/piston/PistonPolePlacementHelper.java @@ -33,7 +33,10 @@ public class PistonPolePlacementHelper { BlockRayTraceResult ray = (BlockRayTraceResult) mc.objectMouseOver; - if (!isHoldingPole(mc.player)) + if (mc.player != null && !isHoldingPole(mc.player)) + return; + + if (mc.player.isSneaking()) return; BlockPos pos = ray.getPos(); diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/tracks/ControllerRailBlock.java b/src/main/java/com/simibubi/create/content/contraptions/components/tracks/ControllerRailBlock.java index 48c2f7735..bf4f8af73 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/tracks/ControllerRailBlock.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/tracks/ControllerRailBlock.java @@ -1,19 +1,35 @@ package com.simibubi.create.content.contraptions.components.tracks; +import static net.minecraft.state.properties.RailShape.NORTH_SOUTH; + +import javax.annotation.Nullable; +import javax.annotation.ParametersAreNonnullByDefault; + +import com.simibubi.create.AllBlocks; import com.simibubi.create.content.contraptions.wrench.IWrenchable; +import com.simibubi.create.foundation.utility.Iterate; import com.simibubi.create.foundation.utility.VecHelper; + import mcp.MethodsReturnNonnullByDefault; import net.minecraft.block.AbstractRailBlock; import net.minecraft.block.Block; import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; import net.minecraft.entity.item.minecart.AbstractMinecartEntity; +import net.minecraft.entity.item.minecart.FurnaceMinecartEntity; import net.minecraft.item.BlockItemUseContext; import net.minecraft.item.ItemUseContext; -import net.minecraft.state.*; +import net.minecraft.state.BooleanProperty; +import net.minecraft.state.EnumProperty; +import net.minecraft.state.IntegerProperty; +import net.minecraft.state.Property; +import net.minecraft.state.StateContainer; import net.minecraft.state.properties.BlockStateProperties; import net.minecraft.state.properties.RailShape; import net.minecraft.util.ActionResultType; import net.minecraft.util.Direction; +import net.minecraft.util.Direction.Axis; +import net.minecraft.util.Direction.AxisDirection; import net.minecraft.util.Mirror; import net.minecraft.util.Rotation; import net.minecraft.util.math.BlockPos; @@ -23,58 +39,94 @@ import net.minecraft.util.math.vector.Vector3i; import net.minecraft.world.IBlockReader; import net.minecraft.world.World; -import javax.annotation.Nullable; -import javax.annotation.ParametersAreNonnullByDefault; - -import static net.minecraft.state.properties.RailShape.*; - - @ParametersAreNonnullByDefault @MethodsReturnNonnullByDefault -@SuppressWarnings("deprecation") public class ControllerRailBlock extends AbstractRailBlock implements IWrenchable { - public static final EnumProperty SHAPE = BlockStateProperties.RAIL_SHAPE_STRAIGHT; - public static final IntegerProperty POWER = BlockStateProperties.POWER_0_15; - public static final BooleanProperty BACKWARDS = BooleanProperty.create("backwards"); - public ControllerRailBlock(Properties p_i48444_2_) { - super(true, p_i48444_2_); - this.setDefaultState(this.stateContainer.getBaseState().with(POWER, 0).with(BACKWARDS, false).with(SHAPE, NORTH_SOUTH)); + public static final EnumProperty SHAPE = BlockStateProperties.RAIL_SHAPE_STRAIGHT; + public static final BooleanProperty BACKWARDS = BooleanProperty.create("backwards"); + public static final IntegerProperty POWER = BlockStateProperties.POWER_0_15; + + public ControllerRailBlock(Properties properties) { + super(true, properties); + this.setDefaultState(this.stateContainer.getBaseState() + .with(POWER, 0) + .with(BACKWARDS, false) + .with(SHAPE, NORTH_SOUTH)); } private static Vector3i getAccelerationVector(BlockState state) { Direction pointingTo = getPointingTowards(state); - return (state.get(BACKWARDS) ? pointingTo.getOpposite() : pointingTo).getDirectionVec(); + return (isStateBackwards(state) ? pointingTo.getOpposite() : pointingTo).getDirectionVec(); } private static Direction getPointingTowards(BlockState state) { switch (state.get(SHAPE)) { - case ASCENDING_WEST: - case EAST_WEST: - return Direction.WEST; - case ASCENDING_EAST: - return Direction.EAST; - case ASCENDING_SOUTH: - return Direction.SOUTH; - default: - return Direction.NORTH; + case ASCENDING_WEST: + case EAST_WEST: + return Direction.WEST; + case ASCENDING_EAST: + return Direction.EAST; + case ASCENDING_SOUTH: + return Direction.SOUTH; + default: + return Direction.NORTH; } } + @Override + protected BlockState getUpdatedState(World world, BlockPos pos, BlockState state, boolean p_208489_4_) { + BlockState updatedState = super.getUpdatedState(world, pos, state, p_208489_4_); + if (updatedState.get(SHAPE) == state.get(SHAPE)) + return updatedState; + BlockState reversedUpdatedState = updatedState; + + // Rails snapping to others at 90 degrees should follow their direction + if (getPointingTowards(state).getAxis() != getPointingTowards(updatedState).getAxis()) { + for (boolean opposite : Iterate.trueAndFalse) { + Direction offset = getPointingTowards(updatedState); + if (opposite) + offset = offset.getOpposite(); + for (BlockPos adjPos : Iterate.hereBelowAndAbove(pos.offset(offset))) { + BlockState adjState = world.getBlockState(adjPos); + if (!AllBlocks.CONTROLLER_RAIL.has(adjState)) + continue; + if (getPointingTowards(adjState).getAxis() != offset.getAxis()) + continue; + if (adjState.get(BACKWARDS) != reversedUpdatedState.get(BACKWARDS)) + reversedUpdatedState = reversedUpdatedState.cycle(BACKWARDS); + } + } + } + + // Replace if changed + if (reversedUpdatedState != updatedState) + world.setBlockState(pos, reversedUpdatedState); + return reversedUpdatedState; + } + private static void decelerateCart(BlockPos pos, AbstractMinecartEntity cart) { - Vector3d diff = VecHelper.getCenterOf(pos).subtract(cart.getPositionVec()); + Vector3d diff = VecHelper.getCenterOf(pos) + .subtract(cart.getPositionVec()); cart.setMotion(diff.x / 16f, 0, diff.z / 16f); + + if (cart instanceof FurnaceMinecartEntity) { + FurnaceMinecartEntity fme = (FurnaceMinecartEntity) cart; + fme.pushX = fme.pushZ = 0; + } } private static boolean isStableWith(BlockState testState, IBlockReader world, BlockPos pos) { - return hasSolidSideOnTop(world, pos.down()) && (!testState.get(SHAPE).isAscending() || hasSolidSideOnTop(world, pos.offset(getPointingTowards(testState)))); + return hasSolidSideOnTop(world, pos.down()) && (!testState.get(SHAPE) + .isAscending() || hasSolidSideOnTop(world, pos.offset(getPointingTowards(testState)))); } @Override public BlockState getStateForPlacement(BlockItemUseContext p_196258_1_) { Direction direction = p_196258_1_.getPlacementHorizontalFacing(); BlockState base = super.getStateForPlacement(p_196258_1_); - return (base == null ? getDefaultState() : base).with(BACKWARDS, direction == Direction.SOUTH || direction == Direction.EAST); + return (base == null ? getDefaultState() : base).with(BACKWARDS, + direction.getAxisDirection() == AxisDirection.POSITIVE); } @Override @@ -91,9 +143,18 @@ public class ControllerRailBlock extends AbstractRailBlock implements IWrenchabl public void onMinecartPass(BlockState state, World world, BlockPos pos, AbstractMinecartEntity cart) { if (world.isRemote) return; + Vector3d accelerationVec = Vector3d.of(getAccelerationVector(state)); - double targetSpeed = cart.getMaxSpeedWithRail() * state.get(POWER) / 15.; - if ((cart.getMotion().dotProduct(accelerationVec) >= 0 || cart.getMotion().lengthSquared() < 0.0001) && targetSpeed > 0) + double targetSpeed = cart.getMaxSpeedWithRail() * state.get(POWER) / 15f; + + if (cart instanceof FurnaceMinecartEntity) { + FurnaceMinecartEntity fme = (FurnaceMinecartEntity) cart; + fme.pushX = accelerationVec.x; + fme.pushZ = accelerationVec.z; + } + + Vector3d motion = cart.getMotion(); + if ((motion.dotProduct(accelerationVec) >= 0 || motion.lengthSquared() < 0.0001) && targetSpeed > 0) cart.setMotion(accelerationVec.scale(targetSpeed)); else decelerateCart(pos, cart); @@ -138,105 +199,27 @@ public class ControllerRailBlock extends AbstractRailBlock implements IWrenchabl if (backwardsPower != 0) break; } + if (forwardDistance > 8 && backwardsDistance > 8) return 0; - else if (backwardsPower == 0 && forwardDistance <= 8) + if (backwardsPower == 0 && forwardDistance <= 8) return forwardPower; - else if (forwardPower == 0 && backwardsDistance <= 8) + if (forwardPower == 0 && backwardsDistance <= 8) return backwardsPower; - else if (backwardsPower != 0 && forwardPower != 0) - return MathHelper.ceil((backwardsPower * forwardDistance + forwardPower * backwardsDistance) / (double) (forwardDistance + backwardsDistance)); + if (backwardsPower != 0 && forwardPower != 0) + return MathHelper.ceil((backwardsPower * forwardDistance + forwardPower * backwardsDistance) + / (double) (forwardDistance + backwardsDistance)); return 0; } - @Override - public BlockState rotate(BlockState p_185499_1_, Rotation p_185499_2_) { - switch (p_185499_2_) { - case CLOCKWISE_180: - switch (p_185499_1_.get(SHAPE)) { - case ASCENDING_EAST: - return p_185499_1_.with(SHAPE, ASCENDING_WEST); - case ASCENDING_WEST: - return p_185499_1_.with(SHAPE, ASCENDING_EAST); - case ASCENDING_NORTH: - return p_185499_1_.with(SHAPE, ASCENDING_SOUTH); - case ASCENDING_SOUTH: - return p_185499_1_.with(SHAPE, ASCENDING_NORTH); - default: - return p_185499_1_.with(BACKWARDS, !p_185499_1_.get(BACKWARDS)); - } - case COUNTERCLOCKWISE_90: - switch (p_185499_1_.get(SHAPE)) { - case ASCENDING_EAST: - return p_185499_1_.with(SHAPE, ASCENDING_NORTH); - case ASCENDING_WEST: - return p_185499_1_.with(SHAPE, ASCENDING_SOUTH); - case ASCENDING_NORTH: - return p_185499_1_.with(SHAPE, ASCENDING_WEST); - case ASCENDING_SOUTH: - return p_185499_1_.with(SHAPE, ASCENDING_EAST); - case NORTH_SOUTH: - return p_185499_1_.with(SHAPE, EAST_WEST); - case EAST_WEST: - return p_185499_1_.with(SHAPE, NORTH_SOUTH).with(BACKWARDS, !p_185499_1_.get(BACKWARDS)); - } - case CLOCKWISE_90: - switch (p_185499_1_.get(SHAPE)) { - case ASCENDING_EAST: - return p_185499_1_.with(SHAPE, ASCENDING_SOUTH); - case ASCENDING_WEST: - return p_185499_1_.with(SHAPE, ASCENDING_NORTH); - case ASCENDING_NORTH: - return p_185499_1_.with(SHAPE, ASCENDING_EAST); - case ASCENDING_SOUTH: - return p_185499_1_.with(SHAPE, ASCENDING_WEST); - case NORTH_SOUTH: - return p_185499_1_.with(SHAPE, EAST_WEST).with(BACKWARDS, !p_185499_1_.get(BACKWARDS)); - case EAST_WEST: - return p_185499_1_.with(SHAPE, NORTH_SOUTH); - } - default: - return p_185499_1_; - } - } - - @Override - public BlockState mirror(BlockState p_185471_1_, Mirror p_185471_2_) { - RailShape railshape = p_185471_1_.get(SHAPE); - switch (p_185471_2_) { - case LEFT_RIGHT: - switch (railshape) { - case ASCENDING_NORTH: - return p_185471_1_.with(SHAPE, RailShape.ASCENDING_SOUTH); - case ASCENDING_SOUTH: - return p_185471_1_.with(SHAPE, RailShape.ASCENDING_NORTH); - case NORTH_SOUTH: - return p_185471_1_.with(BACKWARDS, !p_185471_1_.get(BACKWARDS)); - default: - return super.mirror(p_185471_1_, p_185471_2_); - } - case FRONT_BACK: - switch (railshape) { - case ASCENDING_EAST: - return p_185471_1_.with(SHAPE, RailShape.ASCENDING_WEST); - case ASCENDING_WEST: - return p_185471_1_.with(SHAPE, RailShape.ASCENDING_EAST); - case EAST_WEST: - return p_185471_1_.with(BACKWARDS, !p_185471_1_.get(BACKWARDS)); - default: - break; - } - } - return super.mirror(p_185471_1_, p_185471_2_); - } - @Override public ActionResultType onWrenched(BlockState state, ItemUseContext context) { World world = context.getWorld(); if (world.isRemote) return ActionResultType.SUCCESS; BlockPos pos = context.getPos(); - for (Rotation testRotation : new Rotation[]{Rotation.CLOCKWISE_90, Rotation.CLOCKWISE_180, Rotation.COUNTERCLOCKWISE_90}) { + for (Rotation testRotation : new Rotation[] { Rotation.CLOCKWISE_90, Rotation.CLOCKWISE_180, + Rotation.COUNTERCLOCKWISE_90 }) { BlockState testState = rotate(state, testRotation); if (isStableWith(testState, world, pos)) { placeAndNotify(testState, pos, world); @@ -259,7 +242,8 @@ public class ControllerRailBlock extends AbstractRailBlock implements IWrenchabl private void placeAndNotify(BlockState state, BlockPos pos, World world) { world.setBlockState(pos, state, 3); world.notifyNeighborsOfStateChange(pos.down(), this); - if (state.get(SHAPE).isAscending()) + if (state.get(SHAPE) + .isAscending()) world.notifyNeighborsOfStateChange(pos.up(), this); } @@ -270,11 +254,13 @@ public class ControllerRailBlock extends AbstractRailBlock implements IWrenchabl return null; Vector3i accelerationVec = getAccelerationVector(current); BlockPos baseTestPos = reversed ? from.subtract(accelerationVec) : from.add(accelerationVec); - for (BlockPos testPos : new BlockPos[]{baseTestPos, baseTestPos.down(), baseTestPos.up()}) { - if (testPos.getY() > from.getY() && !current.get(SHAPE).isAscending()) + for (BlockPos testPos : Iterate.hereBelowAndAbove(baseTestPos)) { + if (testPos.getY() > from.getY() && !current.get(SHAPE) + .isAscending()) continue; BlockState testState = world.getBlockState(testPos); - if (testState.getBlock() instanceof ControllerRailBlock && getAccelerationVector(testState).equals(accelerationVec)) + if (testState.getBlock() instanceof ControllerRailBlock + && getAccelerationVector(testState).equals(accelerationVec)) return testPos; } return null; @@ -289,4 +275,47 @@ public class ControllerRailBlock extends AbstractRailBlock implements IWrenchabl public int getComparatorInputOverride(BlockState state, World world, BlockPos pos) { return state.get(POWER); } + + @Override + public BlockState rotate(BlockState state, Rotation rotation) { + if (rotation == Rotation.NONE) + return state; + + RailShape railshape = Blocks.POWERED_RAIL.getDefaultState() + .with(SHAPE, state.get(SHAPE)) + .rotate(rotation) + .get(SHAPE); + state = state.with(SHAPE, railshape); + + if (rotation == Rotation.CLOCKWISE_180 + || (getPointingTowards(state).getAxis() == Axis.Z) == (rotation == Rotation.COUNTERCLOCKWISE_90)) + return state.cycle(BACKWARDS); + + return state; + } + + @Override + public BlockState mirror(BlockState state, Mirror mirror) { + if (mirror == Mirror.NONE) + return state; + + RailShape railshape = Blocks.POWERED_RAIL.getDefaultState() + .with(SHAPE, state.get(SHAPE)) + .mirror(mirror) + .get(SHAPE); + state = state.with(SHAPE, railshape); + + if ((getPointingTowards(state).getAxis() == Axis.Z) == (mirror == Mirror.LEFT_RIGHT)) + return state.cycle(BACKWARDS); + + return state; + } + + public static boolean isStateBackwards(BlockState state) { + return state.get(BACKWARDS) ^ isReversedSlope(state); + } + + public static boolean isReversedSlope(BlockState state) { + return state.get(SHAPE) == RailShape.ASCENDING_SOUTH || state.get(SHAPE) == RailShape.ASCENDING_EAST; + } } diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/tracks/ControllerRailGenerator.java b/src/main/java/com/simibubi/create/content/contraptions/components/tracks/ControllerRailGenerator.java new file mode 100644 index 000000000..fd696ed47 --- /dev/null +++ b/src/main/java/com/simibubi/create/content/contraptions/components/tracks/ControllerRailGenerator.java @@ -0,0 +1,55 @@ +package com.simibubi.create.content.contraptions.components.tracks; + +import com.simibubi.create.foundation.data.AssetLookup; +import com.simibubi.create.foundation.data.SpecialBlockStateGen; +import com.tterrag.registrate.providers.DataGenContext; +import com.tterrag.registrate.providers.RegistrateBlockstateProvider; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.state.IProperty; +import net.minecraft.state.properties.RailShape; +import net.minecraftforge.client.model.generators.ModelFile; + +public class ControllerRailGenerator extends SpecialBlockStateGen { + + @Override + protected IProperty[] getIgnoredProperties() { + return new IProperty[] { ControllerRailBlock.POWER }; + } + + @Override + protected int getXRotation(BlockState state) { + return 0; + } + + @Override + protected int getYRotation(BlockState state) { + RailShape shape = state.get(ControllerRailBlock.SHAPE); + boolean backwards = ControllerRailBlock.isStateBackwards(state); + int rotation = backwards ? 180 : 0; + + switch (shape) { + case EAST_WEST: + case ASCENDING_WEST: + return rotation + 270; + case ASCENDING_EAST: + return rotation + 90; + case ASCENDING_SOUTH: + return rotation + 180; + default: + return rotation; + } + } + + @Override + public ModelFile getModel(DataGenContext ctx, RegistrateBlockstateProvider prov, + BlockState state) { + RailShape shape = state.get(ControllerRailBlock.SHAPE); + boolean backwards = ControllerRailBlock.isStateBackwards(state); + + String model = shape.isAscending() ? backwards ? "ascending_south" : "ascending_north" : "north_south"; + return AssetLookup.partialBaseModel(ctx, prov, model); + } + +} diff --git a/src/main/java/com/simibubi/create/content/contraptions/goggles/GoggleOverlayRenderer.java b/src/main/java/com/simibubi/create/content/contraptions/goggles/GoggleOverlayRenderer.java index ba2620724..ccd72b3b0 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/goggles/GoggleOverlayRenderer.java +++ b/src/main/java/com/simibubi/create/content/contraptions/goggles/GoggleOverlayRenderer.java @@ -12,6 +12,7 @@ import com.simibubi.create.content.contraptions.components.structureMovement.pis import com.simibubi.create.foundation.config.AllConfigs; import com.simibubi.create.foundation.gui.GuiGameElement; import com.simibubi.create.foundation.utility.Iterate; +import com.simibubi.create.foundation.utility.Lang; import net.minecraft.block.BlockState; import net.minecraft.client.Minecraft; @@ -100,7 +101,9 @@ public class GoggleOverlayRenderer { if (!tooltip.isEmpty()) tooltip.add(StringTextComponent.EMPTY); - tooltip.add(IHaveGoggleInformation.componentSpacing.copy().append(new StringTextComponent("Pole length: " + poles))); + tooltip.add(IHaveGoggleInformation.componentSpacing.copy() + .append(Lang.translate("gui.goggles.pole_length")) + .append(new StringTextComponent(" " + poles))); } if (tooltip.isEmpty()) diff --git a/src/main/java/com/simibubi/create/foundation/data/BlockStateGen.java b/src/main/java/com/simibubi/create/foundation/data/BlockStateGen.java index 5a1dc1c4d..8463c4561 100644 --- a/src/main/java/com/simibubi/create/foundation/data/BlockStateGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/BlockStateGen.java @@ -9,7 +9,6 @@ import java.util.Vector; import java.util.function.BiFunction; import java.util.function.Function; -import com.simibubi.create.content.contraptions.components.tracks.ControllerRailBlock; import org.apache.commons.lang3.tuple.Pair; import com.google.common.collect.ImmutableList; @@ -435,47 +434,4 @@ public class BlockStateGen { .end(); } - public static NonNullBiConsumer, RegistrateBlockstateProvider> controllerRail() { - return (c, p) -> p.getVariantBuilder(c.get()) - .forAllStates(state -> { - int power = state.get(ControllerRailBlock.POWER); - boolean backwards = state.get(ControllerRailBlock.BACKWARDS); - String powerStr = power == 0 ? "off" : (power == 15 ? "on" : "analog"); - RailShape shape = state.get(ControllerRailBlock.SHAPE); - String shapeName = shape.isAscending() ? RailShape.ASCENDING_NORTH.getString() : RailShape.NORTH_SOUTH.getString(); - int rotation = 0; - - switch (shape) { - case EAST_WEST: - rotation += 270; - shapeName = RailShape.NORTH_SOUTH.getString(); - break; - case ASCENDING_EAST: - rotation += 90; - break; - case ASCENDING_SOUTH: - rotation += 180; - break; - case ASCENDING_WEST: - rotation += 270; - break; - default: - break; - } - - if (backwards) { - rotation += 180; - shapeName = shape.isAscending() ? RailShape.ASCENDING_SOUTH.getString() : RailShape.NORTH_SOUTH.getString(); - } - - - return ConfiguredModel.builder() - .modelFile(p.models() - .getExistingFile(p.modLoc( - "block/" + c.getName() + "/block_" + shapeName + "_" + - powerStr))) - .rotationY(rotation % 360) - .build(); - }); - } } diff --git a/src/main/java/com/simibubi/create/foundation/data/SpecialBlockStateGen.java b/src/main/java/com/simibubi/create/foundation/data/SpecialBlockStateGen.java index bc4ee17e2..ad994851e 100644 --- a/src/main/java/com/simibubi/create/foundation/data/SpecialBlockStateGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/SpecialBlockStateGen.java @@ -5,21 +5,26 @@ import com.tterrag.registrate.providers.RegistrateBlockstateProvider; import net.minecraft.block.Block; import net.minecraft.block.BlockState; +import net.minecraft.state.IProperty; import net.minecraft.util.Direction; import net.minecraftforge.client.model.generators.ConfiguredModel; import net.minecraftforge.client.model.generators.ModelFile; public abstract class SpecialBlockStateGen { + protected IProperty[] getIgnoredProperties() { + return new IProperty[0]; + } + public final void generate(DataGenContext ctx, RegistrateBlockstateProvider prov) { prov.getVariantBuilder(ctx.getEntry()) - .forAllStates(state -> { + .forAllStatesExcept(state -> { return ConfiguredModel.builder() .modelFile(getModel(ctx, prov, state)) .rotationX((getXRotation(state) + 360) % 360) .rotationY((getYRotation(state) + 360) % 360) .build(); - }); + }, getIgnoredProperties()); } protected int horizontalAngle(Direction direction) { diff --git a/src/main/java/com/simibubi/create/foundation/data/recipe/CrushingRecipeGen.java b/src/main/java/com/simibubi/create/foundation/data/recipe/CrushingRecipeGen.java index b5e74e900..2b1e91a29 100644 --- a/src/main/java/com/simibubi/create/foundation/data/recipe/CrushingRecipeGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/recipe/CrushingRecipeGen.java @@ -75,6 +75,11 @@ public class CrushingRecipeGen extends ProcessingRecipeGen { .output(Items.EMERALD, 2) .output(.25f, Items.EMERALD, 1) .output(.125f, Blocks.COBBLESTONE)), + + DIAMOND_ORE = create(() -> Blocks.DIAMOND_ORE, b -> b.duration(500) + .output(Items.DIAMOND, 2) + .output(.25f, Items.DIAMOND, 1) + .output(.125f, Blocks.COBBLESTONE)), NETHER_WART_NO_QUARK = create("nether_wart_block_no_quark", b -> b.duration(150) .require(Blocks.NETHER_WART_BLOCK) diff --git a/src/main/java/com/simibubi/create/foundation/data/recipe/StandardRecipeGen.java b/src/main/java/com/simibubi/create/foundation/data/recipe/StandardRecipeGen.java index ee55d963b..8e98843d1 100644 --- a/src/main/java/com/simibubi/create/foundation/data/recipe/StandardRecipeGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/recipe/StandardRecipeGen.java @@ -329,6 +329,15 @@ public class StandardRecipeGen extends CreateRecipeProvider { .patternLine("CRC") .patternLine("L L")), + CONTROLLER_RAIL = create(AllBlocks.CONTROLLER_RAIL).returns(6) + .unlockedBy(() -> Items.POWERED_RAIL) + .viaShaped(b -> b.key('A', I.gold()) + .key('E', I.electronTube()) + .key('S', Tags.Items.RODS_WOODEN) + .patternLine("A A") + .patternLine("ASA") + .patternLine("AEA")), + HAND_CRANK = create(AllBlocks.HAND_CRANK).unlockedBy(I::andesite) .viaShaped(b -> b.key('A', I.andesite()) .key('C', ItemTags.PLANKS) @@ -536,6 +545,7 @@ public class StandardRecipeGen extends CreateRecipeProvider { .patternLine("AA")), CHUTE = create(AllBlocks.CHUTE).unlockedBy(I::andesite) + .returns(4) .viaShaped(b -> b.key('A', I.ironSheet()) .key('I', I.andesite()) .patternLine("II") diff --git a/src/main/java/com/simibubi/create/foundation/utility/Iterate.java b/src/main/java/com/simibubi/create/foundation/utility/Iterate.java index 84e7cccd1..70206344d 100644 --- a/src/main/java/com/simibubi/create/foundation/utility/Iterate.java +++ b/src/main/java/com/simibubi/create/foundation/utility/Iterate.java @@ -38,4 +38,8 @@ public class Iterate { public static List hereAndBelow(BlockPos pos) { return Arrays.asList(pos, pos.down()); } + + public static List hereBelowAndAbove(BlockPos pos) { + return Arrays.asList(pos, pos.down(), pos.up()); + } } diff --git a/src/main/resources/assets/create/lang/default/messages.json b/src/main/resources/assets/create/lang/default/messages.json index eec9e2a6a..14c300883 100644 --- a/src/main/resources/assets/create/lang/default/messages.json +++ b/src/main/resources/assets/create/lang/default/messages.json @@ -170,7 +170,8 @@ "create.gui.goggles.generator_stats": "Generator Stats:", "create.gui.goggles.kinetic_stats": "Kinetic Stats:", "create.gui.goggles.at_current_speed": "at current speed", - + "create.gui.goggles.pole_length": "Pole Length:", + "create.gui.gauge.info_header": "Gauge Information:", "create.gui.speedometer.title": "Rotation Speed", "create.gui.stressometer.title": "Network Stress", diff --git a/src/main/resources/assets/create/models/block/controller_rail/block_ascending_north.json b/src/main/resources/assets/create/models/block/controller_rail/block_ascending_north.json new file mode 100644 index 000000000..4dbb5f511 --- /dev/null +++ b/src/main/resources/assets/create/models/block/controller_rail/block_ascending_north.json @@ -0,0 +1,36 @@ +{ + "ambientocclusion": false, + "textures": { + "particle": "#rail", + "rail": "create:block/controller_rail_base", + "tint": "create:block/controller_rail_tint" + }, + "elements": [ + { "from": [ 0, 9, 0 ], + "to": [ 16, 9, 16 ], + "rotation": { + "origin": [ 8, 9, 8 ], + "axis": "x", + "angle": 45, + "rescale": true + }, + "faces": { + "down": { "uv": [ 0, 16, 16, 0 ], "texture": "#rail" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#rail" } + } + }, + { "from": [ 0, 9, 0 ], + "to": [ 16, 9, 16 ], + "rotation": { + "origin": [ 8, 9, 8 ], + "axis": "x", + "angle": 45, + "rescale": true + }, + "faces": { + "down": { "uv": [ 0, 16, 16, 0 ], "texture": "#tint", "tintindex": 0 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#tint", "tintindex": 0 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/create/models/block/controller_rail/block_ascending_north_analog.json b/src/main/resources/assets/create/models/block/controller_rail/block_ascending_north_analog.json deleted file mode 100644 index 73815cb0d..000000000 --- a/src/main/resources/assets/create/models/block/controller_rail/block_ascending_north_analog.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_rail_raised_ne", - "textures": { - "rail": "create:block/controller_rail_analog" - } -} \ No newline at end of file diff --git a/src/main/resources/assets/create/models/block/controller_rail/block_ascending_north_off.json b/src/main/resources/assets/create/models/block/controller_rail/block_ascending_north_off.json deleted file mode 100644 index f339682a0..000000000 --- a/src/main/resources/assets/create/models/block/controller_rail/block_ascending_north_off.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_rail_raised_ne", - "textures": { - "rail": "create:block/controller_rail_off" - } -} \ No newline at end of file diff --git a/src/main/resources/assets/create/models/block/controller_rail/block_ascending_north_on.json b/src/main/resources/assets/create/models/block/controller_rail/block_ascending_north_on.json deleted file mode 100644 index 0fe3100de..000000000 --- a/src/main/resources/assets/create/models/block/controller_rail/block_ascending_north_on.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_rail_raised_ne", - "textures": { - "rail": "create:block/controller_rail_on" - } -} \ No newline at end of file diff --git a/src/main/resources/assets/create/models/block/controller_rail/block_ascending_south.json b/src/main/resources/assets/create/models/block/controller_rail/block_ascending_south.json new file mode 100644 index 000000000..14521ede3 --- /dev/null +++ b/src/main/resources/assets/create/models/block/controller_rail/block_ascending_south.json @@ -0,0 +1,36 @@ +{ + "ambientocclusion": false, + "textures": { + "particle": "#rail", + "rail": "create:block/controller_rail_base", + "tint": "create:block/controller_rail_tint" + }, + "elements": [ + { "from": [ 0, 9, 0 ], + "to": [ 16, 9, 16 ], + "rotation": { + "origin": [ 8, 9, 8 ], + "axis": "x", + "angle": -45, + "rescale": true + }, + "faces": { + "down": { "uv": [ 0, 16, 16, 0 ], "texture": "#rail" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#rail" } + } + }, + { "from": [ 0, 9, 0 ], + "to": [ 16, 9, 16 ], + "rotation": { + "origin": [ 8, 9, 8 ], + "axis": "x", + "angle": -45, + "rescale": true + }, + "faces": { + "down": { "uv": [ 0, 16, 16, 0 ], "texture": "#tint", "tintindex": 0 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#tint", "tintindex": 0 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/create/models/block/controller_rail/block_ascending_south_analog.json b/src/main/resources/assets/create/models/block/controller_rail/block_ascending_south_analog.json deleted file mode 100644 index de285565e..000000000 --- a/src/main/resources/assets/create/models/block/controller_rail/block_ascending_south_analog.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_rail_raised_sw", - "textures": { - "rail": "create:block/controller_rail_analog" - } -} \ No newline at end of file diff --git a/src/main/resources/assets/create/models/block/controller_rail/block_ascending_south_off.json b/src/main/resources/assets/create/models/block/controller_rail/block_ascending_south_off.json deleted file mode 100644 index f4fbd0df1..000000000 --- a/src/main/resources/assets/create/models/block/controller_rail/block_ascending_south_off.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_rail_raised_sw", - "textures": { - "rail": "create:block/controller_rail_off" - } -} \ No newline at end of file diff --git a/src/main/resources/assets/create/models/block/controller_rail/block_ascending_south_on.json b/src/main/resources/assets/create/models/block/controller_rail/block_ascending_south_on.json deleted file mode 100644 index cffc1646a..000000000 --- a/src/main/resources/assets/create/models/block/controller_rail/block_ascending_south_on.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_rail_raised_sw", - "textures": { - "rail": "create:block/controller_rail_on" - } -} \ No newline at end of file diff --git a/src/main/resources/assets/create/models/block/controller_rail/block_north_south.json b/src/main/resources/assets/create/models/block/controller_rail/block_north_south.json new file mode 100644 index 000000000..bc7fc347c --- /dev/null +++ b/src/main/resources/assets/create/models/block/controller_rail/block_north_south.json @@ -0,0 +1,24 @@ +{ + "ambientocclusion": false, + "textures": { + "particle": "#rail", + "rail": "create:block/controller_rail_base", + "tint": "create:block/controller_rail_tint" + }, + "elements": [ + { "from": [ 0, 1, 0 ], + "to": [ 16, 1, 16 ], + "faces": { + "down": { "uv": [ 0, 16, 16, 0 ], "texture": "#rail" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#rail" } + } + }, + { "from": [ 0, 1, 0 ], + "to": [ 16, 1, 16 ], + "faces": { + "down": { "uv": [ 0, 16, 16, 0 ], "texture": "#tint", "tintindex": 0 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#tint", "tintindex": 0 } + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/create/models/block/controller_rail/block_north_south_analog.json b/src/main/resources/assets/create/models/block/controller_rail/block_north_south_analog.json deleted file mode 100644 index ba0d436dc..000000000 --- a/src/main/resources/assets/create/models/block/controller_rail/block_north_south_analog.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/rail_flat", - "textures": { - "rail": "create:block/controller_rail_analog" - } -} \ No newline at end of file diff --git a/src/main/resources/assets/create/models/block/controller_rail/block_north_south_off.json b/src/main/resources/assets/create/models/block/controller_rail/block_north_south_off.json deleted file mode 100644 index 280d61983..000000000 --- a/src/main/resources/assets/create/models/block/controller_rail/block_north_south_off.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/rail_flat", - "textures": { - "rail": "create:block/controller_rail_off" - } -} \ No newline at end of file diff --git a/src/main/resources/assets/create/models/block/controller_rail/block_north_south_on.json b/src/main/resources/assets/create/models/block/controller_rail/block_north_south_on.json deleted file mode 100644 index 749918039..000000000 --- a/src/main/resources/assets/create/models/block/controller_rail/block_north_south_on.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/rail_flat", - "textures": { - "rail": "create:block/controller_rail_on" - } -} \ No newline at end of file diff --git a/src/main/resources/assets/create/textures/block/controller_rail_analog.png b/src/main/resources/assets/create/textures/block/controller_rail_analog.png deleted file mode 100644 index f114dde12..000000000 Binary files a/src/main/resources/assets/create/textures/block/controller_rail_analog.png and /dev/null differ diff --git a/src/main/resources/assets/create/textures/block/controller_rail_base.png b/src/main/resources/assets/create/textures/block/controller_rail_base.png new file mode 100644 index 000000000..c8f72e61c Binary files /dev/null and b/src/main/resources/assets/create/textures/block/controller_rail_base.png differ diff --git a/src/main/resources/assets/create/textures/block/controller_rail_item.png b/src/main/resources/assets/create/textures/block/controller_rail_item.png new file mode 100644 index 000000000..84603cb7a Binary files /dev/null and b/src/main/resources/assets/create/textures/block/controller_rail_item.png differ diff --git a/src/main/resources/assets/create/textures/block/controller_rail_off.png b/src/main/resources/assets/create/textures/block/controller_rail_off.png deleted file mode 100644 index 346d2fb67..000000000 Binary files a/src/main/resources/assets/create/textures/block/controller_rail_off.png and /dev/null differ diff --git a/src/main/resources/assets/create/textures/block/controller_rail_on.png b/src/main/resources/assets/create/textures/block/controller_rail_on.png deleted file mode 100644 index bd61741a5..000000000 Binary files a/src/main/resources/assets/create/textures/block/controller_rail_on.png and /dev/null differ diff --git a/src/main/resources/assets/create/textures/block/controller_rail_tint.png b/src/main/resources/assets/create/textures/block/controller_rail_tint.png new file mode 100644 index 000000000..ac6002c83 Binary files /dev/null and b/src/main/resources/assets/create/textures/block/controller_rail_tint.png differ diff --git a/src/main/resources/assets/create/textures/block/copper_plating.png b/src/main/resources/assets/create/textures/block/copper_plating.png index ee40eba88..5c5fab81f 100644 Binary files a/src/main/resources/assets/create/textures/block/copper_plating.png and b/src/main/resources/assets/create/textures/block/copper_plating.png differ diff --git a/src/main/resources/assets/create/textures/block/encased_pipe.png b/src/main/resources/assets/create/textures/block/encased_pipe.png index 41205f1af..d9976cb79 100644 Binary files a/src/main/resources/assets/create/textures/block/encased_pipe.png and b/src/main/resources/assets/create/textures/block/encased_pipe.png differ diff --git a/src/main/resources/assets/create/textures/block/fluid_pipe.png b/src/main/resources/assets/create/textures/block/fluid_pipe.png index 6f96b5d30..1b0180e20 100644 Binary files a/src/main/resources/assets/create/textures/block/fluid_pipe.png and b/src/main/resources/assets/create/textures/block/fluid_pipe.png differ diff --git a/src/main/resources/assets/create/textures/block/fluid_valve.png b/src/main/resources/assets/create/textures/block/fluid_valve.png index d67ec1e00..a177120b7 100644 Binary files a/src/main/resources/assets/create/textures/block/fluid_valve.png and b/src/main/resources/assets/create/textures/block/fluid_valve.png differ diff --git a/src/main/resources/assets/create/textures/block/glass_fluid_pipe.png b/src/main/resources/assets/create/textures/block/glass_fluid_pipe.png index 0ad8834d5..af297ab74 100644 Binary files a/src/main/resources/assets/create/textures/block/glass_fluid_pipe.png and b/src/main/resources/assets/create/textures/block/glass_fluid_pipe.png differ diff --git a/src/main/resources/assets/create/textures/block/hose_pulley_magnet.png b/src/main/resources/assets/create/textures/block/hose_pulley_magnet.png index 34bed613c..acd3653de 100644 Binary files a/src/main/resources/assets/create/textures/block/hose_pulley_magnet.png and b/src/main/resources/assets/create/textures/block/hose_pulley_magnet.png differ diff --git a/src/main/resources/assets/create/textures/block/portable_fluid_interface.png b/src/main/resources/assets/create/textures/block/portable_fluid_interface.png index b0768413a..7912fd828 100644 Binary files a/src/main/resources/assets/create/textures/block/portable_fluid_interface.png and b/src/main/resources/assets/create/textures/block/portable_fluid_interface.png differ diff --git a/src/main/resources/assets/create/textures/block/pump.png b/src/main/resources/assets/create/textures/block/pump.png index 78ee40591..c76071121 100644 Binary files a/src/main/resources/assets/create/textures/block/pump.png and b/src/main/resources/assets/create/textures/block/pump.png differ diff --git a/src/main/resources/assets/create/textures/block/smart_pipe_1.png b/src/main/resources/assets/create/textures/block/smart_pipe_1.png index 35462ac59..339db4402 100644 Binary files a/src/main/resources/assets/create/textures/block/smart_pipe_1.png and b/src/main/resources/assets/create/textures/block/smart_pipe_1.png differ diff --git a/src/main/resources/assets/create/textures/block/smart_pipe_2.png b/src/main/resources/assets/create/textures/block/smart_pipe_2.png index c18a1e087..538a5fce4 100644 Binary files a/src/main/resources/assets/create/textures/block/smart_pipe_2.png and b/src/main/resources/assets/create/textures/block/smart_pipe_2.png differ diff --git a/src/main/resources/assets/create/textures/block/spout.png b/src/main/resources/assets/create/textures/block/spout.png index 9338f64b0..440c3cdfc 100644 Binary files a/src/main/resources/assets/create/textures/block/spout.png and b/src/main/resources/assets/create/textures/block/spout.png differ