Cleanup enum container implementation
This commit is contained in:
parent
6a4c56293b
commit
1aad7ee531
|
@ -98,9 +98,13 @@ public class BlockInversionPillar extends BlockEnumContainer<EnumSubWillType> im
|
|||
}
|
||||
|
||||
@Override
|
||||
public TileEntity createNewTileEntity(World worldIn, int meta)
|
||||
{
|
||||
return new TileInversionPillar(EnumDemonWillType.values()[meta % 5]);
|
||||
public boolean hasTileEntity(IBlockState state) {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TileEntity createTileEntity(World world, IBlockState state) {
|
||||
return new TileInversionPillar(state.getValue(getProperty()).getType());
|
||||
}
|
||||
|
||||
protected BlockStateContainer createStateContainer()
|
||||
|
|
|
@ -237,8 +237,12 @@ public class BlockMimic extends BlockEnumContainer<EnumMimic> implements IVarian
|
|||
}
|
||||
|
||||
@Override
|
||||
public TileEntity createNewTileEntity(World worldIn, int meta)
|
||||
{
|
||||
public boolean hasTileEntity(IBlockState state) {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TileEntity createTileEntity(World world, IBlockState state) {
|
||||
return new TileMimic();
|
||||
}
|
||||
|
||||
|
|
|
@ -109,9 +109,13 @@ public class BlockRitualController extends BlockEnumContainer<EnumRitualControll
|
|||
}
|
||||
|
||||
@Override
|
||||
public TileEntity createNewTileEntity(World world, int meta)
|
||||
{
|
||||
return meta == 0 ? (new TileMasterRitualStone()) : (new TileImperfectRitualStone());
|
||||
public boolean hasTileEntity(IBlockState state) {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TileEntity createTileEntity(World world, IBlockState state) {
|
||||
return state.getValue(getProperty()) == EnumRitualController.MASTER ? new TileMasterRitualStone() : new TileImperfectRitualStone();
|
||||
}
|
||||
|
||||
// IVariantProvider
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package WayofTime.bloodmagic.block.base;
|
||||
|
||||
import net.minecraft.block.ITileEntityProvider;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
|
@ -8,13 +7,11 @@ import net.minecraft.util.IStringSerializable;
|
|||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public abstract class BlockEnumContainer<E extends Enum<E> & IStringSerializable> extends BlockEnum<E> implements ITileEntityProvider
|
||||
public abstract class BlockEnumContainer<E extends Enum<E> & IStringSerializable> extends BlockEnum<E>
|
||||
{
|
||||
public BlockEnumContainer(Material material, Class<E> enumClass, String propName)
|
||||
{
|
||||
super(material, enumClass, propName);
|
||||
|
||||
this.isBlockContainer = true;
|
||||
}
|
||||
|
||||
public BlockEnumContainer(Material material, Class<E> enumClass)
|
||||
|
@ -22,6 +19,12 @@ public abstract class BlockEnumContainer<E extends Enum<E> & IStringSerializable
|
|||
this(material, enumClass, "type");
|
||||
}
|
||||
|
||||
@Override
|
||||
public abstract boolean hasTileEntity(IBlockState state);
|
||||
|
||||
@Override
|
||||
public abstract TileEntity createTileEntity(World world, IBlockState state);
|
||||
|
||||
@Override
|
||||
public void breakBlock(World worldIn, BlockPos pos, IBlockState state)
|
||||
{
|
||||
|
|
|
@ -2,6 +2,7 @@ package WayofTime.bloodmagic.block.enums;
|
|||
|
||||
import java.util.Locale;
|
||||
|
||||
import WayofTime.bloodmagic.api.soul.EnumDemonWillType;
|
||||
import net.minecraft.util.IStringSerializable;
|
||||
|
||||
public enum EnumSubWillType implements IStringSerializable
|
||||
|
@ -23,4 +24,8 @@ public enum EnumSubWillType implements IStringSerializable
|
|||
{
|
||||
return this.toString();
|
||||
}
|
||||
|
||||
public EnumDemonWillType getType() {
|
||||
return EnumDemonWillType.valueOf(name());
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue