Use a non-invalid default dummy item in loot generator.

This commit is contained in:
Florian Nücke 2015-08-05 21:14:42 +02:00
parent fd6f06bae4
commit 201da35011

View File

@ -14,7 +14,6 @@ import li.cil.oc.api.fs.FileSystem
import li.cil.oc.common.init.Items
import li.cil.oc.util.Color
import net.minecraft.inventory.IInventory
import net.minecraft.item.Item
import net.minecraft.item.ItemStack
import net.minecraft.nbt.NBTTagCompound
import net.minecraft.util.WeightedRandomChestContent
@ -25,7 +24,15 @@ import net.minecraftforge.event.world.WorldEvent
import scala.collection.convert.WrapAsScala._
import scala.collection.mutable
object Loot extends WeightedRandomChestContent(new ItemStack(null: Item), 1, 1, Settings.get.lootProbability) {
class Loot extends WeightedRandomChestContent(api.Items.get(Constants.ItemName.Floppy).createItemStack(1), 1, 1, Settings.get.lootProbability) {
override def generateChestContent(random: Random, newInventory: IInventory) =
if (Loot.disksForSampling.nonEmpty)
ChestGenHooks.generateStacks(random, Loot.disksForSampling(random.nextInt(Loot.disksForSampling.length)),
theMinimumChanceToGenerateItem, theMaximumChanceToGenerateItem)
else Array.empty[ItemStack]
}
object Loot {
val containers = Array(
ChestGenHooks.DUNGEON_CHEST,
ChestGenHooks.PYRAMID_DESERT_CHEST,
@ -69,7 +76,7 @@ object Loot extends WeightedRandomChestContent(new ItemStack(null: Item), 1, 1,
def init() {
for (container <- containers) {
ChestGenHooks.addItem(container, Loot)
ChestGenHooks.addItem(container, new Loot())
}
val list = new java.util.Properties()
@ -138,10 +145,4 @@ object Loot extends WeightedRandomChestContent(new ItemStack(null: Item), 1, 1,
}
stack
}
override def generateChestContent(random: Random, newInventory: IInventory) =
if (disksForSampling.nonEmpty)
ChestGenHooks.generateStacks(random, disksForSampling(random.nextInt(disksForSampling.length)),
theMinimumChanceToGenerateItem, theMaximumChanceToGenerateItem)
else Array.empty[ItemStack]
}