diff options
author | Alkalus <draknyte1@hotmail.com> | 2017-11-06 03:03:45 +1000 |
---|---|---|
committer | Alkalus <draknyte1@hotmail.com> | 2017-11-06 03:03:45 +1000 |
commit | 94c1bf6444c8aef0fd7be9ad5e6f81a85cf7cab1 (patch) | |
tree | 369a756872b1d3a990b9d4864528bd488e9cd401 /src/Java/gtPlusPlus/preloader | |
parent | 7c1ad6437f46b1f43921839f009722bcc2a2e96f (diff) | |
download | GT5-Unofficial-94c1bf6444c8aef0fd7be9ad5e6f81a85cf7cab1.tar.gz GT5-Unofficial-94c1bf6444c8aef0fd7be9ad5e6f81a85cf7cab1.tar.bz2 GT5-Unofficial-94c1bf6444c8aef0fd7be9ad5e6f81a85cf7cab1.zip |
$ Another NPE catch on the ASM.
Diffstat (limited to 'src/Java/gtPlusPlus/preloader')
-rw-r--r-- | src/Java/gtPlusPlus/preloader/Preloader_GT_OreDict.java | 63 |
1 files changed, 38 insertions, 25 deletions
diff --git a/src/Java/gtPlusPlus/preloader/Preloader_GT_OreDict.java b/src/Java/gtPlusPlus/preloader/Preloader_GT_OreDict.java index a8db2e3fe5..5b9fac6b7b 100644 --- a/src/Java/gtPlusPlus/preloader/Preloader_GT_OreDict.java +++ b/src/Java/gtPlusPlus/preloader/Preloader_GT_OreDict.java @@ -1,43 +1,56 @@ package gtPlusPlus.preloader; +import org.apache.logging.log4j.Level; + +import cpw.mods.fml.relauncher.FMLRelaunchLog; import gregtech.common.items.GT_MetaGenerated_Item_01; +import gtPlusPlus.core.util.Utils; +import gtPlusPlus.core.util.item.ItemUtils; import net.minecraft.item.ItemStack; public class Preloader_GT_OreDict { public static boolean shouldPreventRegistration(String string, ItemStack circuit) { if (CORE_Preloader.enableOldGTcircuits){ - if (circuit != null){ - int damageValue = circuit.getItemDamage() - 32000; - if (circuit.getItem() instanceof GT_MetaGenerated_Item_01) { // 700-720 - if (damageValue >= 700 && damageValue <= 720) { - return true; + try { + if (circuit != null && ItemUtils.getModId(circuit).toLowerCase().equals("gregtech")){ + int damageValue = circuit.getItemDamage() - 32000; + if (circuit.getItem() instanceof GT_MetaGenerated_Item_01) { // 700-720 + if (damageValue >= 700 && damageValue <= 720) { + return true; + } } - } - else { - try { - if (Class.forName("gregtech.common.items.GT_MetaGenerated_Item_03") != null) { // 6/11/12/14/16/20/30-57/69-73/79-96 - Class<?> MetaItem03 = Class.forName("gregtech.common.items.GT_MetaGenerated_Item_03"); - if (isInstanceOf(MetaItem03, circuit.getItem())) { - if (damageValue == 6 || damageValue == 7 || damageValue == 11 || damageValue == 12 || damageValue == 14 - || damageValue == 16 || damageValue == 20 || damageValue == 21 || damageValue == 22) { - return true; - } - else if (damageValue >= 30 && damageValue <= 57) { - return true; - } - else if (damageValue >= 69 && damageValue <= 73) { - return true; - } - else if (damageValue >= 78 && damageValue <= 96) { - return true; + else { + try { + if (Class.forName("gregtech.common.items.GT_MetaGenerated_Item_03") != null) { // 6/11/12/14/16/20/30-57/69-73/79-96 + Class<?> MetaItem03 = Class.forName("gregtech.common.items.GT_MetaGenerated_Item_03"); + if (isInstanceOf(MetaItem03, circuit.getItem())) { + if (damageValue == 6 || damageValue == 7 || damageValue == 11 || damageValue == 12 || damageValue == 14 + || damageValue == 16 || damageValue == 20 || damageValue == 21 || damageValue == 22) { + return true; + } + else if (damageValue >= 30 && damageValue <= 57) { + return true; + } + else if (damageValue >= 69 && damageValue <= 73) { + return true; + } + else if (damageValue >= 78 && damageValue <= 96) { + return true; + } } } } + catch (ClassNotFoundException e) { + } } - catch (ClassNotFoundException e) { - } } + } catch (Throwable e) { + FMLRelaunchLog.log("[GT++ ASM] OreDictTransformer", Level.INFO, "A mod tried to register an invalid item with the OreDictonary."); + if (circuit != null){ + FMLRelaunchLog.log("[GT++ ASM] OreDictTransformer", Level.INFO, "Please report this issue to the authors of "+ItemUtils.getModId(circuit)); + } + FMLRelaunchLog.log("[GT++ ASM] OreDictTransformer", Level.INFO, e.getMessage()); } } return false; |