mirror of
https://github.com/Creators-of-Create/Create.git
synced 2024-12-29 08:27:03 +01:00
Merge branch 'mc1.15/dev' into mc1.16/dev
This commit is contained in:
commit
47bd1d9c93
37 changed files with 301 additions and 194 deletions
|
@ -407,19 +407,19 @@ a3a11524cd3515fc01d905767b4b7ea782adaf03 assets/create/blockstates/yellow_seat.j
|
||||||
7f39521b211441f5c3e06d60c5978cebe16cacfb assets/create/blockstates/zinc_block.json
|
7f39521b211441f5c3e06d60c5978cebe16cacfb assets/create/blockstates/zinc_block.json
|
||||||
b7181bcd8182b2f17088e5aa881f374c9c65470c assets/create/blockstates/zinc_ore.json
|
b7181bcd8182b2f17088e5aa881f374c9c65470c assets/create/blockstates/zinc_ore.json
|
||||||
768a724d6c921cb92790364cf7a692fe8742a885 assets/create/lang/en_ud.json
|
768a724d6c921cb92790364cf7a692fe8742a885 assets/create/lang/en_ud.json
|
||||||
900d337c7dab1b79c842e7ebc33844900e8caa42 assets/create/lang/en_us.json
|
3060ba1eee371d642e0590c3d6e99c2be397c7f5 assets/create/lang/en_us.json
|
||||||
c1420042a70e66de459e9c621b2fd141338dddd7 assets/create/lang/unfinished/de_de.json
|
4da96bffe4f68f364977bd3b0a0e5d43a850e90b assets/create/lang/unfinished/de_de.json
|
||||||
e6aefcddb48f51f66cd91d36247e3aa5cbdba76a assets/create/lang/unfinished/es_es.json
|
3b3e7b694b75ab50acfe911935f80da0b3234010 assets/create/lang/unfinished/es_es.json
|
||||||
671eb2555a62c1726dc63a02643a9fd5c7c73410 assets/create/lang/unfinished/es_mx.json
|
20d7a808b485b9140bce1c4c483c7fc2218a0611 assets/create/lang/unfinished/es_mx.json
|
||||||
418f0a37de376eb97d7801a72c7b984e589f8736 assets/create/lang/unfinished/fr_fr.json
|
1e9f530d590556eac0c4d08750d3ebbd83b504f2 assets/create/lang/unfinished/fr_fr.json
|
||||||
7831ce35531e76bd1c6eb2902072ef2945bb1f9b assets/create/lang/unfinished/it_it.json
|
a604e3bf8d1b28d4f77cd4fb5b63f5d58988a507 assets/create/lang/unfinished/it_it.json
|
||||||
c9ec5aca9c2b57efff7863b6781a1c0a3c7a2a20 assets/create/lang/unfinished/ja_jp.json
|
371ef25dcdbd268d1f96d19ccd56413c93425ced assets/create/lang/unfinished/ja_jp.json
|
||||||
36d6decedef0921ed6db504a1b52a3c013072202 assets/create/lang/unfinished/ko_kr.json
|
7206826ff926de6a04145a17928c00ea28762404 assets/create/lang/unfinished/ko_kr.json
|
||||||
5c373cd9c2db0214d9cf763a07b579da110e2c20 assets/create/lang/unfinished/nl_nl.json
|
411d5197f3b5eb75ef7033685fb24df1c02a959f assets/create/lang/unfinished/nl_nl.json
|
||||||
0dc551e818fcffb086e9ca1d98df645a605d3679 assets/create/lang/unfinished/pt_br.json
|
59756083e6d04f649e860fed9b13657fa12f919b assets/create/lang/unfinished/pt_br.json
|
||||||
430943447a11762cd5a5d74f20ef75de6cbe1808 assets/create/lang/unfinished/ru_ru.json
|
184e6225f8a752a526e61fd6cd1f47506efd846b assets/create/lang/unfinished/ru_ru.json
|
||||||
5062ede649b6153cfe44b795fe7ed1da8f726c55 assets/create/lang/unfinished/zh_cn.json
|
58fb522692bf7b15d8fb851f0a807fab04620d45 assets/create/lang/unfinished/zh_cn.json
|
||||||
b14c82179c5a90962c187f3e2ac07d1cd339fab2 assets/create/lang/unfinished/zh_tw.json
|
1e2f8564c19f2fe35ce91e65831b72ab44bedea1 assets/create/lang/unfinished/zh_tw.json
|
||||||
487a511a01b2a4531fb672f917922312db78f958 assets/create/models/block/acacia_window.json
|
487a511a01b2a4531fb672f917922312db78f958 assets/create/models/block/acacia_window.json
|
||||||
b48060cba1a382f373a05bf0039054053eccf076 assets/create/models/block/acacia_window_pane_noside.json
|
b48060cba1a382f373a05bf0039054053eccf076 assets/create/models/block/acacia_window_pane_noside.json
|
||||||
3066db1bf03cffa1a9c7fbacf47ae586632f4eb3 assets/create/models/block/acacia_window_pane_noside_alt.json
|
3066db1bf03cffa1a9c7fbacf47ae586632f4eb3 assets/create/models/block/acacia_window_pane_noside_alt.json
|
||||||
|
@ -2970,7 +2970,7 @@ af5854ee2fa3be195ad9abcdeebe6ed7306b651c data/create/recipes/crafting/kinetics/s
|
||||||
8494f5fcd85a740fa0f0384e3522d8cdd905ce49 data/create/recipes/crafting/kinetics/turntable.json
|
8494f5fcd85a740fa0f0384e3522d8cdd905ce49 data/create/recipes/crafting/kinetics/turntable.json
|
||||||
057c889b0a306f44b8835c896663154ccd9ff12f data/create/recipes/crafting/kinetics/vertical_gearboxfrom_conversion.json
|
057c889b0a306f44b8835c896663154ccd9ff12f data/create/recipes/crafting/kinetics/vertical_gearboxfrom_conversion.json
|
||||||
4fb009b86a51b2e259bd1f73848803f6276dd820 data/create/recipes/crafting/kinetics/water_wheel.json
|
4fb009b86a51b2e259bd1f73848803f6276dd820 data/create/recipes/crafting/kinetics/water_wheel.json
|
||||||
254265966b3c7c7a307e908c313a15ce92d20c83 data/create/recipes/crafting/kinetics/weighted_ejector.json
|
06b5b371ae9dd81df8fd3dee6d3559b1ed0db35c data/create/recipes/crafting/kinetics/weighted_ejector.json
|
||||||
f508d510576c93712e7f5265345a32e8818bbf0d data/create/recipes/crafting/kinetics/whisk.json
|
f508d510576c93712e7f5265345a32e8818bbf0d data/create/recipes/crafting/kinetics/whisk.json
|
||||||
d80a741d2f0d4f742217b43d7e4d37f003ec9f9d data/create/recipes/crafting/kinetics/white_sail.json
|
d80a741d2f0d4f742217b43d7e4d37f003ec9f9d data/create/recipes/crafting/kinetics/white_sail.json
|
||||||
f4d88aa2edea548d29cf2678a111d8bb5db7720a data/create/recipes/crafting/kinetics/white_seat.json
|
f4d88aa2edea548d29cf2678a111d8bb5db7720a data/create/recipes/crafting/kinetics/white_seat.json
|
||||||
|
|
|
@ -89,8 +89,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "x",
|
"sticky_west": "true",
|
||||||
"sticky_west": "true"
|
"axis": "x"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_x_sticky",
|
"model": "create:block/radial_chassis_side_x_sticky",
|
||||||
|
@ -99,8 +99,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "y",
|
"sticky_west": "true",
|
||||||
"sticky_west": "true"
|
"axis": "y"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_y_sticky",
|
"model": "create:block/radial_chassis_side_y_sticky",
|
||||||
|
@ -109,8 +109,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "z",
|
"sticky_west": "true",
|
||||||
"sticky_west": "true"
|
"axis": "z"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_z_sticky",
|
"model": "create:block/radial_chassis_side_z_sticky",
|
||||||
|
@ -119,8 +119,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "x",
|
"sticky_west": "false",
|
||||||
"sticky_west": "false"
|
"axis": "x"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_x",
|
"model": "create:block/radial_chassis_side_x",
|
||||||
|
@ -129,8 +129,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "y",
|
"sticky_west": "false",
|
||||||
"sticky_west": "false"
|
"axis": "y"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_y",
|
"model": "create:block/radial_chassis_side_y",
|
||||||
|
@ -139,8 +139,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "z",
|
"sticky_west": "false",
|
||||||
"sticky_west": "false"
|
"axis": "z"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_z",
|
"model": "create:block/radial_chassis_side_z",
|
||||||
|
@ -149,8 +149,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "x",
|
"sticky_north": "true",
|
||||||
"sticky_north": "true"
|
"axis": "x"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_x_sticky"
|
"model": "create:block/radial_chassis_side_x_sticky"
|
||||||
|
@ -158,8 +158,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "y",
|
"sticky_north": "true",
|
||||||
"sticky_north": "true"
|
"axis": "y"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_y_sticky",
|
"model": "create:block/radial_chassis_side_y_sticky",
|
||||||
|
@ -168,8 +168,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "z",
|
"sticky_north": "true",
|
||||||
"sticky_north": "true"
|
"axis": "z"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_x_sticky",
|
"model": "create:block/radial_chassis_side_x_sticky",
|
||||||
|
@ -178,8 +178,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "x",
|
"sticky_north": "false",
|
||||||
"sticky_north": "false"
|
"axis": "x"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_x"
|
"model": "create:block/radial_chassis_side_x"
|
||||||
|
@ -187,8 +187,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "y",
|
"sticky_north": "false",
|
||||||
"sticky_north": "false"
|
"axis": "y"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_y",
|
"model": "create:block/radial_chassis_side_y",
|
||||||
|
@ -197,8 +197,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "z",
|
"sticky_north": "false",
|
||||||
"sticky_north": "false"
|
"axis": "z"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_x",
|
"model": "create:block/radial_chassis_side_x",
|
||||||
|
@ -207,8 +207,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "x",
|
"sticky_east": "true",
|
||||||
"sticky_east": "true"
|
"axis": "x"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_x_sticky",
|
"model": "create:block/radial_chassis_side_x_sticky",
|
||||||
|
@ -217,8 +217,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "y",
|
"sticky_east": "true",
|
||||||
"sticky_east": "true"
|
"axis": "y"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_y_sticky",
|
"model": "create:block/radial_chassis_side_y_sticky",
|
||||||
|
@ -227,8 +227,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "z",
|
"sticky_east": "true",
|
||||||
"sticky_east": "true"
|
"axis": "z"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_z_sticky"
|
"model": "create:block/radial_chassis_side_z_sticky"
|
||||||
|
@ -236,8 +236,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "x",
|
"sticky_east": "false",
|
||||||
"sticky_east": "false"
|
"axis": "x"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_x",
|
"model": "create:block/radial_chassis_side_x",
|
||||||
|
@ -246,8 +246,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "y",
|
"sticky_east": "false",
|
||||||
"sticky_east": "false"
|
"axis": "y"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_y",
|
"model": "create:block/radial_chassis_side_y",
|
||||||
|
@ -256,8 +256,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"axis": "z",
|
"sticky_east": "false",
|
||||||
"sticky_east": "false"
|
"axis": "z"
|
||||||
},
|
},
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/radial_chassis_side_z"
|
"model": "create:block/radial_chassis_side_z"
|
||||||
|
|
|
@ -1742,7 +1742,7 @@
|
||||||
"create.ponder.funnel_transfer.header": "Direct transfer",
|
"create.ponder.funnel_transfer.header": "Direct transfer",
|
||||||
"create.ponder.funnel_transfer.text_1": "Funnels cannot ever transfer between closed inventories directly.",
|
"create.ponder.funnel_transfer.text_1": "Funnels cannot ever transfer between closed inventories directly.",
|
||||||
"create.ponder.funnel_transfer.text_2": "Chutes or Smart chutes might be more suitable for such purposes.",
|
"create.ponder.funnel_transfer.text_2": "Chutes or Smart chutes might be more suitable for such purposes.",
|
||||||
"create.ponder.funnel_transfer.text_3": "Same applies for horizontal movement.\nA mechanical belt should help here.",
|
"create.ponder.funnel_transfer.text_3": "Same applies for horizontal movement. A mechanical belt should help here.",
|
||||||
|
|
||||||
"create.ponder.furnace_engine.header": "Generating Rotational Force using the Furnace Engine",
|
"create.ponder.furnace_engine.header": "Generating Rotational Force using the Furnace Engine",
|
||||||
"create.ponder.furnace_engine.text_1": "Furnace Engines generate Rotational Force while their attached Furnace is running",
|
"create.ponder.furnace_engine.text_1": "Furnace Engines generate Rotational Force while their attached Furnace is running",
|
||||||
|
@ -1932,6 +1932,10 @@
|
||||||
"create.ponder.millstone.text_4": "After some time, the result can be obtained via Right-click",
|
"create.ponder.millstone.text_4": "After some time, the result can be obtained via Right-click",
|
||||||
"create.ponder.millstone.text_5": "The outputs can also be extracted by automation",
|
"create.ponder.millstone.text_5": "The outputs can also be extracted by automation",
|
||||||
|
|
||||||
|
"create.ponder.nixie_tube.header": "Using Nixie Tubes",
|
||||||
|
"create.ponder.nixie_tube.text_1": "When powered by Redstone, Nixie Tubes will display the redstone signals' strength",
|
||||||
|
"create.ponder.nixie_tube.text_2": "Using name tags edited with an anvil, custom text can be displayed",
|
||||||
|
|
||||||
"create.ponder.piston_pole.header": "Piston Extension Poles",
|
"create.ponder.piston_pole.header": "Piston Extension Poles",
|
||||||
"create.ponder.piston_pole.text_1": "Without attached Poles, a Mechanical Piston cannot move",
|
"create.ponder.piston_pole.text_1": "Without attached Poles, a Mechanical Piston cannot move",
|
||||||
"create.ponder.piston_pole.text_2": "The Length of pole added at its back determines the Extension Range",
|
"create.ponder.piston_pole.text_2": "The Length of pole added at its back determines the Extension Range",
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 1135",
|
"_": "Missing Localizations: 1138",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -1743,7 +1743,7 @@
|
||||||
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
||||||
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
||||||
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
||||||
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement.\nA mechanical belt should help here.",
|
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement. A mechanical belt should help here.",
|
||||||
|
|
||||||
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
||||||
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
||||||
|
@ -1933,6 +1933,10 @@
|
||||||
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
||||||
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
||||||
|
|
||||||
|
"create.ponder.nixie_tube.header": "UNLOCALIZED: Using Nixie Tubes",
|
||||||
|
"create.ponder.nixie_tube.text_1": "UNLOCALIZED: When powered by Redstone, Nixie Tubes will display the redstone signals' strength",
|
||||||
|
"create.ponder.nixie_tube.text_2": "UNLOCALIZED: Using name tags edited with an anvil, custom text can be displayed",
|
||||||
|
|
||||||
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
||||||
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
||||||
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 602",
|
"_": "Missing Localizations: 605",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -1743,7 +1743,7 @@
|
||||||
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
||||||
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
||||||
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
||||||
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement.\nA mechanical belt should help here.",
|
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement. A mechanical belt should help here.",
|
||||||
|
|
||||||
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
||||||
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
||||||
|
@ -1933,6 +1933,10 @@
|
||||||
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
||||||
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
||||||
|
|
||||||
|
"create.ponder.nixie_tube.header": "UNLOCALIZED: Using Nixie Tubes",
|
||||||
|
"create.ponder.nixie_tube.text_1": "UNLOCALIZED: When powered by Redstone, Nixie Tubes will display the redstone signals' strength",
|
||||||
|
"create.ponder.nixie_tube.text_2": "UNLOCALIZED: Using name tags edited with an anvil, custom text can be displayed",
|
||||||
|
|
||||||
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
||||||
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
||||||
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 1262",
|
"_": "Missing Localizations: 1265",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -1743,7 +1743,7 @@
|
||||||
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
||||||
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
||||||
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
||||||
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement.\nA mechanical belt should help here.",
|
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement. A mechanical belt should help here.",
|
||||||
|
|
||||||
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
||||||
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
||||||
|
@ -1933,6 +1933,10 @@
|
||||||
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
||||||
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
||||||
|
|
||||||
|
"create.ponder.nixie_tube.header": "UNLOCALIZED: Using Nixie Tubes",
|
||||||
|
"create.ponder.nixie_tube.text_1": "UNLOCALIZED: When powered by Redstone, Nixie Tubes will display the redstone signals' strength",
|
||||||
|
"create.ponder.nixie_tube.text_2": "UNLOCALIZED: Using name tags edited with an anvil, custom text can be displayed",
|
||||||
|
|
||||||
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
||||||
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
||||||
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 1159",
|
"_": "Missing Localizations: 1162",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -1743,7 +1743,7 @@
|
||||||
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
||||||
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
||||||
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
||||||
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement.\nA mechanical belt should help here.",
|
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement. A mechanical belt should help here.",
|
||||||
|
|
||||||
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
||||||
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
||||||
|
@ -1933,6 +1933,10 @@
|
||||||
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
||||||
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
||||||
|
|
||||||
|
"create.ponder.nixie_tube.header": "UNLOCALIZED: Using Nixie Tubes",
|
||||||
|
"create.ponder.nixie_tube.text_1": "UNLOCALIZED: When powered by Redstone, Nixie Tubes will display the redstone signals' strength",
|
||||||
|
"create.ponder.nixie_tube.text_2": "UNLOCALIZED: Using name tags edited with an anvil, custom text can be displayed",
|
||||||
|
|
||||||
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
||||||
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
||||||
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 619",
|
"_": "Missing Localizations: 622",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -1743,7 +1743,7 @@
|
||||||
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
||||||
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
||||||
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
||||||
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement.\nA mechanical belt should help here.",
|
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement. A mechanical belt should help here.",
|
||||||
|
|
||||||
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
||||||
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
||||||
|
@ -1933,6 +1933,10 @@
|
||||||
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
||||||
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
||||||
|
|
||||||
|
"create.ponder.nixie_tube.header": "UNLOCALIZED: Using Nixie Tubes",
|
||||||
|
"create.ponder.nixie_tube.text_1": "UNLOCALIZED: When powered by Redstone, Nixie Tubes will display the redstone signals' strength",
|
||||||
|
"create.ponder.nixie_tube.text_2": "UNLOCALIZED: Using name tags edited with an anvil, custom text can be displayed",
|
||||||
|
|
||||||
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
||||||
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
||||||
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 601",
|
"_": "Missing Localizations: 604",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -1743,7 +1743,7 @@
|
||||||
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
||||||
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
||||||
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
||||||
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement.\nA mechanical belt should help here.",
|
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement. A mechanical belt should help here.",
|
||||||
|
|
||||||
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
||||||
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
||||||
|
@ -1933,6 +1933,10 @@
|
||||||
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
||||||
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
||||||
|
|
||||||
|
"create.ponder.nixie_tube.header": "UNLOCALIZED: Using Nixie Tubes",
|
||||||
|
"create.ponder.nixie_tube.text_1": "UNLOCALIZED: When powered by Redstone, Nixie Tubes will display the redstone signals' strength",
|
||||||
|
"create.ponder.nixie_tube.text_2": "UNLOCALIZED: Using name tags edited with an anvil, custom text can be displayed",
|
||||||
|
|
||||||
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
||||||
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
||||||
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 672",
|
"_": "Missing Localizations: 675",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -1743,7 +1743,7 @@
|
||||||
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
||||||
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
||||||
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
||||||
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement.\nA mechanical belt should help here.",
|
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement. A mechanical belt should help here.",
|
||||||
|
|
||||||
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
||||||
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
||||||
|
@ -1933,6 +1933,10 @@
|
||||||
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
||||||
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
||||||
|
|
||||||
|
"create.ponder.nixie_tube.header": "UNLOCALIZED: Using Nixie Tubes",
|
||||||
|
"create.ponder.nixie_tube.text_1": "UNLOCALIZED: When powered by Redstone, Nixie Tubes will display the redstone signals' strength",
|
||||||
|
"create.ponder.nixie_tube.text_2": "UNLOCALIZED: Using name tags edited with an anvil, custom text can be displayed",
|
||||||
|
|
||||||
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
||||||
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
||||||
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 1551",
|
"_": "Missing Localizations: 1554",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -1743,7 +1743,7 @@
|
||||||
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
||||||
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
||||||
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
||||||
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement.\nA mechanical belt should help here.",
|
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement. A mechanical belt should help here.",
|
||||||
|
|
||||||
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
||||||
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
||||||
|
@ -1933,6 +1933,10 @@
|
||||||
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
||||||
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
||||||
|
|
||||||
|
"create.ponder.nixie_tube.header": "UNLOCALIZED: Using Nixie Tubes",
|
||||||
|
"create.ponder.nixie_tube.text_1": "UNLOCALIZED: When powered by Redstone, Nixie Tubes will display the redstone signals' strength",
|
||||||
|
"create.ponder.nixie_tube.text_2": "UNLOCALIZED: Using name tags edited with an anvil, custom text can be displayed",
|
||||||
|
|
||||||
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
||||||
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
||||||
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 1605",
|
"_": "Missing Localizations: 1608",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -1743,7 +1743,7 @@
|
||||||
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
||||||
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
||||||
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
||||||
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement.\nA mechanical belt should help here.",
|
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement. A mechanical belt should help here.",
|
||||||
|
|
||||||
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
||||||
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
||||||
|
@ -1933,6 +1933,10 @@
|
||||||
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
||||||
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
||||||
|
|
||||||
|
"create.ponder.nixie_tube.header": "UNLOCALIZED: Using Nixie Tubes",
|
||||||
|
"create.ponder.nixie_tube.text_1": "UNLOCALIZED: When powered by Redstone, Nixie Tubes will display the redstone signals' strength",
|
||||||
|
"create.ponder.nixie_tube.text_2": "UNLOCALIZED: Using name tags edited with an anvil, custom text can be displayed",
|
||||||
|
|
||||||
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
||||||
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
||||||
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 618",
|
"_": "Missing Localizations: 621",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -1743,7 +1743,7 @@
|
||||||
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
||||||
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
||||||
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
||||||
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement.\nA mechanical belt should help here.",
|
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement. A mechanical belt should help here.",
|
||||||
|
|
||||||
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
||||||
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
||||||
|
@ -1933,6 +1933,10 @@
|
||||||
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
||||||
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
||||||
|
|
||||||
|
"create.ponder.nixie_tube.header": "UNLOCALIZED: Using Nixie Tubes",
|
||||||
|
"create.ponder.nixie_tube.text_1": "UNLOCALIZED: When powered by Redstone, Nixie Tubes will display the redstone signals' strength",
|
||||||
|
"create.ponder.nixie_tube.text_2": "UNLOCALIZED: Using name tags edited with an anvil, custom text can be displayed",
|
||||||
|
|
||||||
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
||||||
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
||||||
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 616",
|
"_": "Missing Localizations: 619",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -1743,7 +1743,7 @@
|
||||||
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
||||||
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
||||||
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
||||||
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement.\nA mechanical belt should help here.",
|
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement. A mechanical belt should help here.",
|
||||||
|
|
||||||
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
||||||
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
||||||
|
@ -1933,6 +1933,10 @@
|
||||||
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
||||||
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
||||||
|
|
||||||
|
"create.ponder.nixie_tube.header": "UNLOCALIZED: Using Nixie Tubes",
|
||||||
|
"create.ponder.nixie_tube.text_1": "UNLOCALIZED: When powered by Redstone, Nixie Tubes will display the redstone signals' strength",
|
||||||
|
"create.ponder.nixie_tube.text_2": "UNLOCALIZED: Using name tags edited with an anvil, custom text can be displayed",
|
||||||
|
|
||||||
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
||||||
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
||||||
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 621",
|
"_": "Missing Localizations: 624",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -1743,7 +1743,7 @@
|
||||||
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
"create.ponder.funnel_transfer.header": "UNLOCALIZED: Direct transfer",
|
||||||
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
"create.ponder.funnel_transfer.text_1": "UNLOCALIZED: Funnels cannot ever transfer between closed inventories directly.",
|
||||||
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
"create.ponder.funnel_transfer.text_2": "UNLOCALIZED: Chutes or Smart chutes might be more suitable for such purposes.",
|
||||||
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement.\nA mechanical belt should help here.",
|
"create.ponder.funnel_transfer.text_3": "UNLOCALIZED: Same applies for horizontal movement. A mechanical belt should help here.",
|
||||||
|
|
||||||
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
"create.ponder.furnace_engine.header": "UNLOCALIZED: Generating Rotational Force using the Furnace Engine",
|
||||||
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
"create.ponder.furnace_engine.text_1": "UNLOCALIZED: Furnace Engines generate Rotational Force while their attached Furnace is running",
|
||||||
|
@ -1933,6 +1933,10 @@
|
||||||
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
"create.ponder.millstone.text_4": "UNLOCALIZED: After some time, the result can be obtained via Right-click",
|
||||||
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
"create.ponder.millstone.text_5": "UNLOCALIZED: The outputs can also be extracted by automation",
|
||||||
|
|
||||||
|
"create.ponder.nixie_tube.header": "UNLOCALIZED: Using Nixie Tubes",
|
||||||
|
"create.ponder.nixie_tube.text_1": "UNLOCALIZED: When powered by Redstone, Nixie Tubes will display the redstone signals' strength",
|
||||||
|
"create.ponder.nixie_tube.text_2": "UNLOCALIZED: Using name tags edited with an anvil, custom text can be displayed",
|
||||||
|
|
||||||
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
"create.ponder.piston_pole.header": "UNLOCALIZED: Piston Extension Poles",
|
||||||
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
"create.ponder.piston_pole.text_1": "UNLOCALIZED: Without attached Poles, a Mechanical Piston cannot move",
|
||||||
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
"create.ponder.piston_pole.text_2": "UNLOCALIZED: The Length of pole added at its back determines the Extension Range",
|
||||||
|
|
|
@ -28,8 +28,8 @@
|
||||||
"trigger": "create:bracket_apply",
|
"trigger": "create:bracket_apply",
|
||||||
"conditions": {
|
"conditions": {
|
||||||
"accepted_entries": [
|
"accepted_entries": [
|
||||||
"create:cogwheel",
|
"create:large_cogwheel",
|
||||||
"create:large_cogwheel"
|
"create:cogwheel"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
],
|
],
|
||||||
"key": {
|
"key": {
|
||||||
"A": {
|
"A": {
|
||||||
"item": "create:golden_sheet"
|
"tag": "forge:plates/gold"
|
||||||
},
|
},
|
||||||
"D": {
|
"D": {
|
||||||
"item": "create:depot"
|
"item": "create:depot"
|
||||||
|
|
|
@ -89,8 +89,10 @@ public abstract class KineticTileEntity extends SmartTileEntity
|
||||||
super.tick();
|
super.tick();
|
||||||
effects.tick();
|
effects.tick();
|
||||||
|
|
||||||
if (world.isRemote)
|
if (world.isRemote) {
|
||||||
|
cachedBoundingBox = null; // cache the bounding box for every frame between ticks
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (validationCountdown-- <= 0) {
|
if (validationCountdown-- <= 0) {
|
||||||
validationCountdown = AllConfigs.SERVER.kinetics.kineticValidationFrequency.get();
|
validationCountdown = AllConfigs.SERVER.kinetics.kineticValidationFrequency.get();
|
||||||
|
@ -220,7 +222,6 @@ public abstract class KineticTileEntity extends SmartTileEntity
|
||||||
boolean overStressedBefore = overStressed;
|
boolean overStressedBefore = overStressed;
|
||||||
clearKineticInformation();
|
clearKineticInformation();
|
||||||
|
|
||||||
cachedBoundingBox = null;
|
|
||||||
// DO NOT READ kinetic information when placed after movement
|
// DO NOT READ kinetic information when placed after movement
|
||||||
if (wasMoved) {
|
if (wasMoved) {
|
||||||
super.fromTag(state, compound, clientPacket);
|
super.fromTag(state, compound, clientPacket);
|
||||||
|
|
|
@ -32,7 +32,7 @@ public class DeployerInstance extends ShaftInstance implements IDynamicInstance,
|
||||||
protected OrientedData hand;
|
protected OrientedData hand;
|
||||||
|
|
||||||
AllBlockPartials currentHand;
|
AllBlockPartials currentHand;
|
||||||
float progress = Float.NaN;
|
float progress;
|
||||||
private boolean newHand = false;
|
private boolean newHand = false;
|
||||||
|
|
||||||
public DeployerInstance(InstancedTileRenderer<?> dispatcher, KineticTileEntity tile) {
|
public DeployerInstance(InstancedTileRenderer<?> dispatcher, KineticTileEntity tile) {
|
||||||
|
@ -52,9 +52,9 @@ public class DeployerInstance extends ShaftInstance implements IDynamicInstance,
|
||||||
updateHandPose();
|
updateHandPose();
|
||||||
relight(pos, pole);
|
relight(pos, pole);
|
||||||
|
|
||||||
|
progress = getProgress(AnimationTickHolder.getPartialTicks());
|
||||||
updateRotation(pole, hand, yRot, zRot, zRotPole);
|
updateRotation(pole, hand, yRot, zRot, zRotPole);
|
||||||
|
updatePosition();
|
||||||
beginFrame();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -72,19 +72,7 @@ public class DeployerInstance extends ShaftInstance implements IDynamicInstance,
|
||||||
progress = newProgress;
|
progress = newProgress;
|
||||||
newHand = false;
|
newHand = false;
|
||||||
|
|
||||||
float handLength = currentHand == AllBlockPartials.DEPLOYER_HAND_POINTING ? 0
|
updatePosition();
|
||||||
: currentHand == AllBlockPartials.DEPLOYER_HAND_HOLDING ? 4 / 16f : 3 / 16f;
|
|
||||||
float distance = Math.min(MathHelper.clamp(progress, 0, 1) * (tile.reach + handLength), 21 / 16f);
|
|
||||||
Vector3i facingVec = facing.getDirectionVec();
|
|
||||||
BlockPos blockPos = getInstancePosition();
|
|
||||||
|
|
||||||
float x = blockPos.getX() + ((float) facingVec.getX()) * distance;
|
|
||||||
float y = blockPos.getY() + ((float) facingVec.getY()) * distance;
|
|
||||||
float z = blockPos.getZ() + ((float) facingVec.getZ()) * distance;
|
|
||||||
|
|
||||||
pole.setPosition(x, y, z);
|
|
||||||
hand.setPosition(x, y, z);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -112,6 +100,7 @@ public class DeployerInstance extends ShaftInstance implements IDynamicInstance,
|
||||||
|
|
||||||
relight(pos, hand);
|
relight(pos, hand);
|
||||||
updateRotation(pole, hand, yRot, zRot, zRotPole);
|
updateRotation(pole, hand, yRot, zRot, zRotPole);
|
||||||
|
updatePosition();
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -124,6 +113,21 @@ public class DeployerInstance extends ShaftInstance implements IDynamicInstance,
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void updatePosition() {
|
||||||
|
float handLength = currentHand == AllBlockPartials.DEPLOYER_HAND_POINTING ? 0
|
||||||
|
: currentHand == AllBlockPartials.DEPLOYER_HAND_HOLDING ? 4 / 16f : 3 / 16f;
|
||||||
|
float distance = Math.min(MathHelper.clamp(progress, 0, 1) * (tile.reach + handLength), 21 / 16f);
|
||||||
|
Vector3i facingVec = facing.getDirectionVec();
|
||||||
|
BlockPos blockPos = getInstancePosition();
|
||||||
|
|
||||||
|
float x = blockPos.getX() + ((float) facingVec.getX()) * distance;
|
||||||
|
float y = blockPos.getY() + ((float) facingVec.getY()) * distance;
|
||||||
|
float z = blockPos.getZ() + ((float) facingVec.getZ()) * distance;
|
||||||
|
|
||||||
|
pole.setPosition(x, y, z);
|
||||||
|
hand.setPosition(x, y, z);
|
||||||
|
}
|
||||||
|
|
||||||
static void updateRotation(OrientedData pole, OrientedData hand, float yRot, float zRot, float zRotPole) {
|
static void updateRotation(OrientedData pole, OrientedData hand, float yRot, float zRot, float zRotPole) {
|
||||||
|
|
||||||
Quaternion q = Direction.SOUTH.getUnitVector().getDegreesQuaternion(zRot);
|
Quaternion q = Direction.SOUTH.getUnitVector().getDegreesQuaternion(zRot);
|
||||||
|
|
|
@ -275,7 +275,6 @@ public class BeltTileEntity extends KineticTileEntity implements LightUpdateList
|
||||||
|
|
||||||
public void setController(BlockPos controller) {
|
public void setController(BlockPos controller) {
|
||||||
this.controller = controller;
|
this.controller = controller;
|
||||||
cachedBoundingBox = null;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public BlockPos getController() {
|
public BlockPos getController() {
|
||||||
|
|
|
@ -329,40 +329,25 @@ public class ChuteTileEntity extends SmartTileEntity implements IHaveGoggleInfor
|
||||||
private void handleInputFromAbove() {
|
private void handleInputFromAbove() {
|
||||||
if (!capAbove.isPresent())
|
if (!capAbove.isPresent())
|
||||||
capAbove = grabCapability(Direction.UP);
|
capAbove = grabCapability(Direction.UP);
|
||||||
if (!capAbove.isPresent())
|
handleInput(capAbove.orElse(null));
|
||||||
return;
|
|
||||||
|
|
||||||
int count = getExtractionAmount();
|
|
||||||
IItemHandler inv = capAbove.orElse(null);
|
|
||||||
Predicate<ItemStack> canAccept = this::canAcceptItem;
|
|
||||||
if (count == 0) {
|
|
||||||
item = ItemHelper.extract(inv, canAccept, ExtractionCountMode.UPTO, 16, false);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!ItemHelper.extract(inv, canAccept, ExtractionCountMode.EXACTLY, count, true)
|
|
||||||
.isEmpty())
|
|
||||||
item = ItemHelper.extract(inv, canAccept, ExtractionCountMode.EXACTLY, count, false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void handleInputFromBelow() {
|
private void handleInputFromBelow() {
|
||||||
if (!capBelow.isPresent())
|
if (!capBelow.isPresent())
|
||||||
capBelow = grabCapability(Direction.DOWN);
|
capBelow = grabCapability(Direction.DOWN);
|
||||||
if (!capBelow.isPresent())
|
handleInput(capBelow.orElse(null));
|
||||||
return;
|
|
||||||
|
|
||||||
int count = getExtractionAmount();
|
|
||||||
IItemHandler inv = capBelow.orElse(null);
|
|
||||||
Predicate<ItemStack> canAccept = this::canAcceptItem;
|
|
||||||
|
|
||||||
if (count == 0) {
|
|
||||||
item = ItemHelper.extract(inv, canAccept, ExtractionCountMode.UPTO, 16, false);
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!ItemHelper.extract(inv, canAccept, ExtractionCountMode.EXACTLY, count, true)
|
private void handleInput(IItemHandler inv) {
|
||||||
|
if (inv == null)
|
||||||
|
return;
|
||||||
|
Predicate<ItemStack> canAccept = this::canAcceptItem;
|
||||||
|
int count = getExtractionAmount();
|
||||||
|
ExtractionCountMode mode = getExtractionMode();
|
||||||
|
if (mode == ExtractionCountMode.UPTO || !ItemHelper.extract(inv, canAccept, mode, count, true)
|
||||||
.isEmpty())
|
.isEmpty())
|
||||||
item = ItemHelper.extract(inv, canAccept, ExtractionCountMode.EXACTLY, count, false);
|
item = ItemHelper.extract(inv, canAccept, mode, count, false);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean handleDownwardOutput(boolean simulate) {
|
private boolean handleDownwardOutput(boolean simulate) {
|
||||||
|
@ -480,7 +465,11 @@ public class ChuteTileEntity extends SmartTileEntity implements IHaveGoggleInfor
|
||||||
}
|
}
|
||||||
|
|
||||||
protected int getExtractionAmount() {
|
protected int getExtractionAmount() {
|
||||||
return 0;
|
return 16;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected ExtractionCountMode getExtractionMode() {
|
||||||
|
return ExtractionCountMode.UPTO;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected boolean canCollectItemsFromBelow() {
|
protected boolean canCollectItemsFromBelow() {
|
||||||
|
|
|
@ -2,6 +2,7 @@ package com.simibubi.create.content.logistics.block.chute;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.simibubi.create.foundation.item.ItemHelper.ExtractionCountMode;
|
||||||
import com.simibubi.create.foundation.tileEntity.TileEntityBehaviour;
|
import com.simibubi.create.foundation.tileEntity.TileEntityBehaviour;
|
||||||
import com.simibubi.create.foundation.tileEntity.behaviour.filtering.FilteringBehaviour;
|
import com.simibubi.create.foundation.tileEntity.behaviour.filtering.FilteringBehaviour;
|
||||||
|
|
||||||
|
@ -26,7 +27,13 @@ public class SmartChuteTileEntity extends ChuteTileEntity {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected int getExtractionAmount() {
|
protected int getExtractionAmount() {
|
||||||
return filtering.isCountVisible() ? filtering.getAmount() : 0;
|
return filtering.isCountVisible() && !filtering.anyAmount() ? filtering.getAmount() : 64;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected ExtractionCountMode getExtractionMode() {
|
||||||
|
return filtering.isCountVisible() && !filtering.anyAmount() ? ExtractionCountMode.EXACTLY
|
||||||
|
: ExtractionCountMode.UPTO;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -106,7 +106,8 @@ public abstract class FunnelBlock extends AbstractDirectionalFunnelBlock {
|
||||||
|
|
||||||
Direction direction = getFunnelFacing(state);
|
Direction direction = getFunnelFacing(state);
|
||||||
Vector3d diff = entityIn.getPositionVec()
|
Vector3d diff = entityIn.getPositionVec()
|
||||||
.subtract(VecHelper.getCenterOf(pos));
|
.subtract(VecHelper.getCenterOf(pos)
|
||||||
|
.add(Vector3d.of(direction.getDirectionVec()).scale(-.325f)));
|
||||||
double projectedDiff = direction.getAxis()
|
double projectedDiff = direction.getAxis()
|
||||||
.getCoordinate(diff.x, diff.y, diff.z);
|
.getCoordinate(diff.x, diff.y, diff.z);
|
||||||
if (projectedDiff < 0 == (direction.getAxisDirection() == AxisDirection.POSITIVE))
|
if (projectedDiff < 0 == (direction.getAxisDirection() == AxisDirection.POSITIVE))
|
||||||
|
|
|
@ -63,12 +63,12 @@ public class NixieTubeBlock extends HorizontalBlock implements ITE<NixieTubeTile
|
||||||
return ActionResultType.SUCCESS;
|
return ActionResultType.SUCCESS;
|
||||||
|
|
||||||
BlockPos currentPos = pos;
|
BlockPos currentPos = pos;
|
||||||
while (true) {
|
// while (true) {
|
||||||
BlockPos nextPos = currentPos.offset(left);
|
// BlockPos nextPos = currentPos.offset(left);
|
||||||
if (world.getBlockState(nextPos) != state)
|
// if (world.getBlockState(nextPos) != state)
|
||||||
break;
|
// break;
|
||||||
currentPos = nextPos;
|
// currentPos = nextPos;
|
||||||
}
|
// }
|
||||||
|
|
||||||
int index = 0;
|
int index = 0;
|
||||||
|
|
||||||
|
|
|
@ -589,7 +589,7 @@ public class StandardRecipeGen extends CreateRecipeProvider {
|
||||||
.patternLine("I")),
|
.patternLine("I")),
|
||||||
|
|
||||||
WEIGHTED_EJECTOR = create(AllBlocks.WEIGHTED_EJECTOR).unlockedBy(I::andesiteCasing)
|
WEIGHTED_EJECTOR = create(AllBlocks.WEIGHTED_EJECTOR).unlockedBy(I::andesiteCasing)
|
||||||
.viaShaped(b -> b.key('A', AllItems.GOLDEN_SHEET.get())
|
.viaShaped(b -> b.key('A', I.goldSheet())
|
||||||
.key('D', AllBlocks.DEPOT.get())
|
.key('D', AllBlocks.DEPOT.get())
|
||||||
.key('I', I.cog())
|
.key('I', I.cog())
|
||||||
.patternLine("A")
|
.patternLine("A")
|
||||||
|
|
|
@ -20,6 +20,7 @@ import net.minecraft.client.renderer.Rectangle2d;
|
||||||
import net.minecraft.client.renderer.RenderHelper;
|
import net.minecraft.client.renderer.RenderHelper;
|
||||||
import net.minecraft.client.renderer.Tessellator;
|
import net.minecraft.client.renderer.Tessellator;
|
||||||
import net.minecraft.client.renderer.vertex.DefaultVertexFormats;
|
import net.minecraft.client.renderer.vertex.DefaultVertexFormats;
|
||||||
|
import net.minecraft.client.util.InputMappings;
|
||||||
import net.minecraft.entity.player.PlayerInventory;
|
import net.minecraft.entity.player.PlayerInventory;
|
||||||
import net.minecraft.inventory.container.Container;
|
import net.minecraft.inventory.container.Container;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
|
@ -87,6 +88,13 @@ public abstract class AbstractSimiContainerScreen<T extends Container> extends C
|
||||||
if (widget.keyPressed(code, p_keyPressed_2_, p_keyPressed_3_))
|
if (widget.keyPressed(code, p_keyPressed_2_, p_keyPressed_3_))
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
InputMappings.Input mouseKey = InputMappings.getInputByCode(code, p_keyPressed_2_);
|
||||||
|
if (code == 256 || this.minecraft.gameSettings.keyBindInventory.isActiveAndMatches(mouseKey)) {
|
||||||
|
this.minecraft.player.closeScreen();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
return super.keyPressed(code, p_keyPressed_2_, p_keyPressed_3_);
|
return super.keyPressed(code, p_keyPressed_2_, p_keyPressed_3_);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -96,8 +104,6 @@ public abstract class AbstractSimiContainerScreen<T extends Container> extends C
|
||||||
if (widget.charTyped(character, code))
|
if (widget.charTyped(character, code))
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (character == 'e')
|
|
||||||
onClose();
|
|
||||||
return super.charTyped(character, code);
|
return super.charTyped(character, code);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -10,6 +10,7 @@ import com.simibubi.create.foundation.gui.widgets.AbstractSimiWidget;
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
import net.minecraft.client.gui.screen.Screen;
|
import net.minecraft.client.gui.screen.Screen;
|
||||||
import net.minecraft.client.gui.widget.Widget;
|
import net.minecraft.client.gui.widget.Widget;
|
||||||
|
import net.minecraft.client.util.InputMappings;
|
||||||
import net.minecraft.util.text.StringTextComponent;
|
import net.minecraft.util.text.StringTextComponent;
|
||||||
import net.minecraftforge.api.distmarker.Dist;
|
import net.minecraftforge.api.distmarker.Dist;
|
||||||
import net.minecraftforge.api.distmarker.OnlyIn;
|
import net.minecraftforge.api.distmarker.OnlyIn;
|
||||||
|
@ -70,6 +71,13 @@ public abstract class AbstractSimiScreen extends Screen {
|
||||||
for (Widget widget : widgets)
|
for (Widget widget : widgets)
|
||||||
if (widget.keyPressed(code, p_keyPressed_2_, p_keyPressed_3_))
|
if (widget.keyPressed(code, p_keyPressed_2_, p_keyPressed_3_))
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
|
InputMappings.Input mouseKey = InputMappings.getInputByCode(code, p_keyPressed_2_);
|
||||||
|
if (code == 256 || this.minecraft.gameSettings.keyBindInventory.isActiveAndMatches(mouseKey)) {
|
||||||
|
this.minecraft.player.closeScreen();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
return super.keyPressed(code, p_keyPressed_2_, p_keyPressed_3_);
|
return super.keyPressed(code, p_keyPressed_2_, p_keyPressed_3_);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -79,8 +87,6 @@ public abstract class AbstractSimiScreen extends Screen {
|
||||||
if (widget.charTyped(character, code))
|
if (widget.charTyped(character, code))
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (character == 'e')
|
|
||||||
onClose();
|
|
||||||
return super.charTyped(character, code);
|
return super.charTyped(character, code);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -89,8 +89,13 @@ public class ScreenOpener {
|
||||||
|
|
||||||
private static void openScreen(Screen screen) {
|
private static void openScreen(Screen screen) {
|
||||||
Minecraft.getInstance()
|
Minecraft.getInstance()
|
||||||
.enqueue(() -> Minecraft.getInstance()
|
.enqueue(() -> {
|
||||||
.displayGuiScreen(screen));
|
Minecraft.getInstance()
|
||||||
|
.displayGuiScreen(screen);
|
||||||
|
Screen previouslyRenderedScreen = getPreviouslyRenderedScreen();
|
||||||
|
if (previouslyRenderedScreen != null && screen instanceof NavigatableSimiScreen)
|
||||||
|
previouslyRenderedScreen.init(Minecraft.getInstance(), screen.width, screen.height);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,20 +1,11 @@
|
||||||
package com.simibubi.create.foundation.mixin;
|
package com.simibubi.create.foundation.mixin;
|
||||||
|
|
||||||
import com.simibubi.create.content.contraptions.components.structureMovement.AbstractContraptionEntity;
|
import java.lang.ref.Reference;
|
||||||
import com.simibubi.create.content.contraptions.components.structureMovement.Contraption;
|
import java.util.Random;
|
||||||
import com.simibubi.create.content.contraptions.components.structureMovement.ContraptionCollider;
|
import java.util.Set;
|
||||||
import com.simibubi.create.content.contraptions.components.structureMovement.ContraptionHandler;
|
import java.util.concurrent.atomic.AtomicBoolean;
|
||||||
import net.minecraft.block.BlockRenderType;
|
import java.util.stream.Collectors;
|
||||||
import net.minecraft.block.BlockState;
|
|
||||||
import net.minecraft.entity.Entity;
|
|
||||||
import net.minecraft.entity.MoverType;
|
|
||||||
import net.minecraft.particles.BlockParticleData;
|
|
||||||
import net.minecraft.particles.ParticleTypes;
|
|
||||||
import net.minecraft.util.math.AxisAlignedBB;
|
|
||||||
import net.minecraft.util.math.BlockPos;
|
|
||||||
import net.minecraft.util.math.vector.Vector3d;
|
|
||||||
import net.minecraft.world.World;
|
|
||||||
import net.minecraft.world.gen.feature.template.Template;
|
|
||||||
import org.apache.logging.log4j.util.TriConsumer;
|
import org.apache.logging.log4j.util.TriConsumer;
|
||||||
import org.spongepowered.asm.mixin.Final;
|
import org.spongepowered.asm.mixin.Final;
|
||||||
import org.spongepowered.asm.mixin.Mixin;
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
|
@ -23,18 +14,33 @@ import org.spongepowered.asm.mixin.injection.At;
|
||||||
import org.spongepowered.asm.mixin.injection.Inject;
|
import org.spongepowered.asm.mixin.injection.Inject;
|
||||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||||
|
|
||||||
import java.lang.ref.Reference;
|
import com.simibubi.create.content.contraptions.components.structureMovement.AbstractContraptionEntity;
|
||||||
import java.util.Random;
|
import com.simibubi.create.content.contraptions.components.structureMovement.Contraption;
|
||||||
import java.util.Set;
|
import com.simibubi.create.content.contraptions.components.structureMovement.ContraptionCollider;
|
||||||
import java.util.concurrent.atomic.AtomicBoolean;
|
import com.simibubi.create.content.contraptions.components.structureMovement.ContraptionHandler;
|
||||||
import java.util.stream.Collectors;
|
|
||||||
|
import net.minecraft.block.BlockRenderType;
|
||||||
|
import net.minecraft.block.BlockState;
|
||||||
|
import net.minecraft.entity.Entity;
|
||||||
|
import net.minecraft.entity.MoverType;
|
||||||
|
import net.minecraft.entity.player.PlayerEntity;
|
||||||
|
import net.minecraft.particles.BlockParticleData;
|
||||||
|
import net.minecraft.particles.ParticleTypes;
|
||||||
|
import net.minecraft.util.SoundEvent;
|
||||||
|
import net.minecraft.util.math.BlockPos;
|
||||||
|
import net.minecraft.util.math.vector.Vector3d;
|
||||||
|
import net.minecraft.world.gen.feature.template.Template;
|
||||||
|
import net.minecraftforge.common.capabilities.CapabilityProvider;
|
||||||
|
|
||||||
@Mixin(Entity.class)
|
@Mixin(Entity.class)
|
||||||
public abstract class StepSoundMixin {
|
public abstract class EntityContraptionInteractionMixin extends CapabilityProvider<Entity> {
|
||||||
|
private EntityContraptionInteractionMixin(Class<Entity> baseClass) {
|
||||||
|
super(baseClass);
|
||||||
|
}
|
||||||
|
|
||||||
private final Entity self = (Entity) (Object) this;
|
private final Entity self = (Entity) (Object) this;
|
||||||
|
|
||||||
@Shadow
|
private AbstractContraptionEntity contraption;
|
||||||
public World world;
|
|
||||||
|
|
||||||
@Final
|
@Final
|
||||||
@Shadow
|
@Shadow
|
||||||
|
@ -43,30 +49,21 @@ public abstract class StepSoundMixin {
|
||||||
@Shadow
|
@Shadow
|
||||||
private float nextStepDistance;
|
private float nextStepDistance;
|
||||||
|
|
||||||
@Shadow
|
|
||||||
public abstract BlockPos getBlockPos();
|
|
||||||
|
|
||||||
@Shadow
|
|
||||||
public abstract Vector3d getPositionVec();
|
|
||||||
|
|
||||||
@Shadow
|
@Shadow
|
||||||
protected abstract float determineNextStepDistance();
|
protected abstract float determineNextStepDistance();
|
||||||
|
|
||||||
@Shadow
|
|
||||||
public abstract AxisAlignedBB getBoundingBox();
|
|
||||||
|
|
||||||
@Shadow
|
@Shadow
|
||||||
protected abstract void playStepSound(BlockPos p_180429_1_, BlockState p_180429_2_);
|
protected abstract void playStepSound(BlockPos p_180429_1_, BlockState p_180429_2_);
|
||||||
|
|
||||||
private Set<AbstractContraptionEntity> getIntersectingContraptions() {
|
private Set<AbstractContraptionEntity> getIntersectingContraptions() {
|
||||||
Set<AbstractContraptionEntity> contraptions = ContraptionHandler.loadedContraptions.get(this.world)
|
Set<AbstractContraptionEntity> contraptions = ContraptionHandler.loadedContraptions.get(self.world)
|
||||||
.values()
|
.values()
|
||||||
.stream()
|
.stream()
|
||||||
.map(Reference::get)
|
.map(Reference::get)
|
||||||
.filter(cEntity -> cEntity != null && cEntity.collidingEntities.containsKey(self))
|
.filter(cEntity -> cEntity != null && cEntity.collidingEntities.containsKey(self))
|
||||||
.collect(Collectors.toSet());
|
.collect(Collectors.toSet());
|
||||||
|
|
||||||
contraptions.addAll(this.world.getEntitiesWithinAABB(AbstractContraptionEntity.class, getBoundingBox().grow(1f)));
|
contraptions.addAll(self.world.getEntitiesWithinAABB(AbstractContraptionEntity.class, self.getBoundingBox().grow(1f)));
|
||||||
return contraptions;
|
return contraptions;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -95,20 +92,18 @@ public abstract class StepSoundMixin {
|
||||||
method = "move"
|
method = "move"
|
||||||
)
|
)
|
||||||
private void movementMixin(MoverType mover, Vector3d movement, CallbackInfo ci) {
|
private void movementMixin(MoverType mover, Vector3d movement, CallbackInfo ci) {
|
||||||
World entityWorld = world;
|
|
||||||
Vector3d worldPos = self.getPositionVec().add(0, -0.2, 0);
|
Vector3d worldPos = self.getPositionVec().add(0, -0.2, 0);
|
||||||
AtomicBoolean stepped = new AtomicBoolean(false);
|
AtomicBoolean stepped = new AtomicBoolean(false);
|
||||||
|
|
||||||
forCollision(worldPos, (contraption, blockstate, blockPos) -> {
|
forCollision(worldPos, (contraption, blockstate, blockPos) -> {
|
||||||
this.world = contraption.getContraptionWorld();
|
bindContraption(contraption);
|
||||||
this.playStepSound(blockPos, blockstate);
|
playStepSound(blockPos, blockstate);
|
||||||
|
unbindContraption();
|
||||||
stepped.set(true);
|
stepped.set(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
if (stepped.get())
|
if (stepped.get())
|
||||||
this.nextStepDistance = this.determineNextStepDistance();
|
this.nextStepDistance = this.determineNextStepDistance();
|
||||||
|
|
||||||
world = entityWorld;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Inject(method = {"spawnSprintingParticles"}, at = @At(value = "TAIL"))
|
@Inject(method = {"spawnSprintingParticles"}, at = @At(value = "TAIL"))
|
||||||
|
@ -117,13 +112,42 @@ public abstract class StepSoundMixin {
|
||||||
BlockPos pos = new BlockPos(worldPos); // pos where particles are spawned
|
BlockPos pos = new BlockPos(worldPos); // pos where particles are spawned
|
||||||
|
|
||||||
forCollision(worldPos, (contraption, blockstate, blockpos) -> {
|
forCollision(worldPos, (contraption, blockstate, blockpos) -> {
|
||||||
if (!blockstate.addRunningEffects(world, blockpos, self) && blockstate.getRenderType() != BlockRenderType.INVISIBLE) {
|
if (!blockstate.addRunningEffects(self.world, blockpos, self) && blockstate.getRenderType() != BlockRenderType.INVISIBLE) {
|
||||||
Vector3d vec3d = self.getMotion();
|
Vector3d vec3d = self.getMotion();
|
||||||
this.world.addParticle(new BlockParticleData(ParticleTypes.BLOCK, blockstate).setPos(pos),
|
self.world.addParticle(new BlockParticleData(ParticleTypes.BLOCK, blockstate).setPos(pos),
|
||||||
self.getX() + ((double) rand.nextFloat() - 0.5D) * (double) self.getWidth(),
|
self.getX() + ((double) rand.nextFloat() - 0.5D) * (double) self.getWidth(),
|
||||||
self.getY() + 0.1D, self.getZ() + ((double) rand.nextFloat() - 0.5D) * (double) self.getWidth(),
|
self.getY() + 0.1D, self.getZ() + ((double) rand.nextFloat() - 0.5D) * (double) self.getWidth(),
|
||||||
vec3d.x * -4.0D, 1.5D, vec3d.z * -4.0D);
|
vec3d.x * -4.0D, 1.5D, vec3d.z * -4.0D);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Inject(method = "playSound", at = @At("HEAD"), cancellable = true)
|
||||||
|
private void playSoundShifted(SoundEvent event, float pitch, float volume, CallbackInfo ci) {
|
||||||
|
if (this.contraption != null && (!self.isSilent() || self instanceof PlayerEntity)) {
|
||||||
|
double x = self.getX();
|
||||||
|
double y = self.getY();
|
||||||
|
double z = self.getZ();
|
||||||
|
Vector3d worldPos = ContraptionCollider.getWorldToLocalTranslation(new Vector3d(x, y, z), this.contraption);
|
||||||
|
|
||||||
|
worldPos = worldPos.add(x, y, z);
|
||||||
|
|
||||||
|
self.world.playSound(null, worldPos.x + x, worldPos.y + y, worldPos.z + z, event, self.getSoundCategory(), pitch, volume);
|
||||||
|
|
||||||
|
ci.cancel();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void bindContraption(Contraption contraption) {
|
||||||
|
bindContraption(contraption.entity);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void bindContraption(AbstractContraptionEntity contraption) {
|
||||||
|
this.contraption = contraption;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void unbindContraption() {
|
||||||
|
this.contraption = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -498,7 +498,7 @@ public class FunnelScenes {
|
||||||
scene.world.showSection(util.select.fromTo(0, 2, 2, 4, 2, 2), Direction.DOWN);
|
scene.world.showSection(util.select.fromTo(0, 2, 2, 4, 2, 2), Direction.DOWN);
|
||||||
scene.overlay.showText(120)
|
scene.overlay.showText(120)
|
||||||
.colored(PonderPalette.GREEN)
|
.colored(PonderPalette.GREEN)
|
||||||
.text("Same applies for horizontal movement.\nA mechanical belt should help here.")
|
.text("Same applies for horizontal movement. A mechanical belt should help here.")
|
||||||
.pointAt(util.vector.topOf(1, 2, 2))
|
.pointAt(util.vector.topOf(1, 2, 2))
|
||||||
.placeNearTarget();
|
.placeNearTarget();
|
||||||
|
|
||||||
|
|
|
@ -617,7 +617,7 @@ public class RedstoneScenes {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void nixieTube(SceneBuilder scene, SceneBuildingUtil util) {
|
public static void nixieTube(SceneBuilder scene, SceneBuildingUtil util) {
|
||||||
scene.title("analog_lever", "Using Nixie Tubes");
|
scene.title("nixie_tube", "Using Nixie Tubes");
|
||||||
scene.configureBasePlate(0, 0, 5);
|
scene.configureBasePlate(0, 0, 5);
|
||||||
scene.world.showSection(util.select.layer(0)
|
scene.world.showSection(util.select.layer(0)
|
||||||
.add(util.select.fromTo(2, 1, 1, 2, 1, 2)), Direction.UP);
|
.add(util.select.fromTo(2, 1, 1, 2, 1, 2)), Direction.UP);
|
||||||
|
@ -651,7 +651,7 @@ public class RedstoneScenes {
|
||||||
scene.world.showSection(tubes, Direction.DOWN);
|
scene.world.showSection(tubes, Direction.DOWN);
|
||||||
scene.idle(20);
|
scene.idle(20);
|
||||||
|
|
||||||
scene.overlay.showControls(new InputWindowElement(centerTube.add(0, .35, 0), Pointing.DOWN).rightClick()
|
scene.overlay.showControls(new InputWindowElement(centerTube.add(1, .35, 0), Pointing.DOWN).rightClick()
|
||||||
.withItem(new ItemStack(Items.NAME_TAG)), 40);
|
.withItem(new ItemStack(Items.NAME_TAG)), 40);
|
||||||
scene.idle(7);
|
scene.idle(7);
|
||||||
|
|
||||||
|
@ -673,8 +673,9 @@ public class RedstoneScenes {
|
||||||
scene.idle(20);
|
scene.idle(20);
|
||||||
scene.overlay.showText(80)
|
scene.overlay.showText(80)
|
||||||
.attachKeyFrame()
|
.attachKeyFrame()
|
||||||
|
.placeNearTarget()
|
||||||
.text("Using name tags edited with an anvil, custom text can be displayed")
|
.text("Using name tags edited with an anvil, custom text can be displayed")
|
||||||
.pointAt(util.vector.topOf(util.grid.at(2, 1, 3))
|
.pointAt(util.vector.topOf(util.grid.at(3, 1, 3))
|
||||||
.add(.25, -.05f, 0));
|
.add(.25, -.05f, 0));
|
||||||
scene.idle(70);
|
scene.idle(70);
|
||||||
}
|
}
|
||||||
|
|
|
@ -40,11 +40,7 @@ public class FilesHelper {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static String slug(String name) {
|
public static String slug(String name) {
|
||||||
return Lang.asId(name)
|
return Lang.asId(name).replaceAll("\\W+", "_");
|
||||||
.replace(' ', '_')
|
|
||||||
.replace('!', '_')
|
|
||||||
.replace(':', '_')
|
|
||||||
.replace('?', '_');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean saveTagCompoundAsJson(CompoundNBT compound, String path) {
|
public static boolean saveTagCompoundAsJson(CompoundNBT compound, String path) {
|
||||||
|
|
|
@ -11,6 +11,7 @@ import com.simibubi.create.content.logistics.item.filter.FilterItem;
|
||||||
|
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.nbt.CompoundNBT;
|
import net.minecraft.nbt.CompoundNBT;
|
||||||
|
import net.minecraft.tileentity.MobSpawnerTileEntity;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.tileentity.TileEntityType;
|
import net.minecraft.tileentity.TileEntityType;
|
||||||
import net.minecraft.util.text.ITextComponent;
|
import net.minecraft.util.text.ITextComponent;
|
||||||
|
@ -61,6 +62,8 @@ public final class NBTProcessors {
|
||||||
compound = survivalProcessors.get(type).apply(compound);
|
compound = survivalProcessors.get(type).apply(compound);
|
||||||
if (compound != null && processors.containsKey(type))
|
if (compound != null && processors.containsKey(type))
|
||||||
return processors.get(type).apply(compound);
|
return processors.get(type).apply(compound);
|
||||||
|
if (tileEntity instanceof MobSpawnerTileEntity)
|
||||||
|
return compound;
|
||||||
if (tileEntity.onlyOpsCanSetNbt())
|
if (tileEntity.onlyOpsCanSetNbt())
|
||||||
return null;
|
return null;
|
||||||
return compound;
|
return compound;
|
||||||
|
|
|
@ -259,7 +259,7 @@ public class PlacementHelpers {
|
||||||
RenderSystem.shadeModel(GL11.GL_SMOOTH);
|
RenderSystem.shadeModel(GL11.GL_SMOOTH);
|
||||||
|
|
||||||
ms.translate(centerX, centerY, 0);
|
ms.translate(centerX, centerY, 0);
|
||||||
float scale = AllConfigs.CLIENT.indicatorScale.get().floatValue();
|
float scale = AllConfigs.CLIENT.indicatorScale.get().floatValue() * .75f;
|
||||||
ms.scale(scale, scale, 1);
|
ms.scale(scale, scale, 1);
|
||||||
ms.scale(12, 12, 1);
|
ms.scale(12, 12, 1);
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
"credit": "Made with Blockbench",
|
"credit": "Made with Blockbench",
|
||||||
"textures": {
|
"textures": {
|
||||||
"5": "create:block/brass_casing",
|
"5": "create:block/brass_casing",
|
||||||
"particle": "create:block/brass_block",
|
|
||||||
"1_1": "create:block/furnace_cylinder"
|
"1_1": "create:block/furnace_cylinder"
|
||||||
},
|
},
|
||||||
"elements": [
|
"elements": [
|
||||||
|
@ -55,6 +54,20 @@
|
||||||
"down": {"uv": [3, 13, 4.5, 15], "rotation": 270, "texture": "#1_1"}
|
"down": {"uv": [3, 13, 4.5, 15], "rotation": 270, "texture": "#1_1"}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "LowerPort",
|
||||||
|
"from": [1.5, 0.1, 13.9],
|
||||||
|
"to": [5.5, 4.1, 16.9],
|
||||||
|
"rotation": {"angle": 0, "axis": "y", "origin": [16, 0, 0]},
|
||||||
|
"faces": {
|
||||||
|
"north": {"uv": [14, 0, 10, 4], "texture": "#1_1"},
|
||||||
|
"east": {"uv": [4.5, 13, 3, 15], "texture": "#1_1"},
|
||||||
|
"south": {"uv": [4.5, 13, 2.5, 15], "texture": "#1_1"},
|
||||||
|
"west": {"uv": [4.5, 13, 3, 15], "rotation": 180, "texture": "#1_1"},
|
||||||
|
"up": {"uv": [3, 15, 4.5, 13], "rotation": 90, "texture": "#1_1"},
|
||||||
|
"down": {"uv": [3, 15, 4.5, 13], "rotation": 270, "texture": "#1_1"}
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "Port",
|
"name": "Port",
|
||||||
"from": [4, 4, 15.8],
|
"from": [4, 4, 15.8],
|
||||||
|
@ -104,7 +117,7 @@
|
||||||
{
|
{
|
||||||
"name": "SteamCylinder",
|
"name": "SteamCylinder",
|
||||||
"origin": [8, 8, 8],
|
"origin": [8, 8, 8],
|
||||||
"children": [0, 1, 2, 3, 4]
|
"children": [0, 1, 2, 3, 4, 5]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
|
@ -13,7 +13,7 @@
|
||||||
"RenderHooksMixin",
|
"RenderHooksMixin",
|
||||||
"ShaderCloseMixin",
|
"ShaderCloseMixin",
|
||||||
"TileRemoveMixin",
|
"TileRemoveMixin",
|
||||||
"StepSoundMixin"
|
"EntityContraptionInteractionMixin"
|
||||||
],
|
],
|
||||||
"injectors": {
|
"injectors": {
|
||||||
"defaultRequire": 1
|
"defaultRequire": 1
|
||||||
|
|
Loading…
Reference in a new issue