package com.team.futurecraft.block;
import com.team.futurecraft.BlockList;
import com.team.futurecraft.FutureCraft;
import com.team.futurecraft.tileentity.TileEntityGenerator;
import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.BlockPos;
import net.minecraft.util.EnumFacing;
import net.minecraft.world.World;
public class BlockGenerator extends Machine {
public BlockGenerator(boolean lit, String name) {
super(false, name);
if (!lit) this.setCreativeTab(FutureCraft.tabFutureCraft);
}
public EnumMachineSetting getSide(EnumFacing side) {
return EnumMachineSetting.energyOutput;
}
public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumFacing side, float hitX, float hitY, float hitZ) {
player.openGui("futurecraft", 102, world, pos.getX(), pos.getY(), pos.getZ());
return true;
}
public TileEntity createNewTileEntity(World world, int meta) {
return new TileEntityGenerator(this.getStateFromMeta(meta));
}
public static void setState(boolean active, World worldIn, BlockPos pos) {
IBlockState iblockstate = worldIn.getBlockState(pos);
TileEntity tileentity = worldIn.getTileEntity(pos);
if (active) {
worldIn.setBlockState(pos, BlockList.generator_lit.getDefaultState().withProperty(FACING, iblockstate.getValue(FACING)), 3);
worldIn.setBlockState(pos, BlockList.generator_lit.getDefaultState().withProperty(FACING, iblockstate.getValue(FACING)), 3);
}
else {
worldIn.setBlockState(pos, BlockList.generator.getDefaultState().withProperty(FACING, iblockstate.getValue(FACING)), 3);
worldIn.setBlockState(pos, BlockList.generator.getDefaultState().withProperty(FACING, iblockstate.getValue(FACING)), 3);
}
if (tileentity != null) {
tileentity.validate();
worldIn.setTileEntity(pos, tileentity);
}
}
}