aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/enums/OrePrefixes.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech/api/enums/OrePrefixes.java')
-rw-r--r--src/main/java/gregtech/api/enums/OrePrefixes.java367
1 files changed, 284 insertions, 83 deletions
diff --git a/src/main/java/gregtech/api/enums/OrePrefixes.java b/src/main/java/gregtech/api/enums/OrePrefixes.java
index 0c84757aab..ad1ba3f038 100644
--- a/src/main/java/gregtech/api/enums/OrePrefixes.java
+++ b/src/main/java/gregtech/api/enums/OrePrefixes.java
@@ -1,19 +1,19 @@
package gregtech.api.enums;
+import gregtech.api.GregTech_API;
import gregtech.api.enums.TC_Aspects.TC_AspectStack;
import gregtech.api.interfaces.ICondition;
+import gregtech.api.interfaces.IMaterialHandler;
import gregtech.api.interfaces.IOreRecipeRegistrator;
import gregtech.api.interfaces.ISubTagContainer;
import gregtech.api.objects.ItemData;
import gregtech.api.objects.MaterialStack;
import gregtech.api.util.GT_Log;
import gregtech.api.util.GT_Utility;
+import gregtech.loaders.materialprocessing.ProcessingModSupport;
import net.minecraft.item.ItemStack;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.List;
+import java.util.*;
import static gregtech.api.enums.GT_Values.*;
@@ -439,7 +439,8 @@ public enum OrePrefixes {
plateTriple.mGeneratedItems.add(Materials.Paper);
plateQuadruple.mGeneratedItems.add(Materials.Paper);
plateQuintuple.mGeneratedItems.add(Materials.Paper);
-
+ ring.mGeneratedItems.add(Materials.Paper);
+
lens.mGeneratedItems.add(Materials.EnderPearl);
lens.mGeneratedItems.add(Materials.EnderEye);
@@ -514,6 +515,8 @@ public enum OrePrefixes {
oreNether.mSecondaryMaterial = new MaterialStack(Materials.Netherrack, dust.mMaterialAmount);
oreEndstone.mSecondaryMaterial = new MaterialStack(Materials.Endstone, dust.mMaterialAmount);
oreEnd.mSecondaryMaterial = new MaterialStack(Materials.Endstone, dust.mMaterialAmount);
+ oreMarble.mSecondaryMaterial = new MaterialStack(Materials.Marble, dust.mMaterialAmount);
+ oreBasalt.mSecondaryMaterial = new MaterialStack(Materials.Basalt, dust.mMaterialAmount);
oreDense.mSecondaryMaterial = new MaterialStack(Materials.Stone, dust.mMaterialAmount);
orePoor.mSecondaryMaterial = new MaterialStack(Materials.Stone, dust.mMaterialAmount * 2);
oreSmall.mSecondaryMaterial = new MaterialStack(Materials.Stone, dust.mMaterialAmount * 2);
@@ -544,7 +547,7 @@ public enum OrePrefixes {
* Negative = Undefined Amount
*/
public final long mMaterialAmount;
- private final Collection<Materials> mNotGeneratedItems = new HashSet<Materials>(), mIgnoredMaterials = new HashSet<Materials>(), mGeneratedItems = new HashSet<Materials>();
+ public final Collection<Materials> mDisabledItems = new HashSet<Materials>(), mNotGeneratedItems = new HashSet<Materials>(), mIgnoredMaterials = new HashSet<Materials>(), mGeneratedItems = new HashSet<Materials>();
private final ArrayList<IOreRecipeRegistrator> mOreProcessing = new ArrayList<IOreRecipeRegistrator>();
public ItemStack mContainerItem = null;
public ICondition<ISubTagContainer> mCondition = null;
@@ -552,6 +555,7 @@ public enum OrePrefixes {
public MaterialStack mSecondaryMaterial = null;
public OrePrefixes mPrefixInto = this;
public float mHeatDamage = 0.0F; // Negative for Frost Damage
+ public static List<OrePrefixes> mPreventableComponents = new LinkedList<>(Arrays.asList(OrePrefixes.gem, OrePrefixes.ingotHot, OrePrefixes.ingotDouble, OrePrefixes.ingotTriple, OrePrefixes.ingotQuadruple, OrePrefixes.ingotQuintuple, OrePrefixes.plate, OrePrefixes.plateDouble, OrePrefixes.plateTriple, OrePrefixes.plateQuadruple, OrePrefixes.plateQuintuple, OrePrefixes.plateDense, OrePrefixes.stick, OrePrefixes.round, OrePrefixes.bolt, OrePrefixes.screw, OrePrefixes.ring, OrePrefixes.foil, OrePrefixes.toolHeadSword, OrePrefixes.toolHeadPickaxe, OrePrefixes.toolHeadShovel, OrePrefixes.toolHeadAxe, OrePrefixes.toolHeadHoe, OrePrefixes.toolHeadHammer, OrePrefixes.toolHeadFile, OrePrefixes.toolHeadSaw, OrePrefixes.toolHeadDrill, OrePrefixes.toolHeadChainsaw, OrePrefixes.toolHeadWrench, OrePrefixes.toolHeadUniversalSpade, OrePrefixes.toolHeadSense, OrePrefixes.toolHeadPlow, OrePrefixes.toolHeadArrow, OrePrefixes.toolHeadBuzzSaw, OrePrefixes.turbineBlade, OrePrefixes.wireFine, OrePrefixes.gearGtSmall, OrePrefixes.rotor, OrePrefixes.stickLong, OrePrefixes.springSmall, OrePrefixes.spring, OrePrefixes.arrowGtWood, OrePrefixes.arrowGtPlastic, OrePrefixes.gemChipped, OrePrefixes.gemFlawed, OrePrefixes.gemFlawless, OrePrefixes.gemExquisite, OrePrefixes.gearGt, OrePrefixes.crateGtDust, OrePrefixes.crateGtIngot, OrePrefixes.crateGtGem, OrePrefixes.crateGtPlate));
/**
* Yes this Value can be changed to add Bits for the MetaGenerated-Item-Check.
*/
@@ -611,6 +615,186 @@ public enum OrePrefixes {
}
}
+ public static void initMaterialComponents() {
+ boolean enablePerItemSettings = GregTech_API.sMaterialComponents.get("general", "enablePerItemSettings", false);
+ boolean enableUnusedPlates = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedPlates", false);
+ boolean enableUnusedDoubleIngots = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedDoubleIngots", false);
+ boolean enableUnusedTripleIngots = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedTripleIngots", false);
+ boolean enableUnusedQuadIngots = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedQuadIngots", false);
+ boolean enableUnusedQuinIngots = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedQuinIngots", false);
+ boolean enableUnusedDoublePlates = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedDoublePlates", false);
+ boolean enableUnusedTriplePlates = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedTriplePlates", false);
+ boolean enableUnusedQuadPlates = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedQuadPlates", false);
+ boolean enableUnusedQuinPlates = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedQuinPlates", false);
+ boolean enableUnusedDensePlates = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedDensePlates", false);
+ boolean enableUnusedGears = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedGears", false);
+ boolean enableUnusedSmallGears = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedSmallGears", false);
+ boolean enableUnusedRings = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedRings", false);
+ boolean enableUnusedSprings = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedSprings", false);
+ boolean enableUnusedSmallSprings = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedSmallSprings", false);
+ boolean enableUnusedRounds = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedRounds", false);
+ boolean enableUnusedRotors = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedRotors", false);
+ boolean enableUnusedFineWires = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedFineWires", false);
+ boolean enableUnusedFoil = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedFoil", false);
+ boolean enableUnusedArrows = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedArrowHeads", false);
+ boolean enableUnusedCrates = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedCrates", false);
+ boolean enableUnusedBolts = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedBolts", false);
+ boolean enableUnusedScrews = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedScrews", false);
+ boolean enableUnusedRods = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedRods", false);
+ boolean enableUnusedLongRods = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedLongRods", false);
+ boolean enableUnusedGems = GregTech_API.sMaterialComponents.get("globalcomponents", "enableUnusedGems", false);
+
+ //TODO possibly use OrePrefix mNotGeneratedItems/mGeneratedItems instead of a static List for every material instance?
+ //TODO Make sure stuff like gem plates / standard plates / paper plates all generate with the current condition
+ for (Materials aMaterial : Materials.values()) {
+ if (aMaterial.mMetaItemSubID > 0) {
+ if (aMaterial.mBlastFurnaceTemp <= 1750) ingotHot.mDisabledItems.add(aMaterial); //Moved HotIngot code from GT_MetaGenerated_Item_01 so all this is in once place
+ if (!enableUnusedSprings && (aMaterial != Materials.Titanium)) spring.mDisabledItems.add(aMaterial);
+ if (!enableUnusedSmallSprings) springSmall.mDisabledItems.add(aMaterial);
+ if (!enableUnusedRounds && !(aMaterial == Materials.HSSE || aMaterial == Materials.Neutronium || aMaterial == Materials.HSSG)) round.mDisabledItems.add(aMaterial);
+ if (!enableUnusedCrates) {
+ if (!(aMaterial == Materials.DamascusSteel || aMaterial == Materials.Steel || aMaterial == Materials.Bronze || aMaterial == Materials.Manganese))
+ crateGtIngot.mDisabledItems.add(aMaterial);
+ if (!(aMaterial == Materials.Neodymium || aMaterial == Materials.Chrome))
+ crateGtDust.mDisabledItems.add(aMaterial);
+ crateGtGem.mDisabledItems.add(aMaterial);
+ crateGtPlate.mDisabledItems.add(aMaterial);
+ }
+ if (!enableUnusedArrows) {
+ toolHeadArrow.mDisabledItems.add(aMaterial);
+ arrowGtPlastic.mDisabledItems.add(aMaterial);
+ if (!(aMaterial == Materials.DamascusSteel || aMaterial == Materials.SterlingSilver))
+ arrowGtWood.mDisabledItems.add(aMaterial);
+ }
+ //Plates
+ if (!enableUnusedPlates && ((aMaterial.mTypes & 0x40) == 0) && !(aMaterial == Materials.Silicon || aMaterial == Materials.Zinc ||
+ aMaterial == Materials.Europium || aMaterial == Materials.Americium || aMaterial == Materials.RedAlloy || aMaterial == Materials.SolderingAlloy || aMaterial == Materials.BatteryAlloy ||
+ aMaterial == Materials.AnnealedCopper || aMaterial == Materials.Firestone || aMaterial == Materials.VanadiumGallium || aMaterial == Materials.YttriumBariumCuprate ||
+ aMaterial == Materials.NiobiumTitanium || aMaterial == Materials.CertusQuartz || aMaterial == Materials.NetherQuartz || aMaterial == Materials.Lazurite || aMaterial == Materials.Lapis ||
+ aMaterial == Materials.Paper || aMaterial == Materials.Jasper || aMaterial == Materials.Dilithium || aMaterial == Materials.Forcicium || aMaterial == Materials.Forcillium ||
+ aMaterial == Materials.EnderPearl || aMaterial == Materials.EnderEye || aMaterial == Materials.Glass || aMaterial == Materials.Copper || aMaterial == Materials.Tin || aMaterial == Materials.Redstone ||
+ aMaterial == Materials.Sodalite || aMaterial == Materials.Gallium || aMaterial == Materials.GalliumArsenide || aMaterial == Materials.IndiumGalliumPhosphide))
+ plate.mDisabledItems.add(aMaterial);
+ //Ingot/Plate Storage
+ if (!enableUnusedDoubleIngots) ingotDouble.mDisabledItems.add(aMaterial);
+ if (!enableUnusedTripleIngots) ingotTriple.mDisabledItems.add(aMaterial);
+ if (!enableUnusedQuadIngots) ingotQuadruple.mDisabledItems.add(aMaterial);
+ if (!enableUnusedQuinIngots) ingotQuintuple.mDisabledItems.add(aMaterial);
+ if (!enableUnusedDoublePlates && ((aMaterial.mTypes & 0x40) == 0) && !(aMaterial == Materials.Paper || aMaterial == Materials.Aluminium || aMaterial == Materials.Steel || aMaterial == Materials.TungstenSteel))
+ plateDouble.mDisabledItems.add(aMaterial);
+ if (!enableUnusedTriplePlates && !(aMaterial == Materials.Paper)) plateTriple.mDisabledItems.add(aMaterial);
+ if (!enableUnusedQuadPlates && !(aMaterial == Materials.Paper)) plateQuadruple.mDisabledItems.add(aMaterial);
+ if (!enableUnusedQuinPlates && !(aMaterial == Materials.Paper)) plateQuintuple.mDisabledItems.add(aMaterial);
+ if (!(enableUnusedDensePlates || GregTech_API.mGTPlusPlus) && !(aMaterial == Materials.Iron || aMaterial == Materials.Copper || aMaterial == Materials.Lead || aMaterial == Materials.Paper))
+ plateDense.mDisabledItems.add(aMaterial);
+ //Rotors
+ if (!enableUnusedRotors && !(aMaterial == Materials.Titanium || aMaterial == Materials.Chrome || aMaterial == Materials.Tin || aMaterial == Materials.Osmium ||
+ aMaterial == Materials.Iridium || aMaterial == Materials.Bronze || aMaterial == Materials.Steel || aMaterial == Materials.StainlessSteel ||
+ aMaterial == Materials.TungstenSteel || aMaterial == Materials.HSSG || aMaterial == Materials.HSSE || aMaterial == Materials.Neutronium))
+ rotor.mDisabledItems.add(aMaterial);
+ //Rings
+ if (!enableUnusedRings && !(aMaterial == Materials.Titanium || aMaterial == Materials.Chrome || aMaterial == Materials.Iron || aMaterial == Materials.Tin ||
+ aMaterial == Materials.Osmium || aMaterial == Materials.Iridium || aMaterial == Materials.Bronze || aMaterial == Materials.WroughtIron ||
+ aMaterial == Materials.Steel || aMaterial == Materials.StainlessSteel || aMaterial == Materials.PigIron || aMaterial == Materials.TungstenSteel ||
+ aMaterial == Materials.Rubber || aMaterial == Materials.HSSE || aMaterial == Materials.Neutronium || aMaterial == Materials.HSSG || aMaterial == Materials.Aluminium ||
+ aMaterial == Materials.Invar || aMaterial == Materials.Brass || aMaterial == Materials.Paper || aMaterial == Materials.Silicone))
+ ring.mDisabledItems.add(aMaterial);
+ //Foil
+ if (!enableUnusedFoil && !(aMaterial == Materials.Zinc || aMaterial == Materials.Aluminium || aMaterial == Materials.Silicon || aMaterial == Materials.Gold ||
+ aMaterial == Materials.Electrum || aMaterial == Materials.Platinum || aMaterial == Materials.Osmiridium || aMaterial == Materials.Osmium ||
+ aMaterial == Materials.AnnealedCopper || aMaterial == Materials.Steel || aMaterial == Materials.Copper || aMaterial == Materials.YttriumBariumCuprate
+ || aMaterial == Materials.VanadiumGallium || aMaterial == Materials.NiobiumTitanium || aMaterial == Materials.Naquadah || aMaterial == Materials.Manganese ||
+ aMaterial == Materials.Plastic || aMaterial == Materials.Silicone))
+ foil.mDisabledItems.add(aMaterial);
+ //Fine Wire
+ if (!enableUnusedFineWires && !(aMaterial == Materials.Steel || aMaterial == Materials.AnnealedCopper || aMaterial == Materials.Platinum || aMaterial == Materials.Osmium ||
+ aMaterial == Materials.Tin || aMaterial == Materials.Lead || aMaterial == Materials.SolderingAlloy || aMaterial == Materials.Copper || aMaterial == Materials.Electrum ||
+ aMaterial == Materials.Gold || aMaterial == Materials.RedAlloy || aMaterial == Materials.Graphene || aMaterial == Materials.NiobiumTitanium || aMaterial == Materials.YttriumBariumCuprate ))
+ wireFine.mDisabledItems.add(aMaterial);
+ //Gears
+ if (!enableUnusedGears && !(aMaterial == Materials.Aluminium || aMaterial == Materials.Titanium || aMaterial == Materials.Iron || aMaterial == Materials.Copper ||
+ aMaterial == Materials.Tin || aMaterial == Materials.Gold || aMaterial == Materials.Stone || aMaterial == Materials.Bronze ||
+ aMaterial == Materials.Steel || aMaterial == Materials.StainlessSteel || aMaterial == Materials.TungstenSteel || aMaterial == Materials.CobaltBrass ||
+ aMaterial == Materials.Diamond || aMaterial == Materials.Wood || aMaterial == Materials.HSSG || aMaterial == Materials.HSSE || aMaterial == Materials.Neutronium))
+ gearGt.mDisabledItems.add(aMaterial);
+ //Small Gears
+ if (!enableUnusedSmallGears && !(aMaterial == Materials.Aluminium || aMaterial == Materials.Titanium || aMaterial == Materials.Steel || aMaterial == Materials.StainlessSteel ||
+ aMaterial == Materials.TungstenSteel || aMaterial == Materials.HSSG || aMaterial == Materials.HSSE || aMaterial == Materials.Neutronium))
+ gearGtSmall.mDisabledItems.add(aMaterial);
+ //Bolts
+ if (!enableUnusedBolts && ((aMaterial.mTypes & 0x40) == 0) && !(aMaterial == Materials.Titanium || aMaterial == Materials.Chrome || aMaterial == Materials.Iron ||
+ aMaterial == Materials.Tin || aMaterial == Materials.Osmium || aMaterial == Materials.Iridium || aMaterial == Materials.Neutronium ||
+ aMaterial == Materials.Bronze || aMaterial == Materials.WroughtIron || aMaterial == Materials.Steel || aMaterial == Materials.StainlessSteel ||
+ aMaterial == Materials.PigIron || aMaterial == Materials.TungstenSteel || aMaterial == Materials.Tungsten || aMaterial == Materials.HSSE || aMaterial == Materials.HSSG))
+ bolt.mDisabledItems.add(aMaterial);
+ //Screws
+ if (!enableUnusedScrews && ((aMaterial.mTypes & 0x40) == 0) && !(aMaterial == Materials.Titanium || aMaterial == Materials.Chrome || aMaterial == Materials.Iron ||
+ aMaterial == Materials.Tin || aMaterial == Materials.Osmium || aMaterial == Materials.Iridium || aMaterial == Materials.Neutronium ||
+ aMaterial == Materials.Bronze || aMaterial == Materials.WroughtIron || aMaterial == Materials.Steel || aMaterial == Materials.StainlessSteel ||
+ aMaterial == Materials.PigIron || aMaterial == Materials.TungstenSteel || aMaterial == Materials.HSSE || aMaterial == Materials.HSSG))
+ screw.mDisabledItems.add(aMaterial);
+ //Rods
+ if (!enableUnusedRods && ((aMaterial.mTypes & 0x40) == 0) && !(aMaterial == Materials.Titanium || aMaterial == Materials.Chrome || aMaterial == Materials.Iron ||
+ aMaterial == Materials.Tin || aMaterial == Materials.Osmium || aMaterial == Materials.Iridium || aMaterial == Materials.Neutronium ||
+ aMaterial == Materials.Bronze || aMaterial == Materials.WroughtIron || aMaterial == Materials.Steel || aMaterial == Materials.StainlessSteel ||
+ aMaterial == Materials.PigIron || aMaterial == Materials.TungstenSteel || aMaterial == Materials.HSSE || aMaterial == Materials.HSSG ||
+ aMaterial == Materials.Aluminium || aMaterial == Materials.Copper || aMaterial == Materials.Neodymium || aMaterial == Materials.Europium ||
+ aMaterial == Materials.Platinum || aMaterial == Materials.Gold || aMaterial == Materials.Uranium235 || aMaterial == Materials.Plutonium241 ||
+ aMaterial == Materials.Americium || aMaterial == Materials.Neutronium || aMaterial == Materials.Bronze || aMaterial == Materials.Brass ||
+ aMaterial == Materials.Electrum || aMaterial == Materials.NaquadahEnriched || aMaterial == Materials.CobaltBrass || aMaterial == Materials.IronMagnetic ||
+ aMaterial == Materials.SteelMagnetic || aMaterial == Materials.NeodymiumMagnetic || aMaterial == Materials.VanadiumGallium || aMaterial == Materials.Diamond ||
+ aMaterial == Materials.Wood || aMaterial == Materials.Plastic || aMaterial == Materials.Lead || aMaterial == Materials.SolderingAlloy || aMaterial == Materials.Lapis ||
+ aMaterial == Materials.Lazurite || aMaterial == Materials.Sodalite|| aMaterial == Materials.PolyvinylChloride))
+ stick.mDisabledItems.add(aMaterial);
+ //Long Rods
+ if (!enableUnusedLongRods && ((aMaterial.mTypes & 0x40) == 0) && !(aMaterial == Materials.Titanium || aMaterial == Materials.NeodymiumMagnetic || aMaterial == Materials.HSSG || aMaterial == Materials.HSSE ||
+ aMaterial == Materials.Neutronium || aMaterial == Materials.Americium || aMaterial == Materials.WroughtIron || aMaterial == Materials.Magnalium ||
+ aMaterial == Materials.TungstenSteel))
+ stickLong.mDisabledItems.add(aMaterial);
+
+ if (!enableUnusedGems && ((aMaterial.mTypes & 0x04) == 0)) {
+ gem.mDisabledItems.add(aMaterial);
+ gemChipped.mDisabledItems.add(aMaterial);
+ gemFlawless.mDisabledItems.add(aMaterial);
+ gemFlawed.mDisabledItems.add(aMaterial);
+ gemExquisite.mDisabledItems.add(aMaterial);
+ }
+ }
+ }
+ for (IMaterialHandler aRegistrator : Materials.mMaterialHandlers) {
+ aRegistrator.onComponentInit();
+ }
+ for (Materials aMaterial : Materials.values()) {
+ if (aMaterial.mMetaItemSubID > 0) {
+ for (IMaterialHandler aRegistrator : Materials.mMaterialHandlers) {
+ aRegistrator.onComponentIteration(aMaterial);
+ }
+ if (enablePerItemSettings) {
+ StringBuilder aConfigPathSB = new StringBuilder();
+ aConfigPathSB.append("materialcomponents.").append(aMaterial.mConfigSection).append(".").append(aMaterial.mName);
+ String aConfigPath = aConfigPathSB.toString();
+ for (OrePrefixes aPrefix : mPreventableComponents) {
+ boolean aEnableComponent = GregTech_API.sMaterialComponents.get(aConfigPath, aPrefix.toString(), !aPrefix.mDisabledItems.contains(aMaterial));
+ if (!aEnableComponent) { //Disable component if false and is not already in disabled list
+ aPrefix.disableComponent(aMaterial);
+ } else if (aEnableComponent) { //Enable component if true and is not already in enabled list
+ aPrefix.enableComponent(aMaterial);
+ }
+ }
+ aConfigPathSB.setLength(0);
+ }
+ }
+ }
+ }
+
+ public void enableComponent(Materials aMaterial) {
+ if (this.mDisabledItems.contains(aMaterial)) this.mDisabledItems.remove(aMaterial);
+ }
+
+ public void disableComponent(Materials aMaterial) {
+ if (!this.mDisabledItems.contains(aMaterial)) this.mDisabledItems.add(aMaterial);
+ }
+
public static OrePrefixes getOrePrefix(String aOre) {
for (OrePrefixes tPrefix : values())
if (aOre.startsWith(tPrefix.toString())) {
@@ -681,7 +865,7 @@ public enum OrePrefixes {
}
public boolean doGenerateItem(Materials aMaterial) {
- return aMaterial != null && aMaterial != Materials._NULL && ((aMaterial.mTypes & mMaterialGenerationBits) != 0 || mGeneratedItems.contains(aMaterial)) && !mNotGeneratedItems.contains(aMaterial) && (mCondition == null || mCondition.isTrue(aMaterial));
+ return aMaterial != null && aMaterial != Materials._NULL && ((aMaterial.mTypes & mMaterialGenerationBits) != 0 || mGeneratedItems.contains(aMaterial) /*|| mDynamicItems.contains(aMaterial)*/) && !mNotGeneratedItems.contains(aMaterial) && !mDisabledItems.contains(aMaterial) && (mCondition == null || mCondition.isTrue(aMaterial));
}
public boolean ignoreMaterials(Materials... aMaterials) {
@@ -705,12 +889,13 @@ public enum OrePrefixes {
}
public void processOre(Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) {
- if (aMaterial != null && (aMaterial != Materials._NULL || mIsSelfReferencing || !mIsMaterialBased) && GT_Utility.isStackValid(aStack))
+ if (aMaterial != null && (aMaterial != Materials._NULL || mIsSelfReferencing || !mIsMaterialBased) && GT_Utility.isStackValid(aStack)) {
+ //if (Materials.mPreventableComponents.contains(this) && !this.mDynamicItems.contains(aMaterial)) return;
for (IOreRecipeRegistrator tRegistrator : mOreProcessing) {
- if (D2)
- GT_Log.ore.println("Processing '" + aOreDictName + "' with the Prefix '" + name() + "' and the Material '" + aMaterial.name() + "' at " + GT_Utility.getClassName(tRegistrator));
+ if (D2) GT_Log.ore.println("Processing '" + aOreDictName + "' with the Prefix '" + name() + "' and the Material '" + aMaterial.mName + "' at " + GT_Utility.getClassName(tRegistrator));
tRegistrator.registerOre(this, aMaterial, aOreDictName, aModName, GT_Utility.copyAmount(1, aStack));
}
+ }
}
public Object get(Object aMaterial) {
@@ -731,117 +916,133 @@ public enum OrePrefixes {
case crateGtPlate:
return mLocalizedMaterialPre + OrePrefixes.plate.getDefaultLocalNameForItem(aMaterial);
}
- switch (aMaterial) {
- case Glass:
+ switch (aMaterial.mName) {
+ case "Glass":
if (name().startsWith("gem")) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Crystal";
if (name().startsWith("plate")) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Pane";
break;
- case InfusedAir:
- case InfusedDull:
- case InfusedEarth:
- case InfusedEntropy:
- case InfusedFire:
- case InfusedOrder:
- case InfusedVis:
- case InfusedWater:
- if (name().startsWith("gem")) return mLocalizedMaterialPre + "Shard of " + aMaterial.mDefaultLocalName;
- if (name().startsWith("crystal"))
- return mLocalizedMaterialPre + "Shard of " + aMaterial.mDefaultLocalName;
- if (name().startsWith("plate"))
- return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Crystal Plate";
- if (name().startsWith("dust"))
- return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Crystal Powder";
- if (this == OrePrefixes.crushedCentrifuged)
- return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Crystals";
- if (this == OrePrefixes.crushedPurified)
- return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Crystals";
- if (this == OrePrefixes.crushed)
- return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Crystals";
- break;
- case Wheat:
+ case "Wheat":
if (name().startsWith("dust")) return mLocalizedMaterialPre + "Flour";
break;
- case Ice:
+ case "Ice":
if (name().startsWith("dust")) return mLocalizedMaterialPre + "Crushed Ice";
break;
- case Wood:
- case WoodSealed:
+ case "Wood":
+ case "WoodSealed":
if (name().startsWith("bolt")) return "Short " + aMaterial.mDefaultLocalName + " Stick";
if (name().startsWith("stick")) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Stick";
if (name().startsWith("dust")) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Pulp";
if (name().startsWith("nugget")) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Chip";
if (name().startsWith("plate")) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Plank";
break;
- case Plastic:
- case Rubber:
+ case "Plastic":
+ case "Rubber":
+ case "Polyethylene":
+ case "Epoxid":
+ case "Silicone":
+ case "Polysiloxane":
+ case "Polycaprolactam":
+ case "Polytetrafluoroethylene":
+ case "PolyvinylChloride":
if (name().startsWith("dust")) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Pulp";
if (name().startsWith("plate")) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Sheet";
if (name().startsWith("ingot")) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Bar";
if (name().startsWith("nugget")) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Chip";
if (name().startsWith("foil")) return "Thin " + aMaterial.mDefaultLocalName + " Sheet";
break;
- case FierySteel:
+ case "FierySteel":
if (mIsContainer) return mLocalizedMaterialPre + "Fiery Blood" + mLocalizedMaterialPost;
break;
- case Steeleaf:
+ case "Steeleaf":
if (name().startsWith("ingot")) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName;
break;
- case Bone:
+ case "Bone":
if (name().startsWith("dust")) return mLocalizedMaterialPre + "Bone Meal";
break;
- case Blaze:
- case Milk:
- case Cocoa:
- case Chocolate:
- case Coffee:
- case Chili:
- case Cheese:
- case Snow:
+ case "Blaze":
+ case "Milk":
+ case "Cocoa":
+ case "Chocolate":
+ case "Coffee":
+ case "Chili":
+ case "Cheese":
+ case "Snow":
if (name().startsWith("dust")) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Powder";
break;
- case Paper:
+ case "Paper":
if (name().startsWith("dust")) return mLocalizedMaterialPre + "Chad";
- if (this == OrePrefixes.plate) return "Sheet of Paper";
- if (this == OrePrefixes.plateDouble) return "Paperboard";
- if (this == OrePrefixes.plateTriple) return "Carton";
- if (this == OrePrefixes.plateQuadruple) return "Cardboard";
- if (this == OrePrefixes.plateQuintuple) return "Thick Cardboard";
- if (this == OrePrefixes.plateDense) return "Strong Cardboard";
+ switch (this) {
+ case plate: return "Sheet of Paper";
+ case plateDouble: return "Paperboard";
+ case plateTriple: return "Carton";
+ case plateQuadruple: return "Cardboard";
+ case plateQuintuple: return "Thick Cardboard";
+ case plateDense: return "Strong Cardboard";
+ }
break;
- case MeatRaw:
+ case "MeatRaw":
if (name().startsWith("dust")) return mLocalizedMaterialPre + "Mince Meat";
break;
- case MeatCooked:
+ case "MeatCooked":
if (name().startsWith("dust")) return mLocalizedMaterialPre + "Cooked Mince Meat";
break;
- case Ash:
- case DarkAsh:
- case Gunpowder:
- case Sugar:
- case Salt:
- case RockSalt:
- case VolcanicAsh:
- case RareEarth:
+ case "Ash":
+ case "DarkAsh":
+ case "Gunpowder":
+ case "Sugar":
+ case "Salt":
+ case "RockSalt":
+ case "VolcanicAsh":
+ case "RareEarth":
if (name().startsWith("dust")) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName;
break;
- case Vermiculite:
- case Bentonite:
- case Kaolinite:
- case Talc:
- case BasalticMineralSand:
- case GraniticMineralSand:
- case GlauconiteSand:
- case CassiteriteSand:
- case GarnetSand:
- case QuartzSand:
- case Pitchblende:
- case FullersEarth:
+ case "Vermiculite":
+ case "Bentonite":
+ case "Kaolinite":
+ case "Talc":
+ case "BasalticMineralSand":
+ case "GraniticMineralSand":
+ case "GlauconiteSand":
+ case "CassiteriteSand":
+ case "GarnetSand":
+ case "QuartzSand":
+ case "Pitchblende":
+ case "FullersEarth":
if (name().startsWith("dust")) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName;
- if (this == OrePrefixes.crushedCentrifuged) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName;
- if (this == OrePrefixes.crushedPurified) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName;
- if (this == OrePrefixes.crushed) return "Ground " + aMaterial.mDefaultLocalName;
+ switch (this) {
+ case crushedCentrifuged:
+ case crushedPurified:
+ return mLocalizedMaterialPre + aMaterial.mDefaultLocalName;
+ case crushed:
+ return "Ground " + aMaterial.mDefaultLocalName;
+ }
break;
}
+ if (ProcessingModSupport.aEnableThaumcraftMats) {
+ switch (aMaterial.mName) {
+ case "InfusedAir":
+ case "InfusedDull":
+ case "InfusedEarth":
+ case "InfusedEntropy":
+ case "InfusedFire":
+ case "InfusedOrder":
+ case "InfusedVis":
+ case "InfusedWater":
+ if (name().startsWith("gem")) return mLocalizedMaterialPre + "Shard of " + aMaterial.mDefaultLocalName;
+ if (name().startsWith("crystal")) return mLocalizedMaterialPre + "Shard of " + aMaterial.mDefaultLocalName;
+ if (name().startsWith("plate"))
+ return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Crystal Plate";
+ if (name().startsWith("dust"))
+ return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Crystal Powder";
+ switch (this) {
+ case crushedCentrifuged:
+ case crushedPurified:
+ case crushed:
+ return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Crystals";
+ }
+ break;
+ }
+ }
// Use Standard Localization
return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + mLocalizedMaterialPost;
}