Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package vazkii.botania.common.block;
- import java.util.List;
- import java.util.Random;
- import net.minecraft.block.Block;
- import net.minecraft.block.material.Material;
- import net.minecraft.block.state.BlockState;
- import net.minecraft.block.state.IBlockState;
- import net.minecraft.creativetab.CreativeTabs;
- import net.minecraft.entity.Entity;
- import net.minecraft.entity.item.EntityItem;
- import net.minecraft.entity.player.EntityPlayer;
- import net.minecraft.init.Items;
- import net.minecraft.item.Item;
- import net.minecraft.item.ItemStack;
- import net.minecraft.nbt.NBTTagCompound;
- import net.minecraft.tileentity.TileEntity;
- import net.minecraft.util.BlockPos;
- import net.minecraft.util.EnumFacing;
- import net.minecraft.util.EnumWorldBlockLayer;
- import net.minecraft.world.IBlockAccess;
- import net.minecraft.world.World;
- import net.minecraftforge.fluids.FluidContainerRegistry;
- import net.minecraftforge.fluids.FluidRegistry;
- import net.minecraftforge.fluids.FluidStack;
- import net.minecraftforge.fluids.IFluidContainerItem;
- import vazkii.botania.api.internal.VanillaPacketDispatcher;
- import vazkii.botania.api.lexicon.ILexiconable;
- import vazkii.botania.api.lexicon.LexiconEntry;
- import vazkii.botania.api.mana.ManaItemHandler;
- import vazkii.botania.api.state.BotaniaStateProps;
- import vazkii.botania.api.state.enums.AltarVariant;
- import vazkii.botania.client.lib.LibRenderIDs;
- import vazkii.botania.common.Botania;
- import vazkii.botania.common.block.tile.TileAltar;
- import vazkii.botania.common.block.tile.TileSimpleInventory;
- import vazkii.botania.common.item.ModItems;
- import vazkii.botania.common.item.block.ItemBlockWithMetadataAndName;
- import vazkii.botania.common.item.rod.ItemWaterRod;
- import vazkii.botania.common.lexicon.LexiconData;
- import vazkii.botania.common.lib.LibBlockNames;
- import net.minecraftforge.fml.common.registry.GameRegistry;
- public class BlockAltar extends BlockModContainer implements ILexiconable {
- Random random;
- protected BlockAltar() {
- super(Material.rock);
- setHardness(3.5F);
- setStepSound(soundTypeStone);
- setUnlocalizedName(LibBlockNames.ALTAR);
- float f = 1F / 16F * 2F;
- setBlockBounds(f, f, f, 1F - f, 1F / 16F * 20F, 1F - f);
- random = new Random();
- setDefaultState(blockState.getBaseState()
- .withProperty(BotaniaStateProps.ALTAR_VARIANT, AltarVariant.DEFAULT)
- );
- }
- @Override
- public BlockState createBlockState() {
- return new BlockState(this, BotaniaStateProps.ALTAR_VARIANT);
- }
- @Override
- public int getMetaFromState(IBlockState state) {
- AltarVariant variant = state.getValue(BotaniaStateProps.ALTAR_VARIANT);
- return variant == AltarVariant.MOSSY ? AltarVariant.DEFAULT.ordinal() : variant.ordinal();
- }
- @Override
- public IBlockState getStateFromMeta(int meta) {
- if (meta < 0 || meta >= AltarVariant.values().length - 1) { // Off by one on purpose, to exclude MOSSY
- meta = 0;
- }
- return getDefaultState().withProperty(BotaniaStateProps.ALTAR_VARIANT, AltarVariant.values()[meta]);
- }
- @Override
- public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos) {
- TileEntity te = worldIn.getTileEntity(pos);
- if (te instanceof TileAltar) {
- TileAltar altar = ((TileAltar) te);
- if (altar.isMossy) {
- System.out.println("MOSSY");
- state = state.withProperty(BotaniaStateProps.ALTAR_VARIANT, AltarVariant.MOSSY);
- }
- }
- return state;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement