Search in sources :

Example 1 with EntityMinecartFurnace

use of net.minecraft.entity.item.EntityMinecartFurnace 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

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 EntityArrow (net.minecraft.entity.projectile.EntityArrow)1 EntityEgg (net.minecraft.entity.projectile.EntityEgg)1 EntityPotion (net.minecraft.entity.projectile.EntityPotion)1 EntitySnowball (net.minecraft.entity.projectile.EntitySnowball)1 Item (net.minecraft.item.Item)1