Fixed Blast Mining not giving triple drop when it should

This commit is contained in:
bm01
2012-04-29 01:59:56 +02:00
parent f30debd1b3
commit 9b438d0caa
2 changed files with 9 additions and 12 deletions

View File

@ -41,22 +41,18 @@ public class BlastMining {
* @return A list of blocks dropped from the explosion
*/
private static List<Block> explosionYields(List<Block> ores, List<Block> debris, float yield, float oreBonus, float debrisReduction, int extraDrops) {
Iterator<Block> iterator2 = ores.iterator();
Iterator<Block> oresIterator = ores.iterator();
List<Block> blocksDropped = new ArrayList<Block>();
while (iterator2.hasNext()) {
Block temp = iterator2.next();
while (oresIterator.hasNext()) {
Block temp = oresIterator.next();
if (random.nextFloat() < (yield + oreBonus)) {
blocksDropped.add(temp);
Mining.miningDrops(temp);
if (!temp.hasMetadata("mcmmoPlacedBlock")) {
if (extraDrops == 2) {
blocksDropped.add(temp);
Mining.miningDrops(temp);
}
if (extraDrops == 3) {
for (int i = 1 ; i < extraDrops ; i++) {
blocksDropped.add(temp);
Mining.miningDrops(temp);
}
@ -64,11 +60,11 @@ public class BlastMining {
}
}
if (yield - debrisReduction != 0) {
Iterator<Block> iterator3 = debris.iterator();
if (yield - debrisReduction > 0) {
Iterator<Block> debrisIterator = debris.iterator();
while (iterator3.hasNext()) {
Block temp = iterator3.next();
while (debrisIterator.hasNext()) {
Block temp = debrisIterator.next();
if (random.nextFloat() < (yield - debrisReduction))
Mining.miningDrops(temp);