001 package net.minecraft.src; 002 003 import java.util.Random; 004 005 public class WeightedRandomChestContent extends WeightedRandomItem 006 { 007 private int field_76297_b; 008 private int field_76298_c; 009 private int field_76295_d; 010 private int field_76296_e; 011 012 public WeightedRandomChestContent(int par1, int par2, int par3, int par4, int par5) 013 { 014 super(par5); 015 this.field_76297_b = par1; 016 this.field_76298_c = par2; 017 this.field_76295_d = par3; 018 this.field_76296_e = par4; 019 } 020 021 public static void func_76293_a(Random par0Random, WeightedRandomChestContent[] par1ArrayOfWeightedRandomChestContent, TileEntityChest par2TileEntityChest, int par3) 022 { 023 for (int var4 = 0; var4 < par3; ++var4) 024 { 025 WeightedRandomChestContent var5 = (WeightedRandomChestContent)WeightedRandom.getRandomItem(par0Random, par1ArrayOfWeightedRandomChestContent); 026 int var6 = var5.field_76295_d + par0Random.nextInt(var5.field_76296_e - var5.field_76295_d + 1); 027 028 if (Item.itemsList[var5.field_76297_b].getItemStackLimit() >= var6) 029 { 030 par2TileEntityChest.setInventorySlotContents(par0Random.nextInt(par2TileEntityChest.getSizeInventory()), new ItemStack(var5.field_76297_b, var6, var5.field_76298_c)); 031 } 032 else 033 { 034 for (int var7 = 0; var7 < var6; ++var7) 035 { 036 par2TileEntityChest.setInventorySlotContents(par0Random.nextInt(par2TileEntityChest.getSizeInventory()), new ItemStack(var5.field_76297_b, 1, var5.field_76298_c)); 037 } 038 } 039 } 040 } 041 042 public static void func_76294_a(Random par0Random, WeightedRandomChestContent[] par1ArrayOfWeightedRandomChestContent, TileEntityDispenser par2TileEntityDispenser, int par3) 043 { 044 for (int var4 = 0; var4 < par3; ++var4) 045 { 046 WeightedRandomChestContent var5 = (WeightedRandomChestContent)WeightedRandom.getRandomItem(par0Random, par1ArrayOfWeightedRandomChestContent); 047 int var6 = var5.field_76295_d + par0Random.nextInt(var5.field_76296_e - var5.field_76295_d + 1); 048 049 if (Item.itemsList[var5.field_76297_b].getItemStackLimit() >= var6) 050 { 051 par2TileEntityDispenser.setInventorySlotContents(par0Random.nextInt(par2TileEntityDispenser.getSizeInventory()), new ItemStack(var5.field_76297_b, var6, var5.field_76298_c)); 052 } 053 else 054 { 055 for (int var7 = 0; var7 < var6; ++var7) 056 { 057 par2TileEntityDispenser.setInventorySlotContents(par0Random.nextInt(par2TileEntityDispenser.getSizeInventory()), new ItemStack(var5.field_76297_b, 1, var5.field_76298_c)); 058 } 059 } 060 } 061 } 062 }