diff --git a/gradle.properties b/gradle.properties index 04fc0e6f..a60c887c 100644 --- a/gradle.properties +++ b/gradle.properties @@ -33,7 +33,7 @@ registrate_version = MC1.21-1.3.0+62 mod_id=tfmg mod_name=Create: The Factory Must Grow mod_license=MIT -mod_version=1.2.0 +mod_version=1.2.1 mod_group_id=com.drmangotea mod_authors= DrMangoTea, Pepa, Luna mod_description= Create: The Factory Must Grow brings the age of steel, oil and electricity to the Create mod diff --git a/src/generated/resources/assets/tfmg/blockstates/compressor.json b/src/generated/resources/assets/tfmg/blockstates/compressor.json new file mode 100644 index 00000000..e645ecd6 --- /dev/null +++ b/src/generated/resources/assets/tfmg/blockstates/compressor.json @@ -0,0 +1,19 @@ +{ + "variants": { + "facing=east": { + "model": "tfmg:block/compressor/block", + "y": 90 + }, + "facing=north": { + "model": "tfmg:block/compressor/block" + }, + "facing=south": { + "model": "tfmg:block/compressor/block", + "y": 180 + }, + "facing=west": { + "model": "tfmg:block/compressor/block", + "y": 270 + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/tfmg/blockstates/freezer.json b/src/generated/resources/assets/tfmg/blockstates/freezer.json new file mode 100644 index 00000000..a752c18f --- /dev/null +++ b/src/generated/resources/assets/tfmg/blockstates/freezer.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfmg:block/freezer/block" + } + } +} \ 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 d2d013ef..4c1004bc 100644 --- a/src/generated/resources/assets/tfmg/lang/en_ud.json +++ b/src/generated/resources/assets/tfmg/lang/en_ud.json @@ -104,6 +104,7 @@ "block.tfmg.coal_coke_block": "ǝʞoƆ ןɐoƆ ɟo ʞɔoןᗺ", "block.tfmg.cocrete_hose.tooltip.summary": "ǝʇǝɹɔuoɔ ɹɐqǝɹ sɐ sǝıɹp ǝʇǝɹɔuoɔ ʇǝS ˙sʞɔoןq ɹɐqǝɹ oʇuı ʎǝןןnd ǝsoɥ ɐ ǝʞıן ǝʇǝɹɔuoɔ sdɯnԀ", "block.tfmg.coke_oven": "uǝʌO ǝʞoƆ", + "block.tfmg.compressor": "ɹossǝɹdɯoƆ", "block.tfmg.concrete": "ǝʇǝɹɔuoƆ", "block.tfmg.concrete_encased_cable_tube": "ǝqn⟘ ǝןqɐƆ pǝsɐɔuƎ ǝʇǝɹɔuoƆ", "block.tfmg.concrete_encased_electric_post": "ʇsoԀ ɔıɹʇɔǝןƎ pǝsɐɔuƎ ǝʇǝɹɔuoƆ", @@ -199,6 +200,7 @@ "block.tfmg.flarestack.tooltip.condition1": "ɯoʇʇoq ǝɥʇ ɯoɹɟ oʇuı sǝsɐ⅁/spınןℲ ǝןqɐuɹnq pǝdɯnԀ uǝɥM", "block.tfmg.flarestack.tooltip.summary": "sʇɔnpoɹd ןıo pǝpǝǝuun suɹnᗺ", "block.tfmg.fossilstone": "ǝuoʇsןıssoℲ", + "block.tfmg.freezer": "ɹǝzǝǝɹℲ", "block.tfmg.galena": "ɐuǝןɐ⅁", "block.tfmg.galena_pillar": "ɹɐןןıԀ ɐuǝןɐ⅁", "block.tfmg.gas_lamp": "dɯɐꞀ sɐ⅁", @@ -527,6 +529,10 @@ "create.recipe.industrial_blasting": "buıʇsɐןᗺ ןɐıɹʇsnpuI", "create.recipe.polarizing": "buızıɹɐןoԀ", "create.recipe.winding": "buıpuıM", + "create.vat.heat": "ʇɐǝH", + "create.vat.heat_dots": " ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙", + "create.vat.pressure": "ǝɹnssǝɹԀ", + "create.vat.pressure_dots": " ˙˙˙", "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", @@ -935,6 +941,9 @@ "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.compressor.depressurizing": "buızıɹnssǝɹdǝᗡ :ǝʇɐʇS", + "tfmg.goggles.compressor.non_operational": ")WԀᴚ 0ᄅƖ ʇsɐǝן ʇɐ spǝǝN(ןɐuoıʇɐɹǝdO uoN :ǝʇɐʇS", + "tfmg.goggles.compressor.pressurizing": "buızıɹnssǝɹԀ :ǝʇɐʇS", "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", diff --git a/src/generated/resources/assets/tfmg/lang/en_us.json b/src/generated/resources/assets/tfmg/lang/en_us.json index 962ddebc..2f319b5d 100644 --- a/src/generated/resources/assets/tfmg/lang/en_us.json +++ b/src/generated/resources/assets/tfmg/lang/en_us.json @@ -104,6 +104,7 @@ "block.tfmg.coal_coke_block": "Block of Coal Coke", "block.tfmg.cocrete_hose.tooltip.summary": "Pumps concrete like a hose pulley into rebar blocks. Set concrete dries as rebar concrete", "block.tfmg.coke_oven": "Coke Oven", + "block.tfmg.compressor": "Compressor", "block.tfmg.concrete": "Concrete", "block.tfmg.concrete_encased_cable_tube": "Concrete Encased Cable Tube", "block.tfmg.concrete_encased_electric_post": "Concrete Encased Electric Post", @@ -199,6 +200,7 @@ "block.tfmg.flarestack.tooltip.condition1": "When Pumped burnable Fluids/Gases into from the bottom", "block.tfmg.flarestack.tooltip.summary": "Burns unneeded oil products", "block.tfmg.fossilstone": "Fossilstone", + "block.tfmg.freezer": "Freezer", "block.tfmg.galena": "Galena", "block.tfmg.galena_pillar": "Galena Pillar", "block.tfmg.gas_lamp": "Gas Lamp", @@ -527,6 +529,10 @@ "create.recipe.industrial_blasting": "Industrial Blasting", "create.recipe.polarizing": "Polarizing", "create.recipe.winding": "Winding", + "create.vat.heat": "Heat", + "create.vat.heat_dots": "................ ", + "create.vat.pressure": "Pressure", + "create.vat.pressure_dots": "... ", "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", @@ -935,6 +941,9 @@ "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.compressor.depressurizing": "State: Depressurizing", + "tfmg.goggles.compressor.non_operational": "State: Non Operational(Needs at least 120 RPM)", + "tfmg.goggles.compressor.pressurizing": "State: Pressurizing", "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", diff --git a/src/generated/resources/assets/tfmg/models/item/compressor.json b/src/generated/resources/assets/tfmg/models/item/compressor.json new file mode 100644 index 00000000..ce5843d0 --- /dev/null +++ b/src/generated/resources/assets/tfmg/models/item/compressor.json @@ -0,0 +1,3 @@ +{ + "parent": "tfmg:block/compressor/item" +} \ No newline at end of file diff --git a/src/generated/resources/assets/tfmg/models/item/freezer.json b/src/generated/resources/assets/tfmg/models/item/freezer.json new file mode 100644 index 00000000..64e84e67 --- /dev/null +++ b/src/generated/resources/assets/tfmg/models/item/freezer.json @@ -0,0 +1,3 @@ +{ + "parent": "tfmg:block/freezer/item" +} \ No newline at end of file diff --git a/src/generated/resources/data/c/tags/block/concretes.json b/src/generated/resources/data/c/tags/block/concretes.json index 4fa61502..d9e58c53 100644 --- a/src/generated/resources/data/c/tags/block/concretes.json +++ b/src/generated/resources/data/c/tags/block/concretes.json @@ -1,5 +1,7 @@ { "values": [ + "tfmg:concrete", + "tfmg:rebar_concrete", "tfmg:concrete", "tfmg:rebar_concrete" ] diff --git a/src/generated/resources/data/c/tags/block/ores.json b/src/generated/resources/data/c/tags/block/ores.json index 20d648fe..44374b8d 100644 --- a/src/generated/resources/data/c/tags/block/ores.json +++ b/src/generated/resources/data/c/tags/block/ores.json @@ -1,5 +1,11 @@ { "values": [ + "tfmg:lead_ore", + "tfmg:deepslate_lead_ore", + "tfmg:nickel_ore", + "tfmg:deepslate_nickel_ore", + "tfmg:lithium_ore", + "tfmg:deepslate_lithium_ore", "tfmg:lead_ore", "tfmg:deepslate_lead_ore", "tfmg:nickel_ore", diff --git a/src/generated/resources/data/c/tags/block/ores/lead.json b/src/generated/resources/data/c/tags/block/ores/lead.json index 264048ac..95b82d4c 100644 --- a/src/generated/resources/data/c/tags/block/ores/lead.json +++ b/src/generated/resources/data/c/tags/block/ores/lead.json @@ -1,5 +1,7 @@ { "values": [ + "tfmg:lead_ore", + "tfmg:deepslate_lead_ore", "tfmg:lead_ore", "tfmg:deepslate_lead_ore" ] diff --git a/src/generated/resources/data/c/tags/block/ores/lithium.json b/src/generated/resources/data/c/tags/block/ores/lithium.json index 396a2d05..d9175086 100644 --- a/src/generated/resources/data/c/tags/block/ores/lithium.json +++ b/src/generated/resources/data/c/tags/block/ores/lithium.json @@ -1,5 +1,7 @@ { "values": [ + "tfmg:lithium_ore", + "tfmg:deepslate_lithium_ore", "tfmg:lithium_ore", "tfmg:deepslate_lithium_ore" ] diff --git a/src/generated/resources/data/c/tags/block/ores/nickel.json b/src/generated/resources/data/c/tags/block/ores/nickel.json index ddc59df5..20b3e2fd 100644 --- a/src/generated/resources/data/c/tags/block/ores/nickel.json +++ b/src/generated/resources/data/c/tags/block/ores/nickel.json @@ -1,5 +1,7 @@ { "values": [ + "tfmg:nickel_ore", + "tfmg:deepslate_nickel_ore", "tfmg:nickel_ore", "tfmg:deepslate_nickel_ore" ] diff --git a/src/generated/resources/data/c/tags/block/ores_in_ground/deepslate.json b/src/generated/resources/data/c/tags/block/ores_in_ground/deepslate.json index 3931b56e..362d13f6 100644 --- a/src/generated/resources/data/c/tags/block/ores_in_ground/deepslate.json +++ b/src/generated/resources/data/c/tags/block/ores_in_ground/deepslate.json @@ -1,5 +1,8 @@ { "values": [ + "tfmg:deepslate_lead_ore", + "tfmg:deepslate_nickel_ore", + "tfmg:deepslate_lithium_ore", "tfmg:deepslate_lead_ore", "tfmg:deepslate_nickel_ore", "tfmg:deepslate_lithium_ore" diff --git a/src/generated/resources/data/c/tags/block/ores_in_ground/stone.json b/src/generated/resources/data/c/tags/block/ores_in_ground/stone.json index bc683351..7d7698cc 100644 --- a/src/generated/resources/data/c/tags/block/ores_in_ground/stone.json +++ b/src/generated/resources/data/c/tags/block/ores_in_ground/stone.json @@ -1,5 +1,8 @@ { "values": [ + "tfmg:lead_ore", + "tfmg:nickel_ore", + "tfmg:lithium_ore", "tfmg:lead_ore", "tfmg:nickel_ore", "tfmg:lithium_ore" diff --git a/src/generated/resources/data/c/tags/block/storage_blocks.json b/src/generated/resources/data/c/tags/block/storage_blocks.json index 1499a549..c180b9cb 100644 --- a/src/generated/resources/data/c/tags/block/storage_blocks.json +++ b/src/generated/resources/data/c/tags/block/storage_blocks.json @@ -11,6 +11,15 @@ "tfmg:constantan_block", "tfmg:nickel_block", "tfmg:lithium_block", + "tfmg:coal_coke_block", + "tfmg:steel_block", + "tfmg:cast_iron_block", + "tfmg:aluminum_block", + "tfmg:plastic_block", + "tfmg:lead_block", + "tfmg:constantan_block", + "tfmg:nickel_block", + "tfmg:lithium_block", "tfmg:coal_coke_block" ] } \ No newline at end of file diff --git a/src/generated/resources/data/c/tags/block/storage_blocks/aluminum.json b/src/generated/resources/data/c/tags/block/storage_blocks/aluminum.json index a88e7648..1fe74cf2 100644 --- a/src/generated/resources/data/c/tags/block/storage_blocks/aluminum.json +++ b/src/generated/resources/data/c/tags/block/storage_blocks/aluminum.json @@ -1,5 +1,6 @@ { "values": [ + "tfmg:aluminum_block", "tfmg:aluminum_block" ] } \ No newline at end of file diff --git a/src/generated/resources/data/c/tags/block/storage_blocks/cast_iron.json b/src/generated/resources/data/c/tags/block/storage_blocks/cast_iron.json index 498da03a..080415cd 100644 --- a/src/generated/resources/data/c/tags/block/storage_blocks/cast_iron.json +++ b/src/generated/resources/data/c/tags/block/storage_blocks/cast_iron.json @@ -1,5 +1,6 @@ { "values": [ + "tfmg:cast_iron_block", "tfmg:cast_iron_block" ] } \ No newline at end of file diff --git a/src/generated/resources/data/c/tags/block/storage_blocks/coal_coke.json b/src/generated/resources/data/c/tags/block/storage_blocks/coal_coke.json index 5490b710..1c3c2e38 100644 --- a/src/generated/resources/data/c/tags/block/storage_blocks/coal_coke.json +++ b/src/generated/resources/data/c/tags/block/storage_blocks/coal_coke.json @@ -1,5 +1,6 @@ { "values": [ + "tfmg:coal_coke_block", "tfmg:coal_coke_block" ] } \ No newline at end of file diff --git a/src/generated/resources/data/c/tags/block/storage_blocks/constantan.json b/src/generated/resources/data/c/tags/block/storage_blocks/constantan.json index 625838b4..4aee7f01 100644 --- a/src/generated/resources/data/c/tags/block/storage_blocks/constantan.json +++ b/src/generated/resources/data/c/tags/block/storage_blocks/constantan.json @@ -1,5 +1,6 @@ { "values": [ + "tfmg:constantan_block", "tfmg:constantan_block" ] } \ No newline at end of file diff --git a/src/generated/resources/data/c/tags/block/storage_blocks/lead.json b/src/generated/resources/data/c/tags/block/storage_blocks/lead.json index aac1dd9c..a1f9eeec 100644 --- a/src/generated/resources/data/c/tags/block/storage_blocks/lead.json +++ b/src/generated/resources/data/c/tags/block/storage_blocks/lead.json @@ -1,5 +1,6 @@ { "values": [ + "tfmg:lead_block", "tfmg:lead_block" ] } \ No newline at end of file diff --git a/src/generated/resources/data/c/tags/block/storage_blocks/lithium.json b/src/generated/resources/data/c/tags/block/storage_blocks/lithium.json index bc9a4fd3..70b9d554 100644 --- a/src/generated/resources/data/c/tags/block/storage_blocks/lithium.json +++ b/src/generated/resources/data/c/tags/block/storage_blocks/lithium.json @@ -1,5 +1,6 @@ { "values": [ + "tfmg:lithium_block", "tfmg:lithium_block" ] } \ No newline at end of file diff --git a/src/generated/resources/data/c/tags/block/storage_blocks/nickel.json b/src/generated/resources/data/c/tags/block/storage_blocks/nickel.json index ec57e0a0..27723268 100644 --- a/src/generated/resources/data/c/tags/block/storage_blocks/nickel.json +++ b/src/generated/resources/data/c/tags/block/storage_blocks/nickel.json @@ -1,5 +1,6 @@ { "values": [ + "tfmg:nickel_block", "tfmg:nickel_block" ] } \ No newline at end of file diff --git a/src/generated/resources/data/c/tags/block/storage_blocks/plastic.json b/src/generated/resources/data/c/tags/block/storage_blocks/plastic.json index 108f3f95..aa452c4f 100644 --- a/src/generated/resources/data/c/tags/block/storage_blocks/plastic.json +++ b/src/generated/resources/data/c/tags/block/storage_blocks/plastic.json @@ -1,5 +1,6 @@ { "values": [ + "tfmg:plastic_block", "tfmg:plastic_block" ] } \ No newline at end of file diff --git a/src/generated/resources/data/c/tags/block/storage_blocks/raw_lead.json b/src/generated/resources/data/c/tags/block/storage_blocks/raw_lead.json index 41c1cbc2..43983399 100644 --- a/src/generated/resources/data/c/tags/block/storage_blocks/raw_lead.json +++ b/src/generated/resources/data/c/tags/block/storage_blocks/raw_lead.json @@ -1,5 +1,6 @@ { "values": [ + "tfmg:raw_lead_block", "tfmg:raw_lead_block" ] } \ No newline at end of file diff --git a/src/generated/resources/data/c/tags/block/storage_blocks/raw_lithium.json b/src/generated/resources/data/c/tags/block/storage_blocks/raw_lithium.json index af200fbd..621b46f3 100644 --- a/src/generated/resources/data/c/tags/block/storage_blocks/raw_lithium.json +++ b/src/generated/resources/data/c/tags/block/storage_blocks/raw_lithium.json @@ -1,5 +1,6 @@ { "values": [ + "tfmg:raw_lithium_block", "tfmg:raw_lithium_block" ] } \ No newline at end of file diff --git a/src/generated/resources/data/c/tags/block/storage_blocks/raw_nickel.json b/src/generated/resources/data/c/tags/block/storage_blocks/raw_nickel.json index 4e01dbfe..35d89b00 100644 --- a/src/generated/resources/data/c/tags/block/storage_blocks/raw_nickel.json +++ b/src/generated/resources/data/c/tags/block/storage_blocks/raw_nickel.json @@ -1,5 +1,6 @@ { "values": [ + "tfmg:raw_nickel_block", "tfmg:raw_nickel_block" ] } \ No newline at end of file diff --git a/src/generated/resources/data/c/tags/block/storage_blocks/steel.json b/src/generated/resources/data/c/tags/block/storage_blocks/steel.json index 72a5c238..374f91ed 100644 --- a/src/generated/resources/data/c/tags/block/storage_blocks/steel.json +++ b/src/generated/resources/data/c/tags/block/storage_blocks/steel.json @@ -1,5 +1,6 @@ { "values": [ + "tfmg:steel_block", "tfmg:steel_block" ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/tags/block/casing.json b/src/generated/resources/data/create/tags/block/casing.json index e210d238..a36867e2 100644 --- a/src/generated/resources/data/create/tags/block/casing.json +++ b/src/generated/resources/data/create/tags/block/casing.json @@ -1,5 +1,8 @@ { "values": [ + "tfmg:steel_casing", + "tfmg:heavy_machinery_casing", + "tfmg:industrial_aluminum_casing", "tfmg:steel_casing", "tfmg:heavy_machinery_casing", "tfmg:industrial_aluminum_casing" diff --git a/src/generated/resources/data/create/tags/block/fan_transparent.json b/src/generated/resources/data/create/tags/block/fan_transparent.json index d80575ae..b9d51a74 100644 --- a/src/generated/resources/data/create/tags/block/fan_transparent.json +++ b/src/generated/resources/data/create/tags/block/fan_transparent.json @@ -1,6 +1,12 @@ { "values": [ "tfmg:copycat_cable_base", + "tfmg:copycat_cable_base", + "tfmg:steel_bars", + "tfmg:aluminum_bars", + "tfmg:cast_iron_bars", + "tfmg:lead_bars", + "tfmg:nickel_bars", "tfmg:steel_bars", "tfmg:aluminum_bars", "tfmg:cast_iron_bars", diff --git a/src/generated/resources/data/create/tags/block/non_movable.json b/src/generated/resources/data/create/tags/block/non_movable.json index 3a446ee8..27f71e7f 100644 --- a/src/generated/resources/data/create/tags/block/non_movable.json +++ b/src/generated/resources/data/create/tags/block/non_movable.json @@ -2,6 +2,8 @@ "values": [ "tfmg:oil_deposit", "tfmg:large_switch", + "tfmg:large_transformer", + "tfmg:large_switch", "tfmg:large_transformer" ] } \ No newline at end of file diff --git a/src/generated/resources/data/create/tags/block/wrench_pickup.json b/src/generated/resources/data/create/tags/block/wrench_pickup.json index c72282b9..7919c0f0 100644 --- a/src/generated/resources/data/create/tags/block/wrench_pickup.json +++ b/src/generated/resources/data/create/tags/block/wrench_pickup.json @@ -1,5 +1,10 @@ { "values": [ + "tfmg:steel_bars", + "tfmg:aluminum_bars", + "tfmg:cast_iron_bars", + "tfmg:lead_bars", + "tfmg:nickel_bars", "tfmg:steel_bars", "tfmg:aluminum_bars", "tfmg:cast_iron_bars", diff --git a/src/generated/resources/data/minecraft/tags/block/azalea_root_replaceable.json b/src/generated/resources/data/minecraft/tags/block/azalea_root_replaceable.json index 258d635d..931b53a7 100644 --- a/src/generated/resources/data/minecraft/tags/block/azalea_root_replaceable.json +++ b/src/generated/resources/data/minecraft/tags/block/azalea_root_replaceable.json @@ -1,5 +1,7 @@ { "values": [ + "tfmg:bauxite", + "tfmg:galena", "tfmg:bauxite", "tfmg:galena" ] diff --git a/src/generated/resources/data/minecraft/tags/block/beacon_base_blocks.json b/src/generated/resources/data/minecraft/tags/block/beacon_base_blocks.json index c3448e0b..6811f6f0 100644 --- a/src/generated/resources/data/minecraft/tags/block/beacon_base_blocks.json +++ b/src/generated/resources/data/minecraft/tags/block/beacon_base_blocks.json @@ -1,5 +1,13 @@ { "values": [ + "tfmg:steel_block", + "tfmg:cast_iron_block", + "tfmg:aluminum_block", + "tfmg:lead_block", + "tfmg:constantan_block", + "tfmg:nickel_block", + "tfmg:lithium_block", + "tfmg:laminated_magnetic_alloy_block", "tfmg:steel_block", "tfmg:cast_iron_block", "tfmg:aluminum_block", diff --git a/src/generated/resources/data/minecraft/tags/block/climbable.json b/src/generated/resources/data/minecraft/tags/block/climbable.json index fa6c6601..52adbc8d 100644 --- a/src/generated/resources/data/minecraft/tags/block/climbable.json +++ b/src/generated/resources/data/minecraft/tags/block/climbable.json @@ -1,5 +1,13 @@ { "values": [ + "tfmg:steel_ladder", + "tfmg:aluminum_ladder", + "tfmg:cast_iron_ladder", + "tfmg:lead_ladder", + "tfmg:nickel_ladder", + "tfmg:constantan_ladder", + "tfmg:steel_scaffolding", + "tfmg:aluminum_scaffolding", "tfmg:steel_ladder", "tfmg:aluminum_ladder", "tfmg:cast_iron_ladder", diff --git a/src/generated/resources/data/minecraft/tags/block/doors.json b/src/generated/resources/data/minecraft/tags/block/doors.json index 73c4858a..46187c7e 100644 --- a/src/generated/resources/data/minecraft/tags/block/doors.json +++ b/src/generated/resources/data/minecraft/tags/block/doors.json @@ -1,5 +1,9 @@ { "values": [ + "tfmg:heavy_casing_door", + "tfmg:steel_door", + "tfmg:aluminum_door", + "tfmg:heavy_plated_door", "tfmg:heavy_casing_door", "tfmg:steel_door", "tfmg:aluminum_door", diff --git a/src/generated/resources/data/minecraft/tags/block/dripstone_replaceable_blocks.json b/src/generated/resources/data/minecraft/tags/block/dripstone_replaceable_blocks.json index 258d635d..931b53a7 100644 --- a/src/generated/resources/data/minecraft/tags/block/dripstone_replaceable_blocks.json +++ b/src/generated/resources/data/minecraft/tags/block/dripstone_replaceable_blocks.json @@ -1,5 +1,7 @@ { "values": [ + "tfmg:bauxite", + "tfmg:galena", "tfmg:bauxite", "tfmg:galena" ] diff --git a/src/generated/resources/data/minecraft/tags/block/lush_ground_replaceable.json b/src/generated/resources/data/minecraft/tags/block/lush_ground_replaceable.json index 258d635d..931b53a7 100644 --- a/src/generated/resources/data/minecraft/tags/block/lush_ground_replaceable.json +++ b/src/generated/resources/data/minecraft/tags/block/lush_ground_replaceable.json @@ -1,5 +1,7 @@ { "values": [ + "tfmg:bauxite", + "tfmg:galena", "tfmg:bauxite", "tfmg:galena" ] diff --git a/src/generated/resources/data/minecraft/tags/block/mineable/axe.json b/src/generated/resources/data/minecraft/tags/block/mineable/axe.json index 478ac519..b008d03b 100644 --- a/src/generated/resources/data/minecraft/tags/block/mineable/axe.json +++ b/src/generated/resources/data/minecraft/tags/block/mineable/axe.json @@ -9,20 +9,20 @@ "tfmg:steel_casing", "tfmg:heavy_machinery_casing", "tfmg:industrial_aluminum_casing", + "tfmg:encased_brass_pipe", + "tfmg:encased_steel_pipe", "tfmg:steel_gearbox", + "tfmg:encased_aluminum_pipe", + "tfmg:encased_cast_iron_pipe", + "tfmg:encased_plastic_pipe", "tfmg:hardened_planks", "tfmg:steel_flywheel", "tfmg:lead_flywheel", "tfmg:cast_iron_flywheel", - "tfmg:aluminum_flywheel", - "tfmg:nickel_flywheel", - "tfmg:encased_brass_pipe", - "tfmg:encased_steel_pipe", - "tfmg:encased_aluminum_pipe", - "tfmg:encased_cast_iron_pipe", - "tfmg:encased_plastic_pipe", "tfmg:steel_encased_shaft", + "tfmg:aluminum_flywheel", "tfmg:heavy_casing_encased_shaft", + "tfmg:nickel_flywheel", "tfmg:steel_encased_steel_cogwheel", "tfmg:heavy_casing_encased_steel_cogwheel", "tfmg:steel_encased_large_steel_cogwheel", diff --git a/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json b/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json index f31b4216..bbda3f0a 100644 --- a/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json +++ b/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json @@ -1,200 +1,360 @@ { "values": [ + "tfmg:purple_concrete", "tfmg:aluminum_fluid_tank", + "tfmg:purple_concrete_wall", "tfmg:cast_iron_fluid_tank", + "tfmg:purple_concrete_stairs", "tfmg:steel_fluid_tank", "tfmg:steel_distillation_output", + "tfmg:purple_concrete_slab", "tfmg:steel_distillation_controller", "tfmg:industrial_pipe", + "tfmg:orange_concrete", "tfmg:concrete_encased_industrial_pipe", + "tfmg:orange_concrete_wall", "tfmg:pumpjack_hammer", + "tfmg:orange_concrete_stairs", "tfmg:pumpjack_crank", + "tfmg:orange_concrete_slab", "tfmg:pumpjack_hammer_part", + "tfmg:black_concrete", + "tfmg:black_concrete_wall", "tfmg:pumpjack_hammer_head", + "tfmg:black_concrete_stairs", "tfmg:pumpjack_hammer_connector", + "tfmg:black_concrete_slab", + "tfmg:white_rebar_concrete", + "tfmg:white_rebar_concrete_wall", "tfmg:large_pumpjack_hammer_part", + "tfmg:white_rebar_concrete_stairs", "tfmg:large_pumpjack_hammer_head", + "tfmg:white_rebar_concrete_slab", "tfmg:large_pumpjack_hammer_connector", + "tfmg:blue_rebar_concrete", "tfmg:pumpjack_base", + "tfmg:blue_rebar_concrete_wall", "tfmg:oil_deposit", + "tfmg:blue_rebar_concrete_stairs", "tfmg:steel_chemical_vat", + "tfmg:blue_rebar_concrete_slab", "tfmg:cast_iron_chemical_vat", "tfmg:fireproof_chemical_vat", "tfmg:industrial_mixer", + "tfmg:light_blue_rebar_concrete", "tfmg:electrode_holder", + "tfmg:freezer", + "tfmg:light_blue_rebar_concrete_wall", + "tfmg:compressor", + "tfmg:light_blue_rebar_concrete_stairs", "tfmg:lead_ore", + "tfmg:light_blue_rebar_concrete_slab", "tfmg:deepslate_lead_ore", "tfmg:nickel_ore", + "tfmg:red_rebar_concrete", "tfmg:deepslate_nickel_ore", "tfmg:lithium_ore", + "tfmg:red_rebar_concrete_wall", "tfmg:deepslate_lithium_ore", "tfmg:sulfur", "tfmg:lignite", + "tfmg:red_rebar_concrete_stairs", "tfmg:fossilstone", + "tfmg:red_rebar_concrete_slab", "tfmg:slag_block", "tfmg:raw_nickel_block", "tfmg:raw_lead_block", + "tfmg:green_rebar_concrete", "tfmg:raw_lithium_block", "tfmg:air_intake", + "tfmg:green_rebar_concrete_wall", "tfmg:firebox", "tfmg:winding_machine", + "tfmg:green_rebar_concrete_stairs", "tfmg:surface_scanner", + "tfmg:green_rebar_concrete_slab", + "tfmg:lime_rebar_concrete", "tfmg:machine_input", "tfmg:concrete_hose", + "tfmg:lime_rebar_concrete_wall", "tfmg:blast_furnace_output", "tfmg:blast_furnace_hatch", + "tfmg:lime_rebar_concrete_stairs", "tfmg:fireproof_bricks", + "tfmg:lime_rebar_concrete_slab", "tfmg:reinforced_fireproof_bricks", + "tfmg:pink_rebar_concrete", "tfmg:blast_furnace_reinforcement", + "tfmg:pink_rebar_concrete_wall", "tfmg:blast_furnace_reinforcement_wall", + "tfmg:pink_rebar_concrete_stairs", "tfmg:rusted_blast_furnace_reinforcement", + "tfmg:pink_rebar_concrete_slab", "tfmg:rusted_blast_furnace_reinforcement_wall", + "tfmg:magenta_rebar_concrete", "tfmg:fireproof_brick_reinforcement", + "tfmg:magenta_rebar_concrete_wall", "tfmg:coke_oven", + "tfmg:magenta_rebar_concrete_stairs", "tfmg:blast_stove", + "tfmg:magenta_rebar_concrete_slab", "tfmg:casting_basin", + "tfmg:yellow_rebar_concrete", "tfmg:napalm_bomb", + "tfmg:yellow_rebar_concrete_wall", "tfmg:generator", + "tfmg:yellow_rebar_concrete_stairs", "tfmg:cable_connector", + "tfmg:yellow_rebar_concrete_slab", "tfmg:glass_cable_insulator", + "tfmg:gray_rebar_concrete", "tfmg:resistor", + "tfmg:gray_rebar_concrete_wall", "tfmg:copycat_cable_block", + "tfmg:gray_rebar_concrete_stairs", "tfmg:copycat_cable_base", + "tfmg:gray_rebar_concrete_slab", + "tfmg:light_gray_rebar_concrete", "tfmg:brass_cable_hub", + "tfmg:light_gray_rebar_concrete_wall", "tfmg:copper_cable_hub", + "tfmg:light_gray_rebar_concrete_stairs", "tfmg:steel_cable_hub", + "tfmg:light_gray_rebar_concrete_slab", "tfmg:aluminum_cable_hub", "tfmg:steel_casing_cable_hub", + "tfmg:brown_rebar_concrete", "tfmg:heavy_cable_hub", + "tfmg:brown_rebar_concrete_wall", "tfmg:cable_tube", + "tfmg:brown_rebar_concrete_stairs", "tfmg:concrete_encased_cable_tube", + "tfmg:brown_rebar_concrete_slab", "tfmg:electric_post", + "tfmg:cyan_rebar_concrete", "tfmg:concrete_encased_electric_post", "tfmg:diagonal_cable_block", "tfmg:electric_motor", "tfmg:creative_generator", + "tfmg:cyan_rebar_concrete_wall", "tfmg:accumulator", "tfmg:light_bulb", + "tfmg:cyan_rebar_concrete_stairs", "tfmg:circular_light", "tfmg:modern_light", + "tfmg:cyan_rebar_concrete_slab", "tfmg:aluminum_lamp", "tfmg:neon_tube", + "tfmg:purple_rebar_concrete", "tfmg:electric_diode", + "tfmg:purple_rebar_concrete_wall", "tfmg:encased_diode", + "tfmg:purple_rebar_concrete_stairs", "tfmg:potentiometer", + "tfmg:purple_rebar_concrete_slab", "tfmg:electrical_switch", "tfmg:large_switch", + "tfmg:orange_rebar_concrete", "tfmg:encased_potentiometer", "tfmg:electric_pump", + "tfmg:orange_rebar_concrete_wall", "tfmg:voltage_observer", "tfmg:voltmeter", + "tfmg:orange_rebar_concrete_stairs", "tfmg:polarizer", + "tfmg:orange_rebar_concrete_slab", "tfmg:rotor", "tfmg:stator", + "tfmg:black_rebar_concrete", "tfmg:traffic_light", "tfmg:segmented_display", "tfmg:transformer", "tfmg:large_transformer", + "tfmg:black_rebar_concrete_wall", "tfmg:converter", "tfmg:large_coil", "tfmg:brick_smokestack", "tfmg:metal_smokestack", + "tfmg:black_rebar_concrete_stairs", "tfmg:concrete_smokestack", "tfmg:exhaust", + "tfmg:black_rebar_concrete_slab", "tfmg:flarestack", "tfmg:gas_lamp", + "tfmg:asphalt", "tfmg:steel_cogwheel", "tfmg:large_steel_cogwheel", + "tfmg:asphalt_wall", "tfmg:aluminum_cogwheel", "tfmg:large_aluminum_cogwheel", + "tfmg:asphalt_slab", "tfmg:steel_casing", "tfmg:heavy_machinery_casing", "tfmg:industrial_aluminum_casing", + "tfmg:asphalt_stairs", "tfmg:steel_block", "tfmg:cast_iron_block", + "tfmg:brass_pipe", "tfmg:aluminum_block", "tfmg:plastic_block", + "tfmg:encased_brass_pipe", "tfmg:lead_block", + "tfmg:glass_brass_pipe", "tfmg:constantan_block", "tfmg:nickel_block", + "tfmg:brass_mechanical_pump", "tfmg:lithium_block", "tfmg:coal_coke_block", + "tfmg:brass_smart_fluid_pipe", "tfmg:laminated_magnetic_alloy_block", + "tfmg:brass_fluid_valve", "tfmg:heavy_casing_door", + "tfmg:steel_pipe", "tfmg:steel_door", + "tfmg:encased_steel_pipe", "tfmg:aluminum_door", + "tfmg:glass_steel_pipe", "tfmg:heavy_plated_door", + "tfmg:steel_mechanical_pump", "tfmg:steel_gearbox", "tfmg:steel_bars", + "tfmg:steel_smart_fluid_pipe", "tfmg:aluminum_bars", "tfmg:cast_iron_bars", + "tfmg:steel_fluid_valve", "tfmg:lead_bars", + "tfmg:aluminum_pipe", "tfmg:nickel_bars", + "tfmg:encased_aluminum_pipe", "tfmg:steel_ladder", + "tfmg:glass_aluminum_pipe", "tfmg:aluminum_ladder", + "tfmg:aluminum_mechanical_pump", "tfmg:cast_iron_ladder", + "tfmg:aluminum_smart_fluid_pipe", "tfmg:lead_ladder", + "tfmg:aluminum_fluid_valve", "tfmg:nickel_ladder", + "tfmg:cast_iron_pipe", "tfmg:constantan_ladder", + "tfmg:encased_cast_iron_pipe", "tfmg:steel_scaffolding", + "tfmg:glass_cast_iron_pipe", "tfmg:aluminum_scaffolding", + "tfmg:cast_iron_mechanical_pump", "tfmg:slag_bricks", + "tfmg:cast_iron_smart_fluid_pipe", "tfmg:cinder_block", + "tfmg:cast_iron_fluid_valve", "tfmg:cinderflour_block", + "tfmg:plastic_pipe", "tfmg:factory_floor", + "tfmg:encased_plastic_pipe", + "tfmg:glass_plastic_pipe", "tfmg:steel_trapdoor", + "tfmg:plastic_mechanical_pump", "tfmg:steel_flywheel", + "tfmg:plastic_smart_fluid_pipe", "tfmg:lead_flywheel", + "tfmg:plastic_fluid_valve", "tfmg:cast_iron_flywheel", + "tfmg:steel_encased_shaft", "tfmg:aluminum_flywheel", + "tfmg:heavy_casing_encased_shaft", "tfmg:nickel_flywheel", + "tfmg:steel_encased_steel_cogwheel", "tfmg:steel_truss", + "tfmg:heavy_casing_encased_steel_cogwheel", "tfmg:steel_frame", + "tfmg:steel_encased_large_steel_cogwheel", "tfmg:aluminum_truss", + "tfmg:heavy_casing_encased_large_steel_cogwheel", "tfmg:aluminum_frame", + "tfmg:steel_encased_aluminum_cogwheel", "tfmg:cast_iron_truss", + "tfmg:heavy_casing_encased_aluminum_cogwheel", "tfmg:cast_iron_frame", + "tfmg:steel_encased_large_aluminum_cogwheel", "tfmg:lead_truss", + "tfmg:heavy_casing_encased_large_aluminum_cogwheel", "tfmg:lead_frame", + "tfmg:bauxite", "tfmg:nickel_truss", "tfmg:nickel_frame", + "tfmg:cut_bauxite", "tfmg:constantan_truss", + "tfmg:cut_bauxite_stairs", "tfmg:constantan_frame", + "tfmg:cut_bauxite_slab", "tfmg:copper_truss", + "tfmg:cut_bauxite_wall", "tfmg:copper_frame", + "tfmg:polished_cut_bauxite", "tfmg:zinc_truss", + "tfmg:polished_cut_bauxite_stairs", "tfmg:zinc_frame", + "tfmg:polished_cut_bauxite_slab", "tfmg:brass_truss", + "tfmg:polished_cut_bauxite_wall", "tfmg:brass_frame", + "tfmg:cut_bauxite_bricks", "tfmg:white_caution_block", "tfmg:blue_caution_block", + "tfmg:cut_bauxite_brick_stairs", "tfmg:light_blue_caution_block", + "tfmg:cut_bauxite_brick_slab", "tfmg:red_caution_block", + "tfmg:cut_bauxite_brick_wall", "tfmg:green_caution_block", + "tfmg:small_bauxite_bricks", "tfmg:lime_caution_block", + "tfmg:small_bauxite_brick_stairs", "tfmg:pink_caution_block", + "tfmg:small_bauxite_brick_slab", "tfmg:magenta_caution_block", + "tfmg:small_bauxite_brick_wall", "tfmg:yellow_caution_block", + "tfmg:layered_bauxite", "tfmg:gray_caution_block", + "tfmg:bauxite_pillar", "tfmg:light_gray_caution_block", + "tfmg:galena", "tfmg:brown_caution_block", + "tfmg:cut_galena", "tfmg:cyan_caution_block", + "tfmg:cut_galena_stairs", "tfmg:purple_caution_block", + "tfmg:cut_galena_slab", "tfmg:orange_caution_block", + "tfmg:cut_galena_wall", "tfmg:rebar_block", + "tfmg:polished_cut_galena", "tfmg:rebar_floor", + "tfmg:polished_cut_galena_stairs", "tfmg:rebar_wall", + "tfmg:polished_cut_galena_slab", "tfmg:rebar_pile", + "tfmg:polished_cut_galena_wall", "tfmg:rebar_stairs", + "tfmg:cut_galena_bricks", "tfmg:rebar_pillar", + "tfmg:cut_galena_brick_stairs", "tfmg:concrete_wall", + "tfmg:cut_galena_brick_slab", "tfmg:concrete", + "tfmg:cut_galena_brick_wall", "tfmg:concrete_stairs", + "tfmg:small_galena_bricks", "tfmg:concrete_slab", + "tfmg:small_galena_brick_stairs", "tfmg:rebar_concrete_wall", + "tfmg:small_galena_brick_slab", "tfmg:rebar_concrete", + "tfmg:small_galena_brick_wall", "tfmg:rebar_concrete_stairs", + "tfmg:layered_galena", "tfmg:rebar_concrete_slab", + "tfmg:galena_pillar", "tfmg:white_concrete", "tfmg:white_concrete_wall", "tfmg:white_concrete_stairs", @@ -205,205 +365,6 @@ "tfmg:blue_concrete_slab", "tfmg:light_blue_concrete", "tfmg:light_blue_concrete_wall", - "tfmg:light_blue_concrete_stairs", - "tfmg:light_blue_concrete_slab", - "tfmg:red_concrete", - "tfmg:red_concrete_wall", - "tfmg:red_concrete_stairs", - "tfmg:red_concrete_slab", - "tfmg:green_concrete", - "tfmg:green_concrete_wall", - "tfmg:green_concrete_stairs", - "tfmg:green_concrete_slab", - "tfmg:lime_concrete", - "tfmg:lime_concrete_wall", - "tfmg:lime_concrete_stairs", - "tfmg:lime_concrete_slab", - "tfmg:pink_concrete", - "tfmg:pink_concrete_wall", - "tfmg:pink_concrete_stairs", - "tfmg:pink_concrete_slab", - "tfmg:magenta_concrete", - "tfmg:magenta_concrete_wall", - "tfmg:magenta_concrete_stairs", - "tfmg:magenta_concrete_slab", - "tfmg:yellow_concrete", - "tfmg:yellow_concrete_wall", - "tfmg:yellow_concrete_stairs", - "tfmg:yellow_concrete_slab", - "tfmg:gray_concrete", - "tfmg:gray_concrete_wall", - "tfmg:gray_concrete_stairs", - "tfmg:gray_concrete_slab", - "tfmg:light_gray_concrete", - "tfmg:light_gray_concrete_wall", - "tfmg:light_gray_concrete_stairs", - "tfmg:light_gray_concrete_slab", - "tfmg:brown_concrete", - "tfmg:brown_concrete_wall", - "tfmg:brown_concrete_stairs", - "tfmg:brown_concrete_slab", - "tfmg:cyan_concrete", - "tfmg:cyan_concrete_wall", - "tfmg:cyan_concrete_stairs", - "tfmg:cyan_concrete_slab", - "tfmg:purple_concrete", - "tfmg:purple_concrete_wall", - "tfmg:purple_concrete_stairs", - "tfmg:purple_concrete_slab", - "tfmg:orange_concrete", - "tfmg:orange_concrete_wall", - "tfmg:orange_concrete_stairs", - "tfmg:orange_concrete_slab", - "tfmg:black_concrete", - "tfmg:black_concrete_wall", - "tfmg:black_concrete_stairs", - "tfmg:black_concrete_slab", - "tfmg:white_rebar_concrete", - "tfmg:white_rebar_concrete_wall", - "tfmg:white_rebar_concrete_stairs", - "tfmg:white_rebar_concrete_slab", - "tfmg:blue_rebar_concrete", - "tfmg:blue_rebar_concrete_wall", - "tfmg:blue_rebar_concrete_stairs", - "tfmg:blue_rebar_concrete_slab", - "tfmg:light_blue_rebar_concrete", - "tfmg:light_blue_rebar_concrete_wall", - "tfmg:light_blue_rebar_concrete_stairs", - "tfmg:light_blue_rebar_concrete_slab", - "tfmg:red_rebar_concrete", - "tfmg:red_rebar_concrete_wall", - "tfmg:red_rebar_concrete_stairs", - "tfmg:red_rebar_concrete_slab", - "tfmg:green_rebar_concrete", - "tfmg:green_rebar_concrete_wall", - "tfmg:green_rebar_concrete_stairs", - "tfmg:green_rebar_concrete_slab", - "tfmg:lime_rebar_concrete", - "tfmg:lime_rebar_concrete_wall", - "tfmg:lime_rebar_concrete_stairs", - "tfmg:lime_rebar_concrete_slab", - "tfmg:pink_rebar_concrete", - "tfmg:pink_rebar_concrete_wall", - "tfmg:pink_rebar_concrete_stairs", - "tfmg:pink_rebar_concrete_slab", - "tfmg:magenta_rebar_concrete", - "tfmg:magenta_rebar_concrete_wall", - "tfmg:magenta_rebar_concrete_stairs", - "tfmg:magenta_rebar_concrete_slab", - "tfmg:yellow_rebar_concrete", - "tfmg:yellow_rebar_concrete_wall", - "tfmg:yellow_rebar_concrete_stairs", - "tfmg:yellow_rebar_concrete_slab", - "tfmg:gray_rebar_concrete", - "tfmg:gray_rebar_concrete_wall", - "tfmg:gray_rebar_concrete_stairs", - "tfmg:gray_rebar_concrete_slab", - "tfmg:light_gray_rebar_concrete", - "tfmg:light_gray_rebar_concrete_wall", - "tfmg:light_gray_rebar_concrete_stairs", - "tfmg:light_gray_rebar_concrete_slab", - "tfmg:brown_rebar_concrete", - "tfmg:brown_rebar_concrete_wall", - "tfmg:brown_rebar_concrete_stairs", - "tfmg:brown_rebar_concrete_slab", - "tfmg:cyan_rebar_concrete", - "tfmg:cyan_rebar_concrete_wall", - "tfmg:cyan_rebar_concrete_stairs", - "tfmg:cyan_rebar_concrete_slab", - "tfmg:purple_rebar_concrete", - "tfmg:purple_rebar_concrete_wall", - "tfmg:purple_rebar_concrete_stairs", - "tfmg:purple_rebar_concrete_slab", - "tfmg:orange_rebar_concrete", - "tfmg:orange_rebar_concrete_wall", - "tfmg:orange_rebar_concrete_stairs", - "tfmg:orange_rebar_concrete_slab", - "tfmg:black_rebar_concrete", - "tfmg:black_rebar_concrete_wall", - "tfmg:black_rebar_concrete_stairs", - "tfmg:black_rebar_concrete_slab", - "tfmg:asphalt", - "tfmg:asphalt_wall", - "tfmg:asphalt_slab", - "tfmg:asphalt_stairs", - "tfmg:brass_pipe", - "tfmg:encased_brass_pipe", - "tfmg:glass_brass_pipe", - "tfmg:brass_mechanical_pump", - "tfmg:brass_smart_fluid_pipe", - "tfmg:brass_fluid_valve", - "tfmg:steel_pipe", - "tfmg:encased_steel_pipe", - "tfmg:glass_steel_pipe", - "tfmg:steel_mechanical_pump", - "tfmg:steel_smart_fluid_pipe", - "tfmg:steel_fluid_valve", - "tfmg:aluminum_pipe", - "tfmg:encased_aluminum_pipe", - "tfmg:glass_aluminum_pipe", - "tfmg:aluminum_mechanical_pump", - "tfmg:aluminum_smart_fluid_pipe", - "tfmg:aluminum_fluid_valve", - "tfmg:cast_iron_pipe", - "tfmg:encased_cast_iron_pipe", - "tfmg:glass_cast_iron_pipe", - "tfmg:cast_iron_mechanical_pump", - "tfmg:cast_iron_smart_fluid_pipe", - "tfmg:cast_iron_fluid_valve", - "tfmg:plastic_pipe", - "tfmg:encased_plastic_pipe", - "tfmg:glass_plastic_pipe", - "tfmg:plastic_mechanical_pump", - "tfmg:plastic_smart_fluid_pipe", - "tfmg:plastic_fluid_valve", - "tfmg:steel_encased_shaft", - "tfmg:heavy_casing_encased_shaft", - "tfmg:steel_encased_steel_cogwheel", - "tfmg:heavy_casing_encased_steel_cogwheel", - "tfmg:steel_encased_large_steel_cogwheel", - "tfmg:heavy_casing_encased_large_steel_cogwheel", - "tfmg:steel_encased_aluminum_cogwheel", - "tfmg:heavy_casing_encased_aluminum_cogwheel", - "tfmg:steel_encased_large_aluminum_cogwheel", - "tfmg:heavy_casing_encased_large_aluminum_cogwheel", - "tfmg:bauxite", - "tfmg:cut_bauxite", - "tfmg:cut_bauxite_stairs", - "tfmg:cut_bauxite_slab", - "tfmg:cut_bauxite_wall", - "tfmg:polished_cut_bauxite", - "tfmg:polished_cut_bauxite_stairs", - "tfmg:polished_cut_bauxite_slab", - "tfmg:polished_cut_bauxite_wall", - "tfmg:cut_bauxite_bricks", - "tfmg:cut_bauxite_brick_stairs", - "tfmg:cut_bauxite_brick_slab", - "tfmg:cut_bauxite_brick_wall", - "tfmg:small_bauxite_bricks", - "tfmg:small_bauxite_brick_stairs", - "tfmg:small_bauxite_brick_slab", - "tfmg:small_bauxite_brick_wall", - "tfmg:layered_bauxite", - "tfmg:bauxite_pillar", - "tfmg:galena", - "tfmg:cut_galena", - "tfmg:cut_galena_stairs", - "tfmg:cut_galena_slab", - "tfmg:cut_galena_wall", - "tfmg:polished_cut_galena", - "tfmg:polished_cut_galena_stairs", - "tfmg:polished_cut_galena_slab", - "tfmg:polished_cut_galena_wall", - "tfmg:cut_galena_bricks", - "tfmg:cut_galena_brick_stairs", - "tfmg:cut_galena_brick_slab", - "tfmg:cut_galena_brick_wall", - "tfmg:small_galena_bricks", - "tfmg:small_galena_brick_stairs", - "tfmg:small_galena_brick_slab", - "tfmg:small_galena_brick_wall", - "tfmg:layered_galena", - "tfmg:galena_pillar" + "tfmg:light_blue_concrete_stairs" ] } \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json b/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json index 61259ee5..10701a93 100644 --- a/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json +++ b/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json @@ -1,6 +1,7 @@ { "values": [ "tfmg:fireclay", + "tfmg:cement", "tfmg:cement" ] } \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/block/moss_replaceable.json b/src/generated/resources/data/minecraft/tags/block/moss_replaceable.json index 258d635d..931b53a7 100644 --- a/src/generated/resources/data/minecraft/tags/block/moss_replaceable.json +++ b/src/generated/resources/data/minecraft/tags/block/moss_replaceable.json @@ -1,5 +1,7 @@ { "values": [ + "tfmg:bauxite", + "tfmg:galena", "tfmg:bauxite", "tfmg:galena" ] diff --git a/src/generated/resources/data/minecraft/tags/block/needs_iron_tool.json b/src/generated/resources/data/minecraft/tags/block/needs_iron_tool.json index 7ce2a8d0..69ca706c 100644 --- a/src/generated/resources/data/minecraft/tags/block/needs_iron_tool.json +++ b/src/generated/resources/data/minecraft/tags/block/needs_iron_tool.json @@ -11,6 +11,20 @@ "tfmg:nickel_block", "tfmg:lithium_block", "tfmg:laminated_magnetic_alloy_block", + "tfmg:steel_block", + "tfmg:cast_iron_block", + "tfmg:aluminum_block", + "tfmg:lead_block", + "tfmg:constantan_block", + "tfmg:nickel_block", + "tfmg:lithium_block", + "tfmg:laminated_magnetic_alloy_block", + "tfmg:rebar_block", + "tfmg:rebar_floor", + "tfmg:rebar_wall", + "tfmg:rebar_pile", + "tfmg:rebar_stairs", + "tfmg:rebar_pillar", "tfmg:rebar_block", "tfmg:rebar_floor", "tfmg:rebar_wall", diff --git a/src/generated/resources/data/minecraft/tags/block/needs_stone_tool.json b/src/generated/resources/data/minecraft/tags/block/needs_stone_tool.json index de9af0ce..efe3f293 100644 --- a/src/generated/resources/data/minecraft/tags/block/needs_stone_tool.json +++ b/src/generated/resources/data/minecraft/tags/block/needs_stone_tool.json @@ -1,19 +1,99 @@ { "values": [ + "tfmg:purple_concrete", + "tfmg:purple_concrete_wall", + "tfmg:purple_concrete_stairs", + "tfmg:purple_concrete_slab", + "tfmg:orange_concrete", + "tfmg:orange_concrete_wall", + "tfmg:orange_concrete_stairs", + "tfmg:orange_concrete_slab", + "tfmg:black_concrete", + "tfmg:black_concrete_wall", + "tfmg:black_concrete_stairs", + "tfmg:black_concrete_slab", + "tfmg:white_rebar_concrete", + "tfmg:white_rebar_concrete_wall", + "tfmg:white_rebar_concrete_stairs", + "tfmg:white_rebar_concrete_slab", + "tfmg:blue_rebar_concrete", + "tfmg:blue_rebar_concrete_wall", + "tfmg:blue_rebar_concrete_stairs", + "tfmg:blue_rebar_concrete_slab", + "tfmg:light_blue_rebar_concrete", + "tfmg:light_blue_rebar_concrete_wall", + "tfmg:light_blue_rebar_concrete_stairs", "tfmg:lead_ore", + "tfmg:light_blue_rebar_concrete_slab", "tfmg:deepslate_lead_ore", "tfmg:nickel_ore", + "tfmg:red_rebar_concrete", "tfmg:deepslate_nickel_ore", "tfmg:lithium_ore", + "tfmg:red_rebar_concrete_wall", "tfmg:deepslate_lithium_ore", + "tfmg:red_rebar_concrete_stairs", + "tfmg:red_rebar_concrete_slab", + "tfmg:green_rebar_concrete", + "tfmg:green_rebar_concrete_wall", + "tfmg:green_rebar_concrete_stairs", + "tfmg:green_rebar_concrete_slab", + "tfmg:lime_rebar_concrete", + "tfmg:lime_rebar_concrete_wall", "tfmg:blast_furnace_output", "tfmg:blast_furnace_hatch", + "tfmg:lime_rebar_concrete_stairs", "tfmg:fireproof_bricks", + "tfmg:lime_rebar_concrete_slab", "tfmg:reinforced_fireproof_bricks", + "tfmg:pink_rebar_concrete", "tfmg:blast_furnace_reinforcement", + "tfmg:pink_rebar_concrete_wall", "tfmg:blast_furnace_reinforcement_wall", + "tfmg:pink_rebar_concrete_stairs", "tfmg:rusted_blast_furnace_reinforcement", + "tfmg:pink_rebar_concrete_slab", "tfmg:rusted_blast_furnace_reinforcement_wall", + "tfmg:magenta_rebar_concrete", + "tfmg:magenta_rebar_concrete_wall", + "tfmg:magenta_rebar_concrete_stairs", + "tfmg:magenta_rebar_concrete_slab", + "tfmg:yellow_rebar_concrete", + "tfmg:yellow_rebar_concrete_wall", + "tfmg:yellow_rebar_concrete_stairs", + "tfmg:yellow_rebar_concrete_slab", + "tfmg:gray_rebar_concrete", + "tfmg:gray_rebar_concrete_wall", + "tfmg:gray_rebar_concrete_stairs", + "tfmg:gray_rebar_concrete_slab", + "tfmg:light_gray_rebar_concrete", + "tfmg:light_gray_rebar_concrete_wall", + "tfmg:light_gray_rebar_concrete_stairs", + "tfmg:light_gray_rebar_concrete_slab", + "tfmg:brown_rebar_concrete", + "tfmg:brown_rebar_concrete_wall", + "tfmg:brown_rebar_concrete_stairs", + "tfmg:brown_rebar_concrete_slab", + "tfmg:cyan_rebar_concrete", + "tfmg:cyan_rebar_concrete_wall", + "tfmg:cyan_rebar_concrete_stairs", + "tfmg:cyan_rebar_concrete_slab", + "tfmg:purple_rebar_concrete", + "tfmg:purple_rebar_concrete_wall", + "tfmg:purple_rebar_concrete_stairs", + "tfmg:purple_rebar_concrete_slab", + "tfmg:orange_rebar_concrete", + "tfmg:orange_rebar_concrete_wall", + "tfmg:orange_rebar_concrete_stairs", + "tfmg:orange_rebar_concrete_slab", + "tfmg:black_rebar_concrete", + "tfmg:black_rebar_concrete_wall", + "tfmg:black_rebar_concrete_stairs", + "tfmg:black_rebar_concrete_slab", + "tfmg:asphalt", + "tfmg:asphalt_wall", + "tfmg:asphalt_slab", + "tfmg:asphalt_stairs", "tfmg:plastic_block", "tfmg:coal_coke_block", "tfmg:white_caution_block", @@ -66,110 +146,6 @@ "tfmg:pink_concrete", "tfmg:pink_concrete_wall", "tfmg:pink_concrete_stairs", - "tfmg:pink_concrete_slab", - "tfmg:magenta_concrete", - "tfmg:magenta_concrete_wall", - "tfmg:magenta_concrete_stairs", - "tfmg:magenta_concrete_slab", - "tfmg:yellow_concrete", - "tfmg:yellow_concrete_wall", - "tfmg:yellow_concrete_stairs", - "tfmg:yellow_concrete_slab", - "tfmg:gray_concrete", - "tfmg:gray_concrete_wall", - "tfmg:gray_concrete_stairs", - "tfmg:gray_concrete_slab", - "tfmg:light_gray_concrete", - "tfmg:light_gray_concrete_wall", - "tfmg:light_gray_concrete_stairs", - "tfmg:light_gray_concrete_slab", - "tfmg:brown_concrete", - "tfmg:brown_concrete_wall", - "tfmg:brown_concrete_stairs", - "tfmg:brown_concrete_slab", - "tfmg:cyan_concrete", - "tfmg:cyan_concrete_wall", - "tfmg:cyan_concrete_stairs", - "tfmg:cyan_concrete_slab", - "tfmg:purple_concrete", - "tfmg:purple_concrete_wall", - "tfmg:purple_concrete_stairs", - "tfmg:purple_concrete_slab", - "tfmg:orange_concrete", - "tfmg:orange_concrete_wall", - "tfmg:orange_concrete_stairs", - "tfmg:orange_concrete_slab", - "tfmg:black_concrete", - "tfmg:black_concrete_wall", - "tfmg:black_concrete_stairs", - "tfmg:black_concrete_slab", - "tfmg:white_rebar_concrete", - "tfmg:white_rebar_concrete_wall", - "tfmg:white_rebar_concrete_stairs", - "tfmg:white_rebar_concrete_slab", - "tfmg:blue_rebar_concrete", - "tfmg:blue_rebar_concrete_wall", - "tfmg:blue_rebar_concrete_stairs", - "tfmg:blue_rebar_concrete_slab", - "tfmg:light_blue_rebar_concrete", - "tfmg:light_blue_rebar_concrete_wall", - "tfmg:light_blue_rebar_concrete_stairs", - "tfmg:light_blue_rebar_concrete_slab", - "tfmg:red_rebar_concrete", - "tfmg:red_rebar_concrete_wall", - "tfmg:red_rebar_concrete_stairs", - "tfmg:red_rebar_concrete_slab", - "tfmg:green_rebar_concrete", - "tfmg:green_rebar_concrete_wall", - "tfmg:green_rebar_concrete_stairs", - "tfmg:green_rebar_concrete_slab", - "tfmg:lime_rebar_concrete", - "tfmg:lime_rebar_concrete_wall", - "tfmg:lime_rebar_concrete_stairs", - "tfmg:lime_rebar_concrete_slab", - "tfmg:pink_rebar_concrete", - "tfmg:pink_rebar_concrete_wall", - "tfmg:pink_rebar_concrete_stairs", - "tfmg:pink_rebar_concrete_slab", - "tfmg:magenta_rebar_concrete", - "tfmg:magenta_rebar_concrete_wall", - "tfmg:magenta_rebar_concrete_stairs", - "tfmg:magenta_rebar_concrete_slab", - "tfmg:yellow_rebar_concrete", - "tfmg:yellow_rebar_concrete_wall", - "tfmg:yellow_rebar_concrete_stairs", - "tfmg:yellow_rebar_concrete_slab", - "tfmg:gray_rebar_concrete", - "tfmg:gray_rebar_concrete_wall", - "tfmg:gray_rebar_concrete_stairs", - "tfmg:gray_rebar_concrete_slab", - "tfmg:light_gray_rebar_concrete", - "tfmg:light_gray_rebar_concrete_wall", - "tfmg:light_gray_rebar_concrete_stairs", - "tfmg:light_gray_rebar_concrete_slab", - "tfmg:brown_rebar_concrete", - "tfmg:brown_rebar_concrete_wall", - "tfmg:brown_rebar_concrete_stairs", - "tfmg:brown_rebar_concrete_slab", - "tfmg:cyan_rebar_concrete", - "tfmg:cyan_rebar_concrete_wall", - "tfmg:cyan_rebar_concrete_stairs", - "tfmg:cyan_rebar_concrete_slab", - "tfmg:purple_rebar_concrete", - "tfmg:purple_rebar_concrete_wall", - "tfmg:purple_rebar_concrete_stairs", - "tfmg:purple_rebar_concrete_slab", - "tfmg:orange_rebar_concrete", - "tfmg:orange_rebar_concrete_wall", - "tfmg:orange_rebar_concrete_stairs", - "tfmg:orange_rebar_concrete_slab", - "tfmg:black_rebar_concrete", - "tfmg:black_rebar_concrete_wall", - "tfmg:black_rebar_concrete_stairs", - "tfmg:black_rebar_concrete_slab", - "tfmg:asphalt", - "tfmg:asphalt_wall", - "tfmg:asphalt_slab", - "tfmg:asphalt_stairs" + "tfmg:pink_concrete_slab" ] } \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/block/slabs.json b/src/generated/resources/data/minecraft/tags/block/slabs.json index 2c9aded5..4fc96014 100644 --- a/src/generated/resources/data/minecraft/tags/block/slabs.json +++ b/src/generated/resources/data/minecraft/tags/block/slabs.json @@ -1,20 +1,5 @@ { "values": [ - "tfmg:concrete_slab", - "tfmg:rebar_concrete_slab", - "tfmg:white_concrete_slab", - "tfmg:blue_concrete_slab", - "tfmg:light_blue_concrete_slab", - "tfmg:red_concrete_slab", - "tfmg:green_concrete_slab", - "tfmg:lime_concrete_slab", - "tfmg:pink_concrete_slab", - "tfmg:magenta_concrete_slab", - "tfmg:yellow_concrete_slab", - "tfmg:gray_concrete_slab", - "tfmg:light_gray_concrete_slab", - "tfmg:brown_concrete_slab", - "tfmg:cyan_concrete_slab", "tfmg:purple_concrete_slab", "tfmg:orange_concrete_slab", "tfmg:black_concrete_slab", @@ -42,6 +27,16 @@ "tfmg:cut_galena_slab", "tfmg:polished_cut_galena_slab", "tfmg:cut_galena_brick_slab", - "tfmg:small_galena_brick_slab" + "tfmg:concrete_slab", + "tfmg:small_galena_brick_slab", + "tfmg:rebar_concrete_slab", + "tfmg:white_concrete_slab", + "tfmg:blue_concrete_slab", + "tfmg:light_blue_concrete_slab", + "tfmg:red_concrete_slab", + "tfmg:green_concrete_slab", + "tfmg:lime_concrete_slab", + "tfmg:pink_concrete_slab", + "tfmg:magenta_concrete_slab" ] } \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/block/stairs.json b/src/generated/resources/data/minecraft/tags/block/stairs.json index c53cbef6..024a7247 100644 --- a/src/generated/resources/data/minecraft/tags/block/stairs.json +++ b/src/generated/resources/data/minecraft/tags/block/stairs.json @@ -1,20 +1,5 @@ { "values": [ - "tfmg:concrete_stairs", - "tfmg:rebar_concrete_stairs", - "tfmg:white_concrete_stairs", - "tfmg:blue_concrete_stairs", - "tfmg:light_blue_concrete_stairs", - "tfmg:red_concrete_stairs", - "tfmg:green_concrete_stairs", - "tfmg:lime_concrete_stairs", - "tfmg:pink_concrete_stairs", - "tfmg:magenta_concrete_stairs", - "tfmg:yellow_concrete_stairs", - "tfmg:gray_concrete_stairs", - "tfmg:light_gray_concrete_stairs", - "tfmg:brown_concrete_stairs", - "tfmg:cyan_concrete_stairs", "tfmg:purple_concrete_stairs", "tfmg:orange_concrete_stairs", "tfmg:black_concrete_stairs", @@ -42,6 +27,16 @@ "tfmg:cut_galena_stairs", "tfmg:polished_cut_galena_stairs", "tfmg:cut_galena_brick_stairs", - "tfmg:small_galena_brick_stairs" + "tfmg:concrete_stairs", + "tfmg:small_galena_brick_stairs", + "tfmg:rebar_concrete_stairs", + "tfmg:white_concrete_stairs", + "tfmg:blue_concrete_stairs", + "tfmg:light_blue_concrete_stairs", + "tfmg:red_concrete_stairs", + "tfmg:green_concrete_stairs", + "tfmg:lime_concrete_stairs", + "tfmg:pink_concrete_stairs", + "tfmg:magenta_concrete_stairs" ] } \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/block/trapdoors.json b/src/generated/resources/data/minecraft/tags/block/trapdoors.json index 73d5d7eb..1acf1924 100644 --- a/src/generated/resources/data/minecraft/tags/block/trapdoors.json +++ b/src/generated/resources/data/minecraft/tags/block/trapdoors.json @@ -1,5 +1,6 @@ { "values": [ + "tfmg:steel_trapdoor", "tfmg:steel_trapdoor" ] } \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/block/walls.json b/src/generated/resources/data/minecraft/tags/block/walls.json index c0c10283..626e5a0d 100644 --- a/src/generated/resources/data/minecraft/tags/block/walls.json +++ b/src/generated/resources/data/minecraft/tags/block/walls.json @@ -1,21 +1,5 @@ { "values": [ - "tfmg:fireproof_brick_reinforcement", - "tfmg:concrete_wall", - "tfmg:rebar_concrete_wall", - "tfmg:white_concrete_wall", - "tfmg:blue_concrete_wall", - "tfmg:light_blue_concrete_wall", - "tfmg:red_concrete_wall", - "tfmg:green_concrete_wall", - "tfmg:lime_concrete_wall", - "tfmg:pink_concrete_wall", - "tfmg:magenta_concrete_wall", - "tfmg:yellow_concrete_wall", - "tfmg:gray_concrete_wall", - "tfmg:light_gray_concrete_wall", - "tfmg:brown_concrete_wall", - "tfmg:cyan_concrete_wall", "tfmg:purple_concrete_wall", "tfmg:orange_concrete_wall", "tfmg:black_concrete_wall", @@ -26,6 +10,7 @@ "tfmg:green_rebar_concrete_wall", "tfmg:lime_rebar_concrete_wall", "tfmg:pink_rebar_concrete_wall", + "tfmg:fireproof_brick_reinforcement", "tfmg:magenta_rebar_concrete_wall", "tfmg:yellow_rebar_concrete_wall", "tfmg:gray_rebar_concrete_wall", @@ -42,7 +27,17 @@ "tfmg:small_bauxite_brick_wall", "tfmg:cut_galena_wall", "tfmg:polished_cut_galena_wall", + "tfmg:concrete_wall", "tfmg:cut_galena_brick_wall", - "tfmg:small_galena_brick_wall" + "tfmg:rebar_concrete_wall", + "tfmg:small_galena_brick_wall", + "tfmg:white_concrete_wall", + "tfmg:blue_concrete_wall", + "tfmg:light_blue_concrete_wall", + "tfmg:red_concrete_wall", + "tfmg:green_concrete_wall", + "tfmg:lime_concrete_wall", + "tfmg:pink_concrete_wall", + "tfmg:magenta_concrete_wall" ] } \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/block/wooden_doors.json b/src/generated/resources/data/minecraft/tags/block/wooden_doors.json index 73c4858a..46187c7e 100644 --- a/src/generated/resources/data/minecraft/tags/block/wooden_doors.json +++ b/src/generated/resources/data/minecraft/tags/block/wooden_doors.json @@ -1,5 +1,9 @@ { "values": [ + "tfmg:heavy_casing_door", + "tfmg:steel_door", + "tfmg:aluminum_door", + "tfmg:heavy_plated_door", "tfmg:heavy_casing_door", "tfmg:steel_door", "tfmg:aluminum_door", diff --git a/src/generated/resources/data/quark/tags/block/non_double_door.json b/src/generated/resources/data/quark/tags/block/non_double_door.json index 73c4858a..46187c7e 100644 --- a/src/generated/resources/data/quark/tags/block/non_double_door.json +++ b/src/generated/resources/data/quark/tags/block/non_double_door.json @@ -1,5 +1,9 @@ { "values": [ + "tfmg:heavy_casing_door", + "tfmg:steel_door", + "tfmg:aluminum_door", + "tfmg:heavy_plated_door", "tfmg:heavy_casing_door", "tfmg:steel_door", "tfmg:aluminum_door", diff --git a/src/generated/resources/data/tfmg/advancement/recipes/misc/crafting/materials/compressor.json b/src/generated/resources/data/tfmg/advancement/recipes/misc/crafting/materials/compressor.json new file mode 100644 index 00000000..f92540e4 --- /dev/null +++ b/src/generated/resources/data/tfmg/advancement/recipes/misc/crafting/materials/compressor.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "tfmg:aluminum_ingot" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "tfmg:crafting/materials/compressor" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "tfmg:crafting/materials/compressor" + ] + } +} \ No newline at end of file diff --git a/src/generated/resources/data/tfmg/advancement/recipes/misc/crafting/materials/freezer.json b/src/generated/resources/data/tfmg/advancement/recipes/misc/crafting/materials/freezer.json new file mode 100644 index 00000000..286156e0 --- /dev/null +++ b/src/generated/resources/data/tfmg/advancement/recipes/misc/crafting/materials/freezer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "tfmg:aluminum_ingot" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "tfmg:crafting/materials/freezer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "tfmg:crafting/materials/freezer" + ] + } +} \ No newline at end of file diff --git a/src/generated/resources/data/tfmg/loot_table/blocks/compressor.json b/src/generated/resources/data/tfmg/loot_table/blocks/compressor.json new file mode 100644 index 00000000..46d3c974 --- /dev/null +++ b/src/generated/resources/data/tfmg/loot_table/blocks/compressor.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "tfmg:compressor" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "tfmg:blocks/compressor" +} \ No newline at end of file diff --git a/src/generated/resources/data/tfmg/loot_table/blocks/freezer.json b/src/generated/resources/data/tfmg/loot_table/blocks/freezer.json new file mode 100644 index 00000000..b2fe56ba --- /dev/null +++ b/src/generated/resources/data/tfmg/loot_table/blocks/freezer.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "tfmg:freezer" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "tfmg:blocks/freezer" +} \ No newline at end of file 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 c9c6350c..11011574 100644 --- a/src/generated/resources/data/tfmg/recipe/casting/plastic_sheet.json +++ b/src/generated/resources/data/tfmg/recipe/casting/plastic_sheet.json @@ -3,7 +3,7 @@ "ingredients": [ { "type": "neoforge:single", - "amount": 200, + "amount": 144, "fluid": "tfmg:molten_plastic" } ], diff --git a/src/generated/resources/data/tfmg/recipe/crafting/materials/compressor.json b/src/generated/resources/data/tfmg/recipe/crafting/materials/compressor.json new file mode 100644 index 00000000..a939330b --- /dev/null +++ b/src/generated/resources/data/tfmg/recipe/crafting/materials/compressor.json @@ -0,0 +1,30 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "create:copper_backtank" + }, + "C": { + "item": "tfmg:heavy_machinery_casing" + }, + "P": { + "item": "tfmg:aluminum_pipe" + }, + "S": { + "item": "tfmg:steel_fluid_tank" + }, + "T": { + "item": "create:shaft" + } + }, + "pattern": [ + "PTP", + "SCS", + "PBP" + ], + "result": { + "count": 1, + "id": "tfmg:compressor" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/tfmg/recipe/crafting/materials/freezer.json b/src/generated/resources/data/tfmg/recipe/crafting/materials/freezer.json new file mode 100644 index 00000000..7382073b --- /dev/null +++ b/src/generated/resources/data/tfmg/recipe/crafting/materials/freezer.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "tfmg:compressor" + }, + "P": { + "item": "create:fluid_pipe" + }, + "R": { + "item": "tfmg:lpg_bucket" + }, + "W": { + "item": "tfmg:electromagnetic_coil" + } + }, + "pattern": [ + "PWP", + "WCW", + "RWR" + ], + "result": { + "count": 1, + "id": "tfmg:freezer" + } +} \ No newline at end of file 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 9a0fa65e..8adbaa72 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 @@ -4,7 +4,7 @@ "tfmg:steel_vat", "tfmg:firebrick_lined_vat" ], - "heat_requirement": "heated", + "heat_level": 2, "ingredients": [ { "item": "tfmg:bauxite_powder" 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 d40057cc..5fc15462 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,6 +1,7 @@ { "type": "tfmg:vat_machine_recipe", "allowed_vat_types": [ + "tfmg:cast_iron_vat", "tfmg:steel_vat", "tfmg:firebrick_lined_vat" ], @@ -26,7 +27,7 @@ "min_size": 1, "results": [ { - "amount": 1000, + "amount": 32000, "id": "tfmg:liquid_concrete" } ] 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 5a1173fd..d0123ad2 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 @@ -10,6 +10,7 @@ "fluid": "tfmg:sulfuric_acid" } ], + "min_size": 1, "processing_time": 100, "results": [ { 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 58529dae..20e35457 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,10 +1,11 @@ { "type": "tfmg:vat_machine_recipe", "allowed_vat_types": [ + "tfmg:cast_iron_vat", "tfmg:steel_vat", "tfmg:firebrick_lined_vat" ], - "heat_requirement": "heated", + "heat_level": 2, "ingredients": [ { "type": "neoforge:single", 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 73eb89c6..9e877c75 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,10 +1,11 @@ { "type": "tfmg:vat_machine_recipe", "allowed_vat_types": [ + "tfmg:cast_iron_vat", "tfmg:steel_vat", "tfmg:firebrick_lined_vat" ], - "heat_requirement": "heated", + "heat_level": 2, "ingredients": [ { "type": "neoforge:single", 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 b376d6c1..30b172f9 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,10 +1,11 @@ { "type": "tfmg:vat_machine_recipe", "allowed_vat_types": [ + "tfmg:cast_iron_vat", "tfmg:steel_vat", "tfmg:firebrick_lined_vat" ], - "heat_requirement": "heated", + "heat_level": 2, "ingredients": [ { "type": "neoforge:single", 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 74f1a0d2..4fb71ccb 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,10 +1,11 @@ { "type": "tfmg:vat_machine_recipe", "allowed_vat_types": [ + "tfmg:cast_iron_vat", "tfmg:steel_vat", "tfmg:firebrick_lined_vat" ], - "heat_requirement": "heated", + "heat_level": 2, "ingredients": [ { "item": "tfmg:sulfur_dust" 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 0a46c561..9ed6fd87 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,6 +1,7 @@ { "type": "tfmg:vat_machine_recipe", "allowed_vat_types": [ + "tfmg:cast_iron_vat", "tfmg:steel_vat", "tfmg:firebrick_lined_vat" ], diff --git a/src/generated/resources/data/tfmg/tags/block/blast_furnace_support.json b/src/generated/resources/data/tfmg/tags/block/blast_furnace_support.json index 5fd7e38a..ee3ccb7b 100644 --- a/src/generated/resources/data/tfmg/tags/block/blast_furnace_support.json +++ b/src/generated/resources/data/tfmg/tags/block/blast_furnace_support.json @@ -1,5 +1,6 @@ { "values": [ + "tfmg:fireproof_brick_reinforcement", "tfmg:fireproof_brick_reinforcement" ] } \ No newline at end of file diff --git a/src/generated/resources/data/tfmg/tags/block/blast_furnace_wall.json b/src/generated/resources/data/tfmg/tags/block/blast_furnace_wall.json index a989ac25..72850a8b 100644 --- a/src/generated/resources/data/tfmg/tags/block/blast_furnace_wall.json +++ b/src/generated/resources/data/tfmg/tags/block/blast_furnace_wall.json @@ -1,5 +1,7 @@ { "values": [ + "tfmg:blast_furnace_hatch", + "tfmg:fireproof_bricks", "tfmg:blast_furnace_hatch", "tfmg:fireproof_bricks" ] diff --git a/src/generated/resources/data/tfmg/tags/block/pumpjack_head.json b/src/generated/resources/data/tfmg/tags/block/pumpjack_head.json index 48fdf33a..db702d86 100644 --- a/src/generated/resources/data/tfmg/tags/block/pumpjack_head.json +++ b/src/generated/resources/data/tfmg/tags/block/pumpjack_head.json @@ -2,6 +2,7 @@ "values": [ "tfmg:pumpjack_hammer_head", "tfmg:large_pumpjack_hammer_head", + "minecraft:iron_block", "minecraft:iron_block" ] } \ No newline at end of file diff --git a/src/generated/resources/data/tfmg/tags/block/pumpjack_part.json b/src/generated/resources/data/tfmg/tags/block/pumpjack_part.json index a3607049..f378da14 100644 --- a/src/generated/resources/data/tfmg/tags/block/pumpjack_part.json +++ b/src/generated/resources/data/tfmg/tags/block/pumpjack_part.json @@ -1,6 +1,7 @@ { "values": [ "tfmg:large_pumpjack_hammer_part", + "#tfmg:pumpjack_small_part", "#tfmg:pumpjack_small_part" ] } \ No newline at end of file diff --git a/src/generated/resources/data/tfmg/tags/block/reinforced_blast_furnace_support.json b/src/generated/resources/data/tfmg/tags/block/reinforced_blast_furnace_support.json index af307d92..f262c7d9 100644 --- a/src/generated/resources/data/tfmg/tags/block/reinforced_blast_furnace_support.json +++ b/src/generated/resources/data/tfmg/tags/block/reinforced_blast_furnace_support.json @@ -2,6 +2,9 @@ "values": [ "tfmg:blast_furnace_reinforcement", "tfmg:rusted_blast_furnace_reinforcement", + "tfmg:blast_furnace_reinforcement", + "tfmg:rusted_blast_furnace_reinforcement", + "tfmg:steel_block", "tfmg:steel_block" ] } \ No newline at end of file diff --git a/src/generated/resources/data/tfmg/tags/block/reinforced_blast_furnace_wall.json b/src/generated/resources/data/tfmg/tags/block/reinforced_blast_furnace_wall.json index 7ef490f9..cc404112 100644 --- a/src/generated/resources/data/tfmg/tags/block/reinforced_blast_furnace_wall.json +++ b/src/generated/resources/data/tfmg/tags/block/reinforced_blast_furnace_wall.json @@ -2,6 +2,7 @@ "values": [ "tfmg:blast_furnace_hatch", "tfmg:reinforced_fireproof_bricks", + "tfmg:steel_block", "tfmg:steel_block" ] } \ No newline at end of file diff --git a/src/generated/resources/data/tfmg/tags/block/surface_scanner_findable.json b/src/generated/resources/data/tfmg/tags/block/surface_scanner_findable.json index 9a903fb1..25965084 100644 --- a/src/generated/resources/data/tfmg/tags/block/surface_scanner_findable.json +++ b/src/generated/resources/data/tfmg/tags/block/surface_scanner_findable.json @@ -1,6 +1,7 @@ { "values": [ "tfmg:oil_deposit", + "tfmg:heavy_machinery_casing", "tfmg:heavy_machinery_casing" ] } \ No newline at end of file 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 8b3e8def..308e8c4e 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,8 +1,9 @@ package com.drmangotea.tfmg.content.machinery.vat.base; -import com.drmangotea.tfmg.TFMG; import com.drmangotea.tfmg.base.lang.TFMGLang; import com.drmangotea.tfmg.base.lang.TFMGTexts; +import com.drmangotea.tfmg.content.machinery.vat.compressor.CompressorBlockEntity; +import com.drmangotea.tfmg.content.machinery.vat.freezer.FreezerBlockEntity; import com.drmangotea.tfmg.mixin.accessor.TankSegmentAccessor; import com.drmangotea.tfmg.recipes.VatMachineRecipe; import com.drmangotea.tfmg.registry.TFMGBlockEntities; @@ -23,6 +24,7 @@ import com.simibubi.create.foundation.recipe.RecipeConditions; import com.simibubi.create.foundation.recipe.RecipeFinder; import com.simibubi.create.foundation.utility.CreateLang; import com.simibubi.create.infrastructure.config.AllConfigs; +import joptsimple.internal.Strings; import net.createmod.catnip.animation.LerpedFloat; import net.createmod.catnip.data.Couple; import net.createmod.catnip.lang.LangBuilder; @@ -34,6 +36,7 @@ import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.NbtUtils; import net.minecraft.network.chat.Component; +import net.minecraft.network.chat.MutableComponent; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Ingredient; @@ -43,7 +46,6 @@ 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.AABB; - import net.neoforged.neoforge.capabilities.Capabilities; import net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent; import net.neoforged.neoforge.fluids.FluidStack; @@ -56,7 +58,6 @@ import net.neoforged.neoforge.items.IItemHandler; import net.neoforged.neoforge.items.IItemHandlerModifiable; import net.neoforged.neoforge.items.wrapper.CombinedInvWrapper; - import javax.annotation.Nullable; import java.util.*; import java.util.concurrent.atomic.AtomicBoolean; @@ -66,38 +67,49 @@ import static java.lang.Math.abs; public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInformation, IMultiBlockEntityContainer.Fluid { private static final int MAX_SIZE = 3; + + //item inventory public VatInventory inputInventory; public VatInventory outputInventory; + //fluid inventory public SmartFluidTankBehaviour inputTank; public SmartFluidTankBehaviour outputTank; private Couple tanks; + //capabilities protected IFluidHandler fluidCapability; protected IItemHandlerModifiable itemCapability; + //rendering protected boolean forceFluidLevelUpdate; + public LerpedFloat[] fluidLevel = new LerpedFloat[8]; + protected int luminosity; + //visual state data + protected boolean window; + protected int width; + protected int height; + //updating and technical stuff protected BlockPos controller; protected BlockPos lastKnownPos; protected boolean updateConnectivity; protected boolean updateCapability; - protected boolean window; - protected int luminosity; - protected int width; - protected int height; private static final int SYNC_RATE = 8; protected int syncCooldown; protected boolean queuedSync; - // - public LerpedFloat[] fluidLevel = new LerpedFloat[8]; - /// / + boolean evaluateNextTick = true; + int timer = 0; + public VatMachineRecipe recipe; + //machines public Map machineMap = new HashMap<>(); public Map operationalMachinesMap = new HashMap<>(); public boolean areMachinesValid = true; - boolean evaluateNextTick = true; + //processing data float efficiency = 1; - int timer = 0; - public VatMachineRecipe recipe; int heatLevel = 0; + int pressure = 0; HeatCondition heatCondition = HeatCondition.NONE; private static final Object vatRecipeKey = new Object(); + // display + private int minValue = 0; + private int maxValue = 0; public VatBlockEntity(BlockEntityType type, BlockPos pos, BlockState state) { super(type, pos, state); @@ -106,8 +118,6 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor fluidLevel[i] = LerpedFloat.linear(); } window = false; - // if(Objects.equals(((VatBlock) getBlockState().getBlock()).vatType, "tfmg:firebrick_lined_vat")) - // window = false; inputInventory = new VatInventory(4, this); outputInventory = new VatInventory(4, this); tanks = Couple.create(inputTank, outputTank); @@ -115,7 +125,6 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor forceFluidLevelUpdate = true; updateConnectivity = false; updateCapability = false; - //window = ((VatBlock)getBlockState().getBlock()).vatType != "tfmg:firebrick_lined_vat"; height = 1; width = 1; refreshCapability(); @@ -176,6 +185,79 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor } + //goggle stuff + public MutableComponent getHeatComponent(boolean forGoggles, boolean useBlocksAsBars, ChatFormatting... styles) { + return componentHelper("heat", 10 + heatLevel, forGoggles, useBlocksAsBars, styles); + } + + public MutableComponent getPressureComponent(boolean forGoggles, boolean useBlocksAsBars, ChatFormatting... styles) { + return componentHelper("pressure", 10 + pressure, forGoggles, useBlocksAsBars, styles); + } + + private MutableComponent componentHelper(String label, int level, boolean forGoggles, boolean useBlocksAsBars, + ChatFormatting... styles) { + MutableComponent base = useBlocksAsBars ? blockComponent(level) : barComponent(level); + + if (!forGoggles) + return base; + + ChatFormatting style1 = styles.length >= 1 ? styles[0] : ChatFormatting.GRAY; + ChatFormatting style2 = styles.length >= 2 ? styles[1] : ChatFormatting.DARK_GRAY; + + return CreateLang.translateDirect("vat." + label) + .withStyle(style1) + .append(CreateLang.translateDirect("vat." + label + "_dots") + .withStyle(style2)) + .append(base) + .append("("+level/10f+")"); + } + + private MutableComponent blockComponent(int level) { + return Component.literal("" + "\u2588".repeat(minValue) + "\u2592".repeat(level - minValue) + "\u2591".repeat(maxValue - level)); + } + + private MutableComponent barComponent(int level) { + ChatFormatting color = level - minValue >19 ? ChatFormatting.DARK_RED : ChatFormatting.DARK_GREEN; + switch (level - minValue) { + case 1: color = ChatFormatting.BLUE; break; + case 2: color = ChatFormatting.DARK_AQUA; break; + case 3: color = ChatFormatting.DARK_AQUA; break; + case 4: color = ChatFormatting.AQUA; break; + case 5: color = ChatFormatting.AQUA; break; + case 6: color = ChatFormatting.AQUA; break; + case 7: color = ChatFormatting.AQUA; break; + case 8: color = ChatFormatting.AQUA; break; + case 11: color = ChatFormatting.YELLOW; break; + case 12: color = ChatFormatting.YELLOW; break; + case 13: color = ChatFormatting.YELLOW; break; + case 14: color = ChatFormatting.YELLOW; break; + case 15: color = ChatFormatting.YELLOW; break; + case 16: color = ChatFormatting.GOLD; break; + case 17: color = ChatFormatting.RED; break; + case 18: color = ChatFormatting.RED; break; + case 19: color = ChatFormatting.DARK_RED; break; + + } + + + return Component.empty() + .append(bars(Math.max(0, minValue - 1), ChatFormatting.RED)) + .append(bars(minValue > 0 ? 1 : 0, ChatFormatting.GOLD)) + .append(bars(Math.max(0, level - minValue), color)) + .append(bars(Math.max(0, maxValue - level), ChatFormatting.BLUE)) + .append(bars(Math.max(0, Math.min(18 - maxValue, ((maxValue / 5 + 1) * 5) - maxValue)), + ChatFormatting.DARK_GRAY)); + + + } + + private MutableComponent bars(int level, ChatFormatting format) { + return Component.literal(Strings.repeat('|', level)) + .withStyle(format); + } + + /// ////// + @Override public void lazyTick() { super.lazyTick(); @@ -189,7 +271,7 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor int tankNumber = 0; for (int i = 0; i < 8; i++) { IFluidHandler fluidHandler = fluidCapability; - if(fluidHandler != null) { + if (fluidHandler != null) { fluidLevel[i].chase((double) (fluidHandler.getFluidInTank(tankNumber).getAmount()) / inputTank.getPrimaryHandler().getCapacity(), .5f, LerpedFloat.Chaser.EXP); getFillState(); tankNumber++; @@ -205,6 +287,7 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor int prevHeat = heatLevel; heatLevel = 0; + pressure = 0; heatCondition = HeatCondition.NONE; BlockPos pos1 = controller == null ? getBlockPos() : controller; VatBlockEntity be = getControllerBE() == null ? this : getControllerBE(); @@ -214,9 +297,19 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor BlockPos pos = pos1.offset(xOffset, -1, zOffset); BlockState blockState = level.getBlockState(pos); float heat = BoilerHeater.findHeat(level, pos, blockState); + if (heat > 0) { heatLevel += (int) heat; } + if (level.getBlockEntity(pos) instanceof FreezerBlockEntity freezer && freezer.isOperational()) { + heatLevel--; + } + if (level.getBlockEntity(pos) instanceof CompressorBlockEntity compressor && compressor.getState() != CompressorBlockEntity.CompressorState.NON_OPERATIONAL) { + if (compressor.getState() == CompressorBlockEntity.CompressorState.PRESSURIZING) + pressure++; + if (compressor.getState() == CompressorBlockEntity.CompressorState.DEPRESSURIZING) + pressure--; + } } } if (heatLevel >= 2) { @@ -306,7 +399,6 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor } - ////////////////////////////////////////// if (doesntMatch) continue; @@ -401,8 +493,8 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor sendData(); } if (evaluateNextTick) { - // if (level instanceof ServerLevel serverLevel) - // CatnipServices.NETWORK.sendToClientsTrackingChunk(serverLevel, new ChunkPos(worldPosition),new VatEvaluationPacket(this.getBlockPos())); + // if (level instanceof ServerLevel serverLevel) + // CatnipServices.NETWORK.sendToClientsTrackingChunk(serverLevel, new ChunkPos(worldPosition),new VatEvaluationPacket(this.getBlockPos())); evaluate(); sendData(); evaluateNextTick = false; @@ -506,7 +598,6 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor //fluid output - List handledFluidStacks = new ArrayList<>(); List tankSegments = List.of(outputTank.getTanks()); if (recipe != null) @@ -526,7 +617,7 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor break; } } - } + } recipe = null; timer = 0; } else { @@ -535,9 +626,6 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor } - - - @Override public BlockPos getLastKnownPos() { return lastKnownPos; @@ -636,7 +724,6 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor heatLevel = 0; heatCondition = HeatCondition.NONE; - int superheatedCount = 0; float speed = 1; @@ -680,7 +767,7 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor if (behaviour == null) continue; for (SmartFluidTankBehaviour.TankSegment tankSegment : behaviour.getTanks()) { - totalCapacity += ((TankSegmentAccessor)tankSegment).tfmg$tank().getCapacity(); + totalCapacity += ((TankSegmentAccessor) tankSegment).tfmg$tank().getCapacity(); } } return totalCapacity; @@ -860,20 +947,26 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor sendData(); } + /** + * Used when the vat changes size + * sets capabilities of all vat blocks to controller's inventory + */ private void refreshCapability() { - //LazyOptional oldFluidCap = fluidCapability; - //LazyOptional oldItemCap = itemCapability; fluidCapability = getNewFluidCapability(); itemCapability = getNewItemCapability(); invalidateCapabilities(); } + /** + * finds the new fitting fluid capability + * + * @return fluid capability of the vat's controller + */ private IFluidHandler getNewFluidCapability() { IFluidHandler outputHandler = outputTank.getCapability(); IFluidHandler inputHandler = inputTank.getCapability(); - if (inputHandler == null || outputHandler == null) return fluidCapability; @@ -881,11 +974,19 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor : getControllerBE() != null ? getControllerBE().getNewFluidCapability() : fluidCapability; } + /** + * finds the new fitting item capability + * + * @return item capability of the vat's controller + */ private IItemHandlerModifiable getNewItemCapability() { - return isController() ? new CombinedInvWrapper(inputInventory, outputInventory) + return isController() ? new CombinedInvWrapper(inputInventory, outputInventory) : getControllerBE() != null ? getControllerBE().getNewItemCapability() : itemCapability; } + /** + * @return vat's controller + */ @Override public BlockPos getController() { return isController() ? worldPosition : controller; @@ -899,13 +1000,6 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor return super.createRenderBoundingBox(); } - @Nullable - public VatBlockEntity getOtherVatBE(Direction direction) { - BlockEntity otherBE = level.getBlockEntity(worldPosition.relative(direction)); - if (otherBE instanceof VatBlockEntity) - return (VatBlockEntity) otherBE; - return null; - } public void addMachineTooltip(String operationId, boolean isOperational, List tooltip) { LangBuilder operation = TFMGTexts.Vat.operation(operationId); @@ -918,14 +1012,19 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor @Override public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) { - if(getControllerBE() == null) + if (getControllerBE() == null) return false; - if(!isController()) - return getControllerBE().addToGoggleTooltip(tooltip,isPlayerSneaking); + if (!isController()) + return getControllerBE().addToGoggleTooltip(tooltip, isPlayerSneaking); TFMGTexts.header("vat").style(ChatFormatting.GRAY) .forGoggles(tooltip); + + ; + CreateLang.builder().add(getPressureComponent(true, false)).forGoggles(tooltip, 1); + CreateLang.builder().add(getHeatComponent(true, false)).forGoggles(tooltip, 1); + TFMGTexts.Vat.contents().forGoggles(tooltip); TFMGTexts.Vat.attachments() @@ -937,7 +1036,7 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor } - TFMGTexts.heatStatus(heatCondition).forGoggles(tooltip); + TFMGTexts.Vat.contents().forGoggles(tooltip); @@ -984,7 +1083,7 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor @Override protected void read(CompoundTag compound, HolderLookup.Provider registries, boolean clientPacket) { - super.read(compound,registries , clientPacket); + super.read(compound, registries, clientPacket); BlockPos controllerBefore = controller; int prevSize = width; @@ -996,10 +1095,10 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor controller = null; lastKnownPos = null; - if (NbtUtils.readBlockPos(compound,"LastKnownPos").isPresent()) - lastKnownPos = NbtUtils.readBlockPos(compound,"LastKnownPos").get(); - if (NbtUtils.readBlockPos(compound,"Controller").isPresent()) - controller = NbtUtils.readBlockPos(compound,"Controller").get(); + if (NbtUtils.readBlockPos(compound, "LastKnownPos").isPresent()) + lastKnownPos = NbtUtils.readBlockPos(compound, "LastKnownPos").get(); + if (NbtUtils.readBlockPos(compound, "Controller").isPresent()) + controller = NbtUtils.readBlockPos(compound, "Controller").get(); if (isController()) { window = compound.getBoolean("Window"); @@ -1017,18 +1116,10 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor if (tank.getSpace() < 0) tank.drain(-tank.getSpace(), IFluidHandler.FluidAction.EXECUTE); }); - inputInventory.deserializeNBT(registries,compound.getCompound("InputItems")); - outputInventory.deserializeNBT(registries,compound.getCompound("OutputItems")); - // - //machines = new ArrayList<>(); - //for(int i = 0; i LazyOptional getCapability(@Nonnull Capability cap, @Nullable Direction side) { - // if (!fluidCapability.isPresent() || !itemCapability.isPresent()) - // refreshCapability(); - // if (cap == ForgeCapabilities.FLUID_HANDLER) - // return fluidCapability.cast(); - // if (cap == ForgeCapabilities.ITEM_HANDLER) - // return itemCapability.cast(); -// -// - // return super.getCapability(cap, side); - //} - @Override public void invalidate() { super.invalidate(); @@ -1135,17 +1196,9 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor } public static int getMaxHeight() { - return 3; + return 10; } - public LerpedFloat[] getFluidLevel() { - return fluidLevel; - } - - // public void setFluidLevel(LerpedFloat fluidLevel) { - // this.fluidLevel = fluidLevel; - // } - @Override public void preventConnectivityUpdate() { updateConnectivity = false; @@ -1154,7 +1207,7 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor @Override public void notifyMultiUpdated() { BlockState state = this.getBlockState(); - if (VatBlock.isVat(state)) { // safety + if (VatBlock.isVat(state)) { state = state.setValue(VatBlock.BOTTOM, getController().getY() == getBlockPos().getY()); state = state.setValue(VatBlock.TOP, getController().getY() + height - 1 == getBlockPos().getY()); level.setBlock(getBlockPos(), state, 6); diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/base/VatRenderer.java b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/base/VatRenderer.java index 347f891e..da91bfe5 100644 --- a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/base/VatRenderer.java +++ b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/base/VatRenderer.java @@ -60,7 +60,7 @@ public class VatRenderer extends SafeBlockEntityRenderer { if (units < 1) continue; float yMin = capHeight + level; - float yMax = yMin + (fluidLevel * (vat.height - (2 * capHeight))) / 5; + float yMax = Math.min(yMin + (fluidLevel * (vat.height - (2 * capHeight))),vat.height); NeoForgeCatnipServices.FLUID_RENDERER.renderFluidBox(renderedFluid, xMin, yMin, zMin, xMax, yMax, zMax, buffer, ms, light, false, false); diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/compressor/CompressorBlock.java b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/compressor/CompressorBlock.java new file mode 100644 index 00000000..59059d7b --- /dev/null +++ b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/compressor/CompressorBlock.java @@ -0,0 +1,41 @@ +package com.drmangotea.tfmg.content.machinery.vat.compressor; + +import com.drmangotea.tfmg.content.electricity.base.IElectric; +import com.drmangotea.tfmg.registry.TFMGBlockEntities; +import com.simibubi.create.content.kinetics.base.HorizontalKineticBlock; +import com.simibubi.create.foundation.block.IBE; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +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.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; + +public class CompressorBlock extends HorizontalKineticBlock implements IBE { + public CompressorBlock(Properties p_49795_) { + super(p_49795_); + } + + + @Override + public boolean hasShaftTowards(LevelReader world, BlockPos pos, BlockState state, Direction face) { + return face == state.getValue(HORIZONTAL_FACING); + } + + @Override + public Direction.Axis getRotationAxis(BlockState state) { + return state.getValue(HORIZONTAL_FACING).getAxis(); + } + @Override + public Class getBlockEntityClass() { + return CompressorBlockEntity.class; + } + + @Override + public BlockEntityType getBlockEntityType() { + return TFMGBlockEntities.COMPRESSOR.get(); + } + + +} diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/compressor/CompressorBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/compressor/CompressorBlockEntity.java new file mode 100644 index 00000000..b929d877 --- /dev/null +++ b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/compressor/CompressorBlockEntity.java @@ -0,0 +1,53 @@ +package com.drmangotea.tfmg.content.machinery.vat.compressor; + +import com.drmangotea.tfmg.base.lang.TFMGLang; +import com.drmangotea.tfmg.base.lang.TFMGTexts; +import com.simibubi.create.content.kinetics.base.KineticBlockEntity; +import net.minecraft.ChatFormatting; +import net.minecraft.core.BlockPos; +import net.minecraft.network.chat.Component; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; + +import java.util.List; + +public class CompressorBlockEntity extends KineticBlockEntity { + + public CompressorBlockEntity(BlockEntityType type, BlockPos pos, BlockState state) { + super(type, pos, state); + } + + + + public CompressorState getState(){ + if(Math.abs(getSpeed())<120){ + return CompressorState.NON_OPERATIONAL; + } + if(getSpeed()>0){ + return CompressorState.PRESSURIZING; + } + return CompressorState.DEPRESSURIZING; + } + + + @Override + public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) { + if(getState()==CompressorState.NON_OPERATIONAL) { + TFMGLang.translate("goggles.compressor.non_operational").style(ChatFormatting.RED).forGoggles(tooltip); + }else if(getState()==CompressorState.PRESSURIZING){ + TFMGLang.translate("goggles.compressor.pressurizing").style(ChatFormatting.YELLOW).forGoggles(tooltip); + }else { + TFMGLang.translate("goggles.compressor.depressurizing").style(ChatFormatting.AQUA).forGoggles(tooltip); + } + + return super.addToGoggleTooltip(tooltip, isPlayerSneaking); + } + + public enum CompressorState{ + PRESSURIZING, + DEPRESSURIZING, + NON_OPERATIONAL + + } + +} diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/compressor/CompressorRenderer.java b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/compressor/CompressorRenderer.java new file mode 100644 index 00000000..dd627b63 --- /dev/null +++ b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/compressor/CompressorRenderer.java @@ -0,0 +1,54 @@ +package com.drmangotea.tfmg.content.machinery.vat.compressor; + +import com.drmangotea.tfmg.content.machinery.misc.winding_machine.WindingMachineBlockEntity; +import com.drmangotea.tfmg.registry.TFMGItems; +import com.drmangotea.tfmg.registry.TFMGPartialModels; +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; +import com.simibubi.create.AllPartialModels; +import com.simibubi.create.content.kinetics.base.KineticBlockEntityRenderer; +import dev.engine_room.flywheel.lib.transform.TransformStack; +import net.createmod.catnip.render.CachedBuffers; +import net.createmod.catnip.render.SuperByteBuffer; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; +import net.minecraft.client.renderer.entity.ItemRenderer; +import net.minecraft.client.resources.model.BakedModel; +import net.minecraft.core.Direction; +import net.minecraft.world.item.ItemDisplayContext; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.state.BlockState; +import net.neoforged.neoforge.common.Tags; + +import static com.simibubi.create.content.kinetics.base.HorizontalKineticBlock.HORIZONTAL_FACING; +import static net.minecraft.world.level.block.HorizontalDirectionalBlock.FACING; + +public class CompressorRenderer extends KineticBlockEntityRenderer { + public CompressorRenderer(BlockEntityRendererProvider.Context context) { + super(context); + } + + @Override + protected void renderSafe(CompressorBlockEntity be, float partialTicks, PoseStack ms, MultiBufferSource bufferSource, int light, int overlay) { + + BlockState blockState = be.getBlockState(); + ItemRenderer itemRenderer = Minecraft.getInstance() + .getItemRenderer(); + + VertexConsumer vb = bufferSource.getBuffer(RenderType.solid()); + + + + super.renderSafe(be, partialTicks, ms, bufferSource, 9999999, overlay); + } + + @Override + protected SuperByteBuffer getRotatedModel(CompressorBlockEntity be, BlockState state) { + return CachedBuffers.partialFacing(AllPartialModels.SHAFT_HALF, state, state + .getValue(HORIZONTAL_FACING)); + } + + +} diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/compressor/CompressorVisual.java b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/compressor/CompressorVisual.java new file mode 100644 index 00000000..4f249941 --- /dev/null +++ b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/compressor/CompressorVisual.java @@ -0,0 +1,59 @@ +package com.drmangotea.tfmg.content.machinery.vat.compressor; + +import com.drmangotea.tfmg.content.machinery.misc.winding_machine.WindingMachineBlockEntity; +import com.simibubi.create.AllPartialModels; +import com.simibubi.create.content.kinetics.base.KineticBlockEntityVisual; +import com.simibubi.create.content.kinetics.base.RotatingInstance; +import com.simibubi.create.foundation.render.AllInstanceTypes; +import dev.engine_room.flywheel.api.instance.Instance; +import dev.engine_room.flywheel.api.visualization.VisualizationContext; +import dev.engine_room.flywheel.lib.model.Models; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; + +import java.util.function.Consumer; + +import static com.simibubi.create.content.kinetics.base.HorizontalKineticBlock.HORIZONTAL_FACING; + +public class CompressorVisual extends KineticBlockEntityVisual { + protected final RotatingInstance shaft; + + public CompressorVisual(VisualizationContext context, CompressorBlockEntity blockEntity, float partialTick) { + super(context, blockEntity, partialTick); + + Direction facing = blockEntity.getBlockState().getValue(HORIZONTAL_FACING); + + shaft = instancerProvider().instancer(AllInstanceTypes.ROTATING, Models.partial(AllPartialModels.SHAFT_HALF)) + .createInstance(); + + shaft.setup(blockEntity) + .setPosition(getVisualPosition()) + .rotateToFace(Direction.SOUTH, facing) + .setChanged(); + } + + @Override + public void update(float pt) { + shaft.setup(blockEntity) + .setChanged(); + + } + + @Override + public void updateLight(float partialTick) { + Direction facing = blockEntity.getBlockState().getValue(HORIZONTAL_FACING); + BlockPos behind = pos.relative(facing); + relight(behind, shaft); + + } + + @Override + protected void _delete() { + shaft.delete(); + } + + @Override + public void collectCrumblingInstances(Consumer consumer) { + consumer.accept(shaft); + } +} \ No newline at end of file diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/freezer/FreezerBlock.java b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/freezer/FreezerBlock.java new file mode 100644 index 00000000..23e6400b --- /dev/null +++ b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/freezer/FreezerBlock.java @@ -0,0 +1,43 @@ +package com.drmangotea.tfmg.content.machinery.vat.freezer; + +import com.drmangotea.tfmg.TFMG; +import com.drmangotea.tfmg.base.TFMGUtils; +import com.drmangotea.tfmg.content.electricity.base.IElectric; +import com.drmangotea.tfmg.content.machinery.vat.electrode_holder.electrode.Electrode; +import com.drmangotea.tfmg.registry.TFMGBlockEntities; +import com.simibubi.create.foundation.block.IBE; +import net.minecraft.core.BlockPos; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.ItemInteractionResult; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.BlockHitResult; + +public class FreezerBlock extends Block implements IBE { + public FreezerBlock(Properties p_49795_) { + super(p_49795_); + } + + + @Override + public void onPlace(BlockState pState, Level level, BlockPos pos, BlockState pOldState, boolean pIsMoving) { + withBlockEntityDo(level,pos, IElectric::onPlaced); + } + @Override + public void onRemove(BlockState state, Level level, BlockPos pos, BlockState newState, boolean isMoving) { + IBE.onRemove(state, level, pos, newState); + } + @Override + public Class getBlockEntityClass() { + return FreezerBlockEntity.class; + } + + @Override + public BlockEntityType getBlockEntityType() { + return TFMGBlockEntities.FREEZER.get(); + } +} diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/freezer/FreezerBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/freezer/FreezerBlockEntity.java new file mode 100644 index 00000000..5e62de22 --- /dev/null +++ b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/freezer/FreezerBlockEntity.java @@ -0,0 +1,91 @@ +package com.drmangotea.tfmg.content.machinery.vat.freezer; + +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; +import com.drmangotea.tfmg.content.machinery.vat.base.VatBlock; +import com.drmangotea.tfmg.content.machinery.vat.base.VatBlockEntity; +import com.drmangotea.tfmg.content.machinery.vat.electrode_holder.electrode.Electrode; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.core.HolderLookup; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.entity.item.ItemEntity; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.AABB; + +import java.util.List; + +public class FreezerBlockEntity extends ElectricBlockEntity { + + + + public FreezerBlockEntity(BlockEntityType type, BlockPos pos, BlockState state) { + super(type, pos, state); + } + + @Override + public int getMaxVoltage() { + return 20000; + } + + @Override + public int getMaxCurrent() { + return 400; + } + + @Override + public boolean hasElectricitySlot(Direction direction) { + return true; + } + + public boolean isOperational(){ + return getCurrent()>3&&!data.notEnoughPower; + } + + + @Override + public boolean makeMultimeterTooltip(List tooltip, boolean isPlayerSneaking) { + + super.makeMultimeterTooltip(tooltip, isPlayerSneaking); + if (!isOperational()) + TFMGTexts.Multimeter.notEnoughCurrent(3).forGoggles(tooltip); + + return true; + } + + + @Override + public float resistance() { + return 75; + } + + + + @Override + public void onNetworkChanged(int oldVoltage, int oldPower) { + super.onNetworkChanged(oldVoltage, oldPower); + VatBlock.updateVatState(getBlockState(), level, getBlockPos().relative(Direction.DOWN)); + } + + + + + @Override + public AABB getRenderBoundingBox() { + return new AABB(getBlockPos()).setMinY(getBlockPos().getY() - 2); + } + + + + + +} diff --git a/src/main/java/com/drmangotea/tfmg/datagen/recipes/values/tfmg/TFMGCastingRecipeGen.java b/src/main/java/com/drmangotea/tfmg/datagen/recipes/values/tfmg/TFMGCastingRecipeGen.java index 7dc4d092..2fc57eb1 100644 --- a/src/main/java/com/drmangotea/tfmg/datagen/recipes/values/tfmg/TFMGCastingRecipeGen.java +++ b/src/main/java/com/drmangotea/tfmg/datagen/recipes/values/tfmg/TFMGCastingRecipeGen.java @@ -22,7 +22,7 @@ public class TFMGCastingRecipeGen extends CastingRecipeGen { PLASTIC_SHEET = create("plastic_sheet", b ->b - .require(TFMGFluids.MOLTEN_PLASTIC.get(),200) + .require(TFMGFluids.MOLTEN_PLASTIC.get(),144) .output(TFMGItems.PLASTIC_SHEET) .duration(100)), diff --git a/src/main/java/com/drmangotea/tfmg/datagen/recipes/values/tfmg/TFMGVatRecipeGen.java b/src/main/java/com/drmangotea/tfmg/datagen/recipes/values/tfmg/TFMGVatRecipeGen.java index 72f29017..36d9890d 100644 --- a/src/main/java/com/drmangotea/tfmg/datagen/recipes/values/tfmg/TFMGVatRecipeGen.java +++ b/src/main/java/com/drmangotea/tfmg/datagen/recipes/values/tfmg/TFMGVatRecipeGen.java @@ -7,7 +7,6 @@ import com.drmangotea.tfmg.recipes.VatMachineRecipe; import com.drmangotea.tfmg.registry.TFMGFluids; import com.drmangotea.tfmg.registry.TFMGItems; import com.drmangotea.tfmg.registry.TFMGTags; -import com.simibubi.create.content.processing.recipe.HeatCondition; import net.minecraft.core.HolderLookup; import net.minecraft.data.PackOutput; import net.minecraft.world.level.block.Blocks; @@ -27,29 +26,28 @@ public class TFMGVatRecipeGen extends VatRecipeGen { } - GeneratedRecipe CONCRETE = create("concrete", b -> ((VatMachineRecipe.Builder) b) - .require(Blocks.SAND.asItem()) - .require(Blocks.GRAVEL.asItem()) - .require(TFMGItems.LIMESAND) - .require(Fluids.WATER, 250) - .output(TFMGFluids.LIQUID_CONCRETE.get(), 1000) - .values(mixing()) - ), + .require(Blocks.SAND.asItem()) + .require(Blocks.GRAVEL.asItem()) + .require(TFMGItems.LIMESAND) + .require(Fluids.WATER, 250) + .output(TFMGFluids.LIQUID_CONCRETE.get(), 32000) + .values(mixing(true)) + ), ARC_FURNACE_STEEL = create("arc_furnace_steel", b -> ((VatMachineRecipe.Builder) b) - .require(crushedRawIron()) - .require(TFMGTags.TFMGItemTags.FLUX.tag) - .require(TFMGItems.COAL_COKE_DUST) - .output(0.9f,TFMGItems.COAL_COKE_DUST) - .output(TFMGFluids.MOLTEN_STEEL.get(), 144) - .output(TFMGFluids.MOLTEN_SLAG.get(), 288) - .duration(20) + .require(crushedRawIron()) + .require(TFMGTags.TFMGItemTags.FLUX.tag) + .require(TFMGItems.COAL_COKE_DUST) + .output(0.9f, TFMGItems.COAL_COKE_DUST) + .output(TFMGFluids.MOLTEN_STEEL.get(), 144) + .output(TFMGFluids.MOLTEN_SLAG.get(), 288) + .duration(20) .values(arcBlasting())), NEON = create("neon", b -> ((VatMachineRecipe.Builder) b) - .require(TFMGFluids.AIR.get(), 1000) - .output(TFMGFluids.NEON.get(), 1) - .duration(10) + .require(TFMGFluids.AIR.get(), 1000) + .output(TFMGFluids.NEON.get(), 1) + .duration(10) .values(centrifuge())), SULFURIC_ACID = create("sulfuric_acid", b -> ((VatMachineRecipe.Builder) b) .require(SizedFluidIngredient.of(water(), 1000)) @@ -58,69 +56,67 @@ public class TFMGVatRecipeGen extends VatRecipeGen { .require(sulfurDust()) .require(nitrateDust()) .output(sulfuricAcid(), 500) - .values(mixing())), + .values(mixing(true))), - RUBBER = create("rubber", b -> ((VatMachineRecipe.Builder) b) - .require(SizedFluidIngredient.of(heavyOil(), 250)) - .require(sulfurDust()) - .output(rubber()) - .requiresHeat(HeatCondition.HEATED) - .values(mixing())), + RUBBER = create("rubber", b -> ((VatMachineRecipe.Builder) b) + .require(SizedFluidIngredient.of(heavyOil(), 250)) + .require(sulfurDust()) + .output(rubber()) + .values(heatedmixing(true))), - NAPHTHA = create("naphtha", b -> ((VatMachineRecipe.Builder) b) - .require(SizedFluidIngredient.of(naphtha(), 500)) - .output(ethylene(), 250) - .output(propylene(), 250) - .requiresHeat(HeatCondition.HEATED) - .values(mixing())), + NAPHTHA = create("naphtha", b -> ((VatMachineRecipe.Builder) b) + .require(SizedFluidIngredient.of(naphtha(), 500)) + .output(ethylene(), 250) + .output(propylene(), 250) + .values(heatedmixing(true))), + + PLASTIC_FROM_ETHYLENE = create("plastic_from_ethylene", b -> ((VatMachineRecipe.Builder) b) + .require(SizedFluidIngredient.of(ethylene(), 500)) + .output(liquidPlastic(), 500) + .values(heatedmixing(true))), - PLASTIC_FROM_ETHYLENE = create("plastic_from_ethylene", b -> ((VatMachineRecipe.Builder) b) - .require(SizedFluidIngredient.of(ethylene(), 500)) - .output(liquidPlastic(), 500) - .requiresHeat(HeatCondition.HEATED) - .values(mixing())), PLASTIC_FROM_PROPYLENE = create("plastic_from_propylene", b -> ((VatMachineRecipe.Builder) b) - .require(SizedFluidIngredient.of(propylene(), 500)) - .output(liquidPlastic(), 500) - .requiresHeat(HeatCondition.HEATED) - .values(mixing())), + .require(SizedFluidIngredient.of(propylene(), 500)) + .output(liquidPlastic(), 500) + .values(heatedmixing(true))), ETCHED_CIRCUIT_BOARD = create("etched_circuit_board", b -> ((VatMachineRecipe.Builder) b) - .require(TFMGItems.COATED_CIRCUIT_BOARD) - .require(TFMGFluids.SULFURIC_ACID.getSource(), 250) - .output(TFMGItems.ETCHED_CIRCUIT_BOARD) - .duration(100) + .require(TFMGItems.COATED_CIRCUIT_BOARD) + .require(TFMGFluids.SULFURIC_ACID.getSource(), 250) + .output(TFMGItems.ETCHED_CIRCUIT_BOARD) + .duration(100) .values(noMachines())), ALUMINUM = create("aluminum", b -> ((VatMachineRecipe.Builder) b) - .require(TFMGItems.BAUXITE_POWDER) - .require(TFMGItems.BAUXITE_POWDER) - .require(TFMGItems.BAUXITE_POWDER) - .require(TFMGItems.BAUXITE_POWDER) - .output(TFMGItems.ALUMINUM_INGOT) - .output(.5f, TFMGItems.ALUMINUM_NUGGET, 4) - .output(.25f, TFMGItems.ALUMINUM_NUGGET, 2) - .output(TFMGFluids.CARBON_DIOXIDE.get(), 500) - .duration(100) - .requiresHeat(HeatCondition.HEATED) - .values(electrolysis())); - //DEBUG_5 = createVatRecipe("debug_5", b -> ((VatMachineRecipe.Builder) b) - // .require(Blocks.GOLD_BLOCK.asItem()) - // .require(Blocks.DIAMOND_BLOCK.asItem()) - // .require(Blocks.IRON_BLOCK.asItem()) - // .require(Blocks.COAL_BLOCK.asItem()) - // .require(TFMGFluids.LIQUID_CONCRETE.getSource(), 1) - // .require(TFMGFluids.HEAVY_OIL.getSource(), 1) - // .require(TFMGFluids.COOLING_FLUID.getSource(), 1) - // .require(TFMGFluids.CRUDE_OIL.getSource(), 1) - // .output(TFMGFluids.LIQUID_CONCRETE.get(), 1) - // .output(TFMGFluids.HEAVY_OIL.get(), 1) - // .output(TFMGFluids.COOLING_FLUID.get(), 1) - // .output(TFMGFluids.CRUDE_OIL.get(), 1) - // .output(Items.EGG) - // .output(Items.ARROW) - // .output(Items.DIAMOND) - // .output(Items.STRING) - // , mixing()); -; + .require(TFMGItems.BAUXITE_POWDER) + .require(TFMGItems.BAUXITE_POWDER) + .require(TFMGItems.BAUXITE_POWDER) + .require(TFMGItems.BAUXITE_POWDER) + .output(TFMGItems.ALUMINUM_INGOT) + .output(.5f, TFMGItems.ALUMINUM_NUGGET, 4) + .output(.25f, TFMGItems.ALUMINUM_NUGGET, 2) + .output(TFMGFluids.CARBON_DIOXIDE.get(), 500) + .duration(100) + .values(electrolysis())) + + + //DEBUG = createVatRecipe("debug_5", b -> ((VatMachineRecipe.Builder) b) + // .require(Blocks.GOLD_BLOCK.asItem()) + // .require(Blocks.DIAMOND_BLOCK.asItem()) + // .require(Blocks.IRON_BLOCK.asItem()) + // .require(Blocks.COAL_BLOCK.asItem()) + // .require(TFMGFluids.LIQUID_CONCRETE.getSource(), 1) + // .require(TFMGFluids.HEAVY_OIL.getSource(), 1) + // .require(TFMGFluids.COOLING_FLUID.getSource(), 1) + // .require(TFMGFluids.CRUDE_OIL.getSource(), 1) + // .output(TFMGFluids.LIQUID_CONCRETE.get(), 1) + // .output(TFMGFluids.HEAVY_OIL.get(), 1) + // .output(TFMGFluids.COOLING_FLUID.get(), 1) + // .output(TFMGFluids.CRUDE_OIL.get(), 1) + // .output(Items.EGG) + // .output(Items.ARROW) + // .output(Items.DIAMOND) + // .output(Items.STRING) + // , mixing()); + ; /// //// public VatRecipeValues electrolysis() { @@ -130,18 +126,37 @@ public class TFMGVatRecipeGen extends VatRecipeGen { params.allowedVatTypes = new ArrayList<>(); params.allowedVatTypes.add("tfmg:steel_vat"); params.allowedVatTypes.add("tfmg:firebrick_lined_vat"); + params.heat = 2; return params; } public VatRecipeValues mixing() { + return mixing(false); + } + + public VatRecipeValues mixing(boolean allowsCastIronVat) { VatRecipeValues params = new VatRecipeValues(); params.machines.add("tfmg:mixing"); params.allowedVatTypes = new ArrayList<>(); + if (allowsCastIronVat) + params.allowedVatTypes.add("tfmg:cast_iron_vat"); params.allowedVatTypes.add("tfmg:steel_vat"); params.allowedVatTypes.add("tfmg:firebrick_lined_vat"); return params; } + public VatRecipeValues heatedmixing(boolean allowsCastIronVat) { + VatRecipeValues params = new VatRecipeValues(); + params.machines.add("tfmg:mixing"); + params.allowedVatTypes = new ArrayList<>(); + if (allowsCastIronVat) + params.allowedVatTypes.add("tfmg:cast_iron_vat"); + params.allowedVatTypes.add("tfmg:steel_vat"); + params.allowedVatTypes.add("tfmg:firebrick_lined_vat"); + params.heat = 2; + return params; + } + public VatRecipeValues centrifuge() { VatRecipeValues params = new VatRecipeValues(); params.machines.add("tfmg:centrifuge"); @@ -150,18 +165,22 @@ public class TFMGVatRecipeGen extends VatRecipeGen { public VatRecipeValues noMachines() { VatRecipeValues params = new VatRecipeValues(); - params.machines = new ArrayList<>(); params.allowedVatTypes = new ArrayList<>(); params.allowedVatTypes.add("tfmg:steel_vat"); params.allowedVatTypes.add("tfmg:cast_iron_vat"); params.allowedVatTypes.add("tfmg:firebrick_lined_vat"); - params.minSize = 0; + params.minSize = 1; return params; } public VatRecipeValues freezing() { VatRecipeValues params = new VatRecipeValues(); - params.machines.add("tfmg:freezing"); + + params.allowedVatTypes = new ArrayList<>(); + params.allowedVatTypes.add("tfmg:cast_iron_vat"); + params.allowedVatTypes.add("tfmg:steel_vat"); + params.allowedVatTypes.add("tfmg:firebrick_lined_vat"); + params.heat = 5; return params; } @@ -183,21 +202,33 @@ public class TFMGVatRecipeGen extends VatRecipeGen { params.allowedVatTypes.add("tfmg:firebrick_lined_vat"); return params; } - public static class VatRecipeValues{ + + public static class VatRecipeValues { public List machines; public int minSize; + public int heat; + public int pressure; public List allowedVatTypes; - public VatRecipeValues(){ + + public VatRecipeValues() { machines = new ArrayList<>(); minSize = 1; + heat = 0; + pressure = 0; allowedVatTypes = new ArrayList<>(); allowedVatTypes.add("tfmg:steel_vat"); allowedVatTypes.add("tfmg:cast_iron_vat"); allowedVatTypes.add("tfmg:firebrick_lined_vat"); + } + public VatRecipeValues heat(int heat) { + VatRecipeValues values = this; + values.heat = heat; + return values; + } } } diff --git a/src/main/java/com/drmangotea/tfmg/recipes/VatMachineRecipe.java b/src/main/java/com/drmangotea/tfmg/recipes/VatMachineRecipe.java index 0895eda2..0616c750 100644 --- a/src/main/java/com/drmangotea/tfmg/recipes/VatMachineRecipe.java +++ b/src/main/java/com/drmangotea/tfmg/recipes/VatMachineRecipe.java @@ -83,7 +83,8 @@ public class VatMachineRecipe extends ProcessingRecipe values(TFMGVatRecipeGen.VatRecipeValues value) { params.machines = value.machines; params.allowedVatTypes = value.allowedVatTypes; - + params.pressure = value.pressure; + params.heat_level = value.heat; params.min_size = value.minSize; return this; } diff --git a/src/main/java/com/drmangotea/tfmg/recipes/VatRecipeParams.java b/src/main/java/com/drmangotea/tfmg/recipes/VatRecipeParams.java index 0cc4591d..4c9f6fcc 100644 --- a/src/main/java/com/drmangotea/tfmg/recipes/VatRecipeParams.java +++ b/src/main/java/com/drmangotea/tfmg/recipes/VatRecipeParams.java @@ -29,12 +29,15 @@ public class VatRecipeParams extends ProcessingRecipeParams { .forGetter(VatRecipeParams::getMinSize), Codec.INT.optionalFieldOf("heat_level", 0) .forGetter(VatRecipeParams::getHeatLevel), + Codec.INT.optionalFieldOf("pressure", 0) + .forGetter(VatRecipeParams::getPressure), Codec.STRING.listOf().optionalFieldOf("machines", new ArrayList<>()).forGetter(VatRecipeParams::getMachines), Codec.STRING.listOf().optionalFieldOf("allowed_vat_types", types).forGetter(VatRecipeParams::getAllowedVatTypes) - ).apply(instance, (params, min_size, heat_level, machines, allowed_vat_types) -> { + ).apply(instance, (params, min_size, heat_level,pressure, machines, allowed_vat_types) -> { params.machines = machines; params.min_size = min_size; params.heat_level = heat_level; + params.pressure = pressure; params.allowedVatTypes = allowed_vat_types; return params; })); @@ -44,6 +47,8 @@ public class VatRecipeParams extends ProcessingRecipeParams { public int heat_level; + public int pressure; + public List machines; public List allowedVatTypes; @@ -51,6 +56,11 @@ public class VatRecipeParams extends ProcessingRecipeParams { return heat_level; } + protected final int getPressure() { + return pressure; + } + + protected final int getMinSize() { return min_size; } @@ -68,6 +78,7 @@ public class VatRecipeParams extends ProcessingRecipeParams { super.encode(buffer); ByteBufCodecs.INT.encode(buffer, min_size); ByteBufCodecs.INT.encode(buffer, heat_level); + ByteBufCodecs.INT.encode(buffer, pressure); CatnipStreamCodecBuilders.list(ByteBufCodecs.STRING_UTF8).encode(buffer, machines); @@ -80,6 +91,7 @@ public class VatRecipeParams extends ProcessingRecipeParams { super.decode(buffer); min_size = ByteBufCodecs.INT.decode(buffer); heat_level = ByteBufCodecs.INT.decode(buffer); + pressure = ByteBufCodecs.INT.decode(buffer); machines = CatnipStreamCodecBuilders.list(ByteBufCodecs.STRING_UTF8).decode(buffer); allowedVatTypes = CatnipStreamCodecBuilders.list(ByteBufCodecs.STRING_UTF8).decode(buffer); diff --git a/src/main/java/com/drmangotea/tfmg/recipes/jei/ChemicalVatCategory.java b/src/main/java/com/drmangotea/tfmg/recipes/jei/ChemicalVatCategory.java index 7d1d059d..11b7d02c 100644 --- a/src/main/java/com/drmangotea/tfmg/recipes/jei/ChemicalVatCategory.java +++ b/src/main/java/com/drmangotea/tfmg/recipes/jei/ChemicalVatCategory.java @@ -11,6 +11,7 @@ import mezz.jei.api.gui.ingredient.IRecipeSlotsView; import mezz.jei.api.recipe.IFocusGroup; import mezz.jei.api.recipe.RecipeIngredientRole; import net.createmod.catnip.data.Pair; +import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Ingredient; @@ -94,7 +95,14 @@ public class ChemicalVatCategory extends CreateRecipeCategory drawVatTypes(allowedVatTypes, graphics); drawSprites(machines, graphics); - renderHeated(recipe.getRequiredHeat(), graphics); + + + + + if(recipe.heatLevel!=0) { + TFMGGuiTextures.VAT_HEATER.render(graphics, 55 - 10, 109); + graphics.drawString(Minecraft.getInstance().font, String.valueOf((recipe.heatLevel + 10f) / 10f), 76.0F, 113.0F, 0xFF501C, false); + } int pos = 55; int width = ((recipe.getFluidIngredients().size()) * 21) / 2; diff --git a/src/main/java/com/drmangotea/tfmg/registry/TFMGBlockEntities.java b/src/main/java/com/drmangotea/tfmg/registry/TFMGBlockEntities.java index b34bfae3..513ea156 100644 --- a/src/main/java/com/drmangotea/tfmg/registry/TFMGBlockEntities.java +++ b/src/main/java/com/drmangotea/tfmg/registry/TFMGBlockEntities.java @@ -99,8 +99,12 @@ import com.drmangotea.tfmg.content.machinery.oil_processing.surface_scanner.Surf import com.drmangotea.tfmg.content.machinery.oil_processing.surface_scanner.SurfaceScannerRenderer; import com.drmangotea.tfmg.content.machinery.vat.base.VatBlockEntity; import com.drmangotea.tfmg.content.machinery.vat.base.VatRenderer; +import com.drmangotea.tfmg.content.machinery.vat.compressor.CompressorBlockEntity; +import com.drmangotea.tfmg.content.machinery.vat.compressor.CompressorRenderer; +import com.drmangotea.tfmg.content.machinery.vat.compressor.CompressorVisual; import com.drmangotea.tfmg.content.machinery.vat.electrode_holder.ElectrodeHolderBlockEntity; import com.drmangotea.tfmg.content.machinery.vat.electrode_holder.ElectrodeHolderRenderer; +import com.drmangotea.tfmg.content.machinery.vat.freezer.FreezerBlockEntity; import com.drmangotea.tfmg.content.machinery.vat.industrial_mixer.IndustrialMixerBlockEntity; import com.drmangotea.tfmg.content.machinery.vat.industrial_mixer.IndustrialMixerRenderer; import com.drmangotea.tfmg.content.machinery.vat.industrial_mixer.IndustrialMixerVisual; @@ -351,6 +355,16 @@ public class TFMGBlockEntities { .validBlocks(TFMGBlocks.ELECTRODE_HOLDER) .renderer(() -> ElectrodeHolderRenderer::new) .register(); + public static final BlockEntityEntry FREEZER = REGISTRATE + .blockEntity("freezer", FreezerBlockEntity::new) + .validBlocks(TFMGBlocks.FREEZER) + .register(); + public static final BlockEntityEntry COMPRESSOR = REGISTRATE + .blockEntity("compressor", CompressorBlockEntity::new) + .visual(() -> CompressorVisual::new) + .validBlocks(TFMGBlocks.COMPRESSOR) + .renderer(() -> CompressorRenderer::new) + .register(); public static final BlockEntityEntry STEEL_FLUID_TANK = REGISTRATE .blockEntity("steel_fluid_tank", SteelTankBlockEntity::new) .validBlocks(TFMGBlocks.STEEL_FLUID_TANK) diff --git a/src/main/java/com/drmangotea/tfmg/registry/TFMGBlocks.java b/src/main/java/com/drmangotea/tfmg/registry/TFMGBlocks.java index 9480ba91..f4d8b9dd 100644 --- a/src/main/java/com/drmangotea/tfmg/registry/TFMGBlocks.java +++ b/src/main/java/com/drmangotea/tfmg/registry/TFMGBlocks.java @@ -114,7 +114,9 @@ import com.drmangotea.tfmg.content.machinery.oil_processing.pumpjack.hammer.part import com.drmangotea.tfmg.content.machinery.oil_processing.surface_scanner.SurfaceScannerBlock; import com.drmangotea.tfmg.content.machinery.vat.base.VatBlock; import com.drmangotea.tfmg.content.machinery.vat.base.VatGenerator; +import com.drmangotea.tfmg.content.machinery.vat.compressor.CompressorBlock; import com.drmangotea.tfmg.content.machinery.vat.electrode_holder.ElectrodeHolderBlock; +import com.drmangotea.tfmg.content.machinery.vat.freezer.FreezerBlock; import com.drmangotea.tfmg.content.machinery.vat.industrial_mixer.IndustrialMixerBlock; import com.simibubi.create.AllTags; import com.simibubi.create.api.stress.BlockStressValues; @@ -496,6 +498,23 @@ public class TFMGBlocks { .item() .transform(customItemModel()) .register(); + public static final BlockEntry FREEZER = REGISTRATE.block("freezer", FreezerBlock::new) + .initialProperties(SharedProperties::softMetal) + .transform(pickaxeOnly()) + .blockstate((ctx, prov) -> prov.simpleBlock(ctx.getEntry(), AssetLookup.partialBaseModel(ctx, prov))) + .item() + .transform(customItemModel()) + .register(); + + public static final BlockEntry COMPRESSOR = REGISTRATE.block("compressor", CompressorBlock::new) + .initialProperties(SharedProperties::softMetal) + .transform(pickaxeOnly()) + .blockstate(BlockStateGen.horizontalBlockProvider(true)) + // .blockstate((ctx, prov) -> prov.simpleBlock(ctx.getEntry(), AssetLookup.partialBaseModel(ctx, prov))) + .transform(TFMGStress.setImpact(24.0)) + .item() + .transform(customItemModel()) + .register(); //------------------ORES------------------// diff --git a/src/main/resources/assets/tfmg/lang/default/interface.json b/src/main/resources/assets/tfmg/lang/default/interface.json index ccccc4d3..e1eacab0 100644 --- a/src/main/resources/assets/tfmg/lang/default/interface.json +++ b/src/main/resources/assets/tfmg/lang/default/interface.json @@ -66,6 +66,10 @@ "tfmg.goggles.electric_machine.no_power": "No Power", "tfmg.goggles.electricity.insufficient_voltage": "Insufficient Voltage", + "tfmg.goggles.compressor.non_operational": "State: Non Operational(Needs at least 120 RPM)", + "tfmg.goggles.compressor.pressurizing": "State: Pressurizing", + "tfmg.goggles.compressor.depressurizing": "State: Depressurizing", + "tfmg.goggles.voltmeter": "Voltmeter:", "tfmg.goggles.gauge.value": " Measured Voltage:", "tfmg.goggles.voltmeter.range": " Range: %1$s", @@ -97,6 +101,10 @@ "tfmg.goggles.vat.tfmg.electrode": " Electrode", "tfmg.goggles.vat.tfmg.mixing": " Mixer", "tfmg.goggles.vat.tfmg.centrifuge": " Centrifuge", + "create.vat.pressure_dots": "... ", + "create.vat.pressure": "Pressure", + "create.vat.heat_dots": "................ ", + "create.vat.heat": "Heat", "tfmg.goggles.ammeter": "Ammeter:", @@ -209,6 +217,8 @@ "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", "tfmg.display_source.electricity.voltage": "Voltage", diff --git a/src/main/resources/assets/tfmg/models/block/compressor/block.json b/src/main/resources/assets/tfmg/models/block/compressor/block.json new file mode 100644 index 00000000..d223e4fa --- /dev/null +++ b/src/main/resources/assets/tfmg/models/block/compressor/block.json @@ -0,0 +1,69 @@ +{ + "format_version": "1.21.11", + "credit": "Made with Blockbench", + "parent": "block/block", + "textures": { + "0": "tfmg:block/compressor_shaft", + "1": "tfmg:block/compressor", + "2": "tfmg:block/compressor_top", + "particle": "tfmg:block/compressor" + }, + "elements": [ + { + "from": [0, 0, 1], + "to": [16, 16, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [0, 0, 1]}, + "faces": { + "north": {"uv": [0, 0, 16, 16], "texture": "#0"}, + "east": {"uv": [0, 0, 15, 16], "texture": "#1"}, + "south": {"uv": [0, 0, 16, 16], "texture": "#1"}, + "west": {"uv": [1, 0, 16, 16], "texture": "#1"}, + "up": {"uv": [0, 1, 16, 16], "texture": "#2"}, + "down": {"uv": [0, 0, 16, 15], "texture": "#1"} + } + }, + { + "from": [0, 0, 0], + "to": [2, 16, 1], + "faces": { + "north": {"uv": [14, 0, 16, 16], "texture": "#0"}, + "east": {"uv": [1, 0, 2, 16], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 16], "texture": "#1"}, + "up": {"uv": [0, 0, 2, 1], "texture": "#2"}, + "down": {"uv": [0, 1, 2, 2], "texture": "#2"} + } + }, + { + "from": [14, 0, 0], + "to": [16, 16, 1], + "rotation": {"angle": 0, "axis": "y", "origin": [14, 0, 0]}, + "faces": { + "north": {"uv": [0, 0, 2, 16], "texture": "#0"}, + "east": {"uv": [0, 0, 1, 16], "texture": "#2"}, + "west": {"uv": [1, 0, 2, 16], "texture": "#0"}, + "up": {"uv": [2, 0, 0, 1], "texture": "#2"}, + "down": {"uv": [2, 0, 0, 1], "texture": "#2"} + } + }, + { + "from": [2, 14, 0], + "to": [14, 16, 1], + "rotation": {"angle": 0, "axis": "y", "origin": [12, 0, 0]}, + "faces": { + "north": {"uv": [2, 0, 14, 2], "texture": "#0"}, + "up": {"uv": [2, 0, 14, 1], "texture": "#2"}, + "down": {"uv": [2, 1, 14, 2], "texture": "#0"} + } + }, + { + "from": [2, 0, 0], + "to": [14, 2, 1], + "rotation": {"angle": 0, "axis": "y", "origin": [12, -14, 0]}, + "faces": { + "north": {"uv": [2, 14, 14, 16], "texture": "#0"}, + "up": {"uv": [2, 1, 14, 2], "texture": "#0"}, + "down": {"uv": [2, 0, 14, 1], "texture": "#1"} + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/tfmg/models/block/compressor/item.json b/src/main/resources/assets/tfmg/models/block/compressor/item.json new file mode 100644 index 00000000..825f6b5b --- /dev/null +++ b/src/main/resources/assets/tfmg/models/block/compressor/item.json @@ -0,0 +1,83 @@ +{ + "format_version": "1.21.11", + "credit": "Made with Blockbench", + "parent": "block/block", + "textures": { + "0": "tfmg:block/compressor_shaft", + "1": "tfmg:block/compressor", + "2": "tfmg:block/compressor_top", + "3": "tfmg:block/shaft", + "4": "tfmg:block/shaft_top", + "particle": "tfmg:block/compressor" + }, + "elements": [ + { + "from": [0, 0, 1], + "to": [16, 16, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [0, 0, 1]}, + "faces": { + "north": {"uv": [0, 0, 16, 16], "texture": "#0"}, + "east": {"uv": [0, 0, 15, 16], "texture": "#1"}, + "south": {"uv": [0, 0, 16, 16], "texture": "#1"}, + "west": {"uv": [1, 0, 16, 16], "texture": "#1"}, + "up": {"uv": [0, 1, 16, 16], "texture": "#2"}, + "down": {"uv": [0, 0, 16, 15], "texture": "#1"} + } + }, + { + "from": [0, 0, 0], + "to": [2, 16, 1], + "faces": { + "north": {"uv": [14, 0, 16, 16], "texture": "#0"}, + "east": {"uv": [1, 0, 2, 16], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 16], "texture": "#1"}, + "up": {"uv": [0, 0, 2, 1], "texture": "#2"}, + "down": {"uv": [0, 1, 2, 2], "texture": "#2"} + } + }, + { + "from": [14, 0, 0], + "to": [16, 16, 1], + "rotation": {"angle": 0, "axis": "y", "origin": [14, 0, 0]}, + "faces": { + "north": {"uv": [0, 0, 2, 16], "texture": "#0"}, + "east": {"uv": [0, 0, 1, 16], "texture": "#2"}, + "west": {"uv": [1, 0, 2, 16], "texture": "#0"}, + "up": {"uv": [2, 0, 0, 1], "texture": "#2"}, + "down": {"uv": [2, 0, 0, 1], "texture": "#2"} + } + }, + { + "from": [2, 14, 0], + "to": [14, 16, 1], + "rotation": {"angle": 0, "axis": "y", "origin": [12, 0, 0]}, + "faces": { + "north": {"uv": [2, 0, 14, 2], "texture": "#0"}, + "up": {"uv": [2, 0, 14, 1], "texture": "#2"}, + "down": {"uv": [2, 1, 14, 2], "texture": "#0"} + } + }, + { + "from": [2, 0, 0], + "to": [14, 2, 1], + "rotation": {"angle": 0, "axis": "y", "origin": [12, -14, 0]}, + "faces": { + "north": {"uv": [2, 14, 14, 16], "texture": "#0"}, + "up": {"uv": [2, 1, 14, 2], "texture": "#0"}, + "down": {"uv": [2, 0, 14, 1], "texture": "#1"} + } + }, + { + "from": [6, 6, 0], + "to": [10, 10, 1], + "rotation": {"angle": -22.5, "axis": "z", "origin": [8, 8, 0]}, + "faces": { + "north": {"uv": [6, 6, 10, 10], "texture": "#4"}, + "east": {"uv": [6, 0, 10, 1], "rotation": 90, "texture": "#3"}, + "west": {"uv": [6, 0, 10, 1], "rotation": 90, "texture": "#3"}, + "up": {"uv": [6, 0, 10, 1], "texture": "#3"}, + "down": {"uv": [6, 0, 10, 1], "texture": "#3"} + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/tfmg/models/block/freezer/block.json b/src/main/resources/assets/tfmg/models/block/freezer/block.json new file mode 100644 index 00000000..ff3c98c5 --- /dev/null +++ b/src/main/resources/assets/tfmg/models/block/freezer/block.json @@ -0,0 +1,24 @@ +{ + "format_version": "1.21.11", + "credit": "Made with Blockbench", + "textures": { + "0": "tfmg:block/steel_cable_hub", + "1": "tfmg:block/freezer_top", + "2": "tfmg:block/freezer", + "particle": "tfmg:block/steel_cable_hub" + }, + "elements": [ + { + "from": [0, 0, 0], + "to": [16, 16, 16], + "faces": { + "north": {"uv": [0, 0, 16, 16], "texture": "#2"}, + "east": {"uv": [0, 0, 16, 16], "texture": "#2"}, + "south": {"uv": [0, 0, 16, 16], "texture": "#2"}, + "west": {"uv": [0, 0, 16, 16], "texture": "#2"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#1"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#0"} + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/tfmg/models/block/freezer/item.json b/src/main/resources/assets/tfmg/models/block/freezer/item.json new file mode 100644 index 00000000..6f944572 --- /dev/null +++ b/src/main/resources/assets/tfmg/models/block/freezer/item.json @@ -0,0 +1,25 @@ +{ + "format_version": "1.21.11", + "credit": "Made with Blockbench", + "parent": "block/block", + "textures": { + "0": "tfmg:block/steel_cable_hub", + "1": "tfmg:block/freezer_top", + "2": "tfmg:block/freezer", + "particle": "tfmg:block/steel_cable_hub" + }, + "elements": [ + { + "from": [0, 0, 0], + "to": [16, 16, 16], + "faces": { + "north": {"uv": [0, 0, 16, 16], "texture": "#2"}, + "east": {"uv": [0, 0, 16, 16], "texture": "#2"}, + "south": {"uv": [0, 0, 16, 16], "texture": "#2"}, + "west": {"uv": [0, 0, 16, 16], "texture": "#2"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#1"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#0"} + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/tfmg/textures/block/compressor.png b/src/main/resources/assets/tfmg/textures/block/compressor.png new file mode 100644 index 00000000..943d434c Binary files /dev/null and b/src/main/resources/assets/tfmg/textures/block/compressor.png differ diff --git a/src/main/resources/assets/tfmg/textures/block/compressor_shaft.png b/src/main/resources/assets/tfmg/textures/block/compressor_shaft.png new file mode 100644 index 00000000..94f6d3c2 Binary files /dev/null and b/src/main/resources/assets/tfmg/textures/block/compressor_shaft.png differ diff --git a/src/main/resources/assets/tfmg/textures/block/compressor_top.png b/src/main/resources/assets/tfmg/textures/block/compressor_top.png new file mode 100644 index 00000000..c575804e Binary files /dev/null and b/src/main/resources/assets/tfmg/textures/block/compressor_top.png differ diff --git a/src/main/resources/assets/tfmg/textures/block/freezer.png b/src/main/resources/assets/tfmg/textures/block/freezer.png new file mode 100644 index 00000000..a1d473d9 Binary files /dev/null and b/src/main/resources/assets/tfmg/textures/block/freezer.png differ diff --git a/src/main/resources/assets/tfmg/textures/block/freezer_top.png b/src/main/resources/assets/tfmg/textures/block/freezer_top.png new file mode 100644 index 00000000..42608435 Binary files /dev/null and b/src/main/resources/assets/tfmg/textures/block/freezer_top.png differ