mirror of
https://github.com/Jozufozu/Flywheel.git
synced 2024-11-14 06:24:12 +01:00
Birbs and Click input
This commit is contained in:
parent
fd99acc00a
commit
203ca6f849
@ -401,18 +401,18 @@ 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
|
||||||
e3f618c5b622d21880de858678d1802cbf65e615 assets/create/lang/en_ud.json
|
e3f618c5b622d21880de858678d1802cbf65e615 assets/create/lang/en_ud.json
|
||||||
694cfe3d8fe9793b7ac0fbc7bbd3cf6bf455bf92 assets/create/lang/en_us.json
|
1c2c42b885b5d2b23f452d1550fb6c3a3a7ab952 assets/create/lang/en_us.json
|
||||||
499d461cf16f5a94049fbbe9eb758e0eaa19fa83 assets/create/lang/unfinished/de_de.json
|
90fb5c8d2b384d93c3bbc2693103be18a0ff3dc7 assets/create/lang/unfinished/de_de.json
|
||||||
8e486714ce38b6702fc614f4ba7cd34e003800aa assets/create/lang/unfinished/es_mx.json
|
3789e356240833be498849723cde53f12553c889 assets/create/lang/unfinished/es_mx.json
|
||||||
53f2918966bd9c045314a02ff0f5439720969087 assets/create/lang/unfinished/fr_fr.json
|
89aa38cb8250cd56dff4ae00d1491aea7e8aea36 assets/create/lang/unfinished/fr_fr.json
|
||||||
073ead0ceacdcf666fece6a78071a36fa9c3d356 assets/create/lang/unfinished/it_it.json
|
61e46061b0e9487f381c32a6c1004aacdb0be2b1 assets/create/lang/unfinished/it_it.json
|
||||||
0967bfc8888598329563ff6ee419038aef03df0a assets/create/lang/unfinished/ja_jp.json
|
70d3beec87b4e461b02b38feec572fcf92ffad35 assets/create/lang/unfinished/ja_jp.json
|
||||||
50e210e32d4a55561ffed5a62ac10802107b719e assets/create/lang/unfinished/ko_kr.json
|
d77cefebb91bce27fc098d4e5a81a39c5b3f10de assets/create/lang/unfinished/ko_kr.json
|
||||||
40784b923f0defdecbd35f73c7d7ead9c3fe9d8a assets/create/lang/unfinished/nl_nl.json
|
6f7f629f4e8597c39f1cb259359e451255b31864 assets/create/lang/unfinished/nl_nl.json
|
||||||
ad719b1559c58c9e7c1b22023c5e686d4fa1ca19 assets/create/lang/unfinished/pt_br.json
|
0fd66b2ff7124cff646f32cebcd679d5e16ed805 assets/create/lang/unfinished/pt_br.json
|
||||||
1190f9152de89c7e0b7561c3cdddae6fe2f1aa19 assets/create/lang/unfinished/ru_ru.json
|
5cf5aae29b48a7066c98dfbb130f58dcca7be5f6 assets/create/lang/unfinished/ru_ru.json
|
||||||
bbcd8d37a18c779dfcca9aeaeb2b2d101a4b4fe2 assets/create/lang/unfinished/zh_cn.json
|
d1afca478f7ceaa739220873cfdff4f2caa3b3fd assets/create/lang/unfinished/zh_cn.json
|
||||||
be270f1d2bc61ebd4a9f1be5b00daa56947de2d7 assets/create/lang/unfinished/zh_tw.json
|
ee8599a8bf1c4fac02dc9501de5d08f58b19f395 assets/create/lang/unfinished/zh_tw.json
|
||||||
846200eb548d3bfa2e77b41039de159b4b6cfb45 assets/create/models/block/acacia_window.json
|
846200eb548d3bfa2e77b41039de159b4b6cfb45 assets/create/models/block/acacia_window.json
|
||||||
1930fa3a3c98d53dd19e4ee7f55bc27fd47aa281 assets/create/models/block/acacia_window_pane_noside.json
|
1930fa3a3c98d53dd19e4ee7f55bc27fd47aa281 assets/create/models/block/acacia_window_pane_noside.json
|
||||||
1763ea2c9b981d187f5031ba608f3d5d3be3986a assets/create/models/block/acacia_window_pane_noside_alt.json
|
1763ea2c9b981d187f5031ba608f3d5d3be3986a assets/create/models/block/acacia_window_pane_noside_alt.json
|
||||||
|
@ -1797,14 +1797,11 @@
|
|||||||
|
|
||||||
"create.ponder.hold_to_ponder": "Hold [%1$s] to Ponder",
|
"create.ponder.hold_to_ponder": "Hold [%1$s] to Ponder",
|
||||||
"create.ponder.pondering": "Pondering about...",
|
"create.ponder.pondering": "Pondering about...",
|
||||||
"create.ponder.shared.more_shared": "This is Shared stuff",
|
"create.ponder.shared.sneak_and": "Sneak +",
|
||||||
"create.ponder.shared.when_wrenched": "When Wrenched",
|
"create.ponder.shared.ctrl_and": "Ctrl +",
|
||||||
"create.ponder.cogwheel.scene_0.title": "My First Ponder Story, Parrots",
|
"create.ponder.shaft.scene_0.shaft_relay": "Shafts will relay rotation in a straight line.",
|
||||||
"create.ponder.cogwheel.scene_1.title": "My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.cogwheel.scene_2.title": "My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.shaft.scene_0.shaft_relay": "Shafts seem to relay rotation in a straight line.",
|
|
||||||
"create.ponder.shaft.scene_0.title": "Relaying rotational force using Shafts",
|
"create.ponder.shaft.scene_0.title": "Relaying rotational force using Shafts",
|
||||||
"create.ponder.shaft.scene_1.shaft_can_be_encased": "I could use Brass or Andesite Casing to hide them.",
|
"create.ponder.shaft.scene_1.shaft_can_be_encased": "Andesite or Brass Casing can be used to encase them.",
|
||||||
"create.ponder.shaft.scene_1.title": "Encasing Shafts",
|
"create.ponder.shaft.scene_1.title": "Encasing Shafts",
|
||||||
"create.ponder.brass_hand.scene_0.x": "Das X axis",
|
"create.ponder.brass_hand.scene_0.x": "Das X axis",
|
||||||
"create.ponder.brass_hand.scene_0.y": "Das Y axis",
|
"create.ponder.brass_hand.scene_0.y": "Das Y axis",
|
||||||
@ -1814,11 +1811,13 @@
|
|||||||
"create.ponder.brass_hand.scene_1.title": "Debug Scene 2: Changing Blocks",
|
"create.ponder.brass_hand.scene_1.title": "Debug Scene 2: Changing Blocks",
|
||||||
"create.ponder.brass_hand.scene_2.title": "Debug Scene 3: Showing Fluids",
|
"create.ponder.brass_hand.scene_2.title": "Debug Scene 3: Showing Fluids",
|
||||||
"create.ponder.brass_hand.scene_2.fluids": "Fluid rendering test.",
|
"create.ponder.brass_hand.scene_2.fluids": "Fluid rendering test.",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds2": "Blocks outside of the base plate \n\nIgnored by scaling, thanks to configureBasePlate()",
|
"create.ponder.brass_hand.scene_3.outofbounds": "Blocks outside of the base plate do not affect scaling",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds": "Blocks outside of the base plate",
|
"create.ponder.brass_hand.scene_3.thanks_to_configureBasePlate": "configureBasePlate() makes sure of that.",
|
||||||
"create.ponder.brass_hand.scene_3.title": "Debug Scene 4: Out of bounds / configureBasePlate",
|
"create.ponder.brass_hand.scene_3.title": "Debug Scene 4: Out of bounds / configureBasePlate",
|
||||||
"create.ponder.brass_hand.scene_4.incoming": "Incoming...",
|
"create.ponder.brass_hand.scene_4.incoming": "Incoming...",
|
||||||
"create.ponder.brass_hand.scene_4.title": "Debug Scene 5: Emitting particles",
|
"create.ponder.brass_hand.scene_4.title": "Debug Scene 5: Emitting particles",
|
||||||
|
"create.ponder.brass_hand.scene_5.title": "Debug Scene 6: Basic player interaction",
|
||||||
|
"create.ponder.brass_hand.scene_6.title": "Debug Scene 7: Birbs",
|
||||||
|
|
||||||
"_": "Thank you for translating Create!"
|
"_": "Thank you for translating Create!"
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"_": "Missing Localizations: 1119",
|
"_": "Missing Localizations: 1124",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
@ -1798,14 +1798,11 @@
|
|||||||
|
|
||||||
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
||||||
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
||||||
"create.ponder.shared.more_shared": "UNLOCALIZED: This is Shared stuff",
|
"create.ponder.shared.sneak_and": "UNLOCALIZED: Sneak +",
|
||||||
"create.ponder.shared.when_wrenched": "UNLOCALIZED: When Wrenched",
|
"create.ponder.shared.ctrl_and": "UNLOCALIZED: Ctrl +",
|
||||||
"create.ponder.cogwheel.scene_0.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts will relay rotation in a straight line.",
|
||||||
"create.ponder.cogwheel.scene_1.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.cogwheel.scene_2.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts seem to relay rotation in a straight line.",
|
|
||||||
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
||||||
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: I could use Brass or Andesite Casing to hide them.",
|
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: Andesite or Brass Casing can be used to encase them.",
|
||||||
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
||||||
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
||||||
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
||||||
@ -1815,11 +1812,13 @@
|
|||||||
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
||||||
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
||||||
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds2": "UNLOCALIZED: Blocks outside of the base plate \n\nIgnored by scaling, thanks to configureBasePlate()",
|
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate do not affect scaling",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate",
|
"create.ponder.brass_hand.scene_3.thanks_to_configureBasePlate": "UNLOCALIZED: configureBasePlate() makes sure of that.",
|
||||||
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
||||||
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
||||||
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
||||||
|
"create.ponder.brass_hand.scene_5.title": "UNLOCALIZED: Debug Scene 6: Basic player interaction",
|
||||||
|
"create.ponder.brass_hand.scene_6.title": "UNLOCALIZED: Debug Scene 7: Birbs",
|
||||||
|
|
||||||
"_": "Thank you for translating Create!"
|
"_": "Thank you for translating Create!"
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"_": "Missing Localizations: 910",
|
"_": "Missing Localizations: 915",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
@ -823,6 +823,12 @@
|
|||||||
"create.gui.goggles.kinetic_stats": "UNLOCALIZED: Kinetic Stats:",
|
"create.gui.goggles.kinetic_stats": "UNLOCALIZED: Kinetic Stats:",
|
||||||
"create.gui.goggles.at_current_speed": "UNLOCALIZED: at current speed",
|
"create.gui.goggles.at_current_speed": "UNLOCALIZED: at current speed",
|
||||||
"create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:",
|
"create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:",
|
||||||
|
"create.gui.assembly.exception": "UNLOCALIZED: This Contraption was unable to assemble:",
|
||||||
|
"create.gui.assembly.exception.unmovableBlock": "UNLOCALIZED: Unmovable Block (%4$s) at [%1$s %2$s %3$s]",
|
||||||
|
"create.gui.assembly.exception.chunkNotLoaded": "UNLOCALIZED: The Block at [%1$s %2$s %3$s] was not in a loaded chunk",
|
||||||
|
"create.gui.assembly.exception.structureTooLarge": "UNLOCALIZED: There are too many Blocks included in the contraption.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.tooManyPistonPoles": "UNLOCALIZED: There are too many extension Poles attached to this Piston.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.noPistonPoles": "UNLOCALIZED: The Piston is missing some extension Poles",
|
||||||
"create.gui.gauge.info_header": "UNLOCALIZED: Gauge Information:",
|
"create.gui.gauge.info_header": "UNLOCALIZED: Gauge Information:",
|
||||||
"create.gui.speedometer.title": "UNLOCALIZED: Rotation Speed",
|
"create.gui.speedometer.title": "UNLOCALIZED: Rotation Speed",
|
||||||
"create.gui.stressometer.title": "UNLOCALIZED: Network Stress",
|
"create.gui.stressometer.title": "UNLOCALIZED: Network Stress",
|
||||||
@ -1792,14 +1798,11 @@
|
|||||||
|
|
||||||
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
||||||
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
||||||
"create.ponder.shared.more_shared": "UNLOCALIZED: This is Shared stuff",
|
"create.ponder.shared.sneak_and": "UNLOCALIZED: Sneak +",
|
||||||
"create.ponder.shared.when_wrenched": "UNLOCALIZED: When Wrenched",
|
"create.ponder.shared.ctrl_and": "UNLOCALIZED: Ctrl +",
|
||||||
"create.ponder.cogwheel.scene_0.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts will relay rotation in a straight line.",
|
||||||
"create.ponder.cogwheel.scene_1.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.cogwheel.scene_2.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts seem to relay rotation in a straight line.",
|
|
||||||
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
||||||
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: I could use Brass or Andesite Casing to hide them.",
|
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: Andesite or Brass Casing can be used to encase them.",
|
||||||
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
||||||
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
||||||
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
||||||
@ -1809,11 +1812,13 @@
|
|||||||
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
||||||
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
||||||
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds2": "UNLOCALIZED: Blocks outside of the base plate \n\nIgnored by scaling, thanks to configureBasePlate()",
|
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate do not affect scaling",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate",
|
"create.ponder.brass_hand.scene_3.thanks_to_configureBasePlate": "UNLOCALIZED: configureBasePlate() makes sure of that.",
|
||||||
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
||||||
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
||||||
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
||||||
|
"create.ponder.brass_hand.scene_5.title": "UNLOCALIZED: Debug Scene 6: Basic player interaction",
|
||||||
|
"create.ponder.brass_hand.scene_6.title": "UNLOCALIZED: Debug Scene 7: Birbs",
|
||||||
|
|
||||||
"_": "Thank you for translating Create!"
|
"_": "Thank you for translating Create!"
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"_": "Missing Localizations: 690",
|
"_": "Missing Localizations: 695",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
@ -823,6 +823,12 @@
|
|||||||
"create.gui.goggles.kinetic_stats": "Statistiques cinétiques:",
|
"create.gui.goggles.kinetic_stats": "Statistiques cinétiques:",
|
||||||
"create.gui.goggles.at_current_speed": "À la vitesse actuelle",
|
"create.gui.goggles.at_current_speed": "À la vitesse actuelle",
|
||||||
"create.gui.goggles.pole_length": "Longueur de la barre",
|
"create.gui.goggles.pole_length": "Longueur de la barre",
|
||||||
|
"create.gui.assembly.exception": "UNLOCALIZED: This Contraption was unable to assemble:",
|
||||||
|
"create.gui.assembly.exception.unmovableBlock": "UNLOCALIZED: Unmovable Block (%4$s) at [%1$s %2$s %3$s]",
|
||||||
|
"create.gui.assembly.exception.chunkNotLoaded": "UNLOCALIZED: The Block at [%1$s %2$s %3$s] was not in a loaded chunk",
|
||||||
|
"create.gui.assembly.exception.structureTooLarge": "UNLOCALIZED: There are too many Blocks included in the contraption.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.tooManyPistonPoles": "UNLOCALIZED: There are too many extension Poles attached to this Piston.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.noPistonPoles": "UNLOCALIZED: The Piston is missing some extension Poles",
|
||||||
"create.gui.gauge.info_header": "Informations sur la jauge:",
|
"create.gui.gauge.info_header": "Informations sur la jauge:",
|
||||||
"create.gui.speedometer.title": "Vitesse de rotation",
|
"create.gui.speedometer.title": "Vitesse de rotation",
|
||||||
"create.gui.stressometer.title": "Stress du réseau",
|
"create.gui.stressometer.title": "Stress du réseau",
|
||||||
@ -1792,14 +1798,11 @@
|
|||||||
|
|
||||||
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
||||||
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
||||||
"create.ponder.shared.more_shared": "UNLOCALIZED: This is Shared stuff",
|
"create.ponder.shared.sneak_and": "UNLOCALIZED: Sneak +",
|
||||||
"create.ponder.shared.when_wrenched": "UNLOCALIZED: When Wrenched",
|
"create.ponder.shared.ctrl_and": "UNLOCALIZED: Ctrl +",
|
||||||
"create.ponder.cogwheel.scene_0.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts will relay rotation in a straight line.",
|
||||||
"create.ponder.cogwheel.scene_1.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.cogwheel.scene_2.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts seem to relay rotation in a straight line.",
|
|
||||||
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
||||||
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: I could use Brass or Andesite Casing to hide them.",
|
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: Andesite or Brass Casing can be used to encase them.",
|
||||||
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
||||||
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
||||||
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
||||||
@ -1809,11 +1812,13 @@
|
|||||||
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
||||||
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
||||||
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds2": "UNLOCALIZED: Blocks outside of the base plate \n\nIgnored by scaling, thanks to configureBasePlate()",
|
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate do not affect scaling",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate",
|
"create.ponder.brass_hand.scene_3.thanks_to_configureBasePlate": "UNLOCALIZED: configureBasePlate() makes sure of that.",
|
||||||
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
||||||
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
||||||
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
||||||
|
"create.ponder.brass_hand.scene_5.title": "UNLOCALIZED: Debug Scene 6: Basic player interaction",
|
||||||
|
"create.ponder.brass_hand.scene_6.title": "UNLOCALIZED: Debug Scene 7: Birbs",
|
||||||
|
|
||||||
"_": "Thank you for translating Create!"
|
"_": "Thank you for translating Create!"
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"_": "Missing Localizations: 27",
|
"_": "Missing Localizations: 32",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
@ -823,6 +823,12 @@
|
|||||||
"create.gui.goggles.kinetic_stats": "Statistiche cinetiche:",
|
"create.gui.goggles.kinetic_stats": "Statistiche cinetiche:",
|
||||||
"create.gui.goggles.at_current_speed": "Alla velocità attuale",
|
"create.gui.goggles.at_current_speed": "Alla velocità attuale",
|
||||||
"create.gui.goggles.pole_length": "Lunghezza palo:",
|
"create.gui.goggles.pole_length": "Lunghezza palo:",
|
||||||
|
"create.gui.assembly.exception": "UNLOCALIZED: This Contraption was unable to assemble:",
|
||||||
|
"create.gui.assembly.exception.unmovableBlock": "UNLOCALIZED: Unmovable Block (%4$s) at [%1$s %2$s %3$s]",
|
||||||
|
"create.gui.assembly.exception.chunkNotLoaded": "UNLOCALIZED: The Block at [%1$s %2$s %3$s] was not in a loaded chunk",
|
||||||
|
"create.gui.assembly.exception.structureTooLarge": "UNLOCALIZED: There are too many Blocks included in the contraption.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.tooManyPistonPoles": "UNLOCALIZED: There are too many extension Poles attached to this Piston.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.noPistonPoles": "UNLOCALIZED: The Piston is missing some extension Poles",
|
||||||
"create.gui.gauge.info_header": "Informazioni sul calibro:",
|
"create.gui.gauge.info_header": "Informazioni sul calibro:",
|
||||||
"create.gui.speedometer.title": "Velocità di rotazione",
|
"create.gui.speedometer.title": "Velocità di rotazione",
|
||||||
"create.gui.stressometer.title": "Stress della rete",
|
"create.gui.stressometer.title": "Stress della rete",
|
||||||
@ -1792,14 +1798,11 @@
|
|||||||
|
|
||||||
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
||||||
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
||||||
"create.ponder.shared.more_shared": "UNLOCALIZED: This is Shared stuff",
|
"create.ponder.shared.sneak_and": "UNLOCALIZED: Sneak +",
|
||||||
"create.ponder.shared.when_wrenched": "UNLOCALIZED: When Wrenched",
|
"create.ponder.shared.ctrl_and": "UNLOCALIZED: Ctrl +",
|
||||||
"create.ponder.cogwheel.scene_0.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts will relay rotation in a straight line.",
|
||||||
"create.ponder.cogwheel.scene_1.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.cogwheel.scene_2.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts seem to relay rotation in a straight line.",
|
|
||||||
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
||||||
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: I could use Brass or Andesite Casing to hide them.",
|
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: Andesite or Brass Casing can be used to encase them.",
|
||||||
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
||||||
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
||||||
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
||||||
@ -1809,11 +1812,13 @@
|
|||||||
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
||||||
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
||||||
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds2": "UNLOCALIZED: Blocks outside of the base plate \n\nIgnored by scaling, thanks to configureBasePlate()",
|
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate do not affect scaling",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate",
|
"create.ponder.brass_hand.scene_3.thanks_to_configureBasePlate": "UNLOCALIZED: configureBasePlate() makes sure of that.",
|
||||||
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
||||||
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
||||||
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
||||||
|
"create.ponder.brass_hand.scene_5.title": "UNLOCALIZED: Debug Scene 6: Basic player interaction",
|
||||||
|
"create.ponder.brass_hand.scene_6.title": "UNLOCALIZED: Debug Scene 7: Birbs",
|
||||||
|
|
||||||
"_": "Thank you for translating Create!"
|
"_": "Thank you for translating Create!"
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"_": "Missing Localizations: 36",
|
"_": "Missing Localizations: 41",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
@ -823,6 +823,12 @@
|
|||||||
"create.gui.goggles.kinetic_stats": "動力の統計:",
|
"create.gui.goggles.kinetic_stats": "動力の統計:",
|
||||||
"create.gui.goggles.at_current_speed": "現在の速度",
|
"create.gui.goggles.at_current_speed": "現在の速度",
|
||||||
"create.gui.goggles.pole_length": "ポールの長さ:",
|
"create.gui.goggles.pole_length": "ポールの長さ:",
|
||||||
|
"create.gui.assembly.exception": "UNLOCALIZED: This Contraption was unable to assemble:",
|
||||||
|
"create.gui.assembly.exception.unmovableBlock": "UNLOCALIZED: Unmovable Block (%4$s) at [%1$s %2$s %3$s]",
|
||||||
|
"create.gui.assembly.exception.chunkNotLoaded": "UNLOCALIZED: The Block at [%1$s %2$s %3$s] was not in a loaded chunk",
|
||||||
|
"create.gui.assembly.exception.structureTooLarge": "UNLOCALIZED: There are too many Blocks included in the contraption.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.tooManyPistonPoles": "UNLOCALIZED: There are too many extension Poles attached to this Piston.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.noPistonPoles": "UNLOCALIZED: The Piston is missing some extension Poles",
|
||||||
"create.gui.gauge.info_header": "計器の情報:",
|
"create.gui.gauge.info_header": "計器の情報:",
|
||||||
"create.gui.speedometer.title": "回転速度",
|
"create.gui.speedometer.title": "回転速度",
|
||||||
"create.gui.stressometer.title": "ネットワークの応力",
|
"create.gui.stressometer.title": "ネットワークの応力",
|
||||||
@ -1792,14 +1798,11 @@
|
|||||||
|
|
||||||
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
||||||
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
||||||
"create.ponder.shared.more_shared": "UNLOCALIZED: This is Shared stuff",
|
"create.ponder.shared.sneak_and": "UNLOCALIZED: Sneak +",
|
||||||
"create.ponder.shared.when_wrenched": "UNLOCALIZED: When Wrenched",
|
"create.ponder.shared.ctrl_and": "UNLOCALIZED: Ctrl +",
|
||||||
"create.ponder.cogwheel.scene_0.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts will relay rotation in a straight line.",
|
||||||
"create.ponder.cogwheel.scene_1.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.cogwheel.scene_2.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts seem to relay rotation in a straight line.",
|
|
||||||
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
||||||
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: I could use Brass or Andesite Casing to hide them.",
|
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: Andesite or Brass Casing can be used to encase them.",
|
||||||
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
||||||
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
||||||
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
||||||
@ -1809,11 +1812,13 @@
|
|||||||
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
||||||
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
||||||
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds2": "UNLOCALIZED: Blocks outside of the base plate \n\nIgnored by scaling, thanks to configureBasePlate()",
|
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate do not affect scaling",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate",
|
"create.ponder.brass_hand.scene_3.thanks_to_configureBasePlate": "UNLOCALIZED: configureBasePlate() makes sure of that.",
|
||||||
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
||||||
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
||||||
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
||||||
|
"create.ponder.brass_hand.scene_5.title": "UNLOCALIZED: Debug Scene 6: Basic player interaction",
|
||||||
|
"create.ponder.brass_hand.scene_6.title": "UNLOCALIZED: Debug Scene 7: Birbs",
|
||||||
|
|
||||||
"_": "Thank you for translating Create!"
|
"_": "Thank you for translating Create!"
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"_": "Missing Localizations: 79",
|
"_": "Missing Localizations: 84",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
@ -823,6 +823,12 @@
|
|||||||
"create.gui.goggles.kinetic_stats": "가동 상태:",
|
"create.gui.goggles.kinetic_stats": "가동 상태:",
|
||||||
"create.gui.goggles.at_current_speed": "현재 에너지량",
|
"create.gui.goggles.at_current_speed": "현재 에너지량",
|
||||||
"create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:",
|
"create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:",
|
||||||
|
"create.gui.assembly.exception": "UNLOCALIZED: This Contraption was unable to assemble:",
|
||||||
|
"create.gui.assembly.exception.unmovableBlock": "UNLOCALIZED: Unmovable Block (%4$s) at [%1$s %2$s %3$s]",
|
||||||
|
"create.gui.assembly.exception.chunkNotLoaded": "UNLOCALIZED: The Block at [%1$s %2$s %3$s] was not in a loaded chunk",
|
||||||
|
"create.gui.assembly.exception.structureTooLarge": "UNLOCALIZED: There are too many Blocks included in the contraption.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.tooManyPistonPoles": "UNLOCALIZED: There are too many extension Poles attached to this Piston.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.noPistonPoles": "UNLOCALIZED: The Piston is missing some extension Poles",
|
||||||
"create.gui.gauge.info_header": "게이지 정보:",
|
"create.gui.gauge.info_header": "게이지 정보:",
|
||||||
"create.gui.speedometer.title": "회전 속도",
|
"create.gui.speedometer.title": "회전 속도",
|
||||||
"create.gui.stressometer.title": "네트워크 부하",
|
"create.gui.stressometer.title": "네트워크 부하",
|
||||||
@ -1792,14 +1798,11 @@
|
|||||||
|
|
||||||
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
||||||
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
||||||
"create.ponder.shared.more_shared": "UNLOCALIZED: This is Shared stuff",
|
"create.ponder.shared.sneak_and": "UNLOCALIZED: Sneak +",
|
||||||
"create.ponder.shared.when_wrenched": "UNLOCALIZED: When Wrenched",
|
"create.ponder.shared.ctrl_and": "UNLOCALIZED: Ctrl +",
|
||||||
"create.ponder.cogwheel.scene_0.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts will relay rotation in a straight line.",
|
||||||
"create.ponder.cogwheel.scene_1.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.cogwheel.scene_2.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts seem to relay rotation in a straight line.",
|
|
||||||
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
||||||
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: I could use Brass or Andesite Casing to hide them.",
|
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: Andesite or Brass Casing can be used to encase them.",
|
||||||
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
||||||
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
||||||
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
||||||
@ -1809,11 +1812,13 @@
|
|||||||
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
||||||
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
||||||
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds2": "UNLOCALIZED: Blocks outside of the base plate \n\nIgnored by scaling, thanks to configureBasePlate()",
|
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate do not affect scaling",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate",
|
"create.ponder.brass_hand.scene_3.thanks_to_configureBasePlate": "UNLOCALIZED: configureBasePlate() makes sure of that.",
|
||||||
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
||||||
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
||||||
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
||||||
|
"create.ponder.brass_hand.scene_5.title": "UNLOCALIZED: Debug Scene 6: Basic player interaction",
|
||||||
|
"create.ponder.brass_hand.scene_6.title": "UNLOCALIZED: Debug Scene 7: Birbs",
|
||||||
|
|
||||||
"_": "Thank you for translating Create!"
|
"_": "Thank you for translating Create!"
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"_": "Missing Localizations: 1179",
|
"_": "Missing Localizations: 1184",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
@ -823,6 +823,12 @@
|
|||||||
"create.gui.goggles.kinetic_stats": "UNLOCALIZED: Kinetic Stats:",
|
"create.gui.goggles.kinetic_stats": "UNLOCALIZED: Kinetic Stats:",
|
||||||
"create.gui.goggles.at_current_speed": "UNLOCALIZED: at current speed",
|
"create.gui.goggles.at_current_speed": "UNLOCALIZED: at current speed",
|
||||||
"create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:",
|
"create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:",
|
||||||
|
"create.gui.assembly.exception": "UNLOCALIZED: This Contraption was unable to assemble:",
|
||||||
|
"create.gui.assembly.exception.unmovableBlock": "UNLOCALIZED: Unmovable Block (%4$s) at [%1$s %2$s %3$s]",
|
||||||
|
"create.gui.assembly.exception.chunkNotLoaded": "UNLOCALIZED: The Block at [%1$s %2$s %3$s] was not in a loaded chunk",
|
||||||
|
"create.gui.assembly.exception.structureTooLarge": "UNLOCALIZED: There are too many Blocks included in the contraption.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.tooManyPistonPoles": "UNLOCALIZED: There are too many extension Poles attached to this Piston.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.noPistonPoles": "UNLOCALIZED: The Piston is missing some extension Poles",
|
||||||
"create.gui.gauge.info_header": "UNLOCALIZED: Gauge Information:",
|
"create.gui.gauge.info_header": "UNLOCALIZED: Gauge Information:",
|
||||||
"create.gui.speedometer.title": "UNLOCALIZED: Rotation Speed",
|
"create.gui.speedometer.title": "UNLOCALIZED: Rotation Speed",
|
||||||
"create.gui.stressometer.title": "UNLOCALIZED: Network Stress",
|
"create.gui.stressometer.title": "UNLOCALIZED: Network Stress",
|
||||||
@ -1792,14 +1798,11 @@
|
|||||||
|
|
||||||
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
||||||
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
||||||
"create.ponder.shared.more_shared": "UNLOCALIZED: This is Shared stuff",
|
"create.ponder.shared.sneak_and": "UNLOCALIZED: Sneak +",
|
||||||
"create.ponder.shared.when_wrenched": "UNLOCALIZED: When Wrenched",
|
"create.ponder.shared.ctrl_and": "UNLOCALIZED: Ctrl +",
|
||||||
"create.ponder.cogwheel.scene_0.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts will relay rotation in a straight line.",
|
||||||
"create.ponder.cogwheel.scene_1.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.cogwheel.scene_2.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts seem to relay rotation in a straight line.",
|
|
||||||
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
||||||
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: I could use Brass or Andesite Casing to hide them.",
|
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: Andesite or Brass Casing can be used to encase them.",
|
||||||
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
||||||
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
||||||
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
||||||
@ -1809,11 +1812,13 @@
|
|||||||
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
||||||
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
||||||
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds2": "UNLOCALIZED: Blocks outside of the base plate \n\nIgnored by scaling, thanks to configureBasePlate()",
|
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate do not affect scaling",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate",
|
"create.ponder.brass_hand.scene_3.thanks_to_configureBasePlate": "UNLOCALIZED: configureBasePlate() makes sure of that.",
|
||||||
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
||||||
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
||||||
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
||||||
|
"create.ponder.brass_hand.scene_5.title": "UNLOCALIZED: Debug Scene 6: Basic player interaction",
|
||||||
|
"create.ponder.brass_hand.scene_6.title": "UNLOCALIZED: Debug Scene 7: Birbs",
|
||||||
|
|
||||||
"_": "Thank you for translating Create!"
|
"_": "Thank you for translating Create!"
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"_": "Missing Localizations: 1245",
|
"_": "Missing Localizations: 1250",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
@ -823,6 +823,12 @@
|
|||||||
"create.gui.goggles.kinetic_stats": "UNLOCALIZED: Kinetic Stats:",
|
"create.gui.goggles.kinetic_stats": "UNLOCALIZED: Kinetic Stats:",
|
||||||
"create.gui.goggles.at_current_speed": "UNLOCALIZED: at current speed",
|
"create.gui.goggles.at_current_speed": "UNLOCALIZED: at current speed",
|
||||||
"create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:",
|
"create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:",
|
||||||
|
"create.gui.assembly.exception": "UNLOCALIZED: This Contraption was unable to assemble:",
|
||||||
|
"create.gui.assembly.exception.unmovableBlock": "UNLOCALIZED: Unmovable Block (%4$s) at [%1$s %2$s %3$s]",
|
||||||
|
"create.gui.assembly.exception.chunkNotLoaded": "UNLOCALIZED: The Block at [%1$s %2$s %3$s] was not in a loaded chunk",
|
||||||
|
"create.gui.assembly.exception.structureTooLarge": "UNLOCALIZED: There are too many Blocks included in the contraption.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.tooManyPistonPoles": "UNLOCALIZED: There are too many extension Poles attached to this Piston.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.noPistonPoles": "UNLOCALIZED: The Piston is missing some extension Poles",
|
||||||
"create.gui.gauge.info_header": "UNLOCALIZED: Gauge Information:",
|
"create.gui.gauge.info_header": "UNLOCALIZED: Gauge Information:",
|
||||||
"create.gui.speedometer.title": "UNLOCALIZED: Rotation Speed",
|
"create.gui.speedometer.title": "UNLOCALIZED: Rotation Speed",
|
||||||
"create.gui.stressometer.title": "UNLOCALIZED: Network Stress",
|
"create.gui.stressometer.title": "UNLOCALIZED: Network Stress",
|
||||||
@ -1792,14 +1798,11 @@
|
|||||||
|
|
||||||
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
||||||
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
||||||
"create.ponder.shared.more_shared": "UNLOCALIZED: This is Shared stuff",
|
"create.ponder.shared.sneak_and": "UNLOCALIZED: Sneak +",
|
||||||
"create.ponder.shared.when_wrenched": "UNLOCALIZED: When Wrenched",
|
"create.ponder.shared.ctrl_and": "UNLOCALIZED: Ctrl +",
|
||||||
"create.ponder.cogwheel.scene_0.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts will relay rotation in a straight line.",
|
||||||
"create.ponder.cogwheel.scene_1.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.cogwheel.scene_2.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts seem to relay rotation in a straight line.",
|
|
||||||
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
||||||
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: I could use Brass or Andesite Casing to hide them.",
|
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: Andesite or Brass Casing can be used to encase them.",
|
||||||
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
||||||
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
||||||
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
||||||
@ -1809,11 +1812,13 @@
|
|||||||
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
||||||
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
||||||
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds2": "UNLOCALIZED: Blocks outside of the base plate \n\nIgnored by scaling, thanks to configureBasePlate()",
|
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate do not affect scaling",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate",
|
"create.ponder.brass_hand.scene_3.thanks_to_configureBasePlate": "UNLOCALIZED: configureBasePlate() makes sure of that.",
|
||||||
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
||||||
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
||||||
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
||||||
|
"create.ponder.brass_hand.scene_5.title": "UNLOCALIZED: Debug Scene 6: Basic player interaction",
|
||||||
|
"create.ponder.brass_hand.scene_6.title": "UNLOCALIZED: Debug Scene 7: Birbs",
|
||||||
|
|
||||||
"_": "Thank you for translating Create!"
|
"_": "Thank you for translating Create!"
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"_": "Missing Localizations: 29",
|
"_": "Missing Localizations: 34",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
@ -823,6 +823,12 @@
|
|||||||
"create.gui.goggles.kinetic_stats": "Кинетическая статистика:",
|
"create.gui.goggles.kinetic_stats": "Кинетическая статистика:",
|
||||||
"create.gui.goggles.at_current_speed": "На текущей скорости",
|
"create.gui.goggles.at_current_speed": "На текущей скорости",
|
||||||
"create.gui.goggles.pole_length": "Длина поршня",
|
"create.gui.goggles.pole_length": "Длина поршня",
|
||||||
|
"create.gui.assembly.exception": "UNLOCALIZED: This Contraption was unable to assemble:",
|
||||||
|
"create.gui.assembly.exception.unmovableBlock": "UNLOCALIZED: Unmovable Block (%4$s) at [%1$s %2$s %3$s]",
|
||||||
|
"create.gui.assembly.exception.chunkNotLoaded": "UNLOCALIZED: The Block at [%1$s %2$s %3$s] was not in a loaded chunk",
|
||||||
|
"create.gui.assembly.exception.structureTooLarge": "UNLOCALIZED: There are too many Blocks included in the contraption.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.tooManyPistonPoles": "UNLOCALIZED: There are too many extension Poles attached to this Piston.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.noPistonPoles": "UNLOCALIZED: The Piston is missing some extension Poles",
|
||||||
"create.gui.gauge.info_header": "Калибровочная информация:",
|
"create.gui.gauge.info_header": "Калибровочная информация:",
|
||||||
"create.gui.speedometer.title": "Скорость вращения",
|
"create.gui.speedometer.title": "Скорость вращения",
|
||||||
"create.gui.stressometer.title": "Сетевой момент",
|
"create.gui.stressometer.title": "Сетевой момент",
|
||||||
@ -1792,14 +1798,11 @@
|
|||||||
|
|
||||||
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
||||||
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
||||||
"create.ponder.shared.more_shared": "UNLOCALIZED: This is Shared stuff",
|
"create.ponder.shared.sneak_and": "UNLOCALIZED: Sneak +",
|
||||||
"create.ponder.shared.when_wrenched": "UNLOCALIZED: When Wrenched",
|
"create.ponder.shared.ctrl_and": "UNLOCALIZED: Ctrl +",
|
||||||
"create.ponder.cogwheel.scene_0.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts will relay rotation in a straight line.",
|
||||||
"create.ponder.cogwheel.scene_1.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.cogwheel.scene_2.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts seem to relay rotation in a straight line.",
|
|
||||||
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
||||||
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: I could use Brass or Andesite Casing to hide them.",
|
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: Andesite or Brass Casing can be used to encase them.",
|
||||||
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
||||||
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
||||||
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
||||||
@ -1809,11 +1812,13 @@
|
|||||||
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
||||||
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
||||||
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds2": "UNLOCALIZED: Blocks outside of the base plate \n\nIgnored by scaling, thanks to configureBasePlate()",
|
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate do not affect scaling",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate",
|
"create.ponder.brass_hand.scene_3.thanks_to_configureBasePlate": "UNLOCALIZED: configureBasePlate() makes sure of that.",
|
||||||
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
||||||
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
||||||
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
||||||
|
"create.ponder.brass_hand.scene_5.title": "UNLOCALIZED: Debug Scene 6: Basic player interaction",
|
||||||
|
"create.ponder.brass_hand.scene_6.title": "UNLOCALIZED: Debug Scene 7: Birbs",
|
||||||
|
|
||||||
"_": "Thank you for translating Create!"
|
"_": "Thank you for translating Create!"
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"_": "Missing Localizations: 27",
|
"_": "Missing Localizations: 32",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
@ -823,6 +823,12 @@
|
|||||||
"create.gui.goggles.kinetic_stats": "动力学状态:",
|
"create.gui.goggles.kinetic_stats": "动力学状态:",
|
||||||
"create.gui.goggles.at_current_speed": "当前速度应力值",
|
"create.gui.goggles.at_current_speed": "当前速度应力值",
|
||||||
"create.gui.goggles.pole_length": "活塞杆长度:",
|
"create.gui.goggles.pole_length": "活塞杆长度:",
|
||||||
|
"create.gui.assembly.exception": "UNLOCALIZED: This Contraption was unable to assemble:",
|
||||||
|
"create.gui.assembly.exception.unmovableBlock": "UNLOCALIZED: Unmovable Block (%4$s) at [%1$s %2$s %3$s]",
|
||||||
|
"create.gui.assembly.exception.chunkNotLoaded": "UNLOCALIZED: The Block at [%1$s %2$s %3$s] was not in a loaded chunk",
|
||||||
|
"create.gui.assembly.exception.structureTooLarge": "UNLOCALIZED: There are too many Blocks included in the contraption.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.tooManyPistonPoles": "UNLOCALIZED: There are too many extension Poles attached to this Piston.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.noPistonPoles": "UNLOCALIZED: The Piston is missing some extension Poles",
|
||||||
"create.gui.gauge.info_header": "仪表信息:",
|
"create.gui.gauge.info_header": "仪表信息:",
|
||||||
"create.gui.speedometer.title": "旋转速度",
|
"create.gui.speedometer.title": "旋转速度",
|
||||||
"create.gui.stressometer.title": "网络应力",
|
"create.gui.stressometer.title": "网络应力",
|
||||||
@ -1792,14 +1798,11 @@
|
|||||||
|
|
||||||
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
||||||
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
||||||
"create.ponder.shared.more_shared": "UNLOCALIZED: This is Shared stuff",
|
"create.ponder.shared.sneak_and": "UNLOCALIZED: Sneak +",
|
||||||
"create.ponder.shared.when_wrenched": "UNLOCALIZED: When Wrenched",
|
"create.ponder.shared.ctrl_and": "UNLOCALIZED: Ctrl +",
|
||||||
"create.ponder.cogwheel.scene_0.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts will relay rotation in a straight line.",
|
||||||
"create.ponder.cogwheel.scene_1.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.cogwheel.scene_2.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts seem to relay rotation in a straight line.",
|
|
||||||
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
||||||
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: I could use Brass or Andesite Casing to hide them.",
|
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: Andesite or Brass Casing can be used to encase them.",
|
||||||
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
||||||
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
||||||
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
||||||
@ -1809,11 +1812,13 @@
|
|||||||
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
||||||
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
||||||
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds2": "UNLOCALIZED: Blocks outside of the base plate \n\nIgnored by scaling, thanks to configureBasePlate()",
|
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate do not affect scaling",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate",
|
"create.ponder.brass_hand.scene_3.thanks_to_configureBasePlate": "UNLOCALIZED: configureBasePlate() makes sure of that.",
|
||||||
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
||||||
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
||||||
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
||||||
|
"create.ponder.brass_hand.scene_5.title": "UNLOCALIZED: Debug Scene 6: Basic player interaction",
|
||||||
|
"create.ponder.brass_hand.scene_6.title": "UNLOCALIZED: Debug Scene 7: Birbs",
|
||||||
|
|
||||||
"_": "Thank you for translating Create!"
|
"_": "Thank you for translating Create!"
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"_": "Missing Localizations: 32",
|
"_": "Missing Localizations: 37",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
@ -823,6 +823,12 @@
|
|||||||
"create.gui.goggles.kinetic_stats": "機械學狀態:",
|
"create.gui.goggles.kinetic_stats": "機械學狀態:",
|
||||||
"create.gui.goggles.at_current_speed": "現在速度動能值",
|
"create.gui.goggles.at_current_speed": "現在速度動能值",
|
||||||
"create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:",
|
"create.gui.goggles.pole_length": "UNLOCALIZED: Pole Length:",
|
||||||
|
"create.gui.assembly.exception": "UNLOCALIZED: This Contraption was unable to assemble:",
|
||||||
|
"create.gui.assembly.exception.unmovableBlock": "UNLOCALIZED: Unmovable Block (%4$s) at [%1$s %2$s %3$s]",
|
||||||
|
"create.gui.assembly.exception.chunkNotLoaded": "UNLOCALIZED: The Block at [%1$s %2$s %3$s] was not in a loaded chunk",
|
||||||
|
"create.gui.assembly.exception.structureTooLarge": "UNLOCALIZED: There are too many Blocks included in the contraption.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.tooManyPistonPoles": "UNLOCALIZED: There are too many extension Poles attached to this Piston.\nThe configured maximum is: %1$s",
|
||||||
|
"create.gui.assembly.exception.noPistonPoles": "UNLOCALIZED: The Piston is missing some extension Poles",
|
||||||
"create.gui.gauge.info_header": "儀表訊息:",
|
"create.gui.gauge.info_header": "儀表訊息:",
|
||||||
"create.gui.speedometer.title": "旋轉速度",
|
"create.gui.speedometer.title": "旋轉速度",
|
||||||
"create.gui.stressometer.title": "網路動能",
|
"create.gui.stressometer.title": "網路動能",
|
||||||
@ -1792,14 +1798,11 @@
|
|||||||
|
|
||||||
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
"create.ponder.hold_to_ponder": "UNLOCALIZED: Hold [%1$s] to Ponder",
|
||||||
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
"create.ponder.pondering": "UNLOCALIZED: Pondering about...",
|
||||||
"create.ponder.shared.more_shared": "UNLOCALIZED: This is Shared stuff",
|
"create.ponder.shared.sneak_and": "UNLOCALIZED: Sneak +",
|
||||||
"create.ponder.shared.when_wrenched": "UNLOCALIZED: When Wrenched",
|
"create.ponder.shared.ctrl_and": "UNLOCALIZED: Ctrl +",
|
||||||
"create.ponder.cogwheel.scene_0.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts will relay rotation in a straight line.",
|
||||||
"create.ponder.cogwheel.scene_1.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.cogwheel.scene_2.title": "UNLOCALIZED: My First Ponder Story, Parrots",
|
|
||||||
"create.ponder.shaft.scene_0.shaft_relay": "UNLOCALIZED: Shafts seem to relay rotation in a straight line.",
|
|
||||||
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
"create.ponder.shaft.scene_0.title": "UNLOCALIZED: Relaying rotational force using Shafts",
|
||||||
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: I could use Brass or Andesite Casing to hide them.",
|
"create.ponder.shaft.scene_1.shaft_can_be_encased": "UNLOCALIZED: Andesite or Brass Casing can be used to encase them.",
|
||||||
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
"create.ponder.shaft.scene_1.title": "UNLOCALIZED: Encasing Shafts",
|
||||||
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
"create.ponder.brass_hand.scene_0.x": "UNLOCALIZED: Das X axis",
|
||||||
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
"create.ponder.brass_hand.scene_0.y": "UNLOCALIZED: Das Y axis",
|
||||||
@ -1809,11 +1812,13 @@
|
|||||||
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
"create.ponder.brass_hand.scene_1.title": "UNLOCALIZED: Debug Scene 2: Changing Blocks",
|
||||||
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
"create.ponder.brass_hand.scene_2.title": "UNLOCALIZED: Debug Scene 3: Showing Fluids",
|
||||||
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
"create.ponder.brass_hand.scene_2.fluids": "UNLOCALIZED: Fluid rendering test.",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds2": "UNLOCALIZED: Blocks outside of the base plate \n\nIgnored by scaling, thanks to configureBasePlate()",
|
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate do not affect scaling",
|
||||||
"create.ponder.brass_hand.scene_3.outofbounds": "UNLOCALIZED: Blocks outside of the base plate",
|
"create.ponder.brass_hand.scene_3.thanks_to_configureBasePlate": "UNLOCALIZED: configureBasePlate() makes sure of that.",
|
||||||
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
"create.ponder.brass_hand.scene_3.title": "UNLOCALIZED: Debug Scene 4: Out of bounds / configureBasePlate",
|
||||||
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
"create.ponder.brass_hand.scene_4.incoming": "UNLOCALIZED: Incoming...",
|
||||||
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
"create.ponder.brass_hand.scene_4.title": "UNLOCALIZED: Debug Scene 5: Emitting particles",
|
||||||
|
"create.ponder.brass_hand.scene_5.title": "UNLOCALIZED: Debug Scene 6: Basic player interaction",
|
||||||
|
"create.ponder.brass_hand.scene_6.title": "UNLOCALIZED: Debug Scene 7: Birbs",
|
||||||
|
|
||||||
"_": "Thank you for translating Create!"
|
"_": "Thank you for translating Create!"
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@ import net.minecraft.tileentity.TileEntityType;
|
|||||||
import net.minecraft.util.math.MathHelper;
|
import net.minecraft.util.math.MathHelper;
|
||||||
import net.minecraft.util.text.TextFormatting;
|
import net.minecraft.util.text.TextFormatting;
|
||||||
|
|
||||||
public class SpeedGaugeTileEntity extends GaugeTileEntity{
|
public class SpeedGaugeTileEntity extends GaugeTileEntity {
|
||||||
|
|
||||||
public SpeedGaugeTileEntity(TileEntityType<? extends SpeedGaugeTileEntity> type) {
|
public SpeedGaugeTileEntity(TileEntityType<? extends SpeedGaugeTileEntity> type) {
|
||||||
super(type);
|
super(type);
|
||||||
@ -23,28 +23,36 @@ public class SpeedGaugeTileEntity extends GaugeTileEntity{
|
|||||||
public void onSpeedChanged(float prevSpeed) {
|
public void onSpeedChanged(float prevSpeed) {
|
||||||
super.onSpeedChanged(prevSpeed);
|
super.onSpeedChanged(prevSpeed);
|
||||||
float speed = Math.abs(getSpeed());
|
float speed = Math.abs(getSpeed());
|
||||||
float medium = AllConfigs.SERVER.kinetics.mediumSpeed.get().floatValue();
|
|
||||||
float fast = AllConfigs.SERVER.kinetics.fastSpeed.get().floatValue();
|
|
||||||
float max = AllConfigs.SERVER.kinetics.maxRotationSpeed.get().floatValue();
|
|
||||||
color = ColorHelper.mixColors(SpeedLevel.of(speed).getColor(), 0xffffff, .25f);
|
|
||||||
|
|
||||||
|
color = speed == 0 ? 0x333333
|
||||||
|
: ColorHelper.mixColors(SpeedLevel.of(speed)
|
||||||
|
.getColor(), 0xffffff, .25f);
|
||||||
if (speed == 69)
|
if (speed == 69)
|
||||||
AllTriggers.triggerForNearbyPlayers(AllTriggers.SPEED_READ, world, pos, 6,
|
AllTriggers.triggerForNearbyPlayers(AllTriggers.SPEED_READ, world, pos, 6, GogglesItem::canSeeParticles);
|
||||||
GogglesItem::canSeeParticles);
|
|
||||||
if (speed == 0) {
|
dialTarget = getDialTarget(speed);
|
||||||
dialTarget = 0;
|
|
||||||
color = 0x333333;
|
|
||||||
} else if (speed < medium) {
|
|
||||||
dialTarget = MathHelper.lerp(speed / medium, 0, .45f);
|
|
||||||
} else if (speed < fast) {
|
|
||||||
dialTarget = MathHelper.lerp((speed - medium) / (fast - medium), .45f, .75f);
|
|
||||||
} else {
|
|
||||||
dialTarget = MathHelper.lerp((speed - fast) / (max - fast), .75f, 1.125f);
|
|
||||||
}
|
|
||||||
|
|
||||||
markDirty();
|
markDirty();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static float getDialTarget(float speed) {
|
||||||
|
float medium = AllConfigs.SERVER.kinetics.mediumSpeed.get()
|
||||||
|
.floatValue();
|
||||||
|
float fast = AllConfigs.SERVER.kinetics.fastSpeed.get()
|
||||||
|
.floatValue();
|
||||||
|
float max = AllConfigs.SERVER.kinetics.maxRotationSpeed.get()
|
||||||
|
.floatValue();
|
||||||
|
float target = 0;
|
||||||
|
if (speed == 0)
|
||||||
|
target = 0;
|
||||||
|
else if (speed < medium)
|
||||||
|
target = MathHelper.lerp(speed / medium, 0, .45f);
|
||||||
|
else if (speed < fast)
|
||||||
|
target = MathHelper.lerp((speed - medium) / (fast - medium), .45f, .75f);
|
||||||
|
else
|
||||||
|
target = MathHelper.lerp((speed - fast) / (max - fast), .75f, 1.125f);
|
||||||
|
return target;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean addToGoggleTooltip(List<String> tooltip, boolean isPlayerSneaking) {
|
public boolean addToGoggleTooltip(List<String> tooltip, boolean isPlayerSneaking) {
|
||||||
super.addToGoggleTooltip(tooltip, isPlayerSneaking);
|
super.addToGoggleTooltip(tooltip, isPlayerSneaking);
|
||||||
|
@ -78,6 +78,9 @@ public enum AllGuiTextures {
|
|||||||
INDICATOR_GREEN("widgets.png", 36, 18, 18, 6),
|
INDICATOR_GREEN("widgets.png", 36, 18, 18, 6),
|
||||||
INDICATOR_YELLOW("widgets.png", 54, 18, 18, 6),
|
INDICATOR_YELLOW("widgets.png", 54, 18, 18, 6),
|
||||||
INDICATOR_RED("widgets.png", 72, 18, 18, 6),
|
INDICATOR_RED("widgets.png", 72, 18, 18, 6),
|
||||||
|
|
||||||
|
SPEECH_TOOLTIP("widgets.png", 0, 24, 8, 8),
|
||||||
|
SPEECH_TOOLTIP_HIGHLIGHT("widgets.png", 8, 24, 8, 8),
|
||||||
|
|
||||||
;
|
;
|
||||||
|
|
||||||
|
@ -70,7 +70,10 @@ public class AllIcons {
|
|||||||
I_REPLACE = next(),
|
I_REPLACE = next(),
|
||||||
I_CLEAR = next(),
|
I_CLEAR = next(),
|
||||||
I_OVERLAY = next(),
|
I_OVERLAY = next(),
|
||||||
I_FLATTEN = next();
|
I_FLATTEN = next(),
|
||||||
|
I_LMB = next(),
|
||||||
|
I_SCROLL = next(),
|
||||||
|
I_RMB = next();
|
||||||
|
|
||||||
public static final AllIcons
|
public static final AllIcons
|
||||||
I_TOOL_DEPLOY = newRow(),
|
I_TOOL_DEPLOY = newRow(),
|
||||||
|
@ -23,7 +23,6 @@ import net.minecraft.nbt.CompressedStreamTools;
|
|||||||
import net.minecraft.nbt.NBTSizeTracker;
|
import net.minecraft.nbt.NBTSizeTracker;
|
||||||
import net.minecraft.util.ResourceLocation;
|
import net.minecraft.util.ResourceLocation;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.util.math.Vec3i;
|
|
||||||
import net.minecraft.world.gen.feature.template.PlacementSettings;
|
import net.minecraft.world.gen.feature.template.PlacementSettings;
|
||||||
import net.minecraft.world.gen.feature.template.Template;
|
import net.minecraft.world.gen.feature.template.Template;
|
||||||
|
|
||||||
|
@ -14,6 +14,7 @@ import com.simibubi.create.content.contraptions.base.KineticTileEntity;
|
|||||||
import com.simibubi.create.content.contraptions.relays.gauge.SpeedGaugeTileEntity;
|
import com.simibubi.create.content.contraptions.relays.gauge.SpeedGaugeTileEntity;
|
||||||
import com.simibubi.create.content.logistics.block.funnel.FunnelTileEntity;
|
import com.simibubi.create.content.logistics.block.funnel.FunnelTileEntity;
|
||||||
import com.simibubi.create.foundation.ponder.content.PonderPalette;
|
import com.simibubi.create.foundation.ponder.content.PonderPalette;
|
||||||
|
import com.simibubi.create.foundation.ponder.elements.InputWindowElement;
|
||||||
import com.simibubi.create.foundation.ponder.elements.ParrotElement;
|
import com.simibubi.create.foundation.ponder.elements.ParrotElement;
|
||||||
import com.simibubi.create.foundation.ponder.elements.PonderOverlayElement;
|
import com.simibubi.create.foundation.ponder.elements.PonderOverlayElement;
|
||||||
import com.simibubi.create.foundation.ponder.elements.PonderSceneElement;
|
import com.simibubi.create.foundation.ponder.elements.PonderSceneElement;
|
||||||
@ -21,12 +22,15 @@ import com.simibubi.create.foundation.ponder.elements.WorldSectionElement;
|
|||||||
import com.simibubi.create.foundation.ponder.instructions.CreateParrotInstruction;
|
import com.simibubi.create.foundation.ponder.instructions.CreateParrotInstruction;
|
||||||
import com.simibubi.create.foundation.ponder.instructions.DelayInstruction;
|
import com.simibubi.create.foundation.ponder.instructions.DelayInstruction;
|
||||||
import com.simibubi.create.foundation.ponder.instructions.DisplayWorldSectionInstruction;
|
import com.simibubi.create.foundation.ponder.instructions.DisplayWorldSectionInstruction;
|
||||||
|
import com.simibubi.create.foundation.ponder.instructions.EmitParticlesInstruction;
|
||||||
|
import com.simibubi.create.foundation.ponder.instructions.EmitParticlesInstruction.Emitter;
|
||||||
import com.simibubi.create.foundation.ponder.instructions.HideAllInstruction;
|
import com.simibubi.create.foundation.ponder.instructions.HideAllInstruction;
|
||||||
import com.simibubi.create.foundation.ponder.instructions.MarkAsFinishedInstruction;
|
import com.simibubi.create.foundation.ponder.instructions.MarkAsFinishedInstruction;
|
||||||
import com.simibubi.create.foundation.ponder.instructions.MovePoiInstruction;
|
import com.simibubi.create.foundation.ponder.instructions.MovePoiInstruction;
|
||||||
import com.simibubi.create.foundation.ponder.instructions.ReplaceBlocksInstruction;
|
import com.simibubi.create.foundation.ponder.instructions.ReplaceBlocksInstruction;
|
||||||
import com.simibubi.create.foundation.ponder.instructions.RotateSceneInstruction;
|
import com.simibubi.create.foundation.ponder.instructions.RotateSceneInstruction;
|
||||||
import com.simibubi.create.foundation.ponder.instructions.ShowCompleteSchematicInstruction;
|
import com.simibubi.create.foundation.ponder.instructions.ShowCompleteSchematicInstruction;
|
||||||
|
import com.simibubi.create.foundation.ponder.instructions.ShowInputInstruction;
|
||||||
import com.simibubi.create.foundation.ponder.instructions.TextInstruction;
|
import com.simibubi.create.foundation.ponder.instructions.TextInstruction;
|
||||||
import com.simibubi.create.foundation.ponder.instructions.TileEntityDataInstruction;
|
import com.simibubi.create.foundation.ponder.instructions.TileEntityDataInstruction;
|
||||||
import com.simibubi.create.foundation.renderState.SuperRenderTypeBuffer;
|
import com.simibubi.create.foundation.renderState.SuperRenderTypeBuffer;
|
||||||
@ -41,6 +45,7 @@ import net.minecraft.client.renderer.ActiveRenderInfo;
|
|||||||
import net.minecraft.client.renderer.Matrix4f;
|
import net.minecraft.client.renderer.Matrix4f;
|
||||||
import net.minecraft.client.renderer.RenderType;
|
import net.minecraft.client.renderer.RenderType;
|
||||||
import net.minecraft.client.renderer.Vector4f;
|
import net.minecraft.client.renderer.Vector4f;
|
||||||
|
import net.minecraft.particles.RedstoneParticleData;
|
||||||
import net.minecraft.util.Direction;
|
import net.minecraft.util.Direction;
|
||||||
import net.minecraft.util.ResourceLocation;
|
import net.minecraft.util.ResourceLocation;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
@ -360,7 +365,7 @@ public class PonderScene {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public SceneBuilder replaceBlocks(Select selection, BlockState state) {
|
public SceneBuilder replaceBlocks(Select selection, BlockState state) {
|
||||||
return addInstruction(new ReplaceBlocksInstruction(selection, state, false));
|
return addInstruction(new ReplaceBlocksInstruction(selection, state, true));
|
||||||
}
|
}
|
||||||
|
|
||||||
public SceneBuilder setKineticSpeed(Select selection, float speed) {
|
public SceneBuilder setKineticSpeed(Select selection, float speed) {
|
||||||
@ -373,17 +378,11 @@ public class PonderScene {
|
|||||||
|
|
||||||
public SceneBuilder modifyKineticSpeed(Select selection, UnaryOperator<Float> speedFunc) {
|
public SceneBuilder modifyKineticSpeed(Select selection, UnaryOperator<Float> speedFunc) {
|
||||||
addInstruction(new TileEntityDataInstruction(selection, SpeedGaugeTileEntity.class, nbt -> {
|
addInstruction(new TileEntityDataInstruction(selection, SpeedGaugeTileEntity.class, nbt -> {
|
||||||
if (!nbt.contains("Speed"))
|
|
||||||
return nbt;
|
|
||||||
float newSpeed = speedFunc.apply(nbt.getFloat("Speed"));
|
float newSpeed = speedFunc.apply(nbt.getFloat("Speed"));
|
||||||
// TODO speed gauge consistency
|
nbt.putFloat("Value", SpeedGaugeTileEntity.getDialTarget(newSpeed));
|
||||||
nbt.putFloat("Value", Math.abs(newSpeed) / 256f);
|
|
||||||
return nbt;
|
return nbt;
|
||||||
}, false));
|
}, false));
|
||||||
|
|
||||||
return addInstruction(new TileEntityDataInstruction(selection, KineticTileEntity.class, nbt -> {
|
return addInstruction(new TileEntityDataInstruction(selection, KineticTileEntity.class, nbt -> {
|
||||||
if (!nbt.contains("Speed"))
|
|
||||||
return nbt;
|
|
||||||
nbt.putFloat("Speed", speedFunc.apply(nbt.getFloat("Speed")));
|
nbt.putFloat("Speed", speedFunc.apply(nbt.getFloat("Speed")));
|
||||||
return nbt;
|
return nbt;
|
||||||
}, false));
|
}, false));
|
||||||
@ -396,19 +395,42 @@ public class PonderScene {
|
|||||||
}, false));
|
}, false));
|
||||||
}
|
}
|
||||||
|
|
||||||
public SceneBuilder createParrotSpinningOn(BlockPos pos, Direction fadeInDirection) {
|
|
||||||
return addInstruction(new CreateParrotInstruction(15, fadeInDirection,
|
|
||||||
ParrotElement.spinOnComponent(new Vec3d(pos).add(.5, 0, .5), pos.down())));
|
|
||||||
}
|
|
||||||
|
|
||||||
public SceneBuilder createParrotLookingAtPOI(Vec3d location, Direction fadeInDirection) {
|
|
||||||
return addInstruction(new CreateParrotInstruction(15, fadeInDirection, ParrotElement.lookAtPOI(location)));
|
|
||||||
}
|
|
||||||
|
|
||||||
public SceneBuilder movePOI(Vec3d location) {
|
public SceneBuilder movePOI(Vec3d location) {
|
||||||
return addInstruction(new MovePoiInstruction(location));
|
return addInstruction(new MovePoiInstruction(location));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public SceneBuilder showControls(InputWindowElement element, int duration) {
|
||||||
|
return addInstruction(new ShowInputInstruction(element, duration));
|
||||||
|
}
|
||||||
|
|
||||||
|
public SceneBuilder emitParticles(Vec3d location, Emitter emitter, float amountPerCycle, int cycles) {
|
||||||
|
return addInstruction(new EmitParticlesInstruction(location, emitter, amountPerCycle, cycles));
|
||||||
|
}
|
||||||
|
|
||||||
|
public SceneBuilder indicateSuccess(BlockPos pos) {
|
||||||
|
return addInstruction(new EmitParticlesInstruction(VecHelper.getCenterOf(pos),
|
||||||
|
Emitter.withinBlockSpace(new RedstoneParticleData(.5f, 1, .7f, 1), new Vec3d(0, 0, 0)), 20, 2));
|
||||||
|
}
|
||||||
|
|
||||||
|
public SceneBuilder birbOnTurntable(BlockPos pos) {
|
||||||
|
return addInstruction(new CreateParrotInstruction(10, Direction.DOWN,
|
||||||
|
ParrotElement.spinOnComponent(VecHelper.getCenterOf(pos), pos)));
|
||||||
|
}
|
||||||
|
|
||||||
|
public SceneBuilder birbOnSpinnyShaft(BlockPos pos) {
|
||||||
|
return addInstruction(
|
||||||
|
new CreateParrotInstruction(10, Direction.DOWN, ParrotElement.spinOnComponent(VecHelper.getCenterOf(pos)
|
||||||
|
.add(0, 0.5, 0), pos)));
|
||||||
|
}
|
||||||
|
|
||||||
|
public SceneBuilder birbLookingAtPOI(Vec3d location) {
|
||||||
|
return addInstruction(new CreateParrotInstruction(10, Direction.DOWN, ParrotElement.lookAtPOI(location)));
|
||||||
|
}
|
||||||
|
|
||||||
|
public SceneBuilder birbPartying(Vec3d location) {
|
||||||
|
return addInstruction(new CreateParrotInstruction(10, Direction.DOWN, ParrotElement.dance(location)));
|
||||||
|
}
|
||||||
|
|
||||||
public SceneBuilder addInstruction(PonderInstruction instruction) {
|
public SceneBuilder addInstruction(PonderInstruction instruction) {
|
||||||
schedule.add(instruction);
|
schedule.add(instruction);
|
||||||
return this;
|
return this;
|
||||||
@ -420,6 +442,10 @@ public class PonderScene {
|
|||||||
return VecHelper.getCenterOf(new BlockPos(x, y, z));
|
return VecHelper.getCenterOf(new BlockPos(x, y, z));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Vec3d topOf(int x, int y, int z) {
|
||||||
|
return new Vec3d(x + .5, y + 1, z + .5);
|
||||||
|
}
|
||||||
|
|
||||||
public Vec3d vector(double x, double y, double z) {
|
public Vec3d vector(double x, double y, double z) {
|
||||||
return new Vec3d(x, y, z);
|
return new Vec3d(x, y, z);
|
||||||
}
|
}
|
||||||
|
@ -7,6 +7,7 @@ import org.apache.commons.lang3.mutable.MutableBoolean;
|
|||||||
import com.mojang.blaze3d.matrix.MatrixStack;
|
import com.mojang.blaze3d.matrix.MatrixStack;
|
||||||
import com.mojang.blaze3d.systems.RenderSystem;
|
import com.mojang.blaze3d.systems.RenderSystem;
|
||||||
import com.simibubi.create.foundation.gui.AbstractSimiScreen;
|
import com.simibubi.create.foundation.gui.AbstractSimiScreen;
|
||||||
|
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
||||||
import com.simibubi.create.foundation.gui.AllIcons;
|
import com.simibubi.create.foundation.gui.AllIcons;
|
||||||
import com.simibubi.create.foundation.ponder.content.PonderIndex;
|
import com.simibubi.create.foundation.ponder.content.PonderIndex;
|
||||||
import com.simibubi.create.foundation.ponder.ui.PonderButton;
|
import com.simibubi.create.foundation.ponder.ui.PonderButton;
|
||||||
@ -15,6 +16,7 @@ import com.simibubi.create.foundation.utility.ColorHelper;
|
|||||||
import com.simibubi.create.foundation.utility.Lang;
|
import com.simibubi.create.foundation.utility.Lang;
|
||||||
import com.simibubi.create.foundation.utility.LerpedFloat;
|
import com.simibubi.create.foundation.utility.LerpedFloat;
|
||||||
import com.simibubi.create.foundation.utility.LerpedFloat.Chaser;
|
import com.simibubi.create.foundation.utility.LerpedFloat.Chaser;
|
||||||
|
import com.simibubi.create.foundation.utility.Pointing;
|
||||||
|
|
||||||
import net.minecraft.client.GameSettings;
|
import net.minecraft.client.GameSettings;
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
@ -141,43 +143,44 @@ public class PonderUI extends AbstractSimiScreen {
|
|||||||
RenderSystem.enableAlphaTest();
|
RenderSystem.enableAlphaTest();
|
||||||
RenderSystem.enableBlend();
|
RenderSystem.enableBlend();
|
||||||
RenderSystem.enableDepthTest();
|
RenderSystem.enableDepthTest();
|
||||||
|
|
||||||
ms.push();
|
ms.push();
|
||||||
story.transform.updateScreenParams(width, height, slide);
|
story.transform.updateScreenParams(width, height, slide);
|
||||||
story.transform.apply(ms);
|
story.transform.apply(ms);
|
||||||
story.renderScene(buffer, ms);
|
story.renderScene(buffer, ms);
|
||||||
buffer.draw();
|
buffer.draw();
|
||||||
|
|
||||||
// coords for debug
|
// coords for debug
|
||||||
if (PonderIndex.EDITOR_MODE) {
|
if (PonderIndex.EDITOR_MODE) {
|
||||||
MutableBoundingBox bounds = story.getBounds();
|
MutableBoundingBox bounds = story.getBounds();
|
||||||
|
|
||||||
RenderSystem.pushMatrix();
|
RenderSystem.pushMatrix();
|
||||||
RenderSystem.multMatrix(ms.peek().getModel());
|
RenderSystem.multMatrix(ms.peek()
|
||||||
RenderSystem.scaled(-1/16d, -1/16d, 1/16d);
|
.getModel());
|
||||||
RenderSystem.translated(1, -8, -1/64f);
|
RenderSystem.scaled(-1 / 16d, -1 / 16d, 1 / 16d);
|
||||||
|
RenderSystem.translated(1, -8, -1 / 64f);
|
||||||
|
|
||||||
RenderSystem.pushMatrix();
|
RenderSystem.pushMatrix();
|
||||||
for (int x = 0; x <= bounds.getXSize(); x++) {
|
for (int x = 0; x <= bounds.getXSize(); x++) {
|
||||||
RenderSystem.translated(-16, 0, 0);
|
RenderSystem.translated(-16, 0, 0);
|
||||||
font.drawString(x == bounds.getXSize() ? "x" : "" + x, 0, 0, 0xFFFFFFFF);
|
font.drawString(x == bounds.getXSize() ? "x" : "" + x, 0, 0, 0xFFFFFFFF);
|
||||||
}
|
}
|
||||||
RenderSystem.popMatrix();
|
RenderSystem.popMatrix();
|
||||||
|
|
||||||
RenderSystem.pushMatrix();
|
RenderSystem.pushMatrix();
|
||||||
RenderSystem.scaled(-1, 1, 1);
|
RenderSystem.scaled(-1, 1, 1);
|
||||||
RenderSystem.rotatef(-90, 0, 1, 0);
|
RenderSystem.rotatef(-90, 0, 1, 0);
|
||||||
RenderSystem.translated(-8, -2, 2/64f);
|
RenderSystem.translated(-8, -2, 2 / 64f);
|
||||||
for (int z = 0; z <= bounds.getZSize(); z++) {
|
for (int z = 0; z <= bounds.getZSize(); z++) {
|
||||||
RenderSystem.translated(16, 0, 0);
|
RenderSystem.translated(16, 0, 0);
|
||||||
font.drawString(z == bounds.getZSize() ? "z" : "" + z, 0, 0, 0xFFFFFFFF);
|
font.drawString(z == bounds.getZSize() ? "z" : "" + z, 0, 0, 0xFFFFFFFF);
|
||||||
}
|
}
|
||||||
RenderSystem.popMatrix();
|
RenderSystem.popMatrix();
|
||||||
|
|
||||||
buffer.draw();
|
buffer.draw();
|
||||||
RenderSystem.popMatrix();
|
RenderSystem.popMatrix();
|
||||||
}
|
}
|
||||||
|
|
||||||
ms.pop();
|
ms.pop();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -229,6 +232,7 @@ public class PonderUI extends AbstractSimiScreen {
|
|||||||
right.flash();
|
right.flash();
|
||||||
else
|
else
|
||||||
right.dim();
|
right.dim();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void lowerButtonGroup(int index, int mouseX, int mouseY, float fade, AllIcons icon, KeyBinding key) {
|
protected void lowerButtonGroup(int index, int mouseX, int mouseY, float fade, AllIcons icon, KeyBinding key) {
|
||||||
@ -320,7 +324,72 @@ public class PonderUI extends AbstractSimiScreen {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static void renderBox(int x, int y, int w, int h, boolean highlighted) {
|
public static void renderBox(int x, int y, int w, int h, boolean highlighted) {
|
||||||
renderBox(x, y, w, h, 0xdd000000, highlighted ? 0x70ffffff : 0x30eebb00, highlighted ? 0x30ffffff : 0x10eebb00);
|
renderBox(x, y, w, h, 0xff000000, highlighted ? 0xf0ffeedd : 0x40ffeedd, highlighted ? 0x60ffeedd : 0x20ffeedd);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void renderSpeechBox(int x, int y, int w, int h, boolean highlighted, Pointing pointing,
|
||||||
|
boolean returnWithLocalTransform) {
|
||||||
|
if (!returnWithLocalTransform)
|
||||||
|
RenderSystem.pushMatrix();
|
||||||
|
|
||||||
|
int boxX = x;
|
||||||
|
int boxY = y;
|
||||||
|
int divotX = x;
|
||||||
|
int divotY = y;
|
||||||
|
int divotRotation = 0;
|
||||||
|
int divotSize = 8;
|
||||||
|
int distance = 1;
|
||||||
|
int divotRadius = divotSize / 2;
|
||||||
|
|
||||||
|
switch (pointing) {
|
||||||
|
default:
|
||||||
|
case DOWN:
|
||||||
|
divotRotation = 0;
|
||||||
|
boxX -= w / 2;
|
||||||
|
boxY -= h + divotSize + 1 + distance;
|
||||||
|
divotX -= divotRadius;
|
||||||
|
divotY -= divotSize + distance;
|
||||||
|
break;
|
||||||
|
case LEFT:
|
||||||
|
divotRotation = 90;
|
||||||
|
boxX += divotSize + 1 + distance;
|
||||||
|
boxY -= h / 2;
|
||||||
|
divotX += distance;
|
||||||
|
divotY -= divotRadius;
|
||||||
|
break;
|
||||||
|
case RIGHT:
|
||||||
|
divotRotation = 270;
|
||||||
|
boxX -= w + divotSize + 1 + distance;
|
||||||
|
boxY -= h / 2;
|
||||||
|
divotX -= divotSize + distance;
|
||||||
|
divotY -= divotRadius;
|
||||||
|
break;
|
||||||
|
case UP:
|
||||||
|
divotRotation = 180;
|
||||||
|
boxX -= w / 2;
|
||||||
|
boxY += divotSize + 1 + distance;
|
||||||
|
divotX -= divotRadius;
|
||||||
|
divotY += distance;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
renderBox(boxX, boxY, w, h, highlighted);
|
||||||
|
|
||||||
|
RenderSystem.pushMatrix();
|
||||||
|
AllGuiTextures toRender = highlighted ? AllGuiTextures.SPEECH_TOOLTIP_HIGHLIGHT : AllGuiTextures.SPEECH_TOOLTIP;
|
||||||
|
RenderSystem.translated(divotX + divotRadius, divotY + divotRadius, 10);
|
||||||
|
RenderSystem.rotatef(divotRotation, 0, 0, 1);
|
||||||
|
RenderSystem.translated(-divotRadius, -divotRadius, 0);
|
||||||
|
toRender.draw(0, 0);
|
||||||
|
RenderSystem.popMatrix();
|
||||||
|
|
||||||
|
if (returnWithLocalTransform) {
|
||||||
|
RenderSystem.translated(boxX, boxY, 0);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
RenderSystem.popMatrix();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void renderBox(int x, int y, int w, int h, int backgroundColor, int borderColorStart,
|
public static void renderBox(int x, int y, int w, int h, int backgroundColor, int borderColorStart,
|
||||||
|
@ -131,6 +131,9 @@ public class PonderWorld extends SchematicWorld {
|
|||||||
|
|
||||||
public void addBlockDestroyEffects(BlockPos pos, BlockState state) {
|
public void addBlockDestroyEffects(BlockPos pos, BlockState state) {
|
||||||
VoxelShape voxelshape = state.getShape(this, pos);
|
VoxelShape voxelshape = state.getShape(this, pos);
|
||||||
|
if (voxelshape.isEmpty())
|
||||||
|
return;
|
||||||
|
|
||||||
AxisAlignedBB bb = voxelshape.getBoundingBox();
|
AxisAlignedBB bb = voxelshape.getBoundingBox();
|
||||||
double d1 = Math.min(1.0D, bb.maxX - bb.minX);
|
double d1 = Math.min(1.0D, bb.maxX - bb.minX);
|
||||||
double d2 = Math.min(1.0D, bb.maxY - bb.minY);
|
double d2 = Math.min(1.0D, bb.maxY - bb.minY);
|
||||||
|
@ -1,42 +0,0 @@
|
|||||||
package com.simibubi.create.foundation.ponder.content;
|
|
||||||
|
|
||||||
import com.simibubi.create.foundation.ponder.PonderStoryBoard;
|
|
||||||
import com.simibubi.create.foundation.ponder.Select;
|
|
||||||
import com.simibubi.create.foundation.ponder.PonderScene.SceneBuilder;
|
|
||||||
import com.simibubi.create.foundation.ponder.PonderScene.SceneBuilder.SceneBuildingUtil;
|
|
||||||
|
|
||||||
import net.minecraft.util.Direction;
|
|
||||||
import net.minecraft.util.math.BlockPos;
|
|
||||||
import net.minecraft.util.math.Vec3d;
|
|
||||||
|
|
||||||
public class CogwheelStory extends PonderStoryBoard {
|
|
||||||
|
|
||||||
public CogwheelStory() {
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String getSchematicName() {
|
|
||||||
return "cogwheel/first";
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String getStoryTitle() {
|
|
||||||
return "My First Ponder Story, Parrots";
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void program(SceneBuilder scene, SceneBuildingUtil util) {
|
|
||||||
|
|
||||||
scene.movePOI(new Vec3d(3.5, 4, 4.5));
|
|
||||||
scene.showBasePlate();
|
|
||||||
scene.idle(10);
|
|
||||||
|
|
||||||
scene.createParrotSpinningOn(new BlockPos(1, 4, 2), Direction.DOWN);
|
|
||||||
scene.showSection(util.layersFrom(1), Direction.DOWN);
|
|
||||||
|
|
||||||
scene.idle(10);
|
|
||||||
scene.rotateCameraY(180);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -11,14 +11,18 @@ import com.simibubi.create.foundation.ponder.PonderScene.SceneBuilder;
|
|||||||
import com.simibubi.create.foundation.ponder.PonderScene.SceneBuilder.SceneBuildingUtil;
|
import com.simibubi.create.foundation.ponder.PonderScene.SceneBuilder.SceneBuildingUtil;
|
||||||
import com.simibubi.create.foundation.ponder.PonderStoryBoard;
|
import com.simibubi.create.foundation.ponder.PonderStoryBoard;
|
||||||
import com.simibubi.create.foundation.ponder.Select;
|
import com.simibubi.create.foundation.ponder.Select;
|
||||||
|
import com.simibubi.create.foundation.ponder.elements.InputWindowElement;
|
||||||
import com.simibubi.create.foundation.ponder.instructions.EmitParticlesInstruction;
|
import com.simibubi.create.foundation.ponder.instructions.EmitParticlesInstruction;
|
||||||
import com.simibubi.create.foundation.ponder.instructions.EmitParticlesInstruction.Emitter;
|
import com.simibubi.create.foundation.ponder.instructions.EmitParticlesInstruction.Emitter;
|
||||||
|
import com.simibubi.create.foundation.utility.Pointing;
|
||||||
import com.tterrag.registrate.util.entry.ItemEntry;
|
import com.tterrag.registrate.util.entry.ItemEntry;
|
||||||
|
|
||||||
import net.minecraft.block.Blocks;
|
import net.minecraft.block.Blocks;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.particles.ParticleTypes;
|
import net.minecraft.particles.ParticleTypes;
|
||||||
import net.minecraft.util.Direction;
|
import net.minecraft.util.Direction;
|
||||||
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.util.math.Vec3d;
|
import net.minecraft.util.math.Vec3d;
|
||||||
|
|
||||||
public abstract class DebugScenes extends PonderStoryBoard {
|
public abstract class DebugScenes extends PonderStoryBoard {
|
||||||
@ -33,6 +37,8 @@ public abstract class DebugScenes extends PonderStoryBoard {
|
|||||||
PonderRegistry.addStoryBoard(item, new FluidsScene(++i));
|
PonderRegistry.addStoryBoard(item, new FluidsScene(++i));
|
||||||
PonderRegistry.addStoryBoard(item, new OffScreenScene(++i));
|
PonderRegistry.addStoryBoard(item, new OffScreenScene(++i));
|
||||||
PonderRegistry.addStoryBoard(item, new ParticlesScene(++i));
|
PonderRegistry.addStoryBoard(item, new ParticlesScene(++i));
|
||||||
|
PonderRegistry.addStoryBoard(item, new ControlsScene(++i));
|
||||||
|
PonderRegistry.addStoryBoard(item, new BirbScene(++i));
|
||||||
}
|
}
|
||||||
|
|
||||||
public DebugScenes(int index) {
|
public DebugScenes(int index) {
|
||||||
@ -64,7 +70,6 @@ public abstract class DebugScenes extends PonderStoryBoard {
|
|||||||
scene.showBasePlate();
|
scene.showBasePlate();
|
||||||
scene.idle(10);
|
scene.idle(10);
|
||||||
scene.showSection(util.layersFrom(1), Direction.DOWN);
|
scene.showSection(util.layersFrom(1), Direction.DOWN);
|
||||||
// scene.showTargetedText(WHITE, new Vec3d(1.5, 1.5, 1.5), "coordinate", "Schematic orientation: ", 40);
|
|
||||||
|
|
||||||
scene.idle(10);
|
scene.idle(10);
|
||||||
scene.showSelectionWithText(PonderPalette.RED, Select.fromTo(2, 1, 1, 4, 1, 1), "x", "Das X axis", 20);
|
scene.showSelectionWithText(PonderPalette.RED, Select.fromTo(2, 1, 1, 4, 1, 1), "x", "Das X axis", 20);
|
||||||
@ -96,9 +101,10 @@ public abstract class DebugScenes extends PonderStoryBoard {
|
|||||||
scene.idle(10);
|
scene.idle(10);
|
||||||
scene.showText(WHITE, 10, "change_blocks", "Blocks can be modified", 1000);
|
scene.showText(WHITE, 10, "change_blocks", "Blocks can be modified", 1000);
|
||||||
scene.idle(20);
|
scene.idle(20);
|
||||||
scene.replaceBlocks(Select.fromTo(1, 1, 2, 2, 2, 4), AllBlocks.REFINED_RADIANCE_CASING.getDefaultState());
|
scene.replaceBlocks(Select.fromTo(1, 1, 3, 2, 2, 4), AllBlocks.REFINED_RADIANCE_CASING.getDefaultState());
|
||||||
scene.idle(10);
|
scene.idle(10);
|
||||||
scene.replaceBlocks(Select.pos(3, 1, 1), Blocks.GOLD_BLOCK.getDefaultState());
|
scene.replaceBlocks(Select.pos(3, 1, 1), Blocks.GOLD_BLOCK.getDefaultState());
|
||||||
|
scene.rotateCameraY(180);
|
||||||
scene.markAsFinished();
|
scene.markAsFinished();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -131,6 +137,36 @@ public abstract class DebugScenes extends PonderStoryBoard {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static class OffScreenScene extends DebugScenes {
|
||||||
|
|
||||||
|
public OffScreenScene(int index) {
|
||||||
|
super(index);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void program(SceneBuilder scene, SceneBuildingUtil util) {
|
||||||
|
scene.configureBasePlate(1, 0, 6);
|
||||||
|
scene.showBasePlate();
|
||||||
|
Select out1 = Select.fromTo(7, 0, 0, 8, 0, 5);
|
||||||
|
Select out2 = Select.fromTo(0, 0, 0, 0, 0, 5);
|
||||||
|
scene.idle(10);
|
||||||
|
scene.showSection(Select.compound(util.layersFrom(1), out1, out2), Direction.DOWN);
|
||||||
|
scene.idle(10);
|
||||||
|
|
||||||
|
scene.showSelectionWithText(PonderPalette.BLACK, out1, "outofbounds",
|
||||||
|
"Blocks outside of the base plate do not affect scaling", 100);
|
||||||
|
scene.showSelectionWithText(PonderPalette.BLACK, out2, "thanks_to_configureBasePlate",
|
||||||
|
"configureBasePlate() makes sure of that.", 100);
|
||||||
|
scene.markAsFinished();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected String getTitle() {
|
||||||
|
return "Out of bounds / configureBasePlate";
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
static class ParticlesScene extends DebugScenes {
|
static class ParticlesScene extends DebugScenes {
|
||||||
|
|
||||||
public ParticlesScene(int index) {
|
public ParticlesScene(int index) {
|
||||||
@ -165,34 +201,94 @@ public abstract class DebugScenes extends PonderStoryBoard {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static class OffScreenScene extends DebugScenes {
|
static class ControlsScene extends DebugScenes {
|
||||||
|
|
||||||
public OffScreenScene(int index) {
|
public ControlsScene(int index) {
|
||||||
super(index);
|
super(index);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void program(SceneBuilder scene, SceneBuildingUtil util) {
|
public void program(SceneBuilder scene, SceneBuildingUtil util) {
|
||||||
scene.configureBasePlate(1, 0, 6);
|
|
||||||
scene.showBasePlate();
|
scene.showBasePlate();
|
||||||
Select out1 = Select.fromTo(7, 0, 0, 8, 0, 5);
|
|
||||||
Select out2 = Select.fromTo(0, 0, 0, 0, 0, 5);
|
|
||||||
scene.idle(10);
|
scene.idle(10);
|
||||||
scene.showSection(Select.compound(util.layersFrom(1), out1, out2), Direction.DOWN);
|
scene.showSection(util.layer(1), Direction.DOWN);
|
||||||
|
scene.idle(4);
|
||||||
|
scene.showSection(util.layer(2), Direction.DOWN);
|
||||||
|
scene.idle(4);
|
||||||
|
scene.showSection(util.layer(3), Direction.DOWN);
|
||||||
scene.idle(10);
|
scene.idle(10);
|
||||||
|
|
||||||
scene.showSelectionWithText(PonderPalette.BLACK, out1, "outofbounds",
|
scene.showControls(new InputWindowElement(util.topOf(3, 1, 1), Pointing.DOWN).rightClick()
|
||||||
"Blocks outside of the base plate do not affect scaling", 100);
|
.whileSneaking()
|
||||||
scene.showSelectionWithText(PonderPalette.BLACK, out2, "thanks_to_configureBasePlate",
|
.withWrench(), 40);
|
||||||
"configureBasePlate() makes sure of that.", 100);
|
scene.idle(8);
|
||||||
scene.markAsFinished();
|
scene.replaceBlocks(Select.pos(3, 1, 1), AllBlocks.SHAFT.getDefaultState());
|
||||||
|
scene.idle(20);
|
||||||
|
|
||||||
|
scene.showControls(new InputWindowElement(new Vec3d(1, 4.5, 3.5), Pointing.LEFT).rightClick()
|
||||||
|
.withItem(new ItemStack(Blocks.POLISHED_ANDESITE)), 20);
|
||||||
|
scene.idle(4);
|
||||||
|
scene.showSection(util.layer(4), Direction.DOWN);
|
||||||
|
scene.idle(8);
|
||||||
|
|
||||||
|
scene.showControls(new InputWindowElement(new Vec3d(2.5, 1.5, 3), Pointing.UP).whileCTRL()
|
||||||
|
.scroll()
|
||||||
|
.withWrench(), 40);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected String getTitle() {
|
protected String getTitle() {
|
||||||
return "Out of bounds / configureBasePlate";
|
return "Basic player interaction";
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static class BirbScene extends DebugScenes {
|
||||||
|
|
||||||
|
public BirbScene(int index) {
|
||||||
|
super(index);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void program(SceneBuilder scene, SceneBuildingUtil util) {
|
||||||
|
scene.showBasePlate();
|
||||||
|
scene.idle(10);
|
||||||
|
scene.showSection(util.layersFrom(1), Direction.DOWN);
|
||||||
|
scene.idle(10);
|
||||||
|
BlockPos pos = new BlockPos(1, 2, 3);
|
||||||
|
scene.birbOnSpinnyShaft(pos);
|
||||||
|
scene.showTargetedText(PonderPalette.GREEN, util.topOf(1, 2, 3), "birbs_interesting",
|
||||||
|
"More birbs = More interesting", 100);
|
||||||
|
scene.idle(10);
|
||||||
|
scene.birbPartying(util.topOf(0, 1, 2));
|
||||||
|
scene.idle(10);
|
||||||
|
|
||||||
|
scene.movePOI(Vec3d.ZERO);
|
||||||
|
scene.birbLookingAtPOI(util.centerOf(3, 1, 3)
|
||||||
|
.add(0, 0.25f, 0));
|
||||||
|
scene.idle(20);
|
||||||
|
|
||||||
|
scene.replaceBlocks(Select.pos(4, 1, 0), Blocks.GOLD_BLOCK.getDefaultState());
|
||||||
|
scene.movePOI(util.centerOf(4, 1, 0));
|
||||||
|
scene.idle(20);
|
||||||
|
|
||||||
|
scene.replaceBlocks(Select.pos(0, 1, 4), Blocks.GOLD_BLOCK.getDefaultState());
|
||||||
|
scene.movePOI(util.centerOf(0, 1, 4));
|
||||||
|
scene.showTargetedText(PonderPalette.FAST, util.centerOf(0, 1, 4), "poi", "Point of Interest", 20);
|
||||||
|
scene.idle(20);
|
||||||
|
|
||||||
|
scene.replaceBlocks(Select.pos(4, 1, 0), Blocks.AIR.getDefaultState());
|
||||||
|
scene.movePOI(util.centerOf(4, 1, 0));
|
||||||
|
scene.idle(20);
|
||||||
|
|
||||||
|
scene.replaceBlocks(Select.pos(0, 1, 4), Blocks.AIR.getDefaultState());
|
||||||
|
scene.movePOI(util.centerOf(0, 1, 4));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected String getTitle() {
|
||||||
|
return "Birbs";
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -14,10 +14,6 @@ public class PonderIndex {
|
|||||||
public static void register() {
|
public static void register() {
|
||||||
// Register storyboards here (Requires re-launch)
|
// Register storyboards here (Requires re-launch)
|
||||||
|
|
||||||
PonderRegistry.addStoryBoard(AllBlocks.COGWHEEL, new CogwheelStory());
|
|
||||||
PonderRegistry.addStoryBoard(AllBlocks.COGWHEEL, new CogwheelStory());
|
|
||||||
PonderRegistry.addStoryBoard(AllBlocks.COGWHEEL, new CogwheelStory());
|
|
||||||
|
|
||||||
PonderRegistry.addStoryBoard(AllBlocks.SHAFT, new ShaftAsRelay());
|
PonderRegistry.addStoryBoard(AllBlocks.SHAFT, new ShaftAsRelay());
|
||||||
PonderRegistry.addStoryBoard(AllBlocks.SHAFT, new ShaftsCanBeEncased());
|
PonderRegistry.addStoryBoard(AllBlocks.SHAFT, new ShaftsCanBeEncased());
|
||||||
|
|
||||||
|
@ -10,7 +10,6 @@ import com.simibubi.create.foundation.ponder.Select;
|
|||||||
import net.minecraft.util.Direction;
|
import net.minecraft.util.Direction;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.util.math.Vec3d;
|
import net.minecraft.util.math.Vec3d;
|
||||||
import net.minecraft.util.math.Vec3i;
|
|
||||||
|
|
||||||
class ShaftAsRelay extends PonderStoryBoard {
|
class ShaftAsRelay extends PonderStoryBoard {
|
||||||
|
|
||||||
@ -26,26 +25,30 @@ class ShaftAsRelay extends PonderStoryBoard {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void program(SceneBuilder scene, SceneBuildingUtil util) {
|
public void program(SceneBuilder scene, SceneBuildingUtil util) {
|
||||||
scene.showBasePlate();
|
scene.configureBasePlate(0, 0, 5);
|
||||||
|
scene.showSection(util.layer(0), Direction.UP);
|
||||||
|
|
||||||
Select encased = util.column(4, 2);
|
Select gauge = Select.pos(0, 1, 2);
|
||||||
Select gauge = util.column(0, 2);
|
scene.showSection(gauge, Direction.UP);
|
||||||
Select shafts = Select.cuboid(new BlockPos(1, 1, 2), new Vec3i(2, 0, 0));
|
|
||||||
|
|
||||||
scene.idle(10);
|
|
||||||
scene.showSection(encased, Direction.DOWN);
|
|
||||||
scene.idle(10);
|
|
||||||
scene.showSection(gauge, Direction.DOWN);
|
|
||||||
scene.setKineticSpeed(gauge, 0);
|
scene.setKineticSpeed(gauge, 0);
|
||||||
|
|
||||||
scene.idle(20);
|
scene.idle(5);
|
||||||
scene.showSection(shafts, Direction.DOWN);
|
scene.showSection(Select.pos(5, 1, 2), Direction.DOWN);
|
||||||
scene.setKineticSpeed(gauge, -112);
|
scene.idle(10);
|
||||||
|
|
||||||
|
for (int i = 4; i >= 1; i--) {
|
||||||
|
if (i == 2)
|
||||||
|
scene.rotateCameraY(70);
|
||||||
|
scene.idle(5);
|
||||||
|
scene.showSection(Select.pos(i, 1, 2), Direction.DOWN);
|
||||||
|
}
|
||||||
|
|
||||||
|
scene.setKineticSpeed(gauge, 64);
|
||||||
|
scene.indicateSuccess(new BlockPos(0, 1, 2));
|
||||||
scene.idle(10);
|
scene.idle(10);
|
||||||
scene.showTargetedText(WHITE, new Vec3d(3, 1.5, 2.5), "shaft_relay",
|
scene.showTargetedText(WHITE, new Vec3d(3, 1.5, 2.5), "shaft_relay",
|
||||||
"Shafts seem to relay rotation in a straight line.", 1000);
|
"Shafts will relay rotation in a straight line.", 1000);
|
||||||
|
|
||||||
scene.idle(20);
|
scene.idle(20);
|
||||||
scene.markAsFinished();
|
scene.markAsFinished();
|
||||||
|
|
||||||
|
@ -8,6 +8,9 @@ import com.simibubi.create.foundation.ponder.PonderScene.SceneBuilder;
|
|||||||
import com.simibubi.create.foundation.ponder.PonderScene.SceneBuilder.SceneBuildingUtil;
|
import com.simibubi.create.foundation.ponder.PonderScene.SceneBuilder.SceneBuildingUtil;
|
||||||
import com.simibubi.create.foundation.ponder.PonderStoryBoard;
|
import com.simibubi.create.foundation.ponder.PonderStoryBoard;
|
||||||
import com.simibubi.create.foundation.ponder.Select;
|
import com.simibubi.create.foundation.ponder.Select;
|
||||||
|
import com.simibubi.create.foundation.ponder.elements.InputWindowElement;
|
||||||
|
import com.simibubi.create.foundation.utility.Pointing;
|
||||||
|
import com.tterrag.registrate.util.entry.BlockEntry;
|
||||||
|
|
||||||
import net.minecraft.util.Direction;
|
import net.minecraft.util.Direction;
|
||||||
import net.minecraft.util.Direction.Axis;
|
import net.minecraft.util.Direction.Axis;
|
||||||
@ -38,18 +41,26 @@ class ShaftsCanBeEncased extends PonderStoryBoard {
|
|||||||
scene.showSection(shaft, Direction.DOWN);
|
scene.showSection(shaft, Direction.DOWN);
|
||||||
scene.idle(20);
|
scene.idle(20);
|
||||||
|
|
||||||
scene.setBlocks(andesite, AllBlocks.ANDESITE_ENCASED_SHAFT.getDefaultState()
|
BlockEntry<EncasedShaftBlock> andesiteEncased = AllBlocks.ANDESITE_ENCASED_SHAFT;
|
||||||
|
scene.showControls(new InputWindowElement(util.topOf(3, 1, 2), Pointing.DOWN).rightClick()
|
||||||
|
.withItem(AllBlocks.ANDESITE_CASING.asStack()), 60);
|
||||||
|
scene.idle(7);
|
||||||
|
scene.setBlocks(andesite, andesiteEncased.getDefaultState()
|
||||||
.with(EncasedShaftBlock.AXIS, Axis.X));
|
.with(EncasedShaftBlock.AXIS, Axis.X));
|
||||||
scene.setKineticSpeed(shaft, -112);
|
scene.setKineticSpeed(shaft, -112);
|
||||||
scene.idle(10);
|
scene.idle(10);
|
||||||
|
|
||||||
scene.setBlocks(brass, AllBlocks.BRASS_ENCASED_SHAFT.getDefaultState()
|
BlockEntry<EncasedShaftBlock> brassEncased = AllBlocks.BRASS_ENCASED_SHAFT;
|
||||||
|
scene.showControls(new InputWindowElement(util.topOf(1, 0, 2), Pointing.UP).rightClick()
|
||||||
|
.withItem(AllBlocks.BRASS_CASING.asStack()), 60);
|
||||||
|
scene.idle(7);
|
||||||
|
scene.setBlocks(brass, brassEncased.getDefaultState()
|
||||||
.with(EncasedShaftBlock.AXIS, Axis.X));
|
.with(EncasedShaftBlock.AXIS, Axis.X));
|
||||||
scene.setKineticSpeed(shaft, -112);
|
scene.setKineticSpeed(shaft, -112);
|
||||||
|
|
||||||
scene.idle(10);
|
scene.idle(10);
|
||||||
scene.showTargetedText(WHITE, new Vec3d(1.5, 2, 2.5), "shaft_can_be_encased",
|
scene.showTargetedText(WHITE, new Vec3d(1.5, 2, 2.5), "shaft_can_be_encased",
|
||||||
"I could use Brass or Andesite Casing to hide them.", 1000);
|
"Andesite or Brass Casing can be used to encase them.", 1000);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -7,8 +7,8 @@ public class SharedText {
|
|||||||
public static void gatherText() {
|
public static void gatherText() {
|
||||||
// Add entries used across several ponder scenes (Safe for hotswap)
|
// Add entries used across several ponder scenes (Safe for hotswap)
|
||||||
|
|
||||||
add("when_wrenched", "When Wrenched");
|
add("sneak_and", "Sneak +");
|
||||||
add("more_shared", "This is Shared stuff");
|
add("ctrl_and", "Ctrl +");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -0,0 +1,135 @@
|
|||||||
|
package com.simibubi.create.foundation.ponder.elements;
|
||||||
|
|
||||||
|
import com.mojang.blaze3d.matrix.MatrixStack;
|
||||||
|
import com.mojang.blaze3d.systems.RenderSystem;
|
||||||
|
import com.simibubi.create.AllItems;
|
||||||
|
import com.simibubi.create.foundation.gui.AllIcons;
|
||||||
|
import com.simibubi.create.foundation.gui.GuiGameElement;
|
||||||
|
import com.simibubi.create.foundation.ponder.PonderLocalization;
|
||||||
|
import com.simibubi.create.foundation.ponder.PonderScene;
|
||||||
|
import com.simibubi.create.foundation.ponder.PonderUI;
|
||||||
|
import com.simibubi.create.foundation.ponder.content.PonderPalette;
|
||||||
|
import com.simibubi.create.foundation.utility.ColorHelper;
|
||||||
|
import com.simibubi.create.foundation.utility.Pointing;
|
||||||
|
|
||||||
|
import net.minecraft.client.gui.FontRenderer;
|
||||||
|
import net.minecraft.item.ItemStack;
|
||||||
|
import net.minecraft.util.math.Vec2f;
|
||||||
|
import net.minecraft.util.math.Vec3d;
|
||||||
|
|
||||||
|
public class InputWindowElement extends AnimatedOverlayElement {
|
||||||
|
|
||||||
|
private Pointing direction;
|
||||||
|
|
||||||
|
String key;
|
||||||
|
AllIcons icon;
|
||||||
|
ItemStack item = ItemStack.EMPTY;
|
||||||
|
|
||||||
|
private Vec3d sceneSpace;
|
||||||
|
|
||||||
|
public InputWindowElement(Vec3d sceneSpace, Pointing direction) {
|
||||||
|
this.sceneSpace = sceneSpace;
|
||||||
|
this.direction = direction;
|
||||||
|
}
|
||||||
|
|
||||||
|
public InputWindowElement withItem(ItemStack stack) {
|
||||||
|
item = stack;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public InputWindowElement withWrench() {
|
||||||
|
item = AllItems.WRENCH.asStack();
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public InputWindowElement scroll() {
|
||||||
|
icon = AllIcons.I_SCROLL;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public InputWindowElement rightClick() {
|
||||||
|
icon = AllIcons.I_RMB;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public InputWindowElement leftClick() {
|
||||||
|
icon = AllIcons.I_LMB;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public InputWindowElement whileSneaking() {
|
||||||
|
key = "sneak_and";
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public InputWindowElement whileCTRL() {
|
||||||
|
key = "ctrl_and";
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void render(PonderScene scene, PonderUI screen, MatrixStack ms, float partialTicks, float fade) {
|
||||||
|
FontRenderer font = screen.getFontRenderer();
|
||||||
|
int width = 0;
|
||||||
|
int height = 0;
|
||||||
|
|
||||||
|
int xFade = direction == Pointing.RIGHT ? -1 : direction == Pointing.LEFT ? 1 : 0;
|
||||||
|
int yFade = direction == Pointing.DOWN ? -1 : direction == Pointing.UP ? 1 : 0;
|
||||||
|
xFade *= 10 * (1 - fade);
|
||||||
|
yFade *= 10 * (1 - fade);
|
||||||
|
|
||||||
|
boolean hasItem = !item.isEmpty();
|
||||||
|
boolean hasText = key != null;
|
||||||
|
boolean hasIcon = icon != null;
|
||||||
|
int keyWidth = 0;
|
||||||
|
String text = hasText ? PonderLocalization.getShared(key) : "";
|
||||||
|
|
||||||
|
if (fade < 1 / 16f)
|
||||||
|
return;
|
||||||
|
Vec2f sceneToScreen = scene.getTransform()
|
||||||
|
.sceneToScreen(sceneSpace);
|
||||||
|
|
||||||
|
if (hasIcon) {
|
||||||
|
width += 24;
|
||||||
|
height = 24;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (hasText) {
|
||||||
|
keyWidth = font.getStringWidth(text);
|
||||||
|
width += keyWidth;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (hasItem) {
|
||||||
|
width += 24;
|
||||||
|
height = 24;
|
||||||
|
}
|
||||||
|
|
||||||
|
RenderSystem.pushMatrix();
|
||||||
|
RenderSystem.translated(sceneToScreen.x + xFade, sceneToScreen.y + yFade, 400);
|
||||||
|
|
||||||
|
PonderUI.renderSpeechBox(0, 0, width, height, false, direction, true);
|
||||||
|
|
||||||
|
if (hasText)
|
||||||
|
font.drawString(text, 2, (height - font.FONT_HEIGHT) / 2 + 2,
|
||||||
|
ColorHelper.applyAlpha(PonderPalette.WHITE.getColor(), fade));
|
||||||
|
|
||||||
|
if (hasIcon) {
|
||||||
|
RenderSystem.pushMatrix();
|
||||||
|
RenderSystem.translated(keyWidth, 0, 0);
|
||||||
|
RenderSystem.scaled(1.5, 1.5, 1.5);
|
||||||
|
icon.draw(0, 0);
|
||||||
|
RenderSystem.popMatrix();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (hasItem) {
|
||||||
|
GuiGameElement.of(item)
|
||||||
|
.at(keyWidth + 24, 0)
|
||||||
|
.scale(1.5)
|
||||||
|
.render();
|
||||||
|
RenderSystem.disableDepthTest();
|
||||||
|
}
|
||||||
|
|
||||||
|
RenderSystem.popMatrix();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -5,12 +5,12 @@ import com.simibubi.create.Create;
|
|||||||
import com.simibubi.create.content.contraptions.base.KineticTileEntity;
|
import com.simibubi.create.content.contraptions.base.KineticTileEntity;
|
||||||
import com.simibubi.create.foundation.ponder.PonderScene;
|
import com.simibubi.create.foundation.ponder.PonderScene;
|
||||||
import com.simibubi.create.foundation.ponder.PonderWorld;
|
import com.simibubi.create.foundation.ponder.PonderWorld;
|
||||||
|
import com.simibubi.create.foundation.utility.AngleHelper;
|
||||||
import com.simibubi.create.foundation.utility.MatrixStacker;
|
import com.simibubi.create.foundation.utility.MatrixStacker;
|
||||||
|
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
import net.minecraft.client.renderer.IRenderTypeBuffer;
|
import net.minecraft.client.renderer.IRenderTypeBuffer;
|
||||||
import net.minecraft.client.renderer.entity.EntityRendererManager;
|
import net.minecraft.client.renderer.entity.EntityRendererManager;
|
||||||
import net.minecraft.command.arguments.EntityAnchorArgument;
|
|
||||||
import net.minecraft.entity.EntityType;
|
import net.minecraft.entity.EntityType;
|
||||||
import net.minecraft.entity.passive.ParrotEntity;
|
import net.minecraft.entity.passive.ParrotEntity;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
@ -29,13 +29,19 @@ public class ParrotElement extends AnimatedSceneElement {
|
|||||||
parrotElement.pose = parrotElement.new FacePointOfInterestPose();
|
parrotElement.pose = parrotElement.new FacePointOfInterestPose();
|
||||||
return parrotElement;
|
return parrotElement;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static ParrotElement spinOnComponent(Vec3d location, BlockPos componentPos) {
|
public static ParrotElement spinOnComponent(Vec3d location, BlockPos componentPos) {
|
||||||
ParrotElement parrotElement = new ParrotElement(location);
|
ParrotElement parrotElement = new ParrotElement(location);
|
||||||
parrotElement.pose = parrotElement.new SpinOnComponentPose(componentPos);
|
parrotElement.pose = parrotElement.new SpinOnComponentPose(componentPos);
|
||||||
return parrotElement;
|
return parrotElement;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static ParrotElement dance(Vec3d location) {
|
||||||
|
ParrotElement parrotElement = new ParrotElement(location);
|
||||||
|
parrotElement.pose = parrotElement.new DancePose();
|
||||||
|
return parrotElement;
|
||||||
|
}
|
||||||
|
|
||||||
protected ParrotElement(Vec3d location) {
|
protected ParrotElement(Vec3d location) {
|
||||||
this.location = location;
|
this.location = location;
|
||||||
}
|
}
|
||||||
@ -69,7 +75,7 @@ public class ParrotElement extends AnimatedSceneElement {
|
|||||||
ms.translate(location.x, location.y, location.z);
|
ms.translate(location.x, location.y, location.z);
|
||||||
|
|
||||||
MatrixStacker.of(ms)
|
MatrixStacker.of(ms)
|
||||||
.rotateY(MathHelper.lerp(pt, entity.prevRotationYaw, entity.rotationYaw));
|
.rotateY(AngleHelper.angleLerp(pt, entity.prevRotationYaw, entity.rotationYaw));
|
||||||
|
|
||||||
entityrenderermanager.render(entity, 0, 0, 0, 0, pt, ms, buffer, lightCoordsFromFade(fade));
|
entityrenderermanager.render(entity, 0, 0, 0, 0, pt, ms, buffer, lightCoordsFromFade(fade));
|
||||||
ms.pop();
|
ms.pop();
|
||||||
@ -81,7 +87,24 @@ public class ParrotElement extends AnimatedSceneElement {
|
|||||||
|
|
||||||
void create(PonderWorld world) {
|
void create(PonderWorld world) {
|
||||||
entity = new ParrotEntity(EntityType.PARROT, world);
|
entity = new ParrotEntity(EntityType.PARROT, world);
|
||||||
entity.setVariant(Create.random.nextInt(5));
|
int nextInt = Create.random.nextInt(5);
|
||||||
|
entity.setVariant(nextInt == 1 ? 0 : nextInt); // blue parrots are kinda hard to see
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
class DancePose extends ParrotPose {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
void create(PonderWorld world) {
|
||||||
|
super.create(world);
|
||||||
|
entity.setPartying(BlockPos.ZERO, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
void tick(PonderScene scene) {
|
||||||
|
entity.prevRotationYaw = entity.rotationYaw;
|
||||||
|
entity.rotationYaw -= 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -111,7 +134,18 @@ public class ParrotElement extends AnimatedSceneElement {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
void tick(PonderScene scene) {
|
void tick(PonderScene scene) {
|
||||||
entity.lookAt(EntityAnchorArgument.Type.EYES, scene.getPointOfInterest());
|
Vec3d p_200602_2_ = scene.getPointOfInterest();
|
||||||
|
Vec3d vec3d = location.add(entity.getEyePosition(0));
|
||||||
|
double d0 = p_200602_2_.x - vec3d.x;
|
||||||
|
double d1 = p_200602_2_.y - vec3d.y;
|
||||||
|
double d2 = p_200602_2_.z - vec3d.z;
|
||||||
|
double d3 = (double) MathHelper.sqrt(d0 * d0 + d2 * d2);
|
||||||
|
entity.prevRotationYaw = entity.rotationYaw;
|
||||||
|
entity.prevRotationPitch = entity.rotationPitch;
|
||||||
|
entity.rotationPitch =
|
||||||
|
MathHelper.wrapDegrees((float) -(MathHelper.atan2(d1, d3) * (double) (180F / (float) Math.PI)));
|
||||||
|
entity.rotationYaw =
|
||||||
|
MathHelper.wrapDegrees((float) -(MathHelper.atan2(d2, d0) * (double) (180F / (float) Math.PI)) + 90);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -22,6 +22,12 @@ public class EmitParticlesInstruction extends TickingInstruction {
|
|||||||
return (w, x, y, z) -> w.addParticle(data, x, y, z, motion.x, motion.y, motion.z);
|
return (w, x, y, z) -> w.addParticle(data, x, y, z, motion.x, motion.y, motion.z);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static <T extends IParticleData> Emitter withinBlockSpace(T data, Vec3d motion) {
|
||||||
|
return (w, x, y, z) -> w.addParticle(data, Math.floor(x) + Create.random.nextFloat(),
|
||||||
|
Math.floor(y) + Create.random.nextFloat(), Math.floor(z) + Create.random.nextFloat(), motion.x,
|
||||||
|
motion.y, motion.z);
|
||||||
|
}
|
||||||
|
|
||||||
static ParticleManager paticleManager() {
|
static ParticleManager paticleManager() {
|
||||||
return Minecraft.getInstance().particles;
|
return Minecraft.getInstance().particles;
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,49 @@
|
|||||||
|
package com.simibubi.create.foundation.ponder.instructions;
|
||||||
|
|
||||||
|
import com.simibubi.create.foundation.ponder.PonderScene;
|
||||||
|
|
||||||
|
public abstract class FadeInOutInstruction extends TickingInstruction {
|
||||||
|
|
||||||
|
protected static final int fadeTime = 5;
|
||||||
|
|
||||||
|
public FadeInOutInstruction(int duration) {
|
||||||
|
super(false, duration + 2 * fadeTime);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected abstract void show(PonderScene scene);
|
||||||
|
|
||||||
|
protected abstract void hide(PonderScene scene);
|
||||||
|
|
||||||
|
protected abstract void applyFade(PonderScene scene, float fade);
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void firstTick(PonderScene scene) {
|
||||||
|
super.firstTick(scene);
|
||||||
|
show(scene);
|
||||||
|
applyFade(scene, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void tick(PonderScene scene) {
|
||||||
|
super.tick(scene);
|
||||||
|
int elapsed = totalTicks - remainingTicks;
|
||||||
|
|
||||||
|
if (elapsed < fadeTime) {
|
||||||
|
float fade = (elapsed / (float) fadeTime);
|
||||||
|
applyFade(scene, fade * fade);
|
||||||
|
|
||||||
|
} else if (remainingTicks < fadeTime) {
|
||||||
|
float fade = (remainingTicks / (float) fadeTime);
|
||||||
|
applyFade(scene, fade * fade);
|
||||||
|
|
||||||
|
} else
|
||||||
|
applyFade(scene, 1);
|
||||||
|
|
||||||
|
if (remainingTicks == 0) {
|
||||||
|
applyFade(scene, 0);
|
||||||
|
hide(scene);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,31 @@
|
|||||||
|
package com.simibubi.create.foundation.ponder.instructions;
|
||||||
|
|
||||||
|
import com.simibubi.create.foundation.ponder.PonderScene;
|
||||||
|
import com.simibubi.create.foundation.ponder.elements.InputWindowElement;
|
||||||
|
|
||||||
|
public class ShowInputInstruction extends FadeInOutInstruction {
|
||||||
|
|
||||||
|
private InputWindowElement element;
|
||||||
|
|
||||||
|
public ShowInputInstruction(InputWindowElement element, int ticks) {
|
||||||
|
super(ticks);
|
||||||
|
this.element = element;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void show(PonderScene scene) {
|
||||||
|
scene.addElement(element);
|
||||||
|
element.setVisible(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void hide(PonderScene scene) {
|
||||||
|
element.setVisible(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void applyFade(PonderScene scene, float fade) {
|
||||||
|
element.setFade(fade);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -9,14 +9,13 @@ import com.simibubi.create.foundation.ponder.elements.TextWindowElement;
|
|||||||
|
|
||||||
import net.minecraft.util.math.Vec3d;
|
import net.minecraft.util.math.Vec3d;
|
||||||
|
|
||||||
public class TextInstruction extends TickingInstruction {
|
public class TextInstruction extends FadeInOutInstruction {
|
||||||
|
|
||||||
private TextWindowElement element;
|
private TextWindowElement element;
|
||||||
private OutlinerElement outline;
|
private OutlinerElement outline;
|
||||||
private static final int fadeTime = 5;
|
|
||||||
|
|
||||||
protected TextInstruction(int color, Supplier<String> text, int duration) {
|
protected TextInstruction(int color, Supplier<String> text, int duration) {
|
||||||
super(false, duration + 2 * fadeTime);
|
super(duration);
|
||||||
}
|
}
|
||||||
|
|
||||||
public TextInstruction(int color, Supplier<String> text, int duration, Select selection) {
|
public TextInstruction(int color, Supplier<String> text, int duration, Select selection) {
|
||||||
@ -41,11 +40,9 @@ public class TextInstruction extends TickingInstruction {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void firstTick(PonderScene scene) {
|
protected void show(PonderScene scene) {
|
||||||
super.firstTick(scene);
|
|
||||||
scene.addElement(element);
|
scene.addElement(element);
|
||||||
element.setVisible(true);
|
element.setVisible(true);
|
||||||
element.setFade(0);
|
|
||||||
if (outline != null) {
|
if (outline != null) {
|
||||||
scene.addElement(outline);
|
scene.addElement(outline);
|
||||||
outline.setFade(1);
|
outline.setFade(1);
|
||||||
@ -54,31 +51,17 @@ public class TextInstruction extends TickingInstruction {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void tick(PonderScene scene) {
|
protected void hide(PonderScene scene) {
|
||||||
super.tick(scene);
|
element.setVisible(false);
|
||||||
int elapsed = totalTicks - remainingTicks;
|
if (outline != null) {
|
||||||
|
outline.setFade(0);
|
||||||
if (elapsed < fadeTime) {
|
outline.setVisible(false);
|
||||||
float fade = (elapsed / (float) fadeTime);
|
|
||||||
element.setFade(fade * fade);
|
|
||||||
|
|
||||||
} else if (remainingTicks < fadeTime) {
|
|
||||||
float fade = (remainingTicks / (float) fadeTime);
|
|
||||||
element.setFade(fade * fade);
|
|
||||||
|
|
||||||
} else
|
|
||||||
element.setFade(1);
|
|
||||||
|
|
||||||
if (remainingTicks == 0) {
|
|
||||||
element.setFade(0);
|
|
||||||
element.setFade(0);
|
|
||||||
element.setVisible(false);
|
|
||||||
if (outline != null) {
|
|
||||||
outline.setFade(0);
|
|
||||||
outline.setVisible(false);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void applyFade(PonderScene scene, float fade) {
|
||||||
|
element.setFade(fade);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -119,7 +119,7 @@ public class VecHelper {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static Vec3d lerp(float p, Vec3d from, Vec3d to) {
|
public static Vec3d lerp(float p, Vec3d from, Vec3d to) {
|
||||||
return from.add(from.subtract(to)
|
return from.add(to.subtract(from)
|
||||||
.scale(p));
|
.scale(p));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.7 KiB |
Binary file not shown.
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
Binary file not shown.
BIN
src/main/resources/ponder/debug/scene_6.nbt
Normal file
BIN
src/main/resources/ponder/debug/scene_6.nbt
Normal file
Binary file not shown.
BIN
src/main/resources/ponder/debug/scene_7.nbt
Normal file
BIN
src/main/resources/ponder/debug/scene_7.nbt
Normal file
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue
Block a user