Fixed dust drop and firebox melt time

This commit is contained in:
Calclavia 2014-02-26 20:43:57 +08:00
parent 3d6d6b889a
commit 900b597e89
2 changed files with 23 additions and 4 deletions

View file

@ -123,10 +123,11 @@ public class TileFirebox extends TileElectricalInventory implements IPacketRecei
String name = ((TileMaterial) dustTile).name;
int meta = worldObj.getBlockMetadata(xCoord, yCoord + 1, zCoord);
if (heatEnergy >= getMeltIronEnergy((meta / 8f) * 1000))
if (heatEnergy >= getMeltIronEnergy(((meta + 1) / 5f) * 1000))
{
// TODO: Make refined dust yield more molten fluid than normal dust.
worldObj.setBlock(xCoord, yCoord + 1, zCoord, ResourceGenerator.getMolten(name).blockID, meta, 3);
TileEntity tile = worldObj.getBlockTileEntity(xCoord, yCoord + 1, zCoord);
if (tile instanceof TileMaterial)

View file

@ -1,5 +1,6 @@
package resonantinduction.core.resource;
import java.util.ArrayList;
import java.util.Random;
import net.minecraft.block.Block;
@ -12,7 +13,9 @@ import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import resonantinduction.core.Reference;
import resonantinduction.core.ResonantInduction;
import universalelectricity.api.vector.Vector3;
import calclavia.lib.prefab.block.BlockTile;
import calclavia.lib.utility.inventory.InventoryUtility;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@ -211,10 +214,19 @@ public class BlockDust extends BlockTile
return ResonantInduction.itemRefinedDust.itemID;
}
int nextDropMaterialID = 0;
@Override
public int damageDropped(int par1)
public void breakBlock(World world, int x, int y, int z, int par5, int par6)
{
return par1;
TileEntity tileEntity = world.getBlockTileEntity(x, y, z);
if (tileEntity instanceof TileMaterial)
{
nextDropMaterialID = ResourceGenerator.getID(((TileMaterial) tileEntity).name);
}
super.breakBlock(world, x, y, z, par5, par6);
}
@Override
@ -226,7 +238,13 @@ public class BlockDust extends BlockTile
{
return ResourceGenerator.getID(((TileMaterial) tileEntity).name);
}
return 0;
return damageDropped(0);
}
public int damageDropped(int par1)
{
return nextDropMaterialID;
}
@SideOnly(Side.CLIENT)