summaryrefslogtreecommitdiff
path: root/src/main/java/darkknight/jewelrycraft/block/BlockMoltenMetal.java
diff options
context:
space:
mode:
authorbculkin2442 <bjculkin@mix.wvu.edu>2018-05-24 16:03:42 -0400
committerbculkin2442 <bjculkin@mix.wvu.edu>2018-05-24 16:03:42 -0400
commit9a4d1e95ea7784f0f98ea2913701a3a3c28aefaa (patch)
treeb4307f58fe2197d2215707bb3f44cf8952229c6d /src/main/java/darkknight/jewelrycraft/block/BlockMoltenMetal.java
parent4f7ad220df0438b6f3382110577b53f29da46453 (diff)
Formatting pass
Diffstat (limited to 'src/main/java/darkknight/jewelrycraft/block/BlockMoltenMetal.java')
-rwxr-xr-xsrc/main/java/darkknight/jewelrycraft/block/BlockMoltenMetal.java361
1 files changed, 269 insertions, 92 deletions
diff --git a/src/main/java/darkknight/jewelrycraft/block/BlockMoltenMetal.java b/src/main/java/darkknight/jewelrycraft/block/BlockMoltenMetal.java
index 088a5e2..6d88443 100755
--- a/src/main/java/darkknight/jewelrycraft/block/BlockMoltenMetal.java
+++ b/src/main/java/darkknight/jewelrycraft/block/BlockMoltenMetal.java
@@ -45,21 +45,23 @@ public class BlockMoltenMetal extends BlockFluidClassic
@Override
@SideOnly(Side.CLIENT)
public void registerBlockIcons(IIconRegister register) {
- stillIcon = register
- .registerIcon(Variables.MODID + ":moltenMetalStill");
- flowingIcon = register
- .registerIcon(Variables.MODID + ":moltenMetalFlow");
+ stillIcon = register.registerIcon(
+ Variables.MODID + ":moltenMetalStill");
+ flowingIcon = register.registerIcon(
+ Variables.MODID + ":moltenMetalFlow");
}
@Override
- public boolean canDisplace(IBlockAccess world, int x, int y, int z) {
+ public boolean canDisplace(IBlockAccess world, int x, int y,
+ int z) {
if (world.getBlock(x, y, z).getMaterial().isLiquid())
return false;
return super.canDisplace(world, x, y, z);
}
@Override
- public boolean displaceIfPossible(World world, int x, int y, int z) {
+ public boolean displaceIfPossible(World world, int x, int y,
+ int z) {
if (world.getBlock(x, y, z).getMaterial().isLiquid())
return false;
return super.displaceIfPossible(world, x, y, z);
@@ -91,7 +93,8 @@ public class BlockMoltenMetal extends BlockFluidClassic
@Override
@SideOnly(Side.CLIENT)
- public int colorMultiplier(IBlockAccess world, int i, int j, int k) {
+ public int colorMultiplier(IBlockAccess world, int i, int j,
+ int k) {
try {
return color(world, i, j, k, false, null);
} catch (IOException e) {
@@ -101,67 +104,191 @@ public class BlockMoltenMetal extends BlockFluidClassic
}
@Override
- public void updateTick(World world, int x, int y, int z, Random rand) {
+ public void updateTick(World world, int x, int y, int z,
+ Random rand) {
if (getTileEntity(world, x, y, z) == null
- || (getTileEntity(world, x, y, z).getMetal() == null))
+ || (getTileEntity(world, x, y, z)
+ .getMetal() == null))
world.setBlockToAir(x, y, z);
else {
- int quantaRemaining =
- quantaPerBlock - world.getBlockMetadata(x, y, z);
+ int quantaRemaining = quantaPerBlock
+ - world.getBlockMetadata(x, y, z);
int expQuanta = -101;
// check adjacent block levels if non-source
if (quantaRemaining < quantaPerBlock) {
int y2 = y - densityDir;
if ((world.getBlock(x, y2, z) == this
- && getTileEntity(world, x, y2, z) != null
- && getTileEntity(world, x, y, z) != null
- && areMetalsEqual(world, x, y2, z, x, y, z))
- || (world.getBlock(x - 1, y2, z) == this
- && getTileEntity(world, x - 1, y2,
+ && getTileEntity(world, x,
+ y2,
+ z) != null
+ && getTileEntity(world, x,
+ y,
+ z) != null
+ && areMetalsEqual(world, x,
+ y2, z, x,
+ y, z))
+ || (world.getBlock(x - 1,
+ y2,
+ z) == this
+ && getTileEntity(
+ world,
+ x - 1,
+ y2,
+ z) != null
+ && getTileEntity(
+ world,
+ x,
+ y,
z) != null
- && getTileEntity(world, x, y, z) != null
- && areMetalsEqual(world, x - 1, y2, z, x,
- y, z))
- || (world.getBlock(x + 1, y2, z) == this
- && getTileEntity(world, x + 1, y2,
+ && areMetalsEqual(
+ world,
+ x - 1,
+ y2,
+ z,
+ x,
+ y,
+ z))
+ || (world.getBlock(x + 1,
+ y2,
+ z) == this
+ && getTileEntity(
+ world,
+ x + 1,
+ y2,
z) != null
- && getTileEntity(world, x, y, z) != null
- && areMetalsEqual(world, x + 1, y2, z, x,
- y, z))
- || (world.getBlock(x, y2, z - 1) == this
- && getTileEntity(world, x, y2,
+ && getTileEntity(
+ world,
+ x,
+ y,
+ z) != null
+ && areMetalsEqual(
+ world,
+ x + 1,
+ y2,
+ z,
+ x,
+ y,
+ z))
+ || (world.getBlock(x, y2, z
+ - 1) == this
+ && getTileEntity(
+ world,
+ x,
+ y2,
z - 1) != null
- && getTileEntity(world, x, y, z) != null
- && areMetalsEqual(world, x, y2, z - 1, x,
- y, z))
- || (world.getBlock(x, y2, z + 1) == this
- && getTileEntity(world, x, y2,
+ && getTileEntity(
+ world,
+ x,
+ y,
+ z) != null
+ && areMetalsEqual(
+ world,
+ x,
+ y2,
+ z - 1,
+ x,
+ y,
+ z))
+ || (world.getBlock(x, y2, z
+ + 1) == this
+ && getTileEntity(
+ world,
+ x,
+ y2,
z + 1) != null
- && getTileEntity(world, x, y, z) != null
- && areMetalsEqual(world, x, y2, z + 1, x,
- y, z)))
+ && getTileEntity(
+ world,
+ x,
+ y,
+ z) != null
+ && areMetalsEqual(
+ world,
+ x,
+ y2,
+ z + 1,
+ x,
+ y,
+ z)))
expQuanta = quantaPerBlock - 1;
else {
int maxQuanta = -100;
- if (getTileEntity(world, x, y, z) != null
- && getTileEntity(world, x - 1, y, z) != null
- && areMetalsEqual(world, x, y, z, x - 1, y, z))
- maxQuanta = getLargerQuanta(world, x - 1, y, z,
+ if (getTileEntity(world, x, y,
+ z) != null
+ && getTileEntity(
+ world,
+ x - 1,
+ y,
+ z) != null
+ && areMetalsEqual(
+ world,
+ x,
+ y,
+ z,
+ x - 1,
+ y,
+ z))
+ maxQuanta = getLargerQuanta(
+ world,
+ x - 1, y,
+ z,
maxQuanta);
- if (getTileEntity(world, x, y, z) != null
- && getTileEntity(world, x + 1, y, z) != null
- && areMetalsEqual(world, x, y, z, x + 1, y, z))
- maxQuanta = getLargerQuanta(world, x + 1, y, z,
+ if (getTileEntity(world, x, y,
+ z) != null
+ && getTileEntity(
+ world,
+ x + 1,
+ y,
+ z) != null
+ && areMetalsEqual(
+ world,
+ x,
+ y,
+ z,
+ x + 1,
+ y,
+ z))
+ maxQuanta = getLargerQuanta(
+ world,
+ x + 1, y,
+ z,
maxQuanta);
- if (getTileEntity(world, x, y, z) != null
- && getTileEntity(world, x, y, z - 1) != null
- && areMetalsEqual(world, x, y, z, x, y, z - 1))
- maxQuanta = getLargerQuanta(world, x, y, z - 1,
+ if (getTileEntity(world, x, y,
+ z) != null
+ && getTileEntity(
+ world,
+ x,
+ y,
+ z - 1) != null
+ && areMetalsEqual(
+ world,
+ x,
+ y,
+ z,
+ x,
+ y,
+ z - 1))
+ maxQuanta = getLargerQuanta(
+ world, x,
+ y, z - 1,
maxQuanta);
- if (getTileEntity(world, x, y, z) != null
- && getTileEntity(world, x, y, z + 1) != null
- && areMetalsEqual(world, x, y, z, x, y, z + 1))
- maxQuanta = getLargerQuanta(world, x, y, z + 1,
+ if (getTileEntity(world, x, y,
+ z) != null
+ && getTileEntity(
+ world,
+ x,
+ y,
+ z + 1) != null
+ && areMetalsEqual(
+ world,
+ x,
+ y,
+ z,
+ x,
+ y,
+ z + 1))
+ maxQuanta = getLargerQuanta(
+ world, x,
+ y, z + 1,
maxQuanta);
expQuanta = maxQuanta - 1;
}
@@ -169,75 +296,119 @@ public class BlockMoltenMetal extends BlockFluidClassic
if (expQuanta != quantaRemaining) {
quantaRemaining = expQuanta;
if (expQuanta <= 0)
- world.setBlock(x, y, z, Blocks.air);
+ world.setBlock(x, y, z,
+ Blocks.air);
else {
- world.setBlockMetadataWithNotify(x, y, z,
- quantaPerBlock - expQuanta, 3);
- world.scheduleBlockUpdate(x, y, z, this, tickRate);
- world.notifyBlocksOfNeighborChange(x, y, z, this);
+ world.setBlockMetadataWithNotify(
+ x, y, z,
+ quantaPerBlock - expQuanta,
+ 3);
+ world.scheduleBlockUpdate(
+ x, y, z,
+ this,
+ tickRate);
+ world.notifyBlocksOfNeighborChange(
+ x, y, z,
+ this);
}
}
}
- // This is a "source" block, set meta to zero, and send a
+ // This is a "source" block, set meta to zero, and
+ // send a
// server only update
else if (quantaRemaining >= quantaPerBlock)
- world.setBlockMetadataWithNotify(x, y, z, 0, 2);
+ world.setBlockMetadataWithNotify(x, y, z,
+ 0, 2);
// Flow vertically if possible
if (canDisplace(world, x, y + densityDir, z)) {
- if (getTileEntity(world, x, y + densityDir, z) != null
- && getTileEntity(world, x, y, z) != null)
- BlockMoltenMetal
- .getTileEntity(world, x, y + densityDir, z)
- .setMetal(getTileEntity(world, x, y, z)
- .getMetal());
- flowIntoBlock(world, x, y + densityDir, z, 1,
- getTileEntity(world, x, y, z).getMetal());
+ if (getTileEntity(world, x, y + densityDir,
+ z) != null
+ && getTileEntity(world, x,
+ y,
+ z) != null)
+ BlockMoltenMetal.getTileEntity(
+ world, x,
+ y + densityDir, z)
+ .setMetal(getTileEntity(
+ world,
+ x,
+ y,
+ z).getMetal());
+ flowIntoBlock(world, x, y + densityDir, z,
+ 1,
+ getTileEntity(world, x, y,
+ z).getMetal());
return;
}
// Flow outward if possible
- int flowMeta = quantaPerBlock - quantaRemaining + 1;
+ int flowMeta = quantaPerBlock - quantaRemaining
+ + 1;
if (flowMeta >= quantaPerBlock)
return;
if (isSourceBlock(world, x, y, z)
- || !isFlowingVertically(world, x, y, z)) {
- if (world.getBlock(x, y - densityDir, z) == this
- && getTileEntity(world, x, y, z) != null
- && getTileEntity(world, x, y - densityDir,
+ || !isFlowingVertically(world, x,
+ y, z)) {
+ if (world.getBlock(x, y - densityDir,
+ z) == this
+ && getTileEntity(world, x,
+ y,
+ z) != null
+ && getTileEntity(world, x,
+ y - densityDir,
z) != null
- && areMetalsEqual(world, x, y, z, x,
- y - densityDir, z))
+ && areMetalsEqual(world, x,
+ y, z, x,
+ y - densityDir,
+ z))
flowMeta = 1;
- boolean flowTo[] =
- getOptimalFlowDirections(world, x, y, z);
+ boolean flowTo[] = getOptimalFlowDirections(
+ world, x, y, z);
if (flowTo[0])
- flowIntoBlock(world, x - 1, y, z, flowMeta,
- getTileEntity(world, x, y, z).getMetal());
+ flowIntoBlock(world, x - 1, y, z,
+ flowMeta,
+ getTileEntity(world,
+ x,
+ y,
+ z).getMetal());
if (flowTo[1])
- flowIntoBlock(world, x + 1, y, z, flowMeta,
- getTileEntity(world, x, y, z).getMetal());
+ flowIntoBlock(world, x + 1, y, z,
+ flowMeta,
+ getTileEntity(world,
+ x,
+ y,
+ z).getMetal());
if (flowTo[2])
- flowIntoBlock(world, x, y, z - 1, flowMeta,
- getTileEntity(world, x, y, z).getMetal());
+ flowIntoBlock(world, x, y, z - 1,
+ flowMeta,
+ getTileEntity(world,
+ x,
+ y,
+ z).getMetal());
if (flowTo[3])
- flowIntoBlock(world, x, y, z + 1, flowMeta,
- getTileEntity(world, x, y, z).getMetal());
+ flowIntoBlock(world, x, y, z + 1,
+ flowMeta,
+ getTileEntity(world,
+ x,
+ y,
+ z).getMetal());
}
}
}
- public void flowIntoBlock(World world, int x, int y, int z, int meta,
- ItemStack metal) {
+ public void flowIntoBlock(World world, int x, int y, int z,
+ int meta, ItemStack metal) {
if (meta < 0 || world.isRemote)
return;
if (displaceIfPossible(world, x, y, z)) {
world.setBlock(x, y, z, this, meta, 3);
if (getTileEntity(world, x, y, z) != null)
- getTileEntity(world, x, y, z).setMetal(metal);
+ getTileEntity(world, x, y, z)
+ .setMetal(metal);
}
}
- public static TileEntityMoltenMetal getTileEntity(World world, int x,
- int y, int z) {
+ public static TileEntityMoltenMetal getTileEntity(World world,
+ int x, int y, int z) {
TileEntity moltenLiquid = world.getTileEntity(x, y, z);
if (moltenLiquid != null
&& moltenLiquid instanceof TileEntityMoltenMetal)
@@ -248,18 +419,24 @@ public class BlockMoltenMetal extends BlockFluidClassic
public static boolean areMetalsEqual(World world, int x1, int y1,
int z1, int x2, int y2, int z2) {
return ItemStack.areItemStacksEqual(
- getTileEntity(world, x1, y1, z1).getMetal(),
- getTileEntity(world, x2, y2, z2).getMetal());
+ getTileEntity(world, x1, y1, z1)
+ .getMetal(),
+ getTileEntity(world, x2, y2, z2)
+ .getMetal());
}
@SideOnly(Side.CLIENT)
public static int color(IBlockAccess world, int i, int j, int k,
- boolean forcecolor, Item itemC) throws IOException {
+ boolean forcecolor, Item itemC)
+ throws IOException {
TileEntity te = world.getTileEntity(i, j, k);
if (te instanceof TileEntityMoltenMetal
- && ((TileEntityMoltenMetal) te).getMetal() != null)
+ && ((TileEntityMoltenMetal) te)
+ .getMetal() != null)
return JewelrycraftUtil.getColor(
- ((TileEntityMoltenMetal) te).getMetal().copy());
+ ((TileEntityMoltenMetal) te)
+ .getMetal()
+ .copy());
return 16777215;
}