diff options
author | DianeXD <64360468+DianeXD@users.noreply.github.com> | 2022-07-27 18:21:47 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-27 17:21:47 +0700 |
commit | 56d7f408a6fa7fe10bd243d6cb7bf175d00d3174 (patch) | |
tree | 3beaedc929186d36032ce9c8671283df6cb8906d /src/main/java/goodgenerator | |
parent | 4d797212c8dd41a7a5a3ce742ac6d872f9337395 (diff) | |
download | GT5-Unofficial-56d7f408a6fa7fe10bd243d6cb7bf175d00d3174.tar.gz GT5-Unofficial-56d7f408a6fa7fe10bd243d6cb7bf175d00d3174.tar.bz2 GT5-Unofficial-56d7f408a6fa7fe10bd243d6cb7bf175d00d3174.zip |
Some LES bug fixes (#57)
* Add mod check to prevent unexpected crash
* Fix wrong NBTbase type
* Fix some missing Essentia
* Change incorrect text
* careless
* Use the correct random function
Diffstat (limited to 'src/main/java/goodgenerator')
4 files changed, 52 insertions, 47 deletions
diff --git a/src/main/java/goodgenerator/blocks/tileEntity/EssentiaOutputHatch.java b/src/main/java/goodgenerator/blocks/tileEntity/EssentiaOutputHatch.java index b3f3f51aff..ba87a66af0 100644 --- a/src/main/java/goodgenerator/blocks/tileEntity/EssentiaOutputHatch.java +++ b/src/main/java/goodgenerator/blocks/tileEntity/EssentiaOutputHatch.java @@ -30,7 +30,7 @@ public class EssentiaOutputHatch extends TileThaumcraft implements IAspectContai public void readFromNBT(NBTTagCompound nbttagcompound) { super.readFromNBT(nbttagcompound); this.mAspects.aspects.clear(); - NBTTagList tlist = nbttagcompound.getTagList("Aspects", 69); + NBTTagList tlist = nbttagcompound.getTagList("Aspects", 10); for (int j = 0; j < tlist.tagCount(); ++j) { NBTTagCompound rs = tlist.getCompoundTagAt(j); if (rs.hasKey("key")) mAspects.add(Aspect.getAspect(rs.getString("key")), rs.getInteger("amount")); diff --git a/src/main/java/goodgenerator/blocks/tileEntity/LargeEssentiaSmeltery.java b/src/main/java/goodgenerator/blocks/tileEntity/LargeEssentiaSmeltery.java index ddf48a63ed..cfb2d0afc6 100644 --- a/src/main/java/goodgenerator/blocks/tileEntity/LargeEssentiaSmeltery.java +++ b/src/main/java/goodgenerator/blocks/tileEntity/LargeEssentiaSmeltery.java @@ -327,6 +327,7 @@ public class LargeEssentiaSmeltery extends GT_MetaTileEntity_TooltipMultiBlockBa private AspectList getEssentia(ItemStack itemStack, int amount) { AspectList aspectList = new AspectList(); AspectList aspects = ThaumcraftCraftingManager.getObjectTags(itemStack); + aspects = ThaumcraftCraftingManager.getBonusTags(itemStack, aspects); if (aspects != null && aspects.size() != 0 && aspects.getAspects()[0] != null) { for (int i = 0; i < amount; i++) aspectList.add(aspects); } else aspectList.add(Aspect.ENTROPY, amount); @@ -385,7 +386,7 @@ public class LargeEssentiaSmeltery extends GT_MetaTileEntity_TooltipMultiBlockBa this.nodeIncrease = aNBT.getInteger("nodeIncrease"); this.mOutputAspects.aspects.clear(); - NBTTagList tlist = aNBT.getTagList("Aspects", 69); + NBTTagList tlist = aNBT.getTagList("Aspects", 10); for (int j = 0; j < tlist.tagCount(); ++j) { NBTTagCompound rs = tlist.getCompoundTagAt(j); if (rs.hasKey("key")) @@ -444,7 +445,7 @@ public class LargeEssentiaSmeltery extends GT_MetaTileEntity_TooltipMultiBlockBa if (xstr.nextInt(100) < Math.max(100 - this.nodePurificationEfficiency, 0)) { final World WORLD = this.getBaseMetaTileEntity().getWorld(); GT_MetaTileEntity_Hatch_Muffler mufflerHatch = - this.mMufflerHatches.get(xstr.next(this.mMufflerHatches.size())); + this.mMufflerHatches.get(xstr.nextInt(this.mMufflerHatches.size())); int x = mufflerHatch.getBaseMetaTileEntity().getXCoord(); int y = mufflerHatch.getBaseMetaTileEntity().getYCoord(); int z = mufflerHatch.getBaseMetaTileEntity().getZCoord(); diff --git a/src/main/java/goodgenerator/crossmod/LoadedList.java b/src/main/java/goodgenerator/crossmod/LoadedList.java index 0079e60dcd..13e0ca38f5 100644 --- a/src/main/java/goodgenerator/crossmod/LoadedList.java +++ b/src/main/java/goodgenerator/crossmod/LoadedList.java @@ -12,6 +12,7 @@ public class LoadedList { public static boolean THAUMIC_TINKERER; public static boolean AUTOMAGY; public static boolean WITCHING_GADGETS; + public static boolean THAUMIC_ENERGISTICS; public static void init() { GTPP = Loader.isModLoaded("miscutils"); @@ -22,5 +23,6 @@ public class LoadedList { THAUMIC_TINKERER = Loader.isModLoaded("ThaumicTinkerer"); AUTOMAGY = Loader.isModLoaded("Automagy"); WITCHING_GADGETS = Loader.isModLoaded("WitchingGadgets"); + THAUMIC_ENERGISTICS = Loader.isModLoaded("thaumicenergistics"); } } diff --git a/src/main/java/goodgenerator/crossmod/thaumcraft/Research.java b/src/main/java/goodgenerator/crossmod/thaumcraft/Research.java index 3055db0e74..4a6de90abe 100644 --- a/src/main/java/goodgenerator/crossmod/thaumcraft/Research.java +++ b/src/main/java/goodgenerator/crossmod/thaumcraft/Research.java @@ -728,49 +728,51 @@ public class Research { thauminiteBlock) }); - ItemStack essentiaPump = LoadedList.WITCHING_GADGETS - ? GT_ModHandler.getModItem("WitchingGadgets", "WG_MetalDevice", 1, 0) - : new ItemStack(ConfigBlocks.blockTube, 1, 4); - ItemStack inter = LoadedList.THAUMIC_TINKERER - ? GT_ModHandler.getModItem("ThaumicTinkerer", "interface", 1, 0) - : new ItemStack(ConfigItems.itemResource, 1, 15); - GregTech_API.sThaumcraftCompat.addResearch( - "ESSENTIA_OUTPUT_HATCH_ME", - "Essentia Output Hatch (ME)", - "It must exist.", - new String[] {"INFUSION"}, - "ARTIFICE", - ItemRefer.Essentia_Output_Hatch_ME.get(1), - 3, - 0, - -15, - 3, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.ALIENIS, 10), - new TC_Aspects.TC_AspectStack(TC_Aspects.VINCULUM, 10), - new TC_Aspects.TC_AspectStack(TC_Aspects.STRONTIO, 10), - new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 10), - new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 10)), - null, - new Object[] { - "research.ESSENTIA_OUTPUT_HATCH_ME.page.0", - GregTech_API.sThaumcraftCompat.addInfusionRecipe( - "ESSENTIA_OUTPUT_HATCH_ME", - ItemRefer.Essentia_Output_Hatch.get(1), - new ItemStack[] { - GT_ModHandler.getModItem( - "thaumicenergistics", "thaumicenergistics.block.essentia.provider", 1), - new ItemStack(ConfigBlocks.blockEssentiaReservoir, 1, 0), - essentiaPump, - inter, - }, - ItemRefer.Essentia_Output_Hatch_ME.get(1), - 8, - Arrays.asList( - new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 256), - new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 256), - new TC_Aspects.TC_AspectStack(TC_Aspects.ALIENIS, 256), - new TC_Aspects.TC_AspectStack(TC_Aspects.STRONTIO, 256))) - }); + if (LoadedList.THAUMIC_ENERGISTICS) { + ItemStack essentiaPump = LoadedList.WITCHING_GADGETS + ? GT_ModHandler.getModItem("WitchingGadgets", "WG_MetalDevice", 1, 0) + : new ItemStack(ConfigBlocks.blockTube, 1, 4); + ItemStack inter = LoadedList.THAUMIC_TINKERER + ? GT_ModHandler.getModItem("ThaumicTinkerer", "interface", 1, 0) + : new ItemStack(ConfigItems.itemResource, 1, 15); + GregTech_API.sThaumcraftCompat.addResearch( + "ESSENTIA_OUTPUT_HATCH_ME", + "Essentia Output Hatch (ME)", + "It must exist.", + new String[] {"INFUSION"}, + "ARTIFICE", + ItemRefer.Essentia_Output_Hatch_ME.get(1), + 3, + 0, + -15, + 3, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.ALIENIS, 10), + new TC_Aspects.TC_AspectStack(TC_Aspects.VINCULUM, 10), + new TC_Aspects.TC_AspectStack(TC_Aspects.STRONTIO, 10), + new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 10), + new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 10)), + null, + new Object[] { + "research.ESSENTIA_OUTPUT_HATCH_ME.page.0", + GregTech_API.sThaumcraftCompat.addInfusionRecipe( + "ESSENTIA_OUTPUT_HATCH_ME", + ItemRefer.Essentia_Output_Hatch.get(1), + new ItemStack[] { + GT_ModHandler.getModItem( + "thaumicenergistics", "thaumicenergistics.block.essentia.provider", 1), + new ItemStack(ConfigBlocks.blockEssentiaReservoir, 1, 0), + essentiaPump, + inter, + }, + ItemRefer.Essentia_Output_Hatch_ME.get(1), + 8, + Arrays.asList( + new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 256), + new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 256), + new TC_Aspects.TC_AspectStack(TC_Aspects.ALIENIS, 256), + new TC_Aspects.TC_AspectStack(TC_Aspects.STRONTIO, 256))) + }); + } } } |