    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    }