diff --git a/src/main/java/techreborn/blocks/BlockMachineBase.java b/src/main/java/techreborn/blocks/BlockMachineBase.java index 4300b65b0..7dc789e8b 100644 --- a/src/main/java/techreborn/blocks/BlockMachineBase.java +++ b/src/main/java/techreborn/blocks/BlockMachineBase.java @@ -361,22 +361,19 @@ public abstract class BlockMachineBase extends BaseTileBlock implements IBlockTe @Override public IBlockState getStateFromMeta(int meta) { boolean active = false; - if(meta > 6){ - active = true; - meta =- 6; - } int facingInt = meta; - EnumFacing facing = EnumFacing.getFront(facingInt); - if(facing == EnumFacing.DOWN || facing == EnumFacing.UP){ - facing = EnumFacing.NORTH; + if(facingInt > 3){ + active = true; + facingInt = facingInt - 3; } + EnumFacing facing = getSideFromint(facingInt); return this.getDefaultState().withProperty(FACING, facing).withProperty(ACTIVE, active); } @Override public int getMetaFromState(IBlockState state) { - int facingInt = state.getValue(FACING).getIndex(); - int activeInt = state.getValue(ACTIVE) ? 0 : 6; + int facingInt = getSideFromEnum(state.getValue(FACING)); + int activeInt = state.getValue(ACTIVE) ? 0 : 3; return facingInt + activeInt; } @@ -396,8 +393,35 @@ public abstract class BlockMachineBase extends BaseTileBlock implements IBlockTe public void setActive(Boolean active, World world, BlockPos pos){ world.setBlockState(pos, world.getBlockState(pos).withProperty(ACTIVE, active)); } + @Override - public int amoutOfVariants() { - return 12; //six for Facing, and then 2 for eatch of them for if active + public int amountOfVariants() { + return 8; //0-3 off nsew, 4-8 on nsew + } + + public EnumFacing getSideFromint(int i){ + if(i == 0){ + return EnumFacing.NORTH; + } else if(i == 1){ + return EnumFacing.SOUTH; + }else if(i == 2){ + return EnumFacing.EAST; + }else if(i == 3){ + return EnumFacing.WEST; + } + return EnumFacing.NORTH; + } + + public int getSideFromEnum(EnumFacing facing){ + if(facing == EnumFacing.NORTH){ + return 0; + } else if(facing == EnumFacing.SOUTH){ + return 1; + }else if(facing == EnumFacing.EAST){ + return 2; + }else if(facing == EnumFacing.WEST){ + return 3; + } + return 0; } } diff --git a/src/main/java/techreborn/blocks/BlockMachineCasing.java b/src/main/java/techreborn/blocks/BlockMachineCasing.java index 18489cbe4..c058dc38a 100644 --- a/src/main/java/techreborn/blocks/BlockMachineCasing.java +++ b/src/main/java/techreborn/blocks/BlockMachineCasing.java @@ -105,7 +105,7 @@ public class BlockMachineCasing extends BlockMultiblockBase implements IBlockTex } @Override - public int amoutOfVariants() { + public int amountOfVariants() { return types.length; } } diff --git a/src/main/java/techreborn/blocks/BlockMachineFrame.java b/src/main/java/techreborn/blocks/BlockMachineFrame.java index cb023aa5f..f531a75f6 100644 --- a/src/main/java/techreborn/blocks/BlockMachineFrame.java +++ b/src/main/java/techreborn/blocks/BlockMachineFrame.java @@ -63,7 +63,7 @@ public class BlockMachineFrame extends BaseBlock implements IBlockTextureProvide } @Override - public int amoutOfVariants() { + public int amountOfVariants() { return types.length; } @@ -79,7 +79,7 @@ public class BlockMachineFrame extends BaseBlock implements IBlockTextureProvide protected BlockState createBlockState() { - METADATA = PropertyInteger.create("Type", 0, types.length); + METADATA = PropertyInteger.create("Type", 0, types.length -1); return new BlockState(this, METADATA); } } diff --git a/src/main/java/techreborn/blocks/BlockOre.java b/src/main/java/techreborn/blocks/BlockOre.java index 94b270a15..41a6ea5b7 100644 --- a/src/main/java/techreborn/blocks/BlockOre.java +++ b/src/main/java/techreborn/blocks/BlockOre.java @@ -158,7 +158,7 @@ public class BlockOre extends BaseBlock implements IBlockTextureProvider { } @Override - public int amoutOfVariants() { + public int amountOfVariants() { return types.length; } diff --git a/src/main/java/techreborn/blocks/BlockPlayerDetector.java b/src/main/java/techreborn/blocks/BlockPlayerDetector.java index e7c9fbc3a..1dbafcd9b 100644 --- a/src/main/java/techreborn/blocks/BlockPlayerDetector.java +++ b/src/main/java/techreborn/blocks/BlockPlayerDetector.java @@ -128,7 +128,7 @@ public class BlockPlayerDetector extends BaseTileBlock implements IBlockTextureP } @Override - public int amoutOfVariants() { + public int amountOfVariants() { return types.length; } @@ -144,7 +144,7 @@ public class BlockPlayerDetector extends BaseTileBlock implements IBlockTextureP protected BlockState createBlockState() { - METADATA = PropertyInteger.create("Type", 0, types.length); + METADATA = PropertyInteger.create("Type", 0, types.length -1); return new BlockState(this, METADATA); } } diff --git a/src/main/java/techreborn/blocks/BlockStorage.java b/src/main/java/techreborn/blocks/BlockStorage.java index 5358b8ee6..125a89ea2 100644 --- a/src/main/java/techreborn/blocks/BlockStorage.java +++ b/src/main/java/techreborn/blocks/BlockStorage.java @@ -73,7 +73,7 @@ public class BlockStorage extends BaseBlock implements IBlockTextureProvider { } @Override - public int amoutOfVariants() { + public int amountOfVariants() { return types.length; } @@ -89,7 +89,7 @@ public class BlockStorage extends BaseBlock implements IBlockTextureProvider { protected BlockState createBlockState() { - METADATA = PropertyInteger.create("Type", 0, types.length); + METADATA = PropertyInteger.create("Type", 0, types.length -1); return new BlockState(this, METADATA); } } diff --git a/src/main/java/techreborn/blocks/BlockStorage2.java b/src/main/java/techreborn/blocks/BlockStorage2.java index c2bbe86a2..4a4146221 100644 --- a/src/main/java/techreborn/blocks/BlockStorage2.java +++ b/src/main/java/techreborn/blocks/BlockStorage2.java @@ -71,7 +71,7 @@ public class BlockStorage2 extends BaseBlock implements IBlockTextureProvider { } @Override - public int amoutOfVariants() { + public int amountOfVariants() { return types.length; } @@ -87,7 +87,7 @@ public class BlockStorage2 extends BaseBlock implements IBlockTextureProvider { protected BlockState createBlockState() { - METADATA = PropertyInteger.create("Type", 0, types.length); + METADATA = PropertyInteger.create("Type", 0, types.length -1); return new BlockState(this, METADATA); } } diff --git a/src/main/java/techreborn/blocks/fluid/BlockFluidBase.java b/src/main/java/techreborn/blocks/fluid/BlockFluidBase.java index 351abfbdf..b4f3237a0 100644 --- a/src/main/java/techreborn/blocks/fluid/BlockFluidBase.java +++ b/src/main/java/techreborn/blocks/fluid/BlockFluidBase.java @@ -6,6 +6,7 @@ import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; import net.minecraftforge.fluids.BlockFluidClassic; import net.minecraftforge.fluids.Fluid; +import reborncore.api.TextureRegistry; import techreborn.client.TechRebornCreativeTabMisc; public class BlockFluidBase extends BlockFluidClassic { @@ -13,6 +14,7 @@ public class BlockFluidBase extends BlockFluidClassic { public BlockFluidBase(Fluid fluid, Material material) { super(fluid, material); setCreativeTab(TechRebornCreativeTabMisc.instance); + TextureRegistry.registerFluid(this); } diff --git a/src/main/java/techreborn/blocks/fluid/BlockFluidTechReborn.java b/src/main/java/techreborn/blocks/fluid/BlockFluidTechReborn.java index 5b1767cf1..e21f0c525 100644 --- a/src/main/java/techreborn/blocks/fluid/BlockFluidTechReborn.java +++ b/src/main/java/techreborn/blocks/fluid/BlockFluidTechReborn.java @@ -2,12 +2,20 @@ package techreborn.blocks.fluid; import net.minecraft.block.material.Material; import net.minecraftforge.fluids.Fluid; +import reborncore.api.IFluidTextureProvider; -public class BlockFluidTechReborn extends BlockFluidBase { +public class BlockFluidTechReborn extends BlockFluidBase implements IFluidTextureProvider { + + String name; public BlockFluidTechReborn(Fluid fluid, Material material, String name) { super(fluid, material); setUnlocalizedName(name); + this.name = name; } + @Override + public String getTextureName() { + return "techreborn:blocks/fluids/" + name.replaceAll("techreborn.", "") + "_flowing"; + } } diff --git a/src/main/java/techreborn/items/ItemTextureBase.java b/src/main/java/techreborn/items/ItemTextureBase.java index bdfee8af7..36d29fab7 100644 --- a/src/main/java/techreborn/items/ItemTextureBase.java +++ b/src/main/java/techreborn/items/ItemTextureBase.java @@ -1,6 +1,9 @@ package techreborn.items; +import net.minecraft.client.resources.model.ModelResourceLocation; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; import reborncore.api.IItemTexture; import techreborn.lib.ModInfo; @@ -9,4 +12,9 @@ public abstract class ItemTextureBase extends ItemTR implements IItemTexture { public String getModID() { return ModInfo.MOD_ID; } + + @Override + public ModelResourceLocation getModel(ItemStack stack, EntityPlayer player, int useRemaining) { + return new ModelResourceLocation(ModInfo.MOD_ID + ":" + stack.getItem().getUnlocalizedName(stack).substring(5), "inventory"); + } }