001 package net.minecraft.dispenser;
002
003 import net.minecraft.item.ItemPotion;
004 import net.minecraft.item.ItemStack;
005 import net.minecraft.server.MinecraftServer;
006
007 public class BehaviorPotionDispense implements IBehaviorDispenseItem
008 {
009 /** Reference to the BehaviorDefaultDispenseItem object. */
010 private final BehaviorDefaultDispenseItem defaultItemDispenseBehavior;
011
012 /** Reference to the MinecraftServer object. */
013 final MinecraftServer mcServer;
014
015 public BehaviorPotionDispense(MinecraftServer par1)
016 {
017 this.mcServer = par1;
018 this.defaultItemDispenseBehavior = new BehaviorDefaultDispenseItem();
019 }
020
021 /**
022 * Dispenses the specified ItemStack from a dispenser.
023 */
024 public ItemStack dispense(IBlockSource par1IBlockSource, ItemStack par2ItemStack)
025 {
026 return ItemPotion.isSplash(par2ItemStack.getItemDamage()) ? (new BehaviorPotionDispenseLogic(this, par2ItemStack)).dispense(par1IBlockSource, par2ItemStack) : this.defaultItemDispenseBehavior.dispense(par1IBlockSource, par2ItemStack);
027 }
028 }