Recipe Changes/Additions

- Moved the Coated Circuit Board recipe from Item Application to Deploying.
(You can't Item Apply onto an Item)
- Made TFMGCompactingRecipeGen extend TFMGProcessingRecipeGen instead of TFMGPressingRecipeGen.
- All pipes now properly show in JEI and Creative.
- Added group tags for some items that didn't have them.
- Added Crushed Raw Lithium & Lithium crushing recipes.
This commit is contained in:
PouffyDev
2025-07-09 16:08:04 +01:00
parent ae5b71c8ef
commit d5d66c900d
30 changed files with 248 additions and 119 deletions

View File

@@ -1,5 +1,8 @@
package com.drmangotea.tfmg.content.decoration.pipes;
import com.drmangotea.tfmg.TFMG;
import com.drmangotea.tfmg.base.TFMGCreativeTabs;
import com.drmangotea.tfmg.base.TFMGRegistrate;
import com.drmangotea.tfmg.config.TFMGStress;
import com.simibubi.create.AllBlocks;
import com.simibubi.create.AllSpriteShifts;
@@ -36,6 +39,7 @@ public class TFMGPipes {
public static final Map<PipeMaterial, List<BlockEntry<? extends Block>>> TFMG_PIPES = new HashMap<>();
public static final TFMGRegistrate registrate = (TFMGRegistrate) REGISTRATE.setCreativeTab(TFMGCreativeTabs.TFMG_DECORATION);
/*
0: pipe
@@ -54,7 +58,7 @@ public class TFMGPipes {
List<BlockEntry<? extends Block>> pipes = new ArrayList<>();
BlockEntry<TFMGPipeBlock> pipe =
REGISTRATE.block(pipeType.name + "_pipe", p -> new TFMGPipeBlock(p, pipeType))
registrate.block(pipeType.name + "_pipe", p -> new TFMGPipeBlock(p, pipeType))
.initialProperties(SharedProperties::copperMetal)
.transform(pickaxeOnly())
.blockstate(BlockStateGen.pipe())
@@ -73,7 +77,7 @@ public class TFMGPipes {
pipes.add(pipe);
BlockEntry<TFMGEncasedPipeBlock> copper_encased_pipe =
REGISTRATE.block("copper_encased_" + pipeType.name + "_pipe", p -> new TFMGEncasedPipeBlock(p, AllBlocks.COPPER_CASING::get, pipeType))
registrate.block("copper_encased_" + pipeType.name + "_pipe", p -> new TFMGEncasedPipeBlock(p, AllBlocks.COPPER_CASING::get, pipeType))
.initialProperties(SharedProperties::copperMetal)
.properties(p -> p.noOcclusion().mapColor(MapColor.TERRACOTTA_LIGHT_GRAY))
.transform(axeOrPickaxe())
@@ -98,7 +102,7 @@ public class TFMGPipes {
//if(true)
// break;
BlockEntry<TFMGGlassPipeBlock> glass_pipe =
REGISTRATE.block("glass_" + pipeType.name + "_pipe", p -> new TFMGGlassPipeBlock(p, pipeType))
registrate.block("glass_" + pipeType.name + "_pipe", p -> new TFMGGlassPipeBlock(p, pipeType))
.initialProperties(SharedProperties::copperMetal)
.addLayer(() -> RenderType::cutoutMipped)
.transform(pickaxeOnly())
@@ -130,7 +134,7 @@ public class TFMGPipes {
pipes.add(glass_pipe);
BlockEntry<TFMGPumpBlock> fluid_pump =
REGISTRATE.block(pipeType.name + "_mechanical_pump", TFMGPumpBlock::new)
registrate.block(pipeType.name + "_mechanical_pump", TFMGPumpBlock::new)
.initialProperties(SharedProperties::copperMetal)
.transform(pickaxeOnly())
.blockstate(BlockStateGen.directionalBlockProviderIgnoresWaterlogged(true))
@@ -151,7 +155,7 @@ public class TFMGPipes {
pipes.add(fluid_pump);
BlockEntry<TFMGSmartFluidPipeBlock> smart_pipe =
REGISTRATE.block(pipeType.name + "_smart_fluid_pipe", TFMGSmartFluidPipeBlock::new)
registrate.block(pipeType.name + "_smart_fluid_pipe", TFMGSmartFluidPipeBlock::new)
.initialProperties(SharedProperties::copperMetal)
.transform(pickaxeOnly())
.blockstate(new SmartFluidPipeGenerator()::generate)
@@ -171,7 +175,7 @@ public class TFMGPipes {
pipes.add(smart_pipe);
BlockEntry<TFMGFluidValveBlock> fluid_valve =
REGISTRATE.block(pipeType.name + "_fluid_valve", TFMGFluidValveBlock::new)
registrate.block(pipeType.name + "_fluid_valve", TFMGFluidValveBlock::new)
.initialProperties(SharedProperties::copperMetal)
.transform(pickaxeOnly())
.blockstate((c, p) -> BlockStateGen.directionalAxisBlock(c, p,

View File

@@ -29,7 +29,6 @@ public abstract class TFMGProcessingRecipeGen extends TFMGRecipeProvider {
public static void registerAll(DataGenerator gen, PackOutput output) {
GENERATORS.add(new TFMGPressingRecipeGen(output));
GENERATORS.add(new CokingRecipeGen(output));
GENERATORS.add(new DistillationRecipeGen(output));
GENERATORS.add(new WindingRecipeGen(output));
@@ -39,7 +38,9 @@ public abstract class TFMGProcessingRecipeGen extends TFMGRecipeProvider {
GENERATORS.add(new TFMGFillingRecipeGen(output));
GENERATORS.add(new TFMGMixingRecipeGen(output));
GENERATORS.add(new TFMGCompactingRecipeGen(output));
GENERATORS.add(new TFMGPressingRecipeGen(output));
GENERATORS.add(new TFMGCrushingRecipeGen(output));
GENERATORS.add(new TFMGDeployingRecipeGen(output));
gen.addProvider(true, new DataProvider() {

View File

@@ -1,14 +1,14 @@
package com.drmangotea.tfmg.datagen.recipes.values.create;
import com.drmangotea.tfmg.datagen.recipes.TFMGProcessingRecipeGen;
import com.drmangotea.tfmg.registry.TFMGItems;
import com.simibubi.create.AllRecipeTypes;
import com.simibubi.create.content.processing.recipe.HeatCondition;
import net.minecraft.data.PackOutput;
import net.minecraft.world.item.Items;
import static com.drmangotea.tfmg.datagen.recipes.TFMGRecipeProvider.F.*;
import static com.drmangotea.tfmg.datagen.recipes.TFMGRecipeProvider.I.*;
public class TFMGCompactingRecipeGen extends TFMGPressingRecipeGen {
public class TFMGCompactingRecipeGen extends TFMGProcessingRecipeGen {
GeneratedRecipe
BITUMEN = create("bitumen", b -> b

View File

@@ -1,13 +1,16 @@
package com.drmangotea.tfmg.datagen.recipes.values.create;
import com.drmangotea.tfmg.TFMG;
import com.drmangotea.tfmg.datagen.recipes.TFMGProcessingRecipeGen;
import com.drmangotea.tfmg.registry.TFMGBlocks;
import com.drmangotea.tfmg.registry.TFMGItems;
import com.drmangotea.tfmg.registry.TFMGPaletteStoneTypes;
import com.simibubi.create.AllRecipeTypes;
import net.minecraft.data.PackOutput;
import net.minecraft.world.item.Items;
import static com.drmangotea.tfmg.datagen.recipes.TFMGRecipeProvider.I.*;
import static com.drmangotea.tfmg.registry.TFMGTags.forgeItemTag;
public class TFMGCrushingRecipeGen extends TFMGProcessingRecipeGen {
@@ -46,7 +49,30 @@ public class TFMGCrushingRecipeGen extends TFMGProcessingRecipeGen {
SULFUR = create(() -> TFMGBlocks.SULFUR, b -> b
.output(.2f, sulfurDust(), 1)
.output(.1f, sulfurDust(), 1)
);
),
LITHIUM_ORE = create(() -> TFMGBlocks.LITHIUM_ORE, b -> b
.output(TFMGItems.CRUSHED_LITHIUM, 1)
.output(.25f, TFMGItems.CRUSHED_LITHIUM, 1)
.output(.75f, I.experienceNugget(), 1)
.output(.12f, Items.COBBLESTONE, 1)
),
DEEPSLATE_LITHIUM_ORE = create(() -> TFMGBlocks.DEEPSLATE_LITHIUM_ORE, b -> b
.output(TFMGItems.CRUSHED_LITHIUM, 2)
.output(.25f, TFMGItems.CRUSHED_LITHIUM, 1)
.output(.75f, I.experienceNugget(), 1)
.output(.12f, Items.COBBLED_DEEPSLATE, 1)
),
RAW_LITHIUM = create(() -> TFMGItems.RAW_LITHIUM, b -> b
.output(TFMGItems.CRUSHED_LITHIUM, 1)
.output(.75f, I.experienceNugget(), 1)
),
RAW_LITHIUM_BLOCK = create(() -> TFMGBlocks.RAW_LITHIUM_BLOCK, b -> b
.output(TFMGItems.CRUSHED_LITHIUM, 9)
.output(.75f, I.experienceNugget(), 9)
)
;
public TFMGCrushingRecipeGen(PackOutput output) {
super(output);

View File

@@ -0,0 +1,29 @@
package com.drmangotea.tfmg.datagen.recipes.values.create;
import com.drmangotea.tfmg.datagen.recipes.TFMGProcessingRecipeGen;
import com.drmangotea.tfmg.registry.TFMGItems;
import com.simibubi.create.AllRecipeTypes;
import com.simibubi.create.foundation.recipe.IRecipeTypeInfo;
import net.minecraft.data.PackOutput;
import static com.drmangotea.tfmg.datagen.recipes.TFMGRecipeProvider.I.goldSheet;
public class TFMGDeployingRecipeGen extends TFMGProcessingRecipeGen {
GeneratedRecipe
COATED_CIRCUIT_BOARD = create("coated_circuit_board", b -> b
.require(TFMGItems.EMPTY_CIRCUIT_BOARD)
.require(goldSheet())
.output(TFMGItems.COATED_CIRCUIT_BOARD))
;
public TFMGDeployingRecipeGen(PackOutput generator) {
super(generator);
}
@Override
protected IRecipeTypeInfo getRecipeType() {
return AllRecipeTypes.DEPLOYING;
}
}

View File

@@ -19,14 +19,6 @@ public class TFMGItemApplicationRecipeGen extends TFMGProcessingRecipeGen {
GeneratedRecipe HEAVY_CASING = casing("heavy_machinery", () -> Ingredient.of(steelSheet()), TFMGBlocks.HEAVY_MACHINERY_CASING::get, TFMGBlocks.STEEL_CASING::get);
GeneratedRecipe ALUMINUM = casing("aluminum", () -> Ingredient.of(aluminumSheet()), TFMGBlocks.ALUMINUM_CASING::get, TFMGBlocks.STEEL_CASING::get);
GeneratedRecipe
COATED_CIRCUIT_BOARD = create("coated_circuit_board", b -> b
.require(TFMGItems.EMPTY_CIRCUIT_BOARD)
.require(goldSheet())
.output(TFMGItems.COATED_CIRCUIT_BOARD)
);
protected TFMGRecipeProvider.GeneratedRecipe casing(String type, Supplier<Ingredient> ingredient,
Supplier<ItemLike> output, Supplier<ItemLike> block) {
return create(type + "_casing", b -> b.require(block.get())

View File

@@ -10,7 +10,7 @@ public class TFMGPressingRecipeGen extends TFMGProcessingRecipeGen {
GeneratedRecipe
CAST_IRON_SHEET = create("cast_iron_ingot", b -> b.require(castIronIngot())
CAST_IRON_SHEET = create("cast_iron_ingot", b -> b.require(castIronIngot())
.output(castIronSheetTFMG()).duration(50)),
ALUMINUM_SHEET = create("aluminum_ingot", b -> b.require(aluminumIngot())

View File

@@ -66,30 +66,32 @@ public class TFMGItems {
CAST_IRON_INGOT = taggedIngredient("cast_iron_ingot", forgeItemTag("ingots/cast_iron"), CREATE_INGOTS.tag),
ALUMINUM_INGOT = taggedIngredient("aluminum_ingot", forgeItemTag("ingots/aluminum"), CREATE_INGOTS.tag),
PLASTIC_SHEET = taggedIngredient("plastic_sheet", forgeItemTag("ingots/plastic"), CREATE_INGOTS.tag),
HEAVY_PLATE = taggedIngredient("heavy_plate", forgeItemTag("plates/steel")),
ALUMINUM_SHEET = taggedIngredient("aluminum_sheet", forgeItemTag("plates/aluminum")),
NICKEL_SHEET = taggedIngredient("nickel_sheet", forgeItemTag("plates/nickel")),
CAST_IRON_SHEET = taggedIngredient("cast_iron_sheet", forgeItemTag("plates/cast_iron")),
LEAD_SHEET = taggedIngredient("lead_sheet", forgeItemTag("plates/lead")),
HEAVY_PLATE = taggedIngredient("heavy_plate", forgeItemTag("plates/steel"), forgeItemTag("plates")),
ALUMINUM_SHEET = taggedIngredient("aluminum_sheet", forgeItemTag("plates/aluminum"), forgeItemTag("plates")),
NICKEL_SHEET = taggedIngredient("nickel_sheet", forgeItemTag("plates/nickel"), forgeItemTag("plates")),
CAST_IRON_SHEET = taggedIngredient("cast_iron_sheet", forgeItemTag("plates/cast_iron"), forgeItemTag("plates")),
LEAD_SHEET = taggedIngredient("lead_sheet", forgeItemTag("plates/lead"), forgeItemTag("plates")),
LEAD_INGOT = taggedIngredient("lead_ingot", forgeItemTag("ingots/lead"), CREATE_INGOTS.tag),
NICKEL_INGOT = taggedIngredient("nickel_ingot", forgeItemTag("ingots/nickel"), CREATE_INGOTS.tag),
CONSTANTAN_INGOT = taggedIngredient("constantan_ingot", forgeItemTag("ingots/constantan"), CREATE_INGOTS.tag),
LITHIUM_INGOT = taggedIngredient("lithium_ingot", forgeItemTag("ingots/lithium"), CREATE_INGOTS.tag),
ALUMINUM_NUGGET = taggedIngredient("aluminum_nugget", forgeItemTag("nuggets/aluminum")),
STEEL_NUGGET = taggedIngredient("steel_nugget", forgeItemTag("nuggets/steel")),
CAST_IRON_NUGGET = taggedIngredient("cast_iron_nugget", forgeItemTag("nuggets/cast_iron")),
CONSTANTAN_NUGGET = taggedIngredient("constantan_nugget", forgeItemTag("nuggets/constantan")),
LEAD_NUGGET = taggedIngredient("lead_nugget", forgeItemTag("nuggets/lead")),
NICKEL_NUGGET = taggedIngredient("nickel_nugget", forgeItemTag("nuggets/nickel")),
LITHIUM_NUGGET = taggedIngredient("lithium_nugget", forgeItemTag("nuggets/lithium")),
ALUMINUM_NUGGET = taggedIngredient("aluminum_nugget", forgeItemTag("nuggets/aluminum"), forgeItemTag("nuggets")),
STEEL_NUGGET = taggedIngredient("steel_nugget", forgeItemTag("nuggets/steel"), forgeItemTag("nuggets")),
CAST_IRON_NUGGET = taggedIngredient("cast_iron_nugget", forgeItemTag("nuggets/cast_iron"), forgeItemTag("nuggets")),
CONSTANTAN_NUGGET = taggedIngredient("constantan_nugget", forgeItemTag("nuggets/constantan"), forgeItemTag("nuggets")),
LEAD_NUGGET = taggedIngredient("lead_nugget", forgeItemTag("nuggets/lead"), forgeItemTag("nuggets")),
NICKEL_NUGGET = taggedIngredient("nickel_nugget", forgeItemTag("nuggets/nickel"), forgeItemTag("nuggets")),
LITHIUM_NUGGET = taggedIngredient("lithium_nugget", forgeItemTag("nuggets/lithium"), forgeItemTag("nuggets")),
RAW_LEAD = taggedIngredient("raw_lead", forgeItemTag("raw_materials/lead"), forgeItemTag("raw_materials")),
RAW_NICKEL = taggedIngredient("raw_nickel", forgeItemTag("raw_materials/nickel"), forgeItemTag("raw_materials")),
RAW_LITHIUM = taggedIngredient("raw_lithium", forgeItemTag("raw_materials/lithium"), forgeItemTag("raw_materials")),
SYNTHETIC_LEATHER = taggedIngredient("synthetic_leather", Tags.Items.LEATHER, AllTags.forgeItemTag("leather")),
LIMESAND = taggedIngredient("limesand", TFMGTags.TFMGItemTags.FLUX.tag),
SULFUR_DUST = taggedIngredient("sulfur_dust", forgeItemTag("dusts/sulfur")),
RUBBER_SHEET = taggedIngredient("rubber_sheet", forgeItemTag("ingots/rubber")),
SILICON_INGOT = taggedIngredient("silicon_ingot", forgeItemTag("ingots/silicon"));
SULFUR_DUST = taggedIngredient("sulfur_dust", forgeItemTag("dusts/sulfur"), forgeItemTag("dusts")),
RUBBER_SHEET = taggedIngredient("rubber_sheet", forgeItemTag("ingots/rubber"), forgeItemTag("ingots")),
SILICON_INGOT = taggedIngredient("silicon_ingot", forgeItemTag("ingots/silicon"), forgeItemTag("ingots")),
CRUSHED_LITHIUM = taggedIngredient("crushed_raw_lithium", AllTags.AllItemTags.CRUSHED_RAW_MATERIALS.tag)
;
public static final ItemEntry<Item>
@@ -102,11 +104,11 @@ public class TFMGItems {
.register();
public static final ItemEntry<Item>
COPPER_WIRE = REGISTRATE.item("copper_wire", Item::new).tag(AllTags.forgeItemTag("wires/copper"))
COPPER_WIRE = REGISTRATE.item("copper_wire", Item::new).tag(AllTags.forgeItemTag("wires/copper"), forgeItemTag("wires"))
.recipe((c, p) -> p.stonecutting(DataIngredient.tag(AllTags.forgeItemTag("ingots/copper")), RecipeCategory.BUILDING_BLOCKS, c::get, 2)).register(),
ALUMINUM_WIRE = REGISTRATE.item("aluminum_wire", Item::new).tag(AllTags.forgeItemTag("wires/aluminum"))
ALUMINUM_WIRE = REGISTRATE.item("aluminum_wire", Item::new).tag(AllTags.forgeItemTag("wires/aluminum"), forgeItemTag("wires"))
.recipe((c, p) -> p.stonecutting(DataIngredient.tag(AllTags.forgeItemTag("ingots/aluminum")), RecipeCategory.BUILDING_BLOCKS, c::get, 2)).register(),
CONSTANTAN_WIRE = REGISTRATE.item("constantan_wire", Item::new).tag(AllTags.forgeItemTag("wires/constantan"))
CONSTANTAN_WIRE = REGISTRATE.item("constantan_wire", Item::new).tag(AllTags.forgeItemTag("wires/constantan"), forgeItemTag("wires"))
.recipe((c, p) -> p.stonecutting(DataIngredient.tag(AllTags.forgeItemTag("ingots/constantan")), RecipeCategory.BUILDING_BLOCKS, c::get, 2)).register();
public static final ItemEntry<Item>
@@ -209,7 +211,7 @@ public class TFMGItems {
// .properties(p -> p.stacksTo(1))
// .register();
public static final ItemEntry<CoalCokeItem> COAL_COKE_DUST = REGISTRATE.item("coal_coke_dust", CoalCokeItem::new)
.tag(forgeItemTag("dusts/coal_coke"), TFMGTags.TFMGItemTags.BLAST_FURNACE_FUEL.tag)
.tag(forgeItemTag("dusts/coal_coke"), TFMGTags.TFMGItemTags.BLAST_FURNACE_FUEL.tag, forgeItemTag("dusts"))
.register();
public static final ItemEntry<OilHammerItem> OIL_HAMMER = REGISTRATE.item("oil_hammer", OilHammerItem::new)

Binary file not shown.

After

Width:  |  Height:  |  Size: 243 B