package net.minecraft.entity.ai;
import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.item.EntityMinecart;
import net.minecraft.init.Blocks;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.MobSpawnerBaseLogic;
import net.minecraft.util.BlockPos;
import net.minecraft.world.World;
public class EntityMinecartMobSpawner extends EntityMinecart
{
/** Mob spawner logic for this spawner minecart. */
private final MobSpawnerBaseLogic mobSpawnerLogic = new MobSpawnerBaseLogic()
{
private static final String __OBFID = "CL_00001679";
public void func_98267_a(int p_98267_1_)
{
EntityMinecartMobSpawner.this.worldObj.setEntityState(EntityMinecartMobSpawner.this, (byte)p_98267_1_);
}
public World getSpawnerWorld()
{
return EntityMinecartMobSpawner.this.worldObj;
}
public BlockPos func_177221_b()
{
return new BlockPos(EntityMinecartMobSpawner.this);
}
};
private static final String __OBFID = "CL_00001678";
public EntityMinecartMobSpawner(World worldIn)
{
super(worldIn);
}
public EntityMinecartMobSpawner(World worldIn, double p_i1726_2_, double p_i1726_4_, double p_i1726_6_)
{
super(worldIn, p_i1726_2_, p_i1726_4_, p_i1726_6_);
}
public EntityMinecart.EnumMinecartType func_180456_s()
{
return EntityMinecart.EnumMinecartType.SPAWNER;
}
public IBlockState func_180457_u()
{
return Blocks.mob_spawner.getDefaultState();
}
/**
* (abstract) Protected helper method to read subclass entity data from NBT.
*/
protected void readEntityFromNBT(NBTTagCompound tagCompund)
{
super.readEntityFromNBT(tagCompund);
this.mobSpawnerLogic.readFromNBT(tagCompund);
}
/**
* (abstract) Protected helper method to write subclass entity data to NBT.
*/
protected void writeEntityToNBT(NBTTagCompound tagCompound)
{
super.writeEntityToNBT(tagCompound);
this.mobSpawnerLogic.writeToNBT(tagCompound);
}
/**
* Called to update the entity's position/logic.
*/
public void onUpdate()
{
super.onUpdate();
this.mobSpawnerLogic.updateSpawner();
}
}