Some preparations before OreDictHandler changes

This commit is contained in:
TheDarkDnKTv 2020-08-21 01:02:16 +03:00
parent c0a7a7bbec
commit 6ce6562926
20 changed files with 68 additions and 103 deletions

View file

@ -22,33 +22,33 @@ import net.minecraft.item.ItemStack;
public class GT_Recipe {
public static volatile int VERSION = 408;
public static final ArrayList<GT_Recipe> sFusionRecipes = new ArrayList<GT_Recipe>( 50);
public static final ArrayList<GT_Recipe> sCentrifugeRecipes = new ArrayList<GT_Recipe>(1000);
public static final ArrayList<GT_Recipe> sElectrolyzerRecipes = new ArrayList<GT_Recipe>( 200);
public static final ArrayList<GT_Recipe> sGrinderRecipes = new ArrayList<GT_Recipe>( 200);
public static final ArrayList<GT_Recipe> sBlastRecipes = new ArrayList<GT_Recipe>( 300);
public static final ArrayList<GT_Recipe> sImplosionRecipes = new ArrayList<GT_Recipe>( 50);
public static final ArrayList<GT_Recipe> sSawmillRecipes = new ArrayList<GT_Recipe>( 100);
public static final ArrayList<GT_Recipe> sVacuumRecipes = new ArrayList<GT_Recipe>( 100);
public static final ArrayList<GT_Recipe> sChemicalRecipes = new ArrayList<GT_Recipe>( 100);
public static final ArrayList<GT_Recipe> sDistillationRecipes = new ArrayList<GT_Recipe>( 50);
public static final ArrayList<GT_Recipe> sWiremillRecipes = new ArrayList<GT_Recipe>( 50);
public static final ArrayList<GT_Recipe> sBenderRecipes = new ArrayList<GT_Recipe>( 400);
public static final ArrayList<GT_Recipe> sAlloySmelterRecipes = new ArrayList<GT_Recipe>(2000);
public static final ArrayList<GT_Recipe> sAssemblerRecipes = new ArrayList<GT_Recipe>( 300);
public static final ArrayList<GT_Recipe> sCannerRecipes = new ArrayList<GT_Recipe>( 300);
public static final ArrayList<GT_Recipe> sCNCRecipes = new ArrayList<GT_Recipe>( 100);
public static final ArrayList<GT_Recipe> sLatheRecipes = new ArrayList<GT_Recipe>( 400);
public static final ArrayList<GT_Recipe> sCutterRecipes = new ArrayList<GT_Recipe>( 200);
public static final ArrayList<GT_Recipe> sExtruderRecipes = new ArrayList<GT_Recipe>(1000);
public static final ArrayList<GT_Recipe> sHammerRecipes = new ArrayList<GT_Recipe>( 200);
public static final List<GT_Recipe> sFusionRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sCentrifugeRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sElectrolyzerRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sGrinderRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sBlastRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sImplosionRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sSawmillRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sVacuumRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sChemicalRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sDistillationRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sWiremillRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sBenderRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sAlloySmelterRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sAssemblerRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sCannerRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sCNCRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sLatheRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sCutterRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sExtruderRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sHammerRecipes = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final ArrayList<GT_Recipe> sDieselFuels = new ArrayList<GT_Recipe>();
public static final ArrayList<GT_Recipe> sTurbineFuels = new ArrayList<GT_Recipe>();
public static final ArrayList<GT_Recipe> sHotFuels = new ArrayList<GT_Recipe>();
public static final ArrayList<GT_Recipe> sDenseLiquidFuels = new ArrayList<GT_Recipe>();
public static final ArrayList<GT_Recipe> sPlasmaFuels = new ArrayList<GT_Recipe>();
public static final ArrayList<GT_Recipe> sMagicFuels = new ArrayList<GT_Recipe>();
public static final List<GT_Recipe> sDieselFuels = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sTurbineFuels = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sHotFuels = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sDenseLiquidFuels = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sPlasmaFuels = Collections.synchronizedList(new ArrayList<GT_Recipe>());
public static final List<GT_Recipe> sMagicFuels = Collections.synchronizedList(new ArrayList<GT_Recipe>());
/** It is an IdentityHashMap, because it uses a List as Key, and since that List changes (and therefore the Result of the equals Method), the Key is not secure, while the Identity is. */
private static final IdentityHashMap<List<GT_Recipe>, HashMap<Integer, List<GT_Recipe>>> sRecipeMappings = new IdentityHashMap<List<GT_Recipe>, HashMap<Integer, List<GT_Recipe>>>();

View file

@ -18,44 +18,21 @@ public class ProcessingCircuit implements IOreRecipeRegistrator {
}
public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) {
switch(ProcessingCircuit.NamelessClass653157110.$SwitchMap$gregtechmod$api$enums$Materials[aMaterial.ordinal()]) {
case 1:
switch(aMaterial) {
case Basic:
if(!GT_Utility.areStacksEqual(aStack, GT_Items.Circuit_Integrated.getWildcard(1L, new Object[0]))) {
GT_ModHandler.removeRecipeByOutput(aStack);
GT_ModHandler.addCraftingRecipe(GT_Items.Circuit_Basic.get(1L, new Object[0]), new Object[]{"CCC", "SRS", "CCC", Character.valueOf('C'), GT_OreDictNames.craftingWireCopper, Character.valueOf('R'), OrePrefixes.plate.get(Materials.Iron), Character.valueOf('S'), GregTech_API.sRecipeFile.get(GT_ConfigCategories.Recipes.harderrecipes, "circuitRedAlloy", true)?OrePrefixes.plate.get(Materials.RedAlloy):OrePrefixes.dust.get(Materials.Redstone)});
GT_ModHandler.addCraftingRecipe(GT_Items.Circuit_Basic.get(1L, new Object[0]), new Object[]{"CSC", "CRC", "CSC", Character.valueOf('C'), GT_OreDictNames.craftingWireCopper, Character.valueOf('R'), OrePrefixes.plate.get(Materials.Iron), Character.valueOf('S'), GregTech_API.sRecipeFile.get(GT_ConfigCategories.Recipes.harderrecipes, "circuitRedAlloy", true)?OrePrefixes.plate.get(Materials.RedAlloy):OrePrefixes.dust.get(Materials.Redstone)});
}
break;
case 2:
case Advanced:
GT_ModHandler.removeRecipeByOutput(aStack);
GT_ModHandler.addCraftingRecipe(GT_Items.Circuit_Advanced.get(1L, new Object[0]), new Object[]{"SGS", "LCL", "SGS", Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Basic), Character.valueOf('S'), GregTech_API.sRecipeFile.get(GT_ConfigCategories.Recipes.harderrecipes, "circuitRedAlloy", true)?OrePrefixes.plate.get(Materials.RedAlloy):OrePrefixes.dust.get(Materials.Redstone), Character.valueOf('G'), OrePrefixes.dust.get(Materials.Glowstone), Character.valueOf('L'), OrePrefixes.dust.get(Materials.Lazurite)});
GT_ModHandler.addCraftingRecipe(GT_Items.Circuit_Advanced.get(1L, new Object[0]), new Object[]{"SLS", "GCG", "SLS", Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Basic), Character.valueOf('S'), GregTech_API.sRecipeFile.get(GT_ConfigCategories.Recipes.harderrecipes, "circuitRedAlloy", true)?OrePrefixes.plate.get(Materials.RedAlloy):OrePrefixes.dust.get(Materials.Redstone), Character.valueOf('G'), OrePrefixes.dust.get(Materials.Glowstone), Character.valueOf('L'), OrePrefixes.dust.get(Materials.Lazurite)});
GT_ModHandler.addCraftingRecipe(GT_Items.Circuit_Advanced.get(1L, new Object[0]), new Object[]{"SGS", "LCL", "SGS", Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Basic), Character.valueOf('S'), GregTech_API.sRecipeFile.get(GT_ConfigCategories.Recipes.harderrecipes, "circuitRedAlloy", true)?OrePrefixes.plate.get(Materials.RedAlloy):OrePrefixes.dust.get(Materials.Redstone), Character.valueOf('G'), OrePrefixes.dust.get(Materials.Glowstone), Character.valueOf('L'), OrePrefixes.dust.get(Materials.Lapis)});
GT_ModHandler.addCraftingRecipe(GT_Items.Circuit_Advanced.get(1L, new Object[0]), new Object[]{"SLS", "GCG", "SLS", Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Basic), Character.valueOf('S'), GregTech_API.sRecipeFile.get(GT_ConfigCategories.Recipes.harderrecipes, "circuitRedAlloy", true)?OrePrefixes.plate.get(Materials.RedAlloy):OrePrefixes.dust.get(Materials.Redstone), Character.valueOf('G'), OrePrefixes.dust.get(Materials.Glowstone), Character.valueOf('L'), OrePrefixes.dust.get(Materials.Lapis)});
}
}
// $FF: synthetic class
static class NamelessClass653157110 {
// $FF: synthetic field
static final int[] $SwitchMap$gregtechmod$api$enums$Materials = new int[Materials.values().length];
static {
try {
$SwitchMap$gregtechmod$api$enums$Materials[Materials.Basic.ordinal()] = 1;
} catch (NoSuchFieldError var2) {
;
}
try {
$SwitchMap$gregtechmod$api$enums$Materials[Materials.Advanced.ordinal()] = 2;
} catch (NoSuchFieldError var1) {
;
}
default: break;
}
}
}

View file

@ -30,10 +30,10 @@ public class ProcessingOreSmelting implements IOreRecipeRegistrator {
public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) {
if(!aMaterial.contains(SubTag.NO_SMELTING)) {
if(!aMaterial.mBlastFurnaceRequired && !aMaterial.mDirectSmelting.mBlastFurnaceRequired) {
switch(ProcessingOreSmelting.NamelessClass1425840077.$SwitchMap$gregtechmod$api$enums$OrePrefixes[aPrefix.ordinal()]) {
case 1:
case 2:
case 3:
switch(aPrefix) {
case crushed:
case crushedPurified:
case crushedCentrifuged:
ItemStack tStack = GT_OreDictUnificator.get(OrePrefixes.nugget, (Object)aMaterial.mDirectSmelting, 10L);
if(tStack == null) {
tStack = GT_OreDictUnificator.get(OrePrefixes.ingot, (Object)aMaterial.mDirectSmelting, 1L);
@ -54,33 +54,4 @@ public class ProcessingOreSmelting implements IOreRecipeRegistrator {
}
}
// $FF: synthetic class
static class NamelessClass1425840077 {
// $FF: synthetic field
static final int[] $SwitchMap$gregtechmod$api$enums$OrePrefixes = new int[OrePrefixes.values().length];
static {
try {
$SwitchMap$gregtechmod$api$enums$OrePrefixes[OrePrefixes.crushed.ordinal()] = 1;
} catch (NoSuchFieldError var3) {
;
}
try {
$SwitchMap$gregtechmod$api$enums$OrePrefixes[OrePrefixes.crushedPurified.ordinal()] = 2;
} catch (NoSuchFieldError var2) {
;
}
try {
$SwitchMap$gregtechmod$api$enums$OrePrefixes[OrePrefixes.crushedCentrifuged.ordinal()] = 3;
} catch (NoSuchFieldError var1) {
;
}
}
}
}

View file

@ -12,6 +12,7 @@ import gregtechmod.common.gui.GT_GUIContainer_Scrapboxinator;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.gui.inventory.GuiContainer;
import codechicken.nei.PositionedStack;
@ -101,7 +102,7 @@ public class AlloySmelterRecipeHandler extends GT_RecipeHandler {
}
@Override
public ArrayList<GT_Recipe> getRecipeList() {
public List<GT_Recipe> getRecipeList() {
return GT_Recipe.sAlloySmelterRecipes;
}

View file

@ -7,6 +7,7 @@ import gregtechmod.common.gui.GT_GUIContainer_BasicMachine_Assembler;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.gui.inventory.GuiContainer;
import codechicken.nei.PositionedStack;
@ -66,7 +67,7 @@ public class AssemblerRecipeHandler extends GT_RecipeHandler {
}
@Override
public ArrayList<GT_Recipe> getRecipeList() {
public List<GT_Recipe> getRecipeList() {
return GT_Recipe.sAssemblerRecipes;
}

View file

@ -7,6 +7,7 @@ import gregtechmod.common.gui.GT_GUIContainer_BasicMachine_Bender;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.gui.inventory.GuiContainer;
import codechicken.nei.PositionedStack;
@ -67,7 +68,7 @@ public class BenderRecipeHandler extends GT_RecipeHandler {
}
@Override
public ArrayList<GT_Recipe> getRecipeList() {
public List<GT_Recipe> getRecipeList() {
return GT_Recipe.sBenderRecipes;
}

View file

@ -7,6 +7,7 @@ import gregtechmod.common.gui.GT_GUIContainer_BlastFurnace;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.gui.inventory.GuiContainer;
import codechicken.nei.PositionedStack;
@ -69,7 +70,7 @@ public class BlastRecipeHandler extends GT_RecipeHandler {
}
@Override
public ArrayList<GT_Recipe> getRecipeList() {
public List<GT_Recipe> getRecipeList() {
return GT_Recipe.sBlastRecipes;
}

View file

@ -7,6 +7,7 @@ import gregtechmod.common.gui.GT_GUIContainer_BasicMachine_Canner;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.gui.inventory.GuiContainer;
import codechicken.nei.PositionedStack;
@ -68,7 +69,7 @@ public class CannerRecipeHandler extends GT_RecipeHandler {
}
@Override
public ArrayList<GT_Recipe> getRecipeList() {
public List<GT_Recipe> getRecipeList() {
return GT_Recipe.sCannerRecipes;
}

View file

@ -7,6 +7,7 @@ import gregtechmod.common.gui.GT_GUIContainer_Centrifuge;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.gui.inventory.GuiContainer;
import codechicken.nei.PositionedStack;
@ -77,7 +78,7 @@ public class CentrifugeRecipeHandler extends GT_RecipeHandler {
}
@Override
public ArrayList<GT_Recipe> getRecipeList() {
public List<GT_Recipe> getRecipeList() {
return GT_Recipe.sCentrifugeRecipes;
}

View file

@ -7,6 +7,7 @@ import gregtechmod.common.gui.GT_GUIContainer_ChemicalReactor;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.gui.inventory.GuiContainer;
import codechicken.nei.PositionedStack;
@ -66,7 +67,7 @@ public class ChemicalRecipeHandler extends GT_RecipeHandler {
}
@Override
public ArrayList<GT_Recipe> getRecipeList() {
public List<GT_Recipe> getRecipeList() {
return GT_Recipe.sChemicalRecipes;
}

View file

@ -7,6 +7,7 @@ import gregtechmod.common.gui.GT_GUIContainer_BasicMachine_Cutter;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.gui.inventory.GuiContainer;
import codechicken.nei.PositionedStack;
@ -64,7 +65,7 @@ public class CutterRecipeHandler extends GT_RecipeHandler {
}
@Override
public ArrayList<GT_Recipe> getRecipeList() {
public List<GT_Recipe> getRecipeList() {
return GT_Recipe.sCutterRecipes;
}

View file

@ -7,6 +7,7 @@ import gregtechmod.common.gui.GT_GUIContainer_DistillationTower;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.gui.inventory.GuiContainer;
import codechicken.nei.PositionedStack;
@ -72,7 +73,7 @@ public class DistillationRecipeHandler extends GT_RecipeHandler {
}
@Override
public ArrayList<GT_Recipe> getRecipeList() {
public List<GT_Recipe> getRecipeList() {
return GT_Recipe.sDistillationRecipes;
}

View file

@ -7,6 +7,7 @@ import gregtechmod.common.gui.GT_GUIContainer_Electrolyzer;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.gui.inventory.GuiContainer;
import codechicken.nei.PositionedStack;
@ -72,7 +73,7 @@ public class ElectrolyzerRecipeHandler extends GT_RecipeHandler {
}
@Override
public ArrayList<GT_Recipe> getRecipeList() {
public List<GT_Recipe> getRecipeList() {
return GT_Recipe.sElectrolyzerRecipes;
}

View file

@ -7,6 +7,7 @@ import gregtechmod.common.gui.GT_GUIContainer_FusionComputer;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.gui.inventory.GuiContainer;
import codechicken.nei.PositionedStack;
@ -69,7 +70,7 @@ public class FusionRecipeHandler extends GT_RecipeHandler {
}
@Override
public ArrayList<GT_Recipe> getRecipeList() {
public List<GT_Recipe> getRecipeList() {
return GT_Recipe.sFusionRecipes;
}

View file

@ -7,6 +7,7 @@ import gregtechmod.common.gui.GT_GUIContainer_Grinder;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.gui.inventory.GuiContainer;
import codechicken.nei.PositionedStack;
@ -72,7 +73,7 @@ public class GrinderRecipeHandler extends GT_RecipeHandler {
}
@Override
public ArrayList<GT_Recipe> getRecipeList() {
public List<GT_Recipe> getRecipeList() {
return GT_Recipe.sGrinderRecipes;
}

View file

@ -7,6 +7,7 @@ import gregtechmod.common.gui.GT_GUIContainer_ImplosionCompressor;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.gui.inventory.GuiContainer;
import codechicken.nei.PositionedStack;
@ -69,7 +70,7 @@ public class ImplosionRecipeHandler extends GT_RecipeHandler {
}
@Override
public ArrayList<GT_Recipe> getRecipeList() {
public List<GT_Recipe> getRecipeList() {
return GT_Recipe.sImplosionRecipes;
}

View file

@ -7,6 +7,7 @@ import gregtechmod.common.gui.GT_GUIContainer_BasicMachine_Lathe;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.gui.inventory.GuiContainer;
import codechicken.nei.PositionedStack;
@ -66,7 +67,7 @@ public class LatheRecipeHandler extends GT_RecipeHandler {
}
@Override
public ArrayList<GT_Recipe> getRecipeList() {
public List<GT_Recipe> getRecipeList() {
return GT_Recipe.sLatheRecipes;
}

View file

@ -7,6 +7,7 @@ import gregtechmod.common.gui.GT_GUIContainer_Sawmill;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.gui.inventory.GuiContainer;
import codechicken.nei.PositionedStack;
@ -70,7 +71,7 @@ public class SawmillRecipeHandler extends GT_RecipeHandler {
}
@Override
public ArrayList<GT_Recipe> getRecipeList() {
public List<GT_Recipe> getRecipeList() {
return GT_Recipe.sSawmillRecipes;
}

View file

@ -7,6 +7,7 @@ import gregtechmod.common.gui.GT_GUIContainer_VacuumFreezer;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.gui.inventory.GuiContainer;
import codechicken.nei.PositionedStack;
@ -64,7 +65,7 @@ public class VacuumFreezerRecipeHandler extends GT_RecipeHandler {
}
@Override
public ArrayList<GT_Recipe> getRecipeList() {
public List<GT_Recipe> getRecipeList() {
return GT_Recipe.sVacuumRecipes;
}

View file

@ -7,6 +7,7 @@ import gregtechmod.common.gui.GT_GUIContainer_BasicMachine_Wiremill;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.client.gui.inventory.GuiContainer;
import codechicken.nei.PositionedStack;
@ -64,7 +65,7 @@ public class WiremillRecipeHandler extends GT_RecipeHandler {
}
@Override
public ArrayList<GT_Recipe> getRecipeList() {
public List<GT_Recipe> getRecipeList() {
return GT_Recipe.sWiremillRecipes;
}