mirror of
https://github.com/Creators-of-Create/Create.git
synced 2024-11-14 06:24:29 +01:00
Back on Patch
- Fixed Crafters voiding any inserted items after being moved on a contraption - Fixed Crafters crashing the game after being placed by a Schematicannon - A couple of two-ingredient recipes have been made shapeless - Improved piston/pulley contraption collision with blocks in the world - Fixed pistons/pulley contraptions merging into world blocks when disassembling shortly after loaded in - Added jei support for toolbox colouring recipes - Disabled item shadows on belts - Toolbox radial can now be navigated using hotbar shortcuts - Toolbox radial now steps back when right-clicked - Toolbox radial now immediately opens the multi-toolbox view when right-clicking the central "unequip" button - Fixed hidden slots visible in toolbox screen in some gui scales - Toolbox sorting in the radial menu is now deterministic - Fixed Toolboxes not always updating their inventory state to clients - Shulker boxes can no longer be placed inside toolboxes - Fixed potion fluids not displaying their full name in jei - Fixed JEI showing all potion recipes when looking up a specific one
This commit is contained in:
parent
64f8e98011
commit
f3109b28ab
@ -443,7 +443,7 @@ bf2b0310500213ff853c748c236eb5d01f61658e assets/create/blockstates/yellow_toolbo
|
||||
b7181bcd8182b2f17088e5aa881f374c9c65470c assets/create/blockstates/zinc_ore.json
|
||||
5ae77ed97ee05a7ed98999178677e576c1140007 assets/create/lang/en_ud.json
|
||||
5a7c0c3ea8d5fe01289b4eb2ea4f175bad825672 assets/create/lang/en_us.json
|
||||
474dbefbecbec7e8e5969d7226a8c8a0c7a75325 assets/create/lang/unfinished/de_de.json
|
||||
c7c1900b9a88af98d3af131dae5f1e2263c86635 assets/create/lang/unfinished/de_de.json
|
||||
800b427fc2e4f3b71df9c6295e500d77e8c1d486 assets/create/lang/unfinished/es_es.json
|
||||
5ad47cb60df592b461672e224dfb89167f8861e1 assets/create/lang/unfinished/fr_fr.json
|
||||
216065d27084497ffed7cacddfe86cab542643d9 assets/create/lang/unfinished/it_it.json
|
||||
@ -2510,13 +2510,13 @@ bf1d5843f93533f84bc4adec5b77da2114fa2025 data/create/loot_tables/blocks/birch_wi
|
||||
d3ea271bb5774c73d44ab2e73195c9d5a4ff9c92 data/create/loot_tables/blocks/black_nixie_tube.json
|
||||
28ae0ee8a0b1fb6becae6264de687fe17940708e data/create/loot_tables/blocks/black_sail.json
|
||||
cccc209d172cc7bac76f1b4ac79085ee90742ab2 data/create/loot_tables/blocks/black_seat.json
|
||||
c51ad9a71e41bb3ffa807b441ebd1946ea226a68 data/create/loot_tables/blocks/black_toolbox.json
|
||||
384e1f701f29851edd148d29e8160a492f6f90b4 data/create/loot_tables/blocks/black_toolbox.json
|
||||
f3573f47b8a914aa222633893e158f84fcd6f3d8 data/create/loot_tables/blocks/black_valve_handle.json
|
||||
a2313c9b7d114396fca3c86a740d23fce3873679 data/create/loot_tables/blocks/blaze_burner.json
|
||||
d3ea271bb5774c73d44ab2e73195c9d5a4ff9c92 data/create/loot_tables/blocks/blue_nixie_tube.json
|
||||
28ae0ee8a0b1fb6becae6264de687fe17940708e data/create/loot_tables/blocks/blue_sail.json
|
||||
3834f7ac2bbc42cead02d4973842adb9ad97e6bf data/create/loot_tables/blocks/blue_seat.json
|
||||
dc8e1f43464c5a9b28d4cbd37203682fc2a9621f data/create/loot_tables/blocks/blue_toolbox.json
|
||||
27c64f035b10ac05d829ff84f57cba859de54dc6 data/create/loot_tables/blocks/blue_toolbox.json
|
||||
fcddccd1bf45c2f4ad5f1520e209a4f04487274a data/create/loot_tables/blocks/blue_valve_handle.json
|
||||
1dbc446abe190b2832b2ce7d52c2f2d2bdd45949 data/create/loot_tables/blocks/brass_belt_funnel.json
|
||||
70d9d4def43d5b31fa7cdc5ca5002c71cf4a90b0 data/create/loot_tables/blocks/brass_block.json
|
||||
@ -2527,7 +2527,7 @@ b127cb6920e6d7d9c8b2402cb186402a9a8dd3fc data/create/loot_tables/blocks/brass_en
|
||||
d3ea271bb5774c73d44ab2e73195c9d5a4ff9c92 data/create/loot_tables/blocks/brown_nixie_tube.json
|
||||
28ae0ee8a0b1fb6becae6264de687fe17940708e data/create/loot_tables/blocks/brown_sail.json
|
||||
d415862a0abe20e8c5c2c8125bb672065330a9bc data/create/loot_tables/blocks/brown_seat.json
|
||||
be90d95c41b95c30243b26f462cb51b33400ba26 data/create/loot_tables/blocks/brown_toolbox.json
|
||||
f8c67f9e19b2852ce38ca46404025b2e556b9d51 data/create/loot_tables/blocks/brown_toolbox.json
|
||||
fedfe922f568c06adc2dfdd641b9abc90ba5af8a data/create/loot_tables/blocks/brown_valve_handle.json
|
||||
0be542fef3bc0e1a0d556883568a1400a8b97df1 data/create/loot_tables/blocks/cart_assembler.json
|
||||
ab820bbaaf67c6697dfbab33c05fb73b18c70bfb data/create/loot_tables/blocks/chiseled_dark_scoria.json
|
||||
@ -2560,7 +2560,7 @@ d370ee874b5b6b98e9a8c368218fe61f644d956d data/create/loot_tables/blocks/cuckoo_c
|
||||
d3ea271bb5774c73d44ab2e73195c9d5a4ff9c92 data/create/loot_tables/blocks/cyan_nixie_tube.json
|
||||
28ae0ee8a0b1fb6becae6264de687fe17940708e data/create/loot_tables/blocks/cyan_sail.json
|
||||
49a14b9e93abdf02a7aef9c0c4085ac89617fae4 data/create/loot_tables/blocks/cyan_seat.json
|
||||
6b4281aa990a190722d56c32bd03e21b508f5f49 data/create/loot_tables/blocks/cyan_toolbox.json
|
||||
cc182db248509db7d98fa44bbbbf62d95c75bec5 data/create/loot_tables/blocks/cyan_toolbox.json
|
||||
fe24fd296812fea3f838defa2ca6270523d9d48e data/create/loot_tables/blocks/cyan_valve_handle.json
|
||||
fd309e1d39dcbcb25c3361edecd8c9afa0f847d0 data/create/loot_tables/blocks/dark_oak_window.json
|
||||
58e6307ba0efa65a0715662a391fe7dc6fba0c68 data/create/loot_tables/blocks/dark_oak_window_pane.json
|
||||
@ -2668,12 +2668,12 @@ feca8a1f62e0e13fcb2252d5f782d74938b84431 data/create/loot_tables/blocks/granite_
|
||||
d3ea271bb5774c73d44ab2e73195c9d5a4ff9c92 data/create/loot_tables/blocks/gray_nixie_tube.json
|
||||
28ae0ee8a0b1fb6becae6264de687fe17940708e data/create/loot_tables/blocks/gray_sail.json
|
||||
d014357b3a467b23473c8223f32471a04a9ff94c data/create/loot_tables/blocks/gray_seat.json
|
||||
bfe072e94774289c9d011d68b1cea04cf740fc75 data/create/loot_tables/blocks/gray_toolbox.json
|
||||
6de2bd9b109e4d396ce20c346d315a06804a5c2c data/create/loot_tables/blocks/gray_toolbox.json
|
||||
35f916fd0f8465a070270615dbddd716ff68d5bb data/create/loot_tables/blocks/gray_valve_handle.json
|
||||
d3ea271bb5774c73d44ab2e73195c9d5a4ff9c92 data/create/loot_tables/blocks/green_nixie_tube.json
|
||||
28ae0ee8a0b1fb6becae6264de687fe17940708e data/create/loot_tables/blocks/green_sail.json
|
||||
a71599eecd3f1179e3d0367623460e798828aa6d data/create/loot_tables/blocks/green_seat.json
|
||||
7f0179039e85cb61f60aa1db49bb8c45ce58207d data/create/loot_tables/blocks/green_toolbox.json
|
||||
751b7548e1ce94770a4fd09fb148567936b6aef7 data/create/loot_tables/blocks/green_toolbox.json
|
||||
865ebead9601b29e6326dc9e1d4c1ca92f3b7a3b data/create/loot_tables/blocks/green_valve_handle.json
|
||||
9bdc47ea3ffc52f037f12f40f387e6b72a352c4e data/create/loot_tables/blocks/hand_crank.json
|
||||
c61b386376d19aaf89df3447a26b976a672efec5 data/create/loot_tables/blocks/haunted_bell.json
|
||||
@ -2697,17 +2697,17 @@ fa8a5922f7346a15a80b5c7e5dfc26d24ea98728 data/create/loot_tables/blocks/layered_
|
||||
d3ea271bb5774c73d44ab2e73195c9d5a4ff9c92 data/create/loot_tables/blocks/light_blue_nixie_tube.json
|
||||
28ae0ee8a0b1fb6becae6264de687fe17940708e data/create/loot_tables/blocks/light_blue_sail.json
|
||||
b403848d3a4b4ad7a048e70c21e200e40d0c67e3 data/create/loot_tables/blocks/light_blue_seat.json
|
||||
f99311437dd0ba8b13dee786bf10a50879386981 data/create/loot_tables/blocks/light_blue_toolbox.json
|
||||
8278917f506837483c1e22f6f098e11497150301 data/create/loot_tables/blocks/light_blue_toolbox.json
|
||||
32afe3fff74ccda4151567961fa6c0b8e3735358 data/create/loot_tables/blocks/light_blue_valve_handle.json
|
||||
d3ea271bb5774c73d44ab2e73195c9d5a4ff9c92 data/create/loot_tables/blocks/light_gray_nixie_tube.json
|
||||
28ae0ee8a0b1fb6becae6264de687fe17940708e data/create/loot_tables/blocks/light_gray_sail.json
|
||||
0cc2b20cb6e2dae6cf9d759c85926663f6066c99 data/create/loot_tables/blocks/light_gray_seat.json
|
||||
21bd11fba85a8dc66f6c97df3863ccc496602fde data/create/loot_tables/blocks/light_gray_toolbox.json
|
||||
3abcbeb2dcec021626923ed92ff78774965144f6 data/create/loot_tables/blocks/light_gray_toolbox.json
|
||||
8cc64a1dfb7ce7be2c063248d912c68ad2fe999c data/create/loot_tables/blocks/light_gray_valve_handle.json
|
||||
d3ea271bb5774c73d44ab2e73195c9d5a4ff9c92 data/create/loot_tables/blocks/lime_nixie_tube.json
|
||||
28ae0ee8a0b1fb6becae6264de687fe17940708e data/create/loot_tables/blocks/lime_sail.json
|
||||
f7893090c6ecb4862c90c408b7f9ce8316f8b608 data/create/loot_tables/blocks/lime_seat.json
|
||||
a9ea20a8dce75489356e0124c218dce0c25dd1fc data/create/loot_tables/blocks/lime_toolbox.json
|
||||
b3c6fa642315e930308e5d77363b61309b9f34a3 data/create/loot_tables/blocks/lime_toolbox.json
|
||||
cae6d16c8967164698efbce3b91018a8e79a81e9 data/create/loot_tables/blocks/lime_valve_handle.json
|
||||
7dfd638cc6f0d22bbc8fcbdb7212a3bfc8c85223 data/create/loot_tables/blocks/limesand.json
|
||||
d476eed7b5f0c7438d2e517fc60cd23f19234056 data/create/loot_tables/blocks/limestone.json
|
||||
@ -2725,7 +2725,7 @@ aa751d2e8a7889907c08c4bec6f6ca266230b6d7 data/create/loot_tables/blocks/linear_c
|
||||
d3ea271bb5774c73d44ab2e73195c9d5a4ff9c92 data/create/loot_tables/blocks/magenta_nixie_tube.json
|
||||
28ae0ee8a0b1fb6becae6264de687fe17940708e data/create/loot_tables/blocks/magenta_sail.json
|
||||
9e5e017cd3b4f544f487a5ca22ef610a4addc8ec data/create/loot_tables/blocks/magenta_seat.json
|
||||
66271e9a73981cfa07b3aa5abae845670f37afa4 data/create/loot_tables/blocks/magenta_toolbox.json
|
||||
5ef413eccbc3b5bb7408ec76938a5d22dc016907 data/create/loot_tables/blocks/magenta_toolbox.json
|
||||
517e983d7387ec0d86845d4cf3deaa6d68c71170 data/create/loot_tables/blocks/magenta_valve_handle.json
|
||||
e64c32da44b7e92dbef36fcb448c42b9bd9ae47c data/create/loot_tables/blocks/mechanical_arm.json
|
||||
90ddf7b5c3b61758a4ad12a1e6ef16fe6ebf7794 data/create/loot_tables/blocks/mechanical_bearing.json
|
||||
@ -2759,7 +2759,7 @@ d3ea271bb5774c73d44ab2e73195c9d5a4ff9c92 data/create/loot_tables/blocks/nixie_tu
|
||||
90cc4d5857f47c48e2b82f394de9567023c5c8ce data/create/loot_tables/blocks/oak_window_pane.json
|
||||
28ae0ee8a0b1fb6becae6264de687fe17940708e data/create/loot_tables/blocks/orange_sail.json
|
||||
2333aaea940816b6bc8454ba24e0c9f52af94ac0 data/create/loot_tables/blocks/orange_seat.json
|
||||
de05f444ab1776b77e4d9e50411feb26530f2473 data/create/loot_tables/blocks/orange_toolbox.json
|
||||
a7afe3ca51fb2d6986521c13a9180466791861fb data/create/loot_tables/blocks/orange_toolbox.json
|
||||
13338687962ef5b48dd9d142a2a862637d5c6953 data/create/loot_tables/blocks/orange_valve_handle.json
|
||||
267e9e24fac93e3496a80fcb6ed8e9d1c329d2d2 data/create/loot_tables/blocks/ornate_iron_window.json
|
||||
1fe77a16f4c86993b5fb30f1f48362787fd7cd0b data/create/loot_tables/blocks/ornate_iron_window_pane.json
|
||||
@ -2812,7 +2812,7 @@ d3e4ab984aef19ee21a1c5b868eb3fde96c05afd data/create/loot_tables/blocks/paved_we
|
||||
d3ea271bb5774c73d44ab2e73195c9d5a4ff9c92 data/create/loot_tables/blocks/pink_nixie_tube.json
|
||||
28ae0ee8a0b1fb6becae6264de687fe17940708e data/create/loot_tables/blocks/pink_sail.json
|
||||
6f32e1217986407e41358e9417de63602c78e810 data/create/loot_tables/blocks/pink_seat.json
|
||||
0185cbfd1e039a2c7c1b625561049706adf02931 data/create/loot_tables/blocks/pink_toolbox.json
|
||||
144ff16d50db20e2696cdfaacac88a4ca186b4cc data/create/loot_tables/blocks/pink_toolbox.json
|
||||
d85b09659f08a73513c57b1b2e5ec7fc4b6f340a data/create/loot_tables/blocks/pink_valve_handle.json
|
||||
1087b6c6d88dc7c71ed81e1d3e180fe065e6d098 data/create/loot_tables/blocks/piston_extension_pole.json
|
||||
05302657546d8d410e367e84d4d5e01f01523236 data/create/loot_tables/blocks/polished_dark_scoria.json
|
||||
@ -2848,13 +2848,13 @@ e8fb62c91226ac107dee45c5ebc54c8dd0aee224 data/create/loot_tables/blocks/pulse_re
|
||||
d3ea271bb5774c73d44ab2e73195c9d5a4ff9c92 data/create/loot_tables/blocks/purple_nixie_tube.json
|
||||
28ae0ee8a0b1fb6becae6264de687fe17940708e data/create/loot_tables/blocks/purple_sail.json
|
||||
d7f6caa568e6508177a644fb78dc18ce26c9b2c0 data/create/loot_tables/blocks/purple_seat.json
|
||||
06c233a9a1aeec64fbd41d3134555ebc535de965 data/create/loot_tables/blocks/purple_toolbox.json
|
||||
da0e4ad8e4f0eef1a1bcbbf8f2a982ee8ba8b2c7 data/create/loot_tables/blocks/purple_toolbox.json
|
||||
773e4dc856044dabfe9d2323cbda0460dfb626ee data/create/loot_tables/blocks/purple_valve_handle.json
|
||||
768420dab8785909891e52c4d77a182d99ba11d3 data/create/loot_tables/blocks/radial_chassis.json
|
||||
d3ea271bb5774c73d44ab2e73195c9d5a4ff9c92 data/create/loot_tables/blocks/red_nixie_tube.json
|
||||
28ae0ee8a0b1fb6becae6264de687fe17940708e data/create/loot_tables/blocks/red_sail.json
|
||||
71b0fa3b174efe94a2a735ab2426c376c0ef674a data/create/loot_tables/blocks/red_seat.json
|
||||
2f15d3f98121a4a1348bd3c44c59cbb52619b12e data/create/loot_tables/blocks/red_toolbox.json
|
||||
e98fa3371baa09502f414deef8a51813db6261f9 data/create/loot_tables/blocks/red_toolbox.json
|
||||
59ee0fd35978068fbce0882e0b207db7eeb202c0 data/create/loot_tables/blocks/red_valve_handle.json
|
||||
f5907a694206facc01f61f3428f72488486761c7 data/create/loot_tables/blocks/redstone_contact.json
|
||||
886a0c1386fb12104b736a15689030aaff771270 data/create/loot_tables/blocks/redstone_link.json
|
||||
@ -2912,14 +2912,14 @@ e3969f1c5966c4992b3280a06e1d6c5000c37df5 data/create/loot_tables/blocks/weighted
|
||||
d3ea271bb5774c73d44ab2e73195c9d5a4ff9c92 data/create/loot_tables/blocks/white_nixie_tube.json
|
||||
28ae0ee8a0b1fb6becae6264de687fe17940708e data/create/loot_tables/blocks/white_sail.json
|
||||
969eda31556feb5a68e350762848d17453275fee data/create/loot_tables/blocks/white_seat.json
|
||||
7c210ac011b1eda2255773278ae7daa59b1576aa data/create/loot_tables/blocks/white_toolbox.json
|
||||
4fa07ea92bc0adff6bfddc2d106ca2ee405e9347 data/create/loot_tables/blocks/white_toolbox.json
|
||||
79fe374f8e677088f928a3a49ff5eeed6128d165 data/create/loot_tables/blocks/white_valve_handle.json
|
||||
941ea78ea7c0f0061c3d3569ecea333ae6a16bf1 data/create/loot_tables/blocks/windmill_bearing.json
|
||||
728c8719e653825c030913df94ce845fdc6d79b7 data/create/loot_tables/blocks/wooden_bracket.json
|
||||
d3ea271bb5774c73d44ab2e73195c9d5a4ff9c92 data/create/loot_tables/blocks/yellow_nixie_tube.json
|
||||
28ae0ee8a0b1fb6becae6264de687fe17940708e data/create/loot_tables/blocks/yellow_sail.json
|
||||
37ead431a278928a09b260ae06a448e2c791a73e data/create/loot_tables/blocks/yellow_seat.json
|
||||
cbe175f9036f0de82d4f8a03aa0e932a37d25ea3 data/create/loot_tables/blocks/yellow_toolbox.json
|
||||
66df605afd40132f19f08b0a7f98c32596ba1ce7 data/create/loot_tables/blocks/yellow_toolbox.json
|
||||
899bb208908a2f9bec5e544ff47526f3e24db720 data/create/loot_tables/blocks/yellow_valve_handle.json
|
||||
94661e726b3d19271550359ae898a5590939512e data/create/loot_tables/blocks/zinc_block.json
|
||||
37248ca92d474e440b91c27e3c8e78e568328100 data/create/loot_tables/blocks/zinc_ore.json
|
||||
@ -3008,16 +3008,16 @@ cc56d21a25286a9024e506dde9fa161230eaf46d data/create/recipes/crafting/kinetics/a
|
||||
cf1f3a6306d47025cebe153cf05949ef69ccbe5a data/create/recipes/crafting/kinetics/attribute_filter.json
|
||||
059d12526529b2896ed583555373afa31839a0de data/create/recipes/crafting/kinetics/basin.json
|
||||
dcf98e667d321fb4bd9fa6dfec7927a84cdbd5d6 data/create/recipes/crafting/kinetics/belt_connector.json
|
||||
1123903a11b13448b61cf8f8a5dc2e8013d39ac0 data/create/recipes/crafting/kinetics/black_seat.json
|
||||
a6243a671bf852a6f92e1927e234ecf23b1c903d data/create/recipes/crafting/kinetics/black_seat_from_other_seat.json
|
||||
c237d1cd362454b25d3756e742c4a2237b5ec2db data/create/recipes/crafting/kinetics/black_valve_handle_from_other_valve_handle.json
|
||||
0b747fc291b86fa14f86569160d56a48a15c69d3 data/create/recipes/crafting/kinetics/blue_seat.json
|
||||
30240bae036699b8c9404893983cb7b70332159e data/create/recipes/crafting/kinetics/blue_seat_from_other_seat.json
|
||||
249c1f67d8b56262d286a027d50023e5d672b1c9 data/create/recipes/crafting/kinetics/blue_valve_handle_from_other_valve_handle.json
|
||||
2e40aee7ff7b5518a56ac9b042b925caecac7528 data/create/recipes/crafting/kinetics/black_seat.json
|
||||
f1f831df77345ade0b62837bb1fb45ad1c763405 data/create/recipes/crafting/kinetics/black_seat_from_other_seat.json
|
||||
d02a23b12abe105660ae613e69979cc7e86bfbca data/create/recipes/crafting/kinetics/black_valve_handle_from_other_valve_handle.json
|
||||
19cf1b77431fc50bee7c7adae51c5025b5f0b6bc data/create/recipes/crafting/kinetics/blue_seat.json
|
||||
6e03e06a20832116a1daa1a2ebe781b9cb44cb0d data/create/recipes/crafting/kinetics/blue_seat_from_other_seat.json
|
||||
f7ed975f13585273832f12d9f28808e0215308af data/create/recipes/crafting/kinetics/blue_valve_handle_from_other_valve_handle.json
|
||||
23fe800a45e81a08eb0aa732c5cb52e4e8ebfe86 data/create/recipes/crafting/kinetics/brass_hand.json
|
||||
c50077a130bc43cd3659faa02ce95789399478b2 data/create/recipes/crafting/kinetics/brown_seat.json
|
||||
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
|
||||
23b98f9772b1567172607cb0aecc65e2fdd933de data/create/recipes/crafting/kinetics/brown_seat.json
|
||||
ab3b69d035dae7fe696f5dd983d7018649f466a2 data/create/recipes/crafting/kinetics/brown_seat_from_other_seat.json
|
||||
9eab21724f64455376c12b14f42a09a3af547201 data/create/recipes/crafting/kinetics/brown_valve_handle_from_other_valve_handle.json
|
||||
860796dce8756c4cd234f18bbe52108f3b2254c2 data/create/recipes/crafting/kinetics/cart_assembler.json
|
||||
abf8a28b4b8ae4ba15beed938736ef3a5a7b27ff data/create/recipes/crafting/kinetics/chute.json
|
||||
a80e3eabbeba2931d0d58dd9492018a0d78da8b5 data/create/recipes/crafting/kinetics/clockwork_bearing.json
|
||||
@ -3028,11 +3028,11 @@ e46bcc6778ff5118252fe6371ef817ae1302253a data/create/recipes/crafting/kinetics/c
|
||||
886caa21481e62d44d70fd103f8d29f9bac64d60 data/create/recipes/crafting/kinetics/copper_valve_handle_from_others.json
|
||||
59db5170cec390fe6c20a27d6154deebe044580c data/create/recipes/crafting/kinetics/crafter_slot_cover.json
|
||||
cc2ab4b619aa55c03db18b67a62e12b6089e7019 data/create/recipes/crafting/kinetics/cuckoo_clock.json
|
||||
f11892864a26c4ba79eb46d890a1a4bd96a1ad93 data/create/recipes/crafting/kinetics/cyan_seat.json
|
||||
8c35fd379244f72f73e1be6115ed8f5f5484f599 data/create/recipes/crafting/kinetics/cyan_seat_from_other_seat.json
|
||||
dc62d932f6a3723e050cb043fea233efd685f775 data/create/recipes/crafting/kinetics/cyan_valve_handle_from_other_valve_handle.json
|
||||
67583ae5a8c9f71e3856a1787c6650c34070428e data/create/recipes/crafting/kinetics/cyan_seat.json
|
||||
6c4d1e8f5b903cc804330a799ad20df59c427d05 data/create/recipes/crafting/kinetics/cyan_seat_from_other_seat.json
|
||||
40018bc6f631c443279c410dc7c5765060f7446a data/create/recipes/crafting/kinetics/cyan_valve_handle_from_other_valve_handle.json
|
||||
ad1c3ce1e98b8483512bdd754f2e5930c7b3ae85 data/create/recipes/crafting/kinetics/deployer.json
|
||||
be86df1c4d7af14bc5dcfe044d07c03b6c6d2a75 data/create/recipes/crafting/kinetics/depot.json
|
||||
2fe66b3d37ff5b0f7f30d5baa4efd713dd8b502a data/create/recipes/crafting/kinetics/depot.json
|
||||
9c5d30f25a130d591b924c50e5c83e3b787c2758 data/create/recipes/crafting/kinetics/empty_blaze_burner.json
|
||||
73cd487885be8d5190f24319b4a927b8e34c21cd data/create/recipes/crafting/kinetics/encased_chain_drive.json
|
||||
b07496e4ba5bc56a2c5a395b612c68ba21328867 data/create/recipes/crafting/kinetics/encased_fan.json
|
||||
@ -3047,30 +3047,30 @@ f4ae37f736d06ccda5fbba7831a7a174ec916a05 data/create/recipes/crafting/kinetics/f
|
||||
b5da8c58f6b8aba525ae8a12ad906db37b78a566 data/create/recipes/crafting/kinetics/gearboxfrom_conversion.json
|
||||
4d4124b4f1df38d892cb19da19c6464522d3e37d data/create/recipes/crafting/kinetics/gearshift.json
|
||||
5b07af1b09125f874500c3fb140efda90061a19e data/create/recipes/crafting/kinetics/goggles.json
|
||||
beb7715310352988d5a58d1b39c62f02544795f8 data/create/recipes/crafting/kinetics/gray_seat.json
|
||||
14e8927183f91c09a2d96fd68d1a722d192b29e8 data/create/recipes/crafting/kinetics/gray_seat_from_other_seat.json
|
||||
b7fa20d10c0e0e7270b1c0d6f3881b8e25b39bea data/create/recipes/crafting/kinetics/gray_valve_handle_from_other_valve_handle.json
|
||||
9899501f18e7f3452d4ab4bf658079ab414aa176 data/create/recipes/crafting/kinetics/green_seat.json
|
||||
6f65a84e00f25d956a6ae834678ff781569b243a data/create/recipes/crafting/kinetics/green_seat_from_other_seat.json
|
||||
63edaccace961a65aa7bd406d36894c7ca4816b8 data/create/recipes/crafting/kinetics/green_valve_handle_from_other_valve_handle.json
|
||||
4e6db62bd4e72a5b19db4ed634c273cd7206ec61 data/create/recipes/crafting/kinetics/gray_seat.json
|
||||
89ff5b0b6e78221b78d1daff0401b4a32eccb213 data/create/recipes/crafting/kinetics/gray_seat_from_other_seat.json
|
||||
8fc378f0641dee74ca17e4fe94f64930f48a5072 data/create/recipes/crafting/kinetics/gray_valve_handle_from_other_valve_handle.json
|
||||
01fbdedbb05c66a207784cae902484245c1d6f62 data/create/recipes/crafting/kinetics/green_seat.json
|
||||
9a11f2a6d34cb0031392c32bffc70c5f5e0bfeed data/create/recipes/crafting/kinetics/green_seat_from_other_seat.json
|
||||
574e32cd8c194576a1c060cfcd7476bcc3f319df data/create/recipes/crafting/kinetics/green_valve_handle_from_other_valve_handle.json
|
||||
9f08bdaeec88e04a43c2dc103869f9648deee079 data/create/recipes/crafting/kinetics/hand_crank.json
|
||||
d10639b0c3999481531fe0a9383a1bb4af60225e data/create/recipes/crafting/kinetics/hose_pulley.json
|
||||
f4fbb11ef55f3431bd387f3f6f258513bfbc8011 data/create/recipes/crafting/kinetics/item_drain.json
|
||||
237541c1c318b8426734c1c43be31fbd01413d39 data/create/recipes/crafting/kinetics/large_cogwheel.json
|
||||
a33e3301fc6d3a446e61a1c4b8a93aff079baeba data/create/recipes/crafting/kinetics/light_blue_seat.json
|
||||
958bb5d3aeb8d8e5dbf5d97cf5fd9ff5151575dc data/create/recipes/crafting/kinetics/light_blue_seat_from_other_seat.json
|
||||
df1942d27ce3d0548872fe39d3cac24af3122b61 data/create/recipes/crafting/kinetics/light_blue_valve_handle_from_other_valve_handle.json
|
||||
9531407075ad027e01063aeabc40ae3e4c100df3 data/create/recipes/crafting/kinetics/light_gray_seat.json
|
||||
fb66f55b31a60f2168d3b9e80a56ecadebb1db75 data/create/recipes/crafting/kinetics/light_gray_seat_from_other_seat.json
|
||||
e78fec9814d6d0c5c4669c17a8f4d86979972624 data/create/recipes/crafting/kinetics/light_gray_valve_handle_from_other_valve_handle.json
|
||||
3e18f619a50c1e5fabd6d3acc6d029e4cfec661f data/create/recipes/crafting/kinetics/lime_seat.json
|
||||
d214afbd44e580f5fd1ebb4f16f07ffe34d87cba data/create/recipes/crafting/kinetics/lime_seat_from_other_seat.json
|
||||
505a6d895319b1c73509045ecf5d9dc4e8554cde data/create/recipes/crafting/kinetics/lime_valve_handle_from_other_valve_handle.json
|
||||
0397b107ab380cd23390c96f298971a70e9bceef data/create/recipes/crafting/kinetics/light_blue_seat.json
|
||||
aa06f0594e1b2d31aa41bace309ed95a16529498 data/create/recipes/crafting/kinetics/light_blue_seat_from_other_seat.json
|
||||
bb8759b51aef768fa841962b9ad49676a6096a1c data/create/recipes/crafting/kinetics/light_blue_valve_handle_from_other_valve_handle.json
|
||||
31b9cb3b37118ff339acbba4fcb13bd18983ce24 data/create/recipes/crafting/kinetics/light_gray_seat.json
|
||||
7bdf2f1b8829fc2fc2db4b325867bb0c1e7daf47 data/create/recipes/crafting/kinetics/light_gray_seat_from_other_seat.json
|
||||
b83f189682a8d5426895687c84a9ed90b42f7220 data/create/recipes/crafting/kinetics/light_gray_valve_handle_from_other_valve_handle.json
|
||||
8eb806f51491ecd30bf22ac6b28d6f92c4c150a4 data/create/recipes/crafting/kinetics/lime_seat.json
|
||||
70f75291e20b72140f7893f67c062e5e6800ce51 data/create/recipes/crafting/kinetics/lime_seat_from_other_seat.json
|
||||
49a2bedd4ea900eef269006b27635e191f4b364b data/create/recipes/crafting/kinetics/lime_valve_handle_from_other_valve_handle.json
|
||||
61332f88f51bbd465ee0da879e706b994710d949 data/create/recipes/crafting/kinetics/linear_chassis.json
|
||||
9bf76daab65d048a135d70db522989ebc77ccaf1 data/create/recipes/crafting/kinetics/linear_chassisfrom_conversion.json
|
||||
d7d96071874a87edf7bbdcf7a462f95a130d2991 data/create/recipes/crafting/kinetics/magenta_seat.json
|
||||
5836881feef8fa8b18e4cceb9c3a9a2748b8cf3a data/create/recipes/crafting/kinetics/magenta_seat_from_other_seat.json
|
||||
2ea43d6527dcb734578067ff442ec20395b0093b data/create/recipes/crafting/kinetics/magenta_valve_handle_from_other_valve_handle.json
|
||||
fd0fced8aa6ae01ffb1dc0f55ec5d8522d864a02 data/create/recipes/crafting/kinetics/magenta_seat.json
|
||||
ba2fb8e07f03b376d3629262b2eaeda988e76af2 data/create/recipes/crafting/kinetics/magenta_seat_from_other_seat.json
|
||||
631039797c71547fb4fe33ab5cb688e222f123ae data/create/recipes/crafting/kinetics/magenta_valve_handle_from_other_valve_handle.json
|
||||
659cd6acdd15511c4b0a396740118b99b76a619d data/create/recipes/crafting/kinetics/mechanical_arm.json
|
||||
946389078db31de69a7dc4fec5feebddf48dcfc3 data/create/recipes/crafting/kinetics/mechanical_bearing.json
|
||||
a5c7aad0d86cbb66b8688d295e62547da4a2ce0f data/create/recipes/crafting/kinetics/mechanical_crafter.json
|
||||
@ -3080,7 +3080,7 @@ a5c7aad0d86cbb66b8688d295e62547da4a2ce0f data/create/recipes/crafting/kinetics/m
|
||||
ac9003ad3320fe2009c1793a3c6e86bdf20ca832 data/create/recipes/crafting/kinetics/mechanical_piston.json
|
||||
8a2f9068d6fab81f46699f897e619461ca89e38f data/create/recipes/crafting/kinetics/mechanical_plough.json
|
||||
ce8e269907aae5549cea04141bd231f4a20e6453 data/create/recipes/crafting/kinetics/mechanical_press.json
|
||||
5a685078d3c9d7dbe68080b7b6f2a44fc41582c5 data/create/recipes/crafting/kinetics/mechanical_pump.json
|
||||
4307cc2c988ac19602f2f86afa2146c7e7fef026 data/create/recipes/crafting/kinetics/mechanical_pump.json
|
||||
ce28bcb47a379976d4a1bdfcfd1cdd0bae0bcdae data/create/recipes/crafting/kinetics/mechanical_saw.json
|
||||
353146e9501096b4cd9632ad5500b0a2406c6f5d data/create/recipes/crafting/kinetics/metal_bracket.json
|
||||
58d9046e61eae40958181388186a35dc07cc9a59 data/create/recipes/crafting/kinetics/millstone.json
|
||||
@ -3088,23 +3088,23 @@ ce28bcb47a379976d4a1bdfcfd1cdd0bae0bcdae data/create/recipes/crafting/kinetics/m
|
||||
be4c7fdb0ba1e9ee6d3dcf200dc2718ad83ec8fb data/create/recipes/crafting/kinetics/mysterious_cuckoo_clock.json
|
||||
99935fbbb83fe102454096a2dcafe09d572d9ad3 data/create/recipes/crafting/kinetics/nixie_tube.json
|
||||
6b1b626394d7269a6861a836992ccdb344b6e7dd data/create/recipes/crafting/kinetics/nozzle.json
|
||||
9c41cd91a0716d591ed6d1b5128ec731b418850f data/create/recipes/crafting/kinetics/orange_seat.json
|
||||
a8da214f0a521be1204b669f118348a142bc9a3d data/create/recipes/crafting/kinetics/orange_seat_from_other_seat.json
|
||||
2fa6b1dd7fe3c8d5bb60345d6b7c5213a54d7e31 data/create/recipes/crafting/kinetics/orange_valve_handle_from_other_valve_handle.json
|
||||
af871a02d363a619fff8e9dde753aa417b265a80 data/create/recipes/crafting/kinetics/pink_seat.json
|
||||
840dc5aac716e3d1b79883e8db4bf56f2dc427f9 data/create/recipes/crafting/kinetics/pink_seat_from_other_seat.json
|
||||
7e73bcde2b599f1ae5a241dd707c8ab6ce8c5a6e data/create/recipes/crafting/kinetics/pink_valve_handle_from_other_valve_handle.json
|
||||
4088c9f8d9d74495860c2d0102277f5af1c22893 data/create/recipes/crafting/kinetics/orange_seat.json
|
||||
7d87c973228c6a6705ed106ea7c195866f9f4f63 data/create/recipes/crafting/kinetics/orange_seat_from_other_seat.json
|
||||
1f404bfa8381f4734b66a6e03dd4f4e8ad3fa7d2 data/create/recipes/crafting/kinetics/orange_valve_handle_from_other_valve_handle.json
|
||||
d41f850475814e099f21b7232596c1ba12d30798 data/create/recipes/crafting/kinetics/pink_seat.json
|
||||
e6997dae188b5b07b5ca33c0843628dc73df1cc1 data/create/recipes/crafting/kinetics/pink_seat_from_other_seat.json
|
||||
7b57fdc904ad0cf8cda25fca8f7008d0268a3d64 data/create/recipes/crafting/kinetics/pink_valve_handle_from_other_valve_handle.json
|
||||
5399c3496a90bed9428c48fdd334ad4f763cbf9a data/create/recipes/crafting/kinetics/piston_extension_pole.json
|
||||
a8e996bed77d3d20725f9d592c250392b3adb106 data/create/recipes/crafting/kinetics/portable_fluid_interface.json
|
||||
7ed5699349faf2981228769c873057105a5ea3ea data/create/recipes/crafting/kinetics/portable_storage_interface.json
|
||||
16199a6729005a279854cb1838401f6e73bdebae data/create/recipes/crafting/kinetics/propeller.json
|
||||
76ba751b65d312d1b34229d76fff2111b593091a data/create/recipes/crafting/kinetics/purple_seat.json
|
||||
e6c462d64e1de9c7fca95f9c9a25b8d1575979da data/create/recipes/crafting/kinetics/purple_seat_from_other_seat.json
|
||||
9332957af2e72dee5fc78abcf1995773e08f7561 data/create/recipes/crafting/kinetics/purple_valve_handle_from_other_valve_handle.json
|
||||
b90fdb1047afc234b126a071fb7ddad003203db2 data/create/recipes/crafting/kinetics/purple_seat.json
|
||||
8be4a393acce649d57178a62f81705abcd919a56 data/create/recipes/crafting/kinetics/purple_seat_from_other_seat.json
|
||||
5e630362d97da5ebc8148f890115a1c5265e8a46 data/create/recipes/crafting/kinetics/purple_valve_handle_from_other_valve_handle.json
|
||||
af84b939ced1c0254a27469f857f571afbadc4f6 data/create/recipes/crafting/kinetics/radial_chassis.json
|
||||
1059f08b016e1c222f13bd9976d0fcd8fc982619 data/create/recipes/crafting/kinetics/red_seat.json
|
||||
0827e86e4b5f9d7023ccc19922bcbbaefd5b42d8 data/create/recipes/crafting/kinetics/red_seat_from_other_seat.json
|
||||
5a10019d23726940152e26af3239d55d16bc7880 data/create/recipes/crafting/kinetics/red_valve_handle_from_other_valve_handle.json
|
||||
419a93ed1f41a20936a7d66f7271da0a0be4d593 data/create/recipes/crafting/kinetics/red_seat.json
|
||||
c0c248fa1b8d8d8cb63d3c299e8b35c72b0aab03 data/create/recipes/crafting/kinetics/red_seat_from_other_seat.json
|
||||
73c8d12da8a5d9ec8a0d0d5c413bc2f66e463e81 data/create/recipes/crafting/kinetics/red_valve_handle_from_other_valve_handle.json
|
||||
af525e135eb927b64462120d201ecae7a7ec61ed data/create/recipes/crafting/kinetics/rope_pulley.json
|
||||
1b918eb77b3e0fb2234c4c2c0d52e730ae7f3ffa data/create/recipes/crafting/kinetics/rotation_speed_controller.json
|
||||
d0d7fb94621f6f02fa3137666f20e677022d9d5b data/create/recipes/crafting/kinetics/sail_frame.json
|
||||
@ -3126,15 +3126,15 @@ af5854ee2fa3be195ad9abcdeebe6ed7306b651c data/create/recipes/crafting/kinetics/s
|
||||
06b5b371ae9dd81df8fd3dee6d3559b1ed0db35c data/create/recipes/crafting/kinetics/weighted_ejector.json
|
||||
f508d510576c93712e7f5265345a32e8818bbf0d data/create/recipes/crafting/kinetics/whisk.json
|
||||
d80a741d2f0d4f742217b43d7e4d37f003ec9f9d data/create/recipes/crafting/kinetics/white_sail.json
|
||||
f4d88aa2edea548d29cf2678a111d8bb5db7720a data/create/recipes/crafting/kinetics/white_seat.json
|
||||
7e0d276cd56f04f35d02c25810bffdf8fc297fcd data/create/recipes/crafting/kinetics/white_seat_from_other_seat.json
|
||||
4d3890621caa0bdbb752a395c1f5761dbbc1121e data/create/recipes/crafting/kinetics/white_valve_handle_from_other_valve_handle.json
|
||||
61894b1302aef9413ca263eb89c3d9f4cfb92239 data/create/recipes/crafting/kinetics/white_seat.json
|
||||
ceb3d574336ce5ff151db080fe517ba43ff77a49 data/create/recipes/crafting/kinetics/white_seat_from_other_seat.json
|
||||
54a182603347c2d8898f9990f1536128611af749 data/create/recipes/crafting/kinetics/white_valve_handle_from_other_valve_handle.json
|
||||
8508255518d3718a0d8c2f536f69ffe9ed48a855 data/create/recipes/crafting/kinetics/windmill_bearing.json
|
||||
d11eee4005372b1d0fad283b28c8016d823b5e37 data/create/recipes/crafting/kinetics/wooden_bracket.json
|
||||
3ec8bb5660656f1c676035d8ba5460462c1d1865 data/create/recipes/crafting/kinetics/wrench.json
|
||||
5579e58473474c4e59efd1ee39ddf0140d66b618 data/create/recipes/crafting/kinetics/yellow_seat.json
|
||||
f055d233ac7ee9eac840a658afa01bedd793ff38 data/create/recipes/crafting/kinetics/yellow_seat_from_other_seat.json
|
||||
19c5c8bddeec51c9b47183c728e9ec4313c54410 data/create/recipes/crafting/kinetics/yellow_valve_handle_from_other_valve_handle.json
|
||||
8b7ca850a23126fd7d65084cbc6506145efee7af data/create/recipes/crafting/kinetics/yellow_seat.json
|
||||
c574b993d49874bbed5d064205c436271dfa27b8 data/create/recipes/crafting/kinetics/yellow_seat_from_other_seat.json
|
||||
19333b83d10e307d715b5667b8623915880e1861 data/create/recipes/crafting/kinetics/yellow_valve_handle_from_other_valve_handle.json
|
||||
3f6f3a547dc06c9462da880360f29b49ac3f5e2a data/create/recipes/crafting/logistics/adjustable_crate.json
|
||||
c465151b64381e2222203bf069b717435fdc2b26 data/create/recipes/crafting/logistics/adjustable_pulse_repeater.json
|
||||
34bcdffae0b104829161c86b7d161068f890daa2 data/create/recipes/crafting/logistics/adjustable_repeater.json
|
||||
|
@ -1,5 +1,5 @@
|
||||
{
|
||||
"_": "Missing Localizations: 1173",
|
||||
"_": "Missing Localizations: 1010",
|
||||
|
||||
"_": "->------------------------] Game Elements [------------------------<-",
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
"block.create.andesite_cobblestone_stairs": "Andesitbruchsteintreppe",
|
||||
"block.create.andesite_cobblestone_wall": "Andesitbruchsteinmauer",
|
||||
"block.create.andesite_encased_shaft": "Andesitummantelte Welle",
|
||||
"block.create.andesite_funnel": "Andesit Trichter",
|
||||
"block.create.andesite_funnel": "Andesittrichter",
|
||||
"block.create.andesite_pillar": "Andesitsäule",
|
||||
"block.create.andesite_tunnel": "Andesittunnel",
|
||||
"block.create.basin": "Behälter",
|
||||
@ -63,7 +63,7 @@
|
||||
"block.create.clutch": "Kupplung",
|
||||
"block.create.cogwheel": "Zahnrad",
|
||||
"block.create.content_observer": "Inhaltsbeobachter",
|
||||
"block.create.controller_rail": "Steuerungsschiene",
|
||||
"block.create.controller_rail": "Steureungsschiene",
|
||||
"block.create.copper_backtank": "UNLOCALIZED: Copper Backtank",
|
||||
"block.create.copper_block": "Kupfer Block",
|
||||
"block.create.copper_casing": "Kupferrahmen",
|
||||
@ -556,7 +556,7 @@
|
||||
"advancement.create.overstressed": "Überfordert",
|
||||
"advancement.create.overstressed.desc": "Erfahre die Limits der Belastung aus erster Hand.",
|
||||
"advancement.create.belt": "Befördere es alles",
|
||||
"advancement.create.belt.desc": "Verbinde zwei Wllen mit einem Mechanischem Riemen",
|
||||
"advancement.create.belt.desc": "Verbinde zwei Wellen mit einem Mechanischem Riemen",
|
||||
"advancement.create.tunnel": "Geht in Deckung!",
|
||||
"advancement.create.tunnel.desc": "Verschönere deinen Mechanischem Riemen mit einem Tunnel.",
|
||||
"advancement.create.splitter_tunnel": "Divide & Conquer",
|
||||
@ -565,96 +565,96 @@
|
||||
"advancement.create.chute.desc": "Platziere eine Rinne, das vertikale Gegenstück des Riemens.",
|
||||
"advancement.create.upward_chute": "Luftentführung",
|
||||
"advancement.create.upward_chute.desc": "Sieh einen geworfenen Gegenstand in eine propellerbetriebene Rinne fliegen.",
|
||||
"advancement.create.belt_funnel": "UNLOCALIZED: Funnels' Flappy Danglers",
|
||||
"advancement.create.belt_funnel.desc": "UNLOCALIZED: Place a sideways funnel on top of a belt or depot to create a special type.",
|
||||
"advancement.create.belt_funnel_kiss": "UNLOCALIZED: The Parrots and the Flaps",
|
||||
"advancement.create.belt_funnel_kiss.desc": "UNLOCALIZED: Make two belt mounted funnels kiss.",
|
||||
"advancement.create.belt_funnel": "Klappernde Klappen",
|
||||
"advancement.create.belt_funnel.desc": "Platziere einen seitwärts schauenden Riementrichter auf einem Förderband oder einem Depot um einen speziellen Typ zu erstellen.",
|
||||
"advancement.create.belt_funnel_kiss": "Die Hühnchen und die Klappen",
|
||||
"advancement.create.belt_funnel_kiss.desc": "Lasse zwei an Mechanischen Riemen befestigte Riementrichter sich küssen.",
|
||||
"advancement.create.fan": "Mechanischer Luftbändiger",
|
||||
"advancement.create.fan.desc": "Reite den Luftstrom eines eingeschlossenen Propellers.",
|
||||
"advancement.create.fan_lava": "UNLOCALIZED: Geothermal Space Heater",
|
||||
"advancement.create.fan_lava.desc": "UNLOCALIZED: Get caught in a stream of air that smelts things.",
|
||||
"advancement.create.fan_water": "UNLOCALIZED: Wacky Washing",
|
||||
"advancement.create.fan_water.desc": "UNLOCALIZED: Get caught in a stream of air that washes things.",
|
||||
"advancement.create.fan_smoke": "UNLOCALIZED: Mechanical Bellows",
|
||||
"advancement.create.fan_smoke.desc": "UNLOCALIZED: Get caught in a stream of air that smokes items.",
|
||||
"advancement.create.wrench": "UNLOCALIZED: Configure Conveniently",
|
||||
"advancement.create.wrench.desc": "UNLOCALIZED: Create a Wrench to aid you in building your contraptions.",
|
||||
"advancement.create.goggles": "UNLOCALIZED: Stress-O-Vision",
|
||||
"advancement.create.goggles.desc": "UNLOCALIZED: Create some Engineer's Goggles to aid you in getting more kinetic information from components.",
|
||||
"advancement.create.speedometer": "UNLOCALIZED: But How Fast Exactly?",
|
||||
"advancement.create.speedometer.desc": "UNLOCALIZED: Place and power a Speedometer. Look at it through your goggles to read its exact value.",
|
||||
"advancement.create.stressometer": "UNLOCALIZED: But How Stressed Exactly?",
|
||||
"advancement.create.stressometer.desc": "UNLOCALIZED: Place and power a Stressometer. Look at it through your goggles to read its exact value.",
|
||||
"advancement.create.aesthetics": "UNLOCALIZED: Boom, Aesthetics!",
|
||||
"advancement.create.aesthetics.desc": "UNLOCALIZED: Place brackets on a shaft, pipe and cogwheel.",
|
||||
"advancement.create.reinforced": "UNLOCALIZED: Boom, Reinforced!",
|
||||
"advancement.create.reinforced.desc": "UNLOCALIZED: Use fitting casing blocks on a shaft, pipe and mechanical belt.",
|
||||
"advancement.create.water_wheel": "UNLOCALIZED: Harnessing Hydraulics",
|
||||
"advancement.create.water_wheel.desc": "UNLOCALIZED: Place a Water Wheel and try getting it to spin!",
|
||||
"advancement.create.chocolate_wheel": "UNLOCALIZED: Tasteful power",
|
||||
"advancement.create.chocolate_wheel.desc": "UNLOCALIZED: Run a Water Wheel with molten Chocolate.",
|
||||
"advancement.create.lava_wheel": "UNLOCALIZED: Magma Wheel",
|
||||
"advancement.create.lava_wheel.desc": "UNLOCALIZED: This shouldn't have worked.",
|
||||
"advancement.create.cuckoo": "UNLOCALIZED: Is it time?",
|
||||
"advancement.create.cuckoo.desc": "UNLOCALIZED: Witness a cuckhoo clock announce bedtime.",
|
||||
"advancement.create.millstone": "UNLOCALIZED: Pocket Crusher",
|
||||
"advancement.create.millstone.desc": "UNLOCALIZED: Place and power a Millstone.",
|
||||
"advancement.create.windmill": "UNLOCALIZED: A mild Breeze",
|
||||
"advancement.create.windmill.desc": "UNLOCALIZED: Assemble a windmill.",
|
||||
"advancement.create.maxed_windmill": "UNLOCALIZED: A strong breeze",
|
||||
"advancement.create.maxed_windmill.desc": "UNLOCALIZED: Assemble a windmill of maximum strength.",
|
||||
"advancement.create.andesite_casing": "UNLOCALIZED: The Andesite Age",
|
||||
"advancement.create.andesite_casing.desc": "UNLOCALIZED: Use some Andesite Alloy and Wood to create a basic Casing.",
|
||||
"advancement.create.mechanical_drill": "UNLOCALIZED: Stationary Breakers",
|
||||
"advancement.create.mechanical_drill.desc": "UNLOCALIZED: Place and power a Mechanical Drill.",
|
||||
"advancement.create.press": "UNLOCALIZED: Press Goes 'Bonk!'",
|
||||
"advancement.create.press.desc": "UNLOCALIZED: Power a Mechanical Press and use it to create some Sheets.",
|
||||
"advancement.create.polished_rose_quartz": "UNLOCALIZED: Pink Diamonds",
|
||||
"advancement.create.polished_rose_quartz.desc": "UNLOCALIZED: Use a piece of Sand Paper to polish Rose Quartz until it becomes transparent.",
|
||||
"advancement.create.electron_tube": "UNLOCALIZED: Beep Boop",
|
||||
"advancement.create.electron_tube.desc": "UNLOCALIZED: Make some Electron Tubes, useful in crafting less primitive machinery.",
|
||||
"advancement.create.mechanical_saw": "UNLOCALIZED: Stationary Chopping",
|
||||
"advancement.create.mechanical_saw.desc": "UNLOCALIZED: Place and power a Mechanical Saw.",
|
||||
"advancement.create.basin": "UNLOCALIZED: Basin Operation",
|
||||
"advancement.create.basin.desc": "UNLOCALIZED: Place a Basin and try throwing items into it.",
|
||||
"advancement.create.mixer": "UNLOCALIZED: Mixin' It Up",
|
||||
"advancement.create.mixer.desc": "UNLOCALIZED: Place a Mechanical Mixer above the Basin, power it, and start mixing some ingredients.",
|
||||
"advancement.create.blaze_burner": "UNLOCALIZED: A living Fireplace",
|
||||
"advancement.create.blaze_burner.desc": "UNLOCALIZED: Obtain a Blaze Burner.",
|
||||
"advancement.create.compact": "UNLOCALIZED: Automated Compacting",
|
||||
"advancement.create.compact.desc": "UNLOCALIZED: Use a Press and a Basin to compact some items.",
|
||||
"advancement.create.brass": "UNLOCALIZED: Actual Alloys",
|
||||
"advancement.create.brass.desc": "UNLOCALIZED: Use Crushed Copper and Crushed Zinc to create some Brass.",
|
||||
"advancement.create.brass_casing": "UNLOCALIZED: The Brass Age",
|
||||
"advancement.create.brass_casing.desc": "UNLOCALIZED: Use newly obtained Brass and some Wood to create a more advanced Casing.",
|
||||
"advancement.create.copper_casing": "UNLOCALIZED: The Copper Age",
|
||||
"advancement.create.copper_casing.desc": "UNLOCALIZED: Use some Copper Sheets and Wood to create some Copper Casings.",
|
||||
"advancement.create.spout": "UNLOCALIZED: Sploosh",
|
||||
"advancement.create.spout.desc": "UNLOCALIZED: Watch a fluid item being filled using a spout.",
|
||||
"advancement.create.spout_potion": "UNLOCALIZED: Global Brewery",
|
||||
"advancement.create.spout_potion.desc": "UNLOCALIZED: Watch a spout fill a bottle with potion fluid.",
|
||||
"advancement.create.chocolate": "UNLOCALIZED: A world of Imagination",
|
||||
"advancement.create.chocolate.desc": "UNLOCALIZED: Obtain a bucket of Molten Chocolate.",
|
||||
"advancement.create.item_drain": "UNLOCALIZED: Tumble Draining",
|
||||
"advancement.create.item_drain.desc": "UNLOCALIZED: Watch a fluid item being emptied by an item drain.",
|
||||
"advancement.create.chained_item_drain": "UNLOCALIZED: Let it roll!",
|
||||
"advancement.create.chained_item_drain.desc": "UNLOCALIZED: Watch an item roll across several chained item drains.",
|
||||
"advancement.create.glass_pipe": "UNLOCALIZED: Flow Spy",
|
||||
"advancement.create.glass_pipe.desc": "UNLOCALIZED: Watch fluid propagate through a windowed fluid pipe. Straight fluid pipes become windowed when a wrench is used on them.",
|
||||
"advancement.create.pipe_collision": "UNLOCALIZED: Never cross the Streams!",
|
||||
"advancement.create.pipe_collision.desc": "UNLOCALIZED: Watch two fluids meet in your pipe network.",
|
||||
"advancement.create.pipe_spill": "UNLOCALIZED: There's a leak!",
|
||||
"advancement.create.pipe_spill.desc": "UNLOCALIZED: Watch an open end of a pipe take or place fluids into the world.",
|
||||
"advancement.create.hose_pulley": "UNLOCALIZED: Industrial Spillage",
|
||||
"advancement.create.hose_pulley.desc": "UNLOCALIZED: Lower a hose pulley and watch it drain or fill a body of fluid.",
|
||||
"advancement.create.infinite_water": "UNLOCALIZED: Draining the Ocean",
|
||||
"advancement.create.infinite_water.desc": "UNLOCALIZED: Pump from a body of Water large enough to be considered Infinite.",
|
||||
"advancement.create.infinite_lava": "UNLOCALIZED: Draining the Planets' Core",
|
||||
"advancement.create.infinite_lava.desc": "UNLOCALIZED: Pump from a body of Lava large enough to be considered Infinite.",
|
||||
"advancement.create.infinite_chocolate": "UNLOCALIZED: Drowning in Imagination",
|
||||
"advancement.create.infinite_chocolate.desc": "UNLOCALIZED: Pump from a body of Molten Chocolate large enough to be considered Infinite.",
|
||||
"advancement.create.crafter": "UNLOCALIZED: Automated Assembly",
|
||||
"advancement.create.crafter.desc": "UNLOCALIZED: Place and power some Mechanical Crafters.",
|
||||
"advancement.create.fan_lava": "geothermische Heizung",
|
||||
"advancement.create.fan_lava.desc": "Bleibe in einem Luftzug, der Dinge schmilzt, hängen.",
|
||||
"advancement.create.fan_water": "Verrücktes Waschen",
|
||||
"advancement.create.fan_water.desc": "Bleibe in einem Luftzug, der Dinge wäscht, hängen.",
|
||||
"advancement.create.fan_smoke": "Mechanischer Balg",
|
||||
"advancement.create.fan_smoke.desc": "Bleibe in einem Luftzug, der Items räuchert, hängen.",
|
||||
"advancement.create.wrench": "Komfortabel Einstellen",
|
||||
"advancement.create.wrench.desc": "Stelle einen Schraubenschlüssel her, der beim Bauen von Vorrichtungen hilft. ",
|
||||
"advancement.create.goggles": "Stress-O-Vision",
|
||||
"advancement.create.goggles.desc": "Stelle Ingenieursbrillen her, die beim Bekommen von kinetischen Informationen von Bauteilen, hilft.",
|
||||
"advancement.create.speedometer": "Aber wie schnell genau?",
|
||||
"advancement.create.speedometer.desc": "Platziere und schalte ein Tachometer ein. Schau es dir durch deine Ingenieursbrille an und lese den genauen Wert ab.",
|
||||
"advancement.create.stressometer": "Aber wie belastet genau?",
|
||||
"advancement.create.stressometer.desc": "Platziere und schalte ein Stressometer ein. Schau es dir durch deine Ingenieursbrille an und lese den genauen Wert ab.",
|
||||
"advancement.create.aesthetics": "Boom, Ästhetik!",
|
||||
"advancement.create.aesthetics.desc": "Plaziere Halterungen an Wellen, Rohren und Zahnrädern.",
|
||||
"advancement.create.reinforced": "Boom, verstärkt!!",
|
||||
"advancement.create.reinforced.desc": "Verwende passende Rahmen für Wellen, Rohre und Riemen.",
|
||||
"advancement.create.water_wheel": "Angespannte Hydraulik",
|
||||
"advancement.create.water_wheel.desc": "Plaziere ein Wasserrad und versuche es zum drehen zu bringen!",
|
||||
"advancement.create.chocolate_wheel": "Leckere Energie",
|
||||
"advancement.create.chocolate_wheel.desc": "Lasse ein Wasserad mit geschmolzerner Schokolade laufen.",
|
||||
"advancement.create.lava_wheel": "Magmarad",
|
||||
"advancement.create.lava_wheel.desc": "Das sollte nicht funktioniert haben.",
|
||||
"advancement.create.cuckoo": "Ist es Zeit?",
|
||||
"advancement.create.cuckoo.desc": "Bekomme mit, wie eine Kuckucksuhr Schlafenszeit ankündigt.",
|
||||
"advancement.create.millstone": "Taschenmahlstein",
|
||||
"advancement.create.millstone.desc": "Plaziere und aktiviere einen Mahlstein.",
|
||||
"advancement.create.windmill": "Eine leichte Brise",
|
||||
"advancement.create.windmill.desc": "Baue eine Windmühle.",
|
||||
"advancement.create.maxed_windmill": "Eine starke Briese",
|
||||
"advancement.create.maxed_windmill.desc": "Baue eine Windmühle mit maximaler stärke.",
|
||||
"advancement.create.andesite_casing": "Das Andesit Alter",
|
||||
"advancement.create.andesite_casing.desc": "Verwende Andesite Legierungen und Holz, um einen einfachen Rahmen zu erstellen.",
|
||||
"advancement.create.mechanical_drill": "Stationäre Brecher",
|
||||
"advancement.create.mechanical_drill.desc": "Plaziere und treibe einen Mechanischen Bohrer.",
|
||||
"advancement.create.press": "Presse macht 'Bonk'!",
|
||||
"advancement.create.press.desc": "Plaziere und treibe eine Mechanische Presse an um Bleche zu erstellen.",
|
||||
"advancement.create.polished_rose_quartz": "Pinke Diamanten",
|
||||
"advancement.create.polished_rose_quartz.desc": "Verwende ein Schmiergelpapier um Rosenquarz zu polieren bis er transparent wird.",
|
||||
"advancement.create.electron_tube": "Piep piep",
|
||||
"advancement.create.electron_tube.desc": "Mache ein paar Elektronenröhren, nützlich in weniger primitiven Maschienerien.",
|
||||
"advancement.create.mechanical_saw": "Stationäres Hacken",
|
||||
"advancement.create.mechanical_saw.desc": "Plaziere und verwende eine Mechanische Säge.",
|
||||
"advancement.create.basin": "Beckenbetrieb",
|
||||
"advancement.create.basin.desc": "Stelle ein Behälter auf und versuche Items reinzuwerfen.",
|
||||
"advancement.create.mixer": "Misch es zusammen",
|
||||
"advancement.create.mixer.desc": "Plaziere einen mechanischen Mixer über dem Behälter, treibe ihn an und starte mit dem Mixen von Zutaten.",
|
||||
"advancement.create.blaze_burner": "Ein lebender Kamin",
|
||||
"advancement.create.blaze_burner.desc": "Bekomme einen Lohenbrenner.",
|
||||
"advancement.create.compact": "Automatische Verdichtunge",
|
||||
"advancement.create.compact.desc": "Verwende eine Presse und einen Behälter um ein paar Items zu verdichten.",
|
||||
"advancement.create.brass": "Tatsächliche Legierungen",
|
||||
"advancement.create.brass.desc": "Verwende zerkleinertes Kupfererz und zerkleinertes Zinkerz um messing herzustellen.",
|
||||
"advancement.create.brass_casing": "Das Messingzeitalter",
|
||||
"advancement.create.brass_casing.desc": "Verwende das neu erhaltene Messing und etwas Holz, um mehr fortgeschrittene Rahmen herzustellen.",
|
||||
"advancement.create.copper_casing": "Das Kupferzeitalter",
|
||||
"advancement.create.copper_casing.desc": "Verwende Kupferbleche und Holz, um Kupferrahmen herzustellen.",
|
||||
"advancement.create.spout": "Platsch",
|
||||
"advancement.create.spout.desc": "Schaue einem Flüssigkeitsitem zu, wie es von einem Ausguss gefüllt wird.",
|
||||
"advancement.create.spout_potion": "Globale Brauerei",
|
||||
"advancement.create.spout_potion.desc": "Schaue einem Ausguss zu, wie er eine Flasche mit einem Trank füllt.",
|
||||
"advancement.create.chocolate": "Eine Welt der Fantasie",
|
||||
"advancement.create.chocolate.desc": "Bekomme einen Schokoladeneimer",
|
||||
"advancement.create.item_drain": "Entwässerung",
|
||||
"advancement.create.item_drain.desc": "Schaue einem mit Flüssigkeit gefülltem Item zu, wie es in einem Abfluss getrocknet wird.",
|
||||
"advancement.create.chained_item_drain": "Lass es rollen!",
|
||||
"advancement.create.chained_item_drain.desc": "Schaue einem Gegenstand zu, wie er über mehrere verbundene Abflüsse rollt.",
|
||||
"advancement.create.glass_pipe": "Flussspion",
|
||||
"advancement.create.glass_pipe.desc": "Beobachte durch ein Rohr mit Fenster, wie Flüssigkeiten durch ein Rohr fließen. Gerade Rohre bekommen ein Fenster, wenn du mit einem Schraubenschlüssel auf diese klickst.",
|
||||
"advancement.create.pipe_collision": "Lass niemals die Ströme kreuzen!",
|
||||
"advancement.create.pipe_collision.desc": "Schaue zwei Flüssigkeiten zu, wie sie sich in deinen Rohren treffen.",
|
||||
"advancement.create.pipe_spill": "Da ist ein Leck!",
|
||||
"advancement.create.pipe_spill.desc": "Schaue eiem offenem Rohrende zu, wie es Flüssigkeiten aufsaugt oder rauslässt.",
|
||||
"advancement.create.hose_pulley": "Industrielles Verschütten",
|
||||
"advancement.create.hose_pulley.desc": "Lass eine Umlenkrolle ab und schau ihr zu, wie sie Wasser aufsaugt oder rauslässt.",
|
||||
"advancement.create.infinite_water": "Die Ozeane entwässern",
|
||||
"advancement.create.infinite_water.desc": "Pumpe aus einem Gewässer, das groß genug ist, um als unendlich bezeichnet zu werden.",
|
||||
"advancement.create.infinite_lava": "Den Kern des Planeten aufsaugen",
|
||||
"advancement.create.infinite_lava.desc": "Pumpe aus einem Lavasee, der groß genug ist, um als unendlich bezeichnet zu werden.",
|
||||
"advancement.create.infinite_chocolate": "In Fantasie ertrinken",
|
||||
"advancement.create.infinite_chocolate.desc": "Pumpe aus einem Schokoladenbecken, das groß genug ist, um als unendlich bezeichnet zu werden.",
|
||||
"advancement.create.crafter": "Automatisierte Montage",
|
||||
"advancement.create.crafter.desc": "Plaziere und aktiviere ein paar Mechanische Handwerkseinheiten.",
|
||||
"advancement.create.clockwork_bearing": "UNLOCALIZED: Contraption o'clock",
|
||||
"advancement.create.clockwork_bearing.desc": "UNLOCALIZED: Assemble a Structure mounted on a Clockwork Bearing.",
|
||||
"advancement.create.nixie_tube": "UNLOCALIZED: Signs of Style",
|
||||
@ -1041,7 +1041,7 @@
|
||||
"create.schematicannon.status.skipping": "Überspringen",
|
||||
"create.schematicannon.status.missingBlock": "Fehlender Block:",
|
||||
"create.schematicannon.status.placing": "Platzieren",
|
||||
"create.schematicannon.status.clearing": "Blöcke entfernen",
|
||||
"create.schematicannon.status.clearing": "UNLOCALIZED: Clearing Blocks",
|
||||
"create.schematicannon.status.schematicInvalid": "Bauplan ungültig",
|
||||
"create.schematicannon.status.schematicNotPlaced": "Bauplan nicht positioniert",
|
||||
"create.schematicannon.status.schematicExpired": "Bauplandatei abgelaufen",
|
||||
@ -1058,75 +1058,75 @@
|
||||
"create.gui.filter.ignore_data": "Ignoriere Daten",
|
||||
"create.gui.filter.ignore_data.description": "Gegenstände stimmen unabhängig ihrer Attribute überein.",
|
||||
|
||||
"create.item_attributes.placeable": "UNLOCALIZED: is placeable",
|
||||
"create.item_attributes.placeable.inverted": "UNLOCALIZED: is not placeable",
|
||||
"create.item_attributes.consumable": "UNLOCALIZED: can be eaten",
|
||||
"create.item_attributes.consumable.inverted": "UNLOCALIZED: cannot be eaten",
|
||||
"create.item_attributes.placeable": "ist plazierbar",
|
||||
"create.item_attributes.placeable.inverted": "ist nicht plazierbar",
|
||||
"create.item_attributes.consumable": "kann man essen",
|
||||
"create.item_attributes.consumable.inverted": "kann man nicht essen",
|
||||
"create.item_attributes.fluid_container": "UNLOCALIZED: can store fluids",
|
||||
"create.item_attributes.fluid_container.inverted": "UNLOCALIZED: cannot store fluids",
|
||||
"create.item_attributes.enchanted": "UNLOCALIZED: is enchanted",
|
||||
"create.item_attributes.enchanted.inverted": "UNLOCALIZED: is unenchanted",
|
||||
"create.item_attributes.max_enchanted": "UNLOCALIZED: is enchanted at max level",
|
||||
"create.item_attributes.max_enchanted.inverted": "UNLOCALIZED: is not enchanted at max level",
|
||||
"create.item_attributes.enchanted": "ist verzaubert",
|
||||
"create.item_attributes.enchanted.inverted": "ist nicht verzaubert",
|
||||
"create.item_attributes.max_enchanted": "ist mit dem maximalen Level verzaubert",
|
||||
"create.item_attributes.max_enchanted.inverted": "ist nicht mit dem maximalen Level verzaubert",
|
||||
"create.item_attributes.renamed": "UNLOCALIZED: has a custom name",
|
||||
"create.item_attributes.renamed.inverted": "UNLOCALIZED: does not have a custom name",
|
||||
"create.item_attributes.damaged": "UNLOCALIZED: is damaged",
|
||||
"create.item_attributes.damaged.inverted": "UNLOCALIZED: is not damaged",
|
||||
"create.item_attributes.badly_damaged": "UNLOCALIZED: is heavily damaged",
|
||||
"create.item_attributes.badly_damaged.inverted": "UNLOCALIZED: is not heavily damaged",
|
||||
"create.item_attributes.not_stackable": "UNLOCALIZED: cannot stack",
|
||||
"create.item_attributes.not_stackable.inverted": "UNLOCALIZED: can be stacked",
|
||||
"create.item_attributes.equipable": "UNLOCALIZED: can be equipped",
|
||||
"create.item_attributes.equipable.inverted": "UNLOCALIZED: cannot be equipped",
|
||||
"create.item_attributes.furnace_fuel": "UNLOCALIZED: is furnace fuel",
|
||||
"create.item_attributes.furnace_fuel.inverted": "UNLOCALIZED: is not furnace fuel",
|
||||
"create.item_attributes.washable": "UNLOCALIZED: can be Washed",
|
||||
"create.item_attributes.washable.inverted": "UNLOCALIZED: cannot be Washed",
|
||||
"create.item_attributes.crushable": "UNLOCALIZED: can be Crushed",
|
||||
"create.item_attributes.crushable.inverted": "UNLOCALIZED: cannot be Crushed",
|
||||
"create.item_attributes.smeltable": "UNLOCALIZED: can be Smelted",
|
||||
"create.item_attributes.smeltable.inverted": "UNLOCALIZED: cannot be Smelted",
|
||||
"create.item_attributes.smokable": "UNLOCALIZED: can be Smoked",
|
||||
"create.item_attributes.smokable.inverted": "UNLOCALIZED: cannot be Smoked",
|
||||
"create.item_attributes.blastable": "UNLOCALIZED: is smeltable in Blast Furnace",
|
||||
"create.item_attributes.blastable.inverted": "UNLOCALIZED: is not smeltable in Blast Furnace",
|
||||
"create.item_attributes.damaged": "ist beschädigt",
|
||||
"create.item_attributes.damaged.inverted": "ist nicht beschädigt",
|
||||
"create.item_attributes.badly_damaged": "ist stark beschädigt",
|
||||
"create.item_attributes.badly_damaged.inverted": "ist nicht stark beschädigt",
|
||||
"create.item_attributes.not_stackable": "kann nicht gestapelt werden",
|
||||
"create.item_attributes.not_stackable.inverted": "kann gestapelt werden",
|
||||
"create.item_attributes.equipable": "kann ausgerüstet werden",
|
||||
"create.item_attributes.equipable.inverted": "kann nicht ausgerüstet werden",
|
||||
"create.item_attributes.furnace_fuel": "ist Brennstoff",
|
||||
"create.item_attributes.furnace_fuel.inverted": "ist nicht Brennstoff",
|
||||
"create.item_attributes.washable": "kann gewaschen werden",
|
||||
"create.item_attributes.washable.inverted": "kann nicht gewaschen werden",
|
||||
"create.item_attributes.crushable": "kann zerkleinert werden",
|
||||
"create.item_attributes.crushable.inverted": "kann nicht zerkleinert werden",
|
||||
"create.item_attributes.smeltable": "kann geschmolzen werden",
|
||||
"create.item_attributes.smeltable.inverted": "kann nicht geschmolzen werden",
|
||||
"create.item_attributes.smokable": "kann geräuchert werden",
|
||||
"create.item_attributes.smokable.inverted": "kann nicht geräuchert werden",
|
||||
"create.item_attributes.blastable": "ist im Schmelzofen schmelzbar",
|
||||
"create.item_attributes.blastable.inverted": "ist nicht im Schmelzofen schmelzbar",
|
||||
"create.item_attributes.shulker_level": "UNLOCALIZED: is shulker %1$s",
|
||||
"create.item_attributes.shulker_level.inverted": "UNLOCALIZED: is shulker not %1$s",
|
||||
"create.item_attributes.shulker_level.full": "UNLOCALIZED: full",
|
||||
"create.item_attributes.shulker_level.empty": "UNLOCALIZED: empty",
|
||||
"create.item_attributes.shulker_level.partial": "UNLOCALIZED: partially filled",
|
||||
"create.item_attributes.in_tag": "UNLOCALIZED: is tagged %1$s",
|
||||
"create.item_attributes.in_tag.inverted": "UNLOCALIZED: is not tagged %1$s",
|
||||
"create.item_attributes.in_item_group": "UNLOCALIZED: is in group '%1$s'",
|
||||
"create.item_attributes.in_item_group.inverted": "UNLOCALIZED: is not in group '%1$s'",
|
||||
"create.item_attributes.added_by": "UNLOCALIZED: was added by %1$s",
|
||||
"create.item_attributes.added_by.inverted": "UNLOCALIZED: was not added by %1$s",
|
||||
"create.item_attributes.has_enchant": "UNLOCALIZED: is enchanted with %1$s",
|
||||
"create.item_attributes.has_enchant.inverted": "UNLOCALIZED: is not enchanted with %1$s",
|
||||
"create.item_attributes.color": "UNLOCALIZED: is dyed %1$s",
|
||||
"create.item_attributes.color.inverted": "UNLOCALIZED: is not dyed %1$s",
|
||||
"create.item_attributes.has_fluid": "UNLOCALIZED: contains %1$s",
|
||||
"create.item_attributes.has_fluid.inverted": "UNLOCALIZED: does not contain %1$s",
|
||||
"create.item_attributes.has_name": "UNLOCALIZED: has the custom name %1$s",
|
||||
"create.item_attributes.has_name.inverted": "UNLOCALIZED: does not have the custom name %1$s",
|
||||
"create.item_attributes.book_author": "UNLOCALIZED: was authored by %1$s",
|
||||
"create.item_attributes.book_author.inverted": "UNLOCALIZED: was not authored by %1$s",
|
||||
"create.item_attributes.book_copy_original": "UNLOCALIZED: is an original",
|
||||
"create.item_attributes.book_copy_original.inverted": "UNLOCALIZED: is not an original",
|
||||
"create.item_attributes.book_copy_first": "UNLOCALIZED: is a first-generation copy",
|
||||
"create.item_attributes.book_copy_first.inverted": "UNLOCALIZED: is not a first-generation copy",
|
||||
"create.item_attributes.book_copy_second": "UNLOCALIZED: is a second-generation copy",
|
||||
"create.item_attributes.book_copy_second.inverted": "UNLOCALIZED: is not a second-generation copy",
|
||||
"create.item_attributes.book_copy_tattered": "UNLOCALIZED: is a tattered mess",
|
||||
"create.item_attributes.book_copy_tattered.inverted": "UNLOCALIZED: is not a tattered mess",
|
||||
"create.item_attributes.astralsorcery_amulet": "UNLOCALIZED: improves %1$s",
|
||||
"create.item_attributes.astralsorcery_amulet.inverted": "UNLOCALIZED: does not improve %1$s",
|
||||
"create.item_attributes.astralsorcery_constellation": "UNLOCALIZED: is attuned to %1$s",
|
||||
"create.item_attributes.astralsorcery_constellation.inverted": "UNLOCALIZED: is not attuned to %1$s",
|
||||
"create.item_attributes.astralsorcery_crystal": "UNLOCALIZED: has crystal attribute %1$s",
|
||||
"create.item_attributes.astralsorcery_crystal.inverted": "UNLOCALIZED: does not have crystal attribute %1$s",
|
||||
"create.item_attributes.astralsorcery_perk_gem": "UNLOCALIZED: has perk attribute %1$s",
|
||||
"create.item_attributes.astralsorcery_perk_gem.inverted": "UNLOCALIZED: does not have perk attribute %1$s",
|
||||
"create.item_attributes.in_tag": "ist mit %1$s makiert",
|
||||
"create.item_attributes.in_tag.inverted": "ist nicht mit %1$s markoiert",
|
||||
"create.item_attributes.in_item_group": "ist in der Gruppe '%1$s'",
|
||||
"create.item_attributes.in_item_group.inverted": "ist nicht in der Gruppe '%1$s'",
|
||||
"create.item_attributes.added_by": "wurde von %1$s hinzugefügt",
|
||||
"create.item_attributes.added_by.inverted": "wurde nicht von %1$s hinzugefügt",
|
||||
"create.item_attributes.has_enchant": "ist mit %1$s verzaubert",
|
||||
"create.item_attributes.has_enchant.inverted": "ist nicht mit %1$s verzaubert",
|
||||
"create.item_attributes.color": "ist %1$s gefärbt",
|
||||
"create.item_attributes.color.inverted": "ist nicht %1$s gefärbt",
|
||||
"create.item_attributes.has_fluid": "enthält %1$s",
|
||||
"create.item_attributes.has_fluid.inverted": "enthält nicht %1$s",
|
||||
"create.item_attributes.has_name": "hat den Benutzerdefinierten Namen %1$s",
|
||||
"create.item_attributes.has_name.inverted": "hat nicht den benutzerdefinierten Namen %1$s",
|
||||
"create.item_attributes.book_author": "wurde verfasst von %1$s",
|
||||
"create.item_attributes.book_author.inverted": "wurde nicht von %1$s verfasst",
|
||||
"create.item_attributes.book_copy_original": "ist ein Original",
|
||||
"create.item_attributes.book_copy_original.inverted": "ist kein Original",
|
||||
"create.item_attributes.book_copy_first": "ist die erste Kopie",
|
||||
"create.item_attributes.book_copy_first.inverted": "ist nicht die erste Kopie",
|
||||
"create.item_attributes.book_copy_second": "ist die zweite Kopie",
|
||||
"create.item_attributes.book_copy_second.inverted": "ist nicht die Zweite Kopie",
|
||||
"create.item_attributes.book_copy_tattered": "ist ein zerfetztes Durcheinander",
|
||||
"create.item_attributes.book_copy_tattered.inverted": "sit kein zerfetztes Durcheinander",
|
||||
"create.item_attributes.astralsorcery_amulet": "verbessert %1$s",
|
||||
"create.item_attributes.astralsorcery_amulet.inverted": "verbessert nicht %1$s",
|
||||
"create.item_attributes.astralsorcery_constellation": "ist abgestimmt auf %1$s",
|
||||
"create.item_attributes.astralsorcery_constellation.inverted": "ist nicht abgestimmt auf %1$s",
|
||||
"create.item_attributes.astralsorcery_crystal": "hat das Kristallattribut %1$s",
|
||||
"create.item_attributes.astralsorcery_crystal.inverted": "hat nicht das Kristallattribut %1$s",
|
||||
"create.item_attributes.astralsorcery_perk_gem": "hat das Vorteilsattribut %1$s",
|
||||
"create.item_attributes.astralsorcery_perk_gem.inverted": "hat nicht das Vorteilsattribut %1$s",
|
||||
|
||||
"create.gui.attribute_filter.no_selected_attributes": "Keine Attribute ausgewählt",
|
||||
"create.gui.attribute_filter.selected_attributes": "Ausgewählte Attribute:",
|
||||
@ -1296,19 +1296,19 @@
|
||||
"item.create.example_item.tooltip.control1": "Wenn Strg gedrückt ist",
|
||||
"item.create.example_item.tooltip.action1": "wird diese Steuerung gezeigt.",
|
||||
|
||||
"block.create.wooden_bracket.tooltip": "UNLOCALIZED: WOODEN BRACKET",
|
||||
"block.create.wooden_bracket.tooltip.summary": "UNLOCALIZED: _Decorate_ your _Shafts, Cogwheels_ and _Pipes_ with a cozy and wooden bit of reinforcement.",
|
||||
"block.create.wooden_bracket.tooltip": "Holzhalterung",
|
||||
"block.create.wooden_bracket.tooltip.summary": "_Verziere_ deine _Wellen_, _Zahnräder_ und _Rohre_ mit einem gemütlichem und hölzernem Stück Verstärkung.",
|
||||
|
||||
"block.create.metal_bracket.tooltip": "UNLOCALIZED: METAL BRACKET",
|
||||
"block.create.metal_bracket.tooltip.summary": "UNLOCALIZED: _Decorate_ your _Shafts, Cogwheels_ and _Pipes_ with an industrial and sturdy bit of reinforcement.",
|
||||
"block.create.metal_bracket.tooltip": "Metallhalterung",
|
||||
"block.create.metal_bracket.tooltip.summary": "_Verziere_ deine _Wellen_, _Zahnräder_ und _Rohre_ mit einem industriellem und robustem Stück Verstärkung.",
|
||||
|
||||
"block.create.seat.tooltip": "UNLOCALIZED: SEAT",
|
||||
"block.create.seat.tooltip.summary": "UNLOCALIZED: Sit yourself down and enjoy the ride! Will anchor a player onto a moving _contraption_. Great for static furniture too! Comes in a variety of colours.",
|
||||
"block.create.seat.tooltip.condition1": "UNLOCALIZED: Right click on Seat",
|
||||
"block.create.seat.tooltip.behaviour1": "UNLOCALIZED: Sits the player on the _Seat_. Press L-shift to leave the _Seat_.",
|
||||
"block.create.seat.tooltip": "Sitz",
|
||||
"block.create.seat.tooltip.summary": "Setz dich hin und genieße die Fahrt! Der Sitz verankert den Spieler an einem sich bewegendem Apparat. Hervorragend auch für statische Möbel! Kommt in verschiedensten Farben.",
|
||||
"block.create.seat.tooltip.condition1": "Rechtsklick auf den Sitz",
|
||||
"block.create.seat.tooltip.behaviour1": "Setzt den Spieler auf den _Sitz_. Drücke L-Shift, um den _Sitz_ wieder zu verlassen.",
|
||||
|
||||
"item.create.blaze_cake.tooltip": "UNLOCALIZED: BLAZE CAKE",
|
||||
"item.create.blaze_cake.tooltip.summary": "UNLOCALIZED: A Delicious treat for your hard-working _Blaze Burners_. Gets them all fired up!",
|
||||
"item.create.blaze_cake.tooltip": "Lohenkuchen",
|
||||
"item.create.blaze_cake.tooltip.summary": "Ein leckeres Vergnügen für deine hart arbeitenden _Lohenbrenner_. Feuert die alle an!",
|
||||
|
||||
"item.create.wand_of_symmetry.tooltip": "SYMMETRIESTAB",
|
||||
"item.create.wand_of_symmetry.tooltip.summary": "Spiegelt deine Blockplatzierung perfekt über die konfigurierten Ebenen.",
|
||||
@ -1335,7 +1335,7 @@
|
||||
"item.create.tree_fertilizer.tooltip.condition1": "Wenn auf einen Setzling angewendet",
|
||||
"item.create.tree_fertilizer.tooltip.behaviour1": "Lässt Bäume unabhängig vom Platz um sie herum wachsen",
|
||||
|
||||
"item.create.extendo_grip.tooltip": "UNLOCALIZED: EXTENDO GRIP",
|
||||
"item.create.extendo_grip.tooltip": "Extendo Griff",
|
||||
"item.create.extendo_grip.tooltip.summary": "UNLOCALIZED: Boioioing! Greatly _increases reach distance_ of the wielder. Can be powered with Air Pressure from a _Copper_ _Backtank_",
|
||||
"item.create.extendo_grip.tooltip.condition1": "UNLOCALIZED: When in Off-Hand",
|
||||
"item.create.extendo_grip.tooltip.behaviour1": "UNLOCALIZED: Increases _reach distance_ of items used in the _Main-Hand_.",
|
||||
@ -1349,14 +1349,14 @@
|
||||
"item.create.potato_cannon.tooltip.condition2": "UNLOCALIZED: While wearing Copper Backtank",
|
||||
"item.create.potato_cannon.tooltip.behaviour2": "UNLOCALIZED: _No_ _Durability_ will be used. Instead, _Air_ _pressure_ is drained from the Tank",
|
||||
|
||||
"item.create.filter.tooltip": "UNLOCALIZED: FILTER",
|
||||
"item.create.filter.tooltip": "Filter",
|
||||
"item.create.filter.tooltip.summary": "UNLOCALIZED: _Controls outputs_ and _inputs_ of logistical devices with more _precision_, matching them against a _set of items_ or several _nested filters_.",
|
||||
"item.create.filter.tooltip.condition1": "UNLOCALIZED: When in filter slot",
|
||||
"item.create.filter.tooltip.behaviour1": "UNLOCALIZED: _Controls_ item flow according to its _configuration_.",
|
||||
"item.create.filter.tooltip.condition2": "UNLOCALIZED: When R-Clicked",
|
||||
"item.create.filter.tooltip.behaviour2": "UNLOCALIZED: Opens the _configuration interface_.",
|
||||
|
||||
"item.create.attribute_filter.tooltip": "UNLOCALIZED: ATTRIBUTE FILTER",
|
||||
"item.create.attribute_filter.tooltip": "Attribut Filter",
|
||||
"item.create.attribute_filter.tooltip.summary": "UNLOCALIZED: _Controls outputs_ and _inputs_ of logistical devices with more _precision_, matching them against a _set of_ item _attributes_ and _categories_.",
|
||||
"item.create.attribute_filter.tooltip.condition1": "UNLOCALIZED: When in filter slot",
|
||||
"item.create.attribute_filter.tooltip.behaviour1": "UNLOCALIZED: _Controls_ item flow according to its _configuration_.",
|
||||
@ -1388,15 +1388,15 @@
|
||||
|
||||
"block.create.schematicannon.tooltip": "BAUPLANKANONE",
|
||||
"block.create.schematicannon.tooltip.summary": "Schießt Blöcke, um eine Struktur nach einem positionierten _Bauplan_ zu errichten. Benutzt Gegenstände aus benachbarten Inventaren und _Schießpulver_ als Treibstoff.",
|
||||
"block.create.schematicannon.tooltip.condition1": "UNLOCALIZED: When R-Clicked",
|
||||
"block.create.schematicannon.tooltip.behaviour1": "UNLOCALIZED: Opens the _Interface_",
|
||||
"block.create.schematicannon.tooltip.condition1": "Wenn gerechtsklickt",
|
||||
"block.create.schematicannon.tooltip.behaviour1": "Öffnet das _Interface_",
|
||||
|
||||
"block.create.schematic_table.tooltip": "BAUPLANTISCH",
|
||||
"block.create.schematic_table.tooltip.summary": "Schreibt gespeicherte Baupläne auf einen _Leeren_ _Bauplan_",
|
||||
"block.create.schematic_table.tooltip.condition1": "Wenn ein Leerer Bauplan bereitgestellt wird",
|
||||
"block.create.schematic_table.tooltip.behaviour1": "Lädt eine ausgewählte Datei von deinem Bauplan-Ordner hoch",
|
||||
|
||||
"item.create.goggles.tooltip": "UNLOCALIZED: GOGGLES",
|
||||
"item.create.goggles.tooltip": "Ingenieursbrille",
|
||||
"item.create.goggles.tooltip.summary": "UNLOCALIZED: A pair of glasses to augment your vision with useful _kinetic information_.",
|
||||
"item.create.goggles.tooltip.condition1": "UNLOCALIZED: When worn",
|
||||
"item.create.goggles.tooltip.behaviour1": "UNLOCALIZED: Shows _colored indicators_ corresponding to the _Speed Level_ of a placed kinetic component as well as _Stress Impact_ and _Capacity_ of individual components.",
|
||||
|
@ -11,6 +11,17 @@
|
||||
"function": "minecraft:copy_name",
|
||||
"source": "block_entity"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
"ops": [
|
||||
{
|
||||
"source": "UniqueId",
|
||||
"target": "UniqueId",
|
||||
"op": "replace"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
|
@ -11,6 +11,17 @@
|
||||
"function": "minecraft:copy_name",
|
||||
"source": "block_entity"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
"ops": [
|
||||
{
|
||||
"source": "UniqueId",
|
||||
"target": "UniqueId",
|
||||
"op": "replace"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
|
@ -11,6 +11,17 @@
|
||||
"function": "minecraft:copy_name",
|
||||
"source": "block_entity"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
"ops": [
|
||||
{
|
||||
"source": "UniqueId",
|
||||
"target": "UniqueId",
|
||||
"op": "replace"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
|
@ -11,6 +11,17 @@
|
||||
"function": "minecraft:copy_name",
|
||||
"source": "block_entity"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
"ops": [
|
||||
{
|
||||
"source": "UniqueId",
|
||||
"target": "UniqueId",
|
||||
"op": "replace"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
|
@ -11,6 +11,17 @@
|
||||
"function": "minecraft:copy_name",
|
||||
"source": "block_entity"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
"ops": [
|
||||
{
|
||||
"source": "UniqueId",
|
||||
"target": "UniqueId",
|
||||
"op": "replace"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
|
@ -11,6 +11,17 @@
|
||||
"function": "minecraft:copy_name",
|
||||
"source": "block_entity"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
"ops": [
|
||||
{
|
||||
"source": "UniqueId",
|
||||
"target": "UniqueId",
|
||||
"op": "replace"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
|
@ -11,6 +11,17 @@
|
||||
"function": "minecraft:copy_name",
|
||||
"source": "block_entity"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
"ops": [
|
||||
{
|
||||
"source": "UniqueId",
|
||||
"target": "UniqueId",
|
||||
"op": "replace"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
|
@ -11,6 +11,17 @@
|
||||
"function": "minecraft:copy_name",
|
||||
"source": "block_entity"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
"ops": [
|
||||
{
|
||||
"source": "UniqueId",
|
||||
"target": "UniqueId",
|
||||
"op": "replace"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
|
@ -11,6 +11,17 @@
|
||||
"function": "minecraft:copy_name",
|
||||
"source": "block_entity"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
"ops": [
|
||||
{
|
||||
"source": "UniqueId",
|
||||
"target": "UniqueId",
|
||||
"op": "replace"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
|
@ -11,6 +11,17 @@
|
||||
"function": "minecraft:copy_name",
|
||||
"source": "block_entity"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
"ops": [
|
||||
{
|
||||
"source": "UniqueId",
|
||||
"target": "UniqueId",
|
||||
"op": "replace"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
|
@ -11,6 +11,17 @@
|
||||
"function": "minecraft:copy_name",
|
||||
"source": "block_entity"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
"ops": [
|
||||
{
|
||||
"source": "UniqueId",
|
||||
"target": "UniqueId",
|
||||
"op": "replace"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
|
@ -11,6 +11,17 @@
|
||||
"function": "minecraft:copy_name",
|
||||
"source": "block_entity"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
"ops": [
|
||||
{
|
||||
"source": "UniqueId",
|
||||
"target": "UniqueId",
|
||||
"op": "replace"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
|
@ -11,6 +11,17 @@
|
||||
"function": "minecraft:copy_name",
|
||||
"source": "block_entity"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
"ops": [
|
||||
{
|
||||
"source": "UniqueId",
|
||||
"target": "UniqueId",
|
||||
"op": "replace"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
|
@ -11,6 +11,17 @@
|
||||
"function": "minecraft:copy_name",
|
||||
"source": "block_entity"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
"ops": [
|
||||
{
|
||||
"source": "UniqueId",
|
||||
"target": "UniqueId",
|
||||
"op": "replace"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
|
@ -11,6 +11,17 @@
|
||||
"function": "minecraft:copy_name",
|
||||
"source": "block_entity"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
"ops": [
|
||||
{
|
||||
"source": "UniqueId",
|
||||
"target": "UniqueId",
|
||||
"op": "replace"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
|
@ -11,6 +11,17 @@
|
||||
"function": "minecraft:copy_name",
|
||||
"source": "block_entity"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
"ops": [
|
||||
{
|
||||
"source": "UniqueId",
|
||||
"target": "UniqueId",
|
||||
"op": "replace"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"function": "minecraft:copy_nbt",
|
||||
"source": "block_entity",
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:black_wool"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "minecraft:wooden_slabs"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:black_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/black"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:seats"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:black_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/black"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:valve_handles"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:black_valve_handle"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:blue_wool"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "minecraft:wooden_slabs"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:blue_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/blue"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:seats"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:blue_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/blue"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:valve_handles"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:blue_valve_handle"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:brown_wool"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "minecraft:wooden_slabs"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:brown_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/brown"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:seats"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:brown_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/brown"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:valve_handles"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:brown_valve_handle"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:cyan_wool"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "minecraft:wooden_slabs"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:cyan_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/cyan"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:seats"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:cyan_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/cyan"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:valve_handles"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:cyan_valve_handle"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"A",
|
||||
"I"
|
||||
],
|
||||
"key": {
|
||||
"A": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "create:andesite_alloy"
|
||||
},
|
||||
"I": {
|
||||
{
|
||||
"item": "create:andesite_casing"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:depot"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:gray_wool"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "minecraft:wooden_slabs"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:gray_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/gray"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:seats"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:gray_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/gray"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:valve_handles"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:gray_valve_handle"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:green_wool"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "minecraft:wooden_slabs"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:green_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/green"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:seats"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:green_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/green"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:valve_handles"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:green_valve_handle"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:light_blue_wool"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "minecraft:wooden_slabs"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:light_blue_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/light_blue"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:seats"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:light_blue_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/light_blue"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:valve_handles"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:light_blue_valve_handle"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:light_gray_wool"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "minecraft:wooden_slabs"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:light_gray_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/light_gray"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:seats"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:light_gray_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/light_gray"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:valve_handles"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:light_gray_valve_handle"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:lime_wool"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "minecraft:wooden_slabs"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:lime_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/lime"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:seats"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:lime_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/lime"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:valve_handles"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:lime_valve_handle"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:magenta_wool"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "minecraft:wooden_slabs"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:magenta_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/magenta"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:seats"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:magenta_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/magenta"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:valve_handles"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:magenta_valve_handle"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"P",
|
||||
"S"
|
||||
],
|
||||
"key": {
|
||||
"P": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "create:cogwheel"
|
||||
},
|
||||
"S": {
|
||||
{
|
||||
"item": "create:fluid_pipe"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:mechanical_pump"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:orange_wool"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "minecraft:wooden_slabs"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:orange_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/orange"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:seats"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:orange_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/orange"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:valve_handles"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:orange_valve_handle"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:pink_wool"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "minecraft:wooden_slabs"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:pink_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/pink"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:seats"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:pink_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/pink"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:valve_handles"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:pink_valve_handle"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:purple_wool"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "minecraft:wooden_slabs"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:purple_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/purple"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:seats"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:purple_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/purple"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:valve_handles"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:purple_valve_handle"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:red_wool"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "minecraft:wooden_slabs"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:red_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/red"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:seats"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:red_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/red"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:valve_handles"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:red_valve_handle"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:white_wool"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "minecraft:wooden_slabs"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:white_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/white"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:seats"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:white_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/white"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:valve_handles"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:white_valve_handle"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:yellow_wool"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "minecraft:wooden_slabs"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:yellow_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/yellow"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:seats"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:yellow_seat"
|
||||
}
|
||||
|
@ -1,17 +1,13 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"pattern": [
|
||||
"#",
|
||||
"-"
|
||||
],
|
||||
"key": {
|
||||
"#": {
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "forge:dyes/yellow"
|
||||
},
|
||||
"-": {
|
||||
{
|
||||
"tag": "create:valve_handles"
|
||||
}
|
||||
},
|
||||
],
|
||||
"result": {
|
||||
"item": "create:yellow_valve_handle"
|
||||
}
|
||||
|
@ -183,7 +183,7 @@ import net.minecraft.block.Blocks;
|
||||
import net.minecraft.block.SoundType;
|
||||
import net.minecraft.block.material.MaterialColor;
|
||||
import net.minecraft.client.renderer.RenderType;
|
||||
import net.minecraft.data.ShapedRecipeBuilder;
|
||||
import net.minecraft.data.ShapelessRecipeBuilder;
|
||||
import net.minecraft.item.DyeColor;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.Rarity;
|
||||
@ -645,11 +645,9 @@ public class AllBlocks {
|
||||
String colourName = colour.getSerializedName();
|
||||
return REGISTRATE.block(colourName + "_valve_handle", p -> ValveHandleBlock.dyed(p, colour))
|
||||
.transform(BuilderTransformers.valveHandle(colour))
|
||||
.recipe((c, p) -> ShapedRecipeBuilder.shaped(c.get())
|
||||
.pattern("#")
|
||||
.pattern("-")
|
||||
.define('#', colour.getTag())
|
||||
.define('-', AllItemTags.VALVE_HANDLES.tag)
|
||||
.recipe((c, p) -> ShapelessRecipeBuilder.shapeless(c.get())
|
||||
.requires(colour.getTag())
|
||||
.requires(AllItemTags.VALVE_HANDLES.tag)
|
||||
.unlockedBy("has_valve", RegistrateRecipeProvider.hasItem(AllItemTags.VALVE_HANDLES.tag))
|
||||
.save(p, Create.asResource("crafting/kinetics/" + c.getName() + "_from_other_valve_handle")))
|
||||
.register();
|
||||
@ -986,18 +984,14 @@ public class AllBlocks {
|
||||
.texture("2", p.modLoc("block/seat/side_" + colourName)));
|
||||
})
|
||||
.recipe((c, p) -> {
|
||||
ShapedRecipeBuilder.shaped(c.get())
|
||||
.pattern("#")
|
||||
.pattern("-")
|
||||
.define('#', DyeHelper.getWoolOfDye(colour))
|
||||
.define('-', ItemTags.WOODEN_SLABS)
|
||||
ShapelessRecipeBuilder.shapeless(c.get())
|
||||
.requires(DyeHelper.getWoolOfDye(colour))
|
||||
.requires(ItemTags.WOODEN_SLABS)
|
||||
.unlockedBy("has_wool", RegistrateRecipeProvider.hasItem(ItemTags.WOOL))
|
||||
.save(p, Create.asResource("crafting/kinetics/" + c.getName()));
|
||||
ShapedRecipeBuilder.shaped(c.get())
|
||||
.pattern("#")
|
||||
.pattern("-")
|
||||
.define('#', colour.getTag())
|
||||
.define('-', AllItemTags.SEATS.tag)
|
||||
ShapelessRecipeBuilder.shapeless(c.get())
|
||||
.requires(colour.getTag())
|
||||
.requires(AllItemTags.SEATS.tag)
|
||||
.unlockedBy("has_seat", RegistrateRecipeProvider.hasItem(AllItemTags.SEATS.tag))
|
||||
.save(p, Create.asResource("crafting/kinetics/" + c.getName() + "_from_other_seat"));
|
||||
})
|
||||
@ -1018,13 +1012,14 @@ public class AllBlocks {
|
||||
.simpleItem()
|
||||
.register();
|
||||
|
||||
public static final BlockEntry<SailBlock> SAIL = REGISTRATE.block("white_sail", p -> SailBlock.withCanvas(p, DyeColor.WHITE))
|
||||
.initialProperties(SharedProperties::wooden)
|
||||
.properties(AbstractBlock.Properties::noOcclusion)
|
||||
.blockstate(BlockStateGen.directionalBlockProvider(false))
|
||||
.tag(AllBlockTags.WINDMILL_SAILS.tag)
|
||||
.simpleItem()
|
||||
.register();
|
||||
public static final BlockEntry<SailBlock> SAIL =
|
||||
REGISTRATE.block("white_sail", p -> SailBlock.withCanvas(p, DyeColor.WHITE))
|
||||
.initialProperties(SharedProperties::wooden)
|
||||
.properties(AbstractBlock.Properties::noOcclusion)
|
||||
.blockstate(BlockStateGen.directionalBlockProvider(false))
|
||||
.tag(AllBlockTags.WINDMILL_SAILS.tag)
|
||||
.simpleItem()
|
||||
.register();
|
||||
|
||||
public static final DyedBlockList<SailBlock> DYED_SAILS = new DyedBlockList<>(colour -> {
|
||||
if (colour == DyeColor.WHITE) {
|
||||
@ -1365,6 +1360,8 @@ public class AllBlocks {
|
||||
.setRolls(ConstantRange.exactly(1))
|
||||
.add(ItemLootEntry.lootTableItem(block)
|
||||
.apply(CopyName.copyName(CopyName.Source.BLOCK_ENTITY))
|
||||
.apply(CopyNbt.copyData(CopyNbt.Source.BLOCK_ENTITY)
|
||||
.copy("UniqueId", "UniqueId"))
|
||||
.apply(CopyNbt.copyData(CopyNbt.Source.BLOCK_ENTITY)
|
||||
.copy("Inventory", "Inventory")))));
|
||||
})
|
||||
|
@ -12,6 +12,7 @@ import javax.annotation.Nonnull;
|
||||
|
||||
import com.google.common.base.Predicates;
|
||||
import com.simibubi.create.AllBlocks;
|
||||
import com.simibubi.create.AllFluids;
|
||||
import com.simibubi.create.AllItems;
|
||||
import com.simibubi.create.AllRecipeTypes;
|
||||
import com.simibubi.create.Create;
|
||||
@ -38,6 +39,7 @@ import com.simibubi.create.compat.jei.category.SpoutCategory;
|
||||
import com.simibubi.create.content.contraptions.components.deployer.DeployerApplicationRecipe;
|
||||
import com.simibubi.create.content.contraptions.components.press.MechanicalPressTileEntity;
|
||||
import com.simibubi.create.content.contraptions.components.saw.SawTileEntity;
|
||||
import com.simibubi.create.content.contraptions.fluids.potion.PotionFluid;
|
||||
import com.simibubi.create.content.contraptions.fluids.recipe.PotionMixingRecipeManager;
|
||||
import com.simibubi.create.content.contraptions.processing.BasinRecipe;
|
||||
import com.simibubi.create.content.curiosities.toolbox.ToolboxScreen;
|
||||
@ -62,6 +64,7 @@ import mezz.jei.api.registration.IRecipeCatalystRegistration;
|
||||
import mezz.jei.api.registration.IRecipeCategoryRegistration;
|
||||
import mezz.jei.api.registration.IRecipeRegistration;
|
||||
import mezz.jei.api.registration.IRecipeTransferRegistration;
|
||||
import mezz.jei.api.registration.ISubtypeRegistration;
|
||||
import mezz.jei.api.runtime.IIngredientManager;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.item.ItemStack;
|
||||
@ -124,8 +127,7 @@ public class CreateJEI implements IModPlugin {
|
||||
|
||||
autoShapeless = register("automatic_shapeless", MixingCategory::autoShapeless)
|
||||
.recipes(r -> r.getSerializer() == IRecipeSerializer.SHAPELESS_RECIPE && r.getIngredients()
|
||||
.size() > 1 && !MechanicalPressTileEntity.canCompress(r),
|
||||
BasinRecipe::convertShapeless)
|
||||
.size() > 1 && !MechanicalPressTileEntity.canCompress(r), BasinRecipe::convertShapeless)
|
||||
.catalyst(AllBlocks.MECHANICAL_MIXER::get)
|
||||
.catalyst(AllBlocks.BASIN::get)
|
||||
.enableWhen(c -> c.allowShapelessInMixer)
|
||||
@ -174,8 +176,8 @@ public class CreateJEI implements IModPlugin {
|
||||
.build(),
|
||||
|
||||
deploying = register("deploying", DeployingCategory::new)
|
||||
.recipeList(
|
||||
() -> DeployerApplicationRecipe.convert(findRecipesByType(AllRecipeTypes.SANDPAPER_POLISHING.getType())))
|
||||
.recipeList(() -> DeployerApplicationRecipe
|
||||
.convert(findRecipesByType(AllRecipeTypes.SANDPAPER_POLISHING.getType())))
|
||||
.recipes(AllRecipeTypes.DEPLOYING)
|
||||
.catalyst(AllBlocks.DEPLOYER::get)
|
||||
.catalyst(AllBlocks.DEPOT::get)
|
||||
@ -200,9 +202,8 @@ public class CreateJEI implements IModPlugin {
|
||||
autoShaped = register("automatic_shaped", MechanicalCraftingCategory::new)
|
||||
.recipes(r -> r.getSerializer() == IRecipeSerializer.SHAPELESS_RECIPE && r.getIngredients()
|
||||
.size() == 1)
|
||||
.recipes(
|
||||
r -> (r.getType() == IRecipeType.CRAFTING && r.getType() != AllRecipeTypes.MECHANICAL_CRAFTING.getType())
|
||||
&& (r instanceof ShapedRecipe))
|
||||
.recipes(r -> (r.getType() == IRecipeType.CRAFTING
|
||||
&& r.getType() != AllRecipeTypes.MECHANICAL_CRAFTING.getType()) && (r instanceof ShapedRecipe))
|
||||
.catalyst(AllBlocks.MECHANICAL_CRAFTER::get)
|
||||
.enableWhen(c -> c.allowRegularCraftingInCrafter)
|
||||
.build(),
|
||||
@ -233,10 +234,21 @@ public class CreateJEI implements IModPlugin {
|
||||
allCategories.forEach(registration::addRecipeCategories);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerFluidSubtypes(ISubtypeRegistration registration) {
|
||||
PotionFluidSubtypeInterpreter interpreter = new PotionFluidSubtypeInterpreter();
|
||||
PotionFluid potionFluid = AllFluids.POTION.get();
|
||||
registration.registerSubtypeInterpreter(potionFluid.getSource(), interpreter);
|
||||
registration.registerSubtypeInterpreter(potionFluid.getFlowing(), interpreter);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerRecipes(IRecipeRegistration registration) {
|
||||
ingredientManager = registration.getIngredientManager();
|
||||
allCategories.forEach(c -> c.recipes.forEach(s -> registration.addRecipes(s.get(), c.getUid())));
|
||||
|
||||
registration.addRecipes(ToolboxColoringRecipeMaker.createRecipes()
|
||||
.collect(Collectors.toList()), VanillaRecipeCategoryUid.CRAFTING);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -0,0 +1,44 @@
|
||||
package com.simibubi.create.compat.jei;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.simibubi.create.content.contraptions.fluids.potion.PotionFluid.BottleType;
|
||||
import com.simibubi.create.foundation.utility.NBTHelper;
|
||||
|
||||
import mezz.jei.api.ingredients.subtypes.IIngredientSubtypeInterpreter;
|
||||
import mezz.jei.api.ingredients.subtypes.UidContext;
|
||||
import net.minecraft.nbt.CompoundNBT;
|
||||
import net.minecraft.potion.EffectInstance;
|
||||
import net.minecraft.potion.Potion;
|
||||
import net.minecraft.potion.PotionUtils;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
|
||||
/* From JEI's Potion item subtype interpreter */
|
||||
public class PotionFluidSubtypeInterpreter implements IIngredientSubtypeInterpreter<FluidStack> {
|
||||
|
||||
@Override
|
||||
public String apply(FluidStack ingredient, UidContext context) {
|
||||
if (!ingredient.hasTag())
|
||||
return IIngredientSubtypeInterpreter.NONE;
|
||||
|
||||
CompoundNBT tag = ingredient.getOrCreateTag();
|
||||
Potion potionType = PotionUtils.getPotion(tag);
|
||||
String potionTypeString = potionType.getName("");
|
||||
String bottleType = NBTHelper.readEnum(tag, "Bottle", BottleType.class)
|
||||
.toString();
|
||||
|
||||
StringBuilder stringBuilder = new StringBuilder(potionTypeString);
|
||||
List<EffectInstance> effects = PotionUtils.getCustomEffects(tag);
|
||||
|
||||
stringBuilder.append(";")
|
||||
.append(bottleType);
|
||||
for (EffectInstance effect : potionType.getEffects())
|
||||
stringBuilder.append(";")
|
||||
.append(effect);
|
||||
for (EffectInstance effect : effects)
|
||||
stringBuilder.append(";")
|
||||
.append(effect);
|
||||
return stringBuilder.toString();
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,52 @@
|
||||
package com.simibubi.create.compat.jei;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import com.simibubi.create.AllBlocks;
|
||||
import com.simibubi.create.Create;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.item.DyeColor;
|
||||
import net.minecraft.item.DyeItem;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.item.crafting.ICraftingRecipe;
|
||||
import net.minecraft.item.crafting.Ingredient;
|
||||
import net.minecraft.item.crafting.ShapelessRecipe;
|
||||
import net.minecraft.tags.ITag;
|
||||
import net.minecraft.util.NonNullList;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
public final class ToolboxColoringRecipeMaker {
|
||||
|
||||
// From JEI's ShulkerBoxColoringRecipeMaker
|
||||
public static Stream<ICraftingRecipe> createRecipes() {
|
||||
String group = "create.toolbox.color";
|
||||
ItemStack baseShulkerStack = AllBlocks.TOOLBOXES.get(DyeColor.BROWN)
|
||||
.asStack();
|
||||
Ingredient baseShulkerIngredient = Ingredient.of(baseShulkerStack);
|
||||
|
||||
return Arrays.stream(DyeColor.values())
|
||||
.filter(dc -> dc != DyeColor.BROWN)
|
||||
.map(color -> {
|
||||
DyeItem dye = DyeItem.byColor(color);
|
||||
ItemStack dyeStack = new ItemStack(dye);
|
||||
ITag<Item> colorTag = color.getTag();
|
||||
Ingredient.IItemList dyeList = new Ingredient.SingleItemList(dyeStack);
|
||||
Ingredient.IItemList colorList = new Ingredient.TagList(colorTag);
|
||||
Stream<Ingredient.IItemList> colorIngredientStream = Stream.of(dyeList, colorList);
|
||||
Ingredient colorIngredient = Ingredient.fromValues(colorIngredientStream);
|
||||
NonNullList<Ingredient> inputs =
|
||||
NonNullList.of(Ingredient.EMPTY, baseShulkerIngredient, colorIngredient);
|
||||
Block coloredShulkerBox = AllBlocks.TOOLBOXES.get(color)
|
||||
.get();
|
||||
ItemStack output = new ItemStack(coloredShulkerBox);
|
||||
ResourceLocation id = Create.asResource(group + "." + output.getDescriptionId());
|
||||
return new ShapelessRecipe(id, group, output, inputs);
|
||||
});
|
||||
}
|
||||
|
||||
private ToolboxColoringRecipeMaker() {}
|
||||
|
||||
}
|
@ -221,6 +221,12 @@ public class ConnectedInputHandler {
|
||||
data.clear();
|
||||
nbt.getList("Data", NBT.TAG_COMPOUND)
|
||||
.forEach(inbt -> data.add(NBTUtil.readBlockPos((CompoundNBT) inbt)));
|
||||
|
||||
// nbt got wiped -> reset
|
||||
if (data.isEmpty()) {
|
||||
isController = true;
|
||||
data.add(BlockPos.ZERO);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -132,6 +132,17 @@ public class MechanicalCrafterTileEntity extends KineticTileEntity {
|
||||
return MechanicalCrafterBlock.getTargetDirection(getBlockState());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void writeSafe(CompoundNBT compound, boolean clientPacket) {
|
||||
super.writeSafe(compound, clientPacket);
|
||||
if (input == null)
|
||||
return;
|
||||
|
||||
CompoundNBT inputNBT = new CompoundNBT();
|
||||
input.write(inputNBT);
|
||||
compound.put("ConnectedInput", inputNBT);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void write(CompoundNBT compound, boolean clientPacket) {
|
||||
compound.put("Inventory", inventory.serializeNBT());
|
||||
|
@ -149,11 +149,6 @@ public class ControlledContraptionEntity extends AbstractContraptionEntity {
|
||||
if (level.isClientSide)
|
||||
setPos(getX(), getY(), getZ());
|
||||
}
|
||||
|
||||
Vector3d motion = getDeltaMovement();
|
||||
move(motion.x, motion.y, motion.z);
|
||||
if (ContraptionCollider.collideBlocks(this))
|
||||
getController().collided();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -16,8 +16,6 @@ public interface IControlContraption {
|
||||
|
||||
public boolean isValid();
|
||||
|
||||
public void collided();
|
||||
|
||||
public BlockPos getBlockPosition();
|
||||
|
||||
static enum MovementMode implements INamedIconOptions {
|
||||
|
@ -1,6 +1,7 @@
|
||||
package com.simibubi.create.content.contraptions.components.structureMovement;
|
||||
|
||||
import com.simibubi.create.AllTileEntities;
|
||||
import com.simibubi.create.content.contraptions.components.crafter.MechanicalCrafterTileEntity;
|
||||
import com.simibubi.create.content.contraptions.processing.ProcessingInventory;
|
||||
import com.simibubi.create.content.logistics.block.inventories.AdjustableCrateBlock;
|
||||
import com.simibubi.create.content.logistics.block.inventories.BottomlessItemHandler;
|
||||
@ -33,6 +34,9 @@ public class MountedStorage {
|
||||
if (te == null)
|
||||
return false;
|
||||
|
||||
if (te instanceof MechanicalCrafterTileEntity)
|
||||
return false;
|
||||
|
||||
if (AllTileEntities.ADJUSTABLE_CRATE.is(te))
|
||||
return true;
|
||||
if (AllTileEntities.CREATIVE_CRATE.is(te))
|
||||
|
@ -367,9 +367,6 @@ public class ClockworkBearingTileEntity extends KineticTileEntity
|
||||
super.setRemoved();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void collided() {}
|
||||
|
||||
@Override
|
||||
public boolean isAttachedTo(AbstractContraptionEntity contraption) {
|
||||
if (!(contraption.getContraption() instanceof ClockworkContraption))
|
||||
|
@ -287,9 +287,6 @@ public class MechanicalBearingTileEntity extends GeneratingKineticTileEntity
|
||||
return !isRemoved();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void collided() {}
|
||||
|
||||
@Override
|
||||
public boolean isAttachedTo(AbstractContraptionEntity contraption) {
|
||||
return movedContraption == contraption;
|
||||
|
@ -5,6 +5,7 @@ import java.util.List;
|
||||
import com.simibubi.create.content.contraptions.base.KineticTileEntity;
|
||||
import com.simibubi.create.content.contraptions.components.structureMovement.AbstractContraptionEntity;
|
||||
import com.simibubi.create.content.contraptions.components.structureMovement.AssemblyException;
|
||||
import com.simibubi.create.content.contraptions.components.structureMovement.ContraptionCollider;
|
||||
import com.simibubi.create.content.contraptions.components.structureMovement.ControlledContraptionEntity;
|
||||
import com.simibubi.create.content.contraptions.components.structureMovement.IControlContraption;
|
||||
import com.simibubi.create.content.contraptions.components.structureMovement.IDisplayAssemblyExceptions;
|
||||
@ -105,18 +106,25 @@ public abstract class LinearActuatorTileEntity extends KineticTileEntity
|
||||
if ((int) newOffset != (int) offset)
|
||||
visitNewPosition();
|
||||
|
||||
if (contraptionPresent) {
|
||||
if (moveAndCollideContraption()) {
|
||||
movedContraption.setContraptionMotion(Vector3d.ZERO);
|
||||
offset = getGridOffset(offset);
|
||||
resetContraptionToOffset();
|
||||
collided();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (!contraptionPresent || !movedContraption.isStalled())
|
||||
offset = newOffset;
|
||||
|
||||
if (contraptionPresent)
|
||||
applyContraptionMotion();
|
||||
|
||||
int extensionRange = getExtensionRange();
|
||||
if (offset <= 0 || offset >= extensionRange) {
|
||||
offset = offset <= 0 ? 0 : extensionRange;
|
||||
if (!level.isClientSide) {
|
||||
applyContraptionMotion();
|
||||
applyContraptionPosition();
|
||||
moveAndCollideContraption();
|
||||
resetContraptionToOffset();
|
||||
tryDisassemble();
|
||||
if (waitingForSpeedChange) {
|
||||
forceMove = true;
|
||||
@ -192,7 +200,7 @@ public abstract class LinearActuatorTileEntity extends KineticTileEntity
|
||||
if (!clientPacket)
|
||||
return;
|
||||
if (forceMovement)
|
||||
applyContraptionPosition();
|
||||
resetContraptionToOffset();
|
||||
else if (running) {
|
||||
clientOffsetDiff = offset - offsetBefore;
|
||||
offset = offsetBefore;
|
||||
@ -239,28 +247,31 @@ public abstract class LinearActuatorTileEntity extends KineticTileEntity
|
||||
disassemble();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void collided() {
|
||||
protected boolean moveAndCollideContraption() {
|
||||
if (movedContraption == null)
|
||||
return false;
|
||||
if (movedContraption.isStalled()) {
|
||||
movedContraption.setContraptionMotion(Vector3d.ZERO);
|
||||
return false;
|
||||
}
|
||||
|
||||
Vector3d motion = getMotionVector();
|
||||
movedContraption.setContraptionMotion(getMotionVector());
|
||||
movedContraption.move(motion.x, motion.y, motion.z);
|
||||
return ContraptionCollider.collideBlocks(movedContraption);
|
||||
}
|
||||
|
||||
protected void collided() {
|
||||
if (level.isClientSide) {
|
||||
waitingForSpeedChange = true;
|
||||
return;
|
||||
}
|
||||
offset = getGridOffset(offset - getMovementSpeed());
|
||||
applyContraptionPosition();
|
||||
resetContraptionToOffset();
|
||||
tryDisassemble();
|
||||
}
|
||||
|
||||
protected void applyContraptionMotion() {
|
||||
if (movedContraption == null)
|
||||
return;
|
||||
if (movedContraption.isStalled()) {
|
||||
movedContraption.setContraptionMotion(Vector3d.ZERO);
|
||||
return;
|
||||
}
|
||||
movedContraption.setContraptionMotion(getMotionVector());
|
||||
}
|
||||
|
||||
protected void applyContraptionPosition() {
|
||||
protected void resetContraptionToOffset() {
|
||||
if (movedContraption == null)
|
||||
return;
|
||||
Vector3d vec = toPosition(offset);
|
||||
|
@ -81,7 +81,7 @@ public class MechanicalPistonTileEntity extends LinearActuatorTileEntity {
|
||||
BlockPos startPos = BlockPos.ZERO.relative(direction, contraption.initialExtensionProgress);
|
||||
contraption.removeBlocksFromWorld(level, startPos);
|
||||
movedContraption = ControlledContraptionEntity.create(getLevel(), this, contraption);
|
||||
applyContraptionPosition();
|
||||
resetContraptionToOffset();
|
||||
forceMove = true;
|
||||
level.addFreshEntity(movedContraption);
|
||||
|
||||
@ -96,7 +96,7 @@ public class MechanicalPistonTileEntity extends LinearActuatorTileEntity {
|
||||
getLevel().setBlock(worldPosition, getBlockState().setValue(MechanicalPistonBlock.STATE, PistonState.EXTENDED),
|
||||
3 | 16);
|
||||
if (movedContraption != null) {
|
||||
applyContraptionPosition();
|
||||
resetContraptionToOffset();
|
||||
movedContraption.disassemble();
|
||||
AllSoundEvents.CONTRAPTION_DISASSEMBLE.playOnServer(level, worldPosition);
|
||||
}
|
||||
@ -110,7 +110,7 @@ public class MechanicalPistonTileEntity extends LinearActuatorTileEntity {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void collided() {
|
||||
protected void collided() {
|
||||
super.collided();
|
||||
if (!running && getMovementSpeed() > 0)
|
||||
assembleNextTick = true;
|
||||
|
@ -121,7 +121,7 @@ public class PulleyTileEntity extends LinearActuatorTileEntity {
|
||||
return;
|
||||
offset = getGridOffset(offset);
|
||||
if (movedContraption != null)
|
||||
applyContraptionPosition();
|
||||
resetContraptionToOffset();
|
||||
|
||||
if (!level.isClientSide) {
|
||||
if (!remove) {
|
||||
|
@ -16,6 +16,8 @@ import net.minecraft.potion.PotionUtils;
|
||||
import net.minecraft.potion.Potions;
|
||||
import net.minecraft.util.IItemProvider;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.util.text.ITextComponent;
|
||||
import net.minecraft.util.text.TranslationTextComponent;
|
||||
import net.minecraftforge.fluids.FluidAttributes;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
import net.minecraftforge.registries.ForgeRegistries;
|
||||
@ -51,6 +53,11 @@ public class PotionFluid extends VirtualFluid {
|
||||
return color;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ITextComponent getDisplayName(FluidStack stack) {
|
||||
return new TranslationTextComponent(getTranslationKey(stack));
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getTranslationKey(FluidStack stack) {
|
||||
CompoundNBT tag = stack.getOrCreateTag();
|
||||
|
@ -257,10 +257,10 @@ public class BeltRenderer extends SafeTileEntityRenderer<BeltTileEntity> {
|
||||
ms.mulPose(new Vector3f(slopeAlongX ? 0 : 1, 0, slopeAlongX ? 1 : 0).rotationDegrees(slopeAngle));
|
||||
if (onSlope)
|
||||
ms.translate(0, slopeOffset, 0);
|
||||
ms.pushPose();
|
||||
ms.translate(0, -1 / 8f + 0.005f, 0);
|
||||
ShadowRenderHelper.renderShadow(ms, buffer, .75f, .2f);
|
||||
ms.popPose();
|
||||
// ms.pushPose();
|
||||
// ms.translate(0, -1 / 8f + 0.005f, 0);
|
||||
// ShadowRenderHelper.renderShadow(ms, buffer, .75f, .2f);
|
||||
// ms.popPose();
|
||||
if (slopeShadowOnly) {
|
||||
ms.popPose();
|
||||
ms.translate(0, slopeOffset, 0);
|
||||
|
@ -1,7 +1,11 @@
|
||||
package com.simibubi.create.content.curiosities.toolbox;
|
||||
|
||||
import static com.simibubi.create.content.curiosities.toolbox.ToolboxInventory.STACKS_PER_COMPARTMENT;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
import com.jozufozu.flywheel.util.transform.MatrixTransformStack;
|
||||
import com.mojang.blaze3d.matrix.MatrixStack;
|
||||
import com.mojang.blaze3d.systems.RenderSystem;
|
||||
@ -18,6 +22,7 @@ import com.simibubi.create.foundation.utility.Lang;
|
||||
|
||||
import net.minecraft.client.MainWindow;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.settings.KeyBinding;
|
||||
import net.minecraft.client.util.InputMappings;
|
||||
import net.minecraft.item.DyeColor;
|
||||
import net.minecraft.item.ItemStack;
|
||||
@ -42,13 +47,13 @@ public class RadialToolboxMenu extends AbstractSimiScreen {
|
||||
private static final int DEPOSIT = -7;
|
||||
private static final int UNEQUIP = -5;
|
||||
|
||||
public RadialToolboxMenu(List<ToolboxTileEntity> toolboxes, State state) {
|
||||
public RadialToolboxMenu(List<ToolboxTileEntity> toolboxes, State state, @Nullable ToolboxTileEntity selectedBox) {
|
||||
this.toolboxes = toolboxes;
|
||||
this.state = state;
|
||||
hoveredSlot = -1;
|
||||
|
||||
if (state == State.SELECT_ITEM_UNEQUIP || state == State.SELECT_ITEM)
|
||||
selectedBox = toolboxes.get(0);
|
||||
if (selectedBox != null)
|
||||
this.selectedBox = selectedBox;
|
||||
}
|
||||
|
||||
public void prevSlot(int slot) {
|
||||
@ -135,7 +140,7 @@ public class RadialToolboxMenu extends AbstractSimiScreen {
|
||||
ItemStack stackInSlot = inv.filters.get(slot);
|
||||
|
||||
if (!stackInSlot.isEmpty()) {
|
||||
boolean empty = inv.getStackInSlot(slot * ToolboxInventory.STACKS_PER_COMPARTMENT)
|
||||
boolean empty = inv.getStackInSlot(slot * STACKS_PER_COMPARTMENT)
|
||||
.isEmpty();
|
||||
|
||||
(empty ? AllGuiTextures.TOOLBELT_INACTIVE_SLOT : AllGuiTextures.TOOLBELT_SLOT).draw(ms, this, 0,
|
||||
@ -257,7 +262,7 @@ public class RadialToolboxMenu extends AbstractSimiScreen {
|
||||
ItemStack stackInSlot = inv.filters.get(selected);
|
||||
if (stackInSlot.isEmpty())
|
||||
return;
|
||||
if (inv.getStackInSlot(selected * ToolboxInventory.STACKS_PER_COMPARTMENT)
|
||||
if (inv.getStackInSlot(selected * STACKS_PER_COMPARTMENT)
|
||||
.isEmpty())
|
||||
return;
|
||||
|
||||
@ -279,9 +284,8 @@ public class RadialToolboxMenu extends AbstractSimiScreen {
|
||||
if (state == State.SELECT_ITEM || state == State.SELECT_ITEM_UNEQUIP) {
|
||||
ToolboxInventory inv = selectedBox.inventory;
|
||||
ItemStack stackInSlot = inv.filters.get(scrollSlot);
|
||||
if (!stackInSlot.isEmpty()
|
||||
&& !inv.getStackInSlot(scrollSlot * ToolboxInventory.STACKS_PER_COMPARTMENT)
|
||||
.isEmpty())
|
||||
if (!stackInSlot.isEmpty() && !inv.getStackInSlot(scrollSlot * STACKS_PER_COMPARTMENT)
|
||||
.isEmpty())
|
||||
break;
|
||||
}
|
||||
|
||||
@ -305,20 +309,42 @@ public class RadialToolboxMenu extends AbstractSimiScreen {
|
||||
public boolean mouseClicked(double x, double y, int button) {
|
||||
int selected = (scrollMode ? scrollSlot : hoveredSlot);
|
||||
|
||||
if (selected == DEPOSIT) {
|
||||
onClose();
|
||||
ToolboxHandlerClient.COOLDOWN = 2;
|
||||
return true;
|
||||
if (button == 0) {
|
||||
if (selected == DEPOSIT) {
|
||||
onClose();
|
||||
ToolboxHandlerClient.COOLDOWN = 2;
|
||||
return true;
|
||||
}
|
||||
|
||||
if (state == State.SELECT_BOX && selected >= 0 && selected < toolboxes.size()) {
|
||||
state = State.SELECT_ITEM;
|
||||
selectedBox = toolboxes.get(selected);
|
||||
return true;
|
||||
}
|
||||
|
||||
if (state == State.DETACH || state == State.SELECT_ITEM || state == State.SELECT_ITEM_UNEQUIP) {
|
||||
if (selected == UNEQUIP || selected >= 0) {
|
||||
onClose();
|
||||
ToolboxHandlerClient.COOLDOWN = 2;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (state == State.SELECT_BOX && selected >= 0 && selected < toolboxes.size()) {
|
||||
state = State.SELECT_ITEM;
|
||||
selectedBox = toolboxes.get(selected);
|
||||
return true;
|
||||
}
|
||||
if (button == 1) {
|
||||
if (state == State.SELECT_ITEM && toolboxes.size() > 1) {
|
||||
state = State.SELECT_BOX;
|
||||
return true;
|
||||
}
|
||||
|
||||
if (state == State.SELECT_ITEM_UNEQUIP && selected == UNEQUIP) {
|
||||
if (toolboxes.size() > 1) {
|
||||
AllPackets.channel.sendToServer(new ToolboxEquipPacket(selectedBox.getBlockPos(), selected,
|
||||
Minecraft.getInstance().player.inventory.selected));
|
||||
state = State.SELECT_BOX;
|
||||
return true;
|
||||
}
|
||||
|
||||
if (state == State.DETACH || state == State.SELECT_ITEM || state == State.SELECT_ITEM_UNEQUIP) {
|
||||
if (selected == UNEQUIP || selected >= 0) {
|
||||
onClose();
|
||||
ToolboxHandlerClient.COOLDOWN = 2;
|
||||
return true;
|
||||
@ -328,6 +354,34 @@ public class RadialToolboxMenu extends AbstractSimiScreen {
|
||||
return super.mouseClicked(x, y, button);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean keyPressed(int code, int p_keyPressed_2_, int p_keyPressed_3_) {
|
||||
KeyBinding[] hotbarBinds = minecraft.options.keyHotbarSlots;
|
||||
for (int i = 0; i < hotbarBinds.length && i < 8; i++) {
|
||||
if (hotbarBinds[i].matches(code, p_keyPressed_2_)) {
|
||||
|
||||
if (state == State.SELECT_ITEM || state == State.SELECT_ITEM_UNEQUIP) {
|
||||
ToolboxInventory inv = selectedBox.inventory;
|
||||
ItemStack stackInSlot = inv.filters.get(i);
|
||||
if (stackInSlot.isEmpty() || inv.getStackInSlot(i * STACKS_PER_COMPARTMENT)
|
||||
.isEmpty())
|
||||
return false;
|
||||
}
|
||||
|
||||
if (state == State.SELECT_BOX)
|
||||
if (i >= toolboxes.size())
|
||||
return false;
|
||||
|
||||
scrollMode = true;
|
||||
scrollSlot = i;
|
||||
mouseClicked(0, 0, 0);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return super.keyPressed(code, p_keyPressed_2_, p_keyPressed_3_);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean keyReleased(int code, int p_keyPressed_2_, int p_keyPressed_3_) {
|
||||
InputMappings.Input mouseKey = InputMappings.getKey(code, p_keyPressed_2_);
|
||||
|
@ -35,7 +35,6 @@ import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.math.BlockRayTraceResult;
|
||||
import net.minecraft.util.math.shapes.ISelectionContext;
|
||||
import net.minecraft.util.math.shapes.VoxelShape;
|
||||
import net.minecraft.util.text.ITextComponent;
|
||||
import net.minecraft.world.IBlockReader;
|
||||
import net.minecraft.world.IWorld;
|
||||
import net.minecraft.world.World;
|
||||
@ -79,8 +78,10 @@ public class ToolboxBlock extends HorizontalBlock implements IWaterLoggable, ITE
|
||||
if (stack == null)
|
||||
return;
|
||||
withTileEntityDo(worldIn, pos, te -> {
|
||||
te.readInventory(stack.getOrCreateTag()
|
||||
.getCompound("Inventory"));
|
||||
CompoundNBT orCreateTag = stack.getOrCreateTag();
|
||||
te.readInventory(orCreateTag.getCompound("Inventory"));
|
||||
if (orCreateTag.contains("UniqueId"))
|
||||
te.setUniqueId(orCreateTag.getUUID("UniqueId"));
|
||||
if (stack.hasCustomHoverName())
|
||||
te.setCustomName(stack.getHoverName());
|
||||
});
|
||||
@ -111,16 +112,16 @@ public class ToolboxBlock extends HorizontalBlock implements IWaterLoggable, ITE
|
||||
public ItemStack getCloneItemStack(IBlockReader world, BlockPos pos, BlockState state) {
|
||||
ItemStack item = new ItemStack(this);
|
||||
Optional<ToolboxTileEntity> tileEntityOptional = getTileEntityOptional(world, pos);
|
||||
|
||||
CompoundNBT tag = item.getOrCreateTag();
|
||||
|
||||
CompoundNBT inv = tileEntityOptional.map(tb -> tb.inventory.serializeNBT())
|
||||
.orElse(new CompoundNBT());
|
||||
tag.put("Inventory", inv);
|
||||
|
||||
ITextComponent customName = tileEntityOptional.map(ToolboxTileEntity::getCustomName)
|
||||
.orElse(null);
|
||||
if (customName != null)
|
||||
item.setHoverName(customName);
|
||||
tileEntityOptional.map(tb -> tb.getUniqueId())
|
||||
.ifPresent(uid -> tag.putUUID("UniqueId", uid));
|
||||
tileEntityOptional.map(ToolboxTileEntity::getCustomName)
|
||||
.ifPresent(item::setHoverName);
|
||||
return item;
|
||||
}
|
||||
|
||||
@ -134,8 +135,7 @@ public class ToolboxBlock extends HorizontalBlock implements IWaterLoggable, ITE
|
||||
}
|
||||
|
||||
@Override
|
||||
public VoxelShape getShape(BlockState state, IBlockReader world, BlockPos pos,
|
||||
ISelectionContext context) {
|
||||
public VoxelShape getShape(BlockState state, IBlockReader world, BlockPos pos, ISelectionContext context) {
|
||||
return AllShapes.TOOLBOX.get(state.getValue(FACING));
|
||||
}
|
||||
|
||||
@ -156,7 +156,8 @@ public class ToolboxBlock extends HorizontalBlock implements IWaterLoggable, ITE
|
||||
if (color != null && color != this.color) {
|
||||
if (world.isClientSide)
|
||||
return ActionResultType.SUCCESS;
|
||||
BlockState newState = BlockHelper.copyProperties(state, AllBlocks.TOOLBOXES.get(color).getDefaultState());
|
||||
BlockState newState = BlockHelper.copyProperties(state, AllBlocks.TOOLBOXES.get(color)
|
||||
.getDefaultState());
|
||||
world.setBlockAndUpdate(pos, newState);
|
||||
return ActionResultType.SUCCESS;
|
||||
}
|
||||
|
@ -137,7 +137,7 @@ public class ToolboxContainer extends ContainerBase<ToolboxTileEntity> {
|
||||
|
||||
// Hidden Slots
|
||||
for (int i = 1; i < STACKS_PER_COMPARTMENT; i++)
|
||||
addSlot(new SlotItemHandler(inventory, baseIndex + i, -100, -100));
|
||||
addSlot(new SlotItemHandler(inventory, baseIndex + i, -10000, -10000));
|
||||
}
|
||||
|
||||
addPlayerSlots(-12, 166);
|
||||
|
@ -5,6 +5,7 @@ import static com.simibubi.create.foundation.gui.AllGuiTextures.TOOLBELT_HOTBAR_
|
||||
import static com.simibubi.create.foundation.gui.AllGuiTextures.TOOLBELT_SELECTED_OFF;
|
||||
import static com.simibubi.create.foundation.gui.AllGuiTextures.TOOLBELT_SELECTED_ON;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
@ -108,6 +109,11 @@ public class ToolboxHandlerClient {
|
||||
World level = player.level;
|
||||
|
||||
List<ToolboxTileEntity> toolboxes = ToolboxHandler.getNearest(player.level, player, 8);
|
||||
|
||||
if (!toolboxes.isEmpty())
|
||||
Collections.sort(toolboxes, (te1, te2) -> te1.getUniqueId()
|
||||
.compareTo(te2.getUniqueId()));
|
||||
|
||||
CompoundNBT compound = player.getPersistentData()
|
||||
.getCompound("CreateToolboxData");
|
||||
|
||||
@ -123,8 +129,8 @@ public class ToolboxHandlerClient {
|
||||
if (canReachToolbox) {
|
||||
TileEntity blockEntity = level.getBlockEntity(pos);
|
||||
if (blockEntity instanceof ToolboxTileEntity) {
|
||||
RadialToolboxMenu screen = new RadialToolboxMenu(ImmutableList.of((ToolboxTileEntity) blockEntity),
|
||||
RadialToolboxMenu.State.SELECT_ITEM_UNEQUIP);
|
||||
RadialToolboxMenu screen = new RadialToolboxMenu(toolboxes,
|
||||
RadialToolboxMenu.State.SELECT_ITEM_UNEQUIP, (ToolboxTileEntity) blockEntity);
|
||||
screen.prevSlot(compound.getCompound(slotKey)
|
||||
.getInt("Slot"));
|
||||
ScreenOpener.open(screen);
|
||||
@ -132,7 +138,7 @@ public class ToolboxHandlerClient {
|
||||
}
|
||||
}
|
||||
|
||||
ScreenOpener.open(new RadialToolboxMenu(ImmutableList.of(), RadialToolboxMenu.State.DETACH));
|
||||
ScreenOpener.open(new RadialToolboxMenu(ImmutableList.of(), RadialToolboxMenu.State.DETACH, null));
|
||||
return;
|
||||
}
|
||||
|
||||
@ -140,9 +146,9 @@ public class ToolboxHandlerClient {
|
||||
return;
|
||||
|
||||
if (toolboxes.size() == 1)
|
||||
ScreenOpener.open(new RadialToolboxMenu(toolboxes, RadialToolboxMenu.State.SELECT_ITEM));
|
||||
ScreenOpener.open(new RadialToolboxMenu(toolboxes, RadialToolboxMenu.State.SELECT_ITEM, toolboxes.get(0)));
|
||||
else
|
||||
ScreenOpener.open(new RadialToolboxMenu(toolboxes, RadialToolboxMenu.State.SELECT_BOX));
|
||||
ScreenOpener.open(new RadialToolboxMenu(toolboxes, RadialToolboxMenu.State.SELECT_BOX, null));
|
||||
}
|
||||
|
||||
public static void renderOverlay(MatrixStack ms, IRenderTypeBuffer buffer, int light, int overlay,
|
||||
|
@ -10,6 +10,8 @@ import com.simibubi.create.AllItems;
|
||||
import com.simibubi.create.AllTags.AllItemTags;
|
||||
import com.simibubi.create.foundation.utility.NBTHelper;
|
||||
|
||||
import net.minecraft.block.ShulkerBoxBlock;
|
||||
import net.minecraft.item.BlockItem;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.CompoundNBT;
|
||||
import net.minecraftforge.common.util.Constants.NBT;
|
||||
@ -91,6 +93,12 @@ public class ToolboxInventory extends ItemStackHandler {
|
||||
public boolean isItemValid(int slot, ItemStack stack) {
|
||||
if (AllItemTags.TOOLBOXES.matches(stack))
|
||||
return false;
|
||||
if (stack.getItem() instanceof BlockItem) {
|
||||
BlockItem blockItem = (BlockItem) stack.getItem();
|
||||
if (blockItem.getBlock() instanceof ShulkerBoxBlock)
|
||||
return false;
|
||||
}
|
||||
|
||||
if (slot < 0 || slot >= getSlots())
|
||||
return false;
|
||||
int compartment = slot / STACKS_PER_COMPARTMENT;
|
||||
@ -138,6 +146,7 @@ public class ToolboxInventory extends ItemStackHandler {
|
||||
protected void onContentsChanged(int slot) {
|
||||
if (!settling && !te.getWorld().isClientSide)
|
||||
settle(slot / STACKS_PER_COMPARTMENT);
|
||||
te.sendData();
|
||||
super.onContentsChanged(slot);
|
||||
}
|
||||
|
||||
|
@ -7,6 +7,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Map.Entry;
|
||||
import java.util.Set;
|
||||
import java.util.UUID;
|
||||
import java.util.WeakHashMap;
|
||||
|
||||
import com.simibubi.create.AllBlocks;
|
||||
@ -48,6 +49,7 @@ public class ToolboxTileEntity extends SmartTileEntity implements INamedContaine
|
||||
public LerpedFloat drawers = LerpedFloat.linear()
|
||||
.startWithValue(0);
|
||||
|
||||
UUID uniqueId;
|
||||
ToolboxInventory inventory;
|
||||
LazyOptional<IItemHandler> inventoryProvider;
|
||||
ResetableLazy<DyeColor> colorProvider;
|
||||
@ -280,6 +282,8 @@ public class ToolboxTileEntity extends SmartTileEntity implements INamedContaine
|
||||
protected void fromTag(BlockState state, CompoundNBT compound, boolean clientPacket) {
|
||||
inventory.deserializeNBT(compound.getCompound("Inventory"));
|
||||
super.fromTag(state, compound, clientPacket);
|
||||
if (compound.contains("UniqueId", 11))
|
||||
this.uniqueId = compound.getUUID("UniqueId");
|
||||
if (compound.contains("CustomName", 8))
|
||||
this.customName = ITextComponent.Serializer.fromJson(compound.getString("CustomName"));
|
||||
if (clientPacket)
|
||||
@ -288,7 +292,12 @@ public class ToolboxTileEntity extends SmartTileEntity implements INamedContaine
|
||||
|
||||
@Override
|
||||
protected void write(CompoundNBT compound, boolean clientPacket) {
|
||||
if (uniqueId == null)
|
||||
uniqueId = UUID.randomUUID();
|
||||
|
||||
compound.put("Inventory", inventory.serializeNBT());
|
||||
compound.putUUID("UniqueId", uniqueId);
|
||||
|
||||
if (customName != null)
|
||||
compound.putString("CustomName", ITextComponent.Serializer.toJson(customName));
|
||||
super.write(compound, clientPacket);
|
||||
@ -361,6 +370,14 @@ public class ToolboxTileEntity extends SmartTileEntity implements INamedContaine
|
||||
inventory.deserializeNBT(compound);
|
||||
}
|
||||
|
||||
public void setUniqueId(UUID uniqueId) {
|
||||
this.uniqueId = uniqueId;
|
||||
}
|
||||
|
||||
public UUID getUniqueId() {
|
||||
return uniqueId;
|
||||
}
|
||||
|
||||
public void setCustomName(ITextComponent customName) {
|
||||
this.customName = customName;
|
||||
}
|
||||
|
@ -12,6 +12,7 @@ import com.simibubi.create.AllBlocks;
|
||||
import com.simibubi.create.content.contraptions.base.KineticTileEntity;
|
||||
import com.simibubi.create.content.contraptions.relays.belt.transport.TransportedItemStack;
|
||||
import com.simibubi.create.content.logistics.block.funnel.AbstractFunnelBlock;
|
||||
import com.simibubi.create.content.logistics.block.funnel.FunnelBlock;
|
||||
import com.simibubi.create.foundation.config.AllConfigs;
|
||||
import com.simibubi.create.foundation.networking.AllPackets;
|
||||
import com.simibubi.create.foundation.tileEntity.TileEntityBehaviour;
|
||||
@ -332,8 +333,8 @@ public class EjectorTileEntity extends KineticTileEntity {
|
||||
float volume = .125f;
|
||||
float pitch = 1.5f - lidProgress.getValue();
|
||||
if (((int) level.getGameTime()) % soundRate == 0 && doLogic)
|
||||
level.playSound(null, worldPosition, SoundEvents.WOODEN_BUTTON_CLICK_OFF, SoundCategory.BLOCKS, volume,
|
||||
pitch);
|
||||
level.playSound(null, worldPosition, SoundEvents.WOODEN_BUTTON_CLICK_OFF, SoundCategory.BLOCKS,
|
||||
volume, pitch);
|
||||
}
|
||||
}
|
||||
|
||||
@ -342,7 +343,7 @@ public class EjectorTileEntity extends KineticTileEntity {
|
||||
}
|
||||
|
||||
private boolean scanTrajectoryForObstacles(int time) {
|
||||
if (time == 0)
|
||||
if (time <= 2)
|
||||
return false;
|
||||
|
||||
Vector3d source = getLaunchedItemLocation(time);
|
||||
@ -350,7 +351,16 @@ public class EjectorTileEntity extends KineticTileEntity {
|
||||
|
||||
BlockRayTraceResult rayTraceBlocks =
|
||||
level.clip(new RayTraceContext(source, target, BlockMode.COLLIDER, FluidMode.NONE, null));
|
||||
if (rayTraceBlocks.getType() == Type.MISS) {
|
||||
boolean miss = rayTraceBlocks.getType() == Type.MISS;
|
||||
|
||||
if (!miss && rayTraceBlocks.getType() == Type.BLOCK) {
|
||||
BlockState blockState = level.getBlockState(rayTraceBlocks.getBlockPos());
|
||||
if (FunnelBlock.isFunnel(blockState) && blockState.hasProperty(FunnelBlock.EXTRACTING)
|
||||
&& blockState.getValue(FunnelBlock.EXTRACTING))
|
||||
miss = true;
|
||||
}
|
||||
|
||||
if (miss) {
|
||||
if (earlyTarget != null && earlyTargetTime < time + 1) {
|
||||
earlyTarget = null;
|
||||
earlyTargetTime = 0;
|
||||
@ -360,7 +370,8 @@ public class EjectorTileEntity extends KineticTileEntity {
|
||||
|
||||
Vector3d vec = rayTraceBlocks.getLocation();
|
||||
earlyTarget = Pair.of(vec.add(Vector3d.atLowerCornerOf(rayTraceBlocks.getDirection()
|
||||
.getNormal()).scale(.25f)), rayTraceBlocks.getBlockPos());
|
||||
.getNormal())
|
||||
.scale(.25f)), rayTraceBlocks.getBlockPos());
|
||||
earlyTargetTime = (float) (time + (source.distanceTo(vec) / source.distanceTo(target)));
|
||||
sendData();
|
||||
return true;
|
||||
|
@ -53,7 +53,14 @@ public class EntityLauncher {
|
||||
|
||||
public Vector3d getGlobalPos(double t, Direction d, BlockPos launcher) {
|
||||
Vector3d start = new Vector3d(launcher.getX() + .5f, launcher.getY() + .5f, launcher.getZ() + .5f);
|
||||
Vector3d vec = new Vector3d(0, y(t), x(t));
|
||||
|
||||
float xt = x(t);
|
||||
float yt = y(t);
|
||||
double progress = MathHelper.clamp(t / getTotalFlyingTicks(), 0, 1);
|
||||
double correctionStrength = Math.pow(progress, 3);
|
||||
|
||||
Vector3d vec = new Vector3d(0, yt + (verticalDistance - yt) * correctionStrength * 0.5f,
|
||||
xt + (horizontalDistance - xt) * correctionStrength);
|
||||
return VecHelper.rotate(vec, 180 + AngleHelper.horizontalAngle(d), Axis.Y)
|
||||
.add(start);
|
||||
}
|
||||
|
@ -493,10 +493,8 @@ public class StandardRecipeGen extends CreateRecipeProvider {
|
||||
.pattern("SCS")),
|
||||
|
||||
MECHANICAL_PUMP = create(AllBlocks.MECHANICAL_PUMP).unlockedByTag(I::copper)
|
||||
.viaShaped(b -> b.define('P', I.cog())
|
||||
.define('S', AllBlocks.FLUID_PIPE.get())
|
||||
.pattern("P")
|
||||
.pattern("S")),
|
||||
.viaShapeless(b -> b.requires(I.cog())
|
||||
.requires(AllBlocks.FLUID_PIPE.get())),
|
||||
|
||||
SMART_FLUID_PIPE = create(AllBlocks.SMART_FLUID_PIPE).unlockedByTag(I::copper)
|
||||
.viaShaped(b -> b.define('P', I.electronTube())
|
||||
@ -599,10 +597,8 @@ public class StandardRecipeGen extends CreateRecipeProvider {
|
||||
.pattern("P")),
|
||||
|
||||
DEPOT = create(AllBlocks.DEPOT).unlockedBy(I::andesiteCasing)
|
||||
.viaShaped(b -> b.define('A', I.andesite())
|
||||
.define('I', I.andesiteCasing())
|
||||
.pattern("A")
|
||||
.pattern("I")),
|
||||
.viaShapeless(b -> b.requires(I.andesite())
|
||||
.requires(I.andesiteCasing())),
|
||||
|
||||
WEIGHTED_EJECTOR = create(AllBlocks.WEIGHTED_EJECTOR).unlockedBy(I::andesiteCasing)
|
||||
.viaShaped(b -> b.define('A', I.goldSheet())
|
||||
|
Loading…
Reference in New Issue
Block a user