diff options
author | bartimaeusnek <33183715+bartimaeusnek@users.noreply.github.com> | 2018-10-05 18:47:57 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-05 18:47:57 +0200 |
commit | 3505fc2eeb85a6916eb70e91ade5c21979abefbf (patch) | |
tree | 730fae2ecdffdc45352b57ad160184fca5e1e413 /src/main/java/gregtech/api/util/GT_OreDictUnificator.java | |
parent | 8703aa131dce4eb5dea84c144c4e67532d04b180 (diff) | |
parent | e10456295def2ea5bacede8ab954524aa03165a4 (diff) | |
download | GT5-Unofficial-3505fc2eeb85a6916eb70e91ade5c21979abefbf.tar.gz GT5-Unofficial-3505fc2eeb85a6916eb70e91ade5c21979abefbf.tar.bz2 GT5-Unofficial-3505fc2eeb85a6916eb70e91ade5c21979abefbf.zip |
Merge pull request #154 from GTNewHorizons/bmf2
try for force unification of assembler recipes
Diffstat (limited to 'src/main/java/gregtech/api/util/GT_OreDictUnificator.java')
-rw-r--r-- | src/main/java/gregtech/api/util/GT_OreDictUnificator.java | 45 |
1 files changed, 33 insertions, 12 deletions
diff --git a/src/main/java/gregtech/api/util/GT_OreDictUnificator.java b/src/main/java/gregtech/api/util/GT_OreDictUnificator.java index 33149eb801..9d9b45cecf 100644 --- a/src/main/java/gregtech/api/util/GT_OreDictUnificator.java +++ b/src/main/java/gregtech/api/util/GT_OreDictUnificator.java @@ -165,16 +165,21 @@ public class GT_OreDictUnificator { if (!GT_Utility.areStacksEqual(tStack0, tStack1)) { GT_ItemStack tGTStack1 = new GT_ItemStack(tStack1); List<ItemStack> list = sUnificationTable.get(tGTStack1); - if (list == null) sUnificationTable.put(tGTStack1, list = new ArrayList<ItemStack>()); - if (!list.contains(tStack0)) list.add(tStack0); + if (list == null) + sUnificationTable.put(tGTStack1, list = new ArrayList<ItemStack>()); + if (!list.contains(tStack0)) + list.add(tStack0); } } } } ItemStack[] aStacks = {}; - if (obj instanceof ItemStack) aStacks = new ItemStack[]{(ItemStack) obj}; - else if (obj instanceof ItemStack[]) aStacks = (ItemStack[]) obj; - else if (obj instanceof List) aStacks = (ItemStack[]) ((List)obj).toArray(new ItemStack[0]); + if (obj instanceof ItemStack) + aStacks = new ItemStack[]{(ItemStack) obj}; + else if (obj instanceof ItemStack[]) + aStacks = (ItemStack[]) obj; + else if (obj instanceof List) aStacks = (ItemStack[]) + ((List)obj).toArray(new ItemStack[0]); List<ItemStack> rList = new ArrayList<ItemStack>(); for (ItemStack aStack : aStacks) { rList.add(aStack); @@ -230,7 +235,8 @@ public class GT_OreDictUnificator { } public static void addAssociation(OrePrefixes aPrefix, Materials aMaterial, ItemStack aStack, boolean aBlackListed) { - if (aPrefix == null || aMaterial == null || GT_Utility.isStackInvalid(aStack)) return; + if (aPrefix == null || aMaterial == null || GT_Utility.isStackInvalid(aStack)) + return; if (Items.feather.getDamage(aStack) == W) for (byte i = 0; i < 16; i++) setItemData(GT_Utility.copyAmountAndMetaData(1, i, aStack), new ItemData(aPrefix, aMaterial, aBlackListed)); setItemData(aStack, new ItemData(aPrefix, aMaterial, aBlackListed)); @@ -256,8 +262,13 @@ public class GT_OreDictUnificator { } public static boolean isItemStackDye(ItemStack aStack) { - if (GT_Utility.isStackInvalid(aStack)) return false; - for (Dyes tDye : Dyes.VALUES) if (isItemStackInstanceOf(aStack, tDye.toString())) return true; + if (GT_Utility.isStackInvalid(aStack)) + return false; + + for (Dyes tDye : Dyes.VALUES) + if (isItemStackInstanceOf(aStack, tDye.toString())) + return true; + return false; } @@ -266,11 +277,20 @@ public class GT_OreDictUnificator { } public static boolean registerOre(Object aName, ItemStack aStack) { - if (aName == null || GT_Utility.isStackInvalid(aStack)) return false; + if (aName == null || GT_Utility.isStackInvalid(aStack)) + return false; + String tName = aName.toString(); - if (GT_Utility.isStringInvalid(tName)) return false; + + if (GT_Utility.isStringInvalid(tName)) + return false; + ArrayList<ItemStack> tList = getOres(tName); - for (int i = 0; i < tList.size(); i++) if (GT_Utility.areStacksEqual(tList.get(i), aStack, true)) return false; + + for (int i = 0; i < tList.size(); i++) + if (GT_Utility.areStacksEqual(tList.get(i), aStack, true)) + return false; + isRegisteringOre++; OreDictionary.registerOre(tName, GT_Utility.copyAmount(1, aStack)); isRegisteringOre--; @@ -286,7 +306,8 @@ public class GT_OreDictUnificator { } public static void resetUnificationEntries() { - for (ItemData tPrefixMaterial : sItemStack2DataMap.values()) tPrefixMaterial.mUnificationTarget = null; + for (ItemData tPrefixMaterial : sItemStack2DataMap.values()) + tPrefixMaterial.mUnificationTarget = null; } public static ItemStack getGem(MaterialStack aMaterial) { |