aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi
diff options
context:
space:
mode:
authorDraknyte1 <Draknyte1@hotmail.com>2017-01-11 16:32:07 +1000
committerDraknyte1 <Draknyte1@hotmail.com>2017-01-11 16:32:07 +1000
commit8d3d640b9e4f52a81f11255c89f201db80e7a9d4 (patch)
treede01f737a175a4b641072726de82f7c30d83185a /src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi
parent5f5f2168e3d9f6e9c9aad504498bacd3b4102afb (diff)
downloadGT5-Unofficial-8d3d640b9e4f52a81f11255c89f201db80e7a9d4.tar.gz
GT5-Unofficial-8d3d640b9e4f52a81f11255c89f201db80e7a9d4.tar.bz2
GT5-Unofficial-8d3d640b9e4f52a81f11255c89f201db80e7a9d4.zip
+ Added Tree farm Fluid/solid Fertilisers.
+ Added a handler for creating non-molten fluids. + Added the basis for a config switch to enable or disable the tree farmer. $ Improved Tree Farm cutting and cleanup code. $ Fixed a bug in ItemUtils, stemming from ancient code which pointed at an array index which never exists. (Now I compare array length.) - Removed some useless code from Material.java.
Diffstat (limited to 'src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi')
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityTreeFarm.java56
1 files changed, 43 insertions, 13 deletions
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityTreeFarm.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityTreeFarm.java
index 6a660bcd34..4eea109600 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityTreeFarm.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityTreeFarm.java
@@ -25,7 +25,7 @@ public class GregtechMetaTileEntityTreeFarm extends GT_MetaTileEntity_MultiBlock
public ArrayList<GT_MetaTileEntity_TieredMachineBlock> mCasings = new ArrayList();
- int treeCheckTicks = 0;
+ /* private */ private int treeCheckTicks = 0;
public GregtechMetaTileEntityTreeFarm(final int aID, final String aName, final String aNameRegional) {
super(aID, aName, aNameRegional);
@@ -140,8 +140,8 @@ public class GregtechMetaTileEntityTreeFarm extends GT_MetaTileEntity_MultiBlock
if (h == 0) {
//Dirt Floor
if (!TreefarmManager.isDirtBlock(aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j))) {
- Utils.LOG_WARNING("Dirt like block missing from inner 14x14.");
- Utils.LOG_WARNING("Instead, found "+aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j).getLocalizedName());
+ Utils.LOG_INFO("Dirt like block missing from inner 14x14.");
+ Utils.LOG_INFO("Instead, found "+aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j).getLocalizedName());
aBaseMetaTileEntity.getWorld().setBlock(
(aBaseMetaTileEntity.getXCoord()+(xDir+i)),
(aBaseMetaTileEntity.getYCoord()+(h)),
@@ -155,9 +155,9 @@ public class GregtechMetaTileEntityTreeFarm extends GT_MetaTileEntity_MultiBlock
//else if (h == 1){
//Farm Inner 14x14
/*if (!TreefarmManager.isWoodLog(aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j)) || !TreefarmManager.isAirBlock(aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j)) || !aBaseMetaTileEntity.getAirOffset(xDir+i, h, zDir+j)) {
- Utils.LOG_WARNING("Wood like block missing from inner 14x14, layer 2."); //TODO
- Utils.LOG_WARNING("Instead, found "+aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j).getLocalizedName());
- Utils.LOG_WARNING("Found at x:"+(xDir+i)+" y:"+h+" z:"+(zDir+j));
+ Utils.LOG_INFO("Wood like block missing from inner 14x14, layer 2."); //TODO
+ Utils.LOG_INFO("Instead, found "+aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j).getLocalizedName());
+ Utils.LOG_INFO("Found at x:"+(xDir+i)+" y:"+h+" z:"+(zDir+j));
//return false;
}*/
//}
@@ -169,8 +169,8 @@ public class GregtechMetaTileEntityTreeFarm extends GT_MetaTileEntity_MultiBlock
//Deal with all 4 sides (Fenced area)
if (h == 1) {
if (!TreefarmManager.isFenceBlock(aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j))) {
- Utils.LOG_WARNING("Fence/Gate missing from outside the second layer.");
- Utils.LOG_WARNING("Instead, found "+aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j).getLocalizedName());
+ Utils.LOG_INFO("Fence/Gate missing from outside the second layer.");
+ Utils.LOG_INFO("Instead, found "+aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j).getLocalizedName());
return false;
}
}
@@ -179,9 +179,9 @@ public class GregtechMetaTileEntityTreeFarm extends GT_MetaTileEntity_MultiBlock
if ((!addMaintenanceToMachineList(tTileEntity, 77)) && (!addInputToMachineList(tTileEntity, 77)) && (!addOutputToMachineList(tTileEntity, 77)) && (!addEnergyInputToMachineList(tTileEntity, 77))) {
if ((xDir + i != 0) || (zDir + j != 0)) {//no controller
- if (aBaseMetaTileEntity.getMetaTileID() != 752) {
- Utils.LOG_WARNING("Farm Keeper Casings Missing from one of the edges on the bottom edge. x:"+(xDir+i)+" y:"+h+" z:"+(zDir+j)+" | "+aBaseMetaTileEntity.getClass());
- Utils.LOG_WARNING("Instead, found "+aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j).getLocalizedName());
+ if (tTileEntity.getMetaTileID() != 752) {
+ Utils.LOG_INFO("Farm Keeper Casings Missing from one of the edges on the bottom edge. x:"+(xDir+i)+" y:"+h+" z:"+(zDir+j)+" | "+aBaseMetaTileEntity.getClass());
+ Utils.LOG_INFO("Instead, found "+aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j).getLocalizedName()+" "+tTileEntity.getMetaTileID());
return false;
}
Utils.LOG_WARNING("Found a farm keeper.");
@@ -293,6 +293,9 @@ public class GregtechMetaTileEntityTreeFarm extends GT_MetaTileEntity_MultiBlock
Utils.LOG_INFO("Looking For Trees - Serverside | "+treeCheckTicks);
final boolean b = findLogs(aBaseMetaTileEntity);
Utils.LOG_INFO("Did I manage to find/cut logs? "+b);
+ if (b){
+ cleanUp(aBaseMetaTileEntity);
+ }
}
}
@@ -381,16 +384,43 @@ public class GregtechMetaTileEntityTreeFarm extends GT_MetaTileEntity_MultiBlock
}
}
}
- Utils.LOG_INFO("general failure | cut:"+logsCut );
+ cleanUp(aBaseMetaTileEntity);
+ Utils.LOG_INFO("general failure | maybe there is no logs, not an error. | cut:"+logsCut );
return false;
}
+
+ private static boolean cleanUp(final IGregTechTileEntity aBaseMetaTileEntity){
+ Utils.LOG_INFO("called cleanUp()");
+ int cleanedUp = 0;
+ final int xDir = net.minecraftforge.common.util.ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetX * 7;
+ final int zDir = net.minecraftforge.common.util.ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetZ * 7;
+ for (int i = -10; i <= 10; i++) {
+ for (int j = -10; j <= 10; j++) {
+ for (int h=3;h<175;h++){
+ if (TreefarmManager.isLeaves(aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j)) || TreefarmManager.isWoodLog(aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j))){
+ int posiX, posiY, posiZ;
+ posiX = aBaseMetaTileEntity.getXCoord()+xDir+i;
+ posiY = aBaseMetaTileEntity.getYCoord()+h;
+ posiZ = aBaseMetaTileEntity.getZCoord()+zDir+j;
+ Utils.LOG_INFO("Cleaning Up some leftovers.");
+ cleanedUp++;
+ aBaseMetaTileEntity.getWorld().setBlockToAir(posiX, posiY, posiZ);
+ }
+
+ }
+
+ }
+ }
+ Utils.LOG_INFO("cleaning up | "+cleanedUp );
+ return true;
+ }
private static boolean cutLog (final World world, final int x, final int y, final int z){
Utils.LOG_INFO("Cutting Log");
try {
final Block block = world.getBlock(x, y, z);
- Utils.LOG_WARNING(block.toString());
+ Utils.LOG_INFO(block.toString());
block.dropBlockAsItem(world, x, y, z, world.getBlockMetadata(x, y, z), 0);
world.setBlockToAir(x, y, z);
return true;