public List<ItemStack> getItems()
	{
		// Drop air? I think not.
		if (item.getType() == Material.AIR)
			return null;
		
		// Calculate the number of items to create
		int count = amountDiff > 0 ? RandomUtil.i.nextInt(amountDiff + 1) + item.getAmount() : item.getAmount();
		int damage = damageDiff > 0 ? RandomUtil.i.nextInt(damageDiff + 1) + item.getDurability() : item.getDurability();
		
		// Make sure count is more than 0
		if (count <= 0)
			return null;
		
		// Create a list of the perfect size :)
		List<ItemStack> items = new ArrayList<ItemStack>(count / item.getType().getMaxStackSize() + 1);
		
		// Create the item stack/stacks
		while (count > 0)
		{
			// Clone our template
			ItemStack clone = item.clone();
			// Set an appropriate amount for the item stack
			clone.setAmount(count > item.getType().getMaxStackSize() ? item.getType().getMaxStackSize() : count);
			
			// Set the damage
			clone.setDurability((short) damage);
			
			items.add(clone);
			count -= item.getType().getMaxStackSize();
		}
		
		// Return the item in question
		return items;
	}