diff --git a/src/main/java/techreborn/blocks/BlockIronFurnace.java b/src/main/java/techreborn/blocks/BlockIronFurnace.java index 92eef07c3..99afa9be0 100644 --- a/src/main/java/techreborn/blocks/BlockIronFurnace.java +++ b/src/main/java/techreborn/blocks/BlockIronFurnace.java @@ -2,14 +2,19 @@ package techreborn.blocks; import java.util.ArrayList; import java.util.List; +import java.util.Random; import net.minecraft.block.state.IBlockState; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.BlockPos; +import net.minecraft.util.EnumFacing; +import net.minecraft.util.EnumParticleTypes; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; import reborncore.common.blocks.BlockMachineBase; import reborncore.common.blocks.IRotationTexture; import techreborn.Core; @@ -45,31 +50,65 @@ public class BlockIronFurnace extends BlockMachineBase implements IRotationTextu items.add(new ItemStack(this)); return items; } + + @SideOnly(Side.CLIENT) + @SuppressWarnings("incomplete-switch") + public void randomDisplayTick(World worldIn, BlockPos pos, IBlockState state, Random rand) + { + if (this.isActive(state)) + { + EnumFacing enumfacing = (EnumFacing)state.getValue(FACING); + double d0 = (double)pos.getX() + 0.5D; + double d1 = (double)pos.getY() + rand.nextDouble() * 6.0D / 16.0D; + double d2 = (double)pos.getZ() + 0.5D; + double d3 = 0.52D; + double d4 = rand.nextDouble() * 0.6D - 0.3D; + + switch (enumfacing) + { + case WEST: + worldIn.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, d0 - d3, d1, d2 + d4, 0.0D, 0.0D, 0.0D, new int[0]); + worldIn.spawnParticle(EnumParticleTypes.FLAME, d0 - d3, d1, d2 + d4, 0.0D, 0.0D, 0.0D, new int[0]); + break; + case EAST: + worldIn.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, d0 + d3, d1, d2 + d4, 0.0D, 0.0D, 0.0D, new int[0]); + worldIn.spawnParticle(EnumParticleTypes.FLAME, d0 + d3, d1, d2 + d4, 0.0D, 0.0D, 0.0D, new int[0]); + break; + case NORTH: + worldIn.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, d0 + d4, d1, d2 - d3, 0.0D, 0.0D, 0.0D, new int[0]); + worldIn.spawnParticle(EnumParticleTypes.FLAME, d0 + d4, d1, d2 - d3, 0.0D, 0.0D, 0.0D, new int[0]); + break; + case SOUTH: + worldIn.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, d0 + d4, d1, d2 + d3, 0.0D, 0.0D, 0.0D, new int[0]); + worldIn.spawnParticle(EnumParticleTypes.FLAME, d0 + d4, d1, d2 + d3, 0.0D, 0.0D, 0.0D, new int[0]); + } + } + } private final String prefix = "techreborn:blocks/machine/"; @Override public String getFrontOff() { - return prefix + "alloy_furnace_front_off"; + return prefix + "iron_furnace_front_off"; } @Override public String getFrontOn() { - return prefix + "alloy_furnace_front_on"; + return prefix + "iron_furnace_front_on"; } @Override public String getSide() { - return prefix + "alloy_furnace_side"; + return prefix + "iron_furnace_side"; } @Override public String getTop() { - return prefix + "alloy_furnace_top"; + return prefix + "iron_furnace_top"; } @Override public String getBottom() { - return prefix + "machine_bottom"; + return prefix + "iron_furnace_bottom"; } } diff --git a/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_bottom.png b/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_bottom.png new file mode 100644 index 000000000..9e19b1412 Binary files /dev/null and b/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_bottom.png differ diff --git a/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_front_off.png b/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_front_off.png new file mode 100644 index 000000000..9b9aead07 Binary files /dev/null and b/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_front_off.png differ diff --git a/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_front_on.png b/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_front_on.png new file mode 100644 index 000000000..37994fef1 Binary files /dev/null and b/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_front_on.png differ diff --git a/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_front_on.png.mcmeta b/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_front_on.png.mcmeta new file mode 100644 index 000000000..4f0718ac9 --- /dev/null +++ b/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_front_on.png.mcmeta @@ -0,0 +1,3 @@ +{ + "animation": {} +} \ No newline at end of file diff --git a/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_side.png b/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_side.png new file mode 100644 index 000000000..24a1625aa Binary files /dev/null and b/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_side.png differ diff --git a/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_top.png b/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_top.png new file mode 100644 index 000000000..66085310c Binary files /dev/null and b/src/main/resources/assets/techreborn/textures/blocks/machine/iron_furnace_top.png differ