diff options
author | Alkalus <3060479+draknyte1@users.noreply.github.com> | 2019-04-18 17:21:03 +1000 |
---|---|---|
committer | Alkalus <3060479+draknyte1@users.noreply.github.com> | 2019-04-18 17:21:03 +1000 |
commit | 9667ce84aa56b1a1e41d8ac8188d0d41c682914e (patch) | |
tree | ba7029507b386ea7acea90d76dbb45e6cf23c892 /src/Java/gtPlusPlus/xmod | |
parent | 90f2e5a230cfad500a06e09a5a1297dd3efb02fe (diff) | |
download | GT5-Unofficial-9667ce84aa56b1a1e41d8ac8188d0d41c682914e.tar.gz GT5-Unofficial-9667ce84aa56b1a1e41d8ac8188d0d41c682914e.tar.bz2 GT5-Unofficial-9667ce84aa56b1a1e41d8ac8188d0d41c682914e.zip |
+ Basic loot pool for Deep Earth Drilling Platform.
+ Added Runite and Granite Ores.
Diffstat (limited to 'src/Java/gtPlusPlus/xmod')
2 files changed, 149 insertions, 3 deletions
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/bedrock/GregtechMetaTileEntity_BedrockMiningPlatformBase.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/bedrock/GregtechMetaTileEntity_BedrockMiningPlatformBase.java index 9ac67cf874..3d2094c8fa 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/bedrock/GregtechMetaTileEntity_BedrockMiningPlatformBase.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/bedrock/GregtechMetaTileEntity_BedrockMiningPlatformBase.java @@ -27,7 +27,10 @@ import gtPlusPlus.api.objects.Logger; import gtPlusPlus.api.objects.minecraft.BlockPos; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; +import gtPlusPlus.core.material.ELEMENT; import gtPlusPlus.core.material.Material; +import gtPlusPlus.core.material.ORES; +import gtPlusPlus.core.util.math.MathUtils; import gtPlusPlus.core.util.minecraft.FluidUtils; import gtPlusPlus.core.util.minecraft.ItemUtils; import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; @@ -156,8 +159,23 @@ public abstract class GregtechMetaTileEntity_BedrockMiningPlatformBase extends G this.putMiningPipesFromInputsInController(); if (!this.tryConsumeDrillingFluid()) { + Logger.INFO("No drilling Fluid."); return false; } + + if (this.mRuntime % 2 == 0) { + if (!this.tryConsumePyrotheum()) { + Logger.INFO("No tryConsumePyrotheum Fluid."); + return false; + } + } + else { + if (!this.tryConsumeCryotheum()) { + Logger.INFO("No tryConsumeCryotheum Fluid."); + return false; + } + } + if (this.oreBlockPositions.isEmpty()) { // Hit bedrock Either retract pipe or Dig! @@ -171,6 +189,134 @@ public abstract class GregtechMetaTileEntity_BedrockMiningPlatformBase extends G } // Full Power! else { + + //We assume this drill head is in a supported location at Y 5 or less. It should also be touching bedrock. + ItemStack[] aOutputs = new ItemStack[] { + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().IRON.getOre(1), + ELEMENT.getInstance().COPPER.getOre(1), + ELEMENT.getInstance().COPPER.getOre(1), + ELEMENT.getInstance().COPPER.getOre(1), + ELEMENT.getInstance().COPPER.getOre(1), + ELEMENT.getInstance().COPPER.getOre(1), + ELEMENT.getInstance().COPPER.getOre(1), + ELEMENT.getInstance().COPPER.getOre(1), + ELEMENT.getInstance().COPPER.getOre(1), + ELEMENT.getInstance().COPPER.getOre(1), + ELEMENT.getInstance().COPPER.getOre(1), + ELEMENT.getInstance().COPPER.getOre(1), + ELEMENT.getInstance().COPPER.getOre(1), + ELEMENT.getInstance().COPPER.getOre(1), + ELEMENT.getInstance().GOLD.getOre(1), + ELEMENT.getInstance().GOLD.getOre(1), + ELEMENT.getInstance().GOLD.getOre(1), + ELEMENT.getInstance().GOLD.getOre(1), + ELEMENT.getInstance().GOLD.getOre(1), + ELEMENT.getInstance().GOLD.getOre(1), + ELEMENT.getInstance().GOLD.getOre(1), + ELEMENT.getInstance().SILVER.getOre(1), + ELEMENT.getInstance().SILVER.getOre(1), + ELEMENT.getInstance().SILVER.getOre(1), + ELEMENT.getInstance().SILVER.getOre(1), + ELEMENT.getInstance().ALUMINIUM.getOre(1), + ELEMENT.getInstance().ALUMINIUM.getOre(1), + ELEMENT.getInstance().ALUMINIUM.getOre(1), + ELEMENT.getInstance().ALUMINIUM.getOre(1), + ELEMENT.getInstance().ALUMINIUM.getOre(1), + ELEMENT.getInstance().ALUMINIUM.getOre(1), + ELEMENT.getInstance().TIN.getOre(1), + ELEMENT.getInstance().TIN.getOre(1), + ELEMENT.getInstance().TIN.getOre(1), + ELEMENT.getInstance().TIN.getOre(1), + ELEMENT.getInstance().TIN.getOre(1), + ELEMENT.getInstance().TIN.getOre(1), + ELEMENT.getInstance().TIN.getOre(1), + ELEMENT.getInstance().ZINC.getOre(1), + ELEMENT.getInstance().ZINC.getOre(1), + ELEMENT.getInstance().ZINC.getOre(1), + ELEMENT.getInstance().ZINC.getOre(1), + ELEMENT.getInstance().NICKEL.getOre(1), + ELEMENT.getInstance().NICKEL.getOre(1), + ELEMENT.getInstance().NICKEL.getOre(1), + ELEMENT.getInstance().NICKEL.getOre(1), + ItemUtils.getItemStackOfAmountFromOreDict("oreBauxite", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreBauxite", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreBauxite", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreRedstone", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreRedstone", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreRedstone", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreRedstone", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreRedstone", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreRedstone", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreDiamond", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreDiamond", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreDiamond", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreDiamond", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreDiamond", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreDiamond", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreDiamond", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreEmerald", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreEmerald", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreEmerald", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreEmerald", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreEmerald", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreEmerald", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreEmerald", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreRuby", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreRuby", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreRuby", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreSapphire", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreSapphire", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreSapphire", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreThorium", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreThorium", 1), + ItemUtils.getItemStackOfAmountFromOreDict("oreTungstate", 1), + ELEMENT.STANDALONE.RUNITE.getOre(1), + ELEMENT.STANDALONE.GRANITE.getOre(1), + ORES.AGARDITE_CD.getOre(1), + ORES.ALBURNITE.getOre(1), + ORES.CERITE.getOre(1), + ORES.FLUORCAPHITE.getOre(1), + ORES.HIBONITE.getOre(1), + ORES.MIESSIITE.getOre(1), + ORES.ZIMBABWEITE.getOre(1), + ORES.SAMARSKITE_YB.getOre(1), + }; + + int aChance = MathUtils.randInt(0, 10000); + if (aChance <= 100) { + ItemStack aChance1 = ItemUtils.getSimpleStack(aOutputs[MathUtils.randInt(0, aOutputs.length-1)], MathUtils.randInt(0, 3)); + if (ItemUtils.checkForInvalidItems(aChance1)) { + this.addOutput(aChance1); + } + ItemStack aChance2 = ItemUtils.getSimpleStack(aOutputs[MathUtils.randInt(0, aOutputs.length-1)], MathUtils.randInt(0, 3)); + if (ItemUtils.checkForInvalidItems(aChance2)) { + this.addOutput(aChance2); + } + ItemStack aChance3 = ItemUtils.getSimpleStack(aOutputs[MathUtils.randInt(0, aOutputs.length-1)], MathUtils.randInt(0, 3)); + if (ItemUtils.checkForInvalidItems(aChance3)) { + this.addOutput(aChance3); + } + } didWork[g] = true; } } diff --git a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Ore.java b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Ore.java index 15627a827f..1cb999241a 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Ore.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Ore.java @@ -107,7 +107,7 @@ public class RecipeGen_Ore extends RecipeGen_Base { //If Fourth Output has no solid output, try the Fifth (If it exists) if (!bonusB.hasSolidForm() && material.getComposites().size() >= 5 && material.getComposites().get(4) != null) { bonusB = material.getComposites().get(4).getStackMaterial(); - //If Fifth Output has no solid output, default out to Chrome. + //If Fifth Output has no solid output, default out to Stone dust. if (!bonusB.hasSolidForm()) { allFailed = true; bonusB = mStone; @@ -127,11 +127,11 @@ public class RecipeGen_Ore extends RecipeGen_Base { //Default out if it's made of fluids or some shit. if (bonusA == null) { - bonusA = tVoltageMultiplier <= 100 ? material : mStone; + bonusA = tVoltageMultiplier > 100 ? material : mStone; } //Default out if it's made of fluids or some shit. if (allFailed || bonusB == null) { - bonusB = tVoltageMultiplier <= 100 ? material : mStone; + bonusB = tVoltageMultiplier > 100 ? material : mStone; } AutoMap<Pair<Integer, Material>> componentMap = new AutoMap<Pair<Integer, Material>>(); |