Updating with rotation

This commit is contained in:
kitsushadow
2016-12-03 15:29:18 -05:00
parent 0f8bd2c959
commit 169f895741
2 changed files with 37 additions and 2 deletions

View File

@@ -2,8 +2,10 @@ package nmd.primal.forgecraft.blocks;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.block.BlockContainer; import net.minecraft.block.BlockContainer;
import net.minecraft.block.BlockHorizontal;
import net.minecraft.block.ITileEntityProvider; import net.minecraft.block.ITileEntityProvider;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.block.state.BlockStateContainer;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.item.EntityItem;
@@ -28,13 +30,14 @@ import javax.annotation.Nullable;
/** /**
* Created by kitsu on 11/26/2016. * Created by kitsu on 11/26/2016.
*/ */
public class Firebox extends BlockContainer implements ITileEntityProvider { public class Firebox extends BlockHorizontal implements ITileEntityProvider {
//public class Firebox extends Block { //public class Firebox extends Block {
public Firebox(Material material) { public Firebox(Material material) {
super(material); super(material);
setUnlocalizedName(ModInfo.ForgecraftBlocks.FIREBOX.getUnlocalizedName()); setUnlocalizedName(ModInfo.ForgecraftBlocks.FIREBOX.getUnlocalizedName());
setRegistryName(ModInfo.ForgecraftBlocks.FIREBOX.getRegistryName()); setRegistryName(ModInfo.ForgecraftBlocks.FIREBOX.getRegistryName());
setCreativeTab(ModInfo.TAB_FORGECRAFT); setCreativeTab(ModInfo.TAB_FORGECRAFT);
setDefaultState(this.blockState.getBaseState().withProperty(FACING, EnumFacing.NORTH));
} }
@Override @Override
@@ -51,6 +54,13 @@ public class Firebox extends BlockContainer implements ITileEntityProvider {
TileFirebox tile = (TileFirebox) world.getTileEntity(pos); TileFirebox tile = (TileFirebox) world.getTileEntity(pos);
if (tile != null) if (tile != null)
{ {
ItemStack playerStack = player.getHeldItemMainhand();
ItemStack tileStack = tile.getStackInSlot(0);
System.out.println(playerStack + " : " + tileStack);
/*
if (tile.getStackInSlot(0) == null){ if (tile.getStackInSlot(0) == null){
if (player.inventory.getCurrentItem()!=null) { if (player.inventory.getCurrentItem()!=null) {
tile.setInventorySlotContents(0, player.inventory.getCurrentItem()); tile.setInventorySlotContents(0, player.inventory.getCurrentItem());
@@ -65,6 +75,7 @@ public class Firebox extends BlockContainer implements ITileEntityProvider {
return true; return true;
} }
} }
*/
} }
} }
@@ -91,6 +102,12 @@ public class Firebox extends BlockContainer implements ITileEntityProvider {
super.breakBlock(worldIn, pos, state); super.breakBlock(worldIn, pos, state);
} }
@Override
public IBlockState onBlockPlaced(World worldIn, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer) {
IBlockState state = super.onBlockPlaced(worldIn, pos, facing, hitX, hitY, hitZ, meta, placer);
return state.withProperty(FACING, placer.getHorizontalFacing());
}
@Override @Override
public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase placer, ItemStack stack){ public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase placer, ItemStack stack){
if (stack.hasDisplayName()){ if (stack.hasDisplayName()){
@@ -98,6 +115,21 @@ public class Firebox extends BlockContainer implements ITileEntityProvider {
} }
} }
@Override
public int getMetaFromState(IBlockState state) {
return state.getValue(FACING).getHorizontalIndex();
}
@Override
public IBlockState getStateFromMeta(int meta) {
return getDefaultState().withProperty(FACING, EnumFacing.getHorizontal(meta));
}
@Override
protected BlockStateContainer createBlockState() {
return new BlockStateContainer(this, FACING);
}
@Override @Override
public boolean isFullCube(IBlockState state) public boolean isFullCube(IBlockState state)
{ {

View File

@@ -1,5 +1,8 @@
{ {
"variants": { "variants": {
"normal": { "model": "forgecraft:firebox"} "facing=north": { "model": "forgecraft:firebox" },
"facing=east": { "model": "forgecraft:firebox", "y": 90 },
"facing=south": { "model": "forgecraft:firebox", "y": 180 },
"facing=west": { "model": "forgecraft:firebox", "y": 270 }
} }
} }