Making Furnaces work from firebox
This commit is contained in:
@@ -1,10 +1,7 @@
|
|||||||
package nmd.primal.forgecraft.blocks;
|
package nmd.primal.forgecraft.blocks;
|
||||||
|
|
||||||
import akka.actor.dsl.Creators;
|
import akka.actor.dsl.Creators;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.*;
|
||||||
import net.minecraft.block.BlockContainer;
|
|
||||||
import net.minecraft.block.BlockHorizontal;
|
|
||||||
import net.minecraft.block.ITileEntityProvider;
|
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.IProperty;
|
import net.minecraft.block.properties.IProperty;
|
||||||
import net.minecraft.block.properties.PropertyBool;
|
import net.minecraft.block.properties.PropertyBool;
|
||||||
@@ -35,6 +32,8 @@ import nmd.primal.forgecraft.tiles.TileFirebox;
|
|||||||
|
|
||||||
import javax.annotation.Nullable;
|
import javax.annotation.Nullable;
|
||||||
|
|
||||||
|
import static net.minecraft.block.BlockHorizontal.FACING;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by kitsu on 11/26/2016.
|
* Created by kitsu on 11/26/2016.
|
||||||
*/
|
*/
|
||||||
@@ -82,6 +81,13 @@ public class Firebox extends CustomContainerFacing implements ITileEntityProvide
|
|||||||
tile.markDirty();
|
tile.markDirty();
|
||||||
world.notifyBlockUpdate(pos, state, state, 2);
|
world.notifyBlockUpdate(pos, state, state, 2);
|
||||||
}
|
}
|
||||||
|
/*if(world.getBlockState(tempPos).getBlock() instanceof BlockFurnace){
|
||||||
|
System.out.println("Trying to set Block Furnace State active");
|
||||||
|
IBlockState iblockstate = world.getBlockState(tempPos);
|
||||||
|
world.setBlockState(tempPos, Blocks.LIT_FURNACE.getDefaultState().withProperty(FACING, iblockstate.getValue(FACING)), 3);
|
||||||
|
TileEntityFurnace tileFurnace = (TileEntityFurnace) world.getTileEntity(tempPos);
|
||||||
|
tileFurnace.setField(0,2000);
|
||||||
|
}*/
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ import net.minecraft.nbt.NBTTagList;
|
|||||||
import net.minecraft.network.NetworkManager;
|
import net.minecraft.network.NetworkManager;
|
||||||
import net.minecraft.network.play.server.SPacketUpdateTileEntity;
|
import net.minecraft.network.play.server.SPacketUpdateTileEntity;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
|
import net.minecraft.tileentity.TileEntityFurnace;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.ITickable;
|
import net.minecraft.util.ITickable;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
@@ -23,7 +24,9 @@ import nmd.primal.forgecraft.CommonUtils;
|
|||||||
import nmd.primal.forgecraft.blocks.Firebox;
|
import nmd.primal.forgecraft.blocks.Firebox;
|
||||||
import nmd.primal.forgecraft.init.ModBlocks;
|
import nmd.primal.forgecraft.init.ModBlocks;
|
||||||
import org.omg.PortableInterceptor.ACTIVE;
|
import org.omg.PortableInterceptor.ACTIVE;
|
||||||
|
import net.minecraft.block.BlockFurnace;
|
||||||
|
|
||||||
|
import static net.minecraft.block.BlockHorizontal.FACING;
|
||||||
import static nmd.primal.forgecraft.CommonUtils.getVanillaItemBurnTime;
|
import static nmd.primal.forgecraft.CommonUtils.getVanillaItemBurnTime;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -48,6 +51,8 @@ public class TileFirebox extends BaseTile implements IInventory, ITickable {
|
|||||||
//System.out.println(iteration);
|
//System.out.println(iteration);
|
||||||
this.iteration = 0;
|
this.iteration = 0;
|
||||||
IBlockState state = world.getBlockState(this.pos);
|
IBlockState state = world.getBlockState(this.pos);
|
||||||
|
BlockPos abovePos = new BlockPos(this.getPos().getX(), this.getPos().getY(), this.getPos().getZ());
|
||||||
|
IBlockState aboveState = world.getBlockState(abovePos);
|
||||||
if (worldObj.getBlockState(this.getPos()).getValue(Firebox.ACTIVE)) {
|
if (worldObj.getBlockState(this.getPos()).getValue(Firebox.ACTIVE)) {
|
||||||
if (this.getStackInSlot(0) == null) {
|
if (this.getStackInSlot(0) == null) {
|
||||||
worldObj.setBlockState(this.getPos(), state.withProperty(Firebox.ACTIVE, false), 2);
|
worldObj.setBlockState(this.getPos(), state.withProperty(Firebox.ACTIVE, false), 2);
|
||||||
@@ -60,6 +65,13 @@ public class TileFirebox extends BaseTile implements IInventory, ITickable {
|
|||||||
this.markDirty();
|
this.markDirty();
|
||||||
world.notifyBlockUpdate(pos, state, state, 2);
|
world.notifyBlockUpdate(pos, state, state, 2);
|
||||||
}
|
}
|
||||||
|
if(world.getBlockState(abovePos).getBlock() instanceof BlockFurnace){
|
||||||
|
System.out.println("Trying to set Block Furnace State active");
|
||||||
|
IBlockState iblockstate = world.getBlockState(abovePos);
|
||||||
|
TileEntityFurnace tileFurnace = (TileEntityFurnace) world.getTileEntity(abovePos);
|
||||||
|
world.setBlockState(pos, Blocks.LIT_FURNACE.getDefaultState().withProperty(FACING, iblockstate.getValue(FACING)), 3);
|
||||||
|
tileFurnace.setField(0,2000);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user