Skip to content

Commit 56a0527

Browse files
authored
Fix conflict ImplosionRecipe (#364)
1 parent fa8daf5 commit 56a0527

4 files changed

Lines changed: 24 additions & 85 deletions

File tree

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
# 2.7.7
2+
- Drop BQu Mixin [#363](https://github.com/GTModpackTeam/GTExpert-Core/pull/363)
3+
- Fix conflict ImplosionRecipe [#364](https://github.com/GTModpackTeam/GTExpert-Core/pull/364)
4+
5+
* * *
6+
17
# 2.7.6
28
- Make MetaItem, MetaTileEntity, and Material IDs configurable via cfg
39
- Each category uses a configurable start ID; individual IDs are calculated as offsets

src/main/java/com/github/gtexpert/core/integration/deda/recipes/DraconicMaterialsRecipe.java

Lines changed: 8 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,20 @@
99
import com.brandon3055.draconicevolution.DEFeatures;
1010

1111
import gregtech.api.metatileentity.multiblock.CleanroomType;
12+
import gregtech.api.recipes.GTRecipeHandler;
1213
import gregtech.api.recipes.ModHandler;
1314
import gregtech.api.recipes.RecipeBuilder;
1415
import gregtech.api.recipes.RecipeMaps;
1516
import gregtech.api.unification.OreDictUnifier;
1617
import gregtech.api.unification.material.Materials;
1718
import gregtech.common.ConfigHolder;
18-
import gregtech.common.blocks.MetaBlocks;
19-
import gregtech.common.items.MetaItems;
2019

2120
import gregicality.multiblocks.api.fluids.GCYMFluidStorageKeys;
2221

2322
import com.github.gtexpert.core.api.GTEValues;
2423
import com.github.gtexpert.core.api.unification.material.GTEMaterials;
2524
import com.github.gtexpert.core.api.util.Mods;
25+
import com.github.gtexpert.core.loaders.recipe.handlers.GTEImplosionRecipeHandler;
2626

2727
public class DraconicMaterialsRecipe {
2828

@@ -45,6 +45,8 @@ public static void init() {
4545
}
4646
builderDD.buildAndRegister();
4747

48+
GTRecipeHandler.removeRecipesByInputs(RecipeMaps.MACERATOR_RECIPES,
49+
new ItemStack(Blocks.DRAGON_EGG));
4850
RecipeMaps.MACERATOR_RECIPES.recipeBuilder()
4951
.input(Blocks.DRAGON_EGG)
5052
.output(dust, GTEMaterials.Dragon, 8)
@@ -60,6 +62,8 @@ public static void init() {
6062
.output(dust, GTEMaterials.Chaos, 2)
6163
.duration(1200).EUt(VA[GTEValues.dedaVoltageTier + 1])
6264
.buildAndRegister();
65+
GTRecipeHandler.removeRecipesByInputs(RecipeMaps.MACERATOR_RECIPES,
66+
new ItemStack(DEFeatures.chaosShard, 1, 1));
6367
RecipeMaps.MACERATOR_RECIPES.recipeBuilder()
6468
.inputs(new ItemStack(DEFeatures.chaosShard, 1, 1))
6569
.output(dust, GTEMaterials.Chaos, 1)
@@ -103,34 +107,10 @@ public static void init() {
103107
ModHandler.addMirroredShapedRecipe("ceu_draconic_block",
104108
OreDictUnifier.get(block, GTEMaterials.AwakenedDraconium), "B",
105109
'B', new ItemStack(DEFeatures.draconicBlock));
106-
RecipeMaps.IMPLOSION_RECIPES.recipeBuilder()
110+
GTEImplosionRecipeHandler.register(builder -> builder
107111
.input(DEFeatures.dragonHeart, 1)
108112
.input(block, GTEMaterials.Draconium, 4)
109-
.output(block, GTEMaterials.AwakenedDraconium, 3)
110-
.chancedOutput(dust, Materials.DarkAsh, 2500, 0)
111-
.explosivesType(new ItemStack(MetaBlocks.POWDERBARREL, 8))
112-
.buildAndRegister();
113-
RecipeMaps.IMPLOSION_RECIPES.recipeBuilder()
114-
.input(DEFeatures.dragonHeart, 1)
115-
.input(block, GTEMaterials.Draconium, 4)
116-
.output(block, GTEMaterials.AwakenedDraconium, 3)
117-
.chancedOutput(dust, Materials.DarkAsh, 2500, 0)
118-
.explosivesAmount(4)
119-
.buildAndRegister();
120-
RecipeMaps.IMPLOSION_RECIPES.recipeBuilder()
121-
.input(DEFeatures.dragonHeart, 1)
122-
.input(block, GTEMaterials.Draconium, 4)
123-
.output(block, GTEMaterials.AwakenedDraconium, 3)
124-
.chancedOutput(dust, Materials.DarkAsh, 2500, 0)
125-
.explosivesType(MetaItems.DYNAMITE.getStackForm(2))
126-
.buildAndRegister();
127-
RecipeMaps.IMPLOSION_RECIPES.recipeBuilder()
128-
.input(DEFeatures.dragonHeart, 1)
129-
.input(block, GTEMaterials.Draconium, 4)
130-
.output(block, GTEMaterials.AwakenedDraconium, 3)
131-
.chancedOutput(dust, Materials.DarkAsh, 2500, 0)
132-
.explosivesType(new ItemStack(MetaBlocks.ITNT))
133-
.buildAndRegister();
113+
.output(block, GTEMaterials.AwakenedDraconium, 3));
134114
}
135115

136116
public static void remove() {

src/main/java/com/github/gtexpert/core/loaders/recipe/handlers/GTEImplosionNoBombRecipeHandler.java

Lines changed: 0 additions & 35 deletions
This file was deleted.

src/main/java/com/github/gtexpert/core/loaders/recipe/handlers/GTEImplosionRecipeHandler.java

Lines changed: 10 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,6 @@
1414
import gregtech.common.blocks.MetaBlocks;
1515
import gregtech.common.items.MetaItems;
1616

17-
import com.github.gtexpert.core.api.util.Mods;
18-
1917
public class GTEImplosionRecipeHandler {
2018

2119
private static final Consumer<ImplosionRecipeBuilder>[] EXPLOSIVES = new Consumer[] {
@@ -26,34 +24,24 @@ public class GTEImplosionRecipeHandler {
2624
};
2725

2826
public static void add(Material inputMaterial, Material outputMaterial) {
29-
register(
30-
builder -> builder.input(dust, inputMaterial, 4).output(gem, outputMaterial, 3),
31-
() -> GTEImplosionNoBombRecipeHandler.add(inputMaterial, outputMaterial));
27+
register(builder -> builder.input(dust, inputMaterial, 4).output(gem, outputMaterial, 3));
3228
}
3329

3430
public static void add(Material inputMaterial, ItemStack outputStack) {
35-
register(
36-
builder -> builder.input(dust, inputMaterial, 4).outputs(GTUtility.copy(3, outputStack)),
37-
() -> GTEImplosionNoBombRecipeHandler.add(inputMaterial, outputStack));
31+
register(builder -> builder.input(dust, inputMaterial, 4).outputs(GTUtility.copy(3, outputStack)));
3832
}
3933

4034
public static void add(String inputOreDict, ItemStack outputStack) {
41-
register(
42-
builder -> builder.input(inputOreDict, 4).outputs(GTUtility.copy(3, outputStack)),
43-
() -> GTEImplosionNoBombRecipeHandler.add(inputOreDict, outputStack));
35+
register(builder -> builder.input(inputOreDict, 4).outputs(GTUtility.copy(3, outputStack)));
4436
}
4537

46-
private static void register(Consumer<ImplosionRecipeBuilder> recipeConfig, Runnable noBombHandler) {
47-
if (Mods.ImplosionNoBomb.isModLoaded()) {
48-
noBombHandler.run();
49-
} else {
50-
for (Consumer<ImplosionRecipeBuilder> explosive : EXPLOSIVES) {
51-
ImplosionRecipeBuilder builder = RecipeMaps.IMPLOSION_RECIPES.recipeBuilder();
52-
recipeConfig.accept(builder);
53-
builder.chancedOutput(dust, Materials.DarkAsh, 2500, 0);
54-
explosive.accept(builder);
55-
builder.buildAndRegister();
56-
}
38+
public static void register(Consumer<ImplosionRecipeBuilder> recipeConfig) {
39+
for (Consumer<ImplosionRecipeBuilder> explosive : EXPLOSIVES) {
40+
ImplosionRecipeBuilder builder = RecipeMaps.IMPLOSION_RECIPES.recipeBuilder();
41+
recipeConfig.accept(builder);
42+
builder.chancedOutput(dust, Materials.DarkAsh, 2500, 0);
43+
explosive.accept(builder);
44+
builder.buildAndRegister();
5745
}
5846
}
5947
}

0 commit comments

Comments
 (0)