Skip to content

Commit

Permalink
Fixed buggy plum trees. All bugged plum tree leaf blocks must be brok…
Browse files Browse the repository at this point in the history
…en manually.
  • Loading branch information
Kittychanley committed Dec 15, 2015
1 parent 4e86460 commit ff357e2
Showing 1 changed file with 21 additions and 19 deletions.
40 changes: 21 additions & 19 deletions src/Common/com/bioxx/tfc/TileEntities/TEFruitTreeWood.java
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,8 @@ public void updateEntity()

//First we attempt to grow the trunk of the tree higher
if (birthTimeWood + TRUNK_GROW_TIME < TFC_Time.getTotalDays() && height < 3 && isTrunk && worldObj.rand.nextInt(16 / t) == 0 &&
(worldObj.isAirBlock(xCoord, yCoord + 1, zCoord) || worldObj.getBlock(xCoord, yCoord + 1, zCoord) == TFCBlocks.fruitTreeLeaves))
(worldObj.isAirBlock(xCoord, yCoord + 1, zCoord) || worldObj.getBlock(xCoord, yCoord + 1, zCoord) == TFCBlocks.fruitTreeLeaves ||
worldObj.getBlock(xCoord, yCoord + 1, zCoord) == TFCBlocks.fruitTreeLeaves2))
{
worldObj.setBlock(xCoord, yCoord + 1, zCoord, TFCBlocks.fruitTreeWood, meta, 0x2);
if (worldObj.getTileEntity(xCoord, yCoord + 1, zCoord) instanceof TEFruitTreeWood)
Expand All @@ -117,8 +118,8 @@ else if (birthTimeWood + BRANCH_GROW_TIME < TFC_Time.getTotalDays() && height ==
worldObj.getBlock(xCoord, yCoord + 1, zCoord) == TFCBlocks.fruitTreeWood) // Only grow branches if the tree is full height
{
int r = worldObj.rand.nextInt(4);
if (r == 0 && worldObj.blockExists(xCoord + 1, yCoord, zCoord) && worldObj.isAirBlock(xCoord + 1, yCoord, zCoord) ||
worldObj.getBlock(xCoord + 1, yCoord, zCoord) == TFCBlocks.fruitTreeLeaves)
if (r == 0 && worldObj.blockExists(xCoord + 1, yCoord, zCoord) && (worldObj.isAirBlock(xCoord + 1, yCoord, zCoord) ||
worldObj.getBlock(xCoord + 1, yCoord, zCoord) == TFCBlocks.fruitTreeLeaves || worldObj.getBlock(xCoord + 1, yCoord, zCoord) == TFCBlocks.fruitTreeLeaves2))
{
worldObj.setBlock(xCoord + 1, yCoord, zCoord, TFCBlocks.fruitTreeWood, meta, 0x2);
if (worldObj.getTileEntity(xCoord + 1, yCoord, zCoord) instanceof TEFruitTreeWood)
Expand All @@ -127,8 +128,8 @@ else if (birthTimeWood + BRANCH_GROW_TIME < TFC_Time.getTotalDays() && height ==
branchTE.setupBirth(false, height, birthTimeWood + BRANCH_GROW_TIME, birthTimeLeaves);
}
}
else if (r == 1 && worldObj.blockExists(xCoord, yCoord, zCoord - 1) && worldObj.isAirBlock(xCoord, yCoord, zCoord - 1) ||
worldObj.getBlock(xCoord, yCoord, zCoord - 1) == TFCBlocks.fruitTreeLeaves)
else if (r == 1 && worldObj.blockExists(xCoord, yCoord, zCoord - 1) && (worldObj.isAirBlock(xCoord, yCoord, zCoord - 1) ||
worldObj.getBlock(xCoord, yCoord, zCoord - 1) == TFCBlocks.fruitTreeLeaves || worldObj.getBlock(xCoord, yCoord, zCoord - 1) == TFCBlocks.fruitTreeLeaves2))
{
worldObj.setBlock(xCoord, yCoord, zCoord - 1, TFCBlocks.fruitTreeWood, meta, 0x2);
if (worldObj.getTileEntity(xCoord, yCoord, zCoord - 1) instanceof TEFruitTreeWood)
Expand All @@ -137,8 +138,8 @@ else if (r == 1 && worldObj.blockExists(xCoord, yCoord, zCoord - 1) && worldObj.
branchTE.setupBirth(false, height, birthTimeWood + BRANCH_GROW_TIME, birthTimeLeaves);
}
}
else if (r == 2 && worldObj.blockExists(xCoord - 1, yCoord, zCoord) && worldObj.isAirBlock(xCoord - 1, yCoord, zCoord) ||
worldObj.getBlock(xCoord - 1, yCoord, zCoord) == TFCBlocks.fruitTreeLeaves)
else if (r == 2 && worldObj.blockExists(xCoord - 1, yCoord, zCoord) && (worldObj.isAirBlock(xCoord - 1, yCoord, zCoord) ||
worldObj.getBlock(xCoord - 1, yCoord, zCoord) == TFCBlocks.fruitTreeLeaves || worldObj.getBlock(xCoord - 1, yCoord, zCoord) == TFCBlocks.fruitTreeLeaves2))
{
worldObj.setBlock(xCoord - 1, yCoord, zCoord, TFCBlocks.fruitTreeWood, meta, 0x2);
if (worldObj.getTileEntity(xCoord - 1, yCoord, zCoord) instanceof TEFruitTreeWood)
Expand All @@ -147,8 +148,8 @@ else if (r == 2 && worldObj.blockExists(xCoord - 1, yCoord, zCoord) && worldObj.
branchTE.setupBirth(false, height, birthTimeWood + BRANCH_GROW_TIME, birthTimeLeaves);
}
}
else if (r == 3 && worldObj.blockExists(xCoord, yCoord, zCoord + 1) && worldObj.isAirBlock(xCoord, yCoord, zCoord + 1) ||
worldObj.getBlock(xCoord, yCoord, zCoord + 1) == TFCBlocks.fruitTreeLeaves)
else if (r == 3 && worldObj.blockExists(xCoord, yCoord, zCoord + 1) && (worldObj.isAirBlock(xCoord, yCoord, zCoord + 1) ||
worldObj.getBlock(xCoord, yCoord, zCoord + 1) == TFCBlocks.fruitTreeLeaves || worldObj.getBlock(xCoord, yCoord, zCoord + 1) == TFCBlocks.fruitTreeLeaves2))
{
worldObj.setBlock(xCoord, yCoord, zCoord + 1, TFCBlocks.fruitTreeWood, meta, 0x2);
if (worldObj.getTileEntity(xCoord, yCoord, zCoord + 1) instanceof TEFruitTreeWood)
Expand All @@ -164,51 +165,52 @@ else if (r == 3 && worldObj.blockExists(xCoord, yCoord, zCoord + 1) && worldObj.

if (birthTimeLeaves + 2 < TFC_Time.getTotalDays() && worldObj.rand.nextInt((int) LEAF_GROWTH_RATE) == 0 && worldObj.getBlock(xCoord, yCoord + 2, zCoord) != TFCBlocks.fruitTreeWood)
{
Block bid = TFCBlocks.fruitTreeLeaves;
int m = meta & 7;
Block bid = meta < 8 ? TFCBlocks.fruitTreeLeaves : TFCBlocks.fruitTreeLeaves2;

if (checkLeaves(xCoord, yCoord + 1, zCoord)) //above
{
worldObj.setBlock(xCoord, yCoord + 1, zCoord, bid, meta, 0x2);
worldObj.setBlock(xCoord, yCoord + 1, zCoord, bid, m, 0x2);
worldObj.markBlockForUpdate(xCoord, yCoord + 1, zCoord);
}
else if (checkLeaves(xCoord + 1, yCoord, zCoord)) //+x
{
worldObj.setBlock(xCoord + 1, yCoord, zCoord, bid, meta, 0x2);
worldObj.setBlock(xCoord + 1, yCoord, zCoord, bid, m, 0x2);
worldObj.markBlockForUpdate(xCoord + 1, yCoord, zCoord);
}
else if (checkLeaves(xCoord - 1, yCoord, zCoord)) //-x
{
worldObj.setBlock(xCoord - 1, yCoord, zCoord, bid, meta, 0x2);
worldObj.setBlock(xCoord - 1, yCoord, zCoord, bid, m, 0x2);
worldObj.markBlockForUpdate(xCoord - 1, yCoord, zCoord);
}
else if (checkLeaves(xCoord, yCoord, zCoord + 1)) //+z
{
worldObj.setBlock(xCoord, yCoord, zCoord + 1, bid, meta, 0x2);
worldObj.setBlock(xCoord, yCoord, zCoord + 1, bid, m, 0x2);
worldObj.markBlockForUpdate(xCoord, yCoord, zCoord + 1);
}
else if (checkLeaves(xCoord, yCoord, zCoord - 1)) //-z
{
worldObj.setBlock(xCoord, yCoord, zCoord - 1, bid, meta, 0x2);
worldObj.setBlock(xCoord, yCoord, zCoord - 1, bid, m, 0x2);
worldObj.markBlockForUpdate(xCoord, yCoord, zCoord - 1);
}
else if (checkLeaves(xCoord + 1, yCoord, zCoord - 1)) //+x/-z
{
worldObj.setBlock(xCoord + 1, yCoord, zCoord - 1, bid, meta, 0x2);
worldObj.setBlock(xCoord + 1, yCoord, zCoord - 1, bid, m, 0x2);
worldObj.markBlockForUpdate(xCoord + 1, yCoord, zCoord - 1);
}
else if (checkLeaves(xCoord + 1, yCoord, zCoord + 1)) //+x/+z
{
worldObj.setBlock(xCoord + 1, yCoord, zCoord + 1, bid, meta, 0x2);
worldObj.setBlock(xCoord + 1, yCoord, zCoord + 1, bid, m, 0x2);
worldObj.markBlockForUpdate(xCoord + 1, yCoord, zCoord + 1);
}
else if (checkLeaves(xCoord - 1, yCoord, zCoord - 1)) //-x/-z
{
worldObj.setBlock(xCoord - 1, yCoord, zCoord - 1, bid, meta, 0x2);
worldObj.setBlock(xCoord - 1, yCoord, zCoord - 1, bid, m, 0x2);
worldObj.markBlockForUpdate(xCoord - 1, yCoord, zCoord - 1);
}
else if (checkLeaves(xCoord - 1, yCoord, zCoord + 1)) //-x/+z
{
worldObj.setBlock(xCoord - 1, yCoord, zCoord + 1, bid, meta, 0x2);
worldObj.setBlock(xCoord - 1, yCoord, zCoord + 1, bid, m, 0x2);
worldObj.markBlockForUpdate(xCoord - 1, yCoord, zCoord + 1);
}

Expand Down

0 comments on commit ff357e2

Please sign in to comment.