mirror of
https://github.com/Ellpeck/ActuallyAdditions.git
synced 2024-11-30 02:38:34 +01:00
Change to using proper blockstates
This commit is contained in:
parent
12c7acf3f3
commit
0dc3dd7d1a
66 changed files with 767 additions and 595 deletions
|
@ -18,11 +18,10 @@ import de.ellpeck.actuallyadditions.mod.util.AssetUtil;
|
||||||
import de.ellpeck.actuallyadditions.mod.util.ModUtil;
|
import de.ellpeck.actuallyadditions.mod.util.ModUtil;
|
||||||
import de.ellpeck.actuallyadditions.mod.util.StackUtil;
|
import de.ellpeck.actuallyadditions.mod.util.StackUtil;
|
||||||
import de.ellpeck.actuallyadditions.mod.util.StringUtil;
|
import de.ellpeck.actuallyadditions.mod.util.StringUtil;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.*;
|
||||||
import net.minecraft.block.BlockPistonBase;
|
|
||||||
import net.minecraft.block.SoundType;
|
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
import net.minecraft.block.state.BlockStateContainer;
|
||||||
import net.minecraft.block.state.IBlockState;
|
import net.minecraft.block.state.IBlockState;
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
import net.minecraft.client.gui.ScaledResolution;
|
import net.minecraft.client.gui.ScaledResolution;
|
||||||
|
@ -35,6 +34,8 @@ import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.EnumHand;
|
import net.minecraft.util.EnumHand;
|
||||||
|
import net.minecraft.util.Mirror;
|
||||||
|
import net.minecraft.util.Rotation;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.util.math.RayTraceResult;
|
import net.minecraft.util.math.RayTraceResult;
|
||||||
import net.minecraft.util.text.TextFormatting;
|
import net.minecraft.util.text.TextFormatting;
|
||||||
|
@ -48,7 +49,6 @@ public class BlockAtomicReconstructor extends BlockContainerBase implements IHud
|
||||||
|
|
||||||
public static final int NAME_FLAVOR_AMOUNTS_1 = 12;
|
public static final int NAME_FLAVOR_AMOUNTS_1 = 12;
|
||||||
public static final int NAME_FLAVOR_AMOUNTS_2 = 14;
|
public static final int NAME_FLAVOR_AMOUNTS_2 = 14;
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, 5);
|
|
||||||
|
|
||||||
public BlockAtomicReconstructor(String name){
|
public BlockAtomicReconstructor(String name){
|
||||||
super(Material.ROCK, name);
|
super(Material.ROCK, name);
|
||||||
|
@ -148,8 +148,28 @@ public class BlockAtomicReconstructor extends BlockContainerBase implements IHud
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(BlockDirectional.FACING, EnumFacing.getFront(meta));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(BlockDirectional.FACING).getIndex();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, BlockDirectional.FACING);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withRotation(IBlockState state, Rotation rot){
|
||||||
|
return state.withProperty(BlockDirectional.FACING, rot.rotate(state.getValue(BlockDirectional.FACING)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withMirror(IBlockState state, Mirror mirror){
|
||||||
|
return this.withRotation(state, mirror.toRotation(state.getValue(BlockDirectional.FACING)));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class TheItemBlock extends ItemBlockBase{
|
public static class TheItemBlock extends ItemBlockBase{
|
||||||
|
|
|
@ -16,10 +16,12 @@ import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
||||||
import de.ellpeck.actuallyadditions.mod.tile.TileEntityBreaker;
|
import de.ellpeck.actuallyadditions.mod.tile.TileEntityBreaker;
|
||||||
import de.ellpeck.actuallyadditions.mod.tile.TileEntityPlacer;
|
import de.ellpeck.actuallyadditions.mod.tile.TileEntityPlacer;
|
||||||
|
import net.minecraft.block.BlockDirectional;
|
||||||
import net.minecraft.block.BlockPistonBase;
|
import net.minecraft.block.BlockPistonBase;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
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.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
|
@ -28,12 +30,13 @@ import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.EnumHand;
|
import net.minecraft.util.EnumHand;
|
||||||
|
import net.minecraft.util.Mirror;
|
||||||
|
import net.minecraft.util.Rotation;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
public class BlockBreaker extends BlockContainerBase{
|
public class BlockBreaker extends BlockContainerBase{
|
||||||
|
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, 5);
|
|
||||||
private final boolean isPlacer;
|
private final boolean isPlacer;
|
||||||
|
|
||||||
public BlockBreaker(boolean isPlacer, String name){
|
public BlockBreaker(boolean isPlacer, String name){
|
||||||
|
@ -80,8 +83,28 @@ public class BlockBreaker extends BlockContainerBase{
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(BlockDirectional.FACING, EnumFacing.getFront(meta));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(BlockDirectional.FACING).getIndex();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, BlockDirectional.FACING);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withRotation(IBlockState state, Rotation rot){
|
||||||
|
return state.withProperty(BlockDirectional.FACING, rot.rotate(state.getValue(BlockDirectional.FACING)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withMirror(IBlockState state, Mirror mirror){
|
||||||
|
return this.withRotation(state, mirror.toRotation(state.getValue(BlockDirectional.FACING)));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -15,18 +15,19 @@ import de.ellpeck.actuallyadditions.mod.ActuallyAdditions;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
||||||
import de.ellpeck.actuallyadditions.mod.tile.TileEntityCoalGenerator;
|
import de.ellpeck.actuallyadditions.mod.tile.TileEntityCoalGenerator;
|
||||||
|
import net.minecraft.block.BlockDirectional;
|
||||||
|
import net.minecraft.block.BlockHorizontal;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
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.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.EnumRarity;
|
import net.minecraft.item.EnumRarity;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.*;
|
||||||
import net.minecraft.util.EnumHand;
|
|
||||||
import net.minecraft.util.EnumParticleTypes;
|
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.util.math.MathHelper;
|
import net.minecraft.util.math.MathHelper;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
@ -37,8 +38,6 @@ import java.util.Random;
|
||||||
|
|
||||||
public class BlockCoalGenerator extends BlockContainerBase{
|
public class BlockCoalGenerator extends BlockContainerBase{
|
||||||
|
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, 3);
|
|
||||||
|
|
||||||
public BlockCoalGenerator(String name){
|
public BlockCoalGenerator(String name){
|
||||||
super(Material.ROCK, name);
|
super(Material.ROCK, name);
|
||||||
this.setHarvestLevel("pickaxe", 0);
|
this.setHarvestLevel("pickaxe", 0);
|
||||||
|
@ -90,20 +89,7 @@ public class BlockCoalGenerator extends BlockContainerBase{
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){
|
public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){
|
||||||
int rotation = MathHelper.floor_double((double)(player.rotationYaw*4.0F/360.0F)+0.5D) & 3;
|
world.setBlockState(pos, state.withProperty(BlockHorizontal.FACING, player.getHorizontalFacing().getOpposite()), 2);
|
||||||
|
|
||||||
if(rotation == 0){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(0), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 1){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(3), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 2){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(1), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 3){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(2), 2);
|
|
||||||
}
|
|
||||||
|
|
||||||
super.onBlockPlacedBy(world, pos, state, player, stack);
|
super.onBlockPlacedBy(world, pos, state, player, stack);
|
||||||
}
|
}
|
||||||
|
@ -120,7 +106,27 @@ public class BlockCoalGenerator extends BlockContainerBase{
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(BlockHorizontal.FACING, EnumFacing.getHorizontal(meta));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(BlockHorizontal.FACING).getHorizontalIndex();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, BlockHorizontal.FACING);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withRotation(IBlockState state, Rotation rot){
|
||||||
|
return state.withProperty(BlockHorizontal.FACING, rot.rotate(state.getValue(BlockHorizontal.FACING)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withMirror(IBlockState state, Mirror mirror){
|
||||||
|
return this.withRotation(state, mirror.toRotation(state.getValue(BlockHorizontal.FACING)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,9 +14,11 @@ import de.ellpeck.actuallyadditions.mod.ActuallyAdditions;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
||||||
import de.ellpeck.actuallyadditions.mod.tile.TileEntityCoffeeMachine;
|
import de.ellpeck.actuallyadditions.mod.tile.TileEntityCoffeeMachine;
|
||||||
|
import net.minecraft.block.BlockHorizontal;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
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.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
|
@ -25,6 +27,8 @@ import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.EnumHand;
|
import net.minecraft.util.EnumHand;
|
||||||
|
import net.minecraft.util.Mirror;
|
||||||
|
import net.minecraft.util.Rotation;
|
||||||
import net.minecraft.util.math.AxisAlignedBB;
|
import net.minecraft.util.math.AxisAlignedBB;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.util.math.MathHelper;
|
import net.minecraft.util.math.MathHelper;
|
||||||
|
@ -35,8 +39,6 @@ public class BlockCoffeeMachine extends BlockContainerBase{
|
||||||
|
|
||||||
private static final AxisAlignedBB AABB = new AxisAlignedBB(0.0625, 0, 0.0625, 1-0.0625, 1-0.0625*2, 1-0.0625);
|
private static final AxisAlignedBB AABB = new AxisAlignedBB(0.0625, 0, 0.0625, 1-0.0625, 1-0.0625*2, 1-0.0625);
|
||||||
|
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, 3);
|
|
||||||
|
|
||||||
public BlockCoffeeMachine(String name){
|
public BlockCoffeeMachine(String name){
|
||||||
super(Material.ROCK, name);
|
super(Material.ROCK, name);
|
||||||
this.setHarvestLevel("pickaxe", 0);
|
this.setHarvestLevel("pickaxe", 0);
|
||||||
|
@ -112,7 +114,27 @@ public class BlockCoffeeMachine extends BlockContainerBase{
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(BlockHorizontal.FACING, EnumFacing.getHorizontal(meta));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(BlockHorizontal.FACING).getHorizontalIndex();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, BlockHorizontal.FACING);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withRotation(IBlockState state, Rotation rot){
|
||||||
|
return state.withProperty(BlockHorizontal.FACING, rot.rotate(state.getValue(BlockHorizontal.FACING)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withMirror(IBlockState state, Mirror mirror){
|
||||||
|
return this.withRotation(state, mirror.toRotation(state.getValue(BlockHorizontal.FACING)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,12 +15,15 @@ import de.ellpeck.actuallyadditions.mod.ActuallyAdditions;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockBase;
|
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.base.ItemBlockBase;
|
import de.ellpeck.actuallyadditions.mod.blocks.base.ItemBlockBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.metalists.TheColoredLampColors;
|
import de.ellpeck.actuallyadditions.mod.blocks.metalists.TheColoredLampColors;
|
||||||
|
import de.ellpeck.actuallyadditions.mod.blocks.metalists.TheMiscBlocks;
|
||||||
import de.ellpeck.actuallyadditions.mod.util.ModUtil;
|
import de.ellpeck.actuallyadditions.mod.util.ModUtil;
|
||||||
import de.ellpeck.actuallyadditions.mod.util.StackUtil;
|
import de.ellpeck.actuallyadditions.mod.util.StackUtil;
|
||||||
import de.ellpeck.actuallyadditions.mod.util.StringUtil;
|
import de.ellpeck.actuallyadditions.mod.util.StringUtil;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
|
import net.minecraft.block.properties.PropertyEnum;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
import net.minecraft.block.state.BlockStateContainer;
|
||||||
import net.minecraft.block.state.IBlockState;
|
import net.minecraft.block.state.IBlockState;
|
||||||
import net.minecraft.creativetab.CreativeTabs;
|
import net.minecraft.creativetab.CreativeTabs;
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
|
@ -43,7 +46,7 @@ import java.util.Random;
|
||||||
public class BlockColoredLamp extends BlockBase{
|
public class BlockColoredLamp extends BlockBase{
|
||||||
|
|
||||||
public static final TheColoredLampColors[] ALL_LAMP_TYPES = TheColoredLampColors.values();
|
public static final TheColoredLampColors[] ALL_LAMP_TYPES = TheColoredLampColors.values();
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, ALL_LAMP_TYPES.length-1);
|
private static final PropertyEnum<TheColoredLampColors> TYPE = PropertyEnum.create("type", TheColoredLampColors.class);
|
||||||
public final boolean isOn;
|
public final boolean isOn;
|
||||||
|
|
||||||
public BlockColoredLamp(boolean isOn, String name){
|
public BlockColoredLamp(boolean isOn, String name){
|
||||||
|
@ -126,7 +129,7 @@ public class BlockColoredLamp extends BlockBase{
|
||||||
@Override
|
@Override
|
||||||
protected void registerRendering(){
|
protected void registerRendering(){
|
||||||
for(int i = 0; i < ALL_LAMP_TYPES.length; i++){
|
for(int i = 0; i < ALL_LAMP_TYPES.length; i++){
|
||||||
ActuallyAdditions.proxy.addRenderRegister(new ItemStack(this, 1, i), this.getRegistryName(), META.getName()+"="+i);
|
ActuallyAdditions.proxy.addRenderRegister(new ItemStack(this, 1, i), this.getRegistryName(), TYPE.getName()+"="+ALL_LAMP_TYPES[i].regName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -136,8 +139,18 @@ public class BlockColoredLamp extends BlockBase{
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(TYPE, TheColoredLampColors.values()[meta]);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(TYPE).ordinal();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, TYPE);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class TheItemBlock extends ItemBlockBase{
|
public static class TheItemBlock extends ItemBlockBase{
|
||||||
|
|
|
@ -16,14 +16,20 @@ import de.ellpeck.actuallyadditions.mod.blocks.base.ItemBlockBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.items.metalists.TheCrystals;
|
import de.ellpeck.actuallyadditions.mod.items.metalists.TheCrystals;
|
||||||
import de.ellpeck.actuallyadditions.mod.util.StringUtil;
|
import de.ellpeck.actuallyadditions.mod.util.StringUtil;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
|
import net.minecraft.block.BlockHorizontal;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
|
import net.minecraft.block.properties.PropertyEnum;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
import net.minecraft.block.state.BlockStateContainer;
|
||||||
import net.minecraft.block.state.IBlockState;
|
import net.minecraft.block.state.IBlockState;
|
||||||
import net.minecraft.creativetab.CreativeTabs;
|
import net.minecraft.creativetab.CreativeTabs;
|
||||||
import net.minecraft.item.EnumRarity;
|
import net.minecraft.item.EnumRarity;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
|
import net.minecraft.util.EnumFacing;
|
||||||
|
import net.minecraft.util.Mirror;
|
||||||
import net.minecraft.util.NonNullList;
|
import net.minecraft.util.NonNullList;
|
||||||
|
import net.minecraft.util.Rotation;
|
||||||
import net.minecraftforge.fml.relauncher.Side;
|
import net.minecraftforge.fml.relauncher.Side;
|
||||||
import net.minecraftforge.fml.relauncher.SideOnly;
|
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||||
|
|
||||||
|
@ -32,7 +38,7 @@ import java.util.List;
|
||||||
public class BlockCrystal extends BlockBase{
|
public class BlockCrystal extends BlockBase{
|
||||||
|
|
||||||
public static final TheCrystals[] ALL_CRYSTALS = TheCrystals.values();
|
public static final TheCrystals[] ALL_CRYSTALS = TheCrystals.values();
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, ALL_CRYSTALS.length-1);
|
private static final PropertyEnum<TheCrystals> TYPE = PropertyEnum.create("type", TheCrystals.class);
|
||||||
|
|
||||||
private final boolean isEmpowered;
|
private final boolean isEmpowered;
|
||||||
|
|
||||||
|
@ -65,20 +71,30 @@ public class BlockCrystal extends BlockBase{
|
||||||
@Override
|
@Override
|
||||||
protected void registerRendering(){
|
protected void registerRendering(){
|
||||||
for(int i = 0; i < ALL_CRYSTALS.length; i++){
|
for(int i = 0; i < ALL_CRYSTALS.length; i++){
|
||||||
ActuallyAdditions.proxy.addRenderRegister(new ItemStack(this, 1, i), this.getRegistryName(), META.getName()+"="+i);
|
ActuallyAdditions.proxy.addRenderRegister(new ItemStack(this, 1, i), this.getRegistryName(), TYPE.getName()+"="+ALL_CRYSTALS[i].name);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState getStateFromMeta(int meta){
|
||||||
|
return this.getDefaultState().withProperty(TYPE, TheCrystals.values()[meta]);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(TYPE).ordinal();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, TYPE);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public EnumRarity getRarity(ItemStack stack){
|
public EnumRarity getRarity(ItemStack stack){
|
||||||
return stack.getItemDamage() >= ALL_CRYSTALS.length ? EnumRarity.COMMON : ALL_CRYSTALS[stack.getItemDamage()].rarity;
|
return stack.getItemDamage() >= ALL_CRYSTALS.length ? EnumRarity.COMMON : ALL_CRYSTALS[stack.getItemDamage()].rarity;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
protected PropertyInteger getMetaProperty(){
|
|
||||||
return META;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static class TheItemBlock extends ItemBlockBase{
|
public static class TheItemBlock extends ItemBlockBase{
|
||||||
|
|
||||||
public TheItemBlock(Block block){
|
public TheItemBlock(Block block){
|
||||||
|
|
|
@ -15,10 +15,12 @@ import de.ellpeck.actuallyadditions.mod.ActuallyAdditions;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
||||||
import de.ellpeck.actuallyadditions.mod.tile.TileEntityDirectionalBreaker;
|
import de.ellpeck.actuallyadditions.mod.tile.TileEntityDirectionalBreaker;
|
||||||
|
import net.minecraft.block.BlockDirectional;
|
||||||
import net.minecraft.block.BlockPistonBase;
|
import net.minecraft.block.BlockPistonBase;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
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.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
|
@ -27,13 +29,13 @@ import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.EnumHand;
|
import net.minecraft.util.EnumHand;
|
||||||
|
import net.minecraft.util.Mirror;
|
||||||
|
import net.minecraft.util.Rotation;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
public class BlockDirectionalBreaker extends BlockContainerBase{
|
public class BlockDirectionalBreaker extends BlockContainerBase{
|
||||||
|
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, 5);
|
|
||||||
|
|
||||||
public BlockDirectionalBreaker(String name){
|
public BlockDirectionalBreaker(String name){
|
||||||
super(Material.ROCK, name);
|
super(Material.ROCK, name);
|
||||||
this.setHarvestLevel("pickaxe", 0);
|
this.setHarvestLevel("pickaxe", 0);
|
||||||
|
@ -77,8 +79,28 @@ public class BlockDirectionalBreaker extends BlockContainerBase{
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(BlockDirectional.FACING, EnumFacing.getFront(meta));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(BlockDirectional.FACING).getIndex();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, BlockDirectional.FACING);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withRotation(IBlockState state, Rotation rot){
|
||||||
|
return state.withProperty(BlockDirectional.FACING, rot.rotate(state.getValue(BlockDirectional.FACING)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withMirror(IBlockState state, Mirror mirror){
|
||||||
|
return this.withRotation(state, mirror.toRotation(state.getValue(BlockDirectional.FACING)));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -14,10 +14,13 @@ import de.ellpeck.actuallyadditions.mod.ActuallyAdditions;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
||||||
import de.ellpeck.actuallyadditions.mod.tile.TileEntityDropper;
|
import de.ellpeck.actuallyadditions.mod.tile.TileEntityDropper;
|
||||||
|
import net.minecraft.block.BlockDirectional;
|
||||||
|
import net.minecraft.block.BlockHorizontal;
|
||||||
import net.minecraft.block.BlockPistonBase;
|
import net.minecraft.block.BlockPistonBase;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
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.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
|
@ -26,13 +29,13 @@ import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.EnumHand;
|
import net.minecraft.util.EnumHand;
|
||||||
|
import net.minecraft.util.Mirror;
|
||||||
|
import net.minecraft.util.Rotation;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
public class BlockDropper extends BlockContainerBase{
|
public class BlockDropper extends BlockContainerBase{
|
||||||
|
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, 5);
|
|
||||||
|
|
||||||
public BlockDropper(String name){
|
public BlockDropper(String name){
|
||||||
super(Material.ROCK, name);
|
super(Material.ROCK, name);
|
||||||
this.setHarvestLevel("pickaxe", 0);
|
this.setHarvestLevel("pickaxe", 0);
|
||||||
|
@ -76,8 +79,28 @@ public class BlockDropper extends BlockContainerBase{
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(BlockDirectional.FACING, EnumFacing.getFront(meta));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(BlockDirectional.FACING).getIndex();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, BlockDirectional.FACING);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withRotation(IBlockState state, Rotation rot){
|
||||||
|
return state.withProperty(BlockDirectional.FACING, rot.rotate(state.getValue(BlockDirectional.FACING)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withMirror(IBlockState state, Mirror mirror){
|
||||||
|
return this.withRotation(state, mirror.toRotation(state.getValue(BlockDirectional.FACING)));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -14,9 +14,12 @@ import de.ellpeck.actuallyadditions.mod.ActuallyAdditions;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
||||||
import de.ellpeck.actuallyadditions.mod.tile.TileEntityFarmer;
|
import de.ellpeck.actuallyadditions.mod.tile.TileEntityFarmer;
|
||||||
|
import net.minecraft.block.BlockHorizontal;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
|
import net.minecraft.block.properties.PropertyDirection;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
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.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
|
@ -25,14 +28,14 @@ import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.EnumHand;
|
import net.minecraft.util.EnumHand;
|
||||||
|
import net.minecraft.util.Mirror;
|
||||||
|
import net.minecraft.util.Rotation;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.util.math.MathHelper;
|
import net.minecraft.util.math.MathHelper;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
public class BlockFarmer extends BlockContainerBase{
|
public class BlockFarmer extends BlockContainerBase{
|
||||||
|
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, 3);
|
|
||||||
|
|
||||||
public BlockFarmer(String name){
|
public BlockFarmer(String name){
|
||||||
super(Material.ROCK, name);
|
super(Material.ROCK, name);
|
||||||
this.setHarvestLevel("pickaxe", 0);
|
this.setHarvestLevel("pickaxe", 0);
|
||||||
|
@ -66,27 +69,34 @@ public class BlockFarmer extends BlockContainerBase{
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){
|
public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){
|
||||||
int rotation = MathHelper.floor_double((double)(player.rotationYaw*4.0F/360.0F)+0.5D) & 3;
|
world.setBlockState(pos, state.withProperty(BlockHorizontal.FACING, player.getHorizontalFacing().getOpposite()), 2);
|
||||||
|
|
||||||
if(rotation == 0){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(0), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 1){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(3), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 2){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(1), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 3){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(2), 2);
|
|
||||||
}
|
|
||||||
|
|
||||||
super.onBlockPlacedBy(world, pos, state, player, stack);
|
super.onBlockPlacedBy(world, pos, state, player, stack);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(BlockHorizontal.FACING, EnumFacing.getHorizontal(meta));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(BlockHorizontal.FACING).getHorizontalIndex();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, BlockHorizontal.FACING);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withRotation(IBlockState state, Rotation rot){
|
||||||
|
return state.withProperty(BlockHorizontal.FACING, rot.rotate(state.getValue(BlockHorizontal.FACING)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withMirror(IBlockState state, Mirror mirror){
|
||||||
|
return this.withRotation(state, mirror.toRotation(state.getValue(BlockHorizontal.FACING)));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -16,10 +16,12 @@ import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
||||||
import de.ellpeck.actuallyadditions.mod.tile.TileEntityFluidCollector;
|
import de.ellpeck.actuallyadditions.mod.tile.TileEntityFluidCollector;
|
||||||
import de.ellpeck.actuallyadditions.mod.tile.TileEntityFluidPlacer;
|
import de.ellpeck.actuallyadditions.mod.tile.TileEntityFluidPlacer;
|
||||||
|
import net.minecraft.block.BlockDirectional;
|
||||||
import net.minecraft.block.BlockPistonBase;
|
import net.minecraft.block.BlockPistonBase;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
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.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
|
@ -28,13 +30,13 @@ import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.EnumHand;
|
import net.minecraft.util.EnumHand;
|
||||||
|
import net.minecraft.util.Mirror;
|
||||||
|
import net.minecraft.util.Rotation;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
public class BlockFluidCollector extends BlockContainerBase{
|
public class BlockFluidCollector extends BlockContainerBase{
|
||||||
|
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, 5);
|
|
||||||
|
|
||||||
private final boolean isPlacer;
|
private final boolean isPlacer;
|
||||||
|
|
||||||
public BlockFluidCollector(boolean isPlacer, String name){
|
public BlockFluidCollector(boolean isPlacer, String name){
|
||||||
|
@ -84,8 +86,28 @@ public class BlockFluidCollector extends BlockContainerBase{
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(BlockDirectional.FACING, EnumFacing.getFront(meta));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(BlockDirectional.FACING).getIndex();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, BlockDirectional.FACING);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withRotation(IBlockState state, Rotation rot){
|
||||||
|
return state.withProperty(BlockDirectional.FACING, rot.rotate(state.getValue(BlockDirectional.FACING)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withMirror(IBlockState state, Mirror mirror){
|
||||||
|
return this.withRotation(state, mirror.toRotation(state.getValue(BlockDirectional.FACING)));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -18,20 +18,18 @@ import de.ellpeck.actuallyadditions.mod.tile.TileEntityFurnaceDouble;
|
||||||
import de.ellpeck.actuallyadditions.mod.util.ModUtil;
|
import de.ellpeck.actuallyadditions.mod.util.ModUtil;
|
||||||
import de.ellpeck.actuallyadditions.mod.util.StringUtil;
|
import de.ellpeck.actuallyadditions.mod.util.StringUtil;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
|
import net.minecraft.block.BlockHorizontal;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
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.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.EnumRarity;
|
import net.minecraft.item.EnumRarity;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.*;
|
||||||
import net.minecraft.util.EnumHand;
|
|
||||||
import net.minecraft.util.EnumParticleTypes;
|
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.util.math.MathHelper;
|
|
||||||
import net.minecraft.util.text.TextFormatting;
|
import net.minecraft.util.text.TextFormatting;
|
||||||
import net.minecraft.world.IBlockAccess;
|
import net.minecraft.world.IBlockAccess;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
@ -43,8 +41,6 @@ import java.util.Random;
|
||||||
|
|
||||||
public class BlockFurnaceDouble extends BlockContainerBase{
|
public class BlockFurnaceDouble extends BlockContainerBase{
|
||||||
|
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, 7);
|
|
||||||
|
|
||||||
public BlockFurnaceDouble(String name){
|
public BlockFurnaceDouble(String name){
|
||||||
super(Material.ROCK, name);
|
super(Material.ROCK, name);
|
||||||
this.setHarvestLevel("pickaxe", 0);
|
this.setHarvestLevel("pickaxe", 0);
|
||||||
|
@ -63,34 +59,13 @@ public class BlockFurnaceDouble extends BlockContainerBase{
|
||||||
@Override
|
@Override
|
||||||
@SideOnly(Side.CLIENT)
|
@SideOnly(Side.CLIENT)
|
||||||
public void randomDisplayTick(IBlockState state, World world, BlockPos pos, Random rand){
|
public void randomDisplayTick(IBlockState state, World world, BlockPos pos, Random rand){
|
||||||
int meta = this.getMetaFromState(state);
|
TileEntity tile = world.getTileEntity(pos);
|
||||||
|
if(tile instanceof TileEntityFurnaceDouble){
|
||||||
if(meta > 3){
|
TileEntityFurnaceDouble furnace = (TileEntityFurnaceDouble)tile;
|
||||||
float f = (float)pos.getX()+0.5F;
|
if(furnace.firstSmeltTime > 0 || furnace.secondSmeltTime > 0){
|
||||||
float f1 = (float)pos.getY()+0.0F+rand.nextFloat()*6.0F/16.0F;
|
for(int i = 0; i < 5; i++){
|
||||||
float f2 = (float)pos.getZ()+0.5F;
|
world.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, (double)pos.getX()+0.5F, (double)pos.getY()+1.0F, (double)pos.getZ()+0.5F, 0.0D, 0.0D, 0.0D);
|
||||||
float f3 = 0.52F;
|
}
|
||||||
float f4 = rand.nextFloat()*0.6F-0.3F;
|
|
||||||
|
|
||||||
if(meta == 6){
|
|
||||||
world.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, (double)(f-f3), (double)f1, (double)(f2+f4), 0.0D, 0.0D, 0.0D);
|
|
||||||
world.spawnParticle(EnumParticleTypes.FLAME, (double)(f-f3), (double)f1, (double)(f2+f4), 0.0D, 0.0D, 0.0D);
|
|
||||||
}
|
|
||||||
if(meta == 7){
|
|
||||||
world.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, (double)(f+f3), (double)f1, (double)(f2+f4), 0.0D, 0.0D, 0.0D);
|
|
||||||
world.spawnParticle(EnumParticleTypes.FLAME, (double)(f+f3), (double)f1, (double)(f2+f4), 0.0D, 0.0D, 0.0D);
|
|
||||||
}
|
|
||||||
if(meta == 4){
|
|
||||||
world.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, (double)(f+f4), (double)f1, (double)(f2-f3), 0.0D, 0.0D, 0.0D);
|
|
||||||
world.spawnParticle(EnumParticleTypes.FLAME, (double)(f+f4), (double)f1, (double)(f2-f3), 0.0D, 0.0D, 0.0D);
|
|
||||||
}
|
|
||||||
if(meta == 5){
|
|
||||||
world.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, (double)(f+f4), (double)f1, (double)(f2+f3), 0.0D, 0.0D, 0.0D);
|
|
||||||
world.spawnParticle(EnumParticleTypes.FLAME, (double)(f+f4), (double)f1, (double)(f2+f3), 0.0D, 0.0D, 0.0D);
|
|
||||||
}
|
|
||||||
|
|
||||||
for(int i = 0; i < 5; i++){
|
|
||||||
world.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, (double)pos.getX()+0.5F, (double)pos.getY()+1.0F, (double)pos.getZ()+0.5F, 0.0D, 0.0D, 0.0D);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -119,27 +94,34 @@ public class BlockFurnaceDouble extends BlockContainerBase{
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){
|
public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){
|
||||||
int rotation = MathHelper.floor_double((double)(player.rotationYaw*4.0F/360.0F)+0.5D) & 3;
|
world.setBlockState(pos, state.withProperty(BlockHorizontal.FACING, player.getHorizontalFacing().getOpposite()), 2);
|
||||||
|
|
||||||
if(rotation == 0){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(0), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 1){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(3), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 2){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(1), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 3){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(2), 2);
|
|
||||||
}
|
|
||||||
|
|
||||||
super.onBlockPlacedBy(world, pos, state, player, stack);
|
super.onBlockPlacedBy(world, pos, state, player, stack);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(BlockHorizontal.FACING, EnumFacing.getHorizontal(meta));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(BlockHorizontal.FACING).getHorizontalIndex();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, BlockHorizontal.FACING);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withRotation(IBlockState state, Rotation rot){
|
||||||
|
return state.withProperty(BlockHorizontal.FACING, rot.rotate(state.getValue(BlockHorizontal.FACING)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withMirror(IBlockState state, Mirror mirror){
|
||||||
|
return this.withRotation(state, mirror.toRotation(state.getValue(BlockHorizontal.FACING)));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -17,7 +17,6 @@ import de.ellpeck.actuallyadditions.mod.tile.TileEntityGrinder;
|
||||||
import de.ellpeck.actuallyadditions.mod.tile.TileEntityGrinderDouble;
|
import de.ellpeck.actuallyadditions.mod.tile.TileEntityGrinderDouble;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
|
||||||
import net.minecraft.block.state.IBlockState;
|
import net.minecraft.block.state.IBlockState;
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.EnumRarity;
|
import net.minecraft.item.EnumRarity;
|
||||||
|
@ -36,7 +35,6 @@ import java.util.Random;
|
||||||
|
|
||||||
public class BlockGrinder extends BlockContainerBase{
|
public class BlockGrinder extends BlockContainerBase{
|
||||||
|
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, 1);
|
|
||||||
private final boolean isDouble;
|
private final boolean isDouble;
|
||||||
|
|
||||||
public BlockGrinder(boolean isDouble, String name){
|
public BlockGrinder(boolean isDouble, String name){
|
||||||
|
@ -49,7 +47,6 @@ public class BlockGrinder extends BlockContainerBase{
|
||||||
this.setTickRandomly(true);
|
this.setTickRandomly(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public TileEntity createNewTileEntity(World world, int par2){
|
public TileEntity createNewTileEntity(World world, int par2){
|
||||||
return this.isDouble ? new TileEntityGrinderDouble() : new TileEntityGrinder();
|
return this.isDouble ? new TileEntityGrinderDouble() : new TileEntityGrinder();
|
||||||
|
@ -58,16 +55,19 @@ public class BlockGrinder extends BlockContainerBase{
|
||||||
@Override
|
@Override
|
||||||
@SideOnly(Side.CLIENT)
|
@SideOnly(Side.CLIENT)
|
||||||
public void randomDisplayTick(IBlockState state, World world, BlockPos pos, Random rand){
|
public void randomDisplayTick(IBlockState state, World world, BlockPos pos, Random rand){
|
||||||
int meta = this.getMetaFromState(state);
|
TileEntity tile = world.getTileEntity(pos);
|
||||||
|
if(tile instanceof TileEntityGrinder){
|
||||||
if(meta == 1){
|
TileEntityGrinder crusher = (TileEntityGrinder)tile;
|
||||||
for(int i = 0; i < 5; i++){
|
if(crusher.firstCrushTime > 0 || crusher.secondCrushTime > 0){
|
||||||
double xRand = rand.nextDouble()/0.75D-0.5D;
|
for(int i = 0; i < 5; i++){
|
||||||
double zRand = rand.nextDouble()/0.75D-0.5D;
|
double xRand = rand.nextDouble()/0.75D-0.5D;
|
||||||
world.spawnParticle(EnumParticleTypes.CRIT, (double)pos.getX()+0.4F, (double)pos.getY()+0.8F, (double)pos.getZ()+0.4F, xRand, 0.5D, zRand);
|
double zRand = rand.nextDouble()/0.75D-0.5D;
|
||||||
|
world.spawnParticle(EnumParticleTypes.CRIT, (double)pos.getX()+0.4F, (double)pos.getY()+0.8F, (double)pos.getZ()+0.4F, xRand, 0.5D, zRand);
|
||||||
|
}
|
||||||
|
world.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, (double)pos.getX()+0.5F, (double)pos.getY()+1.0F, (double)pos.getZ()+0.5F, 0.0D, 0.0D, 0.0D);
|
||||||
}
|
}
|
||||||
world.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, (double)pos.getX()+0.5F, (double)pos.getY()+1.0F, (double)pos.getZ()+0.5F, 0.0D, 0.0D, 0.0D);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -88,13 +88,13 @@ public class BlockGrinder extends BlockContainerBase{
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public EnumRarity getRarity(ItemStack stack){
|
public int damageDropped(IBlockState state){
|
||||||
return EnumRarity.EPIC;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public EnumRarity getRarity(ItemStack stack){
|
||||||
return META;
|
return EnumRarity.EPIC;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -14,15 +14,19 @@ package de.ellpeck.actuallyadditions.mod.blocks;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockBase;
|
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.util.WorldUtil;
|
import de.ellpeck.actuallyadditions.mod.util.WorldUtil;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
|
import net.minecraft.block.BlockDirectional;
|
||||||
import net.minecraft.block.BlockPistonBase;
|
import net.minecraft.block.BlockPistonBase;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
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.item.EnumRarity;
|
import net.minecraft.item.EnumRarity;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
|
import net.minecraft.util.Mirror;
|
||||||
|
import net.minecraft.util.Rotation;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
|
@ -31,8 +35,6 @@ import java.util.List;
|
||||||
|
|
||||||
public class BlockLampPowerer extends BlockBase{
|
public class BlockLampPowerer extends BlockBase{
|
||||||
|
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, 5);
|
|
||||||
|
|
||||||
public BlockLampPowerer(String name){
|
public BlockLampPowerer(String name){
|
||||||
super(Material.ROCK, name);
|
super(Material.ROCK, name);
|
||||||
this.setHarvestLevel("pickaxe", 0);
|
this.setHarvestLevel("pickaxe", 0);
|
||||||
|
@ -104,7 +106,27 @@ public class BlockLampPowerer extends BlockBase{
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(BlockDirectional.FACING, EnumFacing.getFront(meta));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(BlockDirectional.FACING).getIndex();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, BlockDirectional.FACING);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withRotation(IBlockState state, Rotation rot){
|
||||||
|
return state.withProperty(BlockDirectional.FACING, rot.rotate(state.getValue(BlockDirectional.FACING)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withMirror(IBlockState state, Mirror mirror){
|
||||||
|
return this.withRotation(state, mirror.toRotation(state.getValue(BlockDirectional.FACING)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,9 +18,12 @@ import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
||||||
import de.ellpeck.actuallyadditions.mod.tile.*;
|
import de.ellpeck.actuallyadditions.mod.tile.*;
|
||||||
import de.ellpeck.actuallyadditions.mod.util.StackUtil;
|
import de.ellpeck.actuallyadditions.mod.util.StackUtil;
|
||||||
import de.ellpeck.actuallyadditions.mod.util.StringUtil;
|
import de.ellpeck.actuallyadditions.mod.util.StringUtil;
|
||||||
|
import net.minecraft.block.BlockDirectional;
|
||||||
|
import net.minecraft.block.BlockHorizontal;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
import net.minecraft.block.state.BlockStateContainer;
|
||||||
import net.minecraft.block.state.IBlockState;
|
import net.minecraft.block.state.IBlockState;
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
import net.minecraft.client.gui.ScaledResolution;
|
import net.minecraft.client.gui.ScaledResolution;
|
||||||
|
@ -32,6 +35,8 @@ import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.EnumHand;
|
import net.minecraft.util.EnumHand;
|
||||||
|
import net.minecraft.util.Mirror;
|
||||||
|
import net.minecraft.util.Rotation;
|
||||||
import net.minecraft.util.math.AxisAlignedBB;
|
import net.minecraft.util.math.AxisAlignedBB;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.util.math.RayTraceResult;
|
import net.minecraft.util.math.RayTraceResult;
|
||||||
|
@ -56,7 +61,6 @@ public class BlockLaserRelay extends BlockContainerBase implements IHudDisplay{
|
||||||
private static final AxisAlignedBB AABB_SOUTH = new AxisAlignedBB(2*F, 2*F, 0, 1-2*F, 1-2*F, 1-6*F);
|
private static final AxisAlignedBB AABB_SOUTH = new AxisAlignedBB(2*F, 2*F, 0, 1-2*F, 1-2*F, 1-6*F);
|
||||||
private static final AxisAlignedBB AABB_WEST = new AxisAlignedBB(6*F, 2*F, 2*F, 1, 1-2*F, 1-2*F);
|
private static final AxisAlignedBB AABB_WEST = new AxisAlignedBB(6*F, 2*F, 2*F, 1, 1-2*F, 1-2*F);
|
||||||
|
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, 5);
|
|
||||||
private final Type type;
|
private final Type type;
|
||||||
|
|
||||||
public BlockLaserRelay(String name, Type type){
|
public BlockLaserRelay(String name, Type type){
|
||||||
|
@ -130,8 +134,28 @@ public class BlockLaserRelay extends BlockContainerBase implements IHudDisplay{
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(BlockDirectional.FACING, EnumFacing.getFront(meta));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(BlockDirectional.FACING).getIndex();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, BlockDirectional.FACING);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withRotation(IBlockState state, Rotation rot){
|
||||||
|
return state.withProperty(BlockDirectional.FACING, rot.rotate(state.getValue(BlockDirectional.FACING)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withMirror(IBlockState state, Mirror mirror){
|
||||||
|
return this.withRotation(state, mirror.toRotation(state.getValue(BlockDirectional.FACING)));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -14,10 +14,13 @@ import de.ellpeck.actuallyadditions.mod.ActuallyAdditions;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockBase;
|
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.base.ItemBlockBase;
|
import de.ellpeck.actuallyadditions.mod.blocks.base.ItemBlockBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.metalists.TheMiscBlocks;
|
import de.ellpeck.actuallyadditions.mod.blocks.metalists.TheMiscBlocks;
|
||||||
|
import de.ellpeck.actuallyadditions.mod.blocks.metalists.TheWildPlants;
|
||||||
import de.ellpeck.actuallyadditions.mod.util.StringUtil;
|
import de.ellpeck.actuallyadditions.mod.util.StringUtil;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
|
import net.minecraft.block.properties.PropertyEnum;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
import net.minecraft.block.state.BlockStateContainer;
|
||||||
import net.minecraft.block.state.IBlockState;
|
import net.minecraft.block.state.IBlockState;
|
||||||
import net.minecraft.creativetab.CreativeTabs;
|
import net.minecraft.creativetab.CreativeTabs;
|
||||||
import net.minecraft.item.EnumRarity;
|
import net.minecraft.item.EnumRarity;
|
||||||
|
@ -32,7 +35,7 @@ import java.util.List;
|
||||||
public class BlockMisc extends BlockBase{
|
public class BlockMisc extends BlockBase{
|
||||||
|
|
||||||
public static final TheMiscBlocks[] ALL_MISC_BLOCKS = TheMiscBlocks.values();
|
public static final TheMiscBlocks[] ALL_MISC_BLOCKS = TheMiscBlocks.values();
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, ALL_MISC_BLOCKS.length-1);
|
private static final PropertyEnum<TheMiscBlocks> TYPE = PropertyEnum.create("type", TheMiscBlocks.class);
|
||||||
|
|
||||||
public BlockMisc(String name){
|
public BlockMisc(String name){
|
||||||
super(Material.ROCK, name);
|
super(Material.ROCK, name);
|
||||||
|
@ -62,7 +65,7 @@ public class BlockMisc extends BlockBase{
|
||||||
@Override
|
@Override
|
||||||
protected void registerRendering(){
|
protected void registerRendering(){
|
||||||
for(int i = 0; i < ALL_MISC_BLOCKS.length; i++){
|
for(int i = 0; i < ALL_MISC_BLOCKS.length; i++){
|
||||||
ActuallyAdditions.proxy.addRenderRegister(new ItemStack(this, 1, i), this.getRegistryName(), META.getName()+"="+i);
|
ActuallyAdditions.proxy.addRenderRegister(new ItemStack(this, 1, i), this.getRegistryName(), TYPE.getName()+"="+ALL_MISC_BLOCKS[i].name);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -72,8 +75,18 @@ public class BlockMisc extends BlockBase{
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(TYPE, TheMiscBlocks.values()[meta]);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(TYPE).ordinal();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, TYPE);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class TheItemBlock extends ItemBlockBase{
|
public static class TheItemBlock extends ItemBlockBase{
|
||||||
|
|
|
@ -15,18 +15,18 @@ import de.ellpeck.actuallyadditions.mod.ActuallyAdditions;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
||||||
import de.ellpeck.actuallyadditions.mod.tile.TileEntityOilGenerator;
|
import de.ellpeck.actuallyadditions.mod.tile.TileEntityOilGenerator;
|
||||||
|
import net.minecraft.block.BlockHorizontal;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
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.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.EnumRarity;
|
import net.minecraft.item.EnumRarity;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.*;
|
||||||
import net.minecraft.util.EnumHand;
|
|
||||||
import net.minecraft.util.EnumParticleTypes;
|
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.util.math.MathHelper;
|
import net.minecraft.util.math.MathHelper;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
@ -93,20 +93,7 @@ public class BlockOilGenerator extends BlockContainerBase{
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){
|
public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){
|
||||||
int rotation = MathHelper.floor_double((double)(player.rotationYaw*4.0F/360.0F)+0.5D) & 3;
|
world.setBlockState(pos, state.withProperty(BlockHorizontal.FACING, player.getHorizontalFacing().getOpposite()), 2);
|
||||||
|
|
||||||
if(rotation == 0){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(0), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 1){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(3), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 2){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(1), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 3){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(2), 2);
|
|
||||||
}
|
|
||||||
|
|
||||||
super.onBlockPlacedBy(world, pos, state, player, stack);
|
super.onBlockPlacedBy(world, pos, state, player, stack);
|
||||||
}
|
}
|
||||||
|
@ -123,8 +110,27 @@ public class BlockOilGenerator extends BlockContainerBase{
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(BlockHorizontal.FACING, EnumFacing.getHorizontal(meta));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(BlockHorizontal.FACING).getHorizontalIndex();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, BlockHorizontal.FACING);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withRotation(IBlockState state, Rotation rot){
|
||||||
|
return state.withProperty(BlockHorizontal.FACING, rot.rotate(state.getValue(BlockHorizontal.FACING)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withMirror(IBlockState state, Mirror mirror){
|
||||||
|
return this.withRotation(state, mirror.toRotation(state.getValue(BlockHorizontal.FACING)));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,17 +14,17 @@ import de.ellpeck.actuallyadditions.mod.blocks.base.BlockBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.base.ItemBlockBase;
|
import de.ellpeck.actuallyadditions.mod.blocks.base.ItemBlockBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.util.StackUtil;
|
import de.ellpeck.actuallyadditions.mod.util.StackUtil;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
|
import net.minecraft.block.BlockHorizontal;
|
||||||
|
import net.minecraft.block.BlockSlab;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
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.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.EnumRarity;
|
import net.minecraft.item.EnumRarity;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.util.EnumActionResult;
|
import net.minecraft.util.*;
|
||||||
import net.minecraft.util.EnumFacing;
|
|
||||||
import net.minecraft.util.EnumHand;
|
|
||||||
import net.minecraft.util.SoundCategory;
|
|
||||||
import net.minecraft.util.math.AxisAlignedBB;
|
import net.minecraft.util.math.AxisAlignedBB;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.world.IBlockAccess;
|
import net.minecraft.world.IBlockAccess;
|
||||||
|
@ -37,7 +37,6 @@ public class BlockSlabs extends BlockBase{
|
||||||
public static final AxisAlignedBB AABB_BOTTOM_HALF = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.5D, 1.0D);
|
public static final AxisAlignedBB AABB_BOTTOM_HALF = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.5D, 1.0D);
|
||||||
private static final AxisAlignedBB AABB_TOP_HALF = new AxisAlignedBB(0.0D, 0.5D, 0.0D, 1.0D, 1.0D, 1.0D);
|
private static final AxisAlignedBB AABB_TOP_HALF = new AxisAlignedBB(0.0D, 0.5D, 0.0D, 1.0D, 1.0D, 1.0D);
|
||||||
|
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, 1);
|
|
||||||
private final Block fullBlock;
|
private final Block fullBlock;
|
||||||
private final int meta;
|
private final int meta;
|
||||||
|
|
||||||
|
@ -91,7 +90,7 @@ public class BlockSlabs extends BlockBase{
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos){
|
public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos){
|
||||||
return state.getValue(META) == 1 ? AABB_TOP_HALF : AABB_BOTTOM_HALF;
|
return state.getValue(BlockSlab.HALF) == BlockSlab.EnumBlockHalf.TOP ? AABB_TOP_HALF : AABB_BOTTOM_HALF;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -105,8 +104,18 @@ public class BlockSlabs extends BlockBase{
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(BlockSlab.HALF, meta == 0 ? BlockSlab.EnumBlockHalf.BOTTOM : BlockSlab.EnumBlockHalf.TOP);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(BlockSlab.HALF) == BlockSlab.EnumBlockHalf.BOTTOM ? 0 : 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, BlockSlab.HALF);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class TheItemBlock extends ItemBlockBase{
|
public static class TheItemBlock extends ItemBlockBase{
|
||||||
|
@ -125,7 +134,7 @@ public class BlockSlabs extends BlockBase{
|
||||||
|
|
||||||
if(state.getBlock() == this.block){
|
if(state.getBlock() == this.block){
|
||||||
BlockSlabs theBlock = (BlockSlabs)this.block;
|
BlockSlabs theBlock = (BlockSlabs)this.block;
|
||||||
if((facing == EnumFacing.UP && state.getValue(META) == 0 || facing == EnumFacing.DOWN && state.getValue(META) == 1)){
|
if((facing == EnumFacing.UP && state.getValue(BlockSlab.HALF) == BlockSlab.EnumBlockHalf.BOTTOM) || (facing == EnumFacing.DOWN && state.getValue(BlockSlab.HALF) == BlockSlab.EnumBlockHalf.TOP)){
|
||||||
IBlockState newState = theBlock.fullBlock.getStateFromMeta(theBlock.meta);
|
IBlockState newState = theBlock.fullBlock.getStateFromMeta(theBlock.meta);
|
||||||
AxisAlignedBB bound = newState.getCollisionBoundingBox(worldIn, pos);
|
AxisAlignedBB bound = newState.getCollisionBoundingBox(worldIn, pos);
|
||||||
|
|
||||||
|
@ -152,7 +161,7 @@ public class BlockSlabs extends BlockBase{
|
||||||
IBlockState state = worldIn.getBlockState(pos);
|
IBlockState state = worldIn.getBlockState(pos);
|
||||||
|
|
||||||
if(state.getBlock() == this.block){
|
if(state.getBlock() == this.block){
|
||||||
if((side == EnumFacing.UP && state.getValue(META) == 0 || side == EnumFacing.DOWN && state.getValue(META) == 1)){
|
if((side == EnumFacing.UP && state.getValue(BlockSlab.HALF) == BlockSlab.EnumBlockHalf.BOTTOM) || (side == EnumFacing.DOWN && state.getValue(BlockSlab.HALF) == BlockSlab.EnumBlockHalf.TOP)){
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,18 +16,18 @@ import de.ellpeck.actuallyadditions.mod.achievement.TheAchievements;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
||||||
import de.ellpeck.actuallyadditions.mod.tile.TileEntitySmileyCloud;
|
import de.ellpeck.actuallyadditions.mod.tile.TileEntitySmileyCloud;
|
||||||
|
import net.minecraft.block.BlockHorizontal;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
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.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.EnumRarity;
|
import net.minecraft.item.EnumRarity;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.*;
|
||||||
import net.minecraft.util.EnumHand;
|
|
||||||
import net.minecraft.util.EnumParticleTypes;
|
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.util.math.MathHelper;
|
import net.minecraft.util.math.MathHelper;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
@ -38,8 +38,6 @@ import java.util.Random;
|
||||||
|
|
||||||
public class BlockSmileyCloud extends BlockContainerBase{
|
public class BlockSmileyCloud extends BlockContainerBase{
|
||||||
|
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, 7);
|
|
||||||
|
|
||||||
public BlockSmileyCloud(String name){
|
public BlockSmileyCloud(String name){
|
||||||
super(Material.CLOTH, name);
|
super(Material.CLOTH, name);
|
||||||
this.setHardness(0.5F);
|
this.setHardness(0.5F);
|
||||||
|
@ -103,26 +101,33 @@ public class BlockSmileyCloud extends BlockContainerBase{
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){
|
public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){
|
||||||
int rotation = MathHelper.floor_double((double)(player.rotationYaw*4.0F/360.0F)+0.5D) & 3;
|
world.setBlockState(pos, state.withProperty(BlockHorizontal.FACING, player.getHorizontalFacing().getOpposite()), 2);
|
||||||
|
|
||||||
if(rotation == 0){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(0), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 1){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(3), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 2){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(1), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 3){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(2), 2);
|
|
||||||
}
|
|
||||||
|
|
||||||
super.onBlockPlacedBy(world, pos, state, player, stack);
|
super.onBlockPlacedBy(world, pos, state, player, stack);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(BlockHorizontal.FACING, EnumFacing.getHorizontal(meta));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(BlockHorizontal.FACING).getHorizontalIndex();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, BlockHorizontal.FACING);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withRotation(IBlockState state, Rotation rot){
|
||||||
|
return state.withProperty(BlockHorizontal.FACING, rot.rotate(state.getValue(BlockHorizontal.FACING)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withMirror(IBlockState state, Mirror mirror){
|
||||||
|
return this.withRotation(state, mirror.toRotation(state.getValue(BlockHorizontal.FACING)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,9 +15,11 @@ import de.ellpeck.actuallyadditions.api.recipe.TreasureChestLoot;
|
||||||
import de.ellpeck.actuallyadditions.mod.achievement.TheAchievements;
|
import de.ellpeck.actuallyadditions.mod.achievement.TheAchievements;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockBase;
|
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.util.StackUtil;
|
import de.ellpeck.actuallyadditions.mod.util.StackUtil;
|
||||||
|
import net.minecraft.block.BlockHorizontal;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
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;
|
||||||
|
@ -37,8 +39,6 @@ import java.util.Random;
|
||||||
|
|
||||||
public class BlockTreasureChest extends BlockBase{
|
public class BlockTreasureChest extends BlockBase{
|
||||||
|
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, 3);
|
|
||||||
|
|
||||||
public BlockTreasureChest(String name){
|
public BlockTreasureChest(String name){
|
||||||
super(Material.WOOD, name);
|
super(Material.WOOD, name);
|
||||||
this.setHarvestLevel("axe", 0);
|
this.setHarvestLevel("axe", 0);
|
||||||
|
@ -79,20 +79,9 @@ public class BlockTreasureChest extends BlockBase{
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){
|
public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){
|
||||||
int rotation = MathHelper.floor_double((double)(player.rotationYaw*4.0F/360.0F)+0.5D) & 3;
|
world.setBlockState(pos, state.withProperty(BlockHorizontal.FACING, player.getHorizontalFacing().getOpposite()), 2);
|
||||||
|
|
||||||
if(rotation == 0){
|
super.onBlockPlacedBy(world, pos, state, player, stack);
|
||||||
world.setBlockState(pos, this.getStateFromMeta(0), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 1){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(3), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 2){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(1), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 3){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(2), 2);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -124,7 +113,27 @@ public class BlockTreasureChest extends BlockBase{
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(BlockHorizontal.FACING, EnumFacing.getHorizontal(meta));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(BlockHorizontal.FACING).getHorizontalIndex();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, BlockHorizontal.FACING);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withRotation(IBlockState state, Rotation rot){
|
||||||
|
return state.withProperty(BlockHorizontal.FACING, rot.rotate(state.getValue(BlockHorizontal.FACING)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withMirror(IBlockState state, Mirror mirror){
|
||||||
|
return this.withRotation(state, mirror.toRotation(state.getValue(BlockHorizontal.FACING)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,11 +16,14 @@ import de.ellpeck.actuallyadditions.mod.blocks.base.BlockBushBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockPlant;
|
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockPlant;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.base.ItemBlockBase;
|
import de.ellpeck.actuallyadditions.mod.blocks.base.ItemBlockBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.metalists.TheWildPlants;
|
import de.ellpeck.actuallyadditions.mod.blocks.metalists.TheWildPlants;
|
||||||
|
import de.ellpeck.actuallyadditions.mod.items.metalists.TheCrystals;
|
||||||
import de.ellpeck.actuallyadditions.mod.util.StringUtil;
|
import de.ellpeck.actuallyadditions.mod.util.StringUtil;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
|
import net.minecraft.block.properties.PropertyEnum;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
import net.minecraft.block.state.BlockStateContainer;
|
||||||
import net.minecraft.block.state.IBlockState;
|
import net.minecraft.block.state.IBlockState;
|
||||||
import net.minecraft.creativetab.CreativeTabs;
|
import net.minecraft.creativetab.CreativeTabs;
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
|
@ -41,7 +44,7 @@ import java.util.List;
|
||||||
public class BlockWildPlant extends BlockBushBase{
|
public class BlockWildPlant extends BlockBushBase{
|
||||||
|
|
||||||
public static final TheWildPlants[] ALL_WILD_PLANTS = TheWildPlants.values();
|
public static final TheWildPlants[] ALL_WILD_PLANTS = TheWildPlants.values();
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, ALL_WILD_PLANTS.length-1);
|
private static final PropertyEnum<TheWildPlants> TYPE = PropertyEnum.create("type", TheWildPlants.class);
|
||||||
|
|
||||||
public BlockWildPlant(String name){
|
public BlockWildPlant(String name){
|
||||||
super(name);
|
super(name);
|
||||||
|
@ -96,20 +99,30 @@ public class BlockWildPlant extends BlockBushBase{
|
||||||
@Override
|
@Override
|
||||||
protected void registerRendering(){
|
protected void registerRendering(){
|
||||||
for(int i = 0; i < ALL_WILD_PLANTS.length; i++){
|
for(int i = 0; i < ALL_WILD_PLANTS.length; i++){
|
||||||
ActuallyAdditions.proxy.addRenderRegister(new ItemStack(this, 1, i), this.getRegistryName(), META.getName()+"="+i);
|
ActuallyAdditions.proxy.addRenderRegister(new ItemStack(this, 1, i), this.getRegistryName(), TYPE.getName()+"="+ALL_WILD_PLANTS[i].name);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState getStateFromMeta(int meta){
|
||||||
|
return this.getDefaultState().withProperty(TYPE, TheWildPlants.values()[meta]);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(TYPE).ordinal();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, TYPE);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public EnumRarity getRarity(ItemStack stack){
|
public EnumRarity getRarity(ItemStack stack){
|
||||||
return stack.getItemDamage() >= ALL_WILD_PLANTS.length ? EnumRarity.COMMON : ALL_WILD_PLANTS[stack.getItemDamage()].rarity;
|
return stack.getItemDamage() >= ALL_WILD_PLANTS.length ? EnumRarity.COMMON : ALL_WILD_PLANTS[stack.getItemDamage()].rarity;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
protected PropertyInteger getMetaProperty(){
|
|
||||||
return META;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static class TheItemBlock extends ItemBlockBase{
|
public static class TheItemBlock extends ItemBlockBase{
|
||||||
|
|
||||||
public TheItemBlock(Block block){
|
public TheItemBlock(Block block){
|
||||||
|
@ -121,7 +134,7 @@ public class BlockWildPlant extends BlockBushBase{
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getUnlocalizedName(ItemStack stack){
|
public String getUnlocalizedName(ItemStack stack){
|
||||||
return stack.getItemDamage() >= ALL_WILD_PLANTS.length ? StringUtil.BUGGED_ITEM_NAME : this.getUnlocalizedName()+ALL_WILD_PLANTS[stack.getItemDamage()].name;
|
return stack.getItemDamage() >= ALL_WILD_PLANTS.length ? StringUtil.BUGGED_ITEM_NAME : this.getUnlocalizedName()+"_"+ALL_WILD_PLANTS[stack.getItemDamage()].name;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,9 +15,11 @@ import de.ellpeck.actuallyadditions.mod.ActuallyAdditions;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase;
|
||||||
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler;
|
||||||
import de.ellpeck.actuallyadditions.mod.tile.TileEntityXPSolidifier;
|
import de.ellpeck.actuallyadditions.mod.tile.TileEntityXPSolidifier;
|
||||||
|
import net.minecraft.block.BlockHorizontal;
|
||||||
import net.minecraft.block.SoundType;
|
import net.minecraft.block.SoundType;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.PropertyInteger;
|
import net.minecraft.block.properties.PropertyInteger;
|
||||||
|
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.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
|
@ -26,14 +28,14 @@ import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.EnumHand;
|
import net.minecraft.util.EnumHand;
|
||||||
|
import net.minecraft.util.Mirror;
|
||||||
|
import net.minecraft.util.Rotation;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.util.math.MathHelper;
|
import net.minecraft.util.math.MathHelper;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
public class BlockXPSolidifier extends BlockContainerBase{
|
public class BlockXPSolidifier extends BlockContainerBase{
|
||||||
|
|
||||||
private static final PropertyInteger META = PropertyInteger.create("meta", 0, 3);
|
|
||||||
|
|
||||||
public BlockXPSolidifier(String name){
|
public BlockXPSolidifier(String name){
|
||||||
super(Material.ROCK, name);
|
super(Material.ROCK, name);
|
||||||
this.setHarvestLevel("pickaxe", 0);
|
this.setHarvestLevel("pickaxe", 0);
|
||||||
|
@ -67,27 +69,34 @@ public class BlockXPSolidifier extends BlockContainerBase{
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){
|
public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){
|
||||||
int rotation = MathHelper.floor_double((double)(player.rotationYaw*4.0F/360.0F)+0.5D) & 3;
|
world.setBlockState(pos, state.withProperty(BlockHorizontal.FACING, player.getHorizontalFacing().getOpposite()), 2);
|
||||||
|
|
||||||
if(rotation == 0){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(0), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 1){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(3), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 2){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(1), 2);
|
|
||||||
}
|
|
||||||
if(rotation == 3){
|
|
||||||
world.setBlockState(pos, this.getStateFromMeta(2), 2);
|
|
||||||
}
|
|
||||||
|
|
||||||
super.onBlockPlacedBy(world, pos, state, player, stack);
|
super.onBlockPlacedBy(world, pos, state, player, stack);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected PropertyInteger getMetaProperty(){
|
public IBlockState getStateFromMeta(int meta){
|
||||||
return META;
|
return this.getDefaultState().withProperty(BlockHorizontal.FACING, EnumFacing.getHorizontal(meta));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState(IBlockState state){
|
||||||
|
return state.getValue(BlockHorizontal.FACING).getHorizontalIndex();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected BlockStateContainer createBlockState(){
|
||||||
|
return new BlockStateContainer(this, BlockHorizontal.FACING);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withRotation(IBlockState state, Rotation rot){
|
||||||
|
return state.withProperty(BlockHorizontal.FACING, rot.rotate(state.getValue(BlockHorizontal.FACING)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState withMirror(IBlockState state, Mirror mirror){
|
||||||
|
return this.withRotation(state, mirror.toRotation(state.getValue(BlockHorizontal.FACING)));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -57,24 +57,4 @@ public class BlockBase extends Block implements ItemBlockBase.ICustomRarity{
|
||||||
public EnumRarity getRarity(ItemStack stack){
|
public EnumRarity getRarity(ItemStack stack){
|
||||||
return EnumRarity.COMMON;
|
return EnumRarity.COMMON;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public IBlockState getStateFromMeta(int meta){
|
|
||||||
return this.getMetaProperty() == null ? super.getStateFromMeta(meta) : this.getDefaultState().withProperty(this.getMetaProperty(), meta);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int getMetaFromState(IBlockState state){
|
|
||||||
return this.getMetaProperty() == null ? super.getMetaFromState(state) : state.getValue(this.getMetaProperty());
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected BlockStateContainer createBlockState(){
|
|
||||||
return this.getMetaProperty() == null ? super.createBlockState() : new BlockStateContainer(this, this.getMetaProperty());
|
|
||||||
}
|
|
||||||
|
|
||||||
protected PropertyInteger getMetaProperty(){
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -57,24 +57,4 @@ public class BlockBushBase extends BlockBush implements ItemBlockBase.ICustomRar
|
||||||
public EnumRarity getRarity(ItemStack stack){
|
public EnumRarity getRarity(ItemStack stack){
|
||||||
return EnumRarity.COMMON;
|
return EnumRarity.COMMON;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public IBlockState getStateFromMeta(int meta){
|
|
||||||
return this.getMetaProperty() == null ? super.getStateFromMeta(meta) : this.getDefaultState().withProperty(this.getMetaProperty(), meta);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int getMetaFromState(IBlockState state){
|
|
||||||
return this.getMetaProperty() == null ? super.getMetaFromState(state) : state.getValue(this.getMetaProperty());
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected BlockStateContainer createBlockState(){
|
|
||||||
return this.getMetaProperty() == null ? super.createBlockState() : new BlockStateContainer(this, this.getMetaProperty());
|
|
||||||
}
|
|
||||||
|
|
||||||
protected PropertyInteger getMetaProperty(){
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -132,16 +132,6 @@ public abstract class BlockContainerBase extends BlockContainer implements ItemB
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public IBlockState getStateFromMeta(int meta){
|
|
||||||
return this.getMetaProperty() == null ? super.getStateFromMeta(meta) : this.getDefaultState().withProperty(this.getMetaProperty(), meta);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int getMetaFromState(IBlockState state){
|
|
||||||
return this.getMetaProperty() == null ? super.getMetaFromState(state) : state.getValue(this.getMetaProperty());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateTick(World world, BlockPos pos, IBlockState state, Random random){
|
public void updateTick(World world, BlockPos pos, IBlockState state, Random random){
|
||||||
if(!world.isRemote){
|
if(!world.isRemote){
|
||||||
|
@ -245,13 +235,6 @@ public abstract class BlockContainerBase extends BlockContainer implements ItemB
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected BlockStateContainer createBlockState(){
|
|
||||||
return this.getMetaProperty() == null ? super.createBlockState() : new BlockStateContainer(this, this.getMetaProperty());
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ArrayList<ItemStack> getDrops(IBlockAccess world, BlockPos pos, IBlockState state, int fortune){
|
public ArrayList<ItemStack> getDrops(IBlockAccess world, BlockPos pos, IBlockState state, int fortune){
|
||||||
ArrayList<ItemStack> drops = new ArrayList<ItemStack>();
|
ArrayList<ItemStack> drops = new ArrayList<ItemStack>();
|
||||||
|
@ -290,11 +273,6 @@ public abstract class BlockContainerBase extends BlockContainer implements ItemB
|
||||||
return drops;
|
return drops;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected PropertyInteger getMetaProperty(){
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public EnumBlockRenderType getRenderType(IBlockState state){
|
public EnumBlockRenderType getRenderType(IBlockState state){
|
||||||
return EnumBlockRenderType.MODEL;
|
return EnumBlockRenderType.MODEL;
|
||||||
|
|
|
@ -10,7 +10,9 @@
|
||||||
|
|
||||||
package de.ellpeck.actuallyadditions.mod.blocks.metalists;
|
package de.ellpeck.actuallyadditions.mod.blocks.metalists;
|
||||||
|
|
||||||
public enum TheColoredLampColors{
|
import net.minecraft.util.IStringSerializable;
|
||||||
|
|
||||||
|
public enum TheColoredLampColors implements IStringSerializable{
|
||||||
|
|
||||||
WHITE("White", "white"),
|
WHITE("White", "white"),
|
||||||
ORANGE("Orange", "orange"),
|
ORANGE("Orange", "orange"),
|
||||||
|
@ -37,6 +39,11 @@ public enum TheColoredLampColors{
|
||||||
this.regName = regName;
|
this.regName = regName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getName(){
|
||||||
|
return this.regName;
|
||||||
|
}
|
||||||
|
|
||||||
public static TheColoredLampColors getColorFromDyeName(String color){
|
public static TheColoredLampColors getColorFromDyeName(String color){
|
||||||
if(color.substring(0, 3).equals("dye")){
|
if(color.substring(0, 3).equals("dye")){
|
||||||
String actualName = color.substring(3);
|
String actualName = color.substring(3);
|
||||||
|
|
|
@ -11,8 +11,9 @@
|
||||||
package de.ellpeck.actuallyadditions.mod.blocks.metalists;
|
package de.ellpeck.actuallyadditions.mod.blocks.metalists;
|
||||||
|
|
||||||
import net.minecraft.item.EnumRarity;
|
import net.minecraft.item.EnumRarity;
|
||||||
|
import net.minecraft.util.IStringSerializable;
|
||||||
|
|
||||||
public enum TheMiscBlocks{
|
public enum TheMiscBlocks implements IStringSerializable{
|
||||||
|
|
||||||
QUARTZ_PILLAR("black_quartz_pillar", EnumRarity.RARE),
|
QUARTZ_PILLAR("black_quartz_pillar", EnumRarity.RARE),
|
||||||
QUARTZ_CHISELED("black_quartz_chiseled", EnumRarity.RARE),
|
QUARTZ_CHISELED("black_quartz_chiseled", EnumRarity.RARE),
|
||||||
|
@ -32,4 +33,9 @@ public enum TheMiscBlocks{
|
||||||
this.name = name;
|
this.name = name;
|
||||||
this.rarity = rarity;
|
this.rarity = rarity;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getName(){
|
||||||
|
return this.name;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -13,13 +13,14 @@ package de.ellpeck.actuallyadditions.mod.blocks.metalists;
|
||||||
import de.ellpeck.actuallyadditions.mod.blocks.InitBlocks;
|
import de.ellpeck.actuallyadditions.mod.blocks.InitBlocks;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.item.EnumRarity;
|
import net.minecraft.item.EnumRarity;
|
||||||
|
import net.minecraft.util.IStringSerializable;
|
||||||
|
|
||||||
public enum TheWildPlants{
|
public enum TheWildPlants implements IStringSerializable{
|
||||||
|
|
||||||
CANOLA("Canola", EnumRarity.RARE, InitBlocks.blockCanola),
|
CANOLA("canola", EnumRarity.RARE, InitBlocks.blockCanola),
|
||||||
FLAX("Flax", EnumRarity.RARE, InitBlocks.blockFlax),
|
FLAX("flax", EnumRarity.RARE, InitBlocks.blockFlax),
|
||||||
RICE("Rice", EnumRarity.RARE, InitBlocks.blockRice),
|
RICE("rice", EnumRarity.RARE, InitBlocks.blockRice),
|
||||||
COFFEE("Coffee", EnumRarity.RARE, InitBlocks.blockCoffee);
|
COFFEE("coffee", EnumRarity.RARE, InitBlocks.blockCoffee);
|
||||||
|
|
||||||
public final String name;
|
public final String name;
|
||||||
public final EnumRarity rarity;
|
public final EnumRarity rarity;
|
||||||
|
@ -30,4 +31,9 @@ public enum TheWildPlants{
|
||||||
this.rarity = rarity;
|
this.rarity = rarity;
|
||||||
this.wildVersionOf = wildVersionOf;
|
this.wildVersionOf = wildVersionOf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getName(){
|
||||||
|
return this.name;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -32,8 +32,6 @@ public class RenderSmileyCloud extends TileEntitySpecialRenderer{
|
||||||
GlStateManager.rotate(180F, 0.0F, 0.0F, 1.0F);
|
GlStateManager.rotate(180F, 0.0F, 0.0F, 1.0F);
|
||||||
GlStateManager.translate(0.0F, -2F, 0.0F);
|
GlStateManager.translate(0.0F, -2F, 0.0F);
|
||||||
|
|
||||||
theCloud.setStatus(theCloud.name != null && !theCloud.name.isEmpty() && theCloud.name.equals("Pink Fluffy Unicloud"));
|
|
||||||
|
|
||||||
if(theCloud.name != null && !theCloud.name.isEmpty()){
|
if(theCloud.name != null && !theCloud.name.isEmpty()){
|
||||||
easterEggs:
|
easterEggs:
|
||||||
for(ISmileyCloudEasterEgg cloud : SmileyCloudEasterEggs.CLOUD_STUFF){
|
for(ISmileyCloudEasterEgg cloud : SmileyCloudEasterEggs.CLOUD_STUFF){
|
||||||
|
|
|
@ -12,8 +12,9 @@ package de.ellpeck.actuallyadditions.mod.items.metalists;
|
||||||
|
|
||||||
import de.ellpeck.actuallyadditions.mod.util.Util;
|
import de.ellpeck.actuallyadditions.mod.util.Util;
|
||||||
import net.minecraft.item.EnumRarity;
|
import net.minecraft.item.EnumRarity;
|
||||||
|
import net.minecraft.util.IStringSerializable;
|
||||||
|
|
||||||
public enum TheCrystals{
|
public enum TheCrystals implements IStringSerializable{
|
||||||
|
|
||||||
REDSTONE("red", Util.CRYSTAL_RED_RARITY, 158F/255F, 43F/255F, 39F/255F),
|
REDSTONE("red", Util.CRYSTAL_RED_RARITY, 158F/255F, 43F/255F, 39F/255F),
|
||||||
LAPIS("blue", Util.CRYSTAL_BLUE_RARITY, 37F/255F, 49F/255F, 147F/255F),
|
LAPIS("blue", Util.CRYSTAL_BLUE_RARITY, 37F/255F, 49F/255F, 147F/255F),
|
||||||
|
@ -31,4 +32,9 @@ public enum TheCrystals{
|
||||||
this.rarity = rarity;
|
this.rarity = rarity;
|
||||||
this.conversionColorParticles = conversionColorParticles;
|
this.conversionColorParticles = conversionColorParticles;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getName(){
|
||||||
|
return this.name;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -139,21 +139,6 @@ public class TileEntityFurnaceDouble extends TileEntityInventoryBase implements
|
||||||
this.secondSmeltTime = 0;
|
this.secondSmeltTime = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(flag != (this.firstSmeltTime > 0 || this.secondSmeltTime > 0)){
|
|
||||||
this.markDirty();
|
|
||||||
IBlockState state = this.worldObj.getBlockState(this.pos);
|
|
||||||
Block block = state.getBlock();
|
|
||||||
int meta = block.getMetaFromState(state);
|
|
||||||
if(meta > 3){
|
|
||||||
if(!this.canSmeltOn(SLOT_INPUT_1, SLOT_OUTPUT_1) && !this.canSmeltOn(SLOT_INPUT_2, SLOT_OUTPUT_2)){
|
|
||||||
this.worldObj.setBlockState(this.pos, block.getStateFromMeta(meta-4), 2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
this.worldObj.setBlockState(this.pos, block.getStateFromMeta(meta+4), 2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if((this.lastEnergy != this.storage.getEnergyStored() || this.lastFirstSmelt != this.firstSmeltTime || this.lastSecondSmelt != this.secondSmeltTime || this.isAutoSplit != this.lastAutoSplit) && this.sendUpdateWithInterval()){
|
if((this.lastEnergy != this.storage.getEnergyStored() || this.lastFirstSmelt != this.firstSmeltTime || this.lastSecondSmelt != this.secondSmeltTime || this.isAutoSplit != this.lastAutoSplit) && this.sendUpdateWithInterval()){
|
||||||
this.lastEnergy = this.storage.getEnergyStored();
|
this.lastEnergy = this.storage.getEnergyStored();
|
||||||
this.lastFirstSmelt = this.firstSmeltTime;
|
this.lastFirstSmelt = this.firstSmeltTime;
|
||||||
|
|
|
@ -117,7 +117,7 @@ public class TileEntityGrinder extends TileEntityInventoryBase implements ICusto
|
||||||
|
|
||||||
if(canCrushOnFirst){
|
if(canCrushOnFirst){
|
||||||
if(this.storage.getEnergyStored() >= ENERGY_USE){
|
if(this.storage.getEnergyStored() >= ENERGY_USE){
|
||||||
if(this.firstCrushTime%30 == 0){
|
if(this.firstCrushTime%20 == 0){
|
||||||
shouldPlaySound = true;
|
shouldPlaySound = true;
|
||||||
}
|
}
|
||||||
this.firstCrushTime++;
|
this.firstCrushTime++;
|
||||||
|
@ -135,7 +135,7 @@ public class TileEntityGrinder extends TileEntityInventoryBase implements ICusto
|
||||||
if(this.isDouble){
|
if(this.isDouble){
|
||||||
if(canCrushOnSecond){
|
if(canCrushOnSecond){
|
||||||
if(this.storage.getEnergyStored() >= ENERGY_USE){
|
if(this.storage.getEnergyStored() >= ENERGY_USE){
|
||||||
if(this.secondCrushTime%30 == 0){
|
if(this.secondCrushTime%20 == 0){
|
||||||
shouldPlaySound = true;
|
shouldPlaySound = true;
|
||||||
}
|
}
|
||||||
this.secondCrushTime++;
|
this.secondCrushTime++;
|
||||||
|
@ -151,21 +151,6 @@ public class TileEntityGrinder extends TileEntityInventoryBase implements ICusto
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(flag != (this.firstCrushTime > 0 || this.secondCrushTime > 0)){
|
|
||||||
this.markDirty();
|
|
||||||
IBlockState state = this.worldObj.getBlockState(this.pos);
|
|
||||||
Block block = state.getBlock();
|
|
||||||
int meta = block.getMetaFromState(state);
|
|
||||||
if(meta == 1){
|
|
||||||
if(!this.canCrushOn(SLOT_INPUT_1, SLOT_OUTPUT_1_1, SLOT_OUTPUT_1_2) && (!this.isDouble || !this.canCrushOn(SLOT_INPUT_2, SLOT_OUTPUT_2_1, SLOT_OUTPUT_2_2))){
|
|
||||||
this.worldObj.setBlockState(this.pos, block.getStateFromMeta(0), 2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
this.worldObj.setBlockState(this.pos, block.getStateFromMeta(1), 2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if((this.lastEnergy != this.storage.getEnergyStored() || this.lastFirstCrush != this.firstCrushTime || this.lastSecondCrush != this.secondCrushTime || this.isAutoSplit != this.lastAutoSplit) && this.sendUpdateWithInterval()){
|
if((this.lastEnergy != this.storage.getEnergyStored() || this.lastFirstCrush != this.firstCrushTime || this.lastSecondCrush != this.secondCrushTime || this.isAutoSplit != this.lastAutoSplit) && this.sendUpdateWithInterval()){
|
||||||
this.lastEnergy = this.storage.getEnergyStored();
|
this.lastEnergy = this.storage.getEnergyStored();
|
||||||
this.lastFirstCrush = this.firstCrushTime;
|
this.lastFirstCrush = this.firstCrushTime;
|
||||||
|
|
|
@ -57,20 +57,4 @@ public class TileEntitySmileyCloud extends TileEntityBase implements IStringReac
|
||||||
public void onTextReceived(String text, int textID, EntityPlayer player){
|
public void onTextReceived(String text, int textID, EntityPlayer player){
|
||||||
this.name = text;
|
this.name = text;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setStatus(boolean pinkAndFluffy){
|
|
||||||
IBlockState state = this.worldObj.getBlockState(this.pos);
|
|
||||||
Block block = state.getBlock();
|
|
||||||
int meta = block.getMetaFromState(state);
|
|
||||||
if(pinkAndFluffy){
|
|
||||||
if(meta <= 3){
|
|
||||||
this.worldObj.setBlockState(this.pos, block.getStateFromMeta(meta+4), 2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
if(meta >= 4){
|
|
||||||
this.worldObj.setBlockState(this.pos, block.getStateFromMeta(meta-4), 2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,13 +14,13 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "x" : 90 },
|
"down": { "x" : 90 },
|
||||||
"1": { "x" : 270 },
|
"up": { "x" : 270 },
|
||||||
"2": { "y" : 0 },
|
"north": { "y" : 0 },
|
||||||
"3": { "y" : 180 },
|
"south": { "y" : 180 },
|
||||||
"4": { "y" : 270 },
|
"west": { "y" : 270 },
|
||||||
"5": { "y" : 90 }
|
"east": { "y" : 90 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -16,13 +16,13 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "x" : 90 },
|
"down": { "x" : 90 },
|
||||||
"1": { "x" : 270 },
|
"up": { "x" : 270 },
|
||||||
"2": { "y" : 0 },
|
"north": { "y" : 0 },
|
||||||
"3": { "y" : 180 },
|
"south": { "y" : 180 },
|
||||||
"4": { "y" : 270 },
|
"west": { "y" : 270 },
|
||||||
"5": { "y" : 90 }
|
"east": { "y" : 90 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -12,9 +12,9 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"half": {
|
||||||
"0": {},
|
"bottom": {},
|
||||||
"1": { "model": "minecraft:upper_slab" }
|
"top": { "model": "minecraft:upper_slab" }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -10,11 +10,11 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "y" : 0 },
|
"north": { "y" : 0 },
|
||||||
"1": { "y" : 180 },
|
"south": { "y" : 180 },
|
||||||
"2": { "y" : 270 },
|
"west": { "y" : 270 },
|
||||||
"3": { "y" : 90 }
|
"east": { "y" : 90 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -7,11 +7,11 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "y" : 180 },
|
"south": { "y" : 180 },
|
||||||
"1": { "y" : 0 },
|
"west": { "y" : 0 },
|
||||||
"2": { "y" : 90 },
|
"north": { "y" : 90 },
|
||||||
"3": { "y" : 270 }
|
"east": { "y" : 270 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -7,23 +7,23 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"type": {
|
||||||
"0": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_white" } },
|
"white": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_white" } },
|
||||||
"1": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_orange" } },
|
"orange": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_orange" } },
|
||||||
"2": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_magenta" } },
|
"magenta": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_magenta" } },
|
||||||
"3": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_light_blue" } },
|
"light_blue": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_light_blue" } },
|
||||||
"4": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_yellow" } },
|
"yellow": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_yellow" } },
|
||||||
"5": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_lime" } },
|
"lime": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_lime" } },
|
||||||
"6": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_pink" } },
|
"pink": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_pink" } },
|
||||||
"7": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_gray" } },
|
"gray": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_gray" } },
|
||||||
"8": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_light_gray" } },
|
"light_gray": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_light_gray" } },
|
||||||
"9": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_cyan" } },
|
"cyan": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_cyan" } },
|
||||||
"10": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_purple" } },
|
"purple": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_purple" } },
|
||||||
"11": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_blue" } },
|
"blue": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_blue" } },
|
||||||
"12": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_brown" } },
|
"brown": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_brown" } },
|
||||||
"13": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_green" } },
|
"green": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_green" } },
|
||||||
"14": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_red" } },
|
"red": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_red" } },
|
||||||
"15": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_black" } }
|
"black": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_black" } }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -7,23 +7,23 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"type": {
|
||||||
"0": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_white" } },
|
"white": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_white" } },
|
||||||
"1": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_orange" } },
|
"orange": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_orange" } },
|
||||||
"2": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_magenta" } },
|
"magenta": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_magenta" } },
|
||||||
"3": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_light_blue" } },
|
"light_blue": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_light_blue" } },
|
||||||
"4": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_yellow" } },
|
"yellow": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_yellow" } },
|
||||||
"5": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_lime" } },
|
"lime": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_lime" } },
|
||||||
"6": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_pink" } },
|
"pink": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_pink" } },
|
||||||
"7": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_gray" } },
|
"gray": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_gray" } },
|
||||||
"8": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_light_gray" } },
|
"light_gray": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_light_gray" } },
|
||||||
"9": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_cyan" } },
|
"cyan": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_cyan" } },
|
||||||
"10": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_purple" } },
|
"purple": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_purple" } },
|
||||||
"11": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_blue" } },
|
"blue": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_blue" } },
|
||||||
"12": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_brown" } },
|
"brown": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_brown" } },
|
||||||
"13": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_green" } },
|
"green": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_green" } },
|
||||||
"14": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_red" } },
|
"red": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_red" } },
|
||||||
"15": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_black" } }
|
"black": { "textures" : { "all" : "actuallyadditions:blocks/block_colored_lamp_on_black" } }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -7,13 +7,13 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"type": {
|
||||||
"0": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_red" } },
|
"red": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_red" } },
|
||||||
"1": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_blue" } },
|
"blue": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_blue" } },
|
||||||
"2": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_light_blue" } },
|
"light_blue": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_light_blue" } },
|
||||||
"3": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_black" } },
|
"black": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_black" } },
|
||||||
"4": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_green" } },
|
"green": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_green" } },
|
||||||
"5": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_white" } }
|
"white": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_white" } }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -7,13 +7,13 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"type": {
|
||||||
"0": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_empowered_red" } },
|
"red": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_empowered_red" } },
|
||||||
"1": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_empowered_blue" } },
|
"blue": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_empowered_blue" } },
|
||||||
"2": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_empowered_light_blue" } },
|
"light_blue": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_empowered_light_blue" } },
|
||||||
"3": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_empowered_black" } },
|
"black": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_empowered_black" } },
|
||||||
"4": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_empowered_green" } },
|
"green": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_empowered_green" } },
|
||||||
"5": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_empowered_white" } }
|
"white": { "textures" : { "all" : "actuallyadditions:blocks/block_crystal_empowered_white" } }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -16,13 +16,13 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "x" : 90 },
|
"down": { "x" : 90 },
|
||||||
"1": { "x" : 270 },
|
"up": { "x" : 270 },
|
||||||
"2": { "y" : 0 },
|
"north": { "y" : 0 },
|
||||||
"3": { "y" : 180 },
|
"south": { "y" : 180 },
|
||||||
"4": { "y" : 270 },
|
"west": { "y" : 270 },
|
||||||
"5": { "y" : 90 }
|
"east": { "y" : 90 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -16,13 +16,13 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "x" : 90 },
|
"down": { "x" : 90 },
|
||||||
"1": { "x" : 270 },
|
"up": { "x" : 270 },
|
||||||
"2": { "y" : 0 },
|
"north": { "y" : 0 },
|
||||||
"3": { "y" : 180 },
|
"south": { "y" : 180 },
|
||||||
"4": { "y" : 270 },
|
"west": { "y" : 270 },
|
||||||
"5": { "y" : 90 }
|
"east": { "y" : 90 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -16,11 +16,11 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "y" : 0 },
|
"north": { "y" : 0 },
|
||||||
"1": { "y" : 180 },
|
"south": { "y" : 180 },
|
||||||
"2": { "y" : 270 },
|
"west": { "y" : 270 },
|
||||||
"3": { "y" : 90 }
|
"east": { "y" : 90 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -16,13 +16,13 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "x" : 90 },
|
"down": { "x" : 90 },
|
||||||
"1": { "x" : 270 },
|
"up": { "x" : 270 },
|
||||||
"2": { "y" : 0 },
|
"north": { "y" : 0 },
|
||||||
"3": { "y" : 180 },
|
"south": { "y" : 180 },
|
||||||
"4": { "y" : 270 },
|
"west": { "y" : 270 },
|
||||||
"5": { "y" : 90 }
|
"east": { "y" : 90 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -16,13 +16,13 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "x" : 90 },
|
"down": { "x" : 90 },
|
||||||
"1": { "x" : 270 },
|
"up": { "x" : 270 },
|
||||||
"2": { "y" : 0 },
|
"north": { "y" : 0 },
|
||||||
"3": { "y" : 180 },
|
"south": { "y" : 180 },
|
||||||
"4": { "y" : 270 },
|
"west": { "y" : 270 },
|
||||||
"5": { "y" : 90 }
|
"east": { "y" : 90 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -16,15 +16,11 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "y" : 0 },
|
"north": { "y" : 0 },
|
||||||
"1": { "y" : 180 },
|
"south": { "y" : 180 },
|
||||||
"2": { "y" : 270 },
|
"west": { "y" : 270 },
|
||||||
"3": { "y" : 90 },
|
"east": { "y" : 90 }
|
||||||
"4": { "y" : 0, "textures": { "north": "actuallyadditions:blocks/block_furnace_double_on" } },
|
|
||||||
"5": { "y" : 180, "textures": { "north": "actuallyadditions:blocks/block_furnace_double_on" } },
|
|
||||||
"6": { "y" : 270, "textures": { "north": "actuallyadditions:blocks/block_furnace_double_on" } },
|
|
||||||
"7": { "y" : 90, "textures": { "north": "actuallyadditions:blocks/block_furnace_double_on" } }
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -11,10 +11,6 @@
|
||||||
},
|
},
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}]
|
||||||
"meta": {
|
|
||||||
"0": {},
|
|
||||||
"1": { "textures": { "top": "actuallyadditions:blocks/block_grinder_on" } }
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -16,13 +16,13 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "x" : 90 },
|
"down": { "x" : 90 },
|
||||||
"1": { "x" : 270 },
|
"up": { "x" : 270 },
|
||||||
"2": { "y" : 0 },
|
"north": { "y" : 0 },
|
||||||
"3": { "y" : 180 },
|
"south": { "y" : 180 },
|
||||||
"4": { "y" : 270 },
|
"west": { "y" : 270 },
|
||||||
"5": { "y" : 90 }
|
"east": { "y" : 90 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -10,13 +10,13 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "x": 180 },
|
"down": { "x": 180 },
|
||||||
"1": {},
|
"up": {},
|
||||||
"2": { "x": 90 },
|
"north": { "x": 90 },
|
||||||
"3": { "x": 270 },
|
"south": { "x": 270 },
|
||||||
"4": { "x": 90, "y": 270 },
|
"west": { "x": 90, "y": 270 },
|
||||||
"5": { "x": 270, "y": 270 }
|
"east": { "x": 270, "y": 270 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -10,13 +10,13 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "x": 180 },
|
"down": { "x": 180 },
|
||||||
"1": {},
|
"up": {},
|
||||||
"2": { "x": 90 },
|
"north": { "x": 90 },
|
||||||
"3": { "x": 270 },
|
"south": { "x": 270 },
|
||||||
"4": { "x": 90, "y": 270 },
|
"west": { "x": 90, "y": 270 },
|
||||||
"5": { "x": 270, "y": 270 }
|
"east": { "x": 270, "y": 270 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -10,13 +10,13 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "x": 180 },
|
"down": { "x": 180 },
|
||||||
"1": {},
|
"up": {},
|
||||||
"2": { "x": 90 },
|
"north": { "x": 90 },
|
||||||
"3": { "x": 270 },
|
"south": { "x": 270 },
|
||||||
"4": { "x": 90, "y": 270 },
|
"west": { "x": 90, "y": 270 },
|
||||||
"5": { "x": 270, "y": 270 }
|
"east": { "x": 270, "y": 270 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -10,13 +10,13 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "x": 180 },
|
"down": { "x": 180 },
|
||||||
"1": {},
|
"up": {},
|
||||||
"2": { "x": 90 },
|
"north": { "x": 90 },
|
||||||
"3": { "x": 270 },
|
"south": { "x": 270 },
|
||||||
"4": { "x": 90, "y": 270 },
|
"west": { "x": 90, "y": 270 },
|
||||||
"5": { "x": 270, "y": 270 }
|
"east": { "x": 270, "y": 270 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -10,13 +10,13 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "x": 180 },
|
"down": { "x": 180 },
|
||||||
"1": {},
|
"up": {},
|
||||||
"2": { "x": 90 },
|
"north": { "x": 90 },
|
||||||
"3": { "x": 270 },
|
"south": { "x": 270 },
|
||||||
"4": { "x": 90, "y": 270 },
|
"west": { "x": 90, "y": 270 },
|
||||||
"5": { "x": 270, "y": 270 }
|
"east": { "x": 270, "y": 270 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -10,13 +10,13 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "x": 180 },
|
"down": { "x": 180 },
|
||||||
"1": {},
|
"up": {},
|
||||||
"2": { "x": 90 },
|
"north": { "x": 90 },
|
||||||
"3": { "x": 270 },
|
"south": { "x": 270 },
|
||||||
"4": { "x": 90, "y": 270 },
|
"west": { "x": 90, "y": 270 },
|
||||||
"5": { "x": 270, "y": 270 }
|
"east": { "x": 270, "y": 270 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -7,17 +7,17 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"type": {
|
||||||
"0": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_black_quartz_pillar" } },
|
"black_quartz_pillar": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_black_quartz_pillar" } },
|
||||||
"1": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_black_quartz_chiseled" } },
|
"black_quartz_chiseled": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_black_quartz_chiseled" } },
|
||||||
"2": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_black_quartz" } },
|
"black_quartz": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_black_quartz" } },
|
||||||
"3": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_ore_black_quartz" } },
|
"ore_black_quartz": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_ore_black_quartz" } },
|
||||||
"4": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_wood_casing" } },
|
"wood_casing": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_wood_casing" } },
|
||||||
"5": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_charcoal" } },
|
"charcoal": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_charcoal" } },
|
||||||
"6": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_enderpearl" } },
|
"enderpearl": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_enderpearl" } },
|
||||||
"7": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_lava_factory_case" } },
|
"lava_factory_case": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_lava_factory_case" } },
|
||||||
"8": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_ender_casing" } },
|
"ender_casing": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_ender_casing" } },
|
||||||
"9": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_iron_casing" } }
|
"iron_casing": { "textures" : { "all" : "actuallyadditions:blocks/block_misc_iron_casing" } }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -10,11 +10,11 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "y" : 0 },
|
"north": { "y" : 0 },
|
||||||
"1": { "y" : 180 },
|
"south": { "y" : 180 },
|
||||||
"2": { "y" : 270 },
|
"west": { "y" : 270 },
|
||||||
"3": { "y" : 90 }
|
"east": { "y" : 90 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -12,9 +12,9 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"half": {
|
||||||
"0": {},
|
"bottom": {},
|
||||||
"1": { "model": "minecraft:upper_slab" }
|
"top": { "model": "minecraft:upper_slab" }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -16,13 +16,13 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "x" : 90 },
|
"down": { "x" : 90 },
|
||||||
"1": { "x" : 270 },
|
"up": { "x" : 270 },
|
||||||
"2": { "y" : 0 },
|
"north": { "y" : 0 },
|
||||||
"3": { "y" : 180 },
|
"south": { "y" : 180 },
|
||||||
"4": { "y" : 270 },
|
"west": { "y" : 270 },
|
||||||
"5": { "y" : 90 }
|
"east": { "y" : 90 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -12,9 +12,9 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"half": {
|
||||||
"0": {},
|
"bottom": {},
|
||||||
"1": { "model": "minecraft:upper_slab" }
|
"top": { "model": "minecraft:upper_slab" }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -7,15 +7,11 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "y" : 0},
|
"north": { "y" : 0 },
|
||||||
"1": { "y" : 180 },
|
"south": { "y" : 180 },
|
||||||
"2": { "y" : 270 },
|
"west": { "y" : 270 },
|
||||||
"3": { "y" : 90 },
|
"east": { "y" : 90 }
|
||||||
"4": { "y" : 0, "model": "actuallyadditions:block_smiley_cloud_fluffy" },
|
|
||||||
"5": { "y" : 180, "model": "actuallyadditions:block_smiley_cloud_fluffy" },
|
|
||||||
"6": { "y" : 270, "model": "actuallyadditions:block_smiley_cloud_fluffy" },
|
|
||||||
"7": { "y" : 90, "model": "actuallyadditions:block_smiley_cloud_fluffy" }
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -12,9 +12,9 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"half": {
|
||||||
"0": {},
|
"bottom": {},
|
||||||
"1": { "model": "minecraft:upper_slab" }
|
"top": { "model": "minecraft:upper_slab" }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -12,9 +12,9 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"half": {
|
||||||
"0": {},
|
"bottom": {},
|
||||||
"1": { "model": "minecraft:upper_slab" }
|
"top": { "model": "minecraft:upper_slab" }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -16,11 +16,11 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "y" : 0 },
|
"north": { "y" : 0 },
|
||||||
"1": { "y" : 180 },
|
"south": { "y" : 180 },
|
||||||
"2": { "y" : 270 },
|
"west": { "y" : 270 },
|
||||||
"3": { "y" : 90 }
|
"east": { "y" : 90 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -7,11 +7,11 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"type": {
|
||||||
"0": { "textures" : { "cross" : "actuallyadditions:blocks/block_canola_stage_4" } },
|
"canola": { "textures" : { "cross" : "actuallyadditions:blocks/block_canola_stage_4" } },
|
||||||
"1": { "textures" : { "cross" : "actuallyadditions:blocks/block_flax_stage_6" } },
|
"flax": { "textures" : { "cross" : "actuallyadditions:blocks/block_flax_stage_6" } },
|
||||||
"2": { "textures" : { "cross" : "actuallyadditions:blocks/block_rice_stage_6" } },
|
"rice": { "textures" : { "cross" : "actuallyadditions:blocks/block_rice_stage_6" } },
|
||||||
"3": { "textures" : { "cross" : "actuallyadditions:blocks/block_coffee_stage_6" } }
|
"coffee": { "textures" : { "cross" : "actuallyadditions:blocks/block_coffee_stage_6" } }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -16,11 +16,11 @@
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": [{}],
|
"normal": [{}],
|
||||||
"inventory": [{}],
|
"inventory": [{}],
|
||||||
"meta": {
|
"facing": {
|
||||||
"0": { "y" : 0 },
|
"north": { "y" : 0 },
|
||||||
"1": { "y" : 180 },
|
"south": { "y" : 180 },
|
||||||
"2": { "y" : 270 },
|
"west": { "y" : 270 },
|
||||||
"3": { "y" : 90 }
|
"east": { "y" : 90 }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
Reference in a new issue