diff --git a/src/generated/resources/assets/tfmg/blockstates/copper_encased_cast_iron_pipe.json b/src/generated/resources/assets/tfmg/blockstates/copper_encased_cast_iron_pipe.json
deleted file mode 100644
index 9626bb9f..00000000
--- a/src/generated/resources/assets/tfmg/blockstates/copper_encased_cast_iron_pipe.json
+++ /dev/null
@@ -1,110 +0,0 @@
-{
- "multipart": [
- {
- "apply": {
- "model": "tfmg:block/copper_encased_cast_iron_pipe/block_flat",
- "x": -90
- },
- "when": {
- "down": "false"
- }
- },
- {
- "apply": {
- "model": "tfmg:block/copper_encased_cast_iron_pipe/block_flat",
- "x": 90
- },
- "when": {
- "up": "false"
- }
- },
- {
- "apply": {
- "model": "tfmg:block/copper_encased_cast_iron_pipe/block_flat",
- "y": 180
- },
- "when": {
- "north": "false"
- }
- },
- {
- "apply": {
- "model": "tfmg:block/copper_encased_cast_iron_pipe/block_flat"
- },
- "when": {
- "south": "false"
- }
- },
- {
- "apply": {
- "model": "tfmg:block/copper_encased_cast_iron_pipe/block_flat",
- "y": 90
- },
- "when": {
- "west": "false"
- }
- },
- {
- "apply": {
- "model": "tfmg:block/copper_encased_cast_iron_pipe/block_flat",
- "y": 270
- },
- "when": {
- "east": "false"
- }
- },
- {
- "apply": {
- "model": "tfmg:block/copper_encased_cast_iron_pipe/block_open",
- "x": -90
- },
- "when": {
- "down": "true"
- }
- },
- {
- "apply": {
- "model": "tfmg:block/copper_encased_cast_iron_pipe/block_open",
- "x": 90
- },
- "when": {
- "up": "true"
- }
- },
- {
- "apply": {
- "model": "tfmg:block/copper_encased_cast_iron_pipe/block_open",
- "y": 180
- },
- "when": {
- "north": "true"
- }
- },
- {
- "apply": {
- "model": "tfmg:block/copper_encased_cast_iron_pipe/block_open"
- },
- "when": {
- "south": "true"
- }
- },
- {
- "apply": {
- "model": "tfmg:block/copper_encased_cast_iron_pipe/block_open",
- "y": 90
- },
- "when": {
- "west": "true"
- }
- },
- {
- "apply": {
- "model": "tfmg:block/copper_encased_cast_iron_pipe/block_open",
- "y": 270
- },
- "when": {
- "east": "true"
- }
- }
- ]
-}
\ No newline at end of file
diff --git a/src/generated/resources/assets/tfmg/blockstates/copper_encased_brass_pipe.json b/src/generated/resources/assets/tfmg/blockstates/encased_aluminum_pipe.json
similarity index 60%
rename from src/generated/resources/assets/tfmg/blockstates/copper_encased_brass_pipe.json
rename to src/generated/resources/assets/tfmg/blockstates/encased_aluminum_pipe.json
index 59d8590f..420ffbd4 100644
--- a/src/generated/resources/assets/tfmg/blockstates/copper_encased_brass_pipe.json
+++ b/src/generated/resources/assets/tfmg/blockstates/encased_aluminum_pipe.json
@@ -2,7 +2,7 @@
"multipart": [
{
"apply": {
- "model": "tfmg:block/copper_encased_brass_pipe/block_flat",
+ "model": "tfmg:block/encased_aluminum_pipe/block_flat",
"x": -90
},
"when": {
@@ -11,7 +11,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_brass_pipe/block_flat",
+ "model": "tfmg:block/encased_aluminum_pipe/block_flat",
"x": 90
},
"when": {
@@ -20,7 +20,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_brass_pipe/block_flat",
+ "model": "tfmg:block/encased_aluminum_pipe/block_flat",
"y": 180
},
"when": {
@@ -29,7 +29,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_brass_pipe/block_flat"
+ "model": "tfmg:block/encased_aluminum_pipe/block_flat"
},
"when": {
"south": "false"
@@ -37,7 +37,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_brass_pipe/block_flat",
+ "model": "tfmg:block/encased_aluminum_pipe/block_flat",
"y": 90
},
"when": {
@@ -46,7 +46,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_brass_pipe/block_flat",
+ "model": "tfmg:block/encased_aluminum_pipe/block_flat",
"y": 270
},
"when": {
@@ -55,7 +55,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_brass_pipe/block_open",
+ "model": "tfmg:block/encased_aluminum_pipe/block_open",
"x": -90
},
"when": {
@@ -64,7 +64,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_brass_pipe/block_open",
+ "model": "tfmg:block/encased_aluminum_pipe/block_open",
"x": 90
},
"when": {
@@ -73,7 +73,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_brass_pipe/block_open",
+ "model": "tfmg:block/encased_aluminum_pipe/block_open",
"y": 180
},
"when": {
@@ -82,7 +82,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_brass_pipe/block_open"
+ "model": "tfmg:block/encased_aluminum_pipe/block_open"
},
"when": {
"south": "true"
@@ -90,7 +90,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_brass_pipe/block_open",
+ "model": "tfmg:block/encased_aluminum_pipe/block_open",
"y": 90
},
"when": {
@@ -99,7 +99,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_brass_pipe/block_open",
+ "model": "tfmg:block/encased_aluminum_pipe/block_open",
"y": 270
},
"when": {
diff --git a/src/generated/resources/assets/tfmg/blockstates/copper_encased_steel_pipe.json b/src/generated/resources/assets/tfmg/blockstates/encased_brass_pipe.json
similarity index 60%
rename from src/generated/resources/assets/tfmg/blockstates/copper_encased_steel_pipe.json
rename to src/generated/resources/assets/tfmg/blockstates/encased_brass_pipe.json
index 82007811..be280f3d 100644
--- a/src/generated/resources/assets/tfmg/blockstates/copper_encased_steel_pipe.json
+++ b/src/generated/resources/assets/tfmg/blockstates/encased_brass_pipe.json
@@ -2,7 +2,7 @@
"multipart": [
{
"apply": {
- "model": "tfmg:block/copper_encased_steel_pipe/block_flat",
+ "model": "tfmg:block/encased_brass_pipe/block_flat",
"x": -90
},
"when": {
@@ -11,7 +11,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_steel_pipe/block_flat",
+ "model": "tfmg:block/encased_brass_pipe/block_flat",
"x": 90
},
"when": {
@@ -20,7 +20,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_steel_pipe/block_flat",
+ "model": "tfmg:block/encased_brass_pipe/block_flat",
"y": 180
},
"when": {
@@ -29,7 +29,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_steel_pipe/block_flat"
+ "model": "tfmg:block/encased_brass_pipe/block_flat"
},
"when": {
"south": "false"
@@ -37,7 +37,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_steel_pipe/block_flat",
+ "model": "tfmg:block/encased_brass_pipe/block_flat",
"y": 90
},
"when": {
@@ -46,7 +46,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_steel_pipe/block_flat",
+ "model": "tfmg:block/encased_brass_pipe/block_flat",
"y": 270
},
"when": {
@@ -55,7 +55,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_steel_pipe/block_open",
+ "model": "tfmg:block/encased_brass_pipe/block_open",
"x": -90
},
"when": {
@@ -64,7 +64,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_steel_pipe/block_open",
+ "model": "tfmg:block/encased_brass_pipe/block_open",
"x": 90
},
"when": {
@@ -73,7 +73,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_steel_pipe/block_open",
+ "model": "tfmg:block/encased_brass_pipe/block_open",
"y": 180
},
"when": {
@@ -82,7 +82,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_steel_pipe/block_open"
+ "model": "tfmg:block/encased_brass_pipe/block_open"
},
"when": {
"south": "true"
@@ -90,7 +90,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_steel_pipe/block_open",
+ "model": "tfmg:block/encased_brass_pipe/block_open",
"y": 90
},
"when": {
@@ -99,7 +99,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_steel_pipe/block_open",
+ "model": "tfmg:block/encased_brass_pipe/block_open",
"y": 270
},
"when": {
diff --git a/src/generated/resources/assets/tfmg/blockstates/copper_encased_plastic_pipe.json b/src/generated/resources/assets/tfmg/blockstates/encased_cast_iron_pipe.json
similarity index 59%
rename from src/generated/resources/assets/tfmg/blockstates/copper_encased_plastic_pipe.json
rename to src/generated/resources/assets/tfmg/blockstates/encased_cast_iron_pipe.json
index 0a40bf5b..542390dd 100644
--- a/src/generated/resources/assets/tfmg/blockstates/copper_encased_plastic_pipe.json
+++ b/src/generated/resources/assets/tfmg/blockstates/encased_cast_iron_pipe.json
@@ -2,7 +2,7 @@
"multipart": [
{
"apply": {
- "model": "tfmg:block/copper_encased_plastic_pipe/block_flat",
+ "model": "tfmg:block/encased_cast_iron_pipe/block_flat",
"x": -90
},
"when": {
@@ -11,7 +11,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_plastic_pipe/block_flat",
+ "model": "tfmg:block/encased_cast_iron_pipe/block_flat",
"x": 90
},
"when": {
@@ -20,7 +20,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_plastic_pipe/block_flat",
+ "model": "tfmg:block/encased_cast_iron_pipe/block_flat",
"y": 180
},
"when": {
@@ -29,7 +29,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_plastic_pipe/block_flat"
+ "model": "tfmg:block/encased_cast_iron_pipe/block_flat"
},
"when": {
"south": "false"
@@ -37,7 +37,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_plastic_pipe/block_flat",
+ "model": "tfmg:block/encased_cast_iron_pipe/block_flat",
"y": 90
},
"when": {
@@ -46,7 +46,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_plastic_pipe/block_flat",
+ "model": "tfmg:block/encased_cast_iron_pipe/block_flat",
"y": 270
},
"when": {
@@ -55,7 +55,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_plastic_pipe/block_open",
+ "model": "tfmg:block/encased_cast_iron_pipe/block_open",
"x": -90
},
"when": {
@@ -64,7 +64,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_plastic_pipe/block_open",
+ "model": "tfmg:block/encased_cast_iron_pipe/block_open",
"x": 90
},
"when": {
@@ -73,7 +73,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_plastic_pipe/block_open",
+ "model": "tfmg:block/encased_cast_iron_pipe/block_open",
"y": 180
},
"when": {
@@ -82,7 +82,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_plastic_pipe/block_open"
+ "model": "tfmg:block/encased_cast_iron_pipe/block_open"
},
"when": {
"south": "true"
@@ -90,7 +90,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_plastic_pipe/block_open",
+ "model": "tfmg:block/encased_cast_iron_pipe/block_open",
"y": 90
},
"when": {
@@ -99,7 +99,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_plastic_pipe/block_open",
+ "model": "tfmg:block/encased_cast_iron_pipe/block_open",
"y": 270
},
"when": {
diff --git a/src/generated/resources/assets/tfmg/blockstates/copper_encased_aluminum_pipe.json b/src/generated/resources/assets/tfmg/blockstates/encased_plastic_pipe.json
similarity index 59%
rename from src/generated/resources/assets/tfmg/blockstates/copper_encased_aluminum_pipe.json
rename to src/generated/resources/assets/tfmg/blockstates/encased_plastic_pipe.json
index 7ea55670..9f72f1b4 100644
--- a/src/generated/resources/assets/tfmg/blockstates/copper_encased_aluminum_pipe.json
+++ b/src/generated/resources/assets/tfmg/blockstates/encased_plastic_pipe.json
@@ -2,7 +2,7 @@
"multipart": [
{
"apply": {
- "model": "tfmg:block/copper_encased_aluminum_pipe/block_flat",
+ "model": "tfmg:block/encased_plastic_pipe/block_flat",
"x": -90
},
"when": {
@@ -11,7 +11,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_aluminum_pipe/block_flat",
+ "model": "tfmg:block/encased_plastic_pipe/block_flat",
"x": 90
},
"when": {
@@ -20,7 +20,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_aluminum_pipe/block_flat",
+ "model": "tfmg:block/encased_plastic_pipe/block_flat",
"y": 180
},
"when": {
@@ -29,7 +29,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_aluminum_pipe/block_flat"
+ "model": "tfmg:block/encased_plastic_pipe/block_flat"
},
"when": {
"south": "false"
@@ -37,7 +37,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_aluminum_pipe/block_flat",
+ "model": "tfmg:block/encased_plastic_pipe/block_flat",
"y": 90
},
"when": {
@@ -46,7 +46,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_aluminum_pipe/block_flat",
+ "model": "tfmg:block/encased_plastic_pipe/block_flat",
"y": 270
},
"when": {
@@ -55,7 +55,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_aluminum_pipe/block_open",
+ "model": "tfmg:block/encased_plastic_pipe/block_open",
"x": -90
},
"when": {
@@ -64,7 +64,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_aluminum_pipe/block_open",
+ "model": "tfmg:block/encased_plastic_pipe/block_open",
"x": 90
},
"when": {
@@ -73,7 +73,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_aluminum_pipe/block_open",
+ "model": "tfmg:block/encased_plastic_pipe/block_open",
"y": 180
},
"when": {
@@ -82,7 +82,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_aluminum_pipe/block_open"
+ "model": "tfmg:block/encased_plastic_pipe/block_open"
},
"when": {
"south": "true"
@@ -90,7 +90,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_aluminum_pipe/block_open",
+ "model": "tfmg:block/encased_plastic_pipe/block_open",
"y": 90
},
"when": {
@@ -99,7 +99,7 @@
},
{
"apply": {
- "model": "tfmg:block/copper_encased_aluminum_pipe/block_open",
+ "model": "tfmg:block/encased_plastic_pipe/block_open",
"y": 270
},
"when": {
diff --git a/src/generated/resources/assets/tfmg/blockstates/encased_steel_pipe.json b/src/generated/resources/assets/tfmg/blockstates/encased_steel_pipe.json
new file mode 100644
index 00000000..da0cf08f
--- /dev/null
+++ b/src/generated/resources/assets/tfmg/blockstates/encased_steel_pipe.json
@@ -0,0 +1,110 @@
+{
+ "multipart": [
+ {
+ "apply": {
+ "model": "tfmg:block/encased_steel_pipe/block_flat",
+ "x": -90
+ },
+ "when": {
+ "down": "false"
+ }
+ },
+ {
+ "apply": {
+ "model": "tfmg:block/encased_steel_pipe/block_flat",
+ "x": 90
+ },
+ "when": {
+ "up": "false"
+ }
+ },
+ {
+ "apply": {
+ "model": "tfmg:block/encased_steel_pipe/block_flat",
+ "y": 180
+ },
+ "when": {
+ "north": "false"
+ }
+ },
+ {
+ "apply": {
+ "model": "tfmg:block/encased_steel_pipe/block_flat"
+ },
+ "when": {
+ "south": "false"
+ }
+ },
+ {
+ "apply": {
+ "model": "tfmg:block/encased_steel_pipe/block_flat",
+ "y": 90
+ },
+ "when": {
+ "west": "false"
+ }
+ },
+ {
+ "apply": {
+ "model": "tfmg:block/encased_steel_pipe/block_flat",
+ "y": 270
+ },
+ "when": {
+ "east": "false"
+ }
+ },
+ {
+ "apply": {
+ "model": "tfmg:block/encased_steel_pipe/block_open",
+ "x": -90
+ },
+ "when": {
+ "down": "true"
+ }
+ },
+ {
+ "apply": {
+ "model": "tfmg:block/encased_steel_pipe/block_open",
+ "x": 90
+ },
+ "when": {
+ "up": "true"
+ }
+ },
+ {
+ "apply": {
+ "model": "tfmg:block/encased_steel_pipe/block_open",
+ "y": 180
+ },
+ "when": {
+ "north": "true"
+ }
+ },
+ {
+ "apply": {
+ "model": "tfmg:block/encased_steel_pipe/block_open"
+ },
+ "when": {
+ "south": "true"
+ }
+ },
+ {
+ "apply": {
+ "model": "tfmg:block/encased_steel_pipe/block_open",
+ "y": 90
+ },
+ "when": {
+ "west": "true"
+ }
+ },
+ {
+ "apply": {
+ "model": "tfmg:block/encased_steel_pipe/block_open",
+ "y": 270
+ },
+ "when": {
+ "east": "true"
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/src/generated/resources/assets/tfmg/lang/en_ud.json b/src/generated/resources/assets/tfmg/lang/en_ud.json
index 9324f90e..b29275b8 100644
--- a/src/generated/resources/assets/tfmg/lang/en_ud.json
+++ b/src/generated/resources/assets/tfmg/lang/en_ud.json
@@ -122,11 +122,6 @@
"block.tfmg.converter.tooltip.summary": "ɐsɹǝʌ ǝɔıʌ puɐ ʎbɹǝuǝ ⅁WℲ⟘ oʇ ƎℲ sʇɹǝʌuoƆ",
"block.tfmg.cooling_fluid": "pınןℲ buıןooƆ",
"block.tfmg.copper_cable_hub": "qnH ǝןqɐƆ ɹǝddoƆ",
- "block.tfmg.copper_encased_aluminum_pipe": "ǝdıԀ ɯnuıɯnןⱯ pǝsɐɔuƎ ɹǝddoƆ",
- "block.tfmg.copper_encased_brass_pipe": "ǝdıԀ ssɐɹᗺ pǝsɐɔuƎ ɹǝddoƆ",
- "block.tfmg.copper_encased_cast_iron_pipe": "ǝdıԀ uoɹI ʇsɐƆ pǝsɐɔuƎ ɹǝddoƆ",
- "block.tfmg.copper_encased_plastic_pipe": "ǝdıԀ ɔıʇsɐןԀ pǝsɐɔuƎ ɹǝddoƆ",
- "block.tfmg.copper_encased_steel_pipe": "ǝdıԀ ןǝǝʇS pǝsɐɔuƎ ɹǝddoƆ",
"block.tfmg.copper_frame": "ǝɯɐɹℲ ɹǝddoƆ",
"block.tfmg.copper_truss": "ssnɹ⟘ ɹǝddoƆ",
"block.tfmg.copycat_cable_base": "ǝsɐᗺ ǝןqɐƆ ʇɐɔʎdoƆ",
@@ -174,8 +169,13 @@
"block.tfmg.electrical_switch": "ɥɔʇıʍS ɔıɹʇɔǝןƎ",
"block.tfmg.electrical_switch.tooltip.summary": "ǝuoʇspǝɹ ɥʇıʍ pǝɹǝʍod uǝɥʍ ɥbnoɹɥʇ ɹǝʍod sʇǝꞀ",
"block.tfmg.electrode_holder": "ɹǝpןoH ǝpoɹʇɔǝןƎ",
+ "block.tfmg.encased_aluminum_pipe": "ǝdıԀ ɯnuıɯnןⱯ pǝsɐɔuƎ",
+ "block.tfmg.encased_brass_pipe": "ǝdıԀ ssɐɹᗺ pǝsɐɔuƎ",
+ "block.tfmg.encased_cast_iron_pipe": "ǝdıԀ uoɹI ʇsɐƆ pǝsɐɔuƎ",
"block.tfmg.encased_diode": "ǝpoıᗡ pǝsɐɔuƎ",
+ "block.tfmg.encased_plastic_pipe": "ǝdıԀ ɔıʇsɐןԀ pǝsɐɔuƎ",
"block.tfmg.encased_potentiometer": "ɹǝʇǝɯoıʇuǝʇoԀ pǝsɐɔuƎ",
+ "block.tfmg.encased_steel_pipe": "ǝdıԀ ןǝǝʇS pǝsɐɔuƎ",
"block.tfmg.engine_controller": "ɹǝןןoɹʇuoƆ ǝuıbuƎ",
"block.tfmg.engine_controller.tooltip.behaviour1": "˙ǝuıbuǝ ǝɥʇ ɥʇıʍ ǝɯɐs ǝɥʇ op uǝɥʇ puɐ ɯǝʇı uoıssıɯsuɐɹʇ ɐ ɥʇıʍ ɹǝןןoɹʇuoɔ ǝɥʇ ʞɔıןƆ-ᴚ",
"block.tfmg.engine_controller.tooltip.behaviour2": "uoıʇɔǝs ʍoɹ⅁ ʇsnW ʎɹoʇɔɐℲ ǝɥ⟘ :ǝʇɐǝɹƆ ǝɥʇ uı ʎןןɐɔıɟıɔǝds sbuıʇʇǝs ʇɟɐɹɔǝuıɯ ǝɥʇ ɟo ʇɹɐd spuıqʎǝʞ ǝɥʇ uı ʞooꞀ",
@@ -508,167 +508,6 @@
"block.tfmg.yellow_rebar_concrete_wall": "ןןɐM ǝʇǝɹɔuoƆ ɹɐqǝᴚ ʍoןןǝʎ",
"block.tfmg.zinc_frame": "ǝɯɐɹℲ ɔuıZ",
"block.tfmg.zinc_truss": "ssnɹ⟘ ɔuıZ",
- "create.creative_generator.voltage_generation": "uoıʇɐɹǝuǝ⅁ ǝbɐʇןoΛ",
- "create.distillation_output.mode.keep_fluid": "ssǝɔoɹԀ uoıʇɐןןıʇsıᗡ doʇS",
- "create.distillation_output.mode.void_when_full": "pınןℲ ssǝɔxƎ pıoΛ",
- "create.distillation_output.when_tank_is_full": "ןןnℲ sı ʞuɐ⟘ ןɐuɹǝʇuI uǝɥM",
- "create.electricity.capacity": "%s :ʎʇıɔɐdɐƆ",
- "create.electricity.charging_rate": "%s :ǝʇɐᴚ buıbɹɐɥƆ",
- "create.electricity.max_capacity": "%s :ʎʇıɔɐdɐƆ xɐW",
- "create.engine.controller.header": "ɹǝןןoɹʇuoƆ ǝuıbuƎ",
- "create.engine.efficiency": "%s :ʎɔuǝıɔıɟɟƎ",
- "create.engine.fuel_consumption": "%s :uoıʇdɯnsuoƆ ןǝnℲ",
- "create.engine.injection_rate": "%s :ǝʇɐᴚ uoıʇɔǝظuI",
- "create.engine.length": "%s :ɥʇbuǝꞀ",
- "create.engine.rpm": "%s :WԀᴚ",
- "create.engine.shift": "%s :ʇɟıɥS",
- "create.engine.signal": "%s :ןɐubıS",
- "create.engine.speed_efficiency": "%s :ʎɔuǝıɔıɟɟƎ pǝǝdS",
- "create.engine.torque": "%s :ǝnbɹo⟘",
- "create.engine.type.boxer": "ɹǝxoᗺ",
- "create.engine.type.engine_i": "I",
- "create.engine.type.engine_u": "∩",
- "create.engine.type.engine_v": "Λ",
- "create.engine.type.engine_w": "M",
- "create.engine.type.radial": "ןɐıpɐᴚ",
- "create.engine.type.turbine": "ǝuıqɹn⟘",
- "create.engine.upgrade.transmission.neutral": "ןɐɹʇnǝN",
- "create.engine.upgrade.transmission.reverse": "ǝsɹǝʌǝᴚ",
- "create.engine.upgrade.transmission.shift_1": "ɹɐǝ⅁ ʇsƖ",
- "create.engine.upgrade.transmission.shift_2": "ɹɐǝ⅁ puᄅ",
- "create.engine.upgrade.transmission.shift_3": "ɹɐǝ⅁ pɹƐ",
- "create.engine.upgrade.transmission.shift_4": "ɹɐǝ⅁ ɥʇㄣ",
- "create.engine.upgrade.transmission.shift_5": "ɹɐǝ⅁ ɥʇϛ",
- "create.engine.upgrade.transmission.shift_6": "ɹɐǝ⅁ ɥʇ9",
- "create.fe": "%1$s :ƎℲ",
- "create.flamethrower.fuel.amount": "ʇunoɯⱯ ǝןıʇɔǝظoɹԀ %s",
- "create.flamethrower.fuel.capacity": "%s :ʎʇıɔɐdɐƆ ןǝnℲ",
- "create.flamethrower.fuel.cold": "ǝɯɐןℲ pןoƆ",
- "create.flamethrower.fuel.hellfire": "ǝɯɐןℲ buıɥɔɹoɔS",
- "create.flamethrower.fuel.speed": "pǝǝdS ǝןıʇɔǝظoɹԀ %s",
- "create.flamethrower.fuel.spread": "pɐǝɹdS ǝןıʇɔǝظoɹԀ %s",
- "create.goggles.ammeter": ":ɹǝʇǝɯɯⱯ",
- "create.goggles.ammeter.amps": "Λ %1$s :sdɯⱯ pǝɹnsɐǝW ",
- "create.goggles.blast_furnace.fuel_amount": "%1$s : ןǝnℲ ",
- "create.goggles.blast_furnace.height": "%1$s :ʇɥbıǝH ",
- "create.goggles.blast_furnace.modifier": "%1$s :ǝɯı⟘ uoıʇɔnpoɹԀ",
- "create.goggles.blast_furnace.reinforced": "pǝɔɹoɟuıǝᴚ",
- "create.goggles.blast_furnace.stats": ":ǝɔɐuɹnℲ ʇsɐןᗺ",
- "create.goggles.blast_furnace.timer": "%1$s :ʇɟǝꞀ ǝɯı⟘",
- "create.goggles.blast_stove.header": " :ǝʌoʇS ʇsɐןᗺ",
- "create.goggles.blast_stove.tank1": " :ʞuɐ⟘ ʇnduI",
- "create.goggles.blast_stove.tank2": " :ʞuɐ⟘ ןǝnℲ",
- "create.goggles.blast_stove.tank3": " :Ɩ ʞuɐ⟘ ʇndʇnO",
- "create.goggles.blast_stove.tank4": " :ᄅ ʞuɐ⟘ ʇndʇnO",
- "create.goggles.coke_oven.header": ":uǝʌO ǝʞoƆ",
- "create.goggles.coke_oven.progress": "%1$s :ssǝɹboɹԀ",
- "create.goggles.distillation_tower.found_outputs": "%1$s :ʇunoƆ ʇndʇnO",
- "create.goggles.distillation_tower.level": "%1$s :ןǝʌǝꞀ ʇɐǝH",
- "create.goggles.distillation_tower.no_outputs": "punoℲ sʞɔoןᗺ ʇndʇnO oN",
- "create.goggles.distillation_tower.status": ":oɟuI ɹǝʍo⟘ uoıʇɐןןıʇsıᗡ",
- "create.goggles.distillation_tower.tank_not_found": "punoℲ ʇoN ʞuɐ⟘ pınןℲ ןǝǝʇS",
- "create.goggles.electric_machine.no_power": "ɹǝʍoԀ oN",
- "create.goggles.electricity.insufficient_voltage": "ǝbɐʇןoΛ ʇuǝıɔıɟɟnsuI",
- "create.goggles.electrode_holder.min_amps": " spǝǝN( ʇuǝɹɹnƆ ɥbnouƎ ʇoN",
- "create.goggles.engine.cooling_fluid": "%s :pınןℲ buıןooƆ",
- "create.goggles.engine.fuel_consumption": "s/ᗺɯ %s :uoıʇdɯnsuoƆ ןǝnℲ",
- "create.goggles.engine.header": "oɟuI ǝuıbuƎ",
- "create.goggles.engine.next_component": " :ʇuǝuodɯoƆ ʇxǝN ",
- "create.goggles.engine.oil": "%s :ןıO",
- "create.goggles.engine.pistons_missing": "buıssıW suoʇsıԀ",
- "create.goggles.engine.rpm": "WԀᴚ %s :pǝǝdS",
- "create.goggles.engine.signal": "%s :ןɐubıS",
- "create.goggles.engine.torque": "%s :ǝnbɹo⟘",
- "create.goggles.engine.turbines_missing": "buıssıW sǝuıqɹn⟘",
- "create.goggles.engine.type": "%s :ǝdʎ⟘",
- "create.goggles.engine.unfinished": "pǝɥsıuıɟu∩ ǝuıbuƎ",
- "create.goggles.fluid_storage": ":ǝbɐɹoʇS pınןℲ",
- "create.goggles.gauge.value": ":ǝbɐʇןoΛ pǝɹnsɐǝW ",
- "create.goggles.generator.production": "ʇ/ǝɟ %1$s :uoıʇɔnpoɹԀ ʎbɹǝuƎ",
- "create.goggles.item_storage": ":ǝbɐɹoʇS ɯǝʇI",
- "create.goggles.item_storage_empty": "*ʎʇdɯƎ*",
- "create.goggles.machine_input.info": "oɟuI ʇnduI ǝuıɥɔɐW",
- "create.goggles.machine_input.no_rot": "¡pǝpıʌoɹԀ uoıʇɐʇoᴚ oN",
- "create.goggles.machine_input.power_level": " :ןǝʌǝꞀ ɹǝʍoԀ",
- "create.goggles.motor.usage": "ʇ/ǝɟ %1$s :ǝbɐs∩ ʎbɹǝuƎ",
- "create.goggles.polarizer.charge": " :ǝbɹɐɥƆ",
- "create.goggles.polarizer.header": "ɹǝzıɹɐןoԀ",
- "create.goggles.polarizer.insufficient_power": ")M000ᄅ spǝǝN( ɹǝʍoԀ ɥbnouƎ ʇoN",
- "create.goggles.pumpjack.deposit_info": ":oɟuI ʇısodǝᗡ",
- "create.goggles.pumpjack.fluid_amount": ":ʇunoɯⱯ pınןℲ",
- "create.goggles.pumpjack.part_missing": "buıssıW ʞuɐɹƆ ɹo ɹǝɯɯɐH",
- "create.goggles.pumpjack.reserves": " :sǝʌɹǝsǝᴚ ʇısodǝᗡ",
- "create.goggles.pumpjack.wrong_rotation1": "ʇsnɯ ɹǝʞɹɐɯ pǝɹ ǝɥʇ 'ʎןʇɔǝɹɹoɔuı pǝʇuǝıɹo sı ǝsɐᗺ ʞɔɐظdɯnԀ ǝɥ⟘",
- "create.goggles.pumpjack.wrong_rotation2": "ɹǝpןoH ɹǝɯɯɐH ʞɔɐظdɯnԀ ǝɥʇ ɯoɹɟ ʎɐʍɐ ǝɔɐɟ",
- "create.goggles.pumpjack_fluid_storage": ":oɟuI ʞuɐ⟘ pınןℲ",
- "create.goggles.pumpjack_info": ":oɟuI ʞɔɐظdɯnԀ",
- "create.goggles.surface_scanner.deposits_found": "punoℲ sʇısodǝᗡ ןıO ɥʇıM sʞunɥƆ ",
- "create.goggles.surface_scanner.header": "ɹǝuuɐɔS ǝɔɐɟɹnS",
- "create.goggles.surface_scanner.no_deposit": "punoℲ sʇısodǝᗡ oN",
- "create.goggles.surface_scanner.no_rotation": ")ɯdɹㄣ9 spǝǝN( uoıʇɐʇoᴚ ɥbnouƎ ʇoN",
- "create.goggles.vat.attachments": ":sʇuǝɯɥɔɐʇʇⱯ",
- "create.goggles.vat.contents": ":sʇuǝʇuoƆ ʇɐΛ",
- "create.goggles.vat.header": "ʇɐΛ ןɐɔıɯǝɥƆ",
- "create.goggles.vat.heat_status": " :snʇɐʇS ʇɐǝH",
- "create.goggles.vat.heated": "pǝʇɐǝH",
- "create.goggles.vat.no_heat": "ʇɐǝH oN",
- "create.goggles.vat.not_operational": "ןɐuoıʇɐɹǝdO ʇoN",
- "create.goggles.vat.superheated": "pǝʇɐǝɥɹǝdnS",
- "create.goggles.vat.tfmg.centrifuge": "ǝbnɟıɹʇuǝƆ ",
- "create.goggles.vat.tfmg.electrode": "ǝpoɹʇɔǝןƎ ",
- "create.goggles.vat.tfmg.graphite_electrode": "ǝpoɹʇɔǝןƎ ǝʇıɥdɐɹ⅁ ",
- "create.goggles.vat.tfmg.mixing": "ɹǝxıW ",
- "create.goggles.voltmeter": ":ɹǝʇǝɯʇןoΛ",
- "create.goggles.voltmeter.mode.capacity": "ʎʇıɔɐdɐƆ",
- "create.goggles.voltmeter.mode.current": "ʇuǝɹɹnƆ",
- "create.goggles.voltmeter.mode.fallback": "ʞɔɐqןןɐℲ",
- "create.goggles.voltmeter.mode.high_voltage": ")ɥbıH( ǝbɐʇןoΛ",
- "create.goggles.voltmeter.mode.net_power_gen": "uoıʇɐɹǝuǝ⅁ ɹǝʍoԀ ʞɹoʍʇǝN",
- "create.goggles.voltmeter.mode.net_power_use": "ǝbɐs∩ ɹǝʍoԀ ʞɹoʍʇǝN",
- "create.goggles.voltmeter.mode.power": "ɹǝʍoԀ",
- "create.goggles.voltmeter.mode.resistance": "ǝɔuɐʇsısǝᴚ",
- "create.goggles.voltmeter.mode.voltage": "ǝbɐʇןoΛ",
- "create.goggles.voltmeter.range": "%1$s :ǝbuɐᴚ ",
- "create.goggles.winding_machine.header": "ǝuıɥɔɐW buıpuıM",
- "create.goggles.winding_machine.progress": " :ssǝɹboɹԀ",
- "create.goggles.winding_machine.turns": " :ʇɟǝꞀ suɹn⟘",
- "create.goggles.zero": "pıןɐʌuI ǝuıɥɔɐW",
- "create.multimeter.additional_values": ":sǝnןɐΛ ןɐuoıʇıppⱯ",
- "create.multimeter.energy_stored": " :pǝɹoʇS ʎbɹǝuƎ ",
- "create.multimeter.energy_usage": " :ǝbɐs∩ ʎbɹǝuƎ ",
- "create.multimeter.group": "%s :dnoɹ⅁ ",
- "create.multimeter.header": ":ɐʇɐᗡ ɹǝʇǝɯıʇןnW",
- "create.multimeter.insufficient_power": "ᴚƎMOԀ ⟘H⅁∩ONƎ ⟘ON",
- "create.multimeter.network.consumption": "%s :uoıʇdɯnsuoƆ ɹǝʍoԀ ʞɹoʍʇǝN",
- "create.multimeter.network.generation": "%s :uoıʇɐɹǝuǝ⅁ ɹǝʍoԀ ʞɹoʍʇǝN",
- "create.multimeter.power_generated": "%s :pǝʇɐɹǝuǝ⅁ ɹǝʍoԀ ",
- "create.multimeter.power_percentage": " :ɥʇbuǝɹʇS pıɹ⅁ ",
- "create.multimeter.power_usage": " :ǝbɐs∩ ɹǝʍoԀ ",
- "create.multimeter.separator": "----------------------------",
- "create.multimeter.transformer_ratio": " :oıʇɐᴚ uɹn⟘ ",
- "create.multimeter.voltage_generated": "%s :pǝʇɐɹǝuǝ⅁ ǝbɐʇןoΛ ",
- "create.network": "%1$s :ʞɹoʍʇǝN",
- "create.oil_hammer.reserves": "%1$s :sǝʌɹǝsǝᴚ ןıO",
- "create.pumpjack_deposit_amount": "sʇǝʞɔnᗺ %1$s",
- "create.recipe.advanced_distillation": "uoıʇɐןןıʇsıᗡ pǝɔuɐʌpⱯ",
- "create.recipe.assembly.winding": "ןoodS ɐ puıM",
- "create.recipe.casting": "buıʇsɐƆ",
- "create.recipe.chemical_vat": "ʇɐΛ ןɐɔıɯǝɥƆ",
- "create.recipe.coking": "buıʞoƆ",
- "create.recipe.distillation": "uoıʇɐןןıʇsıᗡ",
- "create.recipe.hot_blast": "buıʇsɐןᗺ ɹıⱯ",
- "create.recipe.industrial_blasting": "buıʇsɐןᗺ ןɐıɹʇsnpuI",
- "create.recipe.polarizing": "buızıɹɐןoԀ",
- "create.recipe.winding": "buıpuıM",
- "create.resistor.allowed_voltage": "pǝʍoןןⱯ ǝbɐʇןoΛ ɟo ǝbɐʇuǝɔɹǝԀ",
- "create.tooltip.coils": "%1$s :suɹn⟘",
- "create.tooltip.cylinder": ":sןǝnℲ pǝʇɹoddnS",
- "create.tooltip.fluid_item": "%1$s :ʇunoɯⱯ pınןℲ",
- "create.tooltip.fuse": "%1$s :buıʇɐᴚ",
- "create.tooltip.resistor": "%1$s :ǝɔuɐʇsısǝᴚ",
- "create.voltage": "%1$s :ǝbɐʇןoΛ",
- "create.winding_machine.turn_percentage": ")000Ɩ ɯoɹℲ( ǝbɐʇuǝɔɹǝԀ uɹn⟘ pǝʍoןןⱯ",
- "create.wires.removed_data": "pǝʌoɯǝᴚ ɐʇɐᗡ",
"creative_tab.tfmg_decoration": "sʞɔoןᗺ buıpןınᗺ ⅁WℲ⟘ :ǝʇɐǝɹƆ",
"creative_tab.tfmg_main": "ʍoɹ⅁ ʇsnW ʎɹoʇɔɐℲ ǝɥ⟘ :ǝʇɐǝɹƆ",
"death.attack.tfmg.acid": "ɥʇɐq pıɔɐ uɐ ʞooʇ %1$s",
@@ -1008,6 +847,9 @@
"item.tfmg.yellow_multimeter.tooltip.summary": "ʞɹoʍʇǝu sʇı puɐ ʞɔoןq ןɐɔıɹʇɔǝןǝ uɐ ʇnoqɐ ɐʇɐp sʍoɥS",
"item.tfmg.zinc_electrode": "ǝpoɹʇɔǝןƎ ɔuıZ",
"item.tfmg.zinc_grenade": "ǝpɐuǝɹ⅁ ɔuıZ",
+ "tfmg.blast_stove.header": " :ǝʌoʇS ʇsɐןᗺ",
+ "tfmg.coke_oven.header": ":uǝʌO ǝʞoƆ",
+ "tfmg.creative_generator.voltage_generation": "uoıʇɐɹǝuǝ⅁ ǝbɐʇןoΛ",
"tfmg.display_source.electricity.current": "ʇuǝɹɹnƆ",
"tfmg.display_source.electricity.network_consumption": "uoıʇdɯnsuoƆ ɹǝʍoԀ ʞɹoʍʇǝN",
"tfmg.display_source.electricity.network_generation": "uoıʇɐɹǝuǝ⅁ ɹǝʍoԀ ʞɹoʍʇǝN",
@@ -1018,10 +860,149 @@
"tfmg.display_source.electricity.resistance": "ǝɔuɐʇsısǝᴚ",
"tfmg.display_source.electricity.voltage": "ǝbɐʇןoΛ",
"tfmg.display_source.electricity.voltage_generation": "uoıʇɐɹǝuǝ⅁ ǝbɐʇןoΛ",
+ "tfmg.distillation_output.mode.keep_fluid": "ssǝɔoɹԀ uoıʇɐןןıʇsıᗡ doʇS",
+ "tfmg.distillation_output.mode.void_when_full": "pınןℲ ssǝɔxƎ pıoΛ",
+ "tfmg.distillation_output.when_tank_is_full": "ןןnℲ sı ʞuɐ⟘ ןɐuɹǝʇuI uǝɥM",
+ "tfmg.distillation_tower.header": ":oɟuI ɹǝʍo⟘ uoıʇɐןןıʇsıᗡ",
+ "tfmg.electricity.capacity": "%s :ʎʇıɔɐdɐƆ",
+ "tfmg.electricity.charging_rate": "%s :ǝʇɐᴚ buıbɹɐɥƆ",
+ "tfmg.electricity.max_capacity": "%s :ʎʇıɔɐdɐƆ xɐW",
+ "tfmg.engine.efficiency": "%s :ʎɔuǝıɔıɟɟƎ",
+ "tfmg.engine.fuel_consumption": "%s :uoıʇdɯnsuoƆ ןǝnℲ",
+ "tfmg.engine.header": "oɟuI ǝuıbuƎ",
+ "tfmg.engine.injection_rate": "%s :ǝʇɐᴚ uoıʇɔǝظuI",
+ "tfmg.engine.length": "%s :ɥʇbuǝꞀ",
+ "tfmg.engine.rpm": "%s :WԀᴚ",
+ "tfmg.engine.shift": "%s :ʇɟıɥS",
+ "tfmg.engine.signal": "%s :ןɐubıS",
+ "tfmg.engine.speed_efficiency": "%s :ʎɔuǝıɔıɟɟƎ pǝǝdS",
+ "tfmg.engine.torque": "%s :ǝnbɹo⟘",
+ "tfmg.engine.type.boxer": "ɹǝxoᗺ",
+ "tfmg.engine.type.engine_i": "I",
+ "tfmg.engine.type.engine_u": "∩",
+ "tfmg.engine.type.engine_v": "Λ",
+ "tfmg.engine.type.engine_w": "M",
+ "tfmg.engine.type.radial": "ןɐıpɐᴚ",
+ "tfmg.engine.type.turbine": "ǝuıqɹn⟘",
+ "tfmg.engine.upgrade.transmission.neutral": "ןɐɹʇnǝN",
+ "tfmg.engine.upgrade.transmission.reverse": "ǝsɹǝʌǝᴚ",
+ "tfmg.engine.upgrade.transmission.shift_1": "ɹɐǝ⅁ ʇsƖ",
+ "tfmg.engine.upgrade.transmission.shift_2": "ɹɐǝ⅁ puᄅ",
+ "tfmg.engine.upgrade.transmission.shift_3": "ɹɐǝ⅁ pɹƐ",
+ "tfmg.engine.upgrade.transmission.shift_4": "ɹɐǝ⅁ ɥʇㄣ",
+ "tfmg.engine.upgrade.transmission.shift_5": "ɹɐǝ⅁ ɥʇϛ",
+ "tfmg.engine.upgrade.transmission.shift_6": "ɹɐǝ⅁ ɥʇ9",
+ "tfmg.engine_controller.header": "ɹǝןןoɹʇuoƆ ǝuıbuƎ",
+ "tfmg.fe": "%1$s :ƎℲ",
+ "tfmg.flamethrower.fuel.amount": "ʇunoɯⱯ ǝןıʇɔǝظoɹԀ %s",
+ "tfmg.flamethrower.fuel.capacity": "%s :ʎʇıɔɐdɐƆ ןǝnℲ",
+ "tfmg.flamethrower.fuel.cold": "ǝɯɐןℲ pןoƆ",
+ "tfmg.flamethrower.fuel.hellfire": "ǝɯɐןℲ buıɥɔɹoɔS",
+ "tfmg.flamethrower.fuel.speed": "pǝǝdS ǝןıʇɔǝظoɹԀ %s",
+ "tfmg.flamethrower.fuel.spread": "pɐǝɹdS ǝןıʇɔǝظoɹԀ %s",
+ "tfmg.goggles.ammeter": ":ɹǝʇǝɯɯⱯ",
+ "tfmg.goggles.ammeter.amps": "Λ %1$s :sdɯⱯ pǝɹnsɐǝW ",
+ "tfmg.goggles.blast_furnace.fuel_amount": "%1$s : ןǝnℲ ",
+ "tfmg.goggles.blast_furnace.height": "%1$s :ʇɥbıǝH ",
+ "tfmg.goggles.blast_furnace.modifier": "%1$s :ǝɯı⟘ uoıʇɔnpoɹԀ",
+ "tfmg.goggles.blast_furnace.reinforced": "pǝɔɹoɟuıǝᴚ",
+ "tfmg.goggles.blast_furnace.stats": "%s :ǝɔɐuɹnℲ ʇsɐןᗺ",
+ "tfmg.goggles.blast_furnace.timer": "%1$s :ʇɟǝꞀ ǝɯı⟘",
+ "tfmg.goggles.blast_stove.tank1": " :ʞuɐ⟘ ʇnduI",
+ "tfmg.goggles.blast_stove.tank2": " :ʞuɐ⟘ ןǝnℲ",
+ "tfmg.goggles.blast_stove.tank3": " :Ɩ ʞuɐ⟘ ʇndʇnO",
+ "tfmg.goggles.blast_stove.tank4": " :ᄅ ʞuɐ⟘ ʇndʇnO",
+ "tfmg.goggles.coke_oven.progress": "%1$s :ssǝɹboɹԀ",
+ "tfmg.goggles.distillation_tower.found_outputs": "%1$s :ʇunoƆ ʇndʇnO",
+ "tfmg.goggles.distillation_tower.level": "%1$s :ןǝʌǝꞀ ʇɐǝH",
+ "tfmg.goggles.distillation_tower.no_outputs": "punoℲ sʞɔoןᗺ ʇndʇnO oN",
+ "tfmg.goggles.distillation_tower.tank_not_found": "punoℲ ʇoN ʞuɐ⟘ pınןℲ ןǝǝʇS",
+ "tfmg.goggles.electric_machine.no_power": "ɹǝʍoԀ oN",
+ "tfmg.goggles.electricity.insufficient_voltage": "ǝbɐʇןoΛ ʇuǝıɔıɟɟnsuI",
+ "tfmg.goggles.electrode_holder.min_amps": " spǝǝN( ʇuǝɹɹnƆ ɥbnouƎ ʇoN",
+ "tfmg.goggles.engine.cooling_fluid": "%s :pınןℲ buıןooƆ",
+ "tfmg.goggles.engine.fuel_consumption": "s/ᗺɯ %s :uoıʇdɯnsuoƆ ןǝnℲ",
+ "tfmg.goggles.engine.next_component": "%s :ʇuǝuodɯoƆ ʇxǝN ",
+ "tfmg.goggles.engine.oil": "%s :ןıO",
+ "tfmg.goggles.engine.pistons_missing": "buıssıW suoʇsıԀ",
+ "tfmg.goggles.engine.rpm": "WԀᴚ %s :pǝǝdS",
+ "tfmg.goggles.engine.signal": "%s :ןɐubıS",
+ "tfmg.goggles.engine.torque": "%s :ǝnbɹo⟘",
+ "tfmg.goggles.engine.turbines_missing": "buıssıW sǝuıqɹn⟘",
+ "tfmg.goggles.engine.type": "%s :ǝdʎ⟘",
+ "tfmg.goggles.engine.unfinished": "pǝɥsıuıɟu∩ ǝuıbuƎ",
+ "tfmg.goggles.fluid_storage": ":ǝbɐɹoʇS pınןℲ",
+ "tfmg.goggles.gauge.value": ":ǝbɐʇןoΛ pǝɹnsɐǝW ",
+ "tfmg.goggles.generator.production": "ʇ/ǝɟ %1$s :uoıʇɔnpoɹԀ ʎbɹǝuƎ",
+ "tfmg.goggles.heat_status": " :snʇɐʇS ʇɐǝH",
+ "tfmg.goggles.heated": "pǝʇɐǝH",
+ "tfmg.goggles.invalid_machine": "pıןɐʌuI ǝuıɥɔɐW",
+ "tfmg.goggles.item_storage": ":ǝbɐɹoʇS ɯǝʇI",
+ "tfmg.goggles.item_storage_empty": "*ʎʇdɯƎ*",
+ "tfmg.goggles.machine_input.info": "oɟuI ʇnduI ǝuıɥɔɐW",
+ "tfmg.goggles.machine_input.no_rot": "¡pǝpıʌoɹԀ uoıʇɐʇoᴚ oN",
+ "tfmg.goggles.machine_input.power_level": " :ןǝʌǝꞀ ɹǝʍoԀ",
+ "tfmg.goggles.motor.usage": "ʇ/ǝɟ %1$s :ǝbɐs∩ ʎbɹǝuƎ",
+ "tfmg.goggles.no_heat": "ʇɐǝH oN",
+ "tfmg.goggles.polarizer.charge": " :ǝbɹɐɥƆ",
+ "tfmg.goggles.polarizer.insufficient_power": ")M000ᄅ spǝǝN( ɹǝʍoԀ ɥbnouƎ ʇoN",
+ "tfmg.goggles.progress": "%1$s :ssǝɹboɹԀ",
+ "tfmg.goggles.pumpjack.deposit_info": ":oɟuI ʇısodǝᗡ",
+ "tfmg.goggles.pumpjack.fluid_amount": ":ʇunoɯⱯ pınןℲ",
+ "tfmg.goggles.pumpjack.part_missing": "buıssıW ʞuɐɹƆ ɹo ɹǝɯɯɐH",
+ "tfmg.goggles.pumpjack.reserves": " :sǝʌɹǝsǝᴚ ʇısodǝᗡ",
+ "tfmg.goggles.pumpjack.wrong_rotation1": "ʇsnɯ ɹǝʞɹɐɯ pǝɹ ǝɥʇ 'ʎןʇɔǝɹɹoɔuı pǝʇuǝıɹo sı ǝsɐᗺ ʞɔɐظdɯnԀ ǝɥ⟘",
+ "tfmg.goggles.pumpjack.wrong_rotation2": "ɹǝpןoH ɹǝɯɯɐH ʞɔɐظdɯnԀ ǝɥʇ ɯoɹɟ ʎɐʍɐ ǝɔɐɟ",
+ "tfmg.goggles.pumpjack_fluid_storage": ":oɟuI ʞuɐ⟘ pınןℲ",
+ "tfmg.goggles.superheated": "pǝʇɐǝɥɹǝdnS",
+ "tfmg.goggles.surface_scanner.deposits_found": "punoℲ sʇısodǝᗡ ןıO ɥʇıM sʞunɥƆ %s",
+ "tfmg.goggles.surface_scanner.no_deposit": "punoℲ sʇısodǝᗡ oN",
+ "tfmg.goggles.surface_scanner.no_rotation": ")ɯdɹㄣ9 spǝǝN( uoıʇɐʇoᴚ ɥbnouƎ ʇoN",
+ "tfmg.goggles.vat.attachments": ":sʇuǝɯɥɔɐʇʇⱯ",
+ "tfmg.goggles.vat.contents": ":sʇuǝʇuoƆ ʇɐΛ",
+ "tfmg.goggles.vat.not_operational": "ןɐuoıʇɐɹǝdO ʇoN",
+ "tfmg.goggles.vat.tfmg.centrifuge": "ǝbnɟıɹʇuǝƆ ",
+ "tfmg.goggles.vat.tfmg.electrode": "ǝpoɹʇɔǝןƎ ",
+ "tfmg.goggles.vat.tfmg.graphite_electrode": "ǝpoɹʇɔǝןƎ ǝʇıɥdɐɹ⅁ ",
+ "tfmg.goggles.vat.tfmg.mixing": "ɹǝxıW ",
+ "tfmg.goggles.voltmeter": ":ɹǝʇǝɯʇןoΛ",
+ "tfmg.goggles.voltmeter.mode.capacity": "ʎʇıɔɐdɐƆ",
+ "tfmg.goggles.voltmeter.mode.current": "ʇuǝɹɹnƆ",
+ "tfmg.goggles.voltmeter.mode.fallback": "ʞɔɐqןןɐℲ",
+ "tfmg.goggles.voltmeter.mode.high_voltage": ")ɥbıH( ǝbɐʇןoΛ",
+ "tfmg.goggles.voltmeter.mode.net_power_gen": "uoıʇɐɹǝuǝ⅁ ɹǝʍoԀ ʞɹoʍʇǝN",
+ "tfmg.goggles.voltmeter.mode.net_power_use": "ǝbɐs∩ ɹǝʍoԀ ʞɹoʍʇǝN",
+ "tfmg.goggles.voltmeter.mode.power": "ɹǝʍoԀ",
+ "tfmg.goggles.voltmeter.mode.resistance": "ǝɔuɐʇsısǝᴚ",
+ "tfmg.goggles.voltmeter.mode.voltage": "ǝbɐʇןoΛ",
+ "tfmg.goggles.voltmeter.range": "%1$s :ǝbuɐᴚ ",
+ "tfmg.goggles.winding_machine.progress": " :ssǝɹboɹԀ",
+ "tfmg.goggles.winding_machine.turns": "%s :ʇɟǝꞀ suɹn⟘",
+ "tfmg.goggles.zero": "pıןɐʌuI ǝuıɥɔɐW",
"tfmg.keyinfo.custom_button": "uoʇʇnᗺ ɯoʇsnƆ ɹǝןןoɹʇuoƆ ǝuıbuƎ",
"tfmg.keyinfo.engine_start": "ǝuıbuƎ ʇɹɐʇS",
"tfmg.keyinfo.transmission_shift_down": "uʍoᗡ ʇɟıɥS uoıssıɯsuɐɹ⟘",
"tfmg.keyinfo.transmission_shift_up": "d∩ ʇɟıɥS uoıssıɯsuɐɹ⟘",
+ "tfmg.multimeter.additional_values": ":sǝnןɐΛ ןɐuoıʇıppⱯ",
+ "tfmg.multimeter.charge": "%s :ǝbɹɐɥƆ",
+ "tfmg.multimeter.energy_stored": " :pǝɹoʇS ʎbɹǝuƎ ",
+ "tfmg.multimeter.energy_usage": " :ǝbɐs∩ ʎbɹǝuƎ ",
+ "tfmg.multimeter.group": "%s :dnoɹ⅁ ",
+ "tfmg.multimeter.header": ":ɐʇɐᗡ ɹǝʇǝɯıʇןnW",
+ "tfmg.multimeter.insufficient_current": ")%s spǝǝN( ʇuǝɹɹnƆ ɥbnouƎ ʇoN",
+ "tfmg.multimeter.insufficient_power": "ɹǝʍoԀ ɥbnouƎ ʇoN",
+ "tfmg.multimeter.insufficient_power.requirement": ")%s spǝǝN( ɹǝʍoԀ ɥbnouƎ ʇoN",
+ "tfmg.multimeter.network.consumption": "%s :uoıʇdɯnsuoƆ ɹǝʍoԀ ʞɹoʍʇǝN",
+ "tfmg.multimeter.network.generation": "%s :uoıʇɐɹǝuǝ⅁ ɹǝʍoԀ ʞɹoʍʇǝN",
+ "tfmg.multimeter.power_generated": "%s :pǝʇɐɹǝuǝ⅁ ɹǝʍoԀ ",
+ "tfmg.multimeter.power_percentage": " :ɥʇbuǝɹʇS pıɹ⅁ ",
+ "tfmg.multimeter.power_usage": " :ǝbɐs∩ ɹǝʍoԀ ",
+ "tfmg.multimeter.separator": "----------------------------",
+ "tfmg.multimeter.transformer_ratio": " :oıʇɐᴚ uɹn⟘ ",
+ "tfmg.multimeter.voltage_generated": "%s :pǝʇɐɹǝuǝ⅁ ǝbɐʇןoΛ ",
+ "tfmg.network": "%1$s :ʞɹoʍʇǝN",
+ "tfmg.oil_hammer.reserves": "%1$s :sǝʌɹǝsǝᴚ ןıO",
+ "tfmg.polarizer.header": "ɹǝzıɹɐןoԀ",
"tfmg.ponder.blast_furnace.header": "",
"tfmg.ponder.blast_furnace.text_1": "ʇndʇno ǝɔɐuɹnɟ ʇsɐןq ɐ sı ǝɔɐuɹnɟ ʇsɐןq ɐ ɟo ʇɹɐd uıɐW",
"tfmg.ponder.blast_furnace.text_2": "ʇı uı ɥɔʇɐɥ ǝɔɐuɹnɟ ʇsɐןq ǝuo ɥʇıʍ ʇı punoɹɐ sʞɔıɹq ɟooɹdǝɹıɟ ɟo ɹǝpuıןʎɔ ɐ ǝʞɐɯ 'ǝɔɐuɹnɟ ʇsɐןq ɐ pןınq o⟘",
@@ -1070,6 +1051,10 @@
"tfmg.ponder.electricity_two.text_5": "ʞɹoʍʇǝuqns ǝɥʇ oʇ sʇǝb ʇɐɥʇ ǝbɐʇןoʌ ɟo ǝbɐʇuǝɔɹǝd ǝɥʇ ʇǝs uɐɔ ǝuo sıɥʇ 'ɹǝʇǝɯoıʇuǝʇod ǝɥʇ sı ǝuo ʇxǝN",
"tfmg.ponder.electricity_two.text_6": "ǝuoʇspǝɹ ɥʇıʍ ʇnq ʎןɹɐןıɯıs sʞɹoʍ ɥɔʇıʍs ǝɥ⟘",
"tfmg.ponder.electricity_two.text_7": "ןıoɔ ʎɹɐpuoɔǝs puɐ ʎɹɐɯıɹd ǝɥʇ uǝǝʍʇǝq suɹnʇ ɟo oıʇɐɹ ǝɥʇ uo pǝsɐq ǝbɐʇןoʌ sǝbuɐɥɔ ɹǝɯɹoɟsuɐɹʇ ǝɥ⟘",
+ "tfmg.ponder.encased_fluid_pipe.header": "sǝdıԀ pınןℲ buısɐɔuƎ",
+ "tfmg.ponder.encased_fluid_pipe.text_1": "sǝdıԀ pınןℲ ǝʇɐɹoɔǝp oʇ pǝsn ǝq uɐɔ buısɐƆ ɹǝddoƆ",
+ "tfmg.ponder.encased_fluid_pipe.text_2": "ǝʇɐʇs ʎʇıʌıʇɔǝuuoɔ ɹıǝɥʇ oʇuı pǝʞɔoן ǝɹɐ sǝdıԀ pǝsɐɔuƎ 'pǝןɐǝɔuoɔ buıǝq ɯoɹɟ ǝpısⱯ",
+ "tfmg.ponder.encased_fluid_pipe.text_3": "pǝʌoɯǝɹ ɹo pǝppɐ buıǝq sʞɔoןq buıɹnoqɥbıǝu ʎuɐ oʇ ʇɔɐǝɹ ɹǝbuoן ou ןןıʍ ʇI",
"tfmg.ponder.engines.header": "sǝuıbuƎ",
"tfmg.ponder.engines.text_1": "ǝuıן ɐ uı sʞɔoןq ǝuıbuǝ ϛ oʇ dn buıɔɐןd ʎq ʇɹɐʇs 'ǝuıbuǝ uɐ pןınq o⟘",
"tfmg.ponder.engines.text_2": "ʎןqɯǝssɐ ǝɥʇ ɹoɟ pǝpǝǝu sɯǝʇı noʎ ʍoɥs ןןıʍ dıʇןooʇ s,ǝuıbuǝ ǝɥ⟘",
@@ -1080,6 +1065,33 @@
"tfmg.ponder.engines.text_7": "pǝpɐɹbdn ǝq oʇ sɯǝʇı uıɐʇɹǝɔ ɥʇıʍ pǝʞɔıןɔ ʇɥbıɹ ǝq uɐɔ ʞɔoןq ǝuıbuǝ ʎɹǝʌƎ",
"tfmg.ponder.engines.text_8": "sʞuɐʇ buıɹoqɥbıǝu ɯoɹɟ ןǝnɟ ǝɯnsuoɔ ǝuıbuǝ ǝɥʇ ǝʞɐɯ sǝdıd ןɐıɹʇsnpuı ǝןdɯɐxǝ ɹoℲ",
"tfmg.ponder.engines.text_9": "ןɐubıs ǝuoʇspǝɹ ɐ ɥʇıʍ pǝʇɹɐʇs ǝq uɐɔ ǝuıbuǝ ǝɥ⟘",
+ "tfmg.ponder.fluid_pipe_flow.header": "sǝdıԀ ɹǝddoƆ buısn spınןℲ buıʌoW",
+ "tfmg.ponder.fluid_pipe_flow.text_1": "sʇǝbɹɐʇ puɐ sǝɔɹnos pınןɟ ǝɹoɯ ɹo oʍʇ ʇɔǝuuoɔ uɐɔ sǝdıԀ pınןℲ",
+ "tfmg.ponder.fluid_pipe_flow.text_2": "ʍopuıʍ ɐ uǝʌıb ǝq uɐɔ ʇuǝɯbǝs ǝdıd ʇɥbıɐɹʇs ɐ 'ɥɔuǝɹʍ ɐ buıs∩",
+ "tfmg.ponder.fluid_pipe_flow.text_3": "sʇuǝɯbǝs ǝdıd ʇuǝɔɐظpɐ ɹǝɥʇo ʎuɐ oʇ ʇɔǝuuoɔ ʇou ןןıʍ sǝdıd pǝʍopuıM",
+ "tfmg.ponder.fluid_pipe_flow.text_4": "spınןℲ ʇɹodsuɐɹʇ uɐɔ sǝdıԀ ǝɥʇ 'sdɯnԀ ןɐɔıuɐɥɔǝW ʎq pǝɹǝʍoԀ",
+ "tfmg.ponder.fluid_pipe_flow.text_5": "ʇsɹıɟ ʇɐ pǝʇɔɐɹʇxǝ buıǝq sı pınןɟ oN",
+ "tfmg.ponder.fluid_pipe_flow.text_6": "sʇuǝʇuoɔ ɹıǝɥʇ ɹǝɟsuɐɹʇ ʎןןɐnpɐɹb sʇuıodpuǝ ǝɥʇ 'ɯǝɥʇ sʇɔǝuuoɔ ʍoןɟ ǝɥʇ ǝɔuO",
+ "tfmg.ponder.fluid_pipe_flow.text_7": "pınןɟ ʎuɐ uıɐʇuoɔ ,ʎןןɐɔısʎɥd, ɹǝʌǝu sǝʌןǝsɯǝɥʇ sʞɔoןq ǝdıԀ ǝɥʇ 'snɥ⟘",
+ "tfmg.ponder.fluid_pipe_interaction.header": "sɹǝuıɐʇuoɔ pınןɟ buıןןıℲ puɐ buıuıɐɹᗡ",
+ "tfmg.ponder.fluid_pipe_interaction.text_1": "sʞɔoןq ɟo ʎʇǝıɹɐʌ ɐ ɥʇıʍ ʇɔɐɹǝʇuı uɐɔ ʞɹoʍʇǝu ǝdıd ɐ ɟo sʇuıodpuƎ",
+ "tfmg.ponder.fluid_pipe_interaction.text_2": "pǝuıɐɹp ɹo pǝןןıɟ ǝq uɐɔ sǝıʇıןıqɐdɐɔ ǝbɐɹoʇs pınןɟ ɥʇıʍ ʞɔoןq ʎuⱯ",
+ "tfmg.ponder.fluid_pipe_interaction.text_3": "˙˙˙dn pǝʞɔıd ǝq uɐɔ puǝ uǝdo uɐ ɟo ʇuoɹɟ uı ʇɥbıɹ sʞɔoןq ǝɔɹnoS",
+ "tfmg.ponder.fluid_pipe_interaction.text_4": "sǝɔɹnos pınןɟ ǝʇɐǝɹɔ uɐɔ sǝɔɐds ʎʇdɯǝ oʇuı buıןןıds ǝןıɥʍ˙˙˙",
+ "tfmg.ponder.fluid_pipe_interaction.text_5": "ʎןʇɔǝɹıp sʞɔoןq ɹǝɥʇo ɟo ןnɟpuɐɥ ɐ ɯoɹɟ spınןɟ ʇɔɐɹʇxǝ osןɐ uɐɔ sǝdıԀ",
+ "tfmg.ponder.mechanical_pump_flow.header": "sdɯnԀ ןɐɔıuɐɥɔǝW buısn uoıʇɐʇɹodsuɐɹ⟘ pınןℲ",
+ "tfmg.ponder.mechanical_pump_flow.text_1": "sʞɹoʍʇǝu ǝdıd pǝɥɔɐʇʇɐ ɹıǝɥʇ ɟo ʍoןɟ ǝɥʇ uɹǝʌob sdɯnԀ ןɐɔıuɐɥɔǝW",
+ "tfmg.ponder.mechanical_pump_flow.text_2": "ʍoןɟ ɟo uoıʇɔǝɹıp ǝɥʇ sǝʇɐɔıpuı ʍoɹɹɐ ɹıǝɥ⟘",
+ "tfmg.ponder.mechanical_pump_flow.text_3": "˙˙˙spınןɟ buıןןnd ʍou sı puıɥǝq ʞɹoʍʇǝu ǝɥ⟘",
+ "tfmg.ponder.mechanical_pump_flow.text_4": "pɹɐʍʇno ʇı buıɹɹǝɟsuɐɹʇ sı ʇuoɹɟ uı ʞɹoʍʇǝu ǝɥʇ ǝןıɥʍ˙˙˙",
+ "tfmg.ponder.mechanical_pump_flow.text_5": "uoıʇɐʇoɹ ʇnduı ǝɥʇ ʎq pǝʇɔǝɟɟɐun sı uoıʇɔǝɹıp sdɯnd ǝɥ⟘",
+ "tfmg.ponder.mechanical_pump_flow.text_6": "uoıʇɔǝɹıp ǝɥʇ ǝsɹǝʌǝɹ oʇ pǝsn ǝq uɐɔ ɥɔuǝɹM ɐ 'pɐǝʇsuI",
+ "tfmg.ponder.mechanical_pump_speed.header": "sdɯnԀ ןɐɔıuɐɥɔǝW ɟo ʇndɥbnoɹɥ⟘",
+ "tfmg.ponder.mechanical_pump_speed.text_1": "ʎɐʍɐ sʞɔoןq 9Ɩ oʇ dn pǝʇɔǝuuoɔ sǝdıd ʇɔǝɟɟɐ sdɯnԀ ןɐɔıuɐɥɔǝW 'pǝǝds ɟo ssǝןpɹɐbǝᴚ",
+ "tfmg.ponder.mechanical_pump_speed.text_2": "˙˙˙uoıʇɐbɐdoɹd ʍoןɟ ɟo pǝǝds ǝɥʇ sǝbuɐɥɔ uoıʇɐʇoɹ ʇnduı ǝɥʇ dn buıpǝǝdS",
+ "tfmg.ponder.mechanical_pump_speed.text_3": "pǝɹɹǝɟsuɐɹʇ ǝɹɐ spınןɟ ɥɔıɥʍ ʇɐ pǝǝds ǝɥʇ puɐ˙˙˙",
+ "tfmg.ponder.mechanical_pump_speed.text_4": "sʞɹoʍʇǝu ǝdıd pǝɹɐɥs uıɥʇıʍ sʇndɥbnoɹɥʇ ɹıǝɥʇ ǝuıqɯoɔ uɐɔ sdɯnԀ",
+ "tfmg.ponder.mechanical_pump_speed.text_5": "uoıʇɔǝɹıp ǝɯɐs ǝɥʇ uı buıɔɐɟ ǝɹɐ ɯǝɥʇ ɟo ןןɐ ʇɐɥʇ ǝɹnsuƎ",
"tfmg.ponder.pumpjack.header": "ʞɔɐظdɯnԀ",
"tfmg.ponder.pumpjack.text_1": "ǝɔɐɟɹns ǝɥʇ oʇ ʇısodǝp ɐ ɯoɹɟ sǝdıd ןɐıɹʇsnpuı buıpןınq sı ןıo buıuıɯ ɟo dǝʇs ʇsɹıℲ",
"tfmg.ponder.pumpjack.text_2": "ǝdıd ǝɥʇ ɟo doʇ ǝɥʇ uo pǝɔɐןd ǝq oʇ sɐɥ ǝsɐq ʞɔɐظdɯnԀ",
@@ -1095,6 +1107,11 @@
"tfmg.ponder.shared.rpm32": "WԀᴚ ᄅƐ",
"tfmg.ponder.shared.rpm8": "WԀᴚ 8",
"tfmg.ponder.shared.storage_on_contraption": "ʎןןɐɔıʇɐɯoʇnɐ sdoɹp ɹıǝɥʇ dn ʞɔıd ןןıʍ uoıʇdɐɹʇuoƆ ǝɥʇ oʇ pǝɥɔɐʇʇɐ sǝıɹoʇuǝʌuI",
+ "tfmg.ponder.smart_pipe.header": "sǝdıԀ ʇɹɐɯS buısn ʍoןɟ pınןℲ buıןןoɹʇuoƆ",
+ "tfmg.ponder.smart_pipe.text_1": "ǝdʎʇ pınןɟ ʎq sʍoןɟ ןoɹʇuoɔ dןǝɥ uɐɔ sǝdıd ʇɹɐɯS",
+ "tfmg.ponder.smart_pipe.text_2": "ʇɔɐɹʇxǝ oʇ pınןɟ ɟo ǝdʎʇ ǝɥʇ ʎɟıɔǝds uɐɔ ʎǝɥʇ 'ǝɔɹnos ǝɥʇ ʇɐ ʎןʇɔǝɹıp pǝɔɐןd uǝɥM",
+ "tfmg.ponder.smart_pipe.text_3": "pınןɟ pǝɹısǝp ǝɥʇ buıuıɐʇuoɔ ɯǝʇı ʎuɐ ɥʇıʍ ʇoןs ɹǝʇןıɟ ɹıǝɥʇ ʞɔıןƆ-ʇɥbıᴚ ʎןdɯıS",
+ "tfmg.ponder.smart_pipe.text_4": "ǝnuıʇuoɔ spınןɟ buıɥɔʇɐɯ ʇǝן ʎןuo ןןıʍ sǝdıd ʇɹɐɯs 'ʞɹoʍʇǝu ǝdıd ɐ uʍop ɹǝɥʇɹnɟ pǝɔɐןd uǝɥM",
"tfmg.ponder.tag.chemical_vat": "ʇɐΛ ןɐɔıɯǝɥƆ",
"tfmg.ponder.tag.chemical_vat.description": "ʇı puɐdxǝ ʇɐɥʇ sǝuıɥɔɐɯ puɐ ʇɐʌ ןɐɔıɯǝɥƆ",
"tfmg.ponder.tag.electric_machinery": "ʎɹǝuıɥɔɐW ɔıɹʇɔǝןƎ",
@@ -1105,6 +1122,35 @@
"tfmg.ponder.tag.metallurgy.description": "ןɐʇǝɯ buıssǝɔoɹd oʇ pǝʇɐןǝɹ sʞɔoןᗺ",
"tfmg.ponder.tag.oil_processing": "ʎɹǝuıɥɔɐW buıssǝɔoɹԀ ןıO",
"tfmg.ponder.tag.oil_processing.description": "ןıo buıuıɯ puɐ buıuıɟǝɹ ɹoɟ pǝsn ʞɔoןᗺ",
+ "tfmg.ponder.valve_pipe.header": "sǝʌןɐΛ buısn ʍoןɟ pınןℲ buıןןoɹʇuoƆ",
+ "tfmg.ponder.valve_pipe.text_1": "sʞɹoʍʇǝu ǝdıd ɥbnoɹɥʇ buıʇɐbɐdoɹd spınןɟ ןoɹʇuoɔ dןǝɥ sǝdıd ǝʌןɐΛ",
+ "tfmg.ponder.valve_pipe.text_2": "ɥbnoɹɥʇ pǝʍoןןɐ ʎןʇuǝɹɹnɔ sı pınןɟ ɹǝɥʇǝɥʍ sןoɹʇuoɔ ʇnduı ʇɟɐɥs ɹıǝɥ⟘",
+ "tfmg.ponder.valve_pipe.text_3": "dn uǝdo ןןıʍ ǝʌןɐʌ ǝɥʇ 'uoıʇɔǝɹıp buıuǝdo ǝɥʇ uı ǝɔɹoℲ ןɐuoıʇɐʇoᴚ uǝʌı⅁",
+ "tfmg.ponder.valve_pipe.text_4": "uoıʇɐʇoɹ ʇnduı ǝɥʇ buısɹǝʌǝɹ ʎq uıɐbɐ pǝsoןɔ ǝq uɐɔ ʇI",
+ "tfmg.pumpjack.header": ":oɟuI ʞɔɐظdɯnԀ",
+ "tfmg.pumpjack_deposit_amount": "sʇǝʞɔnᗺ %1$s",
+ "tfmg.recipe.advanced_distillation": "uoıʇɐןןıʇsıᗡ pǝɔuɐʌpⱯ",
+ "tfmg.recipe.assembly.winding": "ןoodS ɐ puıM",
+ "tfmg.recipe.casting": "buıʇsɐƆ",
+ "tfmg.recipe.chemical_vat": "ʇɐΛ ןɐɔıɯǝɥƆ",
+ "tfmg.recipe.coking": "buıʞoƆ",
+ "tfmg.recipe.distillation": "uoıʇɐןןıʇsıᗡ",
+ "tfmg.recipe.hot_blast": "buıʇsɐןᗺ ɹıⱯ",
+ "tfmg.recipe.industrial_blasting": "buıʇsɐןᗺ ןɐıɹʇsnpuI",
+ "tfmg.recipe.polarizing": "buızıɹɐןoԀ",
+ "tfmg.recipe.winding": "buıpuıM",
+ "tfmg.resistor.allowed_voltage": "pǝʍoןןⱯ ǝbɐʇןoΛ ɟo ǝbɐʇuǝɔɹǝԀ",
"tfmg.subtitle.diesel_engine_sounds": "spunoS ǝuıbuƎ ןǝsǝıᗡ",
- "tfmg.subtitle.engine_sounds": "spunoS ǝuıbuƎ"
+ "tfmg.subtitle.engine_sounds": "spunoS ǝuıbuƎ",
+ "tfmg.surface_scanner.header": "ɹǝuuɐɔS ǝɔɐɟɹnS",
+ "tfmg.tooltip.coils": "%1$s :suɹn⟘",
+ "tfmg.tooltip.cylinder": ":sןǝnℲ pǝʇɹoddnS",
+ "tfmg.tooltip.fluid_item": "%1$s :ʇunoɯⱯ pınןℲ",
+ "tfmg.tooltip.fuse": "%1$s :buıʇɐᴚ",
+ "tfmg.tooltip.resistor": "%1$s :ǝɔuɐʇsısǝᴚ",
+ "tfmg.vat.header": "ʇɐΛ ןɐɔıɯǝɥƆ",
+ "tfmg.voltage": "%1$s :ǝbɐʇןoΛ",
+ "tfmg.winding_machine.header": "ǝuıɥɔɐW buıpuıM",
+ "tfmg.winding_machine.turn_percentage": ")000Ɩ ɯoɹℲ( ǝbɐʇuǝɔɹǝԀ uɹn⟘ pǝʍoןןⱯ",
+ "tfmg.wires.removed_data": "pǝʌoɯǝᴚ ɐʇɐᗡ"
}
\ No newline at end of file
diff --git a/src/generated/resources/assets/tfmg/lang/en_us.json b/src/generated/resources/assets/tfmg/lang/en_us.json
index 72da25ad..fbb1deb4 100644
--- a/src/generated/resources/assets/tfmg/lang/en_us.json
+++ b/src/generated/resources/assets/tfmg/lang/en_us.json
@@ -122,11 +122,6 @@
"block.tfmg.converter.tooltip.summary": "Converts FE to TFMG energy and vice versa",
"block.tfmg.cooling_fluid": "Cooling Fluid",
"block.tfmg.copper_cable_hub": "Copper Cable Hub",
- "block.tfmg.copper_encased_aluminum_pipe": "Copper Encased Aluminum Pipe",
- "block.tfmg.copper_encased_brass_pipe": "Copper Encased Brass Pipe",
- "block.tfmg.copper_encased_cast_iron_pipe": "Copper Encased Cast Iron Pipe",
- "block.tfmg.copper_encased_plastic_pipe": "Copper Encased Plastic Pipe",
- "block.tfmg.copper_encased_steel_pipe": "Copper Encased Steel Pipe",
"block.tfmg.copper_frame": "Copper Frame",
"block.tfmg.copper_truss": "Copper Truss",
"block.tfmg.copycat_cable_base": "Copycat Cable Base",
@@ -174,8 +169,13 @@
"block.tfmg.electrical_switch": "Electric Switch",
"block.tfmg.electrical_switch.tooltip.summary": "Lets power through when powered with redstone",
"block.tfmg.electrode_holder": "Electrode Holder",
+ "block.tfmg.encased_aluminum_pipe": "Encased Aluminum Pipe",
+ "block.tfmg.encased_brass_pipe": "Encased Brass Pipe",
+ "block.tfmg.encased_cast_iron_pipe": "Encased Cast Iron Pipe",
"block.tfmg.encased_diode": "Encased Diode",
+ "block.tfmg.encased_plastic_pipe": "Encased Plastic Pipe",
"block.tfmg.encased_potentiometer": "Encased Potentiometer",
+ "block.tfmg.encased_steel_pipe": "Encased Steel Pipe",
"block.tfmg.engine_controller": "Engine Controller",
"block.tfmg.engine_controller.tooltip.behaviour1": "R-Click the controller with a transmission item and then do the same with the engine.",
"block.tfmg.engine_controller.tooltip.behaviour2": "Look in the Keybinds part of the minecraft settings specifically in the Create: The Factory Must Grow section",
@@ -508,167 +508,6 @@
"block.tfmg.yellow_rebar_concrete_wall": "Yellow Rebar Concrete Wall",
"block.tfmg.zinc_frame": "Zinc Frame",
"block.tfmg.zinc_truss": "Zinc Truss",
- "create.creative_generator.voltage_generation": "Voltage Generation",
- "create.distillation_output.mode.keep_fluid": "Stop Distillation Process",
- "create.distillation_output.mode.void_when_full": "Void Excess Fluid",
- "create.distillation_output.when_tank_is_full": "When Internal Tank is Full",
- "create.electricity.capacity": "Capacity: %s",
- "create.electricity.charging_rate": "Charging Rate: %s",
- "create.electricity.max_capacity": "Max Capacity: %s",
- "create.engine.controller.header": "Engine Controller",
- "create.engine.efficiency": "Efficiency: %s",
- "create.engine.fuel_consumption": "Fuel Consumption: %s",
- "create.engine.injection_rate": "Injection Rate: %s",
- "create.engine.length": "Length: %s",
- "create.engine.rpm": "RPM: %s",
- "create.engine.shift": "Shift: %s",
- "create.engine.signal": "Signal: %s",
- "create.engine.speed_efficiency": "Speed Efficiency: %s",
- "create.engine.torque": "Torque: %s",
- "create.engine.type.boxer": "Boxer",
- "create.engine.type.engine_i": "I",
- "create.engine.type.engine_u": "U",
- "create.engine.type.engine_v": "V",
- "create.engine.type.engine_w": "W",
- "create.engine.type.radial": "Radial",
- "create.engine.type.turbine": "Turbine",
- "create.engine.upgrade.transmission.neutral": "Neutral",
- "create.engine.upgrade.transmission.reverse": "Reverse",
- "create.engine.upgrade.transmission.shift_1": "1st Gear",
- "create.engine.upgrade.transmission.shift_2": "2nd Gear",
- "create.engine.upgrade.transmission.shift_3": "3rd Gear",
- "create.engine.upgrade.transmission.shift_4": "4th Gear",
- "create.engine.upgrade.transmission.shift_5": "5th Gear",
- "create.engine.upgrade.transmission.shift_6": "6th Gear",
- "create.fe": "FE: %1$s",
- "create.flamethrower.fuel.amount": "%s Projectile Amount",
- "create.flamethrower.fuel.capacity": "Fuel Capacity: %s",
- "create.flamethrower.fuel.cold": "Cold Flame",
- "create.flamethrower.fuel.hellfire": "Scorching Flame",
- "create.flamethrower.fuel.speed": "%s Projectile Speed",
- "create.flamethrower.fuel.spread": "%s Projectile Spread",
- "create.goggles.ammeter": "Ammeter:",
- "create.goggles.ammeter.amps": " Measured Amps: %1$s V",
- "create.goggles.blast_furnace.fuel_amount": " Fuel : %1$s",
- "create.goggles.blast_furnace.height": " Height: %1$s",
- "create.goggles.blast_furnace.modifier": "Production Time: %1$s",
- "create.goggles.blast_furnace.reinforced": "Reinforced",
- "create.goggles.blast_furnace.stats": "Blast Furnace:",
- "create.goggles.blast_furnace.timer": "Time Left: %1$s",
- "create.goggles.blast_stove.header": "Blast Stove: ",
- "create.goggles.blast_stove.tank1": "Input Tank: ",
- "create.goggles.blast_stove.tank2": "Fuel Tank: ",
- "create.goggles.blast_stove.tank3": "Output Tank 1: ",
- "create.goggles.blast_stove.tank4": "Output Tank 2: ",
- "create.goggles.coke_oven.header": "Coke Oven:",
- "create.goggles.coke_oven.progress": "Progress: %1$s",
- "create.goggles.distillation_tower.found_outputs": "Output Count: %1$s",
- "create.goggles.distillation_tower.level": "Heat Level: %1$s",
- "create.goggles.distillation_tower.no_outputs": "No Output Blocks Found",
- "create.goggles.distillation_tower.status": "Distillation Tower Info:",
- "create.goggles.distillation_tower.tank_not_found": "Steel Fluid Tank Not Found",
- "create.goggles.electric_machine.no_power": "No Power",
- "create.goggles.electricity.insufficient_voltage": "Insufficient Voltage",
- "create.goggles.electrode_holder.min_amps": "Not Enough Current (Needs ",
- "create.goggles.engine.cooling_fluid": "Cooling Fluid: %s",
- "create.goggles.engine.fuel_consumption": "Fuel Consumption: %s mB/s",
- "create.goggles.engine.header": "Engine Info",
- "create.goggles.engine.next_component": " Next Component: ",
- "create.goggles.engine.oil": "Oil: %s",
- "create.goggles.engine.pistons_missing": "Pistons Missing",
- "create.goggles.engine.rpm": "Speed: %s RPM",
- "create.goggles.engine.signal": "Signal: %s",
- "create.goggles.engine.torque": "Torque: %s",
- "create.goggles.engine.turbines_missing": "Turbines Missing",
- "create.goggles.engine.type": "Type: %s",
- "create.goggles.engine.unfinished": "Engine Unfinished",
- "create.goggles.fluid_storage": "Fluid Storage:",
- "create.goggles.gauge.value": " Measured Voltage:",
- "create.goggles.generator.production": "Energy Production: %1$s fe/t",
- "create.goggles.item_storage": "Item Storage:",
- "create.goggles.item_storage_empty": "*Empty*",
- "create.goggles.machine_input.info": "Machine Input Info",
- "create.goggles.machine_input.no_rot": "No Rotation Provided!",
- "create.goggles.machine_input.power_level": "Power Level: ",
- "create.goggles.motor.usage": "Energy Usage: %1$s fe/t",
- "create.goggles.polarizer.charge": "Charge: ",
- "create.goggles.polarizer.header": "Polarizer",
- "create.goggles.polarizer.insufficient_power": "Not Enough Power (Needs 2000W)",
- "create.goggles.pumpjack.deposit_info": "Deposit Info:",
- "create.goggles.pumpjack.fluid_amount": "Fluid Amount:",
- "create.goggles.pumpjack.part_missing": "Hammer or Crank Missing",
- "create.goggles.pumpjack.reserves": "Deposit Reserves: ",
- "create.goggles.pumpjack.wrong_rotation1": "The Pumpjack Base is oriented incorrectly, the red marker must",
- "create.goggles.pumpjack.wrong_rotation2": "face away from the Pumpjack Hammer Holder",
- "create.goggles.pumpjack_fluid_storage": "Fluid Tank Info:",
- "create.goggles.pumpjack_info": "Pumpjack Info:",
- "create.goggles.surface_scanner.deposits_found": " Chunks With Oil Deposits Found",
- "create.goggles.surface_scanner.header": "Surface Scanner",
- "create.goggles.surface_scanner.no_deposit": "No Deposits Found",
- "create.goggles.surface_scanner.no_rotation": "Not Enough Rotation (Needs 64rpm)",
- "create.goggles.vat.attachments": "Attachments:",
- "create.goggles.vat.contents": "Vat Contents:",
- "create.goggles.vat.header": "Chemical Vat",
- "create.goggles.vat.heat_status": "Heat Status: ",
- "create.goggles.vat.heated": "Heated",
- "create.goggles.vat.no_heat": "No Heat",
- "create.goggles.vat.not_operational": "Not Operational",
- "create.goggles.vat.superheated": "Superheated",
- "create.goggles.vat.tfmg.centrifuge": " Centrifuge",
- "create.goggles.vat.tfmg.electrode": " Electrode",
- "create.goggles.vat.tfmg.graphite_electrode": " Graphite Electrode",
- "create.goggles.vat.tfmg.mixing": " Mixer",
- "create.goggles.voltmeter": "Voltmeter:",
- "create.goggles.voltmeter.mode.capacity": "Capacity",
- "create.goggles.voltmeter.mode.current": "Current",
- "create.goggles.voltmeter.mode.fallback": "Fallback",
- "create.goggles.voltmeter.mode.high_voltage": "Voltage (High)",
- "create.goggles.voltmeter.mode.net_power_gen": "Network Power Generation",
- "create.goggles.voltmeter.mode.net_power_use": "Network Power Usage",
- "create.goggles.voltmeter.mode.power": "Power",
- "create.goggles.voltmeter.mode.resistance": "Resistance",
- "create.goggles.voltmeter.mode.voltage": "Voltage",
- "create.goggles.voltmeter.range": " Range: %1$s",
- "create.goggles.winding_machine.header": "Winding Machine",
- "create.goggles.winding_machine.progress": "Progress: ",
- "create.goggles.winding_machine.turns": "Turns Left: ",
- "create.goggles.zero": "Machine Invalid",
- "create.multimeter.additional_values": "Additional Values:",
- "create.multimeter.energy_stored": " Energy Stored: ",
- "create.multimeter.energy_usage": " Energy Usage: ",
- "create.multimeter.group": " Group: %s",
- "create.multimeter.header": "Multimeter Data:",
- "create.multimeter.insufficient_power": "NOT ENOUGHT POWER",
- "create.multimeter.network.consumption": "Network Power Consumption: %s",
- "create.multimeter.network.generation": "Network Power Generation: %s",
- "create.multimeter.power_generated": " Power Generated: %s",
- "create.multimeter.power_percentage": " Grid Strength: ",
- "create.multimeter.power_usage": " Power Usage: ",
- "create.multimeter.separator": "----------------------------",
- "create.multimeter.transformer_ratio": " Turn Ratio: ",
- "create.multimeter.voltage_generated": " Voltage Generated: %s",
- "create.network": "Network: %1$s",
- "create.oil_hammer.reserves": "Oil Reserves: %1$s",
- "create.pumpjack_deposit_amount": "%1$s Buckets",
- "create.recipe.advanced_distillation": "Advanced Distillation",
- "create.recipe.assembly.winding": "Wind a Spool",
- "create.recipe.casting": "Casting",
- "create.recipe.chemical_vat": "Chemical Vat",
- "create.recipe.coking": "Coking",
- "create.recipe.distillation": "Distillation",
- "create.recipe.hot_blast": "Air Blasting",
- "create.recipe.industrial_blasting": "Industrial Blasting",
- "create.recipe.polarizing": "Polarizing",
- "create.recipe.winding": "Winding",
- "create.resistor.allowed_voltage": "Percentage of Voltage Allowed",
- "create.tooltip.coils": "Turns: %1$s",
- "create.tooltip.cylinder": "Supported Fuels:",
- "create.tooltip.fluid_item": "Fluid Amount: %1$s",
- "create.tooltip.fuse": "Rating: %1$s",
- "create.tooltip.resistor": "Resistance: %1$s",
- "create.voltage": "Voltage: %1$s",
- "create.winding_machine.turn_percentage": "Allowed Turn Percentage (From 1000)",
- "create.wires.removed_data": "Data Removed",
"creative_tab.tfmg_decoration": "Create: TFMG Building Blocks",
"creative_tab.tfmg_main": "Create: The Factory Must Grow",
"death.attack.tfmg.acid": "%1$s took an acid bath",
@@ -1008,6 +847,9 @@
"item.tfmg.yellow_multimeter.tooltip.summary": "Shows data about an electrical block and its network",
"item.tfmg.zinc_electrode": "Zinc Electrode",
"item.tfmg.zinc_grenade": "Zinc Grenade",
+ "tfmg.blast_stove.header": "Blast Stove: ",
+ "tfmg.coke_oven.header": "Coke Oven:",
+ "tfmg.creative_generator.voltage_generation": "Voltage Generation",
"tfmg.display_source.electricity.current": "Current",
"tfmg.display_source.electricity.network_consumption": "Network Power Consumption",
"tfmg.display_source.electricity.network_generation": "Network Power Generation",
@@ -1018,10 +860,149 @@
"tfmg.display_source.electricity.resistance": "Resistance",
"tfmg.display_source.electricity.voltage": "Voltage",
"tfmg.display_source.electricity.voltage_generation": "Voltage Generation",
+ "tfmg.distillation_output.mode.keep_fluid": "Stop Distillation Process",
+ "tfmg.distillation_output.mode.void_when_full": "Void Excess Fluid",
+ "tfmg.distillation_output.when_tank_is_full": "When Internal Tank is Full",
+ "tfmg.distillation_tower.header": "Distillation Tower Info:",
+ "tfmg.electricity.capacity": "Capacity: %s",
+ "tfmg.electricity.charging_rate": "Charging Rate: %s",
+ "tfmg.electricity.max_capacity": "Max Capacity: %s",
+ "tfmg.engine.efficiency": "Efficiency: %s",
+ "tfmg.engine.fuel_consumption": "Fuel Consumption: %s",
+ "tfmg.engine.header": "Engine Info",
+ "tfmg.engine.injection_rate": "Injection Rate: %s",
+ "tfmg.engine.length": "Length: %s",
+ "tfmg.engine.rpm": "RPM: %s",
+ "tfmg.engine.shift": "Shift: %s",
+ "tfmg.engine.signal": "Signal: %s",
+ "tfmg.engine.speed_efficiency": "Speed Efficiency: %s",
+ "tfmg.engine.torque": "Torque: %s",
+ "tfmg.engine.type.boxer": "Boxer",
+ "tfmg.engine.type.engine_i": "I",
+ "tfmg.engine.type.engine_u": "U",
+ "tfmg.engine.type.engine_v": "V",
+ "tfmg.engine.type.engine_w": "W",
+ "tfmg.engine.type.radial": "Radial",
+ "tfmg.engine.type.turbine": "Turbine",
+ "tfmg.engine.upgrade.transmission.neutral": "Neutral",
+ "tfmg.engine.upgrade.transmission.reverse": "Reverse",
+ "tfmg.engine.upgrade.transmission.shift_1": "1st Gear",
+ "tfmg.engine.upgrade.transmission.shift_2": "2nd Gear",
+ "tfmg.engine.upgrade.transmission.shift_3": "3rd Gear",
+ "tfmg.engine.upgrade.transmission.shift_4": "4th Gear",
+ "tfmg.engine.upgrade.transmission.shift_5": "5th Gear",
+ "tfmg.engine.upgrade.transmission.shift_6": "6th Gear",
+ "tfmg.engine_controller.header": "Engine Controller",
+ "tfmg.fe": "FE: %1$s",
+ "tfmg.flamethrower.fuel.amount": "%s Projectile Amount",
+ "tfmg.flamethrower.fuel.capacity": "Fuel Capacity: %s",
+ "tfmg.flamethrower.fuel.cold": "Cold Flame",
+ "tfmg.flamethrower.fuel.hellfire": "Scorching Flame",
+ "tfmg.flamethrower.fuel.speed": "%s Projectile Speed",
+ "tfmg.flamethrower.fuel.spread": "%s Projectile Spread",
+ "tfmg.goggles.ammeter": "Ammeter:",
+ "tfmg.goggles.ammeter.amps": " Measured Amps: %1$s V",
+ "tfmg.goggles.blast_furnace.fuel_amount": " Fuel : %1$s",
+ "tfmg.goggles.blast_furnace.height": " Height: %1$s",
+ "tfmg.goggles.blast_furnace.modifier": "Production Time: %1$s",
+ "tfmg.goggles.blast_furnace.reinforced": "Reinforced",
+ "tfmg.goggles.blast_furnace.stats": "Blast Furnace: %s",
+ "tfmg.goggles.blast_furnace.timer": "Time Left: %1$s",
+ "tfmg.goggles.blast_stove.tank1": "Input Tank: ",
+ "tfmg.goggles.blast_stove.tank2": "Fuel Tank: ",
+ "tfmg.goggles.blast_stove.tank3": "Output Tank 1: ",
+ "tfmg.goggles.blast_stove.tank4": "Output Tank 2: ",
+ "tfmg.goggles.coke_oven.progress": "Progress: %1$s",
+ "tfmg.goggles.distillation_tower.found_outputs": "Output Count: %1$s",
+ "tfmg.goggles.distillation_tower.level": "Heat Level: %1$s",
+ "tfmg.goggles.distillation_tower.no_outputs": "No Output Blocks Found",
+ "tfmg.goggles.distillation_tower.tank_not_found": "Steel Fluid Tank Not Found",
+ "tfmg.goggles.electric_machine.no_power": "No Power",
+ "tfmg.goggles.electricity.insufficient_voltage": "Insufficient Voltage",
+ "tfmg.goggles.electrode_holder.min_amps": "Not Enough Current (Needs ",
+ "tfmg.goggles.engine.cooling_fluid": "Cooling Fluid: %s",
+ "tfmg.goggles.engine.fuel_consumption": "Fuel Consumption: %s mB/s",
+ "tfmg.goggles.engine.next_component": " Next Component: %s",
+ "tfmg.goggles.engine.oil": "Oil: %s",
+ "tfmg.goggles.engine.pistons_missing": "Pistons Missing",
+ "tfmg.goggles.engine.rpm": "Speed: %s RPM",
+ "tfmg.goggles.engine.signal": "Signal: %s",
+ "tfmg.goggles.engine.torque": "Torque: %s",
+ "tfmg.goggles.engine.turbines_missing": "Turbines Missing",
+ "tfmg.goggles.engine.type": "Type: %s",
+ "tfmg.goggles.engine.unfinished": "Engine Unfinished",
+ "tfmg.goggles.fluid_storage": "Fluid Storage:",
+ "tfmg.goggles.gauge.value": " Measured Voltage:",
+ "tfmg.goggles.generator.production": "Energy Production: %1$s fe/t",
+ "tfmg.goggles.heat_status": "Heat Status: ",
+ "tfmg.goggles.heated": "Heated",
+ "tfmg.goggles.invalid_machine": "Machine Invalid",
+ "tfmg.goggles.item_storage": "Item Storage:",
+ "tfmg.goggles.item_storage_empty": "*Empty*",
+ "tfmg.goggles.machine_input.info": "Machine Input Info",
+ "tfmg.goggles.machine_input.no_rot": "No Rotation Provided!",
+ "tfmg.goggles.machine_input.power_level": "Power Level: ",
+ "tfmg.goggles.motor.usage": "Energy Usage: %1$s fe/t",
+ "tfmg.goggles.no_heat": "No Heat",
+ "tfmg.goggles.polarizer.charge": "Charge: ",
+ "tfmg.goggles.polarizer.insufficient_power": "Not Enough Power (Needs 2000W)",
+ "tfmg.goggles.progress": "Progress: %1$s",
+ "tfmg.goggles.pumpjack.deposit_info": "Deposit Info:",
+ "tfmg.goggles.pumpjack.fluid_amount": "Fluid Amount:",
+ "tfmg.goggles.pumpjack.part_missing": "Hammer or Crank Missing",
+ "tfmg.goggles.pumpjack.reserves": "Deposit Reserves: ",
+ "tfmg.goggles.pumpjack.wrong_rotation1": "The Pumpjack Base is oriented incorrectly, the red marker must",
+ "tfmg.goggles.pumpjack.wrong_rotation2": "face away from the Pumpjack Hammer Holder",
+ "tfmg.goggles.pumpjack_fluid_storage": "Fluid Tank Info:",
+ "tfmg.goggles.superheated": "Superheated",
+ "tfmg.goggles.surface_scanner.deposits_found": "%s Chunks With Oil Deposits Found",
+ "tfmg.goggles.surface_scanner.no_deposit": "No Deposits Found",
+ "tfmg.goggles.surface_scanner.no_rotation": "Not Enough Rotation (Needs 64rpm)",
+ "tfmg.goggles.vat.attachments": "Attachments:",
+ "tfmg.goggles.vat.contents": "Vat Contents:",
+ "tfmg.goggles.vat.not_operational": "Not Operational",
+ "tfmg.goggles.vat.tfmg.centrifuge": " Centrifuge",
+ "tfmg.goggles.vat.tfmg.electrode": " Electrode",
+ "tfmg.goggles.vat.tfmg.graphite_electrode": " Graphite Electrode",
+ "tfmg.goggles.vat.tfmg.mixing": " Mixer",
+ "tfmg.goggles.voltmeter": "Voltmeter:",
+ "tfmg.goggles.voltmeter.mode.capacity": "Capacity",
+ "tfmg.goggles.voltmeter.mode.current": "Current",
+ "tfmg.goggles.voltmeter.mode.fallback": "Fallback",
+ "tfmg.goggles.voltmeter.mode.high_voltage": "Voltage (High)",
+ "tfmg.goggles.voltmeter.mode.net_power_gen": "Network Power Generation",
+ "tfmg.goggles.voltmeter.mode.net_power_use": "Network Power Usage",
+ "tfmg.goggles.voltmeter.mode.power": "Power",
+ "tfmg.goggles.voltmeter.mode.resistance": "Resistance",
+ "tfmg.goggles.voltmeter.mode.voltage": "Voltage",
+ "tfmg.goggles.voltmeter.range": " Range: %1$s",
+ "tfmg.goggles.winding_machine.progress": "Progress: ",
+ "tfmg.goggles.winding_machine.turns": "Turns Left: %s",
+ "tfmg.goggles.zero": "Machine Invalid",
"tfmg.keyinfo.custom_button": "Engine Controller Custom Button",
"tfmg.keyinfo.engine_start": "Start Engine",
"tfmg.keyinfo.transmission_shift_down": "Transmission Shift Down",
"tfmg.keyinfo.transmission_shift_up": "Transmission Shift Up",
+ "tfmg.multimeter.additional_values": "Additional Values:",
+ "tfmg.multimeter.charge": "Charge: %s",
+ "tfmg.multimeter.energy_stored": " Energy Stored: ",
+ "tfmg.multimeter.energy_usage": " Energy Usage: ",
+ "tfmg.multimeter.group": " Group: %s",
+ "tfmg.multimeter.header": "Multimeter Data:",
+ "tfmg.multimeter.insufficient_current": "Not Enough Current (Needs %s)",
+ "tfmg.multimeter.insufficient_power": "Not Enough Power",
+ "tfmg.multimeter.insufficient_power.requirement": "Not Enough Power (Needs %s)",
+ "tfmg.multimeter.network.consumption": "Network Power Consumption: %s",
+ "tfmg.multimeter.network.generation": "Network Power Generation: %s",
+ "tfmg.multimeter.power_generated": " Power Generated: %s",
+ "tfmg.multimeter.power_percentage": " Grid Strength: ",
+ "tfmg.multimeter.power_usage": " Power Usage: ",
+ "tfmg.multimeter.separator": "----------------------------",
+ "tfmg.multimeter.transformer_ratio": " Turn Ratio: ",
+ "tfmg.multimeter.voltage_generated": " Voltage Generated: %s",
+ "tfmg.network": "Network: %1$s",
+ "tfmg.oil_hammer.reserves": "Oil Reserves: %1$s",
+ "tfmg.polarizer.header": "Polarizer",
"tfmg.ponder.blast_furnace.header": "",
"tfmg.ponder.blast_furnace.text_1": "Main part of a blast furnace is a blast furnace output",
"tfmg.ponder.blast_furnace.text_2": "To build a blast furnace, make a cylinder of fireproof bricks around it with one blast furnace hatch in it",
@@ -1070,6 +1051,10 @@
"tfmg.ponder.electricity_two.text_5": "Next one is the potentiometer, this one can set the percentage of voltage that gets to the subnetwork",
"tfmg.ponder.electricity_two.text_6": "The switch works similarly but with redstone",
"tfmg.ponder.electricity_two.text_7": "The transformer changes voltage based on the ratio of turns between the primary and secondary coil",
+ "tfmg.ponder.encased_fluid_pipe.header": "Encasing Fluid Pipes",
+ "tfmg.ponder.encased_fluid_pipe.text_1": "Copper Casing can be used to decorate Fluid Pipes",
+ "tfmg.ponder.encased_fluid_pipe.text_2": "Aside from being concealed, Encased Pipes are locked into their connectivity state",
+ "tfmg.ponder.encased_fluid_pipe.text_3": "It will no longer react to any neighbouring blocks being added or removed",
"tfmg.ponder.engines.header": "Engines",
"tfmg.ponder.engines.text_1": "To build an engine, start by placing up to 5 engine blocks in a line",
"tfmg.ponder.engines.text_2": "The engine's tooltip will show you items needed for the assembly",
@@ -1080,6 +1065,33 @@
"tfmg.ponder.engines.text_7": "Every engine block can be right clicked with certain items to be upgraded",
"tfmg.ponder.engines.text_8": "For example industrial pipes make the engine consume fuel from neighboring tanks",
"tfmg.ponder.engines.text_9": "The engine can be started with a redstone signal",
+ "tfmg.ponder.fluid_pipe_flow.header": "Moving Fluids using Copper Pipes",
+ "tfmg.ponder.fluid_pipe_flow.text_1": "Fluid Pipes can connect two or more fluid sources and targets",
+ "tfmg.ponder.fluid_pipe_flow.text_2": "Using a wrench, a straight pipe segment can be given a window",
+ "tfmg.ponder.fluid_pipe_flow.text_3": "Windowed pipes will not connect to any other adjacent pipe segments",
+ "tfmg.ponder.fluid_pipe_flow.text_4": "Powered by Mechanical Pumps, the Pipes can transport Fluids",
+ "tfmg.ponder.fluid_pipe_flow.text_5": "No fluid is being extracted at first",
+ "tfmg.ponder.fluid_pipe_flow.text_6": "Once the flow connects them, the endpoints gradually transfer their contents",
+ "tfmg.ponder.fluid_pipe_flow.text_7": "Thus, the Pipe blocks themselves never 'physically' contain any fluid",
+ "tfmg.ponder.fluid_pipe_interaction.header": "Draining and Filling fluid containers",
+ "tfmg.ponder.fluid_pipe_interaction.text_1": "Endpoints of a pipe network can interact with a variety of blocks",
+ "tfmg.ponder.fluid_pipe_interaction.text_2": "Any block with fluid storage capabilities can be filled or drained",
+ "tfmg.ponder.fluid_pipe_interaction.text_3": "Source blocks right in front of an open end can be picked up...",
+ "tfmg.ponder.fluid_pipe_interaction.text_4": "...while spilling into empty spaces can create fluid sources",
+ "tfmg.ponder.fluid_pipe_interaction.text_5": "Pipes can also extract fluids from a handful of other blocks directly",
+ "tfmg.ponder.mechanical_pump_flow.header": "Fluid Transportation using Mechanical Pumps",
+ "tfmg.ponder.mechanical_pump_flow.text_1": "Mechanical Pumps govern the flow of their attached pipe networks",
+ "tfmg.ponder.mechanical_pump_flow.text_2": "Their arrow indicates the direction of flow",
+ "tfmg.ponder.mechanical_pump_flow.text_3": "The network behind is now pulling fluids...",
+ "tfmg.ponder.mechanical_pump_flow.text_4": "...while the network in front is transferring it outward",
+ "tfmg.ponder.mechanical_pump_flow.text_5": "The pumps direction is unaffected by the input rotation",
+ "tfmg.ponder.mechanical_pump_flow.text_6": "Instead, a Wrench can be used to reverse the direction",
+ "tfmg.ponder.mechanical_pump_speed.header": "Throughput of Mechanical Pumps",
+ "tfmg.ponder.mechanical_pump_speed.text_1": "Regardless of speed, Mechanical Pumps affect pipes connected up to 16 blocks away",
+ "tfmg.ponder.mechanical_pump_speed.text_2": "Speeding up the input rotation changes the speed of flow propagation...",
+ "tfmg.ponder.mechanical_pump_speed.text_3": "...and the speed at which fluids are transferred",
+ "tfmg.ponder.mechanical_pump_speed.text_4": "Pumps can combine their throughputs within shared pipe networks",
+ "tfmg.ponder.mechanical_pump_speed.text_5": "Ensure that all of them are facing in the same direction",
"tfmg.ponder.pumpjack.header": "Pumpjack",
"tfmg.ponder.pumpjack.text_1": "First step of mining oil is building industrial pipes from a deposit to the surface",
"tfmg.ponder.pumpjack.text_2": "Pumpjack base has to be placed on the top of the pipe",
@@ -1095,6 +1107,11 @@
"tfmg.ponder.shared.rpm32": "32 RPM",
"tfmg.ponder.shared.rpm8": "8 RPM",
"tfmg.ponder.shared.storage_on_contraption": "Inventories attached to the Contraption will pick up their drops automatically",
+ "tfmg.ponder.smart_pipe.header": "Controlling Fluid flow using Smart Pipes",
+ "tfmg.ponder.smart_pipe.text_1": "Smart pipes can help control flows by fluid type",
+ "tfmg.ponder.smart_pipe.text_2": "When placed directly at the source, they can specify the type of fluid to extract",
+ "tfmg.ponder.smart_pipe.text_3": "Simply Right-Click their filter slot with any item containing the desired fluid",
+ "tfmg.ponder.smart_pipe.text_4": "When placed further down a pipe network, smart pipes will only let matching fluids continue",
"tfmg.ponder.tag.chemical_vat": "Chemical Vat",
"tfmg.ponder.tag.chemical_vat.description": "Chemical vat and machines that expand it",
"tfmg.ponder.tag.electric_machinery": "Electric Machinery",
@@ -1105,6 +1122,35 @@
"tfmg.ponder.tag.metallurgy.description": "Blocks related to processing metal",
"tfmg.ponder.tag.oil_processing": "Oil Processing Machinery",
"tfmg.ponder.tag.oil_processing.description": "Block used for refining and mining oil",
+ "tfmg.ponder.valve_pipe.header": "Controlling Fluid flow using Valves",
+ "tfmg.ponder.valve_pipe.text_1": "Valve pipes help control fluids propagating through pipe networks",
+ "tfmg.ponder.valve_pipe.text_2": "Their shaft input controls whether fluid is currently allowed through",
+ "tfmg.ponder.valve_pipe.text_3": "Given Rotational Force in the opening direction, the valve will open up",
+ "tfmg.ponder.valve_pipe.text_4": "It can be closed again by reversing the input rotation",
+ "tfmg.pumpjack.header": "Pumpjack Info:",
+ "tfmg.pumpjack_deposit_amount": "%1$s Buckets",
+ "tfmg.recipe.advanced_distillation": "Advanced Distillation",
+ "tfmg.recipe.assembly.winding": "Wind a Spool",
+ "tfmg.recipe.casting": "Casting",
+ "tfmg.recipe.chemical_vat": "Chemical Vat",
+ "tfmg.recipe.coking": "Coking",
+ "tfmg.recipe.distillation": "Distillation",
+ "tfmg.recipe.hot_blast": "Air Blasting",
+ "tfmg.recipe.industrial_blasting": "Industrial Blasting",
+ "tfmg.recipe.polarizing": "Polarizing",
+ "tfmg.recipe.winding": "Winding",
+ "tfmg.resistor.allowed_voltage": "Percentage of Voltage Allowed",
"tfmg.subtitle.diesel_engine_sounds": "Diesel Engine Sounds",
- "tfmg.subtitle.engine_sounds": "Engine Sounds"
+ "tfmg.subtitle.engine_sounds": "Engine Sounds",
+ "tfmg.surface_scanner.header": "Surface Scanner",
+ "tfmg.tooltip.coils": "Turns: %1$s",
+ "tfmg.tooltip.cylinder": "Supported Fuels:",
+ "tfmg.tooltip.fluid_item": "Fluid Amount: %1$s",
+ "tfmg.tooltip.fuse": "Rating: %1$s",
+ "tfmg.tooltip.resistor": "Resistance: %1$s",
+ "tfmg.vat.header": "Chemical Vat",
+ "tfmg.voltage": "Voltage: %1$s",
+ "tfmg.winding_machine.header": "Winding Machine",
+ "tfmg.winding_machine.turn_percentage": "Allowed Turn Percentage (From 1000)",
+ "tfmg.wires.removed_data": "Data Removed"
}
\ No newline at end of file
diff --git a/src/generated/resources/data/tfmg/loot_table/blocks/encased_aluminum_pipe.json b/src/generated/resources/data/tfmg/loot_table/blocks/encased_aluminum_pipe.json
new file mode 100644
index 00000000..55957ba1
--- /dev/null
+++ b/src/generated/resources/data/tfmg/loot_table/blocks/encased_aluminum_pipe.json
@@ -0,0 +1,21 @@
+{
+ "type": "minecraft:block",
+ "pools": [
+ {
+ "bonus_rolls": 0.0,
+ "conditions": [
+ {
+ "condition": "minecraft:survives_explosion"
+ }
+ ],
+ "entries": [
+ {
+ "type": "minecraft:item",
+ "name": "tfmg:aluminum_pipe"
+ }
+ ],
+ "rolls": 1.0
+ }
+ ],
+ "random_sequence": "tfmg:blocks/encased_aluminum_pipe"
+}
\ No newline at end of file
diff --git a/src/generated/resources/data/tfmg/loot_table/blocks/encased_brass_pipe.json b/src/generated/resources/data/tfmg/loot_table/blocks/encased_brass_pipe.json
new file mode 100644
index 00000000..78ec4f04
--- /dev/null
+++ b/src/generated/resources/data/tfmg/loot_table/blocks/encased_brass_pipe.json
@@ -0,0 +1,21 @@
+{
+ "type": "minecraft:block",
+ "pools": [
+ {
+ "bonus_rolls": 0.0,
+ "conditions": [
+ {
+ "condition": "minecraft:survives_explosion"
+ }
+ ],
+ "entries": [
+ {
+ "type": "minecraft:item",
+ "name": "tfmg:brass_pipe"
+ }
+ ],
+ "rolls": 1.0
+ }
+ ],
+ "random_sequence": "tfmg:blocks/encased_brass_pipe"
+}
\ No newline at end of file
diff --git a/src/generated/resources/data/tfmg/loot_table/blocks/encased_cast_iron_pipe.json b/src/generated/resources/data/tfmg/loot_table/blocks/encased_cast_iron_pipe.json
new file mode 100644
index 00000000..3b58717a
--- /dev/null
+++ b/src/generated/resources/data/tfmg/loot_table/blocks/encased_cast_iron_pipe.json
@@ -0,0 +1,21 @@
+{
+ "type": "minecraft:block",
+ "pools": [
+ {
+ "bonus_rolls": 0.0,
+ "conditions": [
+ {
+ "condition": "minecraft:survives_explosion"
+ }
+ ],
+ "entries": [
+ {
+ "type": "minecraft:item",
+ "name": "tfmg:cast_iron_pipe"
+ }
+ ],
+ "rolls": 1.0
+ }
+ ],
+ "random_sequence": "tfmg:blocks/encased_cast_iron_pipe"
+}
\ No newline at end of file
diff --git a/src/generated/resources/data/tfmg/loot_table/blocks/encased_plastic_pipe.json b/src/generated/resources/data/tfmg/loot_table/blocks/encased_plastic_pipe.json
new file mode 100644
index 00000000..1834d7cf
--- /dev/null
+++ b/src/generated/resources/data/tfmg/loot_table/blocks/encased_plastic_pipe.json
@@ -0,0 +1,21 @@
+{
+ "type": "minecraft:block",
+ "pools": [
+ {
+ "bonus_rolls": 0.0,
+ "conditions": [
+ {
+ "condition": "minecraft:survives_explosion"
+ }
+ ],
+ "entries": [
+ {
+ "type": "minecraft:item",
+ "name": "tfmg:plastic_pipe"
+ }
+ ],
+ "rolls": 1.0
+ }
+ ],
+ "random_sequence": "tfmg:blocks/encased_plastic_pipe"
+}
\ No newline at end of file
diff --git a/src/generated/resources/data/tfmg/loot_table/blocks/encased_steel_pipe.json b/src/generated/resources/data/tfmg/loot_table/blocks/encased_steel_pipe.json
new file mode 100644
index 00000000..92122558
--- /dev/null
+++ b/src/generated/resources/data/tfmg/loot_table/blocks/encased_steel_pipe.json
@@ -0,0 +1,21 @@
+{
+ "type": "minecraft:block",
+ "pools": [
+ {
+ "bonus_rolls": 0.0,
+ "conditions": [
+ {
+ "condition": "minecraft:survives_explosion"
+ }
+ ],
+ "entries": [
+ {
+ "type": "minecraft:item",
+ "name": "tfmg:steel_pipe"
+ }
+ ],
+ "rolls": 1.0
+ }
+ ],
+ "random_sequence": "tfmg:blocks/encased_steel_pipe"
+}
\ No newline at end of file
diff --git a/src/generated/resources/data/tfmg/recipe/casting/cinderblock.json b/src/generated/resources/data/tfmg/recipe/casting/cinderblock.json
index 75c2ef4c..7c089fff 100644
--- a/src/generated/resources/data/tfmg/recipe/casting/cinderblock.json
+++ b/src/generated/resources/data/tfmg/recipe/casting/cinderblock.json
@@ -1,5 +1,5 @@
{
- "type": "create:casting",
+ "type": "tfmg:casting",
"ingredients": [
{
"type": "fluid_stack",
diff --git a/src/generated/resources/data/tfmg/recipe/casting/plastic_sheet.json b/src/generated/resources/data/tfmg/recipe/casting/plastic_sheet.json
index ecff0051..bcccb2df 100644
--- a/src/generated/resources/data/tfmg/recipe/casting/plastic_sheet.json
+++ b/src/generated/resources/data/tfmg/recipe/casting/plastic_sheet.json
@@ -1,5 +1,5 @@
{
- "type": "create:casting",
+ "type": "tfmg:casting",
"ingredients": [
{
"type": "fluid_stack",
diff --git a/src/generated/resources/data/tfmg/recipe/casting/silicon.json b/src/generated/resources/data/tfmg/recipe/casting/silicon.json
index c41ccde9..945363e0 100644
--- a/src/generated/resources/data/tfmg/recipe/casting/silicon.json
+++ b/src/generated/resources/data/tfmg/recipe/casting/silicon.json
@@ -1,5 +1,5 @@
{
- "type": "create:casting",
+ "type": "tfmg:casting",
"ingredients": [
{
"type": "fluid_stack",
diff --git a/src/generated/resources/data/tfmg/recipe/casting/slag_block.json b/src/generated/resources/data/tfmg/recipe/casting/slag_block.json
index 8f771071..079b6a15 100644
--- a/src/generated/resources/data/tfmg/recipe/casting/slag_block.json
+++ b/src/generated/resources/data/tfmg/recipe/casting/slag_block.json
@@ -1,5 +1,5 @@
{
- "type": "create:casting",
+ "type": "tfmg:casting",
"ingredients": [
{
"type": "fluid_stack",
diff --git a/src/generated/resources/data/tfmg/recipe/casting/steel.json b/src/generated/resources/data/tfmg/recipe/casting/steel.json
index c9f54233..b54ac351 100644
--- a/src/generated/resources/data/tfmg/recipe/casting/steel.json
+++ b/src/generated/resources/data/tfmg/recipe/casting/steel.json
@@ -1,5 +1,5 @@
{
- "type": "create:casting",
+ "type": "tfmg:casting",
"ingredients": [
{
"type": "fluid_stack",
diff --git a/src/generated/resources/data/tfmg/recipe/coking/charcoal.json b/src/generated/resources/data/tfmg/recipe/coking/charcoal.json
index 13e5548d..616b1a06 100644
--- a/src/generated/resources/data/tfmg/recipe/coking/charcoal.json
+++ b/src/generated/resources/data/tfmg/recipe/coking/charcoal.json
@@ -1,5 +1,5 @@
{
- "type": "create:coking",
+ "type": "tfmg:coking",
"ingredients": [
{
"tag": "minecraft:logs_that_burn"
diff --git a/src/generated/resources/data/tfmg/recipe/coking/coal.json b/src/generated/resources/data/tfmg/recipe/coking/coal.json
index b7816914..110af2cd 100644
--- a/src/generated/resources/data/tfmg/recipe/coking/coal.json
+++ b/src/generated/resources/data/tfmg/recipe/coking/coal.json
@@ -1,5 +1,5 @@
{
- "type": "create:coking",
+ "type": "tfmg:coking",
"ingredients": [
{
"item": "minecraft:coal"
diff --git a/src/generated/resources/data/tfmg/recipe/distillation/crude_oil.json b/src/generated/resources/data/tfmg/recipe/distillation/crude_oil.json
index 3398a02c..15adc8ee 100644
--- a/src/generated/resources/data/tfmg/recipe/distillation/crude_oil.json
+++ b/src/generated/resources/data/tfmg/recipe/distillation/crude_oil.json
@@ -1,5 +1,5 @@
{
- "type": "create:distillation",
+ "type": "tfmg:distillation",
"ingredients": [
{
"type": "fluid_stack",
diff --git a/src/generated/resources/data/tfmg/recipe/distillation/crude_oil_light_distillation.json b/src/generated/resources/data/tfmg/recipe/distillation/crude_oil_light_distillation.json
index 6109e547..d255a09f 100644
--- a/src/generated/resources/data/tfmg/recipe/distillation/crude_oil_light_distillation.json
+++ b/src/generated/resources/data/tfmg/recipe/distillation/crude_oil_light_distillation.json
@@ -1,5 +1,5 @@
{
- "type": "create:distillation",
+ "type": "tfmg:distillation",
"ingredients": [
{
"type": "fluid_stack",
diff --git a/src/generated/resources/data/tfmg/recipe/distillation/crude_oil_no_naphtha.json b/src/generated/resources/data/tfmg/recipe/distillation/crude_oil_no_naphtha.json
index 60d4bc1b..f8635622 100644
--- a/src/generated/resources/data/tfmg/recipe/distillation/crude_oil_no_naphtha.json
+++ b/src/generated/resources/data/tfmg/recipe/distillation/crude_oil_no_naphtha.json
@@ -1,5 +1,5 @@
{
- "type": "create:distillation",
+ "type": "tfmg:distillation",
"ingredients": [
{
"type": "fluid_stack",
diff --git a/src/generated/resources/data/tfmg/recipe/distillation/heavy_oil.json b/src/generated/resources/data/tfmg/recipe/distillation/heavy_oil.json
index c8d9bc19..03d4ac2e 100644
--- a/src/generated/resources/data/tfmg/recipe/distillation/heavy_oil.json
+++ b/src/generated/resources/data/tfmg/recipe/distillation/heavy_oil.json
@@ -1,5 +1,5 @@
{
- "type": "create:distillation",
+ "type": "tfmg:distillation",
"ingredients": [
{
"type": "fluid_stack",
diff --git a/src/generated/resources/data/tfmg/recipe/distillation/heavy_oil_light_distillation.json b/src/generated/resources/data/tfmg/recipe/distillation/heavy_oil_light_distillation.json
index c40dcbb7..c2b1abd9 100644
--- a/src/generated/resources/data/tfmg/recipe/distillation/heavy_oil_light_distillation.json
+++ b/src/generated/resources/data/tfmg/recipe/distillation/heavy_oil_light_distillation.json
@@ -1,5 +1,5 @@
{
- "type": "create:distillation",
+ "type": "tfmg:distillation",
"ingredients": [
{
"type": "fluid_stack",
diff --git a/src/generated/resources/data/tfmg/recipe/distillation/heavy_oil_no_naphtha.json b/src/generated/resources/data/tfmg/recipe/distillation/heavy_oil_no_naphtha.json
index e61afe48..049f278f 100644
--- a/src/generated/resources/data/tfmg/recipe/distillation/heavy_oil_no_naphtha.json
+++ b/src/generated/resources/data/tfmg/recipe/distillation/heavy_oil_no_naphtha.json
@@ -1,5 +1,5 @@
{
- "type": "create:distillation",
+ "type": "tfmg:distillation",
"ingredients": [
{
"type": "fluid_stack",
diff --git a/src/generated/resources/data/tfmg/recipe/hot_blast/hot_air.json b/src/generated/resources/data/tfmg/recipe/hot_blast/hot_air.json
index d89e1cad..bf70a7c0 100644
--- a/src/generated/resources/data/tfmg/recipe/hot_blast/hot_air.json
+++ b/src/generated/resources/data/tfmg/recipe/hot_blast/hot_air.json
@@ -1,5 +1,5 @@
{
- "type": "create:hot_blast",
+ "type": "tfmg:hot_blast",
"ingredients": [
{
"type": "fluid_stack",
diff --git a/src/generated/resources/data/tfmg/recipe/industrial_blasting/silicon.json b/src/generated/resources/data/tfmg/recipe/industrial_blasting/silicon.json
index 2cd2e88a..b99677da 100644
--- a/src/generated/resources/data/tfmg/recipe/industrial_blasting/silicon.json
+++ b/src/generated/resources/data/tfmg/recipe/industrial_blasting/silicon.json
@@ -1,5 +1,5 @@
{
- "type": "create:industrial_blasting",
+ "type": "tfmg:industrial_blasting",
"ingredients": [
{
"item": "minecraft:quartz"
diff --git a/src/generated/resources/data/tfmg/recipe/industrial_blasting/steel.json b/src/generated/resources/data/tfmg/recipe/industrial_blasting/steel.json
index d970a663..78224f9d 100644
--- a/src/generated/resources/data/tfmg/recipe/industrial_blasting/steel.json
+++ b/src/generated/resources/data/tfmg/recipe/industrial_blasting/steel.json
@@ -1,5 +1,5 @@
{
- "type": "create:industrial_blasting",
+ "type": "tfmg:industrial_blasting",
"hot_air_usage": 20,
"ingredients": [
{
diff --git a/src/generated/resources/data/tfmg/recipe/industrial_blasting/steel_from_dust.json b/src/generated/resources/data/tfmg/recipe/industrial_blasting/steel_from_dust.json
index c1692360..31d2103e 100644
--- a/src/generated/resources/data/tfmg/recipe/industrial_blasting/steel_from_dust.json
+++ b/src/generated/resources/data/tfmg/recipe/industrial_blasting/steel_from_dust.json
@@ -1,5 +1,5 @@
{
- "type": "create:industrial_blasting",
+ "type": "tfmg:industrial_blasting",
"hot_air_usage": 20,
"ingredients": [
{
diff --git a/src/generated/resources/data/tfmg/recipe/industrial_blasting/steel_from_raw_iron.json b/src/generated/resources/data/tfmg/recipe/industrial_blasting/steel_from_raw_iron.json
index a7bb68d6..b8675f98 100644
--- a/src/generated/resources/data/tfmg/recipe/industrial_blasting/steel_from_raw_iron.json
+++ b/src/generated/resources/data/tfmg/recipe/industrial_blasting/steel_from_raw_iron.json
@@ -1,5 +1,5 @@
{
- "type": "create:industrial_blasting",
+ "type": "tfmg:industrial_blasting",
"hot_air_usage": 40,
"ingredients": [
{
diff --git a/src/generated/resources/data/tfmg/recipe/polarizing/magnet.json b/src/generated/resources/data/tfmg/recipe/polarizing/magnet.json
index b7149a2c..0ce494ae 100644
--- a/src/generated/resources/data/tfmg/recipe/polarizing/magnet.json
+++ b/src/generated/resources/data/tfmg/recipe/polarizing/magnet.json
@@ -1,5 +1,5 @@
{
- "type": "create:polarizing",
+ "type": "tfmg:polarizing",
"ingredients": [
{
"item": "tfmg:magnetic_alloy_ingot"
diff --git a/src/generated/resources/data/tfmg/recipe/sequenced_assembly/generator.json b/src/generated/resources/data/tfmg/recipe/sequenced_assembly/generator.json
index e5a870e6..78f0b020 100644
--- a/src/generated/resources/data/tfmg/recipe/sequenced_assembly/generator.json
+++ b/src/generated/resources/data/tfmg/recipe/sequenced_assembly/generator.json
@@ -56,7 +56,7 @@
]
},
{
- "type": "create:winding",
+ "type": "tfmg:winding",
"ingredients": [
{
"item": "tfmg:unfinished_generator"
diff --git a/src/generated/resources/data/tfmg/recipe/sequenced_assembly/motor.json b/src/generated/resources/data/tfmg/recipe/sequenced_assembly/motor.json
index c51c0235..1335e271 100644
--- a/src/generated/resources/data/tfmg/recipe/sequenced_assembly/motor.json
+++ b/src/generated/resources/data/tfmg/recipe/sequenced_assembly/motor.json
@@ -20,7 +20,7 @@
],
"sequence": [
{
- "type": "create:winding",
+ "type": "tfmg:winding",
"ingredients": [
{
"item": "tfmg:unfinished_electric_motor"
diff --git a/src/generated/resources/data/tfmg/recipe/sequenced_assembly/potentiometer.json b/src/generated/resources/data/tfmg/recipe/sequenced_assembly/potentiometer.json
index e60a09f4..d6cd250a 100644
--- a/src/generated/resources/data/tfmg/recipe/sequenced_assembly/potentiometer.json
+++ b/src/generated/resources/data/tfmg/recipe/sequenced_assembly/potentiometer.json
@@ -24,7 +24,7 @@
],
"sequence": [
{
- "type": "create:winding",
+ "type": "tfmg:winding",
"ingredients": [
{
"item": "tfmg:unfinished_potentiometer"
diff --git a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/aluminum.json b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/aluminum.json
index c4caf1d2..9a0fa65e 100644
--- a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/aluminum.json
+++ b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/aluminum.json
@@ -1,5 +1,5 @@
{
- "type": "create:vat_machine_recipe",
+ "type": "tfmg:vat_machine_recipe",
"allowed_vat_types": [
"tfmg:steel_vat",
"tfmg:firebrick_lined_vat"
diff --git a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/arc_furnace_steel.json b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/arc_furnace_steel.json
index 7d5865ae..3787d4d8 100644
--- a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/arc_furnace_steel.json
+++ b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/arc_furnace_steel.json
@@ -1,5 +1,5 @@
{
- "type": "create:vat_machine_recipe",
+ "type": "tfmg:vat_machine_recipe",
"allowed_vat_types": [
"tfmg:firebrick_lined_vat"
],
diff --git a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/concrete.json b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/concrete.json
index 553f0670..c4ba24df 100644
--- a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/concrete.json
+++ b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/concrete.json
@@ -1,5 +1,5 @@
{
- "type": "create:vat_machine_recipe",
+ "type": "tfmg:vat_machine_recipe",
"allowed_vat_types": [
"tfmg:steel_vat",
"tfmg:firebrick_lined_vat"
diff --git a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/etched_circuit_board.json b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/etched_circuit_board.json
index 1cfea22b..ea7cb660 100644
--- a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/etched_circuit_board.json
+++ b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/etched_circuit_board.json
@@ -1,5 +1,5 @@
{
- "type": "create:vat_machine_recipe",
+ "type": "tfmg:vat_machine_recipe",
"ingredients": [
{
"item": "tfmg:coated_circuit_board"
diff --git a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/naphtha.json b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/naphtha.json
index fd99b8e6..caac7097 100644
--- a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/naphtha.json
+++ b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/naphtha.json
@@ -1,5 +1,5 @@
{
- "type": "create:vat_machine_recipe",
+ "type": "tfmg:vat_machine_recipe",
"allowed_vat_types": [
"tfmg:steel_vat",
"tfmg:firebrick_lined_vat"
diff --git a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/neon.json b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/neon.json
index f839908a..24bcb89c 100644
--- a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/neon.json
+++ b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/neon.json
@@ -1,5 +1,5 @@
{
- "type": "create:vat_machine_recipe",
+ "type": "tfmg:vat_machine_recipe",
"ingredients": [
{
"type": "fluid_stack",
diff --git a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/plastic_from_ethylene.json b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/plastic_from_ethylene.json
index 955653cd..89ca733a 100644
--- a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/plastic_from_ethylene.json
+++ b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/plastic_from_ethylene.json
@@ -1,5 +1,5 @@
{
- "type": "create:vat_machine_recipe",
+ "type": "tfmg:vat_machine_recipe",
"allowed_vat_types": [
"tfmg:steel_vat",
"tfmg:firebrick_lined_vat"
diff --git a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/plastic_from_propylene.json b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/plastic_from_propylene.json
index 1f6c1386..e0ba37d2 100644
--- a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/plastic_from_propylene.json
+++ b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/plastic_from_propylene.json
@@ -1,5 +1,5 @@
{
- "type": "create:vat_machine_recipe",
+ "type": "tfmg:vat_machine_recipe",
"allowed_vat_types": [
"tfmg:steel_vat",
"tfmg:firebrick_lined_vat"
diff --git a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/rubber.json b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/rubber.json
index 87e12759..fd762815 100644
--- a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/rubber.json
+++ b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/rubber.json
@@ -1,5 +1,5 @@
{
- "type": "create:vat_machine_recipe",
+ "type": "tfmg:vat_machine_recipe",
"allowed_vat_types": [
"tfmg:steel_vat",
"tfmg:firebrick_lined_vat"
diff --git a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/sulfuric_acid.json b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/sulfuric_acid.json
index 27300fe8..d6ea62df 100644
--- a/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/sulfuric_acid.json
+++ b/src/generated/resources/data/tfmg/recipe/vat_machine_recipe/sulfuric_acid.json
@@ -1,5 +1,5 @@
{
- "type": "create:vat_machine_recipe",
+ "type": "tfmg:vat_machine_recipe",
"allowed_vat_types": [
"tfmg:steel_vat",
"tfmg:firebrick_lined_vat"
diff --git a/src/generated/resources/data/tfmg/recipe/winding/electromagnetic_coil.json b/src/generated/resources/data/tfmg/recipe/winding/electromagnetic_coil.json
index a3cad6b8..e9fb9516 100644
--- a/src/generated/resources/data/tfmg/recipe/winding/electromagnetic_coil.json
+++ b/src/generated/resources/data/tfmg/recipe/winding/electromagnetic_coil.json
@@ -1,5 +1,5 @@
{
- "type": "create:winding",
+ "type": "tfmg:winding",
"ingredients": [
{
"item": "tfmg:unfinished_electromagnetic_coil"
diff --git a/src/generated/resources/data/tfmg/recipe/winding/resistor.json b/src/generated/resources/data/tfmg/recipe/winding/resistor.json
index 010b0c76..9f08eac2 100644
--- a/src/generated/resources/data/tfmg/recipe/winding/resistor.json
+++ b/src/generated/resources/data/tfmg/recipe/winding/resistor.json
@@ -1,5 +1,5 @@
{
- "type": "create:winding",
+ "type": "tfmg:winding",
"ingredients": [
{
"item": "tfmg:unfinished_resistor"
diff --git a/src/main/java/com/drmangotea/tfmg/TFMG.java b/src/main/java/com/drmangotea/tfmg/TFMG.java
index 0c7daff0..bedb6011 100644
--- a/src/main/java/com/drmangotea/tfmg/TFMG.java
+++ b/src/main/java/com/drmangotea/tfmg/TFMG.java
@@ -30,7 +30,6 @@ import net.neoforged.neoforge.registries.RegisterEvent;
import org.slf4j.Logger;
-@SuppressWarnings("removal")
@Mod(TFMG.MOD_ID)
public class TFMG {
diff --git a/src/main/java/com/drmangotea/tfmg/base/TFMGRemapper.java b/src/main/java/com/drmangotea/tfmg/base/TFMGRemapper.java
new file mode 100644
index 00000000..b2165d57
--- /dev/null
+++ b/src/main/java/com/drmangotea/tfmg/base/TFMGRemapper.java
@@ -0,0 +1,56 @@
+package com.drmangotea.tfmg.base;
+
+import com.drmangotea.tfmg.TFMG;
+import net.minecraft.core.Registry;
+import net.minecraft.core.registries.Registries;
+import net.minecraft.resources.ResourceLocation;
+import net.neoforged.bus.api.SubscribeEvent;
+import net.neoforged.fml.common.EventBusSubscriber;
+import net.neoforged.neoforge.registries.RegisterEvent;
+
+import java.util.HashMap;
+import java.util.Map;
+
+
+@EventBusSubscriber(bus = EventBusSubscriber.Bus.MOD)
+public class TFMGRemapper {
+ /**
+ * @see String The old name of the block/item (String)
+ *
+ * @see ResourceLocation The new name of the block/item (ResourceLocation)
+ */
+ private static final Map reMapBlock = new HashMap<>();
+ private static final Map reMapItem = new HashMap<>();
+ private static final Map reMapFluid = new HashMap<>();
+
+ static {
+ //Blocks
+ reMapBlock.put("copper_encased_brass_pipe", TFMG.asResource("encased_brass_pipe"));
+ reMapBlock.put("copper_encased_steel_pipe", TFMG.asResource("encased_steel_pipe"));
+ reMapBlock.put("copper_encased_aluminum_pipe", TFMG.asResource("encased_aluminum_pipe"));
+ reMapBlock.put("copper_encased_cast_iron_pipe", TFMG.asResource("encased_cast_iron_pipe"));
+ reMapBlock.put("copper_encased_plastic_pipe", TFMG.asResource("encased_plastic_pipe"));
+
+ //Items
+ }
+
+ @SubscribeEvent
+ public static void remap(RegisterEvent event) {
+ Registry> registry = event.getRegistry();
+
+ if (registry.key() == Registries.BLOCK) {
+ reMapBlock.forEach((string, resourceLocation) -> registry.addAlias(TFMG.asResource(string), resourceLocation));
+ TFMG.LOGGER.info("[TFMG Remapper] Remapped {} blocks", reMapBlock.size());
+ }
+ if (registry.key() == Registries.ITEM) {
+ reMapBlock.forEach((string, resourceLocation) -> registry.addAlias(TFMG.asResource(string), resourceLocation));
+ reMapItem.forEach((string, resourceLocation) -> registry.addAlias(TFMG.asResource(string), resourceLocation));
+ int reMapSize = reMapBlock.size() + reMapItem.size();
+ TFMG.LOGGER.info("[TFMG Remapper] Remapped {} items", reMapSize);
+ }
+ if (registry.key() == Registries.FLUID) {
+ reMapFluid.forEach((string, resourceLocation) -> registry.addAlias(TFMG.asResource(string), resourceLocation));
+ TFMG.LOGGER.info("[TFMG Remapper] Remapped {} fluids", reMapFluid.size());
+ }
+ }
+}
diff --git a/src/main/java/com/drmangotea/tfmg/base/TFMGSpriteShifts.java b/src/main/java/com/drmangotea/tfmg/base/TFMGSpriteShifts.java
index 152b343c..4da90462 100644
--- a/src/main/java/com/drmangotea/tfmg/base/TFMGSpriteShifts.java
+++ b/src/main/java/com/drmangotea/tfmg/base/TFMGSpriteShifts.java
@@ -21,11 +21,11 @@ public class TFMGSpriteShifts {
public static final CTSpriteShiftEntry COKE_OVEN_TOP = getCT(AllCTTypes.RECTANGLE, "coke_oven/top"), COKE_OVEN_BOTTOM = getCT(AllCTTypes.RECTANGLE, "coke_oven/bottom"), COKE_OVEN_BACK = getCT(AllCTTypes.RECTANGLE, "coke_oven/side"), COKE_OVEN_SIDE = getCT(AllCTTypes.RECTANGLE, "coke_oven/side");
// Fluid Encasing
- public static final CTSpriteShiftEntry BRASS_FLUID_CASING = omni("copper_encased_brass_pipe_side");
- public static final CTSpriteShiftEntry STEEL_FLUID_CASING = omni("copper_encased_steel_pipe_side");
- public static final CTSpriteShiftEntry ALUMINUM_FLUID_CASING = omni("copper_encased_aluminum_pipe_side");
- public static final CTSpriteShiftEntry CAST_IRON_FLUID_CASING = omni("copper_encased_cast_iron_pipe_side");
- public static final CTSpriteShiftEntry PLASTIC_FLUID_CASING = omni("copper_encased_plastic_pipe_side");
+ public static final CTSpriteShiftEntry BRASS_FLUID_CASING = omni("encased_brass_pipe_side");
+ public static final CTSpriteShiftEntry STEEL_FLUID_CASING = omni("encased_steel_pipe_side");
+ public static final CTSpriteShiftEntry ALUMINUM_FLUID_CASING = omni("encased_aluminum_pipe_side");
+ public static final CTSpriteShiftEntry CAST_IRON_FLUID_CASING = omni("encased_cast_iron_pipe_side");
+ public static final CTSpriteShiftEntry PLASTIC_FLUID_CASING = omni("encased_plastic_pipe_side");
public static final CTSpriteShiftEntry FIREBOX_TOP = getCT(AllCTTypes.RECTANGLE, "firebox_top");
diff --git a/src/main/java/com/drmangotea/tfmg/base/TFMGUtils.java b/src/main/java/com/drmangotea/tfmg/base/TFMGUtils.java
index a70bf774..5dd807ec 100644
--- a/src/main/java/com/drmangotea/tfmg/base/TFMGUtils.java
+++ b/src/main/java/com/drmangotea/tfmg/base/TFMGUtils.java
@@ -127,19 +127,14 @@ public class TFMGUtils {
public static void spawnElectricParticles(Level level, BlockPos pos) {
if (level == null) return;
-
-
RandomSource r = level.getRandom();
-
for (int i = 0; i < r.nextInt(40); i++) {
float x = Create.RANDOM.nextFloat(2) - 1;
float y = Create.RANDOM.nextFloat(2) - 1;
float z = Create.RANDOM.nextFloat(2) - 1;
level.addParticle(new ElectricSparkParticle.Data(), pos.getX() + 0.5f + x, pos.getY() + 0.5f + y, pos.getZ() + 0.5f + z, x, y, z);
-
-
}
}
diff --git a/src/main/java/com/drmangotea/tfmg/base/lang/TFMGLang.java b/src/main/java/com/drmangotea/tfmg/base/lang/TFMGLang.java
new file mode 100644
index 00000000..5ddc6657
--- /dev/null
+++ b/src/main/java/com/drmangotea/tfmg/base/lang/TFMGLang.java
@@ -0,0 +1,73 @@
+package com.drmangotea.tfmg.base.lang;
+
+import com.drmangotea.tfmg.TFMG;
+import com.simibubi.create.Create;
+import com.simibubi.create.foundation.utility.CreateLang;
+import net.createmod.catnip.lang.Lang;
+import net.createmod.catnip.lang.LangBuilder;
+import net.createmod.catnip.lang.LangNumberFormat;
+import net.minecraft.network.chat.Component;
+import net.minecraft.network.chat.MutableComponent;
+import net.minecraft.world.item.ItemStack;
+import net.minecraft.world.level.block.state.BlockState;
+import net.neoforged.neoforge.fluids.FluidStack;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class TFMGLang extends Lang {
+ /**
+ * legacy-ish. Use TFMGLang.translate and other builder methods where possible
+ *
+
+ */
+ public static MutableComponent translateDirect(String key, Object... args) {
+ Object[] args1 = LangBuilder.resolveBuilders(args);
+ return Component.translatable(TFMG.MOD_ID + "." + key, args1);
+ }
+
+ public static List translatedOptions(String prefix, String... keys) {
+ List result = new ArrayList<>(keys.length);
+ for (String key : keys)
+ result.add(translate((prefix != null ? prefix + "." : "") + key).component());
+ return result;
+ }
+
+ //
+
+ public static LangBuilder builder() {
+ return new LangBuilder(TFMG.MOD_ID);
+ }
+
+ public static LangBuilder blockName(BlockState state) {
+ return builder().add(state.getBlock()
+ .getName());
+ }
+
+ public static LangBuilder itemName(ItemStack stack) {
+ return builder().add(stack.getHoverName()
+ .copy());
+ }
+
+ public static LangBuilder fluidName(FluidStack stack) {
+ return builder().add(stack.getHoverName()
+ .copy());
+ }
+
+ public static LangBuilder number(double d) {
+ return builder().text(LangNumberFormat.format(d));
+ }
+
+ public static LangBuilder translate(String langKey, Object... args) {
+ return builder().translate(langKey, args);
+ }
+
+ public static LangBuilder text(String text) {
+ return builder().text(text);
+ }
+
+ @Deprecated // Use while implementing and replace all references with Lang.translate
+ public static LangBuilder temporaryText(String text) {
+ return builder().text(text);
+ }
+}
diff --git a/src/main/java/com/drmangotea/tfmg/base/lang/TFMGTexts.java b/src/main/java/com/drmangotea/tfmg/base/lang/TFMGTexts.java
new file mode 100644
index 00000000..55c9bc75
--- /dev/null
+++ b/src/main/java/com/drmangotea/tfmg/base/lang/TFMGTexts.java
@@ -0,0 +1,242 @@
+package com.drmangotea.tfmg.base.lang;
+
+import com.drmangotea.tfmg.base.TFMGUtils;
+import com.simibubi.create.content.processing.recipe.HeatCondition;
+import com.simibubi.create.foundation.utility.CreateLang;
+import net.createmod.catnip.lang.LangBuilder;
+import net.createmod.catnip.theme.Color;
+import net.minecraft.ChatFormatting;
+import net.minecraft.world.item.ItemStack;
+
+/**
+ * Utility class for storing translations and texts that could occur more than once.
+ * Easier than copying the lang.translate() method everywhere.
+ */
+public class TFMGTexts {
+ public static String percent(double value) {
+ return TFMGLang.number(value) + "%";
+ }
+ // Electricity info
+ public static String power(double value) {
+ return TFMGUtils.formatUnits(value, "W");
+ }
+ public static String voltage(double value) {
+ return TFMGUtils.formatUnits(value, "V");
+ }
+ public static String current(double value) {
+ return TFMGUtils.formatUnits(value, "A");
+ }
+ public static String resistance(double value) {
+ return TFMGUtils.formatUnits(value, "Ω");
+ }
+ public static String forgeEnergy(double value) {
+ return TFMGUtils.formatUnits(value, "FE");
+ }
+ public static LangBuilder electricalCapacity(double value) {
+ return TFMGLang.translate("electricity.capacity", forgeEnergy(value)).color(0x127799);
+ }
+ public static LangBuilder electricalMaxCapacity(double value) {
+ return TFMGLang.translate("electricity.max_capacity", TFMGLang.number(value)).color(0x127799);
+ }
+ public static LangBuilder chargingRate(double value) {
+ return TFMGLang.translate("electricity.charging_rate", TFMGLang.number(value)).color(0x127799);
+ }
+ public static LangBuilder progress(double value) {
+ return TFMGLang.translate("goggles.progress", value);
+ }
+ public static LangBuilder progress(String value) {
+ return TFMGLang.translate("goggles.progress", value);
+ }
+ public static LangBuilder turnsLeft(int turns) {
+ return TFMGLang.translate("goggles.winding_machine.turns", TFMGLang.number(turns));
+ }
+
+ public static LangBuilder invalidMachine() {
+ return TFMGLang.translate("goggles.invalid_machine").style(ChatFormatting.DARK_RED);
+ }
+
+ public static LangBuilder header(String identifier) {
+ return TFMGLang.translate(identifier + ".header");
+ }
+
+ public static LangBuilder heatStatus(HeatCondition heatCondition) {
+ return TFMGLang.translate("goggles.heat_status")
+ .add(TFMGLang.translate(heatCondition == HeatCondition.NONE ? "goggles.no_heat" : heatCondition == HeatCondition.HEATED ? "goggles.heated" : "goggles.superheated"))
+ .color(heatCondition == HeatCondition.NONE ? 0x7a7a77 : heatCondition == HeatCondition.HEATED ? 0xdea216 : 0x16c7de);
+ }
+
+ // Multimeter Tooltips
+ public static class Multimeter {
+ public static LangBuilder separator() {
+ return TFMGLang.translate("multimeter.separator").color(Color.WHITE);
+ }
+ public static LangBuilder notEnoughPower() {
+ return TFMGLang.translate("multimeter.insufficient_power").color(Color.RED);
+ }
+ public static LangBuilder notEnoughPower(double requirement) {
+ return TFMGLang.translate("multimeter.insufficient_power.requirement", TFMGTexts.power(requirement)).style(ChatFormatting.RED);
+ }
+ public static LangBuilder notEnoughCurrent(int minimum) {
+ return TFMGLang.translate("multimeter.insufficient_current", TFMGTexts.current(minimum)).style(ChatFormatting.RED);
+ }
+ public static LangBuilder charge(double value) {
+ return TFMGLang.translate("multimeter.charge", percent(value)).style(ChatFormatting.DARK_AQUA);
+ }
+ public static LangBuilder group(int groupId) {
+ return TFMGLang.translate("multimeter.group", TFMGLang.number(groupId)).color(0xd8db27);
+ }
+ public static LangBuilder transformerRatio(float ratio) {
+ return TFMGLang.translate("multimeter.transformer_ratio").add(TFMGLang.number(ratio)).color(0xc6e82c);
+ }
+ public static LangBuilder powerGenerated(double value) {
+ return TFMGLang.translate("multimeter.power_generated", power(value)).color(0x852e4a);
+ }
+ public static LangBuilder voltageGenerated(double value) {
+ return TFMGLang.translate("multimeter.voltage_generated", voltage(value)).color(0x127799);
+ }
+ public static LangBuilder networkGeneration(double value) {
+ return TFMGLang.translate("multimeter.network.generation", power(value)).color(0xcc4b74);
+ }
+ public static LangBuilder networkConsumption(double value) {
+ return TFMGLang.translate("multimeter.network.consumption", power(value)).color(0xcc4b74);
+ }
+ public static LangBuilder resistance(double value) {
+ return TFMGLang.text(" R = " + TFMGTexts.resistance(value)).color(0xc98969);
+ }
+ public static LangBuilder voltage(double value) {
+ return TFMGLang.text(" U = " + TFMGTexts.voltage(value)).color(0x4bbbcc);
+ }
+ public static LangBuilder current(double value) {
+ return TFMGLang.text(" I = " + TFMGTexts.current(value)).color(0x22a146);
+ }
+ public static LangBuilder power(double value) {
+ return TFMGLang.text(" P = " + TFMGTexts.power(value)).color(0xcc4b74);
+ }
+ }
+
+ // Voltmeter Tooltips
+ public static class Voltmeter {
+ public static LangBuilder range(int range) {
+ return TFMGLang.translate("goggles.voltmeter.range", range).style(ChatFormatting.DARK_AQUA);
+ }
+ public static LangBuilder mode(String langKey) {
+ return TFMGLang.translate(langKey).style(ChatFormatting.DARK_GRAY);
+ }
+ public static LangBuilder value(float value, String unit) {
+ return TFMGLang.text(TFMGUtils.formatUnits(value, unit)).style(ChatFormatting.AQUA);
+ }
+ }
+
+ // Engine Tooltips
+ public static class Engine {
+ public static LangBuilder unfinished() {
+ return TFMGLang.translate("goggles.engine.unfinished")
+ .color(0xde5050);
+ }
+ public static LangBuilder nextComponent(ItemStack item) {
+ return TFMGLang.translate("goggles.engine.next_component", item.getHoverName()).color(0xfff240);
+ }
+ public static LangBuilder lastRequirement(String type) {
+ return TFMGLang.translate("goggles.engine."+type+"_missing").color(0xde5050);
+ }
+ public static LangBuilder shift(String langKey) {
+ return TFMGLang.translate("engine.shift", TFMGLang.translate(langKey));
+ }
+ public static LangBuilder speedEfficiency(float efficiency) {
+ return TFMGLang.translate("engine.speed_efficiency", TFMGLang.number(efficiency));
+ }
+ public static LangBuilder efficiency(float efficiency) {
+ return TFMGLang.translate("engine.efficiency", TFMGLang.number(efficiency));
+ }
+ public static LangBuilder fuelConsumption(float consumption) {
+ return TFMGLang.translate("goggles.engine.fuel_consumption", TFMGLang.number(consumption)).color(0xfcad03);
+ }
+ public static LangBuilder rpm(float rpm) {
+ return TFMGLang.translate("goggles.engine.rpm", TFMGLang.number(rpm)).color(0xa36f00);
+ }
+ public static LangBuilder length(int length) {
+ return TFMGLang.translate("engine.length", TFMGLang.number(length));
+ }
+ public static LangBuilder torque(float torque) {
+ return TFMGLang.translate("goggles.engine.torque", TFMGLang.number(torque)).color(0xa36f00);
+ }
+ public static LangBuilder injectionRate(float rate) {
+ return TFMGLang.translate("engine.injection_rate", TFMGLang.number(rate));
+ }
+ public static LangBuilder signal(int signal) {
+ return TFMGLang.translate("goggles.engine.signal", TFMGLang.number(signal)).color(0xfcad03);
+ }
+ public static LangBuilder type(String langKey) {
+ return TFMGLang.translate("goggles.engine.type", TFMGLang.translate(langKey)).color(0xfcad03);
+ }
+ public static LangBuilder oil(int oil) {
+ return TFMGLang.translate("goggles.engine.oil", TFMGLang.number(oil)).color(0xf5dd42);
+ }
+ public static LangBuilder coolingFluid(int fluid) {
+ return TFMGLang.translate("goggles.engine.cooling_fluid", TFMGLang.number(fluid)).color(0x51bdb9);
+ }
+ }
+
+ // Blast Furnace Tooltips
+ public static class BlastFurnace {
+ public static LangBuilder stats(int count) {
+ return TFMGLang.translate("goggles.blast_furnace.stats", count).style(ChatFormatting.GRAY);
+ }
+ public static LangBuilder height(int height) {
+ return TFMGLang.translate("goggles.blast_furnace.height", TFMGLang.number(height));
+ }
+ public static LangBuilder fuelAmount(int amount) {
+ return TFMGLang.translate("goggles.blast_furnace.fuel_amount", TFMGLang.number(amount));
+ }
+ public static LangBuilder timer(int timer) {
+ return TFMGLang.translate("goggles.blast_furnace.timer", timer).style(ChatFormatting.GOLD);
+ }
+ public static LangBuilder reinforced() {
+ return TFMGLang.translate("goggles.blast_furnace.reinforced").style(ChatFormatting.GREEN);
+ }
+ }
+
+ // Distillation Tower Tooltips
+ public static class Distillation {
+ public static LangBuilder level(int activeHeat) {
+ ChatFormatting color = activeHeat > 0 ? ChatFormatting.GOLD : ChatFormatting.RED;
+ return TFMGLang.translate("goggles.distillation_tower.level", activeHeat).style(color);
+ }
+ public static LangBuilder outputs(int outputs) {
+ ChatFormatting color = outputs > 0 ? ChatFormatting.GOLD : ChatFormatting.RED;
+ return TFMGLang.translate("goggles.distillation_tower.found_outputs", TFMGLang.number(outputs)).style(color);
+ }
+ public static LangBuilder tankNotFound() {
+ return TFMGLang.translate("goggles.distillation_tower.tank_not_found").style(ChatFormatting.RED);
+ }
+ }
+
+ // Surface Scanner Tooltips
+ public static class SurfaceScanner {
+ public static LangBuilder deposits(int deposits) {
+ return TFMGLang.translate("goggles.surface_scanner.deposits_found", TFMGLang.number(deposits)).style(ChatFormatting.GREEN);
+ }
+ public static LangBuilder noDeposit() {
+ return TFMGLang.translate("goggles.surface_scanner.no_deposit").style(ChatFormatting.RED);
+ }
+ public static LangBuilder noRotation() {
+ return TFMGLang.translate("goggles.surface_scanner.no_rotation").style(ChatFormatting.DARK_RED);
+ }
+ }
+
+ // Vat Tooltips
+ public static class Vat {
+ public static LangBuilder operation(String operationId) {
+ return TFMGLang.translate("goggles.vat." + operationId.replace(":","."));
+ }
+ public static LangBuilder notOperational() {
+ return TFMGLang.text(" - ").add(TFMGLang.translate("goggles.vat.not_operational").style(ChatFormatting.RED));
+ }
+ public static LangBuilder contents() {
+ return TFMGLang.translate("goggles.vat.contents");
+ }
+ public static LangBuilder attachments() {
+ return TFMGLang.translate("goggles.vat.attachments");
+ }
+ }
+}
diff --git a/src/main/java/com/drmangotea/tfmg/content/decoration/pipes/TFMGEncasedPipeBlock.java b/src/main/java/com/drmangotea/tfmg/content/decoration/pipes/TFMGEncasedPipeBlock.java
index bb8b3d47..e23a245b 100644
--- a/src/main/java/com/drmangotea/tfmg/content/decoration/pipes/TFMGEncasedPipeBlock.java
+++ b/src/main/java/com/drmangotea/tfmg/content/decoration/pipes/TFMGEncasedPipeBlock.java
@@ -1,10 +1,12 @@
package com.drmangotea.tfmg.content.decoration.pipes;
import com.drmangotea.tfmg.registry.TFMGBlockEntities;
+import com.simibubi.create.AllBlocks;
import com.simibubi.create.content.fluids.FluidTransportBehaviour;
import com.simibubi.create.content.fluids.pipes.EncasedPipeBlock;
import com.simibubi.create.content.fluids.pipes.FluidPipeBlockEntity;
+import com.simibubi.create.content.schematics.requirement.ItemRequirement;
import net.createmod.catnip.data.Iterate;
import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
@@ -14,7 +16,9 @@ import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.context.UseOnContext;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.level.Level;
+import net.minecraft.world.level.LevelReader;
import net.minecraft.world.level.block.Block;
+import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.entity.BlockEntityType;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.phys.HitResult;
@@ -56,6 +60,17 @@ public class TFMGEncasedPipeBlock extends EncasedPipeBlock {
FluidTransportBehaviour.loadFlows(world, pos);
return InteractionResult.SUCCESS;
}
+
+ @Override
+ public ItemStack getCloneItemStack(BlockState state, HitResult target, LevelReader level, BlockPos pos, Player player) {
+ return TFMGPipes.PIPES.get(material).getPipe().asStack();
+ }
+
+ @Override
+ public ItemRequirement getRequiredItems(BlockState state, BlockEntity be) {
+ return ItemRequirement.of(TFMGPipes.PIPES.get(material).getPipe().getDefaultState(), be);
+ }
+
@Override
public Class getBlockEntityClass() {
return FluidPipeBlockEntity.class;
diff --git a/src/main/java/com/drmangotea/tfmg/content/decoration/pipes/TFMGPipeEntry.java b/src/main/java/com/drmangotea/tfmg/content/decoration/pipes/TFMGPipeEntry.java
index 607e3a34..7b31f1e1 100644
--- a/src/main/java/com/drmangotea/tfmg/content/decoration/pipes/TFMGPipeEntry.java
+++ b/src/main/java/com/drmangotea/tfmg/content/decoration/pipes/TFMGPipeEntry.java
@@ -102,7 +102,7 @@ public class TFMGPipeEntry {
}
protected BlockEntry extends TFMGEncasedPipeBlock> registerEncasedPipe() {
- return this.registrate.block("copper_encased_" + this.material.name + "_pipe", p -> new TFMGEncasedPipeBlock(p, AllBlocks.COPPER_CASING::get, this.material))
+ return this.registrate.block("encased_" + this.material.name + "_pipe", p -> new TFMGEncasedPipeBlock(p, AllBlocks.COPPER_CASING::get, this.material))
.initialProperties(SharedProperties::copperMetal)
.properties(p -> p.noOcclusion().mapColor(MapColor.TERRACOTTA_LIGHT_GRAY))
.transform(axeOrPickaxe())
diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/base/IElectric.java b/src/main/java/com/drmangotea/tfmg/content/electricity/base/IElectric.java
index 906175d5..785dfa13 100644
--- a/src/main/java/com/drmangotea/tfmg/content/electricity/base/IElectric.java
+++ b/src/main/java/com/drmangotea/tfmg/content/electricity/base/IElectric.java
@@ -2,6 +2,8 @@ package com.drmangotea.tfmg.content.electricity.base;
import com.drmangotea.tfmg.TFMG;
import com.drmangotea.tfmg.base.TFMGUtils;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
+import com.drmangotea.tfmg.base.lang.TFMGTexts;
import com.drmangotea.tfmg.content.electricity.connection.cables.CableConnection;
import com.drmangotea.tfmg.content.electricity.connection.cables.CableConnectorBlockEntity;
import com.simibubi.create.foundation.utility.CreateLang;
@@ -191,62 +193,31 @@ public interface IElectric {
}
default boolean makeMultimeterTooltip(List tooltip, boolean isPlayerSneaking) {
- CreateLang.translate("multimeter.header")
- .style(ChatFormatting.WHITE)
+ TFMGTexts.header("multimeter").style(ChatFormatting.WHITE)
.forGoggles(tooltip);
- if (getData().notEnoughtPower) {
- CreateLang.translate("multimeter.insufficient_power")
- .color(Color.RED)
- .forGoggles(tooltip, 1);
-
- }
+ if (getData().notEnoughtPower) TFMGTexts.Multimeter.notEnoughPower().forGoggles(tooltip, 1);
if (voltageGeneration() > 0) {
- CreateLang.translate("multimeter.power_generated", TFMGUtils.formatUnits(powerGeneration(), "W"))
- .color(0x852e4a)
- .forGoggles(tooltip, 1);
- CreateLang.translate("multimeter.voltage_generated", TFMGUtils.formatUnits(voltageGeneration(), "V"))
- .color(0x127799)
- .forGoggles(tooltip, 1);
- CreateLang.translate("multimeter.separator")
- .style(ChatFormatting.WHITE)
- .forGoggles(tooltip);
+ TFMGTexts.Multimeter.powerGenerated(powerGeneration()).forGoggles(tooltip, 1);
+ TFMGTexts.Multimeter.voltageGenerated(voltageGeneration()).forGoggles(tooltip, 1);
+ TFMGTexts.Multimeter.separator().forGoggles(tooltip);
}
- CreateLang.text(" R = " + TFMGUtils.formatUnits(voltageGeneration() > 0 ? getGeneratorResistance() : resistance(), "Ω"))
- .color(0xc98969)
- .forGoggles(tooltip, 1);
- CreateLang.text(" U = " + TFMGUtils.formatUnits(getData().getVoltage(), "V"))
- .color(0x4bbbcc)
- .forGoggles(tooltip, 1);
- CreateLang.text(" I = " + TFMGUtils.formatUnits(getCurrent(), "A"))
- .color(0x22a146)
- .forGoggles(tooltip, 1);
- CreateLang.text(" P = " + TFMGUtils.formatUnits(getPowerUsage(), "W"))
- .color(0xcc4b74)
- .forGoggles(tooltip, 1);
+ TFMGTexts.Multimeter.resistance(voltageGeneration() > 0 ? getGeneratorResistance() : resistance()).forGoggles(tooltip, 1);
+ TFMGTexts.Multimeter.voltage(getData().getVoltage()).forGoggles(tooltip, 1);
+ TFMGTexts.Multimeter.current(getCurrent()).forGoggles(tooltip, 1);
+ TFMGTexts.Multimeter.power(getPowerUsage()).forGoggles(tooltip, 1);
+
if (getData().group.id != -1) {
- CreateLang.translate("multimeter.separator")
- .style(ChatFormatting.WHITE)
- .forGoggles(tooltip);
- CreateLang.translate("multimeter.group", CreateLang.number(getData().group.id))
- .color(0xd8db27)
- .forGoggles(tooltip, 1);
+ TFMGTexts.Multimeter.separator().forGoggles(tooltip);
+ TFMGTexts.Multimeter.group(getData().group.id).forGoggles(tooltip, 1);
}
if (isPlayerSneaking) {
- CreateLang.translate("multimeter.separator")
- .style(ChatFormatting.WHITE)
- .forGoggles(tooltip);
- CreateLang.translate("multimeter.network.generation", TFMGUtils.formatUnits(getNetworkPowerGeneration(), "W"))
- .color(0xcc4b74)
- .forGoggles(tooltip, 1);
-
- CreateLang.translate("multimeter.network.consumption", TFMGUtils.formatUnits(getNetworkPowerUsage(), "W"))
- .color(0xcc4b74)
- .forGoggles(tooltip, 1);
-
+ TFMGTexts.Multimeter.separator().forGoggles(tooltip);
+ TFMGTexts.Multimeter.networkGeneration(getNetworkPowerGeneration()).forGoggles(tooltip, 1);
+ TFMGTexts.Multimeter.networkConsumption(getNetworkPowerUsage()).forGoggles(tooltip, 1);
}
return true;
diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/generators/creative_generator/CreativeGeneratorBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/electricity/generators/creative_generator/CreativeGeneratorBlockEntity.java
index 5f4db9e1..6598ede8 100644
--- a/src/main/java/com/drmangotea/tfmg/content/electricity/generators/creative_generator/CreativeGeneratorBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/electricity/generators/creative_generator/CreativeGeneratorBlockEntity.java
@@ -1,6 +1,7 @@
package com.drmangotea.tfmg.content.electricity.generators.creative_generator;
import com.drmangotea.tfmg.TFMG;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.content.electricity.base.ElectricBlockEntity;
import com.mojang.blaze3d.vertex.PoseStack;
import com.simibubi.create.Create;
@@ -30,7 +31,7 @@ public class CreativeGeneratorBlockEntity extends ElectricBlockEntity {
public void addBehaviours(List behaviours) {
super.addBehaviours(behaviours);
int max = 250;
- outputVoltage = new ScrollValueBehaviour(CreateLang.translateDirect("creative_generator.voltage_generation"),
+ outputVoltage = new ScrollValueBehaviour(TFMGLang.translateDirect("creative_generator.voltage_generation"),
this, new CreativeGeneratorValueBox());
outputVoltage.between(0, max);
outputVoltage.value = 50;
diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/lights/LampGenerator.java b/src/main/java/com/drmangotea/tfmg/content/electricity/lights/LampGenerator.java
index 591d2d40..749e30f3 100644
--- a/src/main/java/com/drmangotea/tfmg/content/electricity/lights/LampGenerator.java
+++ b/src/main/java/com/drmangotea/tfmg/content/electricity/lights/LampGenerator.java
@@ -15,47 +15,23 @@ public class LampGenerator extends SpecialBlockStateGen {
}
protected int getXRotation(BlockState state) {
- short value;
- switch ((Direction)state.getValue(WallMountBlock.FACING)) {
- case NORTH, EAST, WEST, SOUTH:
- value = 90;
- break;
- case DOWN:
- value = 180;
- break;
- case UP:
- value = 0;
- break;
- default:
- throw new IncompatibleClassChangeError();
- }
-
- return value;
+ return switch (state.getValue(WallMountBlock.FACING)) {
+ case NORTH, EAST, WEST, SOUTH -> 90;
+ case DOWN -> 180;
+ case UP -> 0;
+ };
}
protected int getYRotation(BlockState state) {
- short value;
- switch ((Direction)state.getValue(WallMountBlock.FACING)) {
- case NORTH, DOWN, UP:
- value = 0;
- break;
- case SOUTH:
- value = 180;
- break;
- case WEST:
- value = 270;
- break;
- case EAST:
- value = 90;
- break;
- default:
- throw new IncompatibleClassChangeError();
- }
-
- return value;
+ return switch (state.getValue(WallMountBlock.FACING)) {
+ case NORTH, DOWN, UP -> 0;
+ case SOUTH -> 180;
+ case WEST -> 270;
+ case EAST -> 90;
+ };
}
public ModelFile getModel(DataGenContext ctx, RegistrateBlockstateProvider prov, BlockState state) {
- return state.getValue(LightBulbBlock.LIGHT)>0 ? AssetLookup.partialBaseModel(ctx, prov, new String[]{"powered"}) : AssetLookup.partialBaseModel(ctx, prov, new String[0]);
+ return state.getValue(LightBulbBlock.LIGHT)>0 ? AssetLookup.partialBaseModel(ctx, prov, "powered") : AssetLookup.partialBaseModel(ctx, prov);
}
}
\ No newline at end of file
diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/lights/neon_tube/NeonTubeBlock.java b/src/main/java/com/drmangotea/tfmg/content/electricity/lights/neon_tube/NeonTubeBlock.java
index 9c80b97d..9a0e747e 100644
--- a/src/main/java/com/drmangotea/tfmg/content/electricity/lights/neon_tube/NeonTubeBlock.java
+++ b/src/main/java/com/drmangotea/tfmg/content/electricity/lights/neon_tube/NeonTubeBlock.java
@@ -1,11 +1,8 @@
package com.drmangotea.tfmg.content.electricity.lights.neon_tube;
-import com.drmangotea.tfmg.TFMG;
-import com.drmangotea.tfmg.base.blocks.TFMGDirectionalBlock;
import com.drmangotea.tfmg.content.electricity.base.IElectric;
import com.drmangotea.tfmg.content.electricity.connection.cables.SimplePos;
import com.drmangotea.tfmg.content.electricity.lights.LightBulbBlock;
-import com.drmangotea.tfmg.content.electricity.lights.LightBulbBlockEntity;
import com.drmangotea.tfmg.registry.TFMGBlockEntities;
import com.drmangotea.tfmg.registry.TFMGBlocks;
import com.mojang.serialization.MapCodec;
@@ -31,7 +28,6 @@ import net.minecraft.world.level.block.PipeBlock;
import net.minecraft.world.level.block.entity.BlockEntityType;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.StateDefinition;
-import net.minecraft.world.level.block.state.properties.BlockStateProperties;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import net.minecraft.world.phys.BlockHitResult;
import net.minecraft.world.phys.Vec3;
diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/measurement/MultimeterOverlayRenderer.java b/src/main/java/com/drmangotea/tfmg/content/electricity/measurement/MultimeterOverlayRenderer.java
index d6bcf1e6..e222e9d4 100644
--- a/src/main/java/com/drmangotea/tfmg/content/electricity/measurement/MultimeterOverlayRenderer.java
+++ b/src/main/java/com/drmangotea/tfmg/content/electricity/measurement/MultimeterOverlayRenderer.java
@@ -1,6 +1,7 @@
package com.drmangotea.tfmg.content.electricity.measurement;
import com.drmangotea.tfmg.TFMG;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.content.electricity.base.IElectric;
import com.drmangotea.tfmg.registry.TFMGItems;
import com.mojang.blaze3d.platform.Window;
@@ -94,7 +95,7 @@ public class MultimeterOverlayRenderer {
ItemStack item = TFMGItems.MULTIMETER.asStack();
List tooltip = new ArrayList<>();
- tooltip.add(CreateLang.number(1).component());
+ tooltip.add(TFMGLang.number(1).component());
((IElectric)be).makeMultimeterTooltip(tooltip,isShifting);
diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/measurement/VoltMeterBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/electricity/measurement/VoltMeterBlockEntity.java
index c47a5248..0e70c33f 100644
--- a/src/main/java/com/drmangotea/tfmg/content/electricity/measurement/VoltMeterBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/electricity/measurement/VoltMeterBlockEntity.java
@@ -2,6 +2,7 @@ package com.drmangotea.tfmg.content.electricity.measurement;
import com.drmangotea.tfmg.TFMG;
import com.drmangotea.tfmg.base.TFMGUtils;
+import com.drmangotea.tfmg.base.lang.TFMGTexts;
import com.drmangotea.tfmg.content.electricity.base.IElectric;
import com.drmangotea.tfmg.content.electricity.storage.AccumulatorBlockEntity;
import com.simibubi.create.api.equipment.goggles.IHaveGoggleInformation;
@@ -98,18 +99,10 @@ public class VoltMeterBlockEntity extends SmartBlockEntity implements IHaveGoggl
@Override
@SuppressWarnings("removal")
public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) {
+ TFMGTexts.Voltmeter.mode(mode.langKey).forGoggles(tooltip, 1);
- CreateLang.translate(mode.langKey)
- .style(ChatFormatting.DARK_GRAY)
- .forGoggles(tooltip, 1);
-
-
- CreateLang.text(TFMGUtils.formatUnits(value, mode.unit))
- .style(ChatFormatting.AQUA)
- .forGoggles(tooltip, 1);
- CreateLang.translate("goggles.voltmeter.range", mode.defaultRange)
- .style(ChatFormatting.DARK_AQUA)
- .forGoggles(tooltip, 1);
+ TFMGTexts.Voltmeter.value(value, mode.unit).forGoggles(tooltip, 1);
+ TFMGTexts.Voltmeter.range(mode.defaultRange).forGoggles(tooltip, 1);
return true;
}
diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/storage/AccumulatorBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/electricity/storage/AccumulatorBlockEntity.java
index cd1d2a01..e1bdf57b 100644
--- a/src/main/java/com/drmangotea/tfmg/content/electricity/storage/AccumulatorBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/electricity/storage/AccumulatorBlockEntity.java
@@ -1,6 +1,7 @@
package com.drmangotea.tfmg.content.electricity.storage;
import com.drmangotea.tfmg.base.TFMGUtils;
+import com.drmangotea.tfmg.base.lang.TFMGTexts;
import com.drmangotea.tfmg.config.TFMGConfigs;
import com.drmangotea.tfmg.content.electricity.base.ElectricBlockEntity;
import com.drmangotea.tfmg.content.electricity.base.IElectric;
@@ -94,15 +95,9 @@ public class AccumulatorBlockEntity extends ElectricBlockEntity {
return be.makeMultimeterTooltip(tooltip, isPlayerSneaking);
super.makeMultimeterTooltip(tooltip, isPlayerSneaking);
- CreateLang.translate("electricity.capacity", Component.literal(TFMGUtils.formatUnits(energy.getEnergyStored(), "FE")))
- .color(0x127799)
- .forGoggles(tooltip, 1);
- CreateLang.translate("electricity.charging_rate", CreateLang.number(getChargingRate()))
- .color(0x127799)
- .forGoggles(tooltip, 1);
- CreateLang.translate("electricity.max_capacity", CreateLang.number(getMaxCapacity()))
- .color(0x127799)
- .forGoggles(tooltip, 1);
+ TFMGTexts.electricalCapacity(energy.getEnergyStored()).forGoggles(tooltip, 1);
+ TFMGTexts.chargingRate(getChargingRate()).forGoggles(tooltip, 1);
+ TFMGTexts.electricalMaxCapacity(getMaxCapacity()).forGoggles(tooltip, 1);
return true;
}
diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/converter/ConverterBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/converter/ConverterBlockEntity.java
index 32432daf..6893ac3f 100644
--- a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/converter/ConverterBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/converter/ConverterBlockEntity.java
@@ -2,6 +2,8 @@ package com.drmangotea.tfmg.content.electricity.utilities.converter;
import com.drmangotea.tfmg.TFMG;
import com.drmangotea.tfmg.base.TFMGUtils;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
+import com.drmangotea.tfmg.base.lang.TFMGTexts;
import com.drmangotea.tfmg.config.TFMGConfigs;
import com.drmangotea.tfmg.content.electricity.base.ElectricBlockEntity;
import com.drmangotea.tfmg.content.electricity.base.IElectric;
@@ -74,7 +76,7 @@ public class ConverterBlockEntity extends ElectricBlockEntity {
public void addBehaviours(List behaviours) {
super.addBehaviours(behaviours);
int max = 250;
- voltageGenerated = new ScrollValueBehaviour(CreateLang.translateDirect("creative_generator.voltage_generation"),
+ voltageGenerated = new ScrollValueBehaviour(TFMGLang.translateDirect("creative_generator.voltage_generation"),
this, new ConverterValueBox());
voltageGenerated.between(1, max);
voltageGenerated.value = 20;
@@ -181,15 +183,9 @@ public class ConverterBlockEntity extends ElectricBlockEntity {
public boolean makeMultimeterTooltip(List tooltip, boolean isPlayerSneaking) {
super.makeMultimeterTooltip(tooltip, isPlayerSneaking);
- CreateLang.translate("electricity.capacity", Component.literal(TFMGUtils.formatUnits(energy.getEnergyStored(), "FE")))
- .color(0x127799)
- .forGoggles(tooltip, 1);
- CreateLang.translate("electricity.charging_rate", CreateLang.number(getChargingRate()))
- .color(0x127799)
- .forGoggles(tooltip, 1);
- CreateLang.translate("electricity.max_capacity", CreateLang.number(getMaxCapacity()))
- .color(0x127799)
- .forGoggles(tooltip, 1);
+ TFMGTexts.electricalCapacity(energy.getEnergyStored()).forGoggles(tooltip, 1);
+ TFMGTexts.chargingRate(getChargingRate()).forGoggles(tooltip, 1);
+ TFMGTexts.electricalMaxCapacity(getMaxCapacity()).forGoggles(tooltip, 1);
return true;
}
diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/polarizer/PolarizerBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/polarizer/PolarizerBlockEntity.java
index e6730b40..cea8530e 100644
--- a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/polarizer/PolarizerBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/polarizer/PolarizerBlockEntity.java
@@ -2,6 +2,8 @@ package com.drmangotea.tfmg.content.electricity.utilities.polarizer;
import com.drmangotea.tfmg.TFMG;
import com.drmangotea.tfmg.base.TFMGUtils;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
+import com.drmangotea.tfmg.base.lang.TFMGTexts;
import com.drmangotea.tfmg.config.TFMGConfigs;
import com.drmangotea.tfmg.content.electricity.base.ElectricBlockEntity;
import com.drmangotea.tfmg.recipes.PolarizingRecipe;
@@ -104,20 +106,12 @@ public class PolarizerBlockEntity extends ElectricBlockEntity implements IHaveGo
public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) {
if(getPowerUsage()<2000&&!inventory.isEmpty()){
- CreateLang.translate("goggles.polarizer.insufficient_power")
- .style(ChatFormatting.GRAY)
- .forGoggles(tooltip, 1);
+ TFMGTexts.Multimeter.notEnoughPower(2000).forGoggles(tooltip, 1);
return true;
}
+ TFMGTexts.header("polarizer").style(ChatFormatting.GRAY).forGoggles(tooltip, 1);
- CreateLang.translate("goggles.polarizer.header")
- .style(ChatFormatting.GRAY)
- .forGoggles(tooltip, 1);
-
- CreateLang.translate("goggles.polarizer.charge")
- .add(CreateLang.text(capacitorPercentage/2f+"%"))
- .style(ChatFormatting.DARK_AQUA)
- .forGoggles(tooltip);
+ TFMGTexts.Multimeter.charge(capacitorPercentage/2f).forGoggles(tooltip);
return true;
}
diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/potentiometer/PotentiometerBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/potentiometer/PotentiometerBlockEntity.java
index 402e7159..09edd12c 100644
--- a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/potentiometer/PotentiometerBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/potentiometer/PotentiometerBlockEntity.java
@@ -1,6 +1,7 @@
package com.drmangotea.tfmg.content.electricity.utilities.potentiometer;
import com.drmangotea.tfmg.base.blocks.TFMGHorizontalDirectionalBlock;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.content.electricity.utilities.diode.ElectricDiodeBlockEntity;
import com.mojang.blaze3d.vertex.PoseStack;
import com.simibubi.create.content.kinetics.base.DirectionalKineticBlock;
@@ -32,7 +33,7 @@ public class PotentiometerBlockEntity extends ElectricDiodeBlockEntity {
public void addBehaviours(List behaviours) {
super.addBehaviours(behaviours);
int max = 100;
- outputPercentage = new ScrollValueBehaviour(CreateLang.translateDirect("resistor.allowed_voltage"),
+ outputPercentage = new ScrollValueBehaviour(TFMGLang.translateDirect("resistor.allowed_voltage"),
this, new PotentiometerValueBox());
outputPercentage.between(0, max);
outputPercentage.value = 100;
diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/resistor/ResistorBlockItem.java b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/resistor/ResistorBlockItem.java
index 32a07ed9..8724c8e0 100644
--- a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/resistor/ResistorBlockItem.java
+++ b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/resistor/ResistorBlockItem.java
@@ -1,6 +1,7 @@
package com.drmangotea.tfmg.content.electricity.utilities.resistor;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.registry.TFMGDataComponents;
import com.simibubi.create.foundation.utility.CreateLang;
import net.minecraft.ChatFormatting;
@@ -25,7 +26,7 @@ public class ResistorBlockItem extends BlockItem {
public void appendHoverText(ItemStack stack, TooltipContext context, List tooltip, TooltipFlag flag) {
- tooltip.add(CreateLang.translateDirect("tooltip.resistor", stack.get(TFMGDataComponents.RESISTANCE) == null ? 0 : stack.get(TFMGDataComponents.RESISTANCE)).append("Ω")
+ tooltip.add(TFMGLang.translateDirect("tooltip.resistor", stack.get(TFMGDataComponents.RESISTANCE) == null ? 0 : stack.get(TFMGDataComponents.RESISTANCE)).append("Ω")
.withStyle(ChatFormatting.GREEN)
);
super.appendHoverText(stack, context, tooltip, flag);
diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/resistor/ResistorItem.java b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/resistor/ResistorItem.java
index 4fad3454..cfb6b23f 100644
--- a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/resistor/ResistorItem.java
+++ b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/resistor/ResistorItem.java
@@ -1,6 +1,7 @@
package com.drmangotea.tfmg.content.electricity.utilities.resistor;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.registry.TFMGDataComponents;
import com.simibubi.create.foundation.utility.CreateLang;
import net.minecraft.ChatFormatting;
@@ -25,7 +26,7 @@ public class ResistorItem extends Item {
@Override
@OnlyIn(Dist.CLIENT)
public void appendHoverText(ItemStack stack, TooltipContext context, List tooltip, TooltipFlag flag) {
- tooltip.add(CreateLang.translateDirect("tooltip.resistor", stack.get(TFMGDataComponents.RESISTANCE)==null?0:stack.get(TFMGDataComponents.RESISTANCE)).append("Ω")
+ tooltip.add(TFMGLang.translateDirect("tooltip.resistor", stack.get(TFMGDataComponents.RESISTANCE)==null?0:stack.get(TFMGDataComponents.RESISTANCE)).append("Ω")
.withStyle(ChatFormatting.GREEN)
);
super.appendHoverText(stack, context, tooltip, flag);
diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/traffic_light/TrafficLightBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/traffic_light/TrafficLightBlockEntity.java
index e42c968e..7866c123 100644
--- a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/traffic_light/TrafficLightBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/traffic_light/TrafficLightBlockEntity.java
@@ -1,5 +1,6 @@
package com.drmangotea.tfmg.content.electricity.utilities.traffic_light;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.content.electricity.base.ElectricBlockEntity;
import com.simibubi.create.Create;
import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour;
@@ -32,7 +33,7 @@ public class TrafficLightBlockEntity extends ElectricBlockEntity {
@Override
public void addBehaviours(List behaviours) {
super.addBehaviours(behaviours);
- timerLength = new TimerScrollBehaviour(CreateLang.translateDirect("traffic_light.timer"), this,
+ timerLength = new TimerScrollBehaviour(TFMGLang.translateDirect("traffic_light.timer"), this,
new TrafficLightScrollSlot()).between(180, 60 * 20 * 60);
timerLength.withFormatter(this::format);
timerLength.withCallback(value-> timer = value);
diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/transformer/ElectromagneticCoilItem.java b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/transformer/ElectromagneticCoilItem.java
index b797b387..c4436501 100644
--- a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/transformer/ElectromagneticCoilItem.java
+++ b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/transformer/ElectromagneticCoilItem.java
@@ -1,6 +1,7 @@
package com.drmangotea.tfmg.content.electricity.utilities.transformer;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.registry.TFMGDataComponents;
import com.simibubi.create.foundation.utility.CreateLang;
import net.minecraft.ChatFormatting;
@@ -23,7 +24,7 @@ public class ElectromagneticCoilItem extends Item {
@Override
@OnlyIn(Dist.CLIENT)
public void appendHoverText(ItemStack stack, TooltipContext context, List tooltip, TooltipFlag flag) {
- tooltip.add(CreateLang.translateDirect("tooltip.coils", stack.get(TFMGDataComponents.COIL_TURNS)==null?0:stack.get(TFMGDataComponents.COIL_TURNS))
+ tooltip.add(TFMGLang.translateDirect("tooltip.coils", stack.get(TFMGDataComponents.COIL_TURNS)==null?0:stack.get(TFMGDataComponents.COIL_TURNS))
.withStyle(ChatFormatting.GREEN)
);
super.appendHoverText(stack, context, tooltip, flag);
diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/transformer/TransformerBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/transformer/TransformerBlockEntity.java
index e9eb12b2..788a7db0 100644
--- a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/transformer/TransformerBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/transformer/TransformerBlockEntity.java
@@ -2,6 +2,7 @@ package com.drmangotea.tfmg.content.electricity.utilities.transformer;
import com.drmangotea.tfmg.TFMG;
import com.drmangotea.tfmg.base.blocks.TFMGHorizontalDirectionalBlock;
+import com.drmangotea.tfmg.base.lang.TFMGTexts;
import com.drmangotea.tfmg.content.electricity.base.IElectric;
import com.drmangotea.tfmg.content.electricity.base.UpdateInFrontPacket;
import com.drmangotea.tfmg.content.electricity.base.VoltageAlteringBlockEntity;
@@ -128,13 +129,8 @@ public class TransformerBlockEntity extends VoltageAlteringBlockEntity {
super.makeMultimeterTooltip(tooltip, isPlayerSneaking);
if(coilRatio!=0) {
- CreateLang.translate("multimeter.separator")
- .style(ChatFormatting.WHITE)
- .forGoggles(tooltip);
- CreateLang.translate("multimeter.transformer_ratio")
- .add(CreateLang.number(coilRatio))
- .color(0xc6e82c)
- .forGoggles(tooltip, 1);
+ TFMGTexts.Multimeter.separator().forGoggles(tooltip);
+ TFMGTexts.Multimeter.transformerRatio(coilRatio).forGoggles(tooltip, 1);
}
return true;
}
diff --git a/src/main/java/com/drmangotea/tfmg/content/engines/CylinderItem.java b/src/main/java/com/drmangotea/tfmg/content/engines/CylinderItem.java
index c0df6ea0..9a784fd1 100644
--- a/src/main/java/com/drmangotea/tfmg/content/engines/CylinderItem.java
+++ b/src/main/java/com/drmangotea/tfmg/content/engines/CylinderItem.java
@@ -1,6 +1,7 @@
package com.drmangotea.tfmg.content.engines;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.registry.TFMGDataComponents;
import com.simibubi.create.foundation.utility.CreateLang;
import net.minecraft.ChatFormatting;
@@ -37,13 +38,13 @@ public class CylinderItem extends Item {
if(fuels.isEmpty())
return;
- tooltip.add(CreateLang.translateDirect("tooltip.cylinder")
+ tooltip.add(TFMGLang.translateDirect("tooltip.cylinder")
.withStyle(ChatFormatting.GRAY));
for(String key : fuels.getAllKeys()) {
- MutableComponent component = CreateLang.text("- ").component()
+ MutableComponent component = TFMGLang.text("- ").component()
.append(Component.translatable(fuels.getString(key)))
.withStyle(ChatFormatting.AQUA);
tooltip.add(component);
diff --git a/src/main/java/com/drmangotea/tfmg/content/engines/FluidContainingItem.java b/src/main/java/com/drmangotea/tfmg/content/engines/FluidContainingItem.java
index 58e583bb..ff2e9c6a 100644
--- a/src/main/java/com/drmangotea/tfmg/content/engines/FluidContainingItem.java
+++ b/src/main/java/com/drmangotea/tfmg/content/engines/FluidContainingItem.java
@@ -1,5 +1,7 @@
package com.drmangotea.tfmg.content.engines;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
+import com.drmangotea.tfmg.content.items.weapons.flamethrover.FlamethrowerFuel;
import com.drmangotea.tfmg.content.items.weapons.flamethrover.FlamethrowerItem;
import com.drmangotea.tfmg.registry.TFMGDataComponents;
import com.drmangotea.tfmg.registry.TFMGItems;
@@ -39,13 +41,35 @@ public class FluidContainingItem extends Item {
@Override
public void appendHoverText(ItemStack stack, TooltipContext context, List tooltipComponents, TooltipFlag tooltipFlag) {
- tooltipComponents.add(CreateLang.translateDirect("tooltip.fluid_item", stack.get(TFMGDataComponents.AMOUNT)==null?0:stack.get(TFMGDataComponents.AMOUNT))
+ tooltipComponents.add(TFMGLang.translateDirect("tooltip.fluid_item", stack.getOrDefault(TFMGDataComponents.AMOUNT, 0))
.withStyle(ChatFormatting.GREEN)
);
super.appendHoverText(stack, context, tooltipComponents, tooltipFlag);
}
+ @Override
+ public boolean isBarVisible(ItemStack stack) {
+ if(!stack.has(TFMGDataComponents.AMOUNT))
+ return false;
+ return stack.getOrDefault(TFMGDataComponents.AMOUNT, 0) > 0;
+ }
+
+ @Override
+ public int getBarColor(ItemStack stack) {
+ if(!stack.has(TFMGDataComponents.AMOUNT))
+ stack.set(TFMGDataComponents.AMOUNT, 0);
+
+ return 0xC7C4A4;
+ }
+
+ @Override
+ public int getBarWidth(ItemStack stack) {
+ if(!stack.has(TFMGDataComponents.AMOUNT))
+ stack.set(TFMGDataComponents.AMOUNT, 0);
+
+ return Math.round( 13* ((float)stack.getOrDefault(TFMGDataComponents.AMOUNT, 0)/(float)CAPACITY));
+ }
@Override
public InteractionResult useOn(UseOnContext context) {
@@ -55,7 +79,7 @@ public class FluidContainingItem extends Item {
ItemStack stack = context.getItemInHand();
- if (context.getPlayer().isShiftKeyDown()&&stack.get(TFMGDataComponents.AMOUNT)>0) {
+ if (context.getPlayer().isShiftKeyDown()&&stack.getOrDefault(TFMGDataComponents.AMOUNT, 0) > 0) {
level.playSound(null, pos, SoundEvents.BUCKET_FILL, SoundSource.BLOCKS, 1f, 1f);
stack.set(TFMGDataComponents.AMOUNT, 0);
@@ -69,12 +93,12 @@ public class FluidContainingItem extends Item {
if (be.getFluid(0).getFluid().isSame(fluid.get())) {
- int toDrain = Math.min(CAPACITY - stack.get(TFMGDataComponents.AMOUNT), be.getFluid(0).getAmount());
+ int toDrain = Math.min(CAPACITY - stack.getOrDefault(TFMGDataComponents.AMOUNT, 0), be.getFluid(0).getAmount());
if(toDrain == 0||context.getPlayer().getCooldowns().isOnCooldown(stack.getItem()))
return InteractionResult.PASS;
level.playSound(null, be.getBlockPos(), SoundEvents.BUCKET_FILL, SoundSource.BLOCKS, 1f, 1f);
be.getTankInventory().drain(toDrain, IFluidHandler.FluidAction.EXECUTE);
- stack.set(TFMGDataComponents.AMOUNT, stack.get(TFMGDataComponents.AMOUNT) + toDrain);
+ stack.set(TFMGDataComponents.AMOUNT, stack.getOrDefault(TFMGDataComponents.AMOUNT, 0) + toDrain);
context.getPlayer().getCooldowns().addCooldown(stack.getItem(), 20);
diff --git a/src/main/java/com/drmangotea/tfmg/content/engines/engine_controller/EngineControllerScreen.java b/src/main/java/com/drmangotea/tfmg/content/engines/engine_controller/EngineControllerScreen.java
index 1f341a03..6e082d5c 100644
--- a/src/main/java/com/drmangotea/tfmg/content/engines/engine_controller/EngineControllerScreen.java
+++ b/src/main/java/com/drmangotea/tfmg/content/engines/engine_controller/EngineControllerScreen.java
@@ -1,5 +1,6 @@
package com.drmangotea.tfmg.content.engines.engine_controller;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.registry.TFMGGuiTextures;
import com.google.common.collect.ImmutableList;
import com.simibubi.create.foundation.gui.AllGuiTextures;
@@ -103,7 +104,7 @@ public class EngineControllerScreen extends AbstractSimiContainerScreen addToTooltip(List list, int slot) {
if (slot < 0 || slot >= 12)
return list;
- list.add(CreateLang.translateDirect("engine_controller0.frequency_slot_" + ((slot % 2) + 1), ControlsUtil.getControls()
+ list.add(TFMGLang.translateDirect("engine_controller0.frequency_slot_" + ((slot % 2) + 1), ControlsUtil.getControls()
.get(slot / 2)
.getTranslatedKeyMessage()
.getString())
diff --git a/src/main/java/com/drmangotea/tfmg/content/engines/types/AbstractSmallEngineBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/engines/types/AbstractSmallEngineBlockEntity.java
index 75a67309..d47130a0 100644
--- a/src/main/java/com/drmangotea/tfmg/content/engines/types/AbstractSmallEngineBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/engines/types/AbstractSmallEngineBlockEntity.java
@@ -1,6 +1,8 @@
package com.drmangotea.tfmg.content.engines.types;
import com.drmangotea.tfmg.base.TFMGUtils;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
+import com.drmangotea.tfmg.base.lang.TFMGTexts;
import com.drmangotea.tfmg.content.engines.base.AbstractEngineBlockEntity;
import com.drmangotea.tfmg.content.engines.base.EngineBlock;
import com.drmangotea.tfmg.content.engines.base.EngineComponentsInventory;
@@ -535,22 +537,21 @@ public abstract class AbstractSmallEngineBlockEntity extends AbstractEngineBlock
public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) {
if (controller.asLong() == getBlockPos().asLong())
- CreateLang.translate("engine.controller.header").forGoggles(tooltip);
+ TFMGTexts.header("engine_controller").forGoggles(tooltip);
- CreateLang.translate("engine.shift", CreateLang.translate(shift.langKey)).forGoggles(tooltip);
- CreateLang.translate("engine.speed_efficiency", getSpeedEfficiency()).forGoggles(tooltip);
- CreateLang.translate("engine.efficiency", efficiencyModifier()).forGoggles(tooltip);
- CreateLang.translate("engine.fuel_consumption", getFuelConsumption()).forGoggles(tooltip);
- CreateLang.translate("engine.rpm", rpm).forGoggles(tooltip);
- CreateLang.translate("engine.length", engineLength()).forGoggles(tooltip);
- CreateLang.translate("engine.torque", torque).forGoggles(tooltip);
- CreateLang.translate("engine.injection_rate", fuelInjectionRate).forGoggles(tooltip);
- CreateLang.translate("engine.signal ", highestSignal).forGoggles(tooltip);
+ TFMGTexts.Engine.shift(shift.langKey).forGoggles(tooltip);
+ TFMGTexts.Engine.speedEfficiency(getSpeedEfficiency()).forGoggles(tooltip);
+ TFMGTexts.Engine.efficiency(efficiencyModifier()).forGoggles(tooltip);
+ TFMGTexts.Engine.fuelConsumption(getFuelConsumption()).forGoggles(tooltip);
+ TFMGTexts.Engine.rpm(rpm).forGoggles(tooltip);
+ TFMGTexts.Engine.length(engineLength()).forGoggles(tooltip);
+ TFMGTexts.Engine.torque(torque).forGoggles(tooltip);
+ TFMGTexts.Engine.injectionRate(fuelInjectionRate).forGoggles(tooltip);
+ TFMGTexts.Engine.signal(highestSignal).forGoggles(tooltip);
-
- CreateLang.number(engineNumber).style(ChatFormatting.DARK_GREEN).forGoggles(tooltip);
+ TFMGLang.number(engineNumber).style(ChatFormatting.DARK_GREEN).forGoggles(tooltip);
if (isController() && !nextComponent().isEmpty())
- CreateLang.text(nextComponent().getItems()[0].getDisplayName().getString()).forGoggles(tooltip);
+ TFMGLang.text(nextComponent().getItems()[0].getDisplayName().getString()).forGoggles(tooltip);
TFMGUtils.createFluidTooltip(this, tooltip);
diff --git a/src/main/java/com/drmangotea/tfmg/content/engines/types/large_engine/LargeEngineBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/engines/types/large_engine/LargeEngineBlockEntity.java
index 33d047b7..975f3a93 100644
--- a/src/main/java/com/drmangotea/tfmg/content/engines/types/large_engine/LargeEngineBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/engines/types/large_engine/LargeEngineBlockEntity.java
@@ -2,6 +2,7 @@ package com.drmangotea.tfmg.content.engines.types.large_engine;
import com.drmangotea.tfmg.base.TFMGUtils;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.config.TFMGConfigs;
import com.drmangotea.tfmg.content.engines.base.AbstractEngineBlockEntity;
import com.drmangotea.tfmg.content.engines.base.EngineFluidTank;
@@ -242,7 +243,7 @@ public class LargeEngineBlockEntity extends AbstractEngineBlockEntity {
if(getShaft() == null)
return false;
- CreateLang.text("").style(ChatFormatting.GRAY).forGoggles(tooltip);
+ TFMGLang.text("").style(ChatFormatting.GRAY).forGoggles(tooltip);
TFMGUtils.createFluidTooltip(this,tooltip);
diff --git a/src/main/java/com/drmangotea/tfmg/content/engines/types/regular_engine/RegularEngineBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/engines/types/regular_engine/RegularEngineBlockEntity.java
index 540629d9..51e81a64 100644
--- a/src/main/java/com/drmangotea/tfmg/content/engines/types/regular_engine/RegularEngineBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/engines/types/regular_engine/RegularEngineBlockEntity.java
@@ -2,6 +2,8 @@ package com.drmangotea.tfmg.content.engines.types.regular_engine;
import com.drmangotea.tfmg.TFMG;
import com.drmangotea.tfmg.base.TFMGUtils;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
+import com.drmangotea.tfmg.base.lang.TFMGTexts;
import com.drmangotea.tfmg.config.TFMGConfigs;
import com.drmangotea.tfmg.content.engines.types.AbstractSmallEngineBlockEntity;
import com.drmangotea.tfmg.content.engines.types.turbine_engine.TurbineEngineBlockEntity;
@@ -373,60 +375,33 @@ public class RegularEngineBlockEntity extends AbstractSmallEngineBlockEntity {
@Override
public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) {
-
if(!isController())
return getControllerBE().addToGoggleTooltip(tooltip,isPlayerSneaking);
-
-
- CreateLang.translate("goggles.engine.header")
+ TFMGTexts.header("engine")
.style(ChatFormatting.GRAY)
.forGoggles(tooltip);
if(nextComponent()!= Ingredient.EMPTY){
- CreateLang.translate("goggles.engine.unfinished")
- .color(0xde5050)
- .forGoggles(tooltip);
- CreateLang.translate("goggles.engine.next_component")
- .add(Component.empty().append(nextComponent().getItems()[0].getHoverName()))
- .color(0xfff240)
- .forGoggles(tooltip);
+ TFMGTexts.Engine.unfinished().forGoggles(tooltip);
+ TFMGTexts.Engine.nextComponent(nextComponent().getItems()[0]).forGoggles(tooltip);
return true;
}
if(!hasAllPistons()){
-
- CreateLang.translate(this instanceof TurbineEngineBlockEntity ? "goggles.engine.turbines_missing" : "goggles.engine.pistons_missing")
- .color(0xde5050)
- .forGoggles(tooltip);
-
+ TFMGTexts.Engine.lastRequirement(this instanceof TurbineEngineBlockEntity ? "turbines" : "pistons").forGoggles(tooltip);
return true;
}
-
- CreateLang.translate("goggles.engine.type", CreateLang.translate(type.langKey))
- .color(0xfcad03)
- .forGoggles(tooltip, 1);
- CreateLang.translate("goggles.engine.rpm", (int)rpm)
- .color(0xa36f00)
- .forGoggles(tooltip, 1);
- CreateLang.translate("goggles.engine.signal", highestSignal)
- .color(0xfcad03)
- .forGoggles(tooltip, 1);
- CreateLang.translate("goggles.engine.torque", (int)torque)
- .color(0xa36f00)
- .forGoggles(tooltip, 1);
- CreateLang.translate("goggles.engine.fuel_consumption", getFuelConsumption()/1.5f)
- .color(0xfcad03)
- .forGoggles(tooltip, 1);
+ TFMGTexts.Engine.type(type.langKey).forGoggles(tooltip, 1);
+ TFMGTexts.Engine.rpm(rpm).forGoggles(tooltip, 1);
+ TFMGTexts.Engine.signal(highestSignal).forGoggles(tooltip, 1);
+ TFMGTexts.Engine.torque(torque).forGoggles(tooltip, 1);
+ TFMGTexts.Engine.fuelConsumption(getFuelConsumption()/1.5f).forGoggles(tooltip, 1);
if(oil>0){
- CreateLang.translate("goggles.engine.oil", CreateLang.number(oil))
- .color(0xf5dd42)
- .forGoggles(tooltip);
+ TFMGTexts.Engine.oil(oil).forGoggles(tooltip);
}
if(coolingFluid>0){
- CreateLang.translate("goggles.engine.cooling_fluid", CreateLang.number(coolingFluid))
- .color(0x51bdb9)
- .forGoggles(tooltip);
+ TFMGTexts.Engine.coolingFluid(coolingFluid).forGoggles(tooltip);
}
TFMGUtils.createFluidTooltip(this,tooltip);
diff --git a/src/main/java/com/drmangotea/tfmg/content/engines/upgrades/TransmissionItem.java b/src/main/java/com/drmangotea/tfmg/content/engines/upgrades/TransmissionItem.java
index d625a86e..61668981 100644
--- a/src/main/java/com/drmangotea/tfmg/content/engines/upgrades/TransmissionItem.java
+++ b/src/main/java/com/drmangotea/tfmg/content/engines/upgrades/TransmissionItem.java
@@ -1,5 +1,6 @@
package com.drmangotea.tfmg.content.engines.upgrades;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.content.engines.engine_controller.EngineControllerBlockEntity;
import com.drmangotea.tfmg.registry.TFMGDataComponents;
import com.simibubi.create.foundation.utility.CreateLang;
@@ -62,7 +63,7 @@ public class TransmissionItem extends Item {
BlockPos pos = BlockPos.of(stack.get(TFMGDataComponents.POSITION));
if(pos.asLong()!=0)
- tooltip.add(CreateLang.text("" + pos.getX() + " " + pos.getY() + " " + pos.getZ()).component()
+ tooltip.add(TFMGLang.text(pos.getX() + " " + pos.getY() + " " + pos.getZ()).component()
.withStyle(ChatFormatting.AQUA)
);
super.appendHoverText(stack, context, tooltip, flag);
diff --git a/src/main/java/com/drmangotea/tfmg/content/items/weapons/flamethrover/FlamethrowerFuel.java b/src/main/java/com/drmangotea/tfmg/content/items/weapons/flamethrover/FlamethrowerFuel.java
index f53b40b8..160891a9 100644
--- a/src/main/java/com/drmangotea/tfmg/content/items/weapons/flamethrover/FlamethrowerFuel.java
+++ b/src/main/java/com/drmangotea/tfmg/content/items/weapons/flamethrover/FlamethrowerFuel.java
@@ -1,5 +1,6 @@
package com.drmangotea.tfmg.content.items.weapons.flamethrover;
+import com.drmangotea.tfmg.TFMG;
import com.drmangotea.tfmg.TFMGRegistries;
import com.drmangotea.tfmg.registry.TFMGFlamethrowerFuelTypes;
import com.mojang.serialization.Codec;
@@ -63,6 +64,12 @@ public record FlamethrowerFuel(@Nullable ResourceKey fuelT
return createForType(registryAccess, stack.getFluid(), stack.getAmount());
}
+ public static FlamethrowerFuel createForLegacy(RegistryAccess registryAccess, String fuelType, int amount) {
+ ResourceKey key = ResourceKey.create(TFMGRegistries.FLAMETHROWER_FUEL_TYPE, TFMG.asResource(fuelType));
+ Optional> type = registryAccess.lookupOrThrow(TFMGRegistries.FLAMETHROWER_FUEL_TYPE).get(key);
+ return type.map(typeReference -> new FlamethrowerFuel(typeReference.getKey(), amount, type.get().value().color())).orElse(EMPTY);
+ }
+
public boolean isEmpty() {
if (fuelType == TFMGFlamethrowerFuelTypes.FALLBACK) {
return true;
diff --git a/src/main/java/com/drmangotea/tfmg/content/items/weapons/flamethrover/FlamethrowerItem.java b/src/main/java/com/drmangotea/tfmg/content/items/weapons/flamethrover/FlamethrowerItem.java
index 0cf5a2ab..722c827f 100644
--- a/src/main/java/com/drmangotea/tfmg/content/items/weapons/flamethrover/FlamethrowerItem.java
+++ b/src/main/java/com/drmangotea/tfmg/content/items/weapons/flamethrover/FlamethrowerItem.java
@@ -1,7 +1,9 @@
package com.drmangotea.tfmg.content.items.weapons.flamethrover;
+import com.drmangotea.tfmg.TFMG;
import com.drmangotea.tfmg.TFMGClient;
import com.drmangotea.tfmg.TFMGRegistries;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.base.spark.Spark;
import com.drmangotea.tfmg.registry.TFMGDataComponents;
import com.drmangotea.tfmg.registry.TFMGEntityTypes;
@@ -60,25 +62,30 @@ public class FlamethrowerItem extends Item implements CustomArmPoseItem {
public void inventoryTick(ItemStack stack, Level level, Entity entity, int slotId, boolean isSelected) {
super.inventoryTick(stack, level, entity, slotId, isSelected);
- if(!stack.has(TFMGDataComponents.FLAMETHROWER_FUEL))
- stack.set(TFMGDataComponents.FLAMETHROWER_FUEL, FlamethrowerFuel.EMPTY);
+ if (remapOldComponents(stack, level.registryAccess())) {
+ TFMG.LOGGER.info("[TFMG Remapper] Remapped old Flamethrower components");
+ } else {
+ if(!stack.has(TFMGDataComponents.FLAMETHROWER)) {
+ stack.set(TFMGDataComponents.FLAMETHROWER, FlamethrowerFuel.EMPTY);
+ }
+ }
}
public void onUseTick(Level level, LivingEntity entity, ItemStack stack, int time) {
- if (stack.getOrDefault(TFMGDataComponents.FLAMETHROWER_FUEL, FlamethrowerFuel.EMPTY) == FlamethrowerFuel.EMPTY)
+ if (stack.getOrDefault(TFMGDataComponents.FLAMETHROWER, FlamethrowerFuel.EMPTY) == FlamethrowerFuel.EMPTY)
return;
- int fuelAmount = stack.getOrDefault(TFMGDataComponents.FLAMETHROWER_FUEL, FlamethrowerFuel.EMPTY).amount();
+ int fuelAmount = stack.getOrDefault(TFMGDataComponents.FLAMETHROWER, FlamethrowerFuel.EMPTY).amount();
if(fuelAmount==0) {
- stack.set(TFMGDataComponents.FLAMETHROWER_FUEL, FlamethrowerFuel.EMPTY);
+ stack.set(TFMGDataComponents.FLAMETHROWER, FlamethrowerFuel.EMPTY);
entity.stopUsingItem();
return;
}
level.playSound(null, entity.getX(), entity.getY(), entity.getZ(), SoundEvents.FIRE_EXTINGUISH, SoundSource.NEUTRAL, 0.1F, 0.04F);
- FlamethrowerFuel fuel = stack.getOrDefault(TFMGDataComponents.FLAMETHROWER_FUEL, FlamethrowerFuel.EMPTY);
+ FlamethrowerFuel fuel = stack.getOrDefault(TFMGDataComponents.FLAMETHROWER, FlamethrowerFuel.EMPTY);
FlamethrowerFuelType fuelType = getFuel(level.registryAccess(), stack);
Vec3 barrelPos = getGunBarrelVec(entity, entity.getUsedItemHand() == InteractionHand.MAIN_HAND,
@@ -95,9 +102,9 @@ public class FlamethrowerItem extends Item implements CustomArmPoseItem {
}
}
int fuelConsumed = level.random.nextIntBetweenInclusive(amountToFire / 2, amountToFire);
- stack.set(TFMGDataComponents.FLAMETHROWER_FUEL, fuel.decrement(fuelConsumed));
+ stack.set(TFMGDataComponents.FLAMETHROWER, fuel.decrement(fuelConsumed));
} else {
- stack.set(TFMGDataComponents.FLAMETHROWER_FUEL, FlamethrowerFuel.EMPTY);
+ stack.set(TFMGDataComponents.FLAMETHROWER, FlamethrowerFuel.EMPTY);
entity.stopUsingItem();
}
}
@@ -116,30 +123,33 @@ public class FlamethrowerItem extends Item implements CustomArmPoseItem {
@Override
public boolean isBarVisible(ItemStack stack) {
- if(!stack.has(TFMGDataComponents.FLAMETHROWER_FUEL))
+ if(!stack.has(TFMGDataComponents.FLAMETHROWER))
return false;
- return !stack.getOrDefault(TFMGDataComponents.FLAMETHROWER_FUEL, FlamethrowerFuel.EMPTY).isEmpty();
+ return !stack.getOrDefault(TFMGDataComponents.FLAMETHROWER, FlamethrowerFuel.EMPTY).isEmpty();
}
@Override
public int getBarColor(ItemStack stack) {
- if(!stack.has(TFMGDataComponents.FLAMETHROWER_FUEL))
- stack.set(TFMGDataComponents.FLAMETHROWER_FUEL, FlamethrowerFuel.EMPTY);
+ if(!stack.has(TFMGDataComponents.FLAMETHROWER))
+ stack.set(TFMGDataComponents.FLAMETHROWER, FlamethrowerFuel.EMPTY);
- return stack.getOrDefault(TFMGDataComponents.FLAMETHROWER_FUEL, FlamethrowerFuel.EMPTY).color();
+ return stack.getOrDefault(TFMGDataComponents.FLAMETHROWER, FlamethrowerFuel.EMPTY).color();
}
@Override
public int getBarWidth(ItemStack stack) {
- if(!stack.has(TFMGDataComponents.FLAMETHROWER_FUEL))
- stack.set(TFMGDataComponents.FLAMETHROWER_FUEL, FlamethrowerFuel.EMPTY);
+ if(!stack.has(TFMGDataComponents.FLAMETHROWER))
+ stack.set(TFMGDataComponents.FLAMETHROWER, FlamethrowerFuel.EMPTY);
- return Math.round( 13* ((float)stack.getOrDefault(TFMGDataComponents.FLAMETHROWER_FUEL, FlamethrowerFuel.EMPTY).amount()/(float)FUEL_CAPACITY));
+ return Math.round( 13* ((float)stack.getOrDefault(TFMGDataComponents.FLAMETHROWER, FlamethrowerFuel.EMPTY).amount()/(float)FUEL_CAPACITY));
}
public InteractionResultHolder use(Level level, Player player, InteractionHand hand) {
- player.startUsingItem(hand);
+ ItemStack stack = player.getItemInHand(hand);
+ if (!stack.getOrDefault(TFMGDataComponents.FLAMETHROWER, FlamethrowerFuel.EMPTY).isEmpty()) {
+ player.startUsingItem(hand);
+ }
if (level.isClientSide) {
TFMGClient.FLAMETHROWER_RENDER_HANDLER.dontAnimateItem(hand);
@@ -162,9 +172,9 @@ public class FlamethrowerItem extends Item implements CustomArmPoseItem {
BlockEntity blockEntity = level.getBlockEntity(pos);
- if (!stack.has(TFMGDataComponents.FLAMETHROWER_FUEL)) stack.set(TFMGDataComponents.FLAMETHROWER_FUEL, FlamethrowerFuel.EMPTY);
+ if (!stack.has(TFMGDataComponents.FLAMETHROWER)) stack.set(TFMGDataComponents.FLAMETHROWER, FlamethrowerFuel.EMPTY);
- FlamethrowerFuel existingFuel = stack.getOrDefault(TFMGDataComponents.FLAMETHROWER_FUEL, FlamethrowerFuel.EMPTY);
+ FlamethrowerFuel existingFuel = stack.getOrDefault(TFMGDataComponents.FLAMETHROWER, FlamethrowerFuel.EMPTY);
int containedFuel = existingFuel.amount();
@Nullable ResourceKey fuelType = existingFuel.fuelType();
@@ -184,13 +194,13 @@ public class FlamethrowerItem extends Item implements CustomArmPoseItem {
if (fuel == FlamethrowerFuel.EMPTY) continue;
if (fuelType != TFMGFlamethrowerFuelTypes.FALLBACK) {
if (fuelType.equals(fuel.fuelType())) {
- stack.set(TFMGDataComponents.FLAMETHROWER_FUEL, existingFuel.increment(toDrain, FUEL_CAPACITY));
+ stack.set(TFMGDataComponents.FLAMETHROWER, existingFuel.increment(toDrain, FUEL_CAPACITY));
capability.drain(stackToDrain, IFluidHandler.FluidAction.EXECUTE);
context.getPlayer().getCooldowns().addCooldown(stack.getItem(), 20);
foundFluid = true;
}
} else {
- stack.set(TFMGDataComponents.FLAMETHROWER_FUEL, fuel);
+ stack.set(TFMGDataComponents.FLAMETHROWER, fuel);
capability.drain(stackToDrain, IFluidHandler.FluidAction.EXECUTE);
context.getPlayer().getCooldowns().addCooldown(stack.getItem(), 20);
foundFluid = true;
@@ -205,14 +215,14 @@ public class FlamethrowerItem extends Item implements CustomArmPoseItem {
@Nullable
public static FlamethrowerFuelType getFuel(RegistryAccess registryAccess, ItemStack heldStack) {
- var type = heldStack.getOrDefault(TFMGDataComponents.FLAMETHROWER_FUEL, FlamethrowerFuel.EMPTY).getFuelType(registryAccess);
+ var type = heldStack.getOrDefault(TFMGDataComponents.FLAMETHROWER, FlamethrowerFuel.EMPTY).getFuelType(registryAccess);
return type.orElse(registryAccess.registryOrThrow(TFMGRegistries.FLAMETHROWER_FUEL_TYPE).get(TFMGFlamethrowerFuelTypes.FALLBACK));
}
@Override
@OnlyIn(Dist.CLIENT)
public void appendHoverText(ItemStack stack, TooltipContext context, List tooltip, TooltipFlag flag) {
- if (!stack.has(TFMGDataComponents.FLAMETHROWER_FUEL) || stack.get(TFMGDataComponents.FLAMETHROWER_FUEL) == FlamethrowerFuel.EMPTY) {
+ if (!stack.has(TFMGDataComponents.FLAMETHROWER) || stack.get(TFMGDataComponents.FLAMETHROWER) == FlamethrowerFuel.EMPTY) {
super.appendHoverText(stack, context, tooltip, flag);
return;
}
@@ -223,7 +233,7 @@ public class FlamethrowerItem extends Item implements CustomArmPoseItem {
}
FlamethrowerFuelType fallback = player.registryAccess().registryOrThrow(TFMGRegistries.FLAMETHROWER_FUEL_TYPE).get(TFMGFlamethrowerFuelTypes.FALLBACK);
FlamethrowerFuelType fuelType = getFuel(player.registryAccess(), stack);
- FlamethrowerFuel fuel = stack.getOrDefault(TFMGDataComponents.FLAMETHROWER_FUEL, FlamethrowerFuel.EMPTY);
+ FlamethrowerFuel fuel = stack.getOrDefault(TFMGDataComponents.FLAMETHROWER, FlamethrowerFuel.EMPTY);
if (fuelType == fallback || !fuel.hasFuel()) {
super.appendHoverText(stack, context, tooltip, flag);
@@ -262,32 +272,45 @@ public class FlamethrowerItem extends Item implements CustomArmPoseItem {
spread = spread.withStyle(spreadF > 20 ? green : darkGreen);
speed = speed.withStyle(speedF > 1 ? green : darkGreen);
amount = amount.withStyle(amountF > 10 ? green : darkGreen);
- fuelCapacity = fuelCapacity.withStyle(stack.get(TFMGDataComponents.FLAMETHROWER_FUEL).amount() == 0 ? red : green);
+ fuelCapacity = fuelCapacity.withStyle(stack.get(TFMGDataComponents.FLAMETHROWER).amount() == 0 ? red : green);
tooltip.add(spacing.plainCopy()
- .append(CreateLang.translateDirect(_capacity, fuelCapacity)
+ .append(TFMGLang.translateDirect(_capacity, fuelCapacity)
.withStyle(darkGreen)));
tooltip.add(spacing.plainCopy()
- .append(CreateLang.translateDirect(_spread, spread)
+ .append(TFMGLang.translateDirect(_spread, spread)
.withStyle(darkGreen)));
tooltip.add(spacing.plainCopy()
- .append(CreateLang.translateDirect(_speed, speed)
+ .append(TFMGLang.translateDirect(_speed, speed)
.withStyle(darkGreen)));
tooltip.add(spacing.plainCopy()
- .append(CreateLang.translateDirect(_amount, amount)
+ .append(TFMGLang.translateDirect(_amount, amount)
.withStyle(darkGreen)));
if (coldF) {
tooltip.add(spacing.plainCopy()
- .append(CreateLang.translateDirect(_cold)
+ .append(TFMGLang.translateDirect(_cold)
.withStyle(darkGreen)));
} else if (hellfireF) {
tooltip.add(spacing.plainCopy()
- .append(CreateLang.translateDirect(_hellfire)
+ .append(TFMGLang.translateDirect(_hellfire)
.withStyle(darkGreen)));
}
}
+ private boolean remapOldComponents(ItemStack stack, RegistryAccess registryAccess) {
+ if (stack.has(TFMGDataComponents.FLAMETHROWER_FUEL) && stack.has(TFMGDataComponents.AMOUNT)) {
+ int fuelAmount = stack.getOrDefault(TFMGDataComponents.AMOUNT, 0);
+ String fuelType = stack.getOrDefault(TFMGDataComponents.FLAMETHROWER_FUEL, "fallback");
+ if (fuelType.isEmpty()) fuelType = "fallback";
+ FlamethrowerFuel fuel = FlamethrowerFuel.createForLegacy(registryAccess, fuelType, fuelAmount);
+ stack.set(TFMGDataComponents.FLAMETHROWER, fuel);
+ stack.remove(TFMGDataComponents.FLAMETHROWER_FUEL); stack.remove(TFMGDataComponents.AMOUNT);
+ return true;
+ }
+ return false;
+ }
+
@Override
public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStack, boolean slotChanged) {
return slotChanged || newStack.getItem() != oldStack.getItem();
diff --git a/src/main/java/com/drmangotea/tfmg/content/items/weapons/quad_potato_cannon/QuadPotatoCannonItem.java b/src/main/java/com/drmangotea/tfmg/content/items/weapons/quad_potato_cannon/QuadPotatoCannonItem.java
index dabbe14b..866dd1f5 100644
--- a/src/main/java/com/drmangotea/tfmg/content/items/weapons/quad_potato_cannon/QuadPotatoCannonItem.java
+++ b/src/main/java/com/drmangotea/tfmg/content/items/weapons/quad_potato_cannon/QuadPotatoCannonItem.java
@@ -5,6 +5,7 @@ package com.drmangotea.tfmg.content.items.weapons.quad_potato_cannon;
import com.drmangotea.tfmg.TFMGClient;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.simibubi.create.AllEnchantments;
import com.simibubi.create.AllEntityTypes;
import com.simibubi.create.api.equipment.potatoCannon.PotatoCannonProjectileType;
@@ -211,13 +212,13 @@ public class QuadPotatoCannonItem extends ProjectileWeaponItem implements Custom
reloadTicks = reloadTicks.withStyle(darkGreen);
tooltip.add(spacing.plainCopy()
- .append(CreateLang.translateDirect(_attack, damage)
+ .append(TFMGLang.translateDirect(_attack, damage)
.withStyle(darkGreen)));
tooltip.add(spacing.plainCopy()
- .append(CreateLang.translateDirect(_reload, reloadTicks)
+ .append(TFMGLang.translateDirect(_reload, reloadTicks)
.withStyle(darkGreen)));
tooltip.add(spacing.plainCopy()
- .append(CreateLang.translateDirect(_knockback, knockback)
+ .append(TFMGLang.translateDirect(_knockback, knockback)
.withStyle(darkGreen)));
super.appendHoverText(stack, context, tooltip, flag);
diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/blast_furnace/BlastFurnaceOutputBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/blast_furnace/BlastFurnaceOutputBlockEntity.java
index af733b7b..e334be56 100644
--- a/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/blast_furnace/BlastFurnaceOutputBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/blast_furnace/BlastFurnaceOutputBlockEntity.java
@@ -1,6 +1,7 @@
package com.drmangotea.tfmg.content.machinery.metallurgy.blast_furnace;
import com.drmangotea.tfmg.base.TFMGUtils;
+import com.drmangotea.tfmg.base.lang.TFMGTexts;
import com.drmangotea.tfmg.config.TFMGConfigs;
import com.drmangotea.tfmg.datagen.TFMGDamageSources;
import com.drmangotea.tfmg.recipes.IndustrialBlastingRecipe;
@@ -121,25 +122,17 @@ public class BlastFurnaceOutputBlockEntity extends SmartBlockEntity implements I
@Override
public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) {
- CreateLang.translate("goggles.blast_furnace.stats", inputInventory.getStackInSlot(0).getCount())
- .style(ChatFormatting.GRAY)
- .forGoggles(tooltip, 1);
+ TFMGTexts.BlastFurnace.stats(inputInventory.getStackInSlot(0).getCount()).forGoggles(tooltip, 1);
- CreateLang.translate("goggles.blast_furnace.height", getSize())
- .forGoggles(tooltip, 1);
- CreateLang.translate("goggles.blast_furnace.fuel_amount", fuel)
- .forGoggles(tooltip, 1);
+ TFMGTexts.BlastFurnace.height(getSize()).forGoggles(tooltip, 1);
+ TFMGTexts.BlastFurnace.fuelAmount(fuel).forGoggles(tooltip, 1);
if (timer != -1)
- CreateLang.translate("goggles.blast_furnace.timer", timer)
- .style(ChatFormatting.GOLD)
- .forGoggles(tooltip, 1);
+ TFMGTexts.BlastFurnace.timer(timer).forGoggles(tooltip, 1);
if (isReinforced)
- CreateLang.translate("goggles.blast_furnace.reinforced")
- .style(ChatFormatting.GREEN)
- .forGoggles(tooltip);
+ TFMGTexts.BlastFurnace.reinforced().forGoggles(tooltip);
TFMGUtils.createFluidTooltip(this, tooltip);
TFMGUtils.createItemTooltip(this, tooltip);
diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/blast_stove/BlastStoveBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/blast_stove/BlastStoveBlockEntity.java
index f33f20b3..edd0e975 100644
--- a/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/blast_stove/BlastStoveBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/blast_stove/BlastStoveBlockEntity.java
@@ -2,6 +2,8 @@ package com.drmangotea.tfmg.content.machinery.metallurgy.blast_stove;
import com.drmangotea.tfmg.base.TFMGUtils;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
+import com.drmangotea.tfmg.base.lang.TFMGTexts;
import com.drmangotea.tfmg.recipes.HotBlastRecipe;
import com.drmangotea.tfmg.registry.TFMGBlockEntities;
import com.drmangotea.tfmg.registry.TFMGRecipeTypes;
@@ -350,49 +352,48 @@ public class BlastStoveBlockEntity extends FluidTankBlockEntity implements IHave
LangBuilder mb = CreateLang.translate("generic.unit.millibuckets");
- CreateLang.translate("goggles.blast_stove.header")
- .forGoggles(tooltip);
- CreateLang.builder()
- .add(CreateLang.translate("goggles.blast_stove.tank1"))
- .add(CreateLang.number(getControllerBE().secondaryCapability.getFluidInTank(0).getAmount())
+ TFMGTexts.header("blast_stove").forGoggles(tooltip);
+ TFMGLang.builder()
+ .add(TFMGLang.translate("goggles.blast_stove.tank1"))
+ .add(TFMGLang.number(getControllerBE().secondaryCapability.getFluidInTank(0).getAmount())
.add(mb)
- .add(getControllerBE().secondaryCapability.getFluidInTank(0).getFluid() == Fluids.EMPTY ? CreateLang.text("") : CreateLang.text(" "+getControllerBE().secondaryCapability.getFluidInTank(0).getDisplayName().getString()))
+ .add(getControllerBE().secondaryCapability.getFluidInTank(0).getFluid() == Fluids.EMPTY ? TFMGLang.text("") : TFMGLang.text(" "+getControllerBE().secondaryCapability.getFluidInTank(0).getDisplayName().getString()))
.style(ChatFormatting.DARK_GREEN))
.text(ChatFormatting.GRAY, " / ")
- .add(CreateLang.number(8000)
+ .add(TFMGLang.number(8000)
.add(mb)
.style(ChatFormatting.DARK_GRAY))
.forGoggles(tooltip, 1);
- CreateLang.builder()
- .add(CreateLang.translate("goggles.blast_stove.tank2"))
- .add(CreateLang.number(getControllerBE().primaryCapability.getFluidInTank(1).getAmount())
+ TFMGLang.builder()
+ .add(TFMGLang.translate("goggles.blast_stove.tank2"))
+ .add(TFMGLang.number(getControllerBE().primaryCapability.getFluidInTank(1).getAmount())
.add(mb)
- .add(getControllerBE().primaryCapability.getFluidInTank(1).getFluid() == Fluids.EMPTY ? CreateLang.text("") : CreateLang.text(" "+getControllerBE().primaryCapability.getFluidInTank(1).getDisplayName().getString()))
+ .add(getControllerBE().primaryCapability.getFluidInTank(1).getFluid() == Fluids.EMPTY ? TFMGLang.text("") : TFMGLang.text(" "+getControllerBE().primaryCapability.getFluidInTank(1).getDisplayName().getString()))
.style(ChatFormatting.DARK_GREEN))
.text(ChatFormatting.GRAY, " / ")
- .add(CreateLang.number(8000)
+ .add(TFMGLang.number(8000)
.add(mb)
.style(ChatFormatting.DARK_GRAY))
.forGoggles(tooltip, 1);
- CreateLang.builder()
- .add(CreateLang.translate("goggles.blast_stove.tank3"))
- .add(CreateLang.number(getControllerBE().primaryCapability.getFluidInTank(0).getAmount())
+ TFMGLang.builder()
+ .add(TFMGLang.translate("goggles.blast_stove.tank3"))
+ .add(TFMGLang.number(getControllerBE().primaryCapability.getFluidInTank(0).getAmount())
.add(mb)
- .add(getControllerBE().primaryCapability.getFluidInTank(0).getFluid() == Fluids.EMPTY ? CreateLang.text("") : CreateLang.text(" "+getControllerBE().primaryCapability.getFluidInTank(0).getDisplayName().getString()))
+ .add(getControllerBE().primaryCapability.getFluidInTank(0).getFluid() == Fluids.EMPTY ? TFMGLang.text("") : TFMGLang.text(" "+getControllerBE().primaryCapability.getFluidInTank(0).getDisplayName().getString()))
.style(ChatFormatting.YELLOW))
.text(ChatFormatting.GRAY, " / ")
- .add(CreateLang.number(8000)
+ .add(TFMGLang.number(8000)
.add(mb)
.style(ChatFormatting.DARK_GRAY))
.forGoggles(tooltip, 1);
- CreateLang.builder()
- .add(CreateLang.translate("goggles.blast_stove.tank4"))
- .add(CreateLang.number(getControllerBE().secondaryCapability.getFluidInTank(1).getAmount())
+ TFMGLang.builder()
+ .add(TFMGLang.translate("goggles.blast_stove.tank4"))
+ .add(TFMGLang.number(getControllerBE().secondaryCapability.getFluidInTank(1).getAmount())
.add(mb)
- .add(getControllerBE().secondaryCapability.getFluidInTank(1).getFluid() == Fluids.EMPTY ? CreateLang.text("") : CreateLang.text(" "+getControllerBE().secondaryCapability.getFluidInTank(1).getDisplayName().getString()))
+ .add(getControllerBE().secondaryCapability.getFluidInTank(1).getFluid() == Fluids.EMPTY ? TFMGLang.text("") : TFMGLang.text(" "+getControllerBE().secondaryCapability.getFluidInTank(1).getDisplayName().getString()))
.style(ChatFormatting.YELLOW))
.text(ChatFormatting.GRAY, " / ")
- .add(CreateLang.number(8000)
+ .add(TFMGLang.number(8000)
.add(mb)
.style(ChatFormatting.DARK_GRAY))
.forGoggles(tooltip, 1);
diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/coke_oven/CokeOvenBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/coke_oven/CokeOvenBlockEntity.java
index e0a8b296..b6aeb2b1 100644
--- a/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/coke_oven/CokeOvenBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/coke_oven/CokeOvenBlockEntity.java
@@ -2,6 +2,8 @@ package com.drmangotea.tfmg.content.machinery.metallurgy.coke_oven;
import com.drmangotea.tfmg.TFMG;
import com.drmangotea.tfmg.base.TFMGUtils;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
+import com.drmangotea.tfmg.base.lang.TFMGTexts;
import com.drmangotea.tfmg.config.TFMGConfigs;
import com.drmangotea.tfmg.content.electricity.base.ConnectNeightborsPacket;
import com.drmangotea.tfmg.recipes.CokingRecipe;
@@ -187,13 +189,13 @@ public class CokeOvenBlockEntity extends SmartBlockEntity implements IHaveGoggle
@Override
public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) {
- CreateLang.translate("goggles.coke_oven.header")
+ TFMGTexts.header("coke_oven")
.style(ChatFormatting.GRAY)
.forGoggles(tooltip);
if(level.getBlockEntity(controller) instanceof CokeOvenBlockEntity controller)
if (controller.timer > 0)
- CreateLang.translate("goggles.coke_oven.progress", controller.timer / 20)
+ TFMGTexts.progress((double) controller.timer / 20)
.style(ChatFormatting.GOLD)
.forGoggles(tooltip);
@@ -214,15 +216,15 @@ public class CokeOvenBlockEntity extends SmartBlockEntity implements IHaveGoggle
if (tank.getTanks() == 0) return false;
- CreateLang.translate("goggles.fluid_storage").style(ChatFormatting.GRAY).forGoggles(tooltip);
+ TFMGLang.translate("goggles.fluid_storage").style(ChatFormatting.GRAY).forGoggles(tooltip);
boolean isEmpty = true;
for (int i = 0; i < tank.getTanks(); i++) {
FluidStack fluidStack = tank.getFluidInTank(i);
if (fluidStack.isEmpty()) continue;
- CreateLang.fluidName(fluidStack).style(ChatFormatting.GRAY).forGoggles(tooltip, 1);
- CreateLang.builder().add(CreateLang.number(fluidStack.getAmount()).add(mb).style(ChatFormatting.DARK_GREEN)).text(ChatFormatting.GRAY, " / ").add(CreateLang.number(tank.getTankCapacity(i)).add(mb).style(ChatFormatting.DARK_GRAY)).forGoggles(tooltip, 1);
+ TFMGLang.fluidName(fluidStack).style(ChatFormatting.GRAY).forGoggles(tooltip, 1);
+ TFMGLang.builder().add(TFMGLang.number(fluidStack.getAmount()).add(mb).style(ChatFormatting.DARK_GREEN)).text(ChatFormatting.GRAY, " / ").add(TFMGLang.number(tank.getTankCapacity(i)).add(mb).style(ChatFormatting.DARK_GRAY)).forGoggles(tooltip, 1);
isEmpty = false;
}
if (tank.getTanks() > 1) {
@@ -231,7 +233,7 @@ public class CokeOvenBlockEntity extends SmartBlockEntity implements IHaveGoggle
}
if (!isEmpty) return true;
- CreateLang.translate("gui.goggles.fluid_container.capacity").add(CreateLang.number(tank.getTankCapacity(0)).add(mb).style(ChatFormatting.DARK_GREEN)).style(ChatFormatting.DARK_GRAY).forGoggles(tooltip, 1);
+ CreateLang.translate("gui.goggles.fluid_container.capacity").add(TFMGLang.number(tank.getTankCapacity(0)).add(mb).style(ChatFormatting.DARK_GREEN)).style(ChatFormatting.DARK_GRAY).forGoggles(tooltip, 1);
}
return true;
diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/SpoolItem.java b/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/SpoolItem.java
index 586a0a11..5982602e 100644
--- a/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/SpoolItem.java
+++ b/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/SpoolItem.java
@@ -3,6 +3,7 @@ package com.drmangotea.tfmg.content.machinery.misc.winding_machine;
import com.drmangotea.tfmg.TFMG;
import com.drmangotea.tfmg.TFMGRegistries;
import com.drmangotea.tfmg.base.TFMGUtils;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.content.electricity.connection.cable_type.CableType;
import com.drmangotea.tfmg.content.electricity.connection.cables.CableConnection;
import com.drmangotea.tfmg.content.electricity.connection.cables.CableConnectorBlockEntity;
@@ -69,7 +70,7 @@ public class SpoolItem extends Item {
stack.remove(TFMGDataComponents.Y_POS);
stack.remove(TFMGDataComponents.Z_POS);
if (level.isClientSide)
- player.displayClientMessage(CreateLang.translateDirect("wires.removed_data")
+ player.displayClientMessage(TFMGLang.translateDirect("wires.removed_data")
.withStyle(ChatFormatting.YELLOW), true);
return InteractionResultHolder.success(stack);
@@ -84,14 +85,14 @@ public class SpoolItem extends Item {
- tooltip.add(CreateLang.translateDirect("tooltip.coils", stack.get(TFMGDataComponents.SPOOL_AMOUNT)==null?0:stack.get(TFMGDataComponents.SPOOL_AMOUNT))
+ tooltip.add(TFMGLang.translateDirect("tooltip.coils", stack.get(TFMGDataComponents.SPOOL_AMOUNT)==null?0:stack.get(TFMGDataComponents.SPOOL_AMOUNT))
.withStyle(ChatFormatting.GREEN)
);
if(stack.get(TFMGDataComponents.POSITION)==null)
return;
BlockPos pos = BlockPos.of(stack.get(TFMGDataComponents.POSITION));
if(pos.asLong()!=0)
- tooltip.add(CreateLang.text("" + pos.getX() + " " + pos.getY() + " " + pos.getZ()).component()
+ tooltip.add(TFMGLang.text(pos.getX() + " " + pos.getY() + " " + pos.getZ()).component()
.withStyle(ChatFormatting.AQUA)
);
super.appendHoverText(stack, context, tooltip, flag);
@@ -119,7 +120,7 @@ public class SpoolItem extends Item {
if(posToConnect.equals(pos)){
stack.set(TFMGDataComponents.POSITION,0l);
if (level.isClientSide)
- player.displayClientMessage(CreateLang.translateDirect("wires.cant_connect_itself")
+ player.displayClientMessage(TFMGLang.translateDirect("wires.cant_connect_itself")
.withStyle(ChatFormatting.YELLOW), true);
be.player = null;
be.sendData();
@@ -143,7 +144,7 @@ public class SpoolItem extends Item {
}
if(be.connections.contains(connection1)||otherBE.connections.contains(connection1)){
if (level.isClientSide)
- player.displayClientMessage(CreateLang.translateDirect("wires.connection_already_created")
+ player.displayClientMessage(TFMGLang.translateDirect("wires.connection_already_created")
.withStyle(ChatFormatting.YELLOW), true);
be.player = null;
be.sendData();
diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/WindingMachineBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/WindingMachineBlockEntity.java
index 806385b7..65486ce3 100644
--- a/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/WindingMachineBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/WindingMachineBlockEntity.java
@@ -1,6 +1,8 @@
package com.drmangotea.tfmg.content.machinery.misc.winding_machine;
import com.drmangotea.tfmg.TFMG;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
+import com.drmangotea.tfmg.base.lang.TFMGTexts;
import com.drmangotea.tfmg.content.engines.base.AbstractEngineBlockEntity;
import com.drmangotea.tfmg.recipes.PolarizingRecipe;
import com.drmangotea.tfmg.recipes.WindingRecipe;
@@ -79,7 +81,7 @@ public class WindingMachineBlockEntity extends KineticBlockEntity implements IHa
public void addBehaviours(List behaviours) {
super.addBehaviours(behaviours);
int max = 100;
- turnPercentage = new ScrollValueBehaviour(CreateLang.translateDirect("winding_machine.turn_percentage"),
+ turnPercentage = new ScrollValueBehaviour(TFMGLang.translateDirect("winding_machine.turn_percentage"),
this, new WindingMachineValueBox());
turnPercentage.between(1, max);
turnPercentage.value = 20;
@@ -131,24 +133,21 @@ public class WindingMachineBlockEntity extends KineticBlockEntity implements IHa
@Override
public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) {
- CreateLang.translate("goggles.winding_machine.header")
+ TFMGTexts.header("winding_machine")
.style(ChatFormatting.GRAY)
.forGoggles(tooltip, 1);
+
if (!spool.isEmpty()) {
- CreateLang.text(spool.getDisplayName().getString().replace("[","").replace("]",""))
+ TFMGLang.text(spool.getDisplayName().getString().replace("[","").replace("]",""))
.color(spool.getBarColor())
.forGoggles(tooltip);
if(spool.get(TFMGDataComponents.SPOOL_AMOUNT)!=null)
- CreateLang.translate("goggles.winding_machine.turns")
- .add(CreateLang.number(spool.get(TFMGDataComponents.SPOOL_AMOUNT)))
+ TFMGTexts.turnsLeft(spool.getOrDefault(TFMGDataComponents.SPOOL_AMOUNT, 0))
.color(spool.getBarColor())
.forGoggles(tooltip);
if (recipe != null)
- CreateLang.text("")
- .add(CreateLang.translate("goggles.winding_machine.progress"))
- .add(CreateLang.number(amountWinded))
- .add(Component.literal("/" + recipe.getProcessingDuration()))
+ TFMGTexts.progress(TFMGLang.number(amountWinded) + "/" + recipe.getProcessingDuration())
.color(spool.getBarColor())
.forGoggles(tooltip);
}
diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/OilHammerItem.java b/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/OilHammerItem.java
index a1d46b14..7e03489b 100644
--- a/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/OilHammerItem.java
+++ b/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/OilHammerItem.java
@@ -1,6 +1,7 @@
package com.drmangotea.tfmg.content.machinery.oil_processing;
import com.drmangotea.tfmg.TFMG;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.registry.TFMGBlocks;
import com.simibubi.create.foundation.utility.CreateLang;
import net.minecraft.ChatFormatting;
@@ -31,7 +32,7 @@ public class OilHammerItem extends Item {
int oilReserves = TFMG.DEPOSITS.getReservoirFor(posToCheck.asLong()).oilReserves;
if (level.isClientSide&&player!=null)
- player.displayClientMessage(CreateLang.translateDirect("oil_hammer.reserves", oilReserves)
+ player.displayClientMessage(TFMGLang.translateDirect("oil_hammer.reserves", oilReserves)
.withStyle(ChatFormatting.YELLOW), true);
return InteractionResult.SUCCESS;
diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/distillation_tower/controller/DistillationControllerBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/distillation_tower/controller/DistillationControllerBlockEntity.java
index 6d5cf467..7250d490 100644
--- a/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/distillation_tower/controller/DistillationControllerBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/distillation_tower/controller/DistillationControllerBlockEntity.java
@@ -2,6 +2,7 @@ package com.drmangotea.tfmg.content.machinery.oil_processing.distillation_tower.
import com.drmangotea.tfmg.TFMG;
import com.drmangotea.tfmg.base.TFMGUtils;
+import com.drmangotea.tfmg.base.lang.TFMGTexts;
import com.drmangotea.tfmg.content.decoration.tanks.steel.SteelTankBlock;
import com.drmangotea.tfmg.content.decoration.tanks.steel.SteelTankBlockEntity;
import com.drmangotea.tfmg.content.machinery.oil_processing.distillation_tower.output.DistillationOutputBlockEntity;
@@ -172,33 +173,12 @@ public class DistillationControllerBlockEntity extends SmartBlockEntity implemen
BlockEntity beBehind = level.getBlockEntity(getBlockPos().relative(getFacing(getBlockState()).getOpposite()));
if (beBehind instanceof SteelTankBlockEntity be) {
-
- CreateLang.translate("goggles.distillation_tower.status")
- .style(ChatFormatting.GRAY)
- .forGoggles(tooltip, 1);
-
- if (be.getControllerBE().activeHeat > 0) {
- CreateLang.translate("goggles.distillation_tower.level", be.getControllerBE().activeHeat)
- .style(ChatFormatting.GOLD)
- .forGoggles(tooltip, 1);
- } else
- CreateLang.translate("goggles.distillation_tower.level", be.getControllerBE().activeHeat)
- .style(ChatFormatting.RED)
- .forGoggles(tooltip, 1);
- if (getOutputs().toArray().length > 0) {
- CreateLang.translate("goggles.distillation_tower.found_outputs", getOutputs().toArray().length)
- .style(ChatFormatting.GOLD)
- .forGoggles(tooltip, 1);
- } else
- CreateLang.translate("goggles.distillation_tower.found_outputs", getOutputs().toArray().length)
- .style(ChatFormatting.RED)
- .forGoggles(tooltip, 1);
-
-
+ TFMGTexts.header("distillation_tower").style(ChatFormatting.GRAY).forGoggles(tooltip, 1);
+ TFMGTexts.Distillation.level(be.getControllerBE().activeHeat).forGoggles(tooltip, 1);
+ TFMGTexts.Distillation.outputs(getOutputs().toArray().length).forGoggles(tooltip, 1);
} else
- CreateLang.translate("goggles.distillation_tower.tank_not_found")
- .style(ChatFormatting.RED)
- .forGoggles(tooltip, 1);
+ TFMGTexts.Distillation.tankNotFound().forGoggles(tooltip, 1);
+
TFMGUtils.createFluidTooltip(this,tooltip);
return true;
diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/distillation_tower/output/DistillationOutputBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/distillation_tower/output/DistillationOutputBlockEntity.java
index de08f556..b2757360 100644
--- a/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/distillation_tower/output/DistillationOutputBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/distillation_tower/output/DistillationOutputBlockEntity.java
@@ -1,6 +1,7 @@
package com.drmangotea.tfmg.content.machinery.oil_processing.distillation_tower.output;
import com.drmangotea.tfmg.base.TFMGIcons;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.registry.TFMGBlockEntities;
import com.simibubi.create.api.equipment.goggles.IHaveGoggleInformation;
import com.simibubi.create.foundation.blockEntity.SmartBlockEntity;
@@ -47,7 +48,7 @@ public class DistillationOutputBlockEntity extends SmartBlockEntity implements I
@Override
public void addBehaviours(List behaviours) {
mode = new ScrollOptionBehaviour<>(DistillationOutputMode.class,
- CreateLang.translateDirect("distillation_output.when_tank_is_full"), this, new DistillationOutputValueBox());
+ TFMGLang.translateDirect("distillation_output.when_tank_is_full"), this, new DistillationOutputValueBox());
behaviours.add(mode);
}
@@ -114,7 +115,7 @@ public class DistillationOutputBlockEntity extends SmartBlockEntity implements I
@Override
public String getTranslationKey() {
- return "distillation_output.mode."+ CreateLang.asId(name());
+ return "distillation_output.mode."+ TFMGLang.asId(name());
}
}
}
diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/pumpjack/base/PumpjackBaseBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/pumpjack/base/PumpjackBaseBlockEntity.java
index 0cdf78a8..68f3957c 100644
--- a/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/pumpjack/base/PumpjackBaseBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/pumpjack/base/PumpjackBaseBlockEntity.java
@@ -2,6 +2,7 @@ package com.drmangotea.tfmg.content.machinery.oil_processing.pumpjack.base;
import com.drmangotea.tfmg.TFMG;
import com.drmangotea.tfmg.base.TFMGUtils;
+import com.drmangotea.tfmg.base.lang.TFMGTexts;
import com.drmangotea.tfmg.config.TFMGConfigs;
import com.drmangotea.tfmg.content.machinery.oil_processing.pumpjack.crank.PumpjackCrankBlockEntity;
import com.drmangotea.tfmg.content.machinery.oil_processing.pumpjack.hammer.PumpjackBlockEntity;
@@ -191,12 +192,9 @@ public class PumpjackBaseBlockEntity extends SmartBlockEntity implements IHaveGo
@Override
@SuppressWarnings("removal")
public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) {
- CreateLang.translate("goggles.pumpjack_info")
- .forGoggles(tooltip);
+ TFMGTexts.header("pumpjack").forGoggles(tooltip);
if (deposit == null) {
- CreateLang.translate("goggles.zero")
- .style(ChatFormatting.DARK_RED)
- .forGoggles(tooltip, 1);
+ TFMGTexts.invalidMachine().forGoggles(tooltip, 1);
}
TFMGUtils.createFluidTooltip(this, tooltip);
diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/surface_scanner/SurfaceScannerBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/surface_scanner/SurfaceScannerBlockEntity.java
index dd0d0edb..2f4e765d 100644
--- a/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/surface_scanner/SurfaceScannerBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/machinery/oil_processing/surface_scanner/SurfaceScannerBlockEntity.java
@@ -1,6 +1,8 @@
package com.drmangotea.tfmg.content.machinery.oil_processing.surface_scanner;
import com.drmangotea.tfmg.TFMG;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
+import com.drmangotea.tfmg.base.lang.TFMGTexts;
import com.drmangotea.tfmg.config.TFMGConfigs;
import com.drmangotea.tfmg.content.machinery.misc.machine_input.MachineInputBlockEntity;
import com.drmangotea.tfmg.registry.TFMGTags;
@@ -55,7 +57,7 @@ public class SurfaceScannerBlockEntity extends SmartBlockEntity implements IHave
@Override
public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) {
- CreateLang.translate("goggles.surface_scanner.header")
+ TFMGTexts.header("surface_scanner")
.style(ChatFormatting.GRAY)
.forGoggles(tooltip);
if(level.getBlockEntity(getBlockPos().below()) instanceof MachineInputBlockEntity be&&Math.abs(be.getSpeed())>=64) {
@@ -68,19 +70,11 @@ public class SurfaceScannerBlockEntity extends SmartBlockEntity implements IHave
}
if(depositsFound>0){
- CreateLang.number(depositsFound)
- .add(CreateLang.translate("goggles.surface_scanner.deposits_found"))
- .style(ChatFormatting.GREEN)
- .forGoggles(tooltip);
+ TFMGTexts.SurfaceScanner.deposits(depositsFound).forGoggles(tooltip);
}else
- CreateLang.translate("goggles.surface_scanner.no_deposit")
- .style(ChatFormatting.RED)
- .forGoggles(tooltip);
-
+ TFMGTexts.SurfaceScanner.noDeposit().forGoggles(tooltip);
}else
- CreateLang.translate("goggles.surface_scanner.no_rotation")
- .style(ChatFormatting.DARK_RED)
- .forGoggles(tooltip);
+ TFMGTexts.SurfaceScanner.noRotation().forGoggles(tooltip);
return true;
}
diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/base/VatBlock.java b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/base/VatBlock.java
index e5a36ade..f206ffcb 100644
--- a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/base/VatBlock.java
+++ b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/base/VatBlock.java
@@ -1,5 +1,6 @@
package com.drmangotea.tfmg.content.machinery.vat.base;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.registry.TFMGBlockEntities;
import com.simibubi.create.api.connectivity.ConnectivityHandler;
import com.simibubi.create.content.equipment.wrench.IWrenchable;
@@ -182,7 +183,7 @@ public class VatBlock extends Block implements IWrenchable, IBE
@Override
public String getSerializedName() {
- return CreateLang.asId(name());
+ return TFMGLang.asId(name());
}
}
diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/base/VatBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/base/VatBlockEntity.java
index 42eb43e3..a79e4e37 100644
--- a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/base/VatBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/base/VatBlockEntity.java
@@ -1,5 +1,7 @@
package com.drmangotea.tfmg.content.machinery.vat.base;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
+import com.drmangotea.tfmg.base.lang.TFMGTexts;
import com.drmangotea.tfmg.mixin.accessor.TankSegmentAccessor;
import com.drmangotea.tfmg.recipes.VatMachineRecipe;
import com.drmangotea.tfmg.registry.TFMGBlockEntities;
@@ -937,10 +939,9 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor
}
public void addMachineTooltip(String operationId, boolean isOperational, List tooltip) {
- LangBuilder operation = CreateLang.translate("goggles.vat."+operationId.replace(":","."));
+ LangBuilder operation = TFMGTexts.Vat.operation(operationId);
if (!isOperational) {
- operation.add(CreateLang.text(" - ")).add(CreateLang.translate("goggles.vat.not_operational")
- .style(ChatFormatting.RED));
+ operation.add(TFMGTexts.Vat.notOperational());
}
operation.forGoggles(tooltip);
}
@@ -953,14 +954,12 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor
if(!isController())
return getControllerBE().addToGoggleTooltip(tooltip,isPlayerSneaking);
- CreateLang.translate("goggles.vat.header")
- .style(ChatFormatting.GRAY)
+ TFMGTexts.header("vat").style(ChatFormatting.GRAY)
.forGoggles(tooltip);
- CreateLang.translate("goggles.vat.contents")
- .forGoggles(tooltip);
+ TFMGTexts.Vat.contents().forGoggles(tooltip);
- CreateLang.translate("goggles.vat.attachments")
+ TFMGTexts.Vat.attachments()
.style(ChatFormatting.GRAY)
.forGoggles(tooltip);
for (Map.Entry machines : machineMap.entrySet()) {
@@ -969,13 +968,9 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor
}
- CreateLang.translate("goggles.vat.heat_status")
- .add(CreateLang.translate(heatCondition == HeatCondition.NONE ? "goggles.vat.no_heat" : heatCondition == HeatCondition.HEATED ? "goggles.vat.heated" : "goggles.vat.superheated"))
- .color(heatCondition == HeatCondition.NONE ? 0x7a7a77 : heatCondition == HeatCondition.HEATED ? 0xdea216 : 0x16c7de)
- .forGoggles(tooltip);
+ TFMGTexts.heatStatus(heatCondition).forGoggles(tooltip);
- CreateLang.translate("goggles.vat.contents")
- .forGoggles(tooltip);
+ TFMGTexts.Vat.contents().forGoggles(tooltip);
///
@@ -987,10 +982,10 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor
ItemStack stackInSlot = items.getStackInSlot(i);
if (stackInSlot.isEmpty())
continue;
- CreateLang.text("")
+ TFMGLang.text("")
.add(Component.translatable(stackInSlot.getDescriptionId())
.withStyle(ChatFormatting.GRAY))
- .add(CreateLang.text(" x" + stackInSlot.getCount())
+ .add(TFMGLang.text(" x" + stackInSlot.getCount())
.style(ChatFormatting.GREEN))
.forGoggles(tooltip, 1);
isEmpty = false;
@@ -1001,11 +996,11 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor
FluidStack fluidStack = fluids.getFluidInTank(i);
if (fluidStack.isEmpty())
continue;
- CreateLang.text("")
- .add(CreateLang.fluidName(fluidStack)
- .add(CreateLang.text(" "))
+ TFMGLang.text("")
+ .add(TFMGLang.fluidName(fluidStack)
+ .add(TFMGLang.text(" "))
.style(ChatFormatting.GRAY)
- .add(CreateLang.number(fluidStack.getAmount())
+ .add(TFMGLang.number(fluidStack.getAmount())
.add(mb)
.style(ChatFormatting.BLUE)))
.forGoggles(tooltip, 1);
diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/electrode_holder/ElectrodeHolderBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/electrode_holder/ElectrodeHolderBlockEntity.java
index e5b3e788..f55da43d 100644
--- a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/electrode_holder/ElectrodeHolderBlockEntity.java
+++ b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/electrode_holder/ElectrodeHolderBlockEntity.java
@@ -3,6 +3,7 @@ package com.drmangotea.tfmg.content.machinery.vat.electrode_holder;
import com.drmangotea.tfmg.TFMG;
import com.drmangotea.tfmg.TFMGRegistries;
import com.drmangotea.tfmg.base.TFMGUtils;
+import com.drmangotea.tfmg.base.lang.TFMGTexts;
import com.drmangotea.tfmg.config.TFMGConfigs;
import com.drmangotea.tfmg.content.electricity.base.ElectricBlockEntity;
import com.drmangotea.tfmg.content.machinery.vat.base.IVatMachine;
@@ -61,10 +62,7 @@ public class ElectrodeHolderBlockEntity extends ElectricBlockEntity implements I
super.makeMultimeterTooltip(tooltip, isPlayerSneaking);
if (getCurrent() < TFMGConfigs.common().machines.electrolysisMinimumCurrent.get())
- CreateLang.translate("goggles.electrode_holder.min_amps")
- .style(ChatFormatting.RED)
- .add(CreateLang.text(TFMGConfigs.common().machines.electrolysisMinimumCurrent.get() + "A)"))
- .forGoggles(tooltip);
+ TFMGTexts.Multimeter.notEnoughCurrent(TFMGConfigs.common().machines.electrolysisMinimumCurrent.get()).forGoggles(tooltip);
return true;
}
diff --git a/src/main/java/com/drmangotea/tfmg/ponder/TFMGPonderScenes.java b/src/main/java/com/drmangotea/tfmg/ponder/TFMGPonderScenes.java
index c88df617..20c503d1 100644
--- a/src/main/java/com/drmangotea/tfmg/ponder/TFMGPonderScenes.java
+++ b/src/main/java/com/drmangotea/tfmg/ponder/TFMGPonderScenes.java
@@ -1,8 +1,15 @@
package com.drmangotea.tfmg.ponder;
+import com.drmangotea.tfmg.content.decoration.pipes.TFMGPipes;
import com.drmangotea.tfmg.ponder.scenes.MetallurgyScenes;
import com.drmangotea.tfmg.ponder.scenes.MiscTFMGScenes;
import com.drmangotea.tfmg.registry.TFMGBlocks;
+import com.simibubi.create.AllBlocks;
+import com.simibubi.create.Create;
+import com.simibubi.create.infrastructure.ponder.AllCreatePonderScenes;
+import com.simibubi.create.infrastructure.ponder.AllCreatePonderTags;
+import com.simibubi.create.infrastructure.ponder.scenes.fluid.PipeScenes;
+import com.simibubi.create.infrastructure.ponder.scenes.fluid.PumpScenes;
import com.tterrag.registrate.util.entry.ItemProviderEntry;
import com.tterrag.registrate.util.entry.RegistryEntry;
import net.createmod.ponder.api.registration.PonderSceneRegistrationHelper;
@@ -34,5 +41,37 @@ public class TFMGPonderScenes {
.addStoryBoard("electricity", MiscTFMGScenes::electricity, TFMGPonderTags.ELECTRIC_MACHINERY)
.addStoryBoard("electricity_two", MiscTFMGScenes::electricy_two, TFMGPonderTags.ELECTRIC_MACHINERY);
+ // Add our fluid manipulators to Create's ponder scenes
+ HELPER.forComponents(
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.BRASS).getPipe(),
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.STEEL).getPipe(),
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.ALUMINUM).getPipe(),
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.CAST_IRON).getPipe(),
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.PLASTIC).getPipe())
+ .addStoryBoard(Create.asResource("fluid_pipe/flow"), PipeScenes::flow, AllCreatePonderTags.FLUIDS)
+ .addStoryBoard(Create.asResource("fluid_pipe/interaction"), PipeScenes::interaction)
+ .addStoryBoard(Create.asResource("fluid_pipe/encasing"), PipeScenes::encasing);
+ HELPER.forComponents(
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.BRASS).getPump(),
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.STEEL).getPump(),
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.ALUMINUM).getPump(),
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.CAST_IRON).getPump(),
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.PLASTIC).getPump())
+ .addStoryBoard(Create.asResource("mechanical_pump/flow"), PumpScenes::flow, AllCreatePonderTags.FLUIDS, AllCreatePonderTags.KINETIC_APPLIANCES)
+ .addStoryBoard(Create.asResource("mechanical_pump/speed"), PumpScenes::speed);
+ HELPER.forComponents(
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.BRASS).getValve(),
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.STEEL).getValve(),
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.ALUMINUM).getValve(),
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.CAST_IRON).getValve(),
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.PLASTIC).getValve())
+ .addStoryBoard(Create.asResource("fluid_valve"), PipeScenes::valve, AllCreatePonderTags.FLUIDS, AllCreatePonderTags.KINETIC_APPLIANCES);
+ HELPER.forComponents(
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.BRASS).getSmart(),
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.STEEL).getSmart(),
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.ALUMINUM).getSmart(),
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.CAST_IRON).getSmart(),
+ TFMGPipes.PIPES.get(TFMGPipes.PipeMaterial.PLASTIC).getSmart())
+ .addStoryBoard(Create.asResource("smart_pipe"), PipeScenes::smart, AllCreatePonderTags.FLUIDS);
}
}
diff --git a/src/main/java/com/drmangotea/tfmg/recipes/PolarizingRecipe.java b/src/main/java/com/drmangotea/tfmg/recipes/PolarizingRecipe.java
index 6db1e083..08d43fe3 100644
--- a/src/main/java/com/drmangotea/tfmg/recipes/PolarizingRecipe.java
+++ b/src/main/java/com/drmangotea/tfmg/recipes/PolarizingRecipe.java
@@ -1,5 +1,6 @@
package com.drmangotea.tfmg.recipes;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.recipes.jei.PolarizingCategory;
import com.drmangotea.tfmg.registry.TFMGBlocks;
import com.drmangotea.tfmg.registry.TFMGRecipeTypes;
@@ -52,7 +53,7 @@ public class PolarizingRecipe extends StandardProcessingRecipe impl
@Override
public Component getDescriptionForAssembly() {
- return CreateLang.translateDirect("recipe.assembly.polarizing");
+ return TFMGLang.translateDirect("recipe.assembly.polarizing");
}
@Override
diff --git a/src/main/java/com/drmangotea/tfmg/recipes/WindingRecipe.java b/src/main/java/com/drmangotea/tfmg/recipes/WindingRecipe.java
index da34c998..ec1300e3 100644
--- a/src/main/java/com/drmangotea/tfmg/recipes/WindingRecipe.java
+++ b/src/main/java/com/drmangotea/tfmg/recipes/WindingRecipe.java
@@ -1,5 +1,6 @@
package com.drmangotea.tfmg.recipes;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.recipes.jei.WindingCategory;
import com.drmangotea.tfmg.registry.TFMGBlocks;
import com.drmangotea.tfmg.registry.TFMGRecipeTypes;
@@ -59,7 +60,7 @@ public class WindingRecipe extends StandardProcessingRecipe imple
//
@Override
public Component getDescriptionForAssembly() {
- return CreateLang.translateDirect("recipe.assembly.winding");
+ return TFMGLang.translateDirect("recipe.assembly.winding");
}
@Override
diff --git a/src/main/java/com/drmangotea/tfmg/registry/TFMGDataComponents.java b/src/main/java/com/drmangotea/tfmg/registry/TFMGDataComponents.java
index b65c9133..22d17e10 100644
--- a/src/main/java/com/drmangotea/tfmg/registry/TFMGDataComponents.java
+++ b/src/main/java/com/drmangotea/tfmg/registry/TFMGDataComponents.java
@@ -79,10 +79,14 @@ public class TFMGDataComponents {
"timer",
builder -> builder.persistent(Codec.INT).networkSynchronized(ByteBufCodecs.VAR_INT)
);
- public static final DataComponentType FLAMETHROWER_FUEL = register(
- "flamethrower_fuel",
+ public static final DataComponentType FLAMETHROWER = register(
+ "flamethrower",
builder -> builder.persistent(FlamethrowerFuel.CODEC).networkSynchronized(FlamethrowerFuel.STREAM_CODEC)
);
+ public static final DataComponentType FLAMETHROWER_FUEL = register(
+ "flamethrower_fuel",
+ builder -> builder.persistent(Codec.STRING).networkSynchronized(ByteBufCodecs.STRING_UTF8)
+ );
public static final DataComponentType ACCUMULATOR_STORAGE = register(
"storage",
builder -> builder.persistent(Codec.INT).networkSynchronized(ByteBufCodecs.VAR_INT)
diff --git a/src/main/java/com/drmangotea/tfmg/registry/TFMGEntityTypes.java b/src/main/java/com/drmangotea/tfmg/registry/TFMGEntityTypes.java
index 6d3029fe..b1d8a1e0 100644
--- a/src/main/java/com/drmangotea/tfmg/registry/TFMGEntityTypes.java
+++ b/src/main/java/com/drmangotea/tfmg/registry/TFMGEntityTypes.java
@@ -2,6 +2,7 @@ package com.drmangotea.tfmg.registry;
import com.drmangotea.tfmg.TFMG;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.base.spark.*;
import com.drmangotea.tfmg.content.items.weapons.advanced_potato_cannon.projectile.NapalmPotato;
import com.drmangotea.tfmg.content.items.weapons.advanced_potato_cannon.projectile.NapalmPotatoRenderer;
@@ -66,7 +67,7 @@ public class TFMGEntityTypes {
NonNullSupplier>> renderer,
MobCategory group, int range, int updateFrequency, boolean sendVelocity, boolean immuneToFire,
NonNullConsumer> propertyBuilder) {
- String id = CreateLang.asId(name);
+ String id = TFMGLang.asId(name);
return (CreateEntityBuilder) TFMG.REGISTRATE
.entity(id, factory, group)
.properties(b -> b.setTrackingRange(range)
diff --git a/src/main/java/com/drmangotea/tfmg/registry/TFMGPaletteStoneTypes.java b/src/main/java/com/drmangotea/tfmg/registry/TFMGPaletteStoneTypes.java
index 67146c44..756e0955 100644
--- a/src/main/java/com/drmangotea/tfmg/registry/TFMGPaletteStoneTypes.java
+++ b/src/main/java/com/drmangotea/tfmg/registry/TFMGPaletteStoneTypes.java
@@ -3,6 +3,7 @@ package com.drmangotea.tfmg.registry;
import com.drmangotea.tfmg.TFMG;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.base.palettes.TFMGPaletteBlockPattern;
import com.drmangotea.tfmg.base.palettes.TFMGPalettesVariantEntry;
import com.simibubi.create.AllTags;
@@ -61,7 +62,7 @@ public enum TFMGPaletteStoneTypes {
for (TFMGPaletteStoneTypes paletteStoneVariants : values()) {
NonNullSupplier baseBlock = paletteStoneVariants.factory.apply(registrate);
paletteStoneVariants.baseBlock = baseBlock;
- String id = CreateLang.asId(paletteStoneVariants.name());
+ String id = TFMGLang.asId(paletteStoneVariants.name());
paletteStoneVariants.materialTag =
AllTags.optionalTag(BuiltInRegistries.ITEM, TFMG.asResource("stone_types/" + id));
paletteStoneVariants.variants = new TFMGPalettesVariantEntry(id, paletteStoneVariants);
diff --git a/src/main/java/com/drmangotea/tfmg/registry/TFMGPartialModels.java b/src/main/java/com/drmangotea/tfmg/registry/TFMGPartialModels.java
index 68860cac..490f793c 100644
--- a/src/main/java/com/drmangotea/tfmg/registry/TFMGPartialModels.java
+++ b/src/main/java/com/drmangotea/tfmg/registry/TFMGPartialModels.java
@@ -2,6 +2,7 @@ package com.drmangotea.tfmg.registry;
import com.drmangotea.tfmg.TFMG;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.content.decoration.pipes.TFMGPipes;
import com.simibubi.create.content.fluids.FluidTransportBehaviour;
@@ -122,8 +123,8 @@ public class TFMGPartialModels {
for (FluidTransportBehaviour.AttachmentTypes.ComponentPartials type : FluidTransportBehaviour.AttachmentTypes.ComponentPartials.values()) {
Map map = new HashMap<>();
for (Direction d : Iterate.directions) {
- String asId = CreateLang.asId(type.name());
- map.put(d, block(material.name + "_pipe/" + asId + "/" + CreateLang.asId(d.getSerializedName())));
+ String asId = TFMGLang.asId(type.name());
+ map.put(d, block(material.name + "_pipe/" + asId + "/" + TFMGLang.asId(d.getSerializedName())));
}
attachments.put(type, map);
}
diff --git a/src/main/java/com/drmangotea/tfmg/registry/TFMGParticleTypes.java b/src/main/java/com/drmangotea/tfmg/registry/TFMGParticleTypes.java
index 452a885c..eb572ba8 100644
--- a/src/main/java/com/drmangotea/tfmg/registry/TFMGParticleTypes.java
+++ b/src/main/java/com/drmangotea/tfmg/registry/TFMGParticleTypes.java
@@ -2,6 +2,7 @@ package com.drmangotea.tfmg.registry;
import com.drmangotea.tfmg.TFMG;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.base.spark.ElectricSparkParticle;
import com.simibubi.create.foundation.particle.ICustomParticleData;
@@ -26,7 +27,7 @@ public enum TFMGParticleTypes {
private final ParticleEntry> entry;
TFMGParticleTypes(Supplier extends ICustomParticleData> typeFactory) {
- String name = CreateLang.asId(name());
+ String name = TFMGLang.asId(name());
entry = new ParticleEntry<>(name, typeFactory);
}
diff --git a/src/main/java/com/drmangotea/tfmg/registry/TFMGRecipeTypes.java b/src/main/java/com/drmangotea/tfmg/registry/TFMGRecipeTypes.java
index ae1096a6..813f86ff 100644
--- a/src/main/java/com/drmangotea/tfmg/registry/TFMGRecipeTypes.java
+++ b/src/main/java/com/drmangotea/tfmg/registry/TFMGRecipeTypes.java
@@ -1,15 +1,14 @@
package com.drmangotea.tfmg.registry;
+import com.drmangotea.tfmg.TFMG;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import com.drmangotea.tfmg.recipes.*;
import com.mojang.serialization.Codec;
-import com.simibubi.create.AllRecipeTypes;
import com.simibubi.create.AllTags;
-import com.simibubi.create.Create;
import com.simibubi.create.content.processing.recipe.ProcessingRecipe;
import com.simibubi.create.content.processing.recipe.StandardProcessingRecipe;
import com.simibubi.create.foundation.recipe.IRecipeTypeInfo;
-import net.createmod.catnip.lang.Lang;
import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceLocation;
@@ -54,12 +53,12 @@ public enum TFMGRecipeTypes implements IRecipeTypeInfo, StringRepresentable {
private boolean isProcessingRecipe;
- public static final Codec CODEC = StringRepresentable.fromEnum(AllRecipeTypes::values);
+ public static final Codec CODEC = StringRepresentable.fromEnum(TFMGRecipeTypes::values);
TFMGRecipeTypes(Supplier> serializerSupplier) {
- String name = Lang.asId(name());
- id = Create.asResource(name);
+ String name = TFMGLang.asId(name());
+ id = TFMG.asResource(name);
this.serializerSupplier = serializerSupplier;
serializerObject = Registers.SERIALIZER_REGISTER.register(name, serializerSupplier);
typeObject = Registers.TYPE_REGISTER.register(name, () -> RecipeType.simple(id));
@@ -123,8 +122,8 @@ public enum TFMGRecipeTypes implements IRecipeTypeInfo, StringRepresentable {
}
private static class Registers {
- private static final DeferredRegister> SERIALIZER_REGISTER = DeferredRegister.create(BuiltInRegistries.RECIPE_SERIALIZER, Create.ID);
- private static final DeferredRegister> TYPE_REGISTER = DeferredRegister.create(Registries.RECIPE_TYPE, Create.ID);
+ private static final DeferredRegister> SERIALIZER_REGISTER = DeferredRegister.create(BuiltInRegistries.RECIPE_SERIALIZER, TFMG.MOD_ID);
+ private static final DeferredRegister> TYPE_REGISTER = DeferredRegister.create(Registries.RECIPE_TYPE, TFMG.MOD_ID);
}
}
diff --git a/src/main/java/com/drmangotea/tfmg/registry/TFMGTags.java b/src/main/java/com/drmangotea/tfmg/registry/TFMGTags.java
index 635d1927..4ea4c9ea 100644
--- a/src/main/java/com/drmangotea/tfmg/registry/TFMGTags.java
+++ b/src/main/java/com/drmangotea/tfmg/registry/TFMGTags.java
@@ -3,7 +3,7 @@ package com.drmangotea.tfmg.registry;
import com.drmangotea.tfmg.TFMG;
-import com.simibubi.create.foundation.utility.CreateLang;
+import com.drmangotea.tfmg.base.lang.TFMGLang;
import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.tags.BlockTags;
@@ -77,7 +77,7 @@ public class TFMGTags {
}
TFMGBlockTags(NameSpace namespace, String path, boolean optional, boolean alwaysDatagen) {
- ResourceLocation id = ResourceLocation.fromNamespaceAndPath(namespace.id, path == null ? CreateLang.asId(name()) : path);
+ ResourceLocation id = ResourceLocation.fromNamespaceAndPath(namespace.id, path == null ? TFMGLang.asId(name()) : path);
if (optional) {
tag = optionalTag(BuiltInRegistries.BLOCK, id);
} else {
@@ -134,7 +134,7 @@ public class TFMGTags {
}
TFMGItemTags(NameSpace namespace, String path, boolean optional, boolean alwaysDatagen) {
- ResourceLocation id = ResourceLocation.fromNamespaceAndPath(namespace.id, path == null ? CreateLang.asId(name()) : path);
+ ResourceLocation id = ResourceLocation.fromNamespaceAndPath(namespace.id, path == null ? TFMGLang.asId(name()) : path);
if (optional) {
tag = optionalTag(BuiltInRegistries.ITEM, id);
} else {
@@ -197,7 +197,7 @@ public class TFMGTags {
}
TFMGFluidTags(NameSpace namespace, String path, boolean optional, boolean alwaysDatagen) {
- ResourceLocation id = ResourceLocation.fromNamespaceAndPath(namespace.id, path == null ? CreateLang.asId(name()) : path);
+ ResourceLocation id = ResourceLocation.fromNamespaceAndPath(namespace.id, path == null ? TFMGLang.asId(name()) : path);
if (optional) {
tag = optionalTag(BuiltInRegistries.FLUID, id);
} else {
diff --git a/src/main/resources/assets/tfmg/lang/default/interface.json b/src/main/resources/assets/tfmg/lang/default/interface.json
index 3aa54380..a8522d9c 100644
--- a/src/main/resources/assets/tfmg/lang/default/interface.json
+++ b/src/main/resources/assets/tfmg/lang/default/interface.json
@@ -2,113 +2,116 @@
"creative_tab.tfmg_main": "Create: The Factory Must Grow",
"creative_tab.tfmg_decoration": "Create: TFMG Building Blocks",
- "create.goggles.fluid_storage": "Fluid Storage:",
- "create.goggles.item_storage": "Item Storage:",
- "create.goggles.item_storage_empty": "*Empty*",
+ "tfmg.goggles.fluid_storage": "Fluid Storage:",
+ "tfmg.goggles.item_storage": "Item Storage:",
+ "tfmg.goggles.item_storage_empty": "*Empty*",
- "create.goggles.surface_scanner.header": "Surface Scanner",
- "create.goggles.surface_scanner.no_deposit": "No Deposits Found",
- "create.goggles.surface_scanner.no_rotation": "Not Enough Rotation (Needs 64rpm)",
- "create.goggles.surface_scanner.deposits_found": " Chunks With Oil Deposits Found",
+ "tfmg.surface_scanner.header": "Surface Scanner",
+ "tfmg.goggles.surface_scanner.no_deposit": "No Deposits Found",
+ "tfmg.goggles.surface_scanner.no_rotation": "Not Enough Rotation (Needs 64rpm)",
+ "tfmg.goggles.surface_scanner.deposits_found": "%s Chunks With Oil Deposits Found",
- "create.goggles.distillation_tower.status": "Distillation Tower Info:",
- "create.goggles.distillation_tower.tank_not_found": "Steel Fluid Tank Not Found",
- "create.goggles.distillation_tower.level": "Heat Level: %1$s",
- "create.goggles.distillation_tower.found_outputs": "Output Count: %1$s",
- "create.goggles.distillation_tower.no_outputs": "No Output Blocks Found",
+ "tfmg.distillation_tower.header": "Distillation Tower Info:",
+ "tfmg.goggles.distillation_tower.tank_not_found": "Steel Fluid Tank Not Found",
+ "tfmg.goggles.distillation_tower.level": "Heat Level: %1$s",
+ "tfmg.goggles.distillation_tower.found_outputs": "Output Count: %1$s",
+ "tfmg.goggles.distillation_tower.no_outputs": "No Output Blocks Found",
- "create.goggles.blast_furnace.stats": "Blast Furnace:",
- "create.goggles.blast_furnace.fuel_amount": " Fuel : %1$s",
- "create.goggles.blast_furnace.height": " Height: %1$s",
- "create.goggles.blast_furnace.reinforced": "Reinforced",
- "create.goggles.blast_furnace.timer": "Time Left: %1$s",
- "create.goggles.blast_furnace.modifier": "Production Time: %1$s",
+ "tfmg.goggles.blast_furnace.stats": "Blast Furnace: %s",
+ "tfmg.goggles.blast_furnace.fuel_amount": " Fuel : %1$s",
+ "tfmg.goggles.blast_furnace.height": " Height: %1$s",
+ "tfmg.goggles.blast_furnace.reinforced": "Reinforced",
+ "tfmg.goggles.blast_furnace.timer": "Time Left: %1$s",
+ "tfmg.goggles.blast_furnace.modifier": "Production Time: %1$s",
- "create.goggles.blast_stove.header": "Blast Stove: ",
- "create.goggles.blast_stove.tank1": "Input Tank: ",
- "create.goggles.blast_stove.tank2": "Fuel Tank: ",
- "create.goggles.blast_stove.tank3": "Output Tank 1: ",
- "create.goggles.blast_stove.tank4": "Output Tank 2: ",
+ "tfmg.blast_stove.header": "Blast Stove: ",
+ "tfmg.goggles.blast_stove.tank1": "Input Tank: ",
+ "tfmg.goggles.blast_stove.tank2": "Fuel Tank: ",
+ "tfmg.goggles.blast_stove.tank3": "Output Tank 1: ",
+ "tfmg.goggles.blast_stove.tank4": "Output Tank 2: ",
- "create.goggles.coke_oven.header": "Coke Oven:",
- "create.goggles.coke_oven.progress": "Progress: %1$s",
+ "tfmg.coke_oven.header": "Coke Oven:",
+ "tfmg.goggles.coke_oven.progress": "Progress: %1$s",
- "create.goggles.pumpjack_info": "Pumpjack Info:",
- "create.goggles.pumpjack.reserves": "Deposit Reserves: ",
- "create.goggles.pumpjack.part_missing": "Hammer or Crank Missing",
- "create.goggles.pumpjack.wrong_rotation1": "The Pumpjack Base is oriented incorrectly, the red marker must",
- "create.goggles.pumpjack.wrong_rotation2": "face away from the Pumpjack Hammer Holder",
- "create.goggles.pumpjack_fluid_storage": "Fluid Tank Info:",
- "create.goggles.pumpjack.fluid_amount": "Fluid Amount:",
- "create.goggles.pumpjack.deposit_info": "Deposit Info:",
- "create.pumpjack_deposit_amount": "%1$s Buckets",
- "create.goggles.zero": "Machine Invalid",
+ "tfmg.pumpjack.header": "Pumpjack Info:",
+ "tfmg.goggles.pumpjack.reserves": "Deposit Reserves: ",
+ "tfmg.goggles.pumpjack.part_missing": "Hammer or Crank Missing",
+ "tfmg.goggles.pumpjack.wrong_rotation1": "The Pumpjack Base is oriented incorrectly, the red marker must",
+ "tfmg.goggles.pumpjack.wrong_rotation2": "face away from the Pumpjack Hammer Holder",
+ "tfmg.goggles.pumpjack_fluid_storage": "Fluid Tank Info:",
+ "tfmg.goggles.pumpjack.fluid_amount": "Fluid Amount:",
+ "tfmg.goggles.pumpjack.deposit_info": "Deposit Info:",
+ "tfmg.pumpjack_deposit_amount": "%1$s Buckets",
+ "tfmg.goggles.zero": "Machine Invalid",
- "create.voltage": "Voltage: %1$s",
- "create.fe": "FE: %1$s",
- "create.network": "Network: %1$s",
+ "tfmg.goggles.progress": "Progress: %1$s",
+ "tfmg.goggles.invalid_machine": "Machine Invalid",
- "create.goggles.machine_input.info": "Machine Input Info",
- "create.goggles.machine_input.no_rot": "No Rotation Provided!",
- "create.goggles.machine_input.power_level": "Power Level: ",
+ "tfmg.voltage": "Voltage: %1$s",
+ "tfmg.fe": "FE: %1$s",
+ "tfmg.network": "Network: %1$s",
- "create.goggles.winding_machine.header": "Winding Machine",
- "create.goggles.winding_machine.turns": "Turns Left: ",
- "create.goggles.winding_machine.progress": "Progress: ",
+ "tfmg.goggles.machine_input.info": "Machine Input Info",
+ "tfmg.goggles.machine_input.no_rot": "No Rotation Provided!",
+ "tfmg.goggles.machine_input.power_level": "Power Level: ",
- "create.goggles.polarizer.header": "Polarizer",
- "create.goggles.polarizer.charge": "Charge: ",
- "create.goggles.polarizer.insufficient_power": "Not Enough Power (Needs 2000W)",
+ "tfmg.winding_machine.header": "Winding Machine",
+ "tfmg.goggles.winding_machine.turns": "Turns Left: %s",
+ "tfmg.goggles.winding_machine.progress": "Progress: ",
- "create.goggles.electric_machine.no_power": "No Power",
- "create.goggles.electricity.insufficient_voltage": "Insufficient Voltage",
+ "tfmg.polarizer.header": "Polarizer",
+ "tfmg.goggles.polarizer.charge": "Charge: ",
+ "tfmg.goggles.polarizer.insufficient_power": "Not Enough Power (Needs 2000W)",
- "create.goggles.voltmeter": "Voltmeter:",
- "create.goggles.gauge.value": " Measured Voltage:",
- "create.goggles.voltmeter.range": " Range: %1$s",
+ "tfmg.goggles.electric_machine.no_power": "No Power",
+ "tfmg.goggles.electricity.insufficient_voltage": "Insufficient Voltage",
- "create.goggles.engine.header": "Engine Info",
- "create.goggles.engine.type": "Type: %s",
- "create.goggles.engine.rpm": "Speed: %s RPM",
- "create.goggles.engine.signal": "Signal: %s",
- "create.goggles.engine.torque": "Torque: %s",
- "create.goggles.engine.fuel_consumption": "Fuel Consumption: %s mB/s",
- "create.goggles.engine.oil": "Oil: %s",
- "create.goggles.engine.cooling_fluid": "Cooling Fluid: %s",
- "create.goggles.engine.unfinished": "Engine Unfinished",
- "create.goggles.engine.next_component": " Next Component: ",
- "create.goggles.engine.pistons_missing": "Pistons Missing",
- "create.goggles.engine.turbines_missing": "Turbines Missing",
+ "tfmg.goggles.voltmeter": "Voltmeter:",
+ "tfmg.goggles.gauge.value": " Measured Voltage:",
+ "tfmg.goggles.voltmeter.range": " Range: %1$s",
- "create.goggles.electrode_holder.min_amps": "Not Enough Current (Needs ",
+ "tfmg.engine.header": "Engine Info",
+ "tfmg.goggles.engine.type": "Type: %s",
+ "tfmg.goggles.engine.rpm": "Speed: %s RPM",
+ "tfmg.goggles.engine.signal": "Signal: %s",
+ "tfmg.goggles.engine.torque": "Torque: %s",
+ "tfmg.goggles.engine.fuel_consumption": "Fuel Consumption: %s mB/s",
+ "tfmg.goggles.engine.oil": "Oil: %s",
+ "tfmg.goggles.engine.cooling_fluid": "Cooling Fluid: %s",
+ "tfmg.goggles.engine.unfinished": "Engine Unfinished",
+ "tfmg.goggles.engine.next_component": " Next Component: %s",
+ "tfmg.goggles.engine.pistons_missing": "Pistons Missing",
+ "tfmg.goggles.engine.turbines_missing": "Turbines Missing",
- "create.goggles.vat.header": "Chemical Vat",
- "create.goggles.vat.attachments": "Attachments:",
- "create.goggles.vat.contents": "Vat Contents:",
- "create.goggles.vat.heat_status": "Heat Status: ",
- "create.goggles.vat.no_heat": "No Heat",
- "create.goggles.vat.heated": "Heated",
- "create.goggles.vat.superheated": "Superheated",
- "create.goggles.vat.not_operational": "Not Operational",
- "create.goggles.vat.tfmg.graphite_electrode": " Graphite Electrode",
- "create.goggles.vat.tfmg.electrode": " Electrode",
- "create.goggles.vat.tfmg.mixing": " Mixer",
- "create.goggles.vat.tfmg.centrifuge": " Centrifuge",
+ "tfmg.goggles.electrode_holder.min_amps": "Not Enough Current (Needs ",
+
+ "tfmg.vat.header": "Chemical Vat",
+ "tfmg.goggles.vat.attachments": "Attachments:",
+ "tfmg.goggles.vat.contents": "Vat Contents:",
+ "tfmg.goggles.heat_status": "Heat Status: ",
+ "tfmg.goggles.no_heat": "No Heat",
+ "tfmg.goggles.heated": "Heated",
+ "tfmg.goggles.superheated": "Superheated",
+ "tfmg.goggles.vat.not_operational": "Not Operational",
+ "tfmg.goggles.vat.tfmg.graphite_electrode": " Graphite Electrode",
+ "tfmg.goggles.vat.tfmg.electrode": " Electrode",
+ "tfmg.goggles.vat.tfmg.mixing": " Mixer",
+ "tfmg.goggles.vat.tfmg.centrifuge": " Centrifuge",
- "create.goggles.ammeter": "Ammeter:",
- "create.goggles.ammeter.amps": " Measured Amps: %1$s V",
+ "tfmg.goggles.ammeter": "Ammeter:",
+ "tfmg.goggles.ammeter.amps": " Measured Amps: %1$s V",
- "create.goggles.motor.usage": "Energy Usage: %1$s fe/t",
- "create.goggles.generator.production": "Energy Production: %1$s fe/t",
+ "tfmg.goggles.motor.usage": "Energy Usage: %1$s fe/t",
+ "tfmg.goggles.generator.production": "Energy Production: %1$s fe/t",
- "create.resistor.allowed_voltage": "Percentage of Voltage Allowed",
- "create.winding_machine.turn_percentage": "Allowed Turn Percentage (From 1000)",
- "create.creative_generator.voltage_generation": "Voltage Generation",
+ "tfmg.resistor.allowed_voltage": "Percentage of Voltage Allowed",
+ "tfmg.winding_machine.turn_percentage": "Allowed Turn Percentage (From 1000)",
+ "tfmg.creative_generator.voltage_generation": "Voltage Generation",
- "create.distillation_output.when_tank_is_full": "When Internal Tank is Full",
- "create.distillation_output.mode.keep_fluid": "Stop Distillation Process",
- "create.distillation_output.mode.void_when_full": "Void Excess Fluid",
+ "tfmg.distillation_output.when_tank_is_full": "When Internal Tank is Full",
+ "tfmg.distillation_output.mode.keep_fluid": "Stop Distillation Process",
+ "tfmg.distillation_output.mode.void_when_full": "Void Excess Fluid",
"death.attack.tfmg.concrete": "%1$s tried to eat Concrete",
"death.attack.tfmg.concrete.player": "%1$s tried to eat Concrete",
@@ -119,85 +122,88 @@
"death.attack.tfmg.blast_furnace": "%1$s was turned in carbon steel",
"death.attack.tfmg.blast_furnace.player": "%1$s was thrown into a blast furnace",
- "create.tooltip.fuse": "Rating: %1$s",
- "create.tooltip.resistor": "Resistance: %1$s",
- "create.tooltip.coils": "Turns: %1$s",
- "create.tooltip.cylinder": "Supported Fuels:",
- "create.tooltip.fluid_item": "Fluid Amount: %1$s",
+ "tfmg.tooltip.fuse": "Rating: %1$s",
+ "tfmg.tooltip.resistor": "Resistance: %1$s",
+ "tfmg.tooltip.coils": "Turns: %1$s",
+ "tfmg.tooltip.cylinder": "Supported Fuels:",
+ "tfmg.tooltip.fluid_item": "Fluid Amount: %1$s",
- "create.recipe.assembly.winding": "Wind a Spool",
+ "tfmg.recipe.assembly.winding": "Wind a Spool",
- "create.recipe.distillation": "Distillation",
- "create.recipe.advanced_distillation": "Advanced Distillation",
- "create.recipe.industrial_blasting": "Industrial Blasting",
- "create.recipe.casting": "Casting",
- "create.recipe.coking": "Coking",
- "create.recipe.polarizing": "Polarizing",
- "create.recipe.chemical_vat": "Chemical Vat",
- "create.recipe.hot_blast": "Air Blasting",
- "create.recipe.winding": "Winding",
+ "tfmg.recipe.distillation": "Distillation",
+ "tfmg.recipe.advanced_distillation": "Advanced Distillation",
+ "tfmg.recipe.industrial_blasting": "Industrial Blasting",
+ "tfmg.recipe.casting": "Casting",
+ "tfmg.recipe.coking": "Coking",
+ "tfmg.recipe.polarizing": "Polarizing",
+ "tfmg.recipe.chemical_vat": "Chemical Vat",
+ "tfmg.recipe.hot_blast": "Air Blasting",
+ "tfmg.recipe.winding": "Winding",
"tfmg.keyinfo.custom_button": "Engine Controller Custom Button",
"tfmg.keyinfo.engine_start": "Start Engine",
"tfmg.keyinfo.transmission_shift_up": "Transmission Shift Up",
"tfmg.keyinfo.transmission_shift_down": "Transmission Shift Down",
- "create.multimeter.header": "Multimeter Data:",
- "create.multimeter.separator": "----------------------------",
- "create.multimeter.insufficient_power": "NOT ENOUGHT POWER",
- "create.multimeter.additional_values": "Additional Values:",
- "create.multimeter.power_usage": " Power Usage: ",
- "create.multimeter.group": " Group: %s",
- "create.multimeter.voltage_generated": " Voltage Generated: %s",
- "create.multimeter.power_generated": " Power Generated: %s",
- "create.multimeter.power_percentage": " Grid Strength: ",
- "create.multimeter.energy_usage": " Energy Usage: ",
- "create.multimeter.energy_stored": " Energy Stored: ",
- "create.multimeter.network.generation": "Network Power Generation: %s",
- "create.multimeter.network.consumption": "Network Power Consumption: %s",
- "create.multimeter.transformer_ratio": " Turn Ratio: ",
+ "tfmg.multimeter.header": "Multimeter Data:",
+ "tfmg.multimeter.separator": "----------------------------",
+ "tfmg.multimeter.insufficient_power": "Not Enough Power",
+ "tfmg.multimeter.insufficient_power.requirement": "Not Enough Power (Needs %s)",
+ "tfmg.multimeter.insufficient_current": "Not Enough Current (Needs %s)",
+ "tfmg.multimeter.charge": "Charge: %s",
+ "tfmg.multimeter.additional_values": "Additional Values:",
+ "tfmg.multimeter.power_usage": " Power Usage: ",
+ "tfmg.multimeter.group": " Group: %s",
+ "tfmg.multimeter.voltage_generated": " Voltage Generated: %s",
+ "tfmg.multimeter.power_generated": " Power Generated: %s",
+ "tfmg.multimeter.power_percentage": " Grid Strength: ",
+ "tfmg.multimeter.energy_usage": " Energy Usage: ",
+ "tfmg.multimeter.energy_stored": " Energy Stored: ",
+ "tfmg.multimeter.network.generation": "Network Power Generation: %s",
+ "tfmg.multimeter.network.consumption": "Network Power Consumption: %s",
+ "tfmg.multimeter.transformer_ratio": " Turn Ratio: ",
- "create.electricity.capacity": "Capacity: %s",
- "create.electricity.charging_rate": "Charging Rate: %s",
- "create.electricity.max_capacity": "Max Capacity: %s",
+ "tfmg.electricity.capacity": "Capacity: %s",
+ "tfmg.electricity.charging_rate": "Charging Rate: %s",
+ "tfmg.electricity.max_capacity": "Max Capacity: %s",
- "create.engine.controller.header": "Engine Controller",
- "create.engine.shift": "Shift: %s",
- "create.engine.speed_efficiency": "Speed Efficiency: %s",
- "create.engine.efficiency": "Efficiency: %s",
- "create.engine.fuel_consumption": "Fuel Consumption: %s",
- "create.engine.rpm": "RPM: %s",
- "create.engine.length": "Length: %s",
- "create.engine.torque": "Torque: %s",
- "create.engine.injection_rate": "Injection Rate: %s",
- "create.engine.signal": "Signal: %s",
+ "tfmg.engine_controller.header": "Engine Controller",
+ "tfmg.engine.shift": "Shift: %s",
+ "tfmg.engine.speed_efficiency": "Speed Efficiency: %s",
+ "tfmg.engine.efficiency": "Efficiency: %s",
+ "tfmg.engine.fuel_consumption": "Fuel Consumption: %s",
+ "tfmg.engine.rpm": "RPM: %s",
+ "tfmg.engine.length": "Length: %s",
+ "tfmg.engine.torque": "Torque: %s",
+ "tfmg.engine.injection_rate": "Injection Rate: %s",
+ "tfmg.engine.signal": "Signal: %s",
- "create.engine.upgrade.transmission.reverse": "Reverse",
- "create.engine.upgrade.transmission.neutral": "Neutral",
- "create.engine.upgrade.transmission.shift_1": "1st Gear",
- "create.engine.upgrade.transmission.shift_2": "2nd Gear",
- "create.engine.upgrade.transmission.shift_3": "3rd Gear",
- "create.engine.upgrade.transmission.shift_4": "4th Gear",
- "create.engine.upgrade.transmission.shift_5": "5th Gear",
- "create.engine.upgrade.transmission.shift_6": "6th Gear",
+ "tfmg.engine.upgrade.transmission.reverse": "Reverse",
+ "tfmg.engine.upgrade.transmission.neutral": "Neutral",
+ "tfmg.engine.upgrade.transmission.shift_1": "1st Gear",
+ "tfmg.engine.upgrade.transmission.shift_2": "2nd Gear",
+ "tfmg.engine.upgrade.transmission.shift_3": "3rd Gear",
+ "tfmg.engine.upgrade.transmission.shift_4": "4th Gear",
+ "tfmg.engine.upgrade.transmission.shift_5": "5th Gear",
+ "tfmg.engine.upgrade.transmission.shift_6": "6th Gear",
- "create.engine.type.engine_i": "I",
- "create.engine.type.engine_v": "V",
- "create.engine.type.engine_w": "W",
- "create.engine.type.engine_u": "U",
- "create.engine.type.boxer": "Boxer",
- "create.engine.type.radial": "Radial",
- "create.engine.type.turbine": "Turbine",
+ "tfmg.engine.type.engine_i": "I",
+ "tfmg.engine.type.engine_v": "V",
+ "tfmg.engine.type.engine_w": "W",
+ "tfmg.engine.type.engine_u": "U",
+ "tfmg.engine.type.boxer": "Boxer",
+ "tfmg.engine.type.radial": "Radial",
+ "tfmg.engine.type.turbine": "Turbine",
- "create.goggles.voltmeter.mode.voltage": "Voltage",
- "create.goggles.voltmeter.mode.high_voltage": "Voltage (High)",
- "create.goggles.voltmeter.mode.current": "Current",
- "create.goggles.voltmeter.mode.resistance": "Resistance",
- "create.goggles.voltmeter.mode.power": "Power",
- "create.goggles.voltmeter.mode.net_power_use": "Network Power Usage",
- "create.goggles.voltmeter.mode.net_power_gen": "Network Power Generation",
- "create.goggles.voltmeter.mode.capacity": "Capacity",
- "create.goggles.voltmeter.mode.fallback": "Fallback",
+ "tfmg.goggles.voltmeter.mode.voltage": "Voltage",
+ "tfmg.goggles.voltmeter.mode.high_voltage": "Voltage (High)",
+ "tfmg.goggles.voltmeter.mode.current": "Current",
+ "tfmg.goggles.voltmeter.mode.resistance": "Resistance",
+ "tfmg.goggles.voltmeter.mode.power": "Power",
+ "tfmg.goggles.voltmeter.mode.net_power_use": "Network Power Usage",
+ "tfmg.goggles.voltmeter.mode.net_power_gen": "Network Power Generation",
+ "tfmg.goggles.voltmeter.mode.capacity": "Capacity",
+ "tfmg.goggles.voltmeter.mode.fallback": "Fallback",
"tfmg.display_source.electricity.power_usage": "Power Usage",
"tfmg.display_source.electricity.network_resistance": "Network Resistance",
@@ -217,21 +223,21 @@
"effect.tfmg.hellfire": "Hellfire",
- "create.wires.removed_data": "Data Removed",
+ "tfmg.wires.removed_data": "Data Removed",
- "create.oil_hammer.reserves": "Oil Reserves: %1$s",
+ "tfmg.oil_hammer.reserves": "Oil Reserves: %1$s",
"tfmg.subtitle.engine_sounds": "Engine Sounds",
"tfmg.subtitle.diesel_engine_sounds": "Diesel Engine Sounds",
- "create.flamethrower.fuel.spread": "%s Projectile Spread",
- "create.flamethrower.fuel.speed": "%s Projectile Speed",
- "create.flamethrower.fuel.amount": "%s Projectile Amount",
- "create.flamethrower.fuel.cold": "Cold Flame",
- "create.flamethrower.fuel.hellfire": "Scorching Flame",
- "create.flamethrower.fuel.capacity": "Fuel Capacity: %s"
+ "tfmg.flamethrower.fuel.spread": "%s Projectile Spread",
+ "tfmg.flamethrower.fuel.speed": "%s Projectile Speed",
+ "tfmg.flamethrower.fuel.amount": "%s Projectile Amount",
+ "tfmg.flamethrower.fuel.cold": "Cold Flame",
+ "tfmg.flamethrower.fuel.hellfire": "Scorching Flame",
+ "tfmg.flamethrower.fuel.capacity": "Fuel Capacity: %s"
}
diff --git a/src/main/resources/assets/tfmg/models/block/copper_encased_cast_iron_pipe/block_flat.json b/src/main/resources/assets/tfmg/models/block/copper_encased_cast_iron_pipe/block_flat.json
deleted file mode 100644
index 1e58d7dc..00000000
--- a/src/main/resources/assets/tfmg/models/block/copper_encased_cast_iron_pipe/block_flat.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "credit": "Made with Blockbench",
- "textures": {
- "0": "tfmg:block/copper_encased_cast_iron_pipe_side",
- "particle": "tfmg:block/copper_encased_cast_iron_pipe_side"
- },
- "elements": [
- {
- "from": [0, 0, 15],
- "to": [16, 16, 16],
- "faces": {
- "south": {"uv": [0, 0, 16, 16], "texture": "#0"}
- }
- }
- ]
-}
\ No newline at end of file
diff --git a/src/main/resources/assets/tfmg/models/block/copper_encased_cast_iron_pipe/block_open.json b/src/main/resources/assets/tfmg/models/block/copper_encased_cast_iron_pipe/block_open.json
deleted file mode 100644
index adfe0cb1..00000000
--- a/src/main/resources/assets/tfmg/models/block/copper_encased_cast_iron_pipe/block_open.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "credit": "Made with Blockbench",
- "textures": {
- "0": "tfmg:block/copper_encased_cast_iron_pipe",
- "particle": "tfmg:block/copper_encased_cast_iron_pipe"
- },
- "elements": [
- {
- "from": [0, 0, 15],
- "to": [16, 16, 16],
- "faces": {
- "south": {"uv": [0, 0, 16, 16], "texture": "#0"}
- }
- }
- ]
-}
\ No newline at end of file
diff --git a/src/main/resources/assets/tfmg/models/block/copper_encased_steel_pipe/block_flat.json b/src/main/resources/assets/tfmg/models/block/encased_aluminum_pipe/block_flat.json
similarity index 66%
rename from src/main/resources/assets/tfmg/models/block/copper_encased_steel_pipe/block_flat.json
rename to src/main/resources/assets/tfmg/models/block/encased_aluminum_pipe/block_flat.json
index db4c4929..862ba208 100644
--- a/src/main/resources/assets/tfmg/models/block/copper_encased_steel_pipe/block_flat.json
+++ b/src/main/resources/assets/tfmg/models/block/encased_aluminum_pipe/block_flat.json
@@ -1,8 +1,8 @@
{
"credit": "Made with Blockbench",
"textures": {
- "0": "tfmg:block/copper_encased_steel_pipe_side",
- "particle": "tfmg:block/copper_encased_steel_pipe_side"
+ "0": "tfmg:block/encased_aluminum_pipe_side",
+ "particle": "tfmg:block/encased_aluminum_pipe_side"
},
"elements": [
{
diff --git a/src/main/resources/assets/tfmg/models/block/copper_encased_steel_pipe/block_open.json b/src/main/resources/assets/tfmg/models/block/encased_aluminum_pipe/block_open.json
similarity index 66%
rename from src/main/resources/assets/tfmg/models/block/copper_encased_steel_pipe/block_open.json
rename to src/main/resources/assets/tfmg/models/block/encased_aluminum_pipe/block_open.json
index dba7e96d..4fc93024 100644
--- a/src/main/resources/assets/tfmg/models/block/copper_encased_steel_pipe/block_open.json
+++ b/src/main/resources/assets/tfmg/models/block/encased_aluminum_pipe/block_open.json
@@ -1,8 +1,8 @@
{
"credit": "Made with Blockbench",
"textures": {
- "0": "tfmg:block/copper_encased_steel_pipe",
- "particle": "tfmg:block/copper_encased_steel_pipe"
+ "0": "tfmg:block/encased_aluminum_pipe",
+ "particle": "tfmg:block/encased_aluminum_pipe"
},
"elements": [
{
diff --git a/src/main/resources/assets/tfmg/models/block/copper_encased_brass_pipe/block_flat.json b/src/main/resources/assets/tfmg/models/block/encased_brass_pipe/block_flat.json
similarity index 66%
rename from src/main/resources/assets/tfmg/models/block/copper_encased_brass_pipe/block_flat.json
rename to src/main/resources/assets/tfmg/models/block/encased_brass_pipe/block_flat.json
index 51019955..e2c862fc 100644
--- a/src/main/resources/assets/tfmg/models/block/copper_encased_brass_pipe/block_flat.json
+++ b/src/main/resources/assets/tfmg/models/block/encased_brass_pipe/block_flat.json
@@ -1,8 +1,8 @@
{
"credit": "Made with Blockbench",
"textures": {
- "0": "tfmg:block/copper_encased_brass_pipe_side",
- "particle": "tfmg:block/copper_encased_brass_pipe_side"
+ "0": "tfmg:block/encased_brass_pipe_side",
+ "particle": "tfmg:block/encased_brass_pipe_side"
},
"elements": [
{
diff --git a/src/main/resources/assets/tfmg/models/block/copper_encased_brass_pipe/block_open.json b/src/main/resources/assets/tfmg/models/block/encased_brass_pipe/block_open.json
similarity index 66%
rename from src/main/resources/assets/tfmg/models/block/copper_encased_brass_pipe/block_open.json
rename to src/main/resources/assets/tfmg/models/block/encased_brass_pipe/block_open.json
index 0d0b5060..07742e43 100644
--- a/src/main/resources/assets/tfmg/models/block/copper_encased_brass_pipe/block_open.json
+++ b/src/main/resources/assets/tfmg/models/block/encased_brass_pipe/block_open.json
@@ -1,8 +1,8 @@
{
"credit": "Made with Blockbench",
"textures": {
- "0": "tfmg:block/copper_encased_brass_pipe",
- "particle": "tfmg:block/copper_encased_brass_pipe"
+ "0": "tfmg:block/encased_brass_pipe",
+ "particle": "tfmg:block/encased_brass_pipe"
},
"elements": [
{
diff --git a/src/main/resources/assets/tfmg/models/block/copper_encased_plastic_pipe/block_flat.json b/src/main/resources/assets/tfmg/models/block/encased_cast_iron_pipe/block_flat.json
similarity index 65%
rename from src/main/resources/assets/tfmg/models/block/copper_encased_plastic_pipe/block_flat.json
rename to src/main/resources/assets/tfmg/models/block/encased_cast_iron_pipe/block_flat.json
index 183c25ae..1fda6f3b 100644
--- a/src/main/resources/assets/tfmg/models/block/copper_encased_plastic_pipe/block_flat.json
+++ b/src/main/resources/assets/tfmg/models/block/encased_cast_iron_pipe/block_flat.json
@@ -1,8 +1,8 @@
{
"credit": "Made with Blockbench",
"textures": {
- "0": "tfmg:block/copper_encased_plastic_pipe_side",
- "particle": "tfmg:block/copper_encased_plastic_pipe_side"
+ "0": "tfmg:block/encased_cast_iron_pipe_side",
+ "particle": "tfmg:block/encased_cast_iron_pipe_side"
},
"elements": [
{
diff --git a/src/main/resources/assets/tfmg/models/block/copper_encased_plastic_pipe/block_open.json b/src/main/resources/assets/tfmg/models/block/encased_cast_iron_pipe/block_open.json
similarity index 65%
rename from src/main/resources/assets/tfmg/models/block/copper_encased_plastic_pipe/block_open.json
rename to src/main/resources/assets/tfmg/models/block/encased_cast_iron_pipe/block_open.json
index 790c2c84..b5001545 100644
--- a/src/main/resources/assets/tfmg/models/block/copper_encased_plastic_pipe/block_open.json
+++ b/src/main/resources/assets/tfmg/models/block/encased_cast_iron_pipe/block_open.json
@@ -1,8 +1,8 @@
{
"credit": "Made with Blockbench",
"textures": {
- "0": "tfmg:block/copper_encased_plastic_pipe",
- "particle": "tfmg:block/copper_encased_plastic_pipe"
+ "0": "tfmg:block/encased_cast_iron_pipe",
+ "particle": "tfmg:block/encased_cast_iron_pipe"
},
"elements": [
{
diff --git a/src/main/resources/assets/tfmg/models/block/copper_encased_aluminum_pipe/block_flat.json b/src/main/resources/assets/tfmg/models/block/encased_plastic_pipe/block_flat.json
similarity index 65%
rename from src/main/resources/assets/tfmg/models/block/copper_encased_aluminum_pipe/block_flat.json
rename to src/main/resources/assets/tfmg/models/block/encased_plastic_pipe/block_flat.json
index 6d7bd9ea..21ad3d73 100644
--- a/src/main/resources/assets/tfmg/models/block/copper_encased_aluminum_pipe/block_flat.json
+++ b/src/main/resources/assets/tfmg/models/block/encased_plastic_pipe/block_flat.json
@@ -1,8 +1,8 @@
{
"credit": "Made with Blockbench",
"textures": {
- "0": "tfmg:block/copper_encased_aluminum_pipe_side",
- "particle": "tfmg:block/copper_encased_aluminum_pipe_side"
+ "0": "tfmg:block/encased_plastic_pipe_side",
+ "particle": "tfmg:block/encased_plastic_pipe_side"
},
"elements": [
{
diff --git a/src/main/resources/assets/tfmg/models/block/copper_encased_aluminum_pipe/block_open.json b/src/main/resources/assets/tfmg/models/block/encased_plastic_pipe/block_open.json
similarity index 65%
rename from src/main/resources/assets/tfmg/models/block/copper_encased_aluminum_pipe/block_open.json
rename to src/main/resources/assets/tfmg/models/block/encased_plastic_pipe/block_open.json
index fefa0ca2..46c37552 100644
--- a/src/main/resources/assets/tfmg/models/block/copper_encased_aluminum_pipe/block_open.json
+++ b/src/main/resources/assets/tfmg/models/block/encased_plastic_pipe/block_open.json
@@ -1,8 +1,8 @@
{
"credit": "Made with Blockbench",
"textures": {
- "0": "tfmg:block/copper_encased_aluminum_pipe",
- "particle": "tfmg:block/copper_encased_aluminum_pipe"
+ "0": "tfmg:block/encased_plastic_pipe",
+ "particle": "tfmg:block/encased_plastic_pipe"
},
"elements": [
{
diff --git a/src/main/resources/assets/tfmg/models/block/encased_steel_pipe/block_flat.json b/src/main/resources/assets/tfmg/models/block/encased_steel_pipe/block_flat.json
new file mode 100644
index 00000000..53bf1de2
--- /dev/null
+++ b/src/main/resources/assets/tfmg/models/block/encased_steel_pipe/block_flat.json
@@ -0,0 +1,16 @@
+{
+ "credit": "Made with Blockbench",
+ "textures": {
+ "0": "tfmg:block/encased_steel_pipe_side",
+ "particle": "tfmg:block/encased_steel_pipe_side"
+ },
+ "elements": [
+ {
+ "from": [0, 0, 15],
+ "to": [16, 16, 16],
+ "faces": {
+ "south": {"uv": [0, 0, 16, 16], "texture": "#0"}
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/src/main/resources/assets/tfmg/models/block/encased_steel_pipe/block_open.json b/src/main/resources/assets/tfmg/models/block/encased_steel_pipe/block_open.json
new file mode 100644
index 00000000..85c40a88
--- /dev/null
+++ b/src/main/resources/assets/tfmg/models/block/encased_steel_pipe/block_open.json
@@ -0,0 +1,16 @@
+{
+ "credit": "Made with Blockbench",
+ "textures": {
+ "0": "tfmg:block/encased_steel_pipe",
+ "particle": "tfmg:block/encased_steel_pipe"
+ },
+ "elements": [
+ {
+ "from": [0, 0, 15],
+ "to": [16, 16, 16],
+ "faces": {
+ "south": {"uv": [0, 0, 16, 16], "texture": "#0"}
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/src/main/resources/assets/tfmg/textures/block/copper_encased_aluminum_pipe.png b/src/main/resources/assets/tfmg/textures/block/encased_aluminum_pipe.png
similarity index 100%
rename from src/main/resources/assets/tfmg/textures/block/copper_encased_aluminum_pipe.png
rename to src/main/resources/assets/tfmg/textures/block/encased_aluminum_pipe.png
diff --git a/src/main/resources/assets/tfmg/textures/block/copper_encased_aluminum_pipe_side.png b/src/main/resources/assets/tfmg/textures/block/encased_aluminum_pipe_side.png
similarity index 100%
rename from src/main/resources/assets/tfmg/textures/block/copper_encased_aluminum_pipe_side.png
rename to src/main/resources/assets/tfmg/textures/block/encased_aluminum_pipe_side.png
diff --git a/src/main/resources/assets/tfmg/textures/block/copper_encased_aluminum_pipe_side_connected.png b/src/main/resources/assets/tfmg/textures/block/encased_aluminum_pipe_side_connected.png
similarity index 100%
rename from src/main/resources/assets/tfmg/textures/block/copper_encased_aluminum_pipe_side_connected.png
rename to src/main/resources/assets/tfmg/textures/block/encased_aluminum_pipe_side_connected.png
diff --git a/src/main/resources/assets/tfmg/textures/block/copper_encased_brass_pipe.png b/src/main/resources/assets/tfmg/textures/block/encased_brass_pipe.png
similarity index 100%
rename from src/main/resources/assets/tfmg/textures/block/copper_encased_brass_pipe.png
rename to src/main/resources/assets/tfmg/textures/block/encased_brass_pipe.png
diff --git a/src/main/resources/assets/tfmg/textures/block/copper_encased_brass_pipe_side.png b/src/main/resources/assets/tfmg/textures/block/encased_brass_pipe_side.png
similarity index 100%
rename from src/main/resources/assets/tfmg/textures/block/copper_encased_brass_pipe_side.png
rename to src/main/resources/assets/tfmg/textures/block/encased_brass_pipe_side.png
diff --git a/src/main/resources/assets/tfmg/textures/block/copper_encased_brass_pipe_side_connected.png b/src/main/resources/assets/tfmg/textures/block/encased_brass_pipe_side_connected.png
similarity index 100%
rename from src/main/resources/assets/tfmg/textures/block/copper_encased_brass_pipe_side_connected.png
rename to src/main/resources/assets/tfmg/textures/block/encased_brass_pipe_side_connected.png
diff --git a/src/main/resources/assets/tfmg/textures/block/copper_encased_cast_iron_pipe.png b/src/main/resources/assets/tfmg/textures/block/encased_cast_iron_pipe.png
similarity index 100%
rename from src/main/resources/assets/tfmg/textures/block/copper_encased_cast_iron_pipe.png
rename to src/main/resources/assets/tfmg/textures/block/encased_cast_iron_pipe.png
diff --git a/src/main/resources/assets/tfmg/textures/block/copper_encased_cast_iron_pipe_side.png b/src/main/resources/assets/tfmg/textures/block/encased_cast_iron_pipe_side.png
similarity index 100%
rename from src/main/resources/assets/tfmg/textures/block/copper_encased_cast_iron_pipe_side.png
rename to src/main/resources/assets/tfmg/textures/block/encased_cast_iron_pipe_side.png
diff --git a/src/main/resources/assets/tfmg/textures/block/copper_encased_cast_iron_pipe_side_connected.png b/src/main/resources/assets/tfmg/textures/block/encased_cast_iron_pipe_side_connected.png
similarity index 100%
rename from src/main/resources/assets/tfmg/textures/block/copper_encased_cast_iron_pipe_side_connected.png
rename to src/main/resources/assets/tfmg/textures/block/encased_cast_iron_pipe_side_connected.png
diff --git a/src/main/resources/assets/tfmg/textures/block/copper_encased_lead_pipe.png b/src/main/resources/assets/tfmg/textures/block/encased_lead_pipe.png
similarity index 100%
rename from src/main/resources/assets/tfmg/textures/block/copper_encased_lead_pipe.png
rename to src/main/resources/assets/tfmg/textures/block/encased_lead_pipe.png
diff --git a/src/main/resources/assets/tfmg/textures/block/copper_encased_plastic_pipe.png b/src/main/resources/assets/tfmg/textures/block/encased_plastic_pipe.png
similarity index 100%
rename from src/main/resources/assets/tfmg/textures/block/copper_encased_plastic_pipe.png
rename to src/main/resources/assets/tfmg/textures/block/encased_plastic_pipe.png
diff --git a/src/main/resources/assets/tfmg/textures/block/copper_encased_plastic_pipe_side.png b/src/main/resources/assets/tfmg/textures/block/encased_plastic_pipe_side.png
similarity index 100%
rename from src/main/resources/assets/tfmg/textures/block/copper_encased_plastic_pipe_side.png
rename to src/main/resources/assets/tfmg/textures/block/encased_plastic_pipe_side.png
diff --git a/src/main/resources/assets/tfmg/textures/block/copper_encased_plastic_pipe_side_connected.png b/src/main/resources/assets/tfmg/textures/block/encased_plastic_pipe_side_connected.png
similarity index 100%
rename from src/main/resources/assets/tfmg/textures/block/copper_encased_plastic_pipe_side_connected.png
rename to src/main/resources/assets/tfmg/textures/block/encased_plastic_pipe_side_connected.png
diff --git a/src/main/resources/assets/tfmg/textures/block/copper_encased_steel_pipe.png b/src/main/resources/assets/tfmg/textures/block/encased_steel_pipe.png
similarity index 100%
rename from src/main/resources/assets/tfmg/textures/block/copper_encased_steel_pipe.png
rename to src/main/resources/assets/tfmg/textures/block/encased_steel_pipe.png
diff --git a/src/main/resources/assets/tfmg/textures/block/copper_encased_steel_pipe_side.png b/src/main/resources/assets/tfmg/textures/block/encased_steel_pipe_side.png
similarity index 100%
rename from src/main/resources/assets/tfmg/textures/block/copper_encased_steel_pipe_side.png
rename to src/main/resources/assets/tfmg/textures/block/encased_steel_pipe_side.png
diff --git a/src/main/resources/assets/tfmg/textures/block/copper_encased_steel_pipe_side_connected.png b/src/main/resources/assets/tfmg/textures/block/encased_steel_pipe_side_connected.png
similarity index 100%
rename from src/main/resources/assets/tfmg/textures/block/copper_encased_steel_pipe_side_connected.png
rename to src/main/resources/assets/tfmg/textures/block/encased_steel_pipe_side_connected.png