Search in sources :

Example 6 with EntityPotion

use of net.minecraft.entity.projectile.EntityPotion in project PneumaticCraft by MineMaarten.

the class TileEntityAirCannon method getPayloadEntity.

// warning: no null-check for inventory slot 0
private Entity getPayloadEntity() {
    if (getUpgrades(ItemMachineUpgrade.UPGRADE_DISPENSER_DAMAGE, getUpgradeSlots()) > 0) {
        Item item = inventory[0].getItem();
        if (item == Item.getItemFromBlock(Blocks.tnt)) {
            EntityTNTPrimed tnt = new EntityTNTPrimed(worldObj);
            tnt.fuse = 80;
            return tnt;
        } else if (item == Items.experience_bottle)
            return new EntityExpBottle(worldObj);
        else if (item == Items.potionitem) {
            EntityPotion potion = new EntityPotion(worldObj);
            potion.setPotionDamage(inventory[0].getItemDamage());
            return potion;
        } else if (item == Items.arrow)
            return new EntityArrow(worldObj);
        else if (item == Items.egg)
            return new EntityEgg(worldObj);
        else // EntitySmallFireball(worldObj);
        if (item == Items.snowball)
            return new EntitySnowball(worldObj);
        else if (item == Items.spawn_egg)
            return ItemMonsterPlacer.spawnCreature(worldObj, inventory[0].getItemDamage(), 0, 0, 0);
        else if (item == Items.minecart)
            return new EntityMinecartEmpty(worldObj);
        else if (item == Items.chest_minecart)
            return new EntityMinecartChest(worldObj);
        else if (item == Items.furnace_minecart)
            return new EntityMinecartFurnace(worldObj);
        else if (item == Items.hopper_minecart)
            return new EntityMinecartHopper(worldObj);
        else if (item == Items.tnt_minecart)
            return new EntityMinecartTNT(worldObj);
        else if (item == Items.boat)
            return new EntityBoat(worldObj);
    }
    EntityItem item = new EntityItem(worldObj);
    item.setEntityItemStack(inventory[0].copy());
    // 1200 ticks left to live, = 60s.
    item.age = 4800;
    // add
    item.lifespan += Math.min(getUpgrades(ItemMachineUpgrade.UPGRADE_ITEM_LIFE, getUpgradeSlots()) * 600, 4800);
    // min.
    return item;
}
Also used : EntityArrow(net.minecraft.entity.projectile.EntityArrow) EntityMinecartChest(net.minecraft.entity.item.EntityMinecartChest) EntityTNTPrimed(net.minecraft.entity.item.EntityTNTPrimed) EntityMinecartTNT(net.minecraft.entity.item.EntityMinecartTNT) EntityBoat(net.minecraft.entity.item.EntityBoat) EntityMinecartFurnace(net.minecraft.entity.item.EntityMinecartFurnace) EntityMinecartHopper(net.minecraft.entity.item.EntityMinecartHopper) EntityExpBottle(net.minecraft.entity.item.EntityExpBottle) EntityEgg(net.minecraft.entity.projectile.EntityEgg) Item(net.minecraft.item.Item) EntityItem(net.minecraft.entity.item.EntityItem) EntitySnowball(net.minecraft.entity.projectile.EntitySnowball) EntityPotion(net.minecraft.entity.projectile.EntityPotion) EntityMinecartEmpty(net.minecraft.entity.item.EntityMinecartEmpty) EntityItem(net.minecraft.entity.item.EntityItem)

Aggregations

EntityPotion (net.minecraft.entity.projectile.EntityPotion)6 ItemStack (net.minecraft.item.ItemStack)4 EntityArrow (net.minecraft.entity.projectile.EntityArrow)3 Entity (net.minecraft.entity.Entity)2 EntityPlayer (net.minecraft.entity.player.EntityPlayer)2 EntityFireball (net.minecraft.entity.projectile.EntityFireball)2 PotionType (net.minecraft.potion.PotionType)2 AxisAlignedBB (net.minecraft.util.math.AxisAlignedBB)2 EntityTakumiPotion (com.tntmodders.takumi.entity.item.EntityTakumiPotion)1 EntityLivingBase (net.minecraft.entity.EntityLivingBase)1 IProjectile (net.minecraft.entity.IProjectile)1 EntityBoat (net.minecraft.entity.item.EntityBoat)1 EntityExpBottle (net.minecraft.entity.item.EntityExpBottle)1 EntityItem (net.minecraft.entity.item.EntityItem)1 EntityMinecartChest (net.minecraft.entity.item.EntityMinecartChest)1 EntityMinecartEmpty (net.minecraft.entity.item.EntityMinecartEmpty)1 EntityMinecartFurnace (net.minecraft.entity.item.EntityMinecartFurnace)1 EntityMinecartHopper (net.minecraft.entity.item.EntityMinecartHopper)1 EntityMinecartTNT (net.minecraft.entity.item.EntityMinecartTNT)1 EntityTNTPrimed (net.minecraft.entity.item.EntityTNTPrimed)1