diff --git a/gradle.properties b/gradle.properties index aeb57567..2992f2a6 100644 --- a/gradle.properties +++ b/gradle.properties @@ -25,15 +25,15 @@ mixin_extras_version = 0.4.1 jei_minecraft_version = 1.21.1 jei_version = 19.25.0.322 -create_version = 6.0.7-159 -ponder_version = 1.0.63 +create_version = 6.0.8-166 +ponder_version = 1.0.64 flywheel_version = 1.0.5 registrate_version = MC1.21-1.3.0+62 mod_id=tfmg mod_name=Create: The Factory Must Grow mod_license=MIT -mod_version=1.1.0c +mod_version=1.1.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/lang/en_ud.json b/src/generated/resources/assets/tfmg/lang/en_ud.json index 590db636..2422c0ba 100644 --- a/src/generated/resources/assets/tfmg/lang/en_ud.json +++ b/src/generated/resources/assets/tfmg/lang/en_ud.json @@ -43,7 +43,7 @@ "block.tfmg.blast_furnace_reinforcement": "ʇuǝɯǝɔɹoɟuıǝᴚ ǝɔɐuɹnℲ ʇsɐןᗺ", "block.tfmg.blast_furnace_reinforcement_wall": "ןןɐM ʇuǝɯǝɔɹoɟuıǝᴚ ǝɔɐuɹnℲ ʇsɐןᗺ", "block.tfmg.blast_stove": "ǝʌoʇS ʇsɐןᗺ", - "block.tfmg.blast_stove.tooltip.behaviour1": "˙doʇ sǝuıɥɔɐɯ ǝɥʇ ɯoɹɟ ʇno pǝdɯnd ǝq ʇsnɯ ɹıɐ pǝʇɐǝɥ ʎןןɐuıɟ puɐ ʞɔoןq ɯoʇʇoq ǝɥʇ ɟo ǝpıs ǝɥʇ ɯoɹɟ ʇno pǝdɯnd ǝq ʇsnɯ ǝpıxoıp uoqɹɐƆ ˙ɯoʇʇoq ǝɥʇ ɯoɹɟ sɐb ǝɔɐuɹnℲ ɹo ǝʇosoǝɹƆ puɐ ʞɔoןq ɯoʇʇoq ǝɥʇ ɟo ǝpıs ǝɥʇ ɯoɹɟ 'ɹıⱯ ˙uı pǝdɯnd ǝq oʇ sbuıɥʇ ᄅ sǝɹınbǝɹ ǝʌoʇS ʇsɐןᗺ Ɐ ˙pǝpuǝɯoɔɔǝɹ ʎןןɐɹǝuǝb sı ɥɔıɥʍ doʇ uo sʞɔoןq ǝʌoʇs ǝɹoɯ ppɐ uɐɔ noʎ ǝbɐɹoʇs ןɐuɹǝʇuı ɹǝɥʇɹnɟ ppɐ oʇ 'pǝʇɐǝɹɔ sı ǝʌoʇs ʇsɐןq ɐ ɟo uoısɹǝʌ ʇsǝןןɐɯs ǝɥʇ )ǝdɐɥs ᄅxƐ ɐ uı ɹo( ɹǝɥʇoɥɔɐǝ ɟo doʇ uo pǝɔɐןd ǝɹɐ sǝʌoʇs ʇsɐןq Ɛ uǝɥM", + "block.tfmg.blast_stove.tooltip.behaviour1": "˙doʇ sǝuıɥɔɐɯ ǝɥʇ ɯoɹɟ ʇno pǝdɯnd ǝq ʇsnɯ ɹıɐ pǝʇɐǝɥ ʎןןɐuıɟ puɐ ʞɔoןq ɯoʇʇoq ǝɥʇ ɟo ǝpıs ǝɥʇ ɯoɹɟ ʇno pǝdɯnd ǝq ʇsnɯ ǝpıxoıp uoqɹɐƆ ˙ɯoʇʇoq ǝɥʇ ɯoɹɟ sɐb ǝɔɐuɹnℲ ɹo ǝʇosoǝɹƆ puɐ ʞɔoןq ɯoʇʇoq ǝɥʇ ɟo ǝpıs ǝɥʇ ɯoɹɟ 'ɹıⱯ ˙uı pǝdɯnd ǝq oʇ sbuıɥʇ ᄅ sǝɹınbǝɹ ǝʌoʇS ʇsɐןᗺ Ɐ ˙pǝpuǝɯɯoɔǝɹ ʎןןɐɹǝuǝb sı ɥɔıɥʍ doʇ uo sʞɔoןq ǝʌoʇs ǝɹoɯ ppɐ uɐɔ noʎ ǝbɐɹoʇs ןɐuɹǝʇuı ɹǝɥʇɹnɟ ppɐ oʇ 'pǝʇɐǝɹɔ sı ǝʌoʇs ʇsɐןq ɐ ɟo uoısɹǝʌ ʇsǝןןɐɯs ǝɥʇ )ǝdɐɥs ᄅxƐ ɐ uı ɹo( ɹǝɥʇoɥɔɐǝ ɟo doʇ uo pǝɔɐןd ǝɹɐ sǝʌoʇs ʇsɐןq Ɛ uǝɥM", "block.tfmg.blast_stove.tooltip.summary": "ɹıⱯ sʇɐǝH", "block.tfmg.blue_caution_block": "ʞɔoןᗺ uoıʇnɐƆ ǝnןᗺ", "block.tfmg.blue_concrete": "ǝʇǝɹɔuoƆ ǝnןᗺ", @@ -509,7 +509,17 @@ "block.tfmg.yellow_rebar_concrete_wall": "ןןɐM ǝʇǝɹɔuoƆ ɹɐqǝᴚ ʍoןןǝʎ", "block.tfmg.zinc_frame": "ǝɯɐɹℲ ɔuıZ", "block.tfmg.zinc_truss": "ssnɹ⟘ ɔuıZ", - "create.goggles.fluid_storage": ":ǝbɐɹoʇS pınןℲ", + "create.goggles.item_storage": ":ǝbɐɹoʇS ɯǝʇI", + "create.recipe.advanced_distillation": "uoıʇɐןןıʇsıᗡ pǝɔuɐʌpⱯ", + "create.recipe.assembly.winding": "ןoodS ɐ puıM", + "create.recipe.casting": "buıʇsɐƆ", + "create.recipe.chemical_vat": "ʇɐΛ ןɐɔıɯǝɥƆ", + "create.recipe.coking": "buıʞoƆ", + "create.recipe.distillation": "uoıʇɐןןıʇsıᗡ", + "create.recipe.hot_blast": "buıʇsɐןᗺ ɹıⱯ", + "create.recipe.industrial_blasting": "buıʇsɐןᗺ ןɐıɹʇsnpuI", + "create.recipe.polarizing": "buızıɹɐןoԀ", + "create.recipe.winding": "buıpuıM", "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", @@ -881,7 +891,7 @@ "tfmg.engine.signal": "%s :ןɐubıS", "tfmg.engine.speed_efficiency": "%s :ʎɔuǝıɔıɟɟƎ pǝǝdS", "tfmg.engine.torque": "%s :ǝnbɹo⟘", - "tfmg.engine.type.boxer": "ɹǝxoᗺ", + "tfmg.engine.type.engine_boxer": "ɹǝxoᗺ", "tfmg.engine.type.engine_i": "I", "tfmg.engine.type.engine_u": "∩", "tfmg.engine.type.engine_v": "Λ", @@ -935,12 +945,12 @@ "tfmg.goggles.engine.turbines_missing": "buıssıW sǝuıqɹn⟘", "tfmg.goggles.engine.type": "%s :ǝdʎ⟘", "tfmg.goggles.engine.unfinished": "pǝɥsıuıɟu∩ ǝuıbuƎ", + "tfmg.goggles.fluid_storage": ":ǝbɐɹoʇS pınןℲ", "tfmg.goggles.gauge.value": ":ǝbɐʇןoΛ pǝɹnsɐǝW ", "tfmg.goggles.generator.production": "ʇ/ǝɟ %1$s :uoıʇɔnpoɹԀ ʎbɹǝuƎ", "tfmg.goggles.heat_status": " :snʇɐʇS ʇɐǝH", "tfmg.goggles.heated": "pǝʇɐǝH", "tfmg.goggles.invalid_machine": "pıןɐʌuI ǝuıɥɔɐW", - "tfmg.goggles.item_storage": ":ǝbɐɹoʇS ɯǝʇI", "tfmg.goggles.item_storage_empty": "*ʎʇdɯƎ*", "tfmg.goggles.machine_input.info": "oɟuI ʇnduI ǝuıɥɔɐW", "tfmg.goggles.machine_input.no_rot": "¡pǝpıʌoɹԀ uoıʇɐʇoᴚ oN", @@ -973,21 +983,21 @@ "tfmg.goggles.voltmeter.mode.current": "ʇuǝɹɹnƆ", "tfmg.goggles.voltmeter.mode.fallback": "ʞɔɐqןןɐℲ", "tfmg.goggles.voltmeter.mode.high_voltage": ")ɥbıH( ǝbɐʇןoΛ", - "tfmg.goggles.voltmeter.mode.net_power_gen": "uoıʇɐɹǝuǝ⅁ ɹǝʍoԀ ʞɹoʍʇǝN", - "tfmg.goggles.voltmeter.mode.net_power_use": "ǝbɐs∩ ɹǝʍoԀ ʞɹoʍʇǝN", + "tfmg.goggles.voltmeter.mode.network_power_generation": "uoıʇɐɹǝuǝ⅁ ɹǝʍoԀ ʞɹoʍʇǝN", + "tfmg.goggles.voltmeter.mode.network_power_use": "ǝbɐs∩ ɹǝʍoԀ ʞɹoʍʇǝN", "tfmg.goggles.voltmeter.mode.power": "ɹǝʍoԀ", "tfmg.goggles.voltmeter.mode.resistance": "ǝɔuɐʇsısǝᴚ", "tfmg.goggles.voltmeter.mode.voltage": "ǝbɐʇןoΛ", "tfmg.goggles.voltmeter.range": "%1$s :ǝbuɐᴚ ", "tfmg.goggles.winding_machine.progress": " :ssǝɹboɹԀ", - "tfmg.goggles.winding_machine.turns": "%s :ʇɟǝꞀ suɹn⟘", + "tfmg.goggles.winding_machine.turns": "%1$ :ʇɟǝꞀ suɹn⟘", "tfmg.goggles.zero": "pıןɐʌuI ǝuıɥɔɐW", "tfmg.keyinfo.custom_button": "uoʇʇnᗺ ɯoʇsnƆ ɹǝןןoɹʇuoƆ ǝuıbuƎ", "tfmg.keyinfo.engine_start": "ǝuıbuƎ ʇɹɐʇS", "tfmg.keyinfo.transmission_shift_down": "uʍoᗡ ʇɟıɥS uoıssıɯsuɐɹ⟘", "tfmg.keyinfo.transmission_shift_up": "d∩ ʇɟıɥS uoıssıɯsuɐɹ⟘", "tfmg.multimeter.additional_values": ":sǝnןɐΛ ןɐuoıʇıppⱯ", - "tfmg.multimeter.charge": "%s :ǝbɹɐɥƆ", + "tfmg.multimeter.charge": " :ǝbɹɐɥƆ", "tfmg.multimeter.energy_stored": " :pǝɹoʇS ʎbɹǝuƎ ", "tfmg.multimeter.energy_usage": " :ǝbɐs∩ ʎbɹǝuƎ ", "tfmg.multimeter.group": "%s :dnoɹ⅁ ", @@ -1132,21 +1142,11 @@ "tfmg.ponder.valve_pipe.text_4": "uoıʇɐʇoɹ ʇnduı ǝɥʇ buısɹǝʌǝɹ ʎq uıɐbɐ pǝsoןɔ ǝq uɐɔ ʇI", "tfmg.pumpjack.header": ":oɟuI ʞɔɐظdɯnԀ", "tfmg.pumpjack_deposit_amount": "sʇǝʞɔnᗺ %1$s", - "tfmg.recipe.advanced_distillation": "uoıʇɐןןıʇsıᗡ pǝɔuɐʌpⱯ", - "tfmg.recipe.assembly.winding": "ןoodS ɐ puıM", - "tfmg.recipe.casting": "buıʇsɐƆ", - "tfmg.recipe.chemical_vat": "ʇɐΛ ןɐɔıɯǝɥƆ", - "tfmg.recipe.coking": "buıʞoƆ", - "tfmg.recipe.distillation": "uoıʇɐןןıʇsıᗡ", - "tfmg.recipe.hot_blast": "buıʇsɐןᗺ ɹıⱯ", - "tfmg.recipe.industrial_blasting": "buıʇsɐןᗺ ןɐıɹʇsnpuI", - "tfmg.recipe.polarizing": "buızıɹɐןoԀ", - "tfmg.recipe.winding": "buıpuıM", "tfmg.resistor.allowed_voltage": "pǝʍoןןⱯ ǝbɐʇןoΛ ɟo ǝbɐʇuǝɔɹǝԀ", "tfmg.subtitle.diesel_engine_sounds": "spunoS ǝuıbuƎ ןǝsǝıᗡ", "tfmg.subtitle.engine_sounds": "spunoS ǝuıbuƎ", "tfmg.surface_scanner.header": "ɹǝuuɐɔS ǝɔɐɟɹnS", - "tfmg.tooltip.coils": "%1$s :suɹn⟘", + "tfmg.tooltip.coils": " :suɹn⟘", "tfmg.tooltip.cylinder": ":sןǝnℲ pǝʇɹoddnS", "tfmg.tooltip.fluid_item": "%1$s :ʇunoɯⱯ pınןℲ", "tfmg.tooltip.fuse": "%1$s :buıʇɐᴚ", diff --git a/src/generated/resources/assets/tfmg/lang/en_us.json b/src/generated/resources/assets/tfmg/lang/en_us.json index 684ad503..efdea11d 100644 --- a/src/generated/resources/assets/tfmg/lang/en_us.json +++ b/src/generated/resources/assets/tfmg/lang/en_us.json @@ -14,7 +14,7 @@ "block.tfmg.aluminum_frame": "Aluminum Frame", "block.tfmg.aluminum_ladder": "Aluminum Ladder", "block.tfmg.aluminum_lamp": "Aluminum Lamp", - "block.tfmg.aluminum_lamp.tooltip.behaviour1": "Glows relative to the amount of power it's receiving", + "block.tfmg.aluminum_lamp.tooltip.behaviour1": "Glows relative to the amount of power its receiving", "block.tfmg.aluminum_lamp.tooltip.behaviour2": "Changes color to the color of the light when glowing", "block.tfmg.aluminum_lamp.tooltip.condition1": "When provided with power", "block.tfmg.aluminum_lamp.tooltip.condition2": "When interacted with a dye", @@ -43,7 +43,7 @@ "block.tfmg.blast_furnace_reinforcement": "Blast Furnace Reinforcement", "block.tfmg.blast_furnace_reinforcement_wall": "Blast Furnace Reinforcement Wall", "block.tfmg.blast_stove": "Blast Stove", - "block.tfmg.blast_stove.tooltip.behaviour1": "When 3 blast stoves are placed on top of each other (or in a 3x2 shape) the smallest version of a blast stove is created, to add further internal storage you can add more stove blocks on top which is generally recommended. A Blast Stove requires 2 things to be pumped in. Air, from the side of the bottom block and Creosote or Furnace gas from the bottom. Carbon dioxide must be pumped out from the side of the bottom block and finally heated air must be pumped out from the machine's top.", + "block.tfmg.blast_stove.tooltip.behaviour1": "When 3 blast stoves are placed on top of eachother (or in a 3x2 shape) the smallest version of a blast stove is created, to add further internal storage you can add more stove blocks on top which is generally recommended. A Blast Stove requires 2 things to be pumped in. Air, from the side of the bottom block and Creosote or Furnace gas from the bottom. Carbon dioxide must be pumped out from the side of the bottom block and finally heated air must be pumped out from the machines top.", "block.tfmg.blast_stove.tooltip.summary": "Heats Air", "block.tfmg.blue_caution_block": "Blue Caution Block", "block.tfmg.blue_concrete": "Blue Concrete", @@ -89,14 +89,14 @@ "block.tfmg.cast_iron_smart_fluid_pipe": "Cast Iron Smart Fluid Pipe", "block.tfmg.cast_iron_truss": "Cast Iron Truss", "block.tfmg.casting_basin": "Casting Basin", - "block.tfmg.casting_basin.tooltip.behaviour1": "Creates steel ingots which must have a sufficient output as the internal storage of the basin is limited", + "block.tfmg.casting_basin.tooltip.behaviour1": "Creates steel ingots which must have a sufficent output as the internal storage of the basin is limited", "block.tfmg.casting_basin.tooltip.condition1": "When supplied with molten steel", "block.tfmg.casting_basin.tooltip.summary": "Casts ingots", "block.tfmg.cement": "Cement", "block.tfmg.cinder_block": "Cinder Block", "block.tfmg.cinderflour_block": "Cinderflour Block", "block.tfmg.circular_light": "Circular Lamp", - "block.tfmg.circular_light.tooltip.behaviour1": "Glows relative to the amount of power it's receiving", + "block.tfmg.circular_light.tooltip.behaviour1": "Glows relative to the amount of power its receiving", "block.tfmg.circular_light.tooltip.behaviour2": "Changes color to the color of the light when glowing", "block.tfmg.circular_light.tooltip.condition1": "When provided with power", "block.tfmg.circular_light.tooltip.condition2": "When interacted with a dye", @@ -118,7 +118,7 @@ "block.tfmg.constantan_ladder": "Constantan Ladder", "block.tfmg.constantan_truss": "Constantan Truss", "block.tfmg.converter": "Converter", - "block.tfmg.converter.tooltip.behaviour1": "The block has a TFMG input (copper) and an FE one (redstone) by default it converts TFMG energy to FE with a wrench you can make the converter convert FE to TFMG energy. Voltage of the tfmg output may be adjusted by opening a menu on the side of the Converter", + "block.tfmg.converter.tooltip.behaviour1": "The block has a TFMG input (copper) and an FE one (redstone) by default it converts TFMG energy to FE with a wrench you can make the converter convert FE to TFMG energy. Voltage of the tfmg output may be abjusted by opening a menu on the side of the Converter", "block.tfmg.converter.tooltip.summary": "Converts FE to TFMG energy and vice versa", "block.tfmg.cooling_fluid": "Cooling Fluid", "block.tfmg.copper_cable_hub": "Copper Cable Hub", @@ -187,7 +187,7 @@ "block.tfmg.factory_floor": "Factory Floor", "block.tfmg.firebox": "Firebox", "block.tfmg.firebox.tooltip.behaviour1": "Heats machinery above it acting as a blaze burner", - "block.tfmg.firebox.tooltip.condition1": "When filled with lpg, butane, diesel, propane, naphtha or kerosene with carbon dioxide being pumped out", + "block.tfmg.firebox.tooltip.condition1": "When filled with lpg, butane, diesel, propane, naphta or kerosene with carbon dioxide being pumped out", "block.tfmg.firebox.tooltip.summary": "Heats machinery when fuel is pumped inside", "block.tfmg.fireclay": "Fireclay", "block.tfmg.fireclay.tooltip.summary": "Spawns in underground veins located in the overworld", @@ -248,7 +248,7 @@ "block.tfmg.kerosene": "Kerosene", "block.tfmg.large_aluminum_cogwheel": "Large Aluminum Cogwheel", "block.tfmg.large_engine": "Large Engine", - "block.tfmg.large_engine.tooltip.behaviour1": "To function it requires air and fuel to be pumped in (Diesel, Kerosene, Naphtha, Furnace Gas) and co2 to be pumped out (needs an exhaust) to generate rotation (a shaft needs to be attached similar to a steam engine)", + "block.tfmg.large_engine.tooltip.behaviour1": "To function it requires air and fuel to be pumped in (Diesel, Kerosene, Naphta, Furnace Gas) and co2 to be pumped out (needs an exhaust) to generate rotation (a shaft needs to be attached similiar to a steam engine)", "block.tfmg.large_engine.tooltip.summary": "Creates rotation from less refined fuels", "block.tfmg.large_pumpjack_hammer_connector": "Large Pumpjack Hammer Connector", "block.tfmg.large_pumpjack_hammer_head": "Large Pumpjack Hammer Head", @@ -273,7 +273,7 @@ "block.tfmg.light_blue_rebar_concrete_stairs": "Light Blue Rebar Concrete Stairs", "block.tfmg.light_blue_rebar_concrete_wall": "Light Blue Rebar Concrete Wall", "block.tfmg.light_bulb": "Light Bulb", - "block.tfmg.light_bulb.tooltip.behaviour1": "Glows relative to the amount of power it's receiving", + "block.tfmg.light_bulb.tooltip.behaviour1": "Glows relative to the amount of power its receiving", "block.tfmg.light_bulb.tooltip.behaviour2": "Changes color to the color of the light when glowing", "block.tfmg.light_bulb.tooltip.condition1": "When provided with power", "block.tfmg.light_bulb.tooltip.condition2": "When interacted with a dye", @@ -316,7 +316,7 @@ "block.tfmg.magenta_rebar_concrete_wall": "Magenta Rebar Concrete Wall", "block.tfmg.metal_smokestack": "Metal Smokestack", "block.tfmg.modern_light": "Light Panel", - "block.tfmg.modern_light.tooltip.behaviour1": "Glows relative to the amount of power it's receiving", + "block.tfmg.modern_light.tooltip.behaviour1": "Glows relative to the amount of power its receiving", "block.tfmg.modern_light.tooltip.behaviour2": "Changes color to the color of the light when glowing", "block.tfmg.modern_light.tooltip.condition1": "When provided with power", "block.tfmg.modern_light.tooltip.condition2": "When interacted with a dye", @@ -328,7 +328,7 @@ "block.tfmg.napalm_bomb": "Napalm Bomb", "block.tfmg.naphtha": "Naphtha", "block.tfmg.neon_tube": "Neon Tube", - "block.tfmg.neon_tube.tooltip.behaviour1": "Glows relative to the amount of power it's receiving", + "block.tfmg.neon_tube.tooltip.behaviour1": "Glows relative to the amount of power its receiving", "block.tfmg.neon_tube.tooltip.behaviour2": "Changes color to the color of the light when glowing", "block.tfmg.neon_tube.tooltip.behaviour3": "Changes shape providing a space to power the tube", "block.tfmg.neon_tube.tooltip.condition1": "When provided with power", @@ -369,7 +369,7 @@ "block.tfmg.polarizer": "Polarizer", "block.tfmg.polarizer.tooltip.behaviour1": "Will turn a _Magnetic Ingot_ into a _Magnet_ when right clicked with a _Magnetic Ingot_ after a bit of time", "block.tfmg.polarizer.tooltip.condition1": "When powered", - "block.tfmg.polarizer.tooltip.summary": "Makes Magnets out of Magnetic Ingots", + "block.tfmg.polarizer.tooltip.summary": "Makes Magnetis out of Magnetic Ingots", "block.tfmg.polished_cut_bauxite": "Polished Cut Bauxite", "block.tfmg.polished_cut_bauxite_slab": "Polished Cut Bauxite Slab", "block.tfmg.polished_cut_bauxite_stairs": "Polished Cut Bauxite Stairs", @@ -379,7 +379,7 @@ "block.tfmg.polished_cut_galena_stairs": "Polished Cut Galena Stairs", "block.tfmg.polished_cut_galena_wall": "Polished Cut Galena Wall", "block.tfmg.potentiometer": "Potentiometer", - "block.tfmg.potentiometer.tooltip.behaviour1": "Based on what percentage you set, this machine only lets through a certain amount of voltage outputted by its output (its output can be seen by the arrow like pattern on its top pointing to it)", + "block.tfmg.potentiometer.tooltip.behaviour1": "Based on what pecentage you set, this machine only lets through a certain amount of voltage outputted by its output (its output can be seen by the arrow like pattern on its top pointing to it)", "block.tfmg.potentiometer.tooltip.summary": "Lets through a only a set amount of voltage", "block.tfmg.pumpjack_base": "Pumpjack Base", "block.tfmg.pumpjack_crank": "Pumpjack Crank", @@ -422,7 +422,7 @@ "block.tfmg.regular_engine": "Regular Engine", "block.tfmg.reinforced_fireproof_bricks": "Reinforced Fireproof Bricks", "block.tfmg.resistor": "Resistor", - "block.tfmg.resistor.tooltip.behaviour1": "Adds the resistors respective resistance (to see how to change its resistance look at the winding machine's tooltip) to whatever electric group its target block is in", + "block.tfmg.resistor.tooltip.behaviour1": "Adds the resistors respective resistance (to see how to change its resistance look at the winding machines tooltip) to whatever electric group its target block is in", "block.tfmg.resistor.tooltip.condition1": "When placed on a block within a group", "block.tfmg.resistor.tooltip.summary": "Adds resistance to a network", "block.tfmg.rotor": "Rotor", @@ -430,7 +430,7 @@ "block.tfmg.rusted_blast_furnace_reinforcement_wall": "Rusted Blast Furnace Reinforcement Wall", "block.tfmg.segmented_display": "Segmented Display", "block.tfmg.simple_large_engine": "Simple Large Engine", - "block.tfmg.simple_large_engine.tooltip.behaviour1": "To function it requires air and fuel to be pumped in (Diesel, Kerosene, Naphtha, Furnace Gas) and co2 to be pumped out (needs an exhaust) to generate rotation (a shaft needs to be attached similar to a steam engine)", + "block.tfmg.simple_large_engine.tooltip.behaviour1": "To function it requires air and fuel to be pumped in (Diesel, Kerosene, Naphta, Furnace Gas) and co2 to be pumped out (needs an exhaust) to generate rotation (a shaft needs to be attached similiar to a steam engine)", "block.tfmg.simple_large_engine.tooltip.summary": "Creates rotation (less effectively than its regular counterpart) from less refined fuels", "block.tfmg.slag_block": "Block of Slag", "block.tfmg.slag_bricks": "Slag Bricks", @@ -473,7 +473,7 @@ "block.tfmg.sulfur": "Sulfur", "block.tfmg.sulfuric_acid": "Sulfuric Acid", "block.tfmg.surface_scanner": "Surface Scanner", - "block.tfmg.surface_scanner.tooltip.behaviour1": "The machine's top 5x5 grid shows the surrounding chunks with its chunk in the center, the chunks that have at least 1 oil deposit in them should glow. If the surface does not start to glow within a few seconds then it is likely that there are no oil deposits nearby. Chunks can be seen ingame with F3+G", + "block.tfmg.surface_scanner.tooltip.behaviour1": "The machines top 5x5 grid shows the surrounding chunks with its chunk in the center, the chunks that have atleast 1 oil deposit in them should glow. If the surface does not start to glow within a few seconds then it is likely that there are no oil deposits nearby. Chunks can be seen ingame with F3+G", "block.tfmg.surface_scanner.tooltip.condition1": "When powered from below with a Machine Input", "block.tfmg.surface_scanner.tooltip.summary": "Helps to find chunks with oil", "block.tfmg.traffic_light": "Traffic Light", @@ -509,7 +509,17 @@ "block.tfmg.yellow_rebar_concrete_wall": "Yellow Rebar Concrete Wall", "block.tfmg.zinc_frame": "Zinc Frame", "block.tfmg.zinc_truss": "Zinc Truss", - "create.goggles.fluid_storage": "Fluid Storage:", + "create.goggles.item_storage": "Item Storage:", + "create.recipe.advanced_distillation": "Advanced Distillation", + "create.recipe.assembly.winding": "Wind a Spool", + "create.recipe.casting": "Casting", + "create.recipe.chemical_vat": "Chemical Vat", + "create.recipe.coking": "Coking", + "create.recipe.distillation": "Distillation", + "create.recipe.hot_blast": "Air Blasting", + "create.recipe.industrial_blasting": "Industrial Blasting", + "create.recipe.polarizing": "Polarizing", + "create.recipe.winding": "Winding", "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", @@ -752,8 +762,8 @@ "item.tfmg.oil_can": "Oil Can", "item.tfmg.oil_can.tooltip.behaviour1": "Fills the can with lubrication oil", "item.tfmg.oil_can.tooltip.behaviour2": "Fills the engine with lubrication oil", - "item.tfmg.oil_can.tooltip.condition1": "When R-Clicking a tank with lubrication oil inside", - "item.tfmg.oil_can.tooltip.condition2": "When R-Clicking an engine", + "item.tfmg.oil_can.tooltip.condition1": "When Right Clicking a tank with lubrication oil inside", + "item.tfmg.oil_can.tooltip.condition2": "When Right Clicking an engine", "item.tfmg.oil_can.tooltip.summary": "Adds lubrication oil to engines", "item.tfmg.oil_hammer": "Oil Hammer", "item.tfmg.orange_multimeter": "Orange Multimeter", @@ -799,7 +809,7 @@ "item.tfmg.rubber_sheet": "Rubber Sheet", "item.tfmg.screw": "Screws", "item.tfmg.screwdriver": "Screwdriver", - "item.tfmg.screwdriver.tooltip.behaviour1": "Locks _Pipe_ in its current rotation allowing for _Pipes_ to be placed next to each other _Without Connecting_", + "item.tfmg.screwdriver.tooltip.behaviour1": "Locks _Pipe_ in its current rotation allowing for _Pipes_ to be placed next to eachother _Without Connecting_", "item.tfmg.screwdriver.tooltip.condition1": "When R-Clicking pipe", "item.tfmg.screwdriver.tooltip.summary": "Can lock pipes in place", "item.tfmg.silicon_ingot": "Silicon Ingot", @@ -881,7 +891,7 @@ "tfmg.engine.signal": "Signal: %s", "tfmg.engine.speed_efficiency": "Speed Efficiency: %s", "tfmg.engine.torque": "Torque: %s", - "tfmg.engine.type.boxer": "Boxer", + "tfmg.engine.type.engine_boxer": "Boxer", "tfmg.engine.type.engine_i": "I", "tfmg.engine.type.engine_u": "U", "tfmg.engine.type.engine_v": "V", @@ -935,12 +945,12 @@ "tfmg.goggles.engine.turbines_missing": "Turbines Missing", "tfmg.goggles.engine.type": "Type: %s", "tfmg.goggles.engine.unfinished": "Engine Unfinished", + "tfmg.goggles.fluid_storage": "Fluid Storage:", "tfmg.goggles.gauge.value": " Measured Voltage:", "tfmg.goggles.generator.production": "Energy Production: %1$s fe/t", "tfmg.goggles.heat_status": "Heat Status: ", "tfmg.goggles.heated": "Heated", "tfmg.goggles.invalid_machine": "Machine Invalid", - "tfmg.goggles.item_storage": "Item Storage:", "tfmg.goggles.item_storage_empty": "*Empty*", "tfmg.goggles.machine_input.info": "Machine Input Info", "tfmg.goggles.machine_input.no_rot": "No Rotation Provided!", @@ -973,21 +983,21 @@ "tfmg.goggles.voltmeter.mode.current": "Current", "tfmg.goggles.voltmeter.mode.fallback": "Fallback", "tfmg.goggles.voltmeter.mode.high_voltage": "Voltage (High)", - "tfmg.goggles.voltmeter.mode.net_power_gen": "Network Power Generation", - "tfmg.goggles.voltmeter.mode.net_power_use": "Network Power Usage", + "tfmg.goggles.voltmeter.mode.network_power_generation": "Network Power Generation", + "tfmg.goggles.voltmeter.mode.network_power_use": "Network Power Usage", "tfmg.goggles.voltmeter.mode.power": "Power", "tfmg.goggles.voltmeter.mode.resistance": "Resistance", "tfmg.goggles.voltmeter.mode.voltage": "Voltage", "tfmg.goggles.voltmeter.range": " Range: %1$s", "tfmg.goggles.winding_machine.progress": "Progress: ", - "tfmg.goggles.winding_machine.turns": "Turns Left: %s", + "tfmg.goggles.winding_machine.turns": "Turns Left: %1$", "tfmg.goggles.zero": "Machine Invalid", "tfmg.keyinfo.custom_button": "Engine Controller Custom Button", "tfmg.keyinfo.engine_start": "Start Engine", "tfmg.keyinfo.transmission_shift_down": "Transmission Shift Down", "tfmg.keyinfo.transmission_shift_up": "Transmission Shift Up", "tfmg.multimeter.additional_values": "Additional Values:", - "tfmg.multimeter.charge": "Charge: %s", + "tfmg.multimeter.charge": "Charge: ", "tfmg.multimeter.energy_stored": " Energy Stored: ", "tfmg.multimeter.energy_usage": " Energy Usage: ", "tfmg.multimeter.group": " Group: %s", @@ -1087,7 +1097,7 @@ "tfmg.ponder.mechanical_pump_flow.text_2": "Their arrow indicates the direction of flow", "tfmg.ponder.mechanical_pump_flow.text_3": "The network behind is now pulling fluids...", "tfmg.ponder.mechanical_pump_flow.text_4": "...while the network in front is transferring it outward", - "tfmg.ponder.mechanical_pump_flow.text_5": "The pump's direction is unaffected by the input rotation", + "tfmg.ponder.mechanical_pump_flow.text_5": "The pumps direction is unaffected by the input rotation", "tfmg.ponder.mechanical_pump_flow.text_6": "Instead, a Wrench can be used to reverse the direction", "tfmg.ponder.mechanical_pump_speed.header": "Throughput of Mechanical Pumps", "tfmg.ponder.mechanical_pump_speed.text_1": "Regardless of speed, Mechanical Pumps affect pipes connected up to 16 blocks away", @@ -1132,21 +1142,11 @@ "tfmg.ponder.valve_pipe.text_4": "It can be closed again by reversing the input rotation", "tfmg.pumpjack.header": "Pumpjack Info:", "tfmg.pumpjack_deposit_amount": "%1$s Buckets", - "tfmg.recipe.advanced_distillation": "Advanced Distillation", - "tfmg.recipe.assembly.winding": "Wind a Spool", - "tfmg.recipe.casting": "Casting", - "tfmg.recipe.chemical_vat": "Chemical Vat", - "tfmg.recipe.coking": "Coking", - "tfmg.recipe.distillation": "Distillation", - "tfmg.recipe.hot_blast": "Air Blasting", - "tfmg.recipe.industrial_blasting": "Industrial Blasting", - "tfmg.recipe.polarizing": "Polarizing", - "tfmg.recipe.winding": "Winding", "tfmg.resistor.allowed_voltage": "Percentage of Voltage Allowed", "tfmg.subtitle.diesel_engine_sounds": "Diesel Engine Sounds", "tfmg.subtitle.engine_sounds": "Engine Sounds", "tfmg.surface_scanner.header": "Surface Scanner", - "tfmg.tooltip.coils": "Turns: %1$s", + "tfmg.tooltip.coils": "Turns: ", "tfmg.tooltip.cylinder": "Supported Fuels:", "tfmg.tooltip.fluid_item": "Fluid Amount: %1$s", "tfmg.tooltip.fuse": "Rating: %1$s", @@ -1156,4 +1156,4 @@ "tfmg.winding_machine.header": "Winding Machine", "tfmg.winding_machine.turn_percentage": "Allowed Turn Percentage (From 1000)", "tfmg.wires.removed_data": "Data Removed" -} +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json b/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json index a5623d1c..0042224a 100644 --- a/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json +++ b/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json @@ -177,6 +177,12 @@ "tfmg:cyan_caution_block", "tfmg:purple_caution_block", "tfmg:orange_caution_block", + "tfmg:rebar_block", + "tfmg:rebar_floor", + "tfmg:rebar_wall", + "tfmg:rebar_pile", + "tfmg:rebar_stairs", + "tfmg:rebar_pillar", "tfmg:concrete_wall", "tfmg:concrete", "tfmg:concrete_stairs", 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 8dd016f0..00b36497 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 @@ -9,6 +9,12 @@ "tfmg:lead_block", "tfmg:constantan_block", "tfmg:nickel_block", - "tfmg:lithium_block" + "tfmg:lithium_block", + "tfmg:rebar_block", + "tfmg:rebar_floor", + "tfmg:rebar_wall", + "tfmg:rebar_pile", + "tfmg:rebar_stairs", + "tfmg:rebar_pillar" ] } \ No newline at end of file diff --git a/src/generated/resources/data/tfmg/advancement/recipes/misc/crafting/materials/aluminum_spool.json b/src/generated/resources/data/tfmg/advancement/recipes/misc/crafting/materials/aluminum_spool.json deleted file mode 100644 index 14e08681..00000000 --- a/src/generated/resources/data/tfmg/advancement/recipes/misc/crafting/materials/aluminum_spool.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "tfmg:empty_spool" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "tfmg:crafting/materials/aluminum_spool" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "tfmg:crafting/materials/aluminum_spool" - ] - } -} \ No newline at end of file diff --git a/src/generated/resources/data/tfmg/advancement/recipes/misc/crafting/materials/constantan_spool.json b/src/generated/resources/data/tfmg/advancement/recipes/misc/crafting/materials/constantan_spool.json deleted file mode 100644 index fc84a9c8..00000000 --- a/src/generated/resources/data/tfmg/advancement/recipes/misc/crafting/materials/constantan_spool.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "tfmg:empty_spool" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "tfmg:crafting/materials/constantan_spool" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "tfmg:crafting/materials/constantan_spool" - ] - } -} \ No newline at end of file diff --git a/src/generated/resources/data/tfmg/advancement/recipes/misc/crafting/materials/copper_spool.json b/src/generated/resources/data/tfmg/advancement/recipes/misc/crafting/materials/copper_spool.json deleted file mode 100644 index 8bb50cc7..00000000 --- a/src/generated/resources/data/tfmg/advancement/recipes/misc/crafting/materials/copper_spool.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "tfmg:empty_spool" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "tfmg:crafting/materials/copper_spool" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "tfmg:crafting/materials/copper_spool" - ] - } -} \ No newline at end of file diff --git a/src/generated/resources/data/tfmg/recipe/sequenced_assembly/potentiometer.json b/src/generated/resources/data/tfmg/recipe/sequenced_assembly/potentiometer.json index 22141c62..782e58d5 100644 --- a/src/generated/resources/data/tfmg/recipe/sequenced_assembly/potentiometer.json +++ b/src/generated/resources/data/tfmg/recipe/sequenced_assembly/potentiometer.json @@ -63,7 +63,7 @@ "item": "tfmg:unfinished_potentiometer" }, { - "item": "tfmg:copper_wire" + "tag": "c:wires/copper" } ], "results": [ diff --git a/src/main/java/com/drmangotea/tfmg/base/events/TFMGCommonEvents.java b/src/main/java/com/drmangotea/tfmg/base/events/TFMGCommonEvents.java index 4ca21d1c..0a5326d3 100644 --- a/src/main/java/com/drmangotea/tfmg/base/events/TFMGCommonEvents.java +++ b/src/main/java/com/drmangotea/tfmg/base/events/TFMGCommonEvents.java @@ -24,6 +24,7 @@ import com.drmangotea.tfmg.content.machinery.misc.firebox.FireboxBlockEntity; import com.drmangotea.tfmg.content.machinery.misc.flarestack.FlarestackBlockEntity; import com.drmangotea.tfmg.content.machinery.misc.gas_lamp.GasLampBlockEntity; import com.drmangotea.tfmg.content.machinery.misc.smokestack.SmokestackBlockEntity; +import com.drmangotea.tfmg.content.machinery.misc.winding_machine.WindingMachineBlockEntity; import com.drmangotea.tfmg.content.machinery.oil_processing.distillation_tower.controller.DistillationControllerBlockEntity; import com.drmangotea.tfmg.content.machinery.oil_processing.distillation_tower.output.DistillationOutputBlockEntity; import com.drmangotea.tfmg.content.machinery.oil_processing.pumpjack.base.PumpjackBaseBlockEntity; @@ -108,6 +109,7 @@ public class TFMGCommonEvents { BlastFurnaceOutputBlockEntity.registerCapabilities(event); CokeOvenBlockEntity.registerCapabilities(event); AirIntakeBlockEntity.registerCapabilities(event); + WindingMachineBlockEntity.registerCapabilities(event); } @SubscribeEvent diff --git a/src/main/java/com/drmangotea/tfmg/base/lang/TFMGTexts.java b/src/main/java/com/drmangotea/tfmg/base/lang/TFMGTexts.java index 87a7149b..1734e4d7 100644 --- a/src/main/java/com/drmangotea/tfmg/base/lang/TFMGTexts.java +++ b/src/main/java/com/drmangotea/tfmg/base/lang/TFMGTexts.java @@ -47,7 +47,7 @@ public class TFMGTexts { return TFMGLang.translate("goggles.progress", value); } public static LangBuilder turnsLeft(int turns) { - return TFMGLang.translate("goggles.winding_machine.turns", TFMGLang.number(turns)); + return TFMGLang.translate("goggles.winding_machine.turns").add(TFMGLang.text(String.valueOf(turns))); } public static LangBuilder invalidMachine() { @@ -79,7 +79,7 @@ public class TFMGTexts { return TFMGLang.translate("multimeter.insufficient_current", TFMGTexts.current(minimum)).style(ChatFormatting.RED); } public static LangBuilder charge(double value) { - return TFMGLang.translate("multimeter.charge", percent(value)).style(ChatFormatting.DARK_AQUA); + return TFMGLang.translate("multimeter.charge").add(TFMGLang.text(percent(value))).style(ChatFormatting.DARK_AQUA); } public static LangBuilder group(int groupId) { return TFMGLang.translate("multimeter.group", TFMGLang.number(groupId)).color(0xd8db27); @@ -159,9 +159,6 @@ public class TFMGTexts { public static LangBuilder torque(float torque) { return TFMGLang.translate("goggles.engine.torque", TFMGLang.number(torque)).color(0xa36f00); } - public static LangBuilder injectionRate(float rate) { - return TFMGLang.translate("engine.injection_rate", TFMGLang.number(rate)); - } public static LangBuilder signal(int signal) { return TFMGLang.translate("goggles.engine.signal", TFMGLang.number(signal)).color(0xfcad03); } diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/base/ElectricBlockValues.java b/src/main/java/com/drmangotea/tfmg/content/electricity/base/ElectricBlockValues.java index bdd0efbd..d95dff06 100644 --- a/src/main/java/com/drmangotea/tfmg/content/electricity/base/ElectricBlockValues.java +++ b/src/main/java/com/drmangotea/tfmg/content/electricity/base/ElectricBlockValues.java @@ -38,8 +38,6 @@ public class ElectricBlockValues { public int failTimer = 0; - public List blocksToPower = new ArrayList<>(); - public ElectricalGroup group = new ElectricalGroup(0); public ElectricBlockValues(long pos) { diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/base/ElectricalNetwork.java b/src/main/java/com/drmangotea/tfmg/content/electricity/base/ElectricalNetwork.java index 1d834aa4..2aaa81ee 100644 --- a/src/main/java/com/drmangotea/tfmg/content/electricity/base/ElectricalNetwork.java +++ b/src/main/java/com/drmangotea/tfmg/content/electricity/base/ElectricalNetwork.java @@ -10,18 +10,23 @@ import java.util.Map; public class ElectricalNetwork { + /** + * This class manages individual networks + */ + public ElectricalNetwork(long id) { this.id = id; } - + //blocks in the network public List members = new ArrayList<>(); + //network's id public long id; public long getId() { return id; } - + //adds a new block to the network if it is not in it already public void add(IElectric be) { List posList = new ArrayList<>(); @@ -31,28 +36,42 @@ public class ElectricalNetwork { members.add(be); } + /** + * Called when a block is removed or added to the network or when loading chunks the network is in + * Sets up blocks in the network + */ public void updateNetwork() { int maxVoltage = 0; - int power = 0; int resistance = 0; int powerGeneration = 0; Map groups = new HashMap<>(); + /** + * Phase I: + * 1) gives each blocks the networks id + * 2) finds the highest voltage generated + * 3) counts the resistance and power generation of the network + * 4) creates groups + */ for (IElectric member : members) { member.getData().notEnoughPower = false; int groupId = member.getData().group.id; maxVoltage = Math.max(member.voltageGeneration(), maxVoltage); - power += member.powerGeneration(); resistance += (int) member.resistance(); powerGeneration += member.powerGeneration(); if (member.canBeInGroups()) groups.put(groupId, groups.containsKey(groupId) ? groups.get(groupId) + member.resistance() : member.resistance()); } - + /** + * Phase II: + * 1) informs blocks about voltage and power change + * 2) sets network's resistance + * 3) informs blocks about their group's resistance + */ List list = new ArrayList<>(members); if (!members.isEmpty()) { @@ -72,18 +91,25 @@ public class ElectricalNetwork { member.getData().group.resistance = groups.get(member.getData().group.id); } } - + /** + * Phase III: + * 1) sets the current of wires + * 2) informs subnetworks + */ for (IElectric member : members) { member.getData().highestCurrent = getCableCurrent(member); - member.updateNearbyNetworks(member); + if (member instanceof VoltageAlteringBlockEntity be) { be.updateInFront(); } } - + /** + * Phase IV: + * 1) stops the network from functioning if it consumes more power than it creates + */ handleInsufficientPower(); } @@ -122,6 +148,8 @@ public class ElectricalNetwork { return current; } + + public void checkForLoops(BlockPos pos) { members.forEach(member -> { diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/base/IElectric.java b/src/main/java/com/drmangotea/tfmg/content/electricity/base/IElectric.java index dc5951bd..101932ce 100644 --- a/src/main/java/com/drmangotea/tfmg/content/electricity/base/IElectric.java +++ b/src/main/java/com/drmangotea/tfmg/content/electricity/base/IElectric.java @@ -21,16 +21,33 @@ import net.neoforged.neoforge.energy.IEnergyStorage; import java.util.ArrayList; import java.util.List; - +/** + * data and actions for electric blocks + */ public interface IElectric { + + /** + * block's world position as a long + */ long getPos(); + /** + * world the blocks is in + */ LevelAccessor getLevelAccessor(); + /** + * + * @return true if the block is marked as removed + */ default boolean destroyed() { return getData().destroyed(); } + /** + * checks if this block is part of a valid network + * @return block's network if valid, newly created network for this block otherwise + */ default ElectricalNetwork getOrCreateElectricNetwork() { if (getLevelAccessor().getBlockEntity(BlockPos.of(getData().electricalNetworkId)) instanceof IElectric) { return TFMG.NETWORK_MANAGER.getOrCreateNetworkFor((IElectric) getLevelAccessor().getBlockEntity(BlockPos.of(getData().electricalNetworkId))); @@ -41,10 +58,16 @@ public interface IElectric { } } + /** + * tells the block which sides of it can be attached to the grid + */ default boolean hasElectricitySlot(Direction direction) { return true; } + /** + * initialization, called when the block is placed + */ default void onPlaced() { if (getLevelAccessor() instanceof ServerLevel serverLevel) @@ -67,20 +90,9 @@ public interface IElectric { } - default void onNeighborChanged() { - Level level = (Level) getLevelAccessor(); - for(Direction direction : Direction.values()){ - IEnergyStorage capability = level.getCapability(Capabilities.EnergyStorage.BLOCK,getBlockPos().relative(direction), direction); - - if(capability==null) - continue; - - - - - } - } - + /** + * manages removal of this block after it is destroyed + */ default void onRemoved() { this.getData().destroyed = true; for (Direction d : Direction.values()) { @@ -101,6 +113,9 @@ public interface IElectric { .remove(getData().getId()); } + /** + * loads data + */ default void readElectricity(CompoundTag compound, boolean clientPacket) { getData().group = new ElectricalGroup(compound.getInt("GroupId")); getData().group.resistance = compound.getFloat("GroupResistance"); @@ -108,11 +123,17 @@ public interface IElectric { getData().connectNextTick = true; } + /** + * saves data + */ default void writeElectricity(CompoundTag compound, boolean clientPacket) { compound.putInt("GroupId", getData().group.id); compound.putFloat("GroupResistance", getData().group.resistance); } + /** + * handles action that need to happen every tick and checks for scheduled updates + */ default void tickElectricity() { if (getData().checkForLoopsNextTick) { getOrCreateElectricNetwork().checkForLoops(getBlockPos()); @@ -137,6 +158,9 @@ public interface IElectric { } } + /** + * handles actions that need to repeat every second + */ default void lazyTickElectricity() { if (getData().failTimer >= 4) { this.blockFail(); @@ -147,6 +171,9 @@ public interface IElectric { } } + /** + * WIP, not functional + */ default int getMaxVoltage() { return 0; } @@ -155,6 +182,9 @@ public interface IElectric { return 0; } + /** + * handles connecting blocks into a network + */ default void onConnected() { BlockPos pos = BlockPos.of(getPos()); @@ -180,10 +210,17 @@ public interface IElectric { } + /** + * + * @return the block's world position + */ default BlockPos getBlockPos() { return BlockPos.of(getPos()); } + /** + * tells blocks when the network doesn't have enough power + */ default void updateUnpowered(List alreadyChecked) { alreadyChecked.add(BlockPos.of(getPos())); updateNextTick(); @@ -205,6 +242,9 @@ public interface IElectric { } } + /** + * the multimeter tooltip + */ default boolean makeMultimeterTooltip(List tooltip, boolean isPlayerSneaking) { TFMGTexts.header("multimeter").style(ChatFormatting.WHITE) .forGoggles(tooltip); @@ -238,22 +278,16 @@ public interface IElectric { return true; } - default void updateNearbyNetworks(IElectric member) { - if (true) - return; - - - for (Direction direction : Direction.values()) { - if (member.getLevelAccessor().getBlockEntity(BlockPos.of(member.getPos()).relative(direction)) instanceof IElectric be && be.getData().getId() != member.getData().getId()) { - be.getLevelAccessor().setBlock(BlockPos.of(be.getPos()).above(3), Blocks.GOLD_BLOCK.defaultBlockState(), 3); - be.updateNextTick(); - } - } - - } + /** + * contains data related to electricity + */ ElectricBlockValues getData(); + /** + * + * @return true if the network has enough power + */ default boolean canWork() { return !getData().notEnoughPower; } @@ -401,7 +435,7 @@ public interface IElectric { if (canBeInGroups()) { - getData().voltage = (int) (((float) resistance() / getData().group.resistance) * (float) getData().voltageSupply); + getData().voltage = (int) ((resistance() / getData().group.resistance) * (float) getData().voltageSupply); return; } getData().voltage = newVoltage; diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/base/IVoltageChanger.java b/src/main/java/com/drmangotea/tfmg/content/electricity/base/IVoltageChanger.java index 6f2376a6..38a9c22f 100644 --- a/src/main/java/com/drmangotea/tfmg/content/electricity/base/IVoltageChanger.java +++ b/src/main/java/com/drmangotea/tfmg/content/electricity/base/IVoltageChanger.java @@ -1,4 +1,8 @@ package com.drmangotea.tfmg.content.electricity.base; +/** + * Blocks that connect networks with other networks + * usually for voltage transformation + */ public interface IVoltageChanger { } diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/connection/cable_type/CableType.java b/src/main/java/com/drmangotea/tfmg/content/electricity/connection/cable_type/CableType.java index 7050cb9c..7874db89 100644 --- a/src/main/java/com/drmangotea/tfmg/content/electricity/connection/cable_type/CableType.java +++ b/src/main/java/com/drmangotea/tfmg/content/electricity/connection/cable_type/CableType.java @@ -11,11 +11,13 @@ public class CableType { private final ResourceLocation id; private final int color; private final ItemEntry spool; + private final ItemEntry wire; public CableType(Properties properties) { this.id = properties.id; this.color = properties.color; this.spool = properties.spool; + this.wire = properties.wire; } public int getColor() { @@ -26,6 +28,10 @@ public class CableType { return this.spool; } + public ItemEntry getWire() { + return this.wire; + } + public String getOrCreateDescriptionId() { if (this.descriptionId == null) { this.descriptionId = Util.makeDescriptionId("cable_type", getKey()); @@ -51,6 +57,7 @@ public class CableType { int color = 0xffffff; ItemEntry spool = TFMGItems.COPPER_SPOOL; + ItemEntry wire = TFMGItems.COPPER_WIRE; public Properties color(int color) { this.color = color; @@ -62,6 +69,11 @@ public class CableType { return this; } + public Properties wire(ItemEntry wire) { + this.wire = wire; + return this; + } + public Properties(ResourceLocation id) { this.id = id; } diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/connection/cables/CableConnectorBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/electricity/connection/cables/CableConnectorBlockEntity.java index 777ed325..0b257b05 100644 --- a/src/main/java/com/drmangotea/tfmg/content/electricity/connection/cables/CableConnectorBlockEntity.java +++ b/src/main/java/com/drmangotea/tfmg/content/electricity/connection/cables/CableConnectorBlockEntity.java @@ -4,6 +4,8 @@ import com.drmangotea.tfmg.base.TFMGUtils; import com.drmangotea.tfmg.content.electricity.base.ElectricBlockEntity; import com.drmangotea.tfmg.content.machinery.misc.winding_machine.SpoolItem; import com.drmangotea.tfmg.registry.TFMGBlocks; +import com.drmangotea.tfmg.registry.TFMGCableTypes; +import com.drmangotea.tfmg.registry.TFMGItems; import com.simibubi.create.api.equipment.goggles.IHaveHoveringInformation; import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour; import net.createmod.catnip.animation.AnimationTickHolder; @@ -14,11 +16,14 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.multiplayer.ClientLevel; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; +import net.minecraft.core.Holder; import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.entity.item.ItemEntity; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.ItemLike; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.phys.AABB; @@ -81,7 +86,7 @@ public class CableConnectorBlockEntity extends ElectricBlockEntity implements IH return; for (CableConnection connection : connections) { - ItemEntity itemToDrop = new ItemEntity(level, getBlockPos().getX() + 0.5f, getBlockPos().getY() + 0.5f, getBlockPos().getZ() + 0.5f, new ItemStack(connection.type.getSpool().get(), (int) (connection.getLength() / 8))); + ItemEntity itemToDrop = new ItemEntity(level, getBlockPos().getX() + 0.5f, getBlockPos().getY() + 0.5f, getBlockPos().getZ() + 0.5f, new ItemStack(connection.type.getWire().asItem(), (int) (connection.getLength() / 8))); if (itemToDrop.getItem().getCount() > 0) { level.addFreshEntity(itemToDrop); } diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/measurement/VoltMeterBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/electricity/measurement/VoltMeterBlockEntity.java index 53b58447..babad9ad 100644 --- a/src/main/java/com/drmangotea/tfmg/content/electricity/measurement/VoltMeterBlockEntity.java +++ b/src/main/java/com/drmangotea/tfmg/content/electricity/measurement/VoltMeterBlockEntity.java @@ -8,6 +8,8 @@ import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour; import net.createmod.catnip.animation.LerpedFloat; import net.minecraft.core.BlockPos; +import net.minecraft.core.HolderLookup; +import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.entity.BlockEntityType; @@ -55,6 +57,22 @@ public class VoltMeterBlockEntity extends SmartBlockEntity implements IHaveGoggl } + @Override + protected void write(CompoundTag tag, HolderLookup.Provider registries, boolean clientPacket) { + super.write(tag, registries, clientPacket); + + if (mode != MeasureMode.VOLTAGE) + tag.putString("mode", mode.toString()); + + } + + @Override + protected void read(CompoundTag tag, HolderLookup.Provider registries, boolean clientPacket) { + super.read(tag, registries, clientPacket); + if (!tag.getString("mode").isEmpty()) + mode = MeasureMode.valueOf(tag.getString("mode")); + } + public float getUnit(IElectric be) { return switch (mode) { case VOLTAGE, HIGH_VOLTAGE -> be.getData().getVoltage(); @@ -63,7 +81,8 @@ public class VoltMeterBlockEntity extends SmartBlockEntity implements IHaveGoggl case POWER -> be.powerGeneration() > 0 ? be.powerGeneration() : be.getPowerUsage(); case NETWORK_POWER_USAGE -> be.getNetworkPowerUsage(); case NETWORK_POWER_GENERATION -> be.getNetworkPowerGeneration(); - case CAPACITY -> be instanceof AccumulatorBlockEntity accumulator ? level.getBlockEntity(accumulator.controller) instanceof AccumulatorBlockEntity controllerBE ? controllerBE.energy.getEnergyStored() :0 :0; + case CAPACITY -> + be instanceof AccumulatorBlockEntity accumulator ? level.getBlockEntity(accumulator.controller) instanceof AccumulatorBlockEntity controllerBE ? controllerBE.energy.getEnergyStored() : 0 : 0; case FALLBACK -> 0; }; @@ -82,7 +101,7 @@ public class VoltMeterBlockEntity extends SmartBlockEntity implements IHaveGoggl float targetAngle = Math.abs(value * 180); - angle.chase(Math.min(Math.abs(targetAngle),180), 0.05f, LerpedFloat.Chaser.EXP); + angle.chase(Math.min(Math.abs(targetAngle), 180), 0.05f, LerpedFloat.Chaser.EXP); angle.tickChaser(); } diff --git a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/polarizer/PolarizerBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/polarizer/PolarizerBlockEntity.java index 28213ced..0f4e0a8e 100644 --- a/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/polarizer/PolarizerBlockEntity.java +++ b/src/main/java/com/drmangotea/tfmg/content/electricity/utilities/polarizer/PolarizerBlockEntity.java @@ -99,14 +99,14 @@ public class PolarizerBlockEntity extends ElectricBlockEntity implements IHaveGo // @Override public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) { - + TFMGTexts.Multimeter.charge(capacitorPercentage/2f).forGoggles(tooltip); if(getPowerUsage()<2000&&!inventory.isEmpty()){ TFMGTexts.Multimeter.notEnoughPower(2000).forGoggles(tooltip, 1); return true; } TFMGTexts.header("polarizer").style(ChatFormatting.GRAY).forGoggles(tooltip, 1); - TFMGTexts.Multimeter.charge(capacitorPercentage/2f).forGoggles(tooltip); + return true; } diff --git a/src/main/java/com/drmangotea/tfmg/content/engines/base/AbstractEngineBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/engines/base/AbstractEngineBlockEntity.java index bf0c931d..e4a4c27a 100644 --- a/src/main/java/com/drmangotea/tfmg/content/engines/base/AbstractEngineBlockEntity.java +++ b/src/main/java/com/drmangotea/tfmg/content/engines/base/AbstractEngineBlockEntity.java @@ -43,18 +43,15 @@ public abstract class AbstractEngineBlockEntity extends KineticElectricBlockEnti // public float rpm = 0; - public float fuelInjectionRate = 0; // public boolean reverse = false; // - public int highestSignal; + public float highestSignal; public int signal; // public BlockPos engineController; // - // - public float torque = 0; public boolean signalChanged; // @@ -104,10 +101,8 @@ public abstract class AbstractEngineBlockEntity extends KineticElectricBlockEnti public void tankUpdated(FluidStack stack, boolean fuelTank) { if (fuelTank && stack.isEmpty()) { - TFMG.LOGGER.debug("FUEL OFF"); - fuelInjectionRate = 0; - rpm =0 ; + rpm = 0; updateRotation(); analogSignalChanged(); } @@ -119,19 +114,13 @@ public abstract class AbstractEngineBlockEntity extends KineticElectricBlockEnti return engineController != null; } - @Override public void updateNetwork() { super.updateNetwork(); } protected void analogSignalChanged() { - if (!canWork()) { - fuelInjectionRate = 0; - return; - } if (hasEngineController()) { - fuelInjectionRate = highestSignal / 15f; return; } @@ -139,31 +128,18 @@ public abstract class AbstractEngineBlockEntity extends KineticElectricBlockEnti signal = newSignal; - newSignal = Math.max(level.getBestNeighborSignal(getBlockPos()), newSignal); - highestSignal = newSignal; - fuelInjectionRate = highestSignal / 15f; + highestSignal = newSignal / 15f; updateRotation(); } - //@Override - //public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) { -// - // CreateLang.text("SIGNAL " + highestSignal).forGoggles(tooltip); -// -// - // return super.addToGoggleTooltip(tooltip, isPlayerSneaking); - //} - @Override public void lazyTick() { super.lazyTick(); neighbourChanged(); - - manageFuelAndExhaust(); } @@ -182,7 +158,6 @@ public abstract class AbstractEngineBlockEntity extends KineticElectricBlockEnti } } - @Override public boolean makeMultimeterTooltip(List tooltip, boolean isPlayerSneaking) { return false; @@ -224,8 +199,6 @@ public abstract class AbstractEngineBlockEntity extends KineticElectricBlockEnti public abstract float torqueModifier(); - public abstract String engineId(); - public FuelType getFuelType() { @@ -243,7 +216,6 @@ public abstract class AbstractEngineBlockEntity extends KineticElectricBlockEnti } public void refreshCapability() { - IFluidHandler oldCap = fluidCapability; fluidCapability = this.handlerForCapability(); invalidateCapabilities(); } @@ -291,22 +263,14 @@ public abstract class AbstractEngineBlockEntity extends KineticElectricBlockEnti signal = compound.getInt("Signal") + 1; if (hasEngineController()) engineController = BlockPos.of(compound.getLong("EngineController")); - fuelInjectionRate = compound.getFloat("RPM"); - - // if (isController()) { - // if (!BlockPos.of(compound.getLong("ControllerPos")).equals(new BlockPos(0, 0, 0))) - // controller = BlockPos.of(compound.getLong("ControllerPos")); fuelTank.readFromNBT(registries, compound.getCompound("FuelTank")); exhaustTank.readFromNBT(registries, compound.getCompound("ExhaustTank")); - highestSignal = compound.getInt("HighestSignal"); - //signalChanged = true; updateRotation(); updateGeneratedRotation(); - //} } @@ -318,30 +282,21 @@ public abstract class AbstractEngineBlockEntity extends KineticElectricBlockEnti compound.putInt("Signal", signal); if (hasEngineController()) compound.putLong("EngineController", engineController.asLong()); - compound.putFloat("RPM", fuelInjectionRate); - compound.put("FuelTank", fuelTank.writeToNBT(registries, new CompoundTag())); compound.put("ExhaustTank", exhaustTank.writeToNBT(registries, new CompoundTag())); - compound.putInt("HighestSignal", highestSignal); - - } - public abstract int getFuelConsumption(); - @Override public void onPlaced() { super.onPlaced(); } - public void neighbourChanged() { - if (!hasLevel()) return; @@ -353,6 +308,4 @@ public abstract class AbstractEngineBlockEntity extends KineticElectricBlockEnti this.signalChanged = true; } - - } diff --git a/src/main/java/com/drmangotea/tfmg/content/engines/base/EngineBlock.java b/src/main/java/com/drmangotea/tfmg/content/engines/base/EngineBlock.java index 44c3dd78..ad3fc43e 100644 --- a/src/main/java/com/drmangotea/tfmg/content/engines/base/EngineBlock.java +++ b/src/main/java/com/drmangotea/tfmg/content/engines/base/EngineBlock.java @@ -71,12 +71,9 @@ public class EngineBlock extends HorizontalKineticBlock { engineController.sendData(); } } - //if(!level.isClientSide) - // TFMGPackets.getChannel().send(PacketDistributor.ALL.noArg(), new UpdateInFrontPacket(BlockPos.of(be.getPos()))); be.getControllerBE().engineController = null; be.getControllerBE().highestSignal = 0; be.getControllerBE().connectNextTick = true; - be.getControllerBE().fuelInjectionRate = 0; be.updateGeneratedRotation(); be.getControllerBE().updateGeneratedRotation(); be.getControllerBE().sendData(); @@ -100,6 +97,8 @@ public class EngineBlock extends HorizontalKineticBlock { be.connectNextTick = true; be.detachKinetics(); be.getControllerBE().updateGeneratedRotation(); + be.getControllerBE().calculateAddedStressCapacity(); + be.calculateAddedStressCapacity(); be.updateGeneratedRotation(); if (be.getOrCreateNetwork() != null) be.getOrCreateNetwork().remove(be); diff --git a/src/main/java/com/drmangotea/tfmg/content/engines/engine_controller/EngineControllerBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/engines/engine_controller/EngineControllerBlockEntity.java index 0fdb4346..a28bdcd2 100644 --- a/src/main/java/com/drmangotea/tfmg/content/engines/engine_controller/EngineControllerBlockEntity.java +++ b/src/main/java/com/drmangotea/tfmg/content/engines/engine_controller/EngineControllerBlockEntity.java @@ -1,5 +1,6 @@ package com.drmangotea.tfmg.content.engines.engine_controller; +import com.drmangotea.tfmg.TFMG; import com.drmangotea.tfmg.content.engines.types.AbstractSmallEngineBlockEntity; import com.drmangotea.tfmg.content.engines.upgrades.TransmissionUpgrade; import com.simibubi.create.api.equipment.goggles.IHaveGoggleInformation; @@ -267,7 +268,7 @@ public class EngineControllerBlockEntity extends SmartBlockEntity implements IHa if (enginePos != null && (engine == null)) { if (level.getBlockEntity(enginePos) instanceof AbstractSmallEngineBlockEntity be) { engine = be; - engine.getControllerBE().highestSignal = 4; + engine.getControllerBE().highestSignal = 4/15; } } @@ -296,8 +297,7 @@ public class EngineControllerBlockEntity extends SmartBlockEntity implements IHa if (engine == null) return; engine.getControllerBE().engineController = this.getBlockPos(); - engine.getControllerBE().highestSignal = accelerationRate; - engine.getControllerBE().fuelInjectionRate = engine.getControllerBE().highestSignal / 15f; + engine.getControllerBE().highestSignal = accelerationRate/15; engine.getControllerBE().updateRotation(); @@ -306,6 +306,7 @@ public class EngineControllerBlockEntity extends SmartBlockEntity implements IHa public void disconnectEngine() { if (engine == null) return; + engine.getControllerBE().highestSignal = 0; engine.getControllerBE().engineController = null; engine.getControllerBE().updateGeneratedRotation(); diff --git a/src/main/java/com/drmangotea/tfmg/content/engines/engine_controller/TransmissionRemovePacket.java b/src/main/java/com/drmangotea/tfmg/content/engines/engine_controller/TransmissionRemovePacket.java index c8a99b0c..6942ef1a 100644 --- a/src/main/java/com/drmangotea/tfmg/content/engines/engine_controller/TransmissionRemovePacket.java +++ b/src/main/java/com/drmangotea/tfmg/content/engines/engine_controller/TransmissionRemovePacket.java @@ -1,5 +1,6 @@ package com.drmangotea.tfmg.content.engines.engine_controller; +import com.drmangotea.tfmg.TFMG; import com.drmangotea.tfmg.content.engines.base.AbstractEngineBlockEntity; import com.drmangotea.tfmg.registry.TFMGPackets; import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; diff --git a/src/main/java/com/drmangotea/tfmg/content/engines/types/AbstractSmallEngineBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/engines/types/AbstractSmallEngineBlockEntity.java index 580c2af4..0c0cc665 100644 --- a/src/main/java/com/drmangotea/tfmg/content/engines/types/AbstractSmallEngineBlockEntity.java +++ b/src/main/java/com/drmangotea/tfmg/content/engines/types/AbstractSmallEngineBlockEntity.java @@ -1,10 +1,10 @@ package com.drmangotea.tfmg.content.engines.types; +import com.drmangotea.tfmg.TFMG; import com.drmangotea.tfmg.base.TFMGUtils; import com.drmangotea.tfmg.base.lang.TFMGLang; import com.drmangotea.tfmg.base.lang.TFMGTexts; import com.drmangotea.tfmg.content.engines.base.AbstractEngineBlockEntity; -import com.drmangotea.tfmg.content.engines.base.EngineBlock; import com.drmangotea.tfmg.content.engines.base.EngineComponentsInventory; import com.drmangotea.tfmg.content.engines.base.EngineProperties; import com.drmangotea.tfmg.content.engines.engine_controller.EngineControllerBlockEntity; @@ -31,6 +31,7 @@ import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.item.crafting.Ingredient; +import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; @@ -81,20 +82,10 @@ public abstract class AbstractSmallEngineBlockEntity extends AbstractEngineBlock float coolingFluidModifier = coolingFluid > 0 ? 0.7f : 1f; - return (int) (12.5f * (1 / efficiencyModifier()) * getSpeedEfficiency() * fuelInjectionRate * oilModifier * coolingFluidModifier) * (engineLength() + 1); + return (int) (12.5f * (1 / efficiencyModifier()) * getSpeedEfficiency() * highestSignal / 15 * oilModifier * coolingFluidModifier) * (engineLength() + 1); } public void detashEngines() { - //for (long id : engines) { - // BlockPos pos = BlockPos.of(id); - // if (level.getBlockEntity(pos) instanceof AbstractEngineBlockEntity be) { - // be.controller = be.getBlockPos(); - // be.engineNumber = 0; - // be.refreshCapability(); - // be.sendData(); - // be.setChanged(); - // } - //} } public void setBlockStates(AbstractSmallEngineBlockEntity be, BlockPos last) { @@ -139,10 +130,12 @@ public abstract class AbstractSmallEngineBlockEntity extends AbstractEngineBlock @Override public void lazyTick() { super.lazyTick(); + upgrade.ifPresent(engineUpgrade -> engineUpgrade.lazyTickUpgrade(this)); - if(!canWork()) + if (!canWork()) + return; + if(rpm==0) return; - if (level.random.nextInt(45) == 0) { if (oil > 0) oil--; @@ -152,12 +145,13 @@ public abstract class AbstractSmallEngineBlockEntity extends AbstractEngineBlock coolingFluid--; } - upgrade.ifPresent(engineUpgrade -> engineUpgrade.lazyTickUpgrade(this)); + } @Override public float calculateAddedStressCapacity() { float stress = super.calculateAddedStressCapacity() + (torque); + return hasTwoShafts() ? stress / 2 : stress; } @@ -165,12 +159,10 @@ public abstract class AbstractSmallEngineBlockEntity extends AbstractEngineBlock if (!isController()) return getControllerBE().hasTwoShafts(); - if (this.getBlockState().getValue(ENGINE_STATE) == SHAFT) { - BlockState state = level.getBlockState(controller.south(engineLength())); - if (state.getBlock() instanceof EngineBlock) - if (engineLength() > 1 && state.getValue(ENGINE_STATE) == SHAFT) - return true; + BlockPos pos = getBlockPos().relative(this.getBlockState().getValue(SHAFT_FACING).getOpposite(), engineLength() ); + if (level.getBlockState(pos).getValue(ENGINE_STATE) == SHAFT) + return true; } return false; } @@ -254,13 +246,9 @@ public abstract class AbstractSmallEngineBlockEntity extends AbstractEngineBlock if (controller == null) return; - if (!canWork()) { - fuelInjectionRate = 0; - return; - } + if (hasEngineController()) { - fuelInjectionRate = highestSignal / 15f; return; } @@ -271,6 +259,7 @@ public abstract class AbstractSmallEngineBlockEntity extends AbstractEngineBlock signal = newSignal; if (!isController()) { + if (level.getBlockEntity(controller) instanceof AbstractSmallEngineBlockEntity be) { be.analogSignalChanged(); return; @@ -282,9 +271,9 @@ public abstract class AbstractSmallEngineBlockEntity extends AbstractEngineBlock newSignal = Math.max(level.getBestNeighborSignal(pos), newSignal); } + newSignal = Math.max(level.getBestNeighborSignal(controller), newSignal); - highestSignal = newSignal; - fuelInjectionRate = highestSignal / 15f; + highestSignal = newSignal/15f; updateRotation(); } @@ -306,10 +295,9 @@ public abstract class AbstractSmallEngineBlockEntity extends AbstractEngineBlock return; } - if(fuelTank.isEmpty()){ + if (fuelTank.isEmpty()) { rpm = 0; torque = 0; - fuelInjectionRate = 0; } List allEngines = new ArrayList<>(engines); @@ -333,8 +321,8 @@ public abstract class AbstractSmallEngineBlockEntity extends AbstractEngineBlock allEngines.forEach(l -> { BlockPos pos = BlockPos.of(l); if (level.getBlockEntity(pos) instanceof AbstractEngineBlockEntity be) { - be.rpm = 4000 * speedModifier() * fuelInjectionRate; - be.torque = 15 * torqueModifier() * fuelInjectionRate * engineLength(); + be.rpm = 4000 * speedModifier() * highestSignal ; + be.torque = 15 * torqueModifier() * highestSignal* engineLength(); be.updateGeneratedRotation(); } }); @@ -364,7 +352,6 @@ public abstract class AbstractSmallEngineBlockEntity extends AbstractEngineBlock if (!canGenerateSpeed()) return 0; - float speed; @@ -398,7 +385,6 @@ public abstract class AbstractSmallEngineBlockEntity extends AbstractEngineBlock } - return convertToDirection(Math.min((int) speed, 256), getBlockState().getValue(HORIZONTAL_FACING)); } return 0; @@ -486,7 +472,7 @@ public abstract class AbstractSmallEngineBlockEntity extends AbstractEngineBlock upgrade.ifPresent(u -> u.updateUpgrade(this)); itemStack.shrink(1); if (upgrade.isPresent()) - if (upgrade.get() instanceof TransmissionUpgrade transmissionUpgrade) { + if (upgrade.get() instanceof TransmissionUpgrade) { if (itemStack.has(TFMGDataComponents.POSITION) && itemStack.get(TFMGDataComponents.POSITION) != null) { BlockPos pos = BlockPos.of(itemStack.get(TFMGDataComponents.POSITION)); if (level.getBlockEntity(pos) instanceof EngineControllerBlockEntity engineControllerBE) { @@ -559,9 +545,7 @@ public abstract class AbstractSmallEngineBlockEntity extends AbstractEngineBlock TFMGTexts.Engine.rpm(rpm).forGoggles(tooltip); TFMGTexts.Engine.length(engineLength()).forGoggles(tooltip); TFMGTexts.Engine.torque(torque).forGoggles(tooltip); - TFMGTexts.Engine.injectionRate(fuelInjectionRate).forGoggles(tooltip); - TFMGTexts.Engine.signal(highestSignal).forGoggles(tooltip); - + TFMGTexts.Engine.signal((int) (highestSignal*15)).forGoggles(tooltip); TFMGLang.number(engineNumber).style(ChatFormatting.DARK_GREEN).forGoggles(tooltip); if (isController() && !nextComponent().isEmpty()) TFMGLang.text(nextComponent().getItems()[0].getDisplayName().getString()).forGoggles(tooltip); @@ -674,7 +658,7 @@ public abstract class AbstractSmallEngineBlockEntity extends AbstractEngineBlock setChanged(); sendData(); - } catch (StackOverflowError ignored){ + } catch (StackOverflowError ignored) { } diff --git a/src/main/java/com/drmangotea/tfmg/content/engines/types/large_engine/LargeEngineBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/engines/types/large_engine/LargeEngineBlockEntity.java index 4c2df6a5..c785d577 100644 --- a/src/main/java/com/drmangotea/tfmg/content/engines/types/large_engine/LargeEngineBlockEntity.java +++ b/src/main/java/com/drmangotea/tfmg/content/engines/types/large_engine/LargeEngineBlockEntity.java @@ -154,12 +154,7 @@ public class LargeEngineBlockEntity extends AbstractEngineBlockEntity { return 1; } - @Override - public String engineId() { - return "Large"; - } - - + @OnlyIn(Dist.CLIENT) private void makeSound() { Float targetAngle = getTargetAngle(); diff --git a/src/main/java/com/drmangotea/tfmg/content/engines/types/regular_engine/RegularEngineBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/engines/types/regular_engine/RegularEngineBlockEntity.java index 9d21d34f..dfaec1e4 100644 --- a/src/main/java/com/drmangotea/tfmg/content/engines/types/regular_engine/RegularEngineBlockEntity.java +++ b/src/main/java/com/drmangotea/tfmg/content/engines/types/regular_engine/RegularEngineBlockEntity.java @@ -36,7 +36,6 @@ import java.util.List; import static com.drmangotea.tfmg.content.engines.base.EngineProperties.*; import static com.drmangotea.tfmg.content.engines.types.regular_engine.RegularEngineBlock.EXTENDED; -import static com.simibubi.create.AllTags.optionalTag; import static com.simibubi.create.content.kinetics.base.HorizontalKineticBlock.HORIZONTAL_FACING; public class RegularEngineBlockEntity extends AbstractSmallEngineBlockEntity { @@ -383,16 +382,18 @@ public class RegularEngineBlockEntity extends AbstractSmallEngineBlockEntity { if(nextComponent()!= Ingredient.EMPTY){ TFMGTexts.Engine.unfinished().forGoggles(tooltip); TFMGTexts.Engine.nextComponent(nextComponent().getItems()[0]).forGoggles(tooltip); + TFMGTexts.Engine.type(type.langKey).forGoggles(tooltip, 1); return true; } if(!hasAllPistons()){ TFMGTexts.Engine.lastRequirement(this instanceof TurbineEngineBlockEntity ? "turbines" : "pistons").forGoggles(tooltip); + TFMGTexts.Engine.type(type.langKey).forGoggles(tooltip, 1); return true; } TFMGTexts.Engine.type(type.langKey).forGoggles(tooltip, 1); TFMGTexts.Engine.rpm(rpm).forGoggles(tooltip, 1); - TFMGTexts.Engine.signal(highestSignal).forGoggles(tooltip, 1); + TFMGTexts.Engine.signal((int) (highestSignal*15)).forGoggles(tooltip, 1); TFMGTexts.Engine.torque(torque).forGoggles(tooltip, 1); TFMGTexts.Engine.fuelConsumption(getFuelConsumption()/1.5f).forGoggles(tooltip, 1); if(oil>0){ @@ -407,10 +408,6 @@ public class RegularEngineBlockEntity extends AbstractSmallEngineBlockEntity { return true; } - @Override - public String engineId() { - return type.name; - } public enum EngineType { I("engine_i", pistonsI(), 1, 1, 1, true), diff --git a/src/main/java/com/drmangotea/tfmg/content/engines/upgrades/EnginePipingUpgrade.java b/src/main/java/com/drmangotea/tfmg/content/engines/upgrades/EnginePipingUpgrade.java index d8161e7d..65ecd696 100644 --- a/src/main/java/com/drmangotea/tfmg/content/engines/upgrades/EnginePipingUpgrade.java +++ b/src/main/java/com/drmangotea/tfmg/content/engines/upgrades/EnginePipingUpgrade.java @@ -1,6 +1,7 @@ package com.drmangotea.tfmg.content.engines.upgrades; +import com.drmangotea.tfmg.TFMG; import com.drmangotea.tfmg.content.engines.types.AbstractSmallEngineBlockEntity; import com.drmangotea.tfmg.registry.TFMGBlocks; import com.simibubi.create.content.fluids.tank.FluidTankBlockEntity; @@ -40,6 +41,8 @@ public class EnginePipingUpgrade extends EngineUpgrade { @Override public void lazyTickUpgrade(AbstractSmallEngineBlockEntity engine) { + + if (tank.isPresent()) { AbstractSmallEngineBlockEntity controller = engine.getControllerBE(); @@ -57,7 +60,7 @@ public class EnginePipingUpgrade extends EngineUpgrade { tankBE.getTankInventory().drain(amount, IFluidHandler.FluidAction.EXECUTE); controller.getControllerBE().fuelTank.fill(new FluidStack(tankBE.getFluid(0).getFluidHolder(), amount), IFluidHandler.FluidAction.EXECUTE); - } + } else findTank(engine); } diff --git a/src/main/java/com/drmangotea/tfmg/content/items/weapons/lithium_blade/LitLithiumBladeItem.java b/src/main/java/com/drmangotea/tfmg/content/items/weapons/lithium_blade/LitLithiumBladeItem.java index ad497caa..bc6b7ede 100644 --- a/src/main/java/com/drmangotea/tfmg/content/items/weapons/lithium_blade/LitLithiumBladeItem.java +++ b/src/main/java/com/drmangotea/tfmg/content/items/weapons/lithium_blade/LitLithiumBladeItem.java @@ -43,9 +43,13 @@ public class LitLithiumBladeItem extends SwordItem { // :3 - ItemStack stack = player.getItemInHand(hand); + if (stack.get(TFMGDataComponents.LITHIUM_BLADE_TIMER) ==null){ + ItemStack stack1 = TFMGItems.LITHIUM_BLADE.asStack(); + player.setItemInHand(hand,stack1); + return InteractionResultHolder.pass(stack1); + } if (stack.get(TFMGDataComponents.LITHIUM_BLADE_TIMER) <= 100) return super.use(level, player, hand); @@ -55,8 +59,6 @@ public class LitLithiumBladeItem extends SwordItem { level.playSound(player, player.getX(), player.getY(), player.getZ(), SoundEvents.FIRECHARGE_USE, SoundSource.NEUTRAL, 0.5F, 0.4F); - Vec3 motion = player.getLookAngle(); - for (int i = 0; i < 10; i++) { diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/blast_furnace/BlastFurnaceHatchBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/blast_furnace/BlastFurnaceHatchBlockEntity.java index 1a531b62..c714f09a 100644 --- a/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/blast_furnace/BlastFurnaceHatchBlockEntity.java +++ b/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/blast_furnace/BlastFurnaceHatchBlockEntity.java @@ -55,6 +55,11 @@ public class BlastFurnaceHatchBlockEntity extends SmartBlockEntity implements IH TFMGBlockEntities.BLAST_FURNACE_HATCH.get(), (be, context) -> be.fluidCapability ); + event.registerBlockEntity( + Capabilities.ItemHandler.BLOCK, + TFMGBlockEntities.BLAST_FURNACE_HATCH.get(), + (be, context) -> be.inventory + ); } @Override public void addBehaviours(List behaviours) {} diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/blast_furnace/BlastFurnaceOutputBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/blast_furnace/BlastFurnaceOutputBlockEntity.java index e8ab302e..bd0e6357 100644 --- a/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/blast_furnace/BlastFurnaceOutputBlockEntity.java +++ b/src/main/java/com/drmangotea/tfmg/content/machinery/metallurgy/blast_furnace/BlastFurnaceOutputBlockEntity.java @@ -226,12 +226,12 @@ public class BlastFurnaceOutputBlockEntity extends SmartBlockEntity implements I } if (tuyereBE == null && tuyerePos != null) tuyereBE = (BlastFurnaceHatchBlockEntity) level.getBlockEntity(tuyerePos); - - if (tuyereBE.tank.getFluidAmount() < recipe.hotAirUsage || !tuyereBE.tank.getFluid().getFluid().isSame(TFMGFluids.HOT_AIR.getSource())) - return; - - tuyereBE.tank.getFluidInTank(0).setAmount(Math.max(tuyereBE.tank.getFluidInTank(0).getAmount() - recipe.hotAirUsage, 0)); - + if (tuyereBE!=null) + if (tuyereBE.tank.getFluidAmount() < recipe.hotAirUsage || !tuyereBE.tank.getFluid().getFluid().isSame(TFMGFluids.HOT_AIR.getSource())) + return; + if (tuyereBE!=null) { + tuyereBE.tank.getFluidInTank(0).setAmount(Math.max(tuyereBE.tank.getFluidInTank(0).getAmount() - recipe.hotAirUsage, 0)); + } if (!recipe.getGasByproduct().isEmpty()) { if (level.getBlockEntity(getBlockPos().relative(getBlockState().getValue(FACING).getOpposite()).above(getSize())) instanceof BlastFurnaceHatchBlockEntity be) { be.tank.fill(recipe.getGasByproduct(), IFluidHandler.FluidAction.EXECUTE); diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/SpoolItem.java b/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/SpoolItem.java index 122401a4..fa748ace 100644 --- a/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/SpoolItem.java +++ b/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/SpoolItem.java @@ -53,6 +53,7 @@ public class SpoolItem extends Item { } + @Override public InteractionResultHolder use(Level level, Player player, InteractionHand hand) { ItemStack stack = player.getItemInHand(hand); @@ -228,9 +229,10 @@ public class SpoolItem extends Item { + @Override public void inventoryTick(ItemStack stack, Level level, Entity entity, int slot, boolean p_41408_) { - super.inventoryTick(stack, level, entity, slot, p_41408_); + if(stack.get(TFMGDataComponents.SPOOL_AMOUNT)==null) return; diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/WindingMachineBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/WindingMachineBlockEntity.java index 2b643357..54b1359c 100644 --- a/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/WindingMachineBlockEntity.java +++ b/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/WindingMachineBlockEntity.java @@ -43,7 +43,6 @@ public class WindingMachineBlockEntity extends KineticBlockEntity implements IHa LerpedFloat spoolSpeed = LerpedFloat.linear(); float angle; public SmartInventory inventory; - public IItemHandlerModifiable itemCapability; public ItemStack spool = ItemStack.EMPTY; public WindingRecipe recipe; public int amountWinded = 0; @@ -58,7 +57,6 @@ public class WindingMachineBlockEntity extends KineticBlockEntity implements IHa .withMaxStackSize(1) .whenContentsChanged(i -> this.onContentsChanged()); - itemCapability = inventory; } @@ -66,7 +64,7 @@ public class WindingMachineBlockEntity extends KineticBlockEntity implements IHa event.registerBlockEntity( Capabilities.ItemHandler.BLOCK, TFMGBlockEntities.WINDING_MACHINE.get(), - (be, context) -> be.itemCapability + (be, context) -> be.inventory ); } @@ -141,7 +139,7 @@ public class WindingMachineBlockEntity extends KineticBlockEntity implements IHa .forGoggles(tooltip); if (recipe != null) - TFMGTexts.progress(TFMGLang.number(amountWinded) + "/" + recipe.getProcessingDuration()) + TFMGTexts.progress(amountWinded + "/" + recipe.getProcessingDuration()) .color(spool.getBarColor()) .forGoggles(tooltip); } diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/WindingMachineRenderer.java b/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/WindingMachineRenderer.java index 6ece0f76..63839447 100644 --- a/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/WindingMachineRenderer.java +++ b/src/main/java/com/drmangotea/tfmg/content/machinery/misc/winding_machine/WindingMachineRenderer.java @@ -1,7 +1,7 @@ package com.drmangotea.tfmg.content.machinery.misc.winding_machine; +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; @@ -53,27 +53,29 @@ public class WindingMachineRenderer extends KineticBlockEntityRenderer isFound = new HashMap<>(); - for (int i = 0; i < testedRecipe.getIngredients().size(); i++) { - Integer foundAt = null; - if (testedRecipe.getIngredients().get(i).isEmpty()) - break; - for (int y = 0; y < itemHandler.getSlots(); y++) { - if (isFound.containsValue(y)) - continue; - ItemStack stack = itemHandler.getStackInSlot(y); - if (testedRecipe.getIngredients().get(i).test(stack)) { - foundAt = y; - break; - } - } - if (foundAt != null) { - isFound.put(i, foundAt); - } else doesntMatch = true; - } - } ////////////////////////////////////////// if (doesntMatch) @@ -468,6 +432,7 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor * ticks the processing timer */ public void handleRecipe() { + if (recipe == null) return; if (!isController()) @@ -539,7 +504,8 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor } } //fluid output - List handledFluidResults = new ArrayList<>(); + + List handledFluidStacks = new ArrayList<>(); List tankSegments = List.of(outputTank.getTanks()); @@ -903,8 +869,9 @@ public class VatBlockEntity extends SmartBlockEntity implements IHaveGoggleInfor } private IFluidHandler getNewFluidCapability() { - IFluidHandler inputHandler = inputTank.getCapability(); IFluidHandler outputHandler = outputTank.getCapability(); + IFluidHandler inputHandler = inputTank.getCapability(); + if (inputHandler == null || outputHandler == null) 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 91ce8dbc..347f891e 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 @@ -22,7 +22,7 @@ public class VatRenderer extends SafeBlockEntityRenderer { if (!be.isController()) return; - float fluidLevel = renderFluids(be, partialTicks, ms, bufferSource, light, overlay); + renderFluids(be, partialTicks, ms, bufferSource, light, overlay); } diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/electrode_holder/ElectrodeHolderBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/electrode_holder/ElectrodeHolderBlockEntity.java index 41fe00ed..0388288d 100644 --- a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/electrode_holder/ElectrodeHolderBlockEntity.java +++ b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/electrode_holder/ElectrodeHolderBlockEntity.java @@ -10,13 +10,16 @@ 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 com.drmangotea.tfmg.content.machinery.vat.industrial_mixer.IndustrialMixerBlockEntity; 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.item.Items; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.phys.AABB; @@ -100,6 +103,21 @@ public class ElectrodeHolderBlockEntity extends ElectricBlockEntity implements I return false; } + + @Override + public void remove() { + + if (level.isClientSide || electrode.getItem()==null) + return; + + + ItemEntity itemToDrop = new ItemEntity(level, getBlockPos().getX() + 0.5f, getBlockPos().getY() + 0.5f, getBlockPos().getZ() + 0.5f, electrode.getStack()); + + level.addFreshEntity(itemToDrop); + + + } + @Override public void onNetworkChanged(int oldVoltage, int oldPower) { super.onNetworkChanged(oldVoltage, oldPower); diff --git a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/industrial_mixer/IndustrialMixerBlockEntity.java b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/industrial_mixer/IndustrialMixerBlockEntity.java index abbcaa69..7fde00b4 100644 --- a/src/main/java/com/drmangotea/tfmg/content/machinery/vat/industrial_mixer/IndustrialMixerBlockEntity.java +++ b/src/main/java/com/drmangotea/tfmg/content/machinery/vat/industrial_mixer/IndustrialMixerBlockEntity.java @@ -11,6 +11,7 @@ import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; +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; @@ -60,9 +61,6 @@ public class IndustrialMixerBlockEntity extends KineticBlockEntity implements IV } - - - @Override public void write(CompoundTag compound, HolderLookup.Provider registries, boolean clientPacket) { for (MixerMode mode : MixerMode.values()) { @@ -70,7 +68,7 @@ public class IndustrialMixerBlockEntity extends KineticBlockEntity implements IV compound.putString("MixerMode", mode.name); } } - super.write(compound,registries , clientPacket); + super.write(compound, registries, clientPacket); } @Override @@ -80,7 +78,22 @@ public class IndustrialMixerBlockEntity extends KineticBlockEntity implements IV if (clientPacket) visualSpeed.chase(getGeneratedSpeed(), (double) 1 / 32, LerpedFloat.Chaser.EXP); - super.read(compound,registries , clientPacket); + super.read(compound, registries, clientPacket); + } + + + @Override + public void remove() { + + if (level.isClientSide || mixerMode == MixerMode.NONE) + return; + + + ItemEntity itemToDrop = new ItemEntity(level, getBlockPos().getX() + 0.5f, getBlockPos().getY() + 0.5f, getBlockPos().getZ() + 0.5f, mixerMode.item); + + level.addFreshEntity(itemToDrop); + + } @Override @@ -134,7 +147,7 @@ public class IndustrialMixerBlockEntity extends KineticBlockEntity implements IV @Override public int getWorkPercentage() { - return (int) ((getSpeed()/255f)*100); + return (int) ((getSpeed() / 255f) * 100); } @Override diff --git a/src/main/java/com/drmangotea/tfmg/datagen/recipes/values/TFMGStandardRecipeGen.java b/src/main/java/com/drmangotea/tfmg/datagen/recipes/values/TFMGStandardRecipeGen.java index 96aec550..e7ba96a2 100644 --- a/src/main/java/com/drmangotea/tfmg/datagen/recipes/values/TFMGStandardRecipeGen.java +++ b/src/main/java/com/drmangotea/tfmg/datagen/recipes/values/TFMGStandardRecipeGen.java @@ -3,6 +3,7 @@ package com.drmangotea.tfmg.datagen.recipes.values; import com.drmangotea.tfmg.TFMG; import com.drmangotea.tfmg.base.TFMGRegistrate; import com.drmangotea.tfmg.content.decoration.pipes.TFMGPipes; +import com.drmangotea.tfmg.content.machinery.misc.winding_machine.SpoolItem; import com.drmangotea.tfmg.datagen.recipes.TFMGRecipeProvider; import com.drmangotea.tfmg.registry.TFMGBlocks; import com.drmangotea.tfmg.registry.TFMGFluids; @@ -1011,32 +1012,32 @@ public class TFMGStandardRecipeGen extends TFMGRecipeProvider { .pattern("CPC") .pattern("MMM")), - COPPER_SPOOL = create(TFMGItems.COPPER_SPOOL) - .unlockedBy(TFMGItems.EMPTY_SPOOL::get) - .viaShaped(b -> b - .define('S', TFMGItems.EMPTY_SPOOL) - .define('W', copperWire()) - .pattern("WWW") - .pattern("WSW") - .pattern("WWW")), - - ALUMINUM_SPOOL = create(TFMGItems.ALUMINUM_SPOOL) - .unlockedBy(TFMGItems.EMPTY_SPOOL::get) - .viaShaped(b -> b - .define('S', TFMGItems.EMPTY_SPOOL) - .define('W', aluminumWire()) - .pattern("WWW") - .pattern("WSW") - .pattern("WWW")), - - CONSTANTAN_SPOOL = create(TFMGItems.CONSTANTAN_SPOOL) - .unlockedBy(TFMGItems.EMPTY_SPOOL::get) - .viaShaped(b -> b - .define('S', TFMGItems.EMPTY_SPOOL) - .define('W', constantanWire()) - .pattern("WWW") - .pattern("WSW") - .pattern("WWW")), + // COPPER_SPOOL = create(TFMGItems.COPPER_SPOOL) + // .unlockedBy(TFMGItems.EMPTY_SPOOL::get) + // .viaShaped(b -> b + // .define('S', TFMGItems.EMPTY_SPOOL) + // .define('W', copperWire()) + // .pattern("WWW") + // .pattern("WSW") + // .pattern("WWW")), +// + // ALUMINUM_SPOOL = create(TFMGItems.ALUMINUM_SPOOL) + // .unlockedBy(TFMGItems.EMPTY_SPOOL::get) + // .viaShaped(b -> b + // .define('S', TFMGItems.EMPTY_SPOOL) + // .define('W', aluminumWire()) + // .pattern("WWW") + // .pattern("WSW") + // .pattern("WWW")), +// + // CONSTANTAN_SPOOL = create(TFMGItems.CONSTANTAN_SPOOL) + // .unlockedBy(TFMGItems.EMPTY_SPOOL::get) + // .viaShaped(b -> b + // .define('S', TFMGItems.EMPTY_SPOOL) + // .define('W', constantanWire()) + // .pattern("WWW") + // .pattern("WSW") + // .pattern("WWW")), REGULAR_ENGINE = create(TFMGBlocks.REGULAR_ENGINE).returns(2) .unlockedBy(TFMGBlocks.HEAVY_MACHINERY_CASING::asItem) @@ -2404,6 +2405,8 @@ public class TFMGStandardRecipeGen extends TFMGRecipeProvider { return new GeneratedRecipeBuilder(currentFolder, result); } + + GeneratedRecipeBuilder create(ItemProviderEntry result) { return create(result::get); } @@ -2561,9 +2564,9 @@ public class TFMGStandardRecipeGen extends TFMGRecipeProvider { return this; } - // FIXME 5.1 refactor - recipe categories as markers instead of sections? TFMGRecipeProvider.GeneratedRecipe viaShaped(UnaryOperator builder) { return register(consumer -> { + ShapedRecipeBuilder b = builder.apply(ShapedRecipeBuilder.shaped(RecipeCategory.MISC, result.get(), amount)); if (unlockedBy != null) diff --git a/src/main/java/com/drmangotea/tfmg/datagen/recipes/values/create/TFMGSequencedAssemblyRecipeGen.java b/src/main/java/com/drmangotea/tfmg/datagen/recipes/values/create/TFMGSequencedAssemblyRecipeGen.java index 0b3ba396..f7c12a53 100644 --- a/src/main/java/com/drmangotea/tfmg/datagen/recipes/values/create/TFMGSequencedAssemblyRecipeGen.java +++ b/src/main/java/com/drmangotea/tfmg/datagen/recipes/values/create/TFMGSequencedAssemblyRecipeGen.java @@ -33,7 +33,7 @@ public class TFMGSequencedAssemblyRecipeGen extends SequencedAssemblyRecipeGen { .loops(3) .addStep(WindingRecipe::new, rb -> rb.require(TFMGItems.CONSTANTAN_SPOOL.get()).duration(100)) .addStep(DeployerApplicationRecipe::new, rb -> rb.require(TFMGBlocks.STEEL_COGWHEEL)) - .addStep(DeployerApplicationRecipe::new, rb -> rb.require(TFMGItems.COPPER_WIRE)) + .addStep(DeployerApplicationRecipe::new, rb -> rb.require(copperWire())) .addStep(FillingRecipe::new, rb -> rb.require(SizedFluidIngredient.of(lubricationOil(), 50)))), GENERATOR = create("generator", b -> b.require(shaft()) diff --git a/src/main/java/com/drmangotea/tfmg/registry/TFMGBlocks.java b/src/main/java/com/drmangotea/tfmg/registry/TFMGBlocks.java index ff002c8c..cff4428c 100644 --- a/src/main/java/com/drmangotea/tfmg/registry/TFMGBlocks.java +++ b/src/main/java/com/drmangotea/tfmg/registry/TFMGBlocks.java @@ -1474,8 +1474,8 @@ public class TFMGBlocks { .onRegister(connectedTextures(() -> new EncasedCTBehaviour(TFMGSpriteShifts.CAST_IRON_BLOCK))) .onRegister(casingConnectivity((block, cc) -> cc.makeCasing(block, TFMGSpriteShifts.CAST_IRON_BLOCK))) .transform(pickaxeOnly()) - .blockstate(simpleCubeAll("cast_iron_block")) .tag(BlockTags.NEEDS_IRON_TOOL) + .blockstate(simpleCubeAll("cast_iron_block")) .tag(BlockTags.BEACON_BASE_BLOCKS) .transform(tagBlockAndItem(Map.of( Tags.Blocks.STORAGE_BLOCKS, Tags.Items.STORAGE_BLOCKS, @@ -1838,6 +1838,8 @@ public class TFMGBlocks { .initialProperties(SharedProperties::softMetal) .properties(BlockBehaviour.Properties::noOcclusion) .properties(p -> p.sound(SoundType.NETHERITE_BLOCK)) + .transform(pickaxeOnly()) + .tag(BlockTags.NEEDS_IRON_TOOL) .addLayer(() -> RenderType::cutoutMipped) .blockstate((ctx, prov) -> prov.simpleBlock(ctx.getEntry(), AssetLookup.partialBaseModel(ctx, prov))) .item() @@ -1849,6 +1851,8 @@ public class TFMGBlocks { .properties(BlockBehaviour.Properties::noOcclusion) .properties(p -> p.sound(SoundType.NETHERITE_BLOCK)) .addLayer(() -> RenderType::cutoutMipped) + .transform(pickaxeOnly()) + .tag(BlockTags.NEEDS_IRON_TOOL) .blockstate((ctx, prov) -> prov.simpleBlock(ctx.getEntry(), AssetLookup.partialBaseModel(ctx, prov))) .item() .transform(customItemModel()) @@ -1858,6 +1862,8 @@ public class TFMGBlocks { .initialProperties(SharedProperties::softMetal) .properties(BlockBehaviour.Properties::noOcclusion) .properties(p -> p.sound(SoundType.NETHERITE_BLOCK)) + .transform(pickaxeOnly()) + .tag(BlockTags.NEEDS_IRON_TOOL) .addLayer(() -> RenderType::cutoutMipped) .blockstate((ctx, prov) -> prov.simpleBlock(ctx.getEntry(), AssetLookup.partialBaseModel(ctx, prov))) .item() @@ -1868,6 +1874,8 @@ public class TFMGBlocks { .initialProperties(SharedProperties::softMetal) .properties(p -> p.sound(SoundType.NETHERITE_BLOCK)) .addLayer(() -> RenderType::cutoutMipped) + .transform(pickaxeOnly()) + .tag(BlockTags.NEEDS_IRON_TOOL) .blockstate(BlockStateGen.directionalBlockProvider(true)) .item() .transform(customItemModel()) @@ -1877,6 +1885,8 @@ public class TFMGBlocks { .initialProperties(SharedProperties::softMetal) .properties(BlockBehaviour.Properties::noOcclusion) .properties(p -> p.sound(SoundType.NETHERITE_BLOCK)) + .transform(pickaxeOnly()) + .tag(BlockTags.NEEDS_IRON_TOOL) .addLayer(() -> RenderType::cutoutMipped) .blockstate(new RebarStairsGenerator()::generate) .item() @@ -1888,6 +1898,8 @@ public class TFMGBlocks { .initialProperties(SharedProperties::softMetal) .properties(BlockBehaviour.Properties::noOcclusion) .properties(p -> p.sound(SoundType.NETHERITE_BLOCK)) + .transform(pickaxeOnly()) + .tag(BlockTags.NEEDS_IRON_TOOL) .addLayer(() -> RenderType::cutoutMipped) .blockstate(BlockStateGen.directionalBlockProvider(true)) .item() diff --git a/src/main/java/com/drmangotea/tfmg/registry/TFMGCableTypes.java b/src/main/java/com/drmangotea/tfmg/registry/TFMGCableTypes.java index 68b520e2..2d402c42 100644 --- a/src/main/java/com/drmangotea/tfmg/registry/TFMGCableTypes.java +++ b/src/main/java/com/drmangotea/tfmg/registry/TFMGCableTypes.java @@ -13,17 +13,17 @@ public class TFMGCableTypes { .register(); public static final CableTypeEntry COPPER = REGISTRATE.cableType("copper", CableType::new) - .properties((p) -> p.color(0xD8735A).spool(TFMGItems.COPPER_SPOOL)) + .properties((p) -> p.color(0xD8735A).spool(TFMGItems.COPPER_SPOOL).wire(TFMGItems.COPPER_WIRE)) .transform(TFMGResistivity.setResistivity(0.00188f)) .register(); public static final CableTypeEntry ALUMINUM = REGISTRATE.cableType("aluminum", CableType::new) - .properties((p) -> p.color(0xEDEFEF).spool(TFMGItems.ALUMINUM_SPOOL)) + .properties((p) -> p.color(0xEDEFEF).spool(TFMGItems.ALUMINUM_SPOOL).wire(TFMGItems.ALUMINUM_WIRE)) .transform(TFMGResistivity.setResistivity(0.0027f)) .register(); public static final CableTypeEntry CONSTANTAN = REGISTRATE.cableType("constantan", CableType::new) - .properties((p) -> p.color(0xCFC2A8).spool(TFMGItems.CONSTANTAN_SPOOL)) + .properties((p) -> p.color(0xCFC2A8).spool(TFMGItems.CONSTANTAN_SPOOL).wire(TFMGItems.CONSTANTAN_WIRE)) .transform(TFMGResistivity.setResistivity(1f)) .register(); diff --git a/src/main/resources/assets/tfmg/lang/default/interface.json b/src/main/resources/assets/tfmg/lang/default/interface.json index 29693f43..3d7545f4 100644 --- a/src/main/resources/assets/tfmg/lang/default/interface.json +++ b/src/main/resources/assets/tfmg/lang/default/interface.json @@ -2,8 +2,8 @@ "creative_tab.tfmg_main": "Create: The Factory Must Grow", "creative_tab.tfmg_decoration": "Create: TFMG Building Blocks", - "create.goggles.fluid_storage": "Fluid Storage:", - "tfmg.goggles.item_storage": "Item Storage:", + "tfmg.goggles.fluid_storage": "Fluid Storage:", + "create.goggles.item_storage": "Item Storage:", "tfmg.goggles.item_storage_empty": "*Empty*", "tfmg.surface_scanner.header": "Surface Scanner", @@ -56,7 +56,7 @@ "tfmg.goggles.machine_input.power_level": "Power Level: ", "tfmg.winding_machine.header": "Winding Machine", - "tfmg.goggles.winding_machine.turns": "Turns Left: %s", + "tfmg.goggles.winding_machine.turns": "Turns Left: %1$", "tfmg.goggles.winding_machine.progress": "Progress: ", "tfmg.polarizer.header": "Polarizer", @@ -124,21 +124,20 @@ "tfmg.tooltip.fuse": "Rating: %1$s", "tfmg.tooltip.resistor": "Resistance: %1$s", - "tfmg.tooltip.coils": "Turns: %1$s", + "tfmg.tooltip.coils": "Turns: ", "tfmg.tooltip.cylinder": "Supported Fuels:", "tfmg.tooltip.fluid_item": "Fluid Amount: %1$s", - "tfmg.recipe.assembly.winding": "Wind a Spool", - - "tfmg.recipe.distillation": "Distillation", - "tfmg.recipe.advanced_distillation": "Advanced Distillation", - "tfmg.recipe.industrial_blasting": "Industrial Blasting", - "tfmg.recipe.casting": "Casting", - "tfmg.recipe.coking": "Coking", - "tfmg.recipe.polarizing": "Polarizing", - "tfmg.recipe.chemical_vat": "Chemical Vat", - "tfmg.recipe.hot_blast": "Air Blasting", - "tfmg.recipe.winding": "Winding", + "create.recipe.assembly.winding": "Wind a Spool", + "create.recipe.distillation": "Distillation", + "create.recipe.advanced_distillation": "Advanced Distillation", + "create.recipe.industrial_blasting": "Industrial Blasting", + "create.recipe.casting": "Casting", + "create.recipe.coking": "Coking", + "create.recipe.polarizing": "Polarizing", + "create.recipe.chemical_vat": "Chemical Vat", + "create.recipe.hot_blast": "Air Blasting", + "create.recipe.winding": "Winding", "tfmg.keyinfo.custom_button": "Engine Controller Custom Button", "tfmg.keyinfo.engine_start": "Start Engine", @@ -150,7 +149,7 @@ "tfmg.multimeter.insufficient_power": "Not Enough Power", "tfmg.multimeter.insufficient_power.requirement": "Not Enough Power (Needs %s)", "tfmg.multimeter.insufficient_current": "Not Enough Current (Needs %s)", - "tfmg.multimeter.charge": "Charge: %s", + "tfmg.multimeter.charge": "Charge: ", "tfmg.multimeter.additional_values": "Additional Values:", "tfmg.multimeter.power_usage": " Power Usage: ", "tfmg.multimeter.group": " Group: %s", @@ -191,7 +190,7 @@ "tfmg.engine.type.engine_v": "V", "tfmg.engine.type.engine_w": "W", "tfmg.engine.type.engine_u": "U", - "tfmg.engine.type.boxer": "Boxer", + "tfmg.engine.type.engine_boxer": "Boxer", "tfmg.engine.type.radial": "Radial", "tfmg.engine.type.turbine": "Turbine", @@ -200,8 +199,8 @@ "tfmg.goggles.voltmeter.mode.current": "Current", "tfmg.goggles.voltmeter.mode.resistance": "Resistance", "tfmg.goggles.voltmeter.mode.power": "Power", - "tfmg.goggles.voltmeter.mode.net_power_use": "Network Power Usage", - "tfmg.goggles.voltmeter.mode.net_power_gen": "Network Power Generation", + "tfmg.goggles.voltmeter.mode.network_power_use": "Network Power Usage", + "tfmg.goggles.voltmeter.mode.network_power_generation": "Network Power Generation", "tfmg.goggles.voltmeter.mode.capacity": "Capacity", "tfmg.goggles.voltmeter.mode.fallback": "Fallback", diff --git a/src/main/resources/assets/tfmg/lang/default/tooltips.json b/src/main/resources/assets/tfmg/lang/default/tooltips.json index 15f69a74..447588f4 100644 --- a/src/main/resources/assets/tfmg/lang/default/tooltips.json +++ b/src/main/resources/assets/tfmg/lang/default/tooltips.json @@ -174,7 +174,7 @@ "block.tfmg.diode.tooltip.behaviour1": "The power will be outputted on its lighter side acting as a one way pathway for power (meaning any power that would be coming from its lighter side would not be outputted on the darker one)", "block.tfmg.blast_stove.tooltip.summary": "Heats Air", - "block.tfmg.blast_stove.tooltip.behaviour1": "When 3 blast stoves are placed on top of eachother (or in a 3x2 shape) the smallest version of a blast stove is created, to add further internal storage you can add more stove blocks on top which is generally reccomended. A Blast Stove requires 2 things to be pumped in. Air, from the side of the bottom block and Creosote or Furnace gas from the bottom. Carbon dioxide must be pumped out from the side of the bottom block and finally heated air must be pumped out from the machines top.", + "block.tfmg.blast_stove.tooltip.behaviour1": "When 3 blast stoves are placed on top of eachother (or in a 3x2 shape) the smallest version of a blast stove is created, to add further internal storage you can add more stove blocks on top which is generally recommended. A Blast Stove requires 2 things to be pumped in. Air, from the side of the bottom block and Creosote or Furnace gas from the bottom. Carbon dioxide must be pumped out from the side of the bottom block and finally heated air must be pumped out from the machines top.", "block.tfmg.resistor.tooltip.summary": "Adds resistance to a network", "block.tfmg.resistor.tooltip.condition1": "When placed on a block within a group", diff --git a/src/main/resources/assets/tfmg/models/block/aluminum_mechanical_pump/cog.json b/src/main/resources/assets/tfmg/models/block/aluminum_mechanical_pump/cog.json deleted file mode 100644 index 7dc3bd74..00000000 --- a/src/main/resources/assets/tfmg/models/block/aluminum_mechanical_pump/cog.json +++ /dev/null @@ -1,162 +0,0 @@ -{ - "credit": "Made with Blockbench", - "parent": "block/block", - "texture_size": [32, 32], - "textures": { - "2": "tfmg:block/aluminum_pump" - }, - "elements": [ - { - "from": [6.5, -1, 3], - "to": [9.5, 17, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "east": {"uv": [0, 9, 9, 14], "rotation": 270, "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "west": {"uv": [0, 9, 9, 14], "rotation": 90, "texture": "#2"}, - "up": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"} - } - }, - { - "from": [-1, 6.5, 3], - "to": [17, 9.5, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 0, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 180, "texture": "#2"}, - "east": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "texture": "#2"}, - "west": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "up": {"uv": [0, 9, 9, 14], "rotation": 180, "texture": "#2"}, - "down": {"uv": [0, 9, 9, 14], "texture": "#2"} - } - }, - { - "from": [6.5, -1, 3], - "to": [9.5, 17, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 45, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "east": {"uv": [0, 9, 9, 14], "rotation": 270, "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "west": {"uv": [0, 9, 9, 14], "rotation": 90, "texture": "#2"}, - "up": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"} - } - }, - { - "from": [-1, 6.5, 3], - "to": [17, 9.5, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 45, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 180, "texture": "#2"}, - "east": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "texture": "#2"}, - "west": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "up": {"uv": [0, 9, 9, 14], "rotation": 180, "texture": "#2"}, - "down": {"uv": [0, 9, 9, 14], "texture": "#2"} - } - }, - { - "from": [5.5, 0.9, 3.05], - "to": [10.5, 15.1, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "up": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"} - } - }, - { - "from": [0.9, 5.5, 3.05], - "to": [15.1, 10.5, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": -22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "rotation": 90, "texture": "#2"}, - "east": {"uv": [10, 9, 15, 11.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "rotation": 270, "texture": "#2"}, - "west": {"uv": [10, 9, 15, 11.5], "texture": "#2"} - } - }, - { - "from": [0.9, 5.5, 3.05], - "to": [15.1, 10.5, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "rotation": 90, "texture": "#2"}, - "east": {"uv": [10, 9, 15, 11.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "rotation": 270, "texture": "#2"}, - "west": {"uv": [10, 9, 15, 11.5], "texture": "#2"} - } - }, - { - "from": [5.5, 0.9, 3.05], - "to": [10.5, 15.1, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": -22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "up": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"} - } - } - ], - "display": { - "thirdperson_righthand": { - "rotation": [75, -149, 0], - "translation": [0, 2.5, 0], - "scale": [0.375, 0.375, 0.375] - }, - "thirdperson_lefthand": { - "rotation": [75, -149, 0], - "translation": [0, 2.5, 0], - "scale": [0.375, 0.375, 0.375] - }, - "firstperson_righthand": { - "rotation": [0, -55, 0], - "scale": [0.4, 0.4, 0.4] - }, - "firstperson_lefthand": { - "rotation": [0, -55, 0], - "scale": [0.4, 0.4, 0.4] - }, - "ground": { - "translation": [0, 1, 1.25], - "scale": [0.25, 0.25, 0.25] - }, - "gui": { - "rotation": [30, 45, 0], - "translation": [2.5, -0.5, 0], - "scale": [0.625, 0.625, 0.625] - }, - "fixed": { - "rotation": [0, 180, 0], - "translation": [0, 1.75, -4.5], - "scale": [0.5, 0.5, 0.5] - } - }, - "groups": [ - { - "name": "cogwheel", - "origin": [8, 8, 8], - "color": 0, - "children": [0, 1, 2, 3] - }, - { - "name": "group", - "origin": [8, 8, 8], - "color": 0, - "children": [4, 5, 6, 7] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/tfmg/models/block/brass_mechanical_pump/cog.json b/src/main/resources/assets/tfmg/models/block/brass_mechanical_pump/cog.json deleted file mode 100644 index 63bfb4bc..00000000 --- a/src/main/resources/assets/tfmg/models/block/brass_mechanical_pump/cog.json +++ /dev/null @@ -1,162 +0,0 @@ -{ - "credit": "Made with Blockbench", - "parent": "block/block", - "texture_size": [32, 32], - "textures": { - "2": "tfmg:block/brass_pump" - }, - "elements": [ - { - "from": [6.5, -1, 3], - "to": [9.5, 17, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "east": {"uv": [0, 9, 9, 14], "rotation": 270, "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "west": {"uv": [0, 9, 9, 14], "rotation": 90, "texture": "#2"}, - "up": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"} - } - }, - { - "from": [-1, 6.5, 3], - "to": [17, 9.5, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 0, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 180, "texture": "#2"}, - "east": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "texture": "#2"}, - "west": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "up": {"uv": [0, 9, 9, 14], "rotation": 180, "texture": "#2"}, - "down": {"uv": [0, 9, 9, 14], "texture": "#2"} - } - }, - { - "from": [6.5, -1, 3], - "to": [9.5, 17, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 45, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "east": {"uv": [0, 9, 9, 14], "rotation": 270, "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "west": {"uv": [0, 9, 9, 14], "rotation": 90, "texture": "#2"}, - "up": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"} - } - }, - { - "from": [-1, 6.5, 3], - "to": [17, 9.5, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 45, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 180, "texture": "#2"}, - "east": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "texture": "#2"}, - "west": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "up": {"uv": [0, 9, 9, 14], "rotation": 180, "texture": "#2"}, - "down": {"uv": [0, 9, 9, 14], "texture": "#2"} - } - }, - { - "from": [5.5, 0.9, 3.05], - "to": [10.5, 15.1, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "up": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"} - } - }, - { - "from": [0.9, 5.5, 3.05], - "to": [15.1, 10.5, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": -22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "rotation": 90, "texture": "#2"}, - "east": {"uv": [10, 9, 15, 11.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "rotation": 270, "texture": "#2"}, - "west": {"uv": [10, 9, 15, 11.5], "texture": "#2"} - } - }, - { - "from": [0.9, 5.5, 3.05], - "to": [15.1, 10.5, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "rotation": 90, "texture": "#2"}, - "east": {"uv": [10, 9, 15, 11.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "rotation": 270, "texture": "#2"}, - "west": {"uv": [10, 9, 15, 11.5], "texture": "#2"} - } - }, - { - "from": [5.5, 0.9, 3.05], - "to": [10.5, 15.1, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": -22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "up": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"} - } - } - ], - "display": { - "thirdperson_righthand": { - "rotation": [75, -149, 0], - "translation": [0, 2.5, 0], - "scale": [0.375, 0.375, 0.375] - }, - "thirdperson_lefthand": { - "rotation": [75, -149, 0], - "translation": [0, 2.5, 0], - "scale": [0.375, 0.375, 0.375] - }, - "firstperson_righthand": { - "rotation": [0, -55, 0], - "scale": [0.4, 0.4, 0.4] - }, - "firstperson_lefthand": { - "rotation": [0, -55, 0], - "scale": [0.4, 0.4, 0.4] - }, - "ground": { - "translation": [0, 1, 1.25], - "scale": [0.25, 0.25, 0.25] - }, - "gui": { - "rotation": [30, 45, 0], - "translation": [2.5, -0.5, 0], - "scale": [0.625, 0.625, 0.625] - }, - "fixed": { - "rotation": [0, 180, 0], - "translation": [0, 1.75, -4.5], - "scale": [0.5, 0.5, 0.5] - } - }, - "groups": [ - { - "name": "cogwheel", - "origin": [8, 8, 8], - "color": 0, - "children": [0, 1, 2, 3] - }, - { - "name": "group", - "origin": [8, 8, 8], - "color": 0, - "children": [4, 5, 6, 7] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/tfmg/models/block/cast_iron_mechanical_pump/cog.json b/src/main/resources/assets/tfmg/models/block/cast_iron_mechanical_pump/cog.json deleted file mode 100644 index e0d98d3c..00000000 --- a/src/main/resources/assets/tfmg/models/block/cast_iron_mechanical_pump/cog.json +++ /dev/null @@ -1,162 +0,0 @@ -{ - "credit": "Made with Blockbench", - "parent": "block/block", - "texture_size": [32, 32], - "textures": { - "2": "tfmg:block/cast_iron_pump" - }, - "elements": [ - { - "from": [6.5, -1, 3], - "to": [9.5, 17, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "east": {"uv": [0, 9, 9, 14], "rotation": 270, "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "west": {"uv": [0, 9, 9, 14], "rotation": 90, "texture": "#2"}, - "up": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"} - } - }, - { - "from": [-1, 6.5, 3], - "to": [17, 9.5, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 0, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 180, "texture": "#2"}, - "east": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "texture": "#2"}, - "west": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "up": {"uv": [0, 9, 9, 14], "rotation": 180, "texture": "#2"}, - "down": {"uv": [0, 9, 9, 14], "texture": "#2"} - } - }, - { - "from": [6.5, -1, 3], - "to": [9.5, 17, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 45, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "east": {"uv": [0, 9, 9, 14], "rotation": 270, "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "west": {"uv": [0, 9, 9, 14], "rotation": 90, "texture": "#2"}, - "up": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"} - } - }, - { - "from": [-1, 6.5, 3], - "to": [17, 9.5, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 45, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 180, "texture": "#2"}, - "east": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "texture": "#2"}, - "west": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "up": {"uv": [0, 9, 9, 14], "rotation": 180, "texture": "#2"}, - "down": {"uv": [0, 9, 9, 14], "texture": "#2"} - } - }, - { - "from": [5.5, 0.9, 3.05], - "to": [10.5, 15.1, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "up": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"} - } - }, - { - "from": [0.9, 5.5, 3.05], - "to": [15.1, 10.5, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": -22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "rotation": 90, "texture": "#2"}, - "east": {"uv": [10, 9, 15, 11.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "rotation": 270, "texture": "#2"}, - "west": {"uv": [10, 9, 15, 11.5], "texture": "#2"} - } - }, - { - "from": [0.9, 5.5, 3.05], - "to": [15.1, 10.5, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "rotation": 90, "texture": "#2"}, - "east": {"uv": [10, 9, 15, 11.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "rotation": 270, "texture": "#2"}, - "west": {"uv": [10, 9, 15, 11.5], "texture": "#2"} - } - }, - { - "from": [5.5, 0.9, 3.05], - "to": [10.5, 15.1, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": -22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "up": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"} - } - } - ], - "display": { - "thirdperson_righthand": { - "rotation": [75, -149, 0], - "translation": [0, 2.5, 0], - "scale": [0.375, 0.375, 0.375] - }, - "thirdperson_lefthand": { - "rotation": [75, -149, 0], - "translation": [0, 2.5, 0], - "scale": [0.375, 0.375, 0.375] - }, - "firstperson_righthand": { - "rotation": [0, -55, 0], - "scale": [0.4, 0.4, 0.4] - }, - "firstperson_lefthand": { - "rotation": [0, -55, 0], - "scale": [0.4, 0.4, 0.4] - }, - "ground": { - "translation": [0, 1, 1.25], - "scale": [0.25, 0.25, 0.25] - }, - "gui": { - "rotation": [30, 45, 0], - "translation": [2.5, -0.5, 0], - "scale": [0.625, 0.625, 0.625] - }, - "fixed": { - "rotation": [0, 180, 0], - "translation": [0, 1.75, -4.5], - "scale": [0.5, 0.5, 0.5] - } - }, - "groups": [ - { - "name": "cogwheel", - "origin": [8, 8, 8], - "color": 0, - "children": [0, 1, 2, 3] - }, - { - "name": "group", - "origin": [8, 8, 8], - "color": 0, - "children": [4, 5, 6, 7] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/tfmg/models/block/encased_shaft/block.json b/src/main/resources/assets/tfmg/models/block/encased_shaft/block.json deleted file mode 100644 index e69de29b..00000000 diff --git a/src/main/resources/assets/tfmg/models/block/encased_shaft/item.json b/src/main/resources/assets/tfmg/models/block/encased_shaft/item.json deleted file mode 100644 index e69de29b..00000000 diff --git a/src/main/resources/assets/tfmg/models/block/engine_block.json b/src/main/resources/assets/tfmg/models/block/engine_block.json deleted file mode 100644 index e69de29b..00000000 diff --git a/src/main/resources/assets/tfmg/models/block/fireproof_brick_reinforcement.json b/src/main/resources/assets/tfmg/models/block/fireproof_brick_reinforcement.json deleted file mode 100644 index e69de29b..00000000 diff --git a/src/main/resources/assets/tfmg/models/block/formwork_block/block_base.json b/src/main/resources/assets/tfmg/models/block/formwork_block/block_base.json deleted file mode 100644 index e69de29b..00000000 diff --git a/src/main/resources/assets/tfmg/models/block/formwork_block/block_bottom.json b/src/main/resources/assets/tfmg/models/block/formwork_block/block_bottom.json deleted file mode 100644 index c798dee0..00000000 --- a/src/main/resources/assets/tfmg/models/block/formwork_block/block_bottom.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "credit": "Made with Blockbench", - "textures": { - "0": "tfmg:block/formwork_bottom", - "particle": "tfmg:block/formwork_bottom" - }, - "elements": [ - { - "from": [0, 0, 0], - "to": [16, 1, 16], - "faces": { - "north": {"uv": [0, 0, 16, 1], "texture": "#0"}, - "east": {"uv": [0, 0, 16, 1], "texture": "#0"}, - "south": {"uv": [0, 0, 16, 1], "texture": "#0"}, - "west": {"uv": [0, 0, 16, 1], "texture": "#0"}, - "up": {"uv": [0, 0, 16, 16], "texture": "#0"}, - "down": {"uv": [0, 0, 16, 16], "texture": "#0"} - } - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/tfmg/models/block/formwork_block/block_side.json b/src/main/resources/assets/tfmg/models/block/formwork_block/block_side.json deleted file mode 100644 index fd17c855..00000000 --- a/src/main/resources/assets/tfmg/models/block/formwork_block/block_side.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "credit": "Made with Blockbench", - "textures": { - "0": "tfmg:block/formwork_side", - "particle": "tfmg:block/formwork_side" - }, - "elements": [ - { - "from": [0, 0, -0.1], - "to": [16, 16.001, 0.9], - "faces": { - "north": {"uv": [0, 0, 16, 16], "texture": "#0"}, - "east": {"uv": [0, 0, 1, 16], "texture": "#0"}, - "south": {"uv": [0, 0, 16, 16], "texture": "#0"}, - "west": {"uv": [0, 0, 1, 16], "texture": "#0"}, - "up": {"uv": [0, 0, 16, 1], "texture": "#0"}, - "down": {"uv": [0, 0, 16, 1], "texture": "#0"} - } - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/tfmg/models/block/formwork_block/formwork_bottom.json b/src/main/resources/assets/tfmg/models/block/formwork_block/formwork_bottom.json deleted file mode 100644 index 34fc6fdf..00000000 --- a/src/main/resources/assets/tfmg/models/block/formwork_block/formwork_bottom.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "credit": "Made with Blockbench", - "textures": { - "0": "tfmg:block/formwork_bottom", - "particle": "tfmg:block/formwork_bottom" - }, - "elements": [ - { - "from": [1, 0, 1], - "to": [15, 1, 15], - "faces": { - "north": {"uv": [0, 0, 14, 1], "texture": "#0"}, - "east": {"uv": [0, 0, 14, 1], "texture": "#0"}, - "south": {"uv": [0, 0, 14, 1], "texture": "#0"}, - "west": {"uv": [0, 0, 14, 1], "texture": "#0"}, - "up": {"uv": [1, 1, 15, 15], "texture": "#0"}, - "down": {"uv": [0, 0, 14, 14], "texture": "#0"} - } - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/tfmg/models/block/formwork_block/item.json b/src/main/resources/assets/tfmg/models/block/formwork_block/item.json deleted file mode 100644 index a3096241..00000000 --- a/src/main/resources/assets/tfmg/models/block/formwork_block/item.json +++ /dev/null @@ -1,75 +0,0 @@ -{ - "credit": "Made with Blockbench", - "parent": "minecraft:block/block", - "textures": { - "0": "tfmg:block/formwork_bottom", - "1": "tfmg:block/formwork_side", - "particle": "tfmg:block/formwork_bottom" - }, - "elements": [ - { - "from": [1, 1, 0], - "to": [16, 16, 1], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, - "faces": { - "north": {"uv": [0, 0, 15, 15], "texture": "#1"}, - "east": {"uv": [0, 0, 1, 15], "texture": "#1"}, - "south": {"uv": [0, 0, 15, 15], "texture": "#1"}, - "west": {"uv": [0, 0, 1, 15], "texture": "#1"}, - "up": {"uv": [0, 0, 15, 1], "texture": "#1"}, - "down": {"uv": [0, 0, 15, 1], "texture": "#1"} - } - }, - { - "from": [0, 1, 0], - "to": [1, 16, 15], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, - "faces": { - "north": {"uv": [0, 0, 1, 15], "texture": "#1"}, - "east": {"uv": [0, 0, 15, 15], "texture": "#1"}, - "south": {"uv": [0, 0, 1, 15], "texture": "#1"}, - "west": {"uv": [0, 0, 15, 15], "texture": "#1"}, - "up": {"uv": [0, 0, 15, 1], "rotation": 270, "texture": "#1"}, - "down": {"uv": [0, 0, 15, 1], "rotation": 90, "texture": "#1"} - } - }, - { - "from": [0, 1, 15], - "to": [15, 16, 16], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, - "faces": { - "north": {"uv": [0, 0, 15, 15], "texture": "#1"}, - "east": {"uv": [0, 0, 1, 15], "texture": "#1"}, - "south": {"uv": [0, 0, 15, 15], "texture": "#1"}, - "west": {"uv": [0, 0, 1, 15], "texture": "#1"}, - "up": {"uv": [0, 0, 15, 1], "rotation": 180, "texture": "#1"}, - "down": {"uv": [0, 0, 15, 1], "rotation": 180, "texture": "#1"} - } - }, - { - "from": [15, 1, 1], - "to": [16, 16, 16], - "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, - "faces": { - "north": {"uv": [0, 0, 1, 15], "texture": "#1"}, - "east": {"uv": [0, 0, 15, 15], "texture": "#1"}, - "south": {"uv": [0, 0, 1, 15], "texture": "#1"}, - "west": {"uv": [0, 0, 15, 15], "texture": "#1"}, - "up": {"uv": [0, 0, 15, 1], "rotation": 90, "texture": "#1"}, - "down": {"uv": [0, 0, 15, 1], "rotation": 270, "texture": "#1"} - } - }, - { - "from": [0, 0, 0], - "to": [16, 1, 16], - "faces": { - "north": {"uv": [0, 0, 16, 1], "texture": "#0"}, - "east": {"uv": [0, 0, 16, 1], "texture": "#0"}, - "south": {"uv": [0, 0, 16, 1], "texture": "#0"}, - "west": {"uv": [0, 0, 16, 1], "texture": "#0"}, - "up": {"uv": [0, 0, 16, 16], "texture": "#0"}, - "down": {"uv": [0, 0, 16, 16], "texture": "#0"} - } - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/tfmg/models/block/gas_lamp/test.json b/src/main/resources/assets/tfmg/models/block/gas_lamp/test.json deleted file mode 100644 index 1894e9ec..00000000 --- a/src/main/resources/assets/tfmg/models/block/gas_lamp/test.json +++ /dev/null @@ -1,297 +0,0 @@ -{ - "format_version": "1.21.6", - "credit": "Made with Blockbench", - "textures": { - "0": "test", - "1": "test2", - "2": "Downloads/pasted", - "particle": "test" - }, - "elements": [ - { - "from": [0, 0, 0], - "to": [16, 16, 16], - "faces": { - "north": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "east": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "south": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "west": {"uv": [0, 0, 16, 4], "texture": "#0"}, - "up": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#1"}, - "down": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#1"} - } - }, - { - "from": [0, -16, 16], - "to": [16, 0, 32], - "rotation": {"angle": 0, "axis": "y", "origin": [0, -16, 16]}, - "faces": { - "north": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "east": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "south": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "west": {"uv": [0, 0, 16, 16], "texture": "#2"}, - "up": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#1"}, - "down": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#1"} - } - }, - { - "from": [0, -16, 0], - "to": [16, 0, 16], - "rotation": {"angle": 0, "axis": "y", "origin": [0, -16, 0]}, - "faces": { - "north": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "east": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "south": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "west": {"uv": [0, 0, 16, 16], "texture": "#2"}, - "up": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#1"}, - "down": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#1"} - } - }, - { - "from": [0, 16, 16], - "to": [16, 32, 32], - "rotation": {"angle": 0, "axis": "y", "origin": [0, 16, 16]}, - "faces": { - "north": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "east": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "south": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "west": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "up": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#1"}, - "down": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#1"} - } - }, - { - "from": [0, 16, 0], - "to": [16, 32, 16], - "rotation": {"angle": 0, "axis": "y", "origin": [0, 16, 0]}, - "faces": { - "north": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "east": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "south": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "west": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "up": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#1"}, - "down": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#1"} - } - }, - { - "from": [-4, 12, 0], - "to": [0, 16, 16], - "rotation": {"angle": 0, "axis": "y", "origin": [-16, 12, 0]}, - "faces": { - "north": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "east": {"uv": [0, 0, 16, 4], "texture": "#0"}, - "south": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "west": {"uv": [0, 0, 16, 4], "texture": "#0"}, - "up": {"uv": [16, 12, 0, 16], "rotation": 270, "texture": "#1"}, - "down": {"uv": [0, 0, 4, 16], "texture": "#0"} - } - }, - { - "from": [-4, 0, 16], - "to": [0, 4, 32], - "rotation": {"angle": 0, "axis": "y", "origin": [-16, 0, 16]}, - "faces": { - "north": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "east": {"uv": [0, 0, 16, 4], "texture": "#0"}, - "south": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "west": {"uv": [0, 0, 16, 4], "texture": "#0"}, - "up": {"uv": [0, 0, 16, 4], "rotation": 270, "texture": "#1"}, - "down": {"uv": [0, 0, 16, 16], "texture": "#0"} - } - }, - { - "from": [-2, 4, 25], - "to": [2, 12, 29], - "rotation": {"angle": -45, "axis": "y", "origin": [-3, 4, 28]}, - "faces": { - "north": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "east": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "south": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "west": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "up": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "down": {"uv": [0, 0, 4, 4], "texture": "#0"} - } - }, - { - "from": [-2, 4, 19.5], - "to": [2, 12, 23.5], - "rotation": {"angle": -45, "axis": "y", "origin": [-3, 4, 22.5]}, - "faces": { - "north": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "east": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "south": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "west": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "up": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "down": {"uv": [0, 0, 4, 4], "texture": "#0"} - } - }, - { - "from": [-2, 4, 14], - "to": [2, 12, 18], - "rotation": {"angle": -45, "axis": "y", "origin": [-3, 4, 17]}, - "faces": { - "north": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "east": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "south": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "west": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "up": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "down": {"uv": [0, 0, 4, 4], "texture": "#0"} - } - }, - { - "from": [0, 0, 16], - "to": [16, 16, 32], - "rotation": {"angle": 0, "axis": "y", "origin": [0, 0, 16]}, - "faces": { - "north": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "east": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "south": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "west": {"uv": [0, 0, 16, 4], "texture": "#0"}, - "up": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#1"}, - "down": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#1"} - } - }, - { - "from": [-4, 12, 16], - "to": [0, 16, 32], - "rotation": {"angle": 0, "axis": "y", "origin": [-16, 12, 16]}, - "faces": { - "north": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "east": {"uv": [0, 0, 16, 4], "texture": "#0"}, - "south": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "west": {"uv": [0, 0, 16, 4], "texture": "#0"}, - "up": {"uv": [16, 12, 0, 16], "rotation": 270, "texture": "#1"}, - "down": {"uv": [0, 0, 4, 16], "texture": "#0"} - } - }, - { - "from": [-4, 0, 16], - "to": [0, 4, 32], - "rotation": {"angle": 0, "axis": "y", "origin": [-16, 0, 16]}, - "faces": { - "north": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "east": {"uv": [0, 0, 16, 4], "texture": "#0"}, - "south": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "west": {"uv": [0, 0, 16, 4], "texture": "#0"}, - "up": {"uv": [0, 0, 16, 4], "rotation": 270, "texture": "#1"}, - "down": {"uv": [0, 0, 16, 16], "texture": "#0"} - } - }, - { - "from": [-2, 4, 25], - "to": [2, 12, 29], - "rotation": {"angle": -45, "axis": "y", "origin": [-3, 4, 28]}, - "faces": { - "north": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "east": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "south": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "west": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "up": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "down": {"uv": [0, 0, 4, 4], "texture": "#0"} - } - }, - { - "from": [-2, 4, 19.5], - "to": [2, 12, 23.5], - "rotation": {"angle": -45, "axis": "y", "origin": [-3, 4, 22.5]}, - "faces": { - "north": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "east": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "south": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "west": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "up": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "down": {"uv": [0, 0, 4, 4], "texture": "#0"} - } - }, - { - "from": [-2, 4, 14], - "to": [2, 12, 18], - "rotation": {"angle": -45, "axis": "y", "origin": [-3, 4, 17]}, - "faces": { - "north": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "east": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "south": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "west": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "up": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "down": {"uv": [0, 0, 4, 4], "texture": "#0"} - } - }, - { - "from": [0, 0, 16], - "to": [16, 16, 32], - "rotation": {"angle": 0, "axis": "y", "origin": [0, 0, 16]}, - "faces": { - "north": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "east": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "south": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "west": {"uv": [0, 0, 16, 4], "texture": "#0"}, - "up": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#1"}, - "down": {"uv": [0, 0, 16, 16], "rotation": 270, "texture": "#1"} - } - }, - { - "from": [-4, 12, 16], - "to": [0, 16, 32], - "rotation": {"angle": 0, "axis": "y", "origin": [-16, 12, 16]}, - "faces": { - "north": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "east": {"uv": [0, 0, 16, 4], "texture": "#0"}, - "south": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "west": {"uv": [0, 0, 16, 4], "texture": "#0"}, - "up": {"uv": [16, 12, 0, 16], "rotation": 270, "texture": "#1"}, - "down": {"uv": [0, 0, 4, 16], "texture": "#0"} - } - }, - { - "from": [-4, 0, 0], - "to": [0, 4, 16], - "rotation": {"angle": 0, "axis": "y", "origin": [-16, 0, 0]}, - "faces": { - "north": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "east": {"uv": [0, 0, 16, 4], "texture": "#0"}, - "south": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "west": {"uv": [0, 0, 16, 4], "texture": "#0"}, - "up": {"uv": [0, 0, 16, 4], "rotation": 270, "texture": "#1"}, - "down": {"uv": [0, 0, 16, 16], "texture": "#0"} - } - }, - { - "from": [-2, 4, -2], - "to": [2, 12, 2], - "rotation": {"angle": -45, "axis": "y", "origin": [-3, 4, 1]}, - "faces": { - "north": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "east": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "south": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "west": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "up": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "down": {"uv": [0, 0, 4, 4], "texture": "#0"} - } - }, - { - "from": [-2, 4, 3.5], - "to": [2, 12, 7.5], - "rotation": {"angle": -45, "axis": "y", "origin": [-3, 4, 6.5]}, - "faces": { - "north": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "east": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "south": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "west": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "up": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "down": {"uv": [0, 0, 4, 4], "texture": "#0"} - } - }, - { - "from": [-2, 4, 9], - "to": [2, 12, 13], - "rotation": {"angle": -45, "axis": "y", "origin": [-3, 4, 12]}, - "faces": { - "north": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "east": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "south": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "west": {"uv": [0, 4, 5, 12], "texture": "#0"}, - "up": {"uv": [0, 0, 4, 4], "texture": "#0"}, - "down": {"uv": [0, 0, 4, 4], "texture": "#0"} - } - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/tfmg/models/block/plastic_mechanical_pump/cog.json b/src/main/resources/assets/tfmg/models/block/plastic_mechanical_pump/cog.json deleted file mode 100644 index 45411bd0..00000000 --- a/src/main/resources/assets/tfmg/models/block/plastic_mechanical_pump/cog.json +++ /dev/null @@ -1,162 +0,0 @@ -{ - "credit": "Made with Blockbench", - "parent": "block/block", - "texture_size": [32, 32], - "textures": { - "2": "tfmg:block/plastic_pump" - }, - "elements": [ - { - "from": [6.5, -1, 3], - "to": [9.5, 17, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "east": {"uv": [0, 9, 9, 14], "rotation": 270, "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "west": {"uv": [0, 9, 9, 14], "rotation": 90, "texture": "#2"}, - "up": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"} - } - }, - { - "from": [-1, 6.5, 3], - "to": [17, 9.5, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 0, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 180, "texture": "#2"}, - "east": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "texture": "#2"}, - "west": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "up": {"uv": [0, 9, 9, 14], "rotation": 180, "texture": "#2"}, - "down": {"uv": [0, 9, 9, 14], "texture": "#2"} - } - }, - { - "from": [6.5, -1, 3], - "to": [9.5, 17, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 45, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "east": {"uv": [0, 9, 9, 14], "rotation": 270, "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "west": {"uv": [0, 9, 9, 14], "rotation": 90, "texture": "#2"}, - "up": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"} - } - }, - { - "from": [-1, 6.5, 3], - "to": [17, 9.5, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 45, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 180, "texture": "#2"}, - "east": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "texture": "#2"}, - "west": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "up": {"uv": [0, 9, 9, 14], "rotation": 180, "texture": "#2"}, - "down": {"uv": [0, 9, 9, 14], "texture": "#2"} - } - }, - { - "from": [5.5, 0.9, 3.05], - "to": [10.5, 15.1, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "up": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"} - } - }, - { - "from": [0.9, 5.5, 3.05], - "to": [15.1, 10.5, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": -22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "rotation": 90, "texture": "#2"}, - "east": {"uv": [10, 9, 15, 11.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "rotation": 270, "texture": "#2"}, - "west": {"uv": [10, 9, 15, 11.5], "texture": "#2"} - } - }, - { - "from": [0.9, 5.5, 3.05], - "to": [15.1, 10.5, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "rotation": 90, "texture": "#2"}, - "east": {"uv": [10, 9, 15, 11.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "rotation": 270, "texture": "#2"}, - "west": {"uv": [10, 9, 15, 11.5], "texture": "#2"} - } - }, - { - "from": [5.5, 0.9, 3.05], - "to": [10.5, 15.1, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": -22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "up": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"} - } - } - ], - "display": { - "thirdperson_righthand": { - "rotation": [75, -149, 0], - "translation": [0, 2.5, 0], - "scale": [0.375, 0.375, 0.375] - }, - "thirdperson_lefthand": { - "rotation": [75, -149, 0], - "translation": [0, 2.5, 0], - "scale": [0.375, 0.375, 0.375] - }, - "firstperson_righthand": { - "rotation": [0, -55, 0], - "scale": [0.4, 0.4, 0.4] - }, - "firstperson_lefthand": { - "rotation": [0, -55, 0], - "scale": [0.4, 0.4, 0.4] - }, - "ground": { - "translation": [0, 1, 1.25], - "scale": [0.25, 0.25, 0.25] - }, - "gui": { - "rotation": [30, 45, 0], - "translation": [2.5, -0.5, 0], - "scale": [0.625, 0.625, 0.625] - }, - "fixed": { - "rotation": [0, 180, 0], - "translation": [0, 1.75, -4.5], - "scale": [0.5, 0.5, 0.5] - } - }, - "groups": [ - { - "name": "cogwheel", - "origin": [8, 8, 8], - "color": 0, - "children": [0, 1, 2, 3] - }, - { - "name": "group", - "origin": [8, 8, 8], - "color": 0, - "children": [4, 5, 6, 7] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/tfmg/models/block/steel_mechanical_pump/cog.json b/src/main/resources/assets/tfmg/models/block/steel_mechanical_pump/cog.json deleted file mode 100644 index 4c2e8b52..00000000 --- a/src/main/resources/assets/tfmg/models/block/steel_mechanical_pump/cog.json +++ /dev/null @@ -1,162 +0,0 @@ -{ - "credit": "Made with Blockbench", - "parent": "block/block", - "texture_size": [32, 32], - "textures": { - "2": "tfmg:block/steel_pump" - }, - "elements": [ - { - "from": [6.5, -1, 3], - "to": [9.5, 17, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "east": {"uv": [0, 9, 9, 14], "rotation": 270, "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "west": {"uv": [0, 9, 9, 14], "rotation": 90, "texture": "#2"}, - "up": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"} - } - }, - { - "from": [-1, 6.5, 3], - "to": [17, 9.5, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 0, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 180, "texture": "#2"}, - "east": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "texture": "#2"}, - "west": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "up": {"uv": [0, 9, 9, 14], "rotation": 180, "texture": "#2"}, - "down": {"uv": [0, 9, 9, 14], "texture": "#2"} - } - }, - { - "from": [6.5, -1, 3], - "to": [9.5, 17, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 45, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "east": {"uv": [0, 9, 9, 14], "rotation": 270, "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "rotation": 90, "texture": "#2"}, - "west": {"uv": [0, 9, 9, 14], "rotation": 90, "texture": "#2"}, - "up": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 6.5, 15, 8], "rotation": 90, "texture": "#2"} - } - }, - { - "from": [-1, 6.5, 3], - "to": [17, 9.5, 13], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 45, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [0, 6.5, 9, 8], "rotation": 180, "texture": "#2"}, - "east": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "south": {"uv": [0, 6.5, 9, 8], "texture": "#2"}, - "west": {"uv": [10, 6.5, 15, 8], "texture": "#2"}, - "up": {"uv": [0, 9, 9, 14], "rotation": 180, "texture": "#2"}, - "down": {"uv": [0, 9, 9, 14], "texture": "#2"} - } - }, - { - "from": [5.5, 0.9, 3.05], - "to": [10.5, 15.1, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "up": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"} - } - }, - { - "from": [0.9, 5.5, 3.05], - "to": [15.1, 10.5, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": -22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "rotation": 90, "texture": "#2"}, - "east": {"uv": [10, 9, 15, 11.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "rotation": 270, "texture": "#2"}, - "west": {"uv": [10, 9, 15, 11.5], "texture": "#2"} - } - }, - { - "from": [0.9, 5.5, 3.05], - "to": [15.1, 10.5, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": 22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "rotation": 90, "texture": "#2"}, - "east": {"uv": [10, 9, 15, 11.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "rotation": 270, "texture": "#2"}, - "west": {"uv": [10, 9, 15, 11.5], "texture": "#2"} - } - }, - { - "from": [5.5, 0.9, 3.05], - "to": [10.5, 15.1, 12.95], - "forge_data": {"calculate_normals": true}, - "rotation": {"angle": -22.5, "axis": "z", "origin": [8, 8, 8]}, - "faces": { - "north": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "south": {"uv": [1, 7, 1.5, 7.5], "texture": "#2"}, - "up": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"}, - "down": {"uv": [10, 9, 15, 11.5], "rotation": 90, "texture": "#2"} - } - } - ], - "display": { - "thirdperson_righthand": { - "rotation": [75, -149, 0], - "translation": [0, 2.5, 0], - "scale": [0.375, 0.375, 0.375] - }, - "thirdperson_lefthand": { - "rotation": [75, -149, 0], - "translation": [0, 2.5, 0], - "scale": [0.375, 0.375, 0.375] - }, - "firstperson_righthand": { - "rotation": [0, -55, 0], - "scale": [0.4, 0.4, 0.4] - }, - "firstperson_lefthand": { - "rotation": [0, -55, 0], - "scale": [0.4, 0.4, 0.4] - }, - "ground": { - "translation": [0, 1, 1.25], - "scale": [0.25, 0.25, 0.25] - }, - "gui": { - "rotation": [30, 45, 0], - "translation": [2.5, -0.5, 0], - "scale": [0.625, 0.625, 0.625] - }, - "fixed": { - "rotation": [0, 180, 0], - "translation": [0, 1.75, -4.5], - "scale": [0.5, 0.5, 0.5] - } - }, - "groups": [ - { - "name": "cogwheel", - "origin": [8, 8, 8], - "color": 0, - "children": [0, 1, 2, 3] - }, - { - "name": "group", - "origin": [8, 8, 8], - "color": 0, - "children": [4, 5, 6, 7] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/tfmg/models/block/welding_machine/block.json b/src/main/resources/assets/tfmg/models/block/welding_machine/block.json deleted file mode 100644 index 60157296..00000000 --- a/src/main/resources/assets/tfmg/models/block/welding_machine/block.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "credit": "Made with Blockbench", - "parent": "minecraft:block/block", - "textures": { - "0": "tfmg:block/engines/turbine", - "particle": "block/anvil" - }, - "elements": [ - { - "from": [1, 4, 5], - "to": [15, 10, 16], - "faces": { - "north": {"uv": [2.125, 8.875, 3.875, 9.625], "texture": "#0"}, - "east": {"uv": [1.5, 6.375, 2.875, 7.125], "texture": "#0"}, - "south": {"uv": [2.125, 8.125, 3.875, 8.875], "texture": "#0"}, - "west": {"uv": [1.125, 7.125, 2.5, 6.375], "rotation": 180, "texture": "#0"}, - "up": {"uv": [8.5, 5.875, 9.725, 7.625], "rotation": 90, "texture": "#0"}, - "down": {"uv": [0, 0, 14, 11], "texture": "#0"} - } - }, - { - "from": [0, 0, 2], - "to": [16, 4, 16], - "faces": { - "north": {"uv": [0.25, 1, 2.25, 1.5], "texture": "#0"}, - "east": {"uv": [4.5, 1, 2.75, 1.475], "texture": "#0"}, - "south": {"uv": [5, 1, 7, 1.5], "texture": "#0"}, - "west": {"uv": [2.75, 1, 4.5, 1.5], "texture": "#0"}, - "up": {"uv": [5.75, 4.5, 7.75, 6.25], "texture": "#0"}, - "down": {"uv": [5.125, 5.5, 7.125, 3.75], "texture": "#0"} - } - }, - { - "from": [3, 4, 2], - "to": [13, 13, 16], - "faces": { - "north": {"uv": [0.625, 0, 1.875, 1.125], "texture": "#0"}, - "east": {"uv": [0.5, 11, 1.625, 9.25], "rotation": 90, "texture": "#0"}, - "south": {"uv": [5.375, 0, 6.625, 1.125], "texture": "#0"}, - "west": {"uv": [0.5, 9.25, 1.625, 11], "rotation": 90, "texture": "#0"}, - "up": {"uv": [0.625, 1.75, 1.875, 3.5], "texture": "#0"}, - "down": {"uv": [0, 0, 10, 14], "texture": "#0"} - } - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/tfmg/models/block/welding_machine/item.json b/src/main/resources/assets/tfmg/models/block/welding_machine/item.json deleted file mode 100644 index e69de29b..00000000 diff --git a/src/main/resources/assets/tfmg/textures/block/gas_lamp_fire.png.mcmeta b/src/main/resources/assets/tfmg/textures/block/gas_lamp_fire.png.mcmeta index 76446714..8e97310e 100644 --- a/src/main/resources/assets/tfmg/textures/block/gas_lamp_fire.png.mcmeta +++ b/src/main/resources/assets/tfmg/textures/block/gas_lamp_fire.png.mcmeta @@ -1,22 +1,6 @@ { "animation": { "frames": [ - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, 0, 1, 2, @@ -24,15 +8,7 @@ 4, 5, 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15 + 7 ] } } diff --git a/src/main/resources/assets/tfmg/textures/item/copper_spool.png b/src/main/resources/assets/tfmg/textures/item/copper_spool.png index 54b8c4e1..1dd8154a 100644 Binary files a/src/main/resources/assets/tfmg/textures/item/copper_spool.png and b/src/main/resources/assets/tfmg/textures/item/copper_spool.png differ diff --git a/src/generated/resources/data/tfmg/recipe/crafting/materials/aluminum_spool.json b/src/main/resources/data/tfmg/recipe/aluminum_spool.json similarity index 74% rename from src/generated/resources/data/tfmg/recipe/crafting/materials/aluminum_spool.json rename to src/main/resources/data/tfmg/recipe/aluminum_spool.json index 7f68be80..ca8c6564 100644 --- a/src/generated/resources/data/tfmg/recipe/crafting/materials/aluminum_spool.json +++ b/src/main/resources/data/tfmg/recipe/aluminum_spool.json @@ -16,6 +16,9 @@ ], "result": { "count": 1, - "id": "tfmg:aluminum_spool" + "id": "tfmg:aluminum_spool", + "components": { + "tfmg:spool_amount": 1000 + } } } \ No newline at end of file diff --git a/src/generated/resources/data/tfmg/recipe/crafting/materials/constantan_spool.json b/src/main/resources/data/tfmg/recipe/constantan_spool.json similarity index 74% rename from src/generated/resources/data/tfmg/recipe/crafting/materials/constantan_spool.json rename to src/main/resources/data/tfmg/recipe/constantan_spool.json index 43d6bc4e..53e446f8 100644 --- a/src/generated/resources/data/tfmg/recipe/crafting/materials/constantan_spool.json +++ b/src/main/resources/data/tfmg/recipe/constantan_spool.json @@ -16,6 +16,9 @@ ], "result": { "count": 1, - "id": "tfmg:constantan_spool" + "id": "tfmg:constantan_spool", + "components": { + "tfmg:spool_amount": 1000 + } } } \ No newline at end of file diff --git a/src/generated/resources/data/tfmg/recipe/crafting/materials/copper_spool.json b/src/main/resources/data/tfmg/recipe/copper_spool.json similarity index 74% rename from src/generated/resources/data/tfmg/recipe/crafting/materials/copper_spool.json rename to src/main/resources/data/tfmg/recipe/copper_spool.json index f5ec0dc5..5c45ecf7 100644 --- a/src/generated/resources/data/tfmg/recipe/crafting/materials/copper_spool.json +++ b/src/main/resources/data/tfmg/recipe/copper_spool.json @@ -16,6 +16,9 @@ ], "result": { "count": 1, - "id": "tfmg:copper_spool" + "id": "tfmg:copper_spool", + "components": { + "tfmg:spool_amount": 1000 + } } } \ No newline at end of file