Showing with 309 additions and 467 deletions.
  1. +3 −0 java/k4unl/minecraft/Hydraulicraft/blocks/HydraulicBlockBase.java
  2. +2 −1 java/k4unl/minecraft/Hydraulicraft/blocks/HydraulicBlockContainerBase.java
  3. +20 −0 java/k4unl/minecraft/Hydraulicraft/blocks/consumers/harvester/BlockHydraulicHarvester.java
  4. +3 −66 java/k4unl/minecraft/Hydraulicraft/blocks/consumers/harvester/BlockHydraulicPiston.java
  5. +1 −3 java/k4unl/minecraft/Hydraulicraft/blocks/handlers/HandlerTrolley.java
  6. +3 −3 java/k4unl/minecraft/Hydraulicraft/client/renderers/Renderers.java
  7. +69 −151 java/k4unl/minecraft/Hydraulicraft/client/renderers/consumers/RendererHydraulicPiston.java
  8. +4 −4 .../k4unl/minecraft/Hydraulicraft/client/renderers/consumers/harvester/RendererHarvesterTrolley.java
  9. +0 −57 java/k4unl/minecraft/Hydraulicraft/client/renderers/items/RendererHydraulicPistonItem.java
  10. +13 −0 java/k4unl/minecraft/Hydraulicraft/thirdParty/WailaProvider.java
  11. +18 −0 java/k4unl/minecraft/Hydraulicraft/thirdParty/fmp/InventoryCraftingDummy.java
  12. +1 −1 java/k4unl/minecraft/Hydraulicraft/thirdParty/fmp/tileEntities/TileHydraulicSaw.java
  13. +32 −0 java/k4unl/minecraft/Hydraulicraft/tileEntities/harvester/HarvesterReasonForNotForming.java
  14. +129 −181 java/k4unl/minecraft/Hydraulicraft/tileEntities/harvester/TileHydraulicHarvester.java
  15. +11 −0 resources/assets/hydcraft/lang/en_US.lang
  16. BIN resources/assets/hydcraft/textures/blocks/hydraulicPiston_front.png
  17. BIN resources/assets/hydcraft/textures/blocks/hydraulicPiston_sides.png
  18. BIN resources/assets/hydcraft/textures/blocks/hydraulicPressureWall.png
  19. BIN resources/assets/hydcraft/textures/model/hydraulicPiston_tmap.png
@@ -2,6 +2,7 @@

import k4unl.minecraft.Hydraulicraft.lib.CustomTabs;
import k4unl.minecraft.Hydraulicraft.lib.config.ModInfo;
import k4unl.minecraft.Hydraulicraft.lib.config.Names;
import k4unl.minecraft.Hydraulicraft.lib.helperClasses.Name;
import k4unl.minecraft.k4lib.lib.Orientation;
import net.minecraft.block.Block;
@@ -118,6 +119,8 @@ public void registerBlockIcons(IIconRegister iconRegistry){
rightIcon = blockIcon;
backIcon = blockIcon;
}
}else{
blockIcon = iconRegistry.registerIcon(ModInfo.LID + ":" + Names.blockHydraulicPressureWall.unlocalized);
}
}

@@ -64,8 +64,9 @@ public boolean onBlockActivated(World world, int x, int y, int z,

if(getGUIID() != GuiIDs.INVALID) {
if(this instanceof IGUIMultiBlock){
if(!((IGUIMultiBlock)this).isValid(world, x, y, z))
if(!((IGUIMultiBlock)this).isValid(world, x, y, z)) {
return false;
}
}
player.openGui(Hydraulicraft.instance, getGUIID().ordinal(), world, x, y, z);
return true;
@@ -7,7 +7,9 @@
import k4unl.minecraft.Hydraulicraft.lib.config.GuiIDs;
import k4unl.minecraft.Hydraulicraft.lib.config.Names;
import k4unl.minecraft.Hydraulicraft.tileEntities.harvester.TileHydraulicHarvester;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ChatComponentTranslation;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;

@@ -45,4 +47,22 @@ public boolean isValid(IBlockAccess world, int x, int y, int z) {

return ((TileHydraulicHarvester)world.getTileEntity(x, y, z)).getIsMultiblock();
}

@Override
public boolean onBlockActivated(World world, int x, int y, int z,
EntityPlayer player, int par6, float par7, float par8, float par9) {

if(world.isRemote) return true;
if(!isValid(world, x, y, z)){
TileHydraulicHarvester harvester = ((TileHydraulicHarvester)world.getTileEntity(x, y, z));
//Tell the harvester to quickly check:
harvester.doMultiBlockChecking();
if(!isValid(world, x, y, z)) {
player.addChatMessage(new ChatComponentTranslation(harvester.getError().getTranslation(), harvester.getExtraErrorInfo()));
return true;
}
}

return super.onBlockActivated(world, x, y, z, player, par6, par7, par8, par9);
}
}
@@ -3,14 +3,14 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import k4unl.minecraft.Hydraulicraft.blocks.HydraulicBlockContainerBase;
import k4unl.minecraft.Hydraulicraft.client.renderers.consumers.RendererHydraulicPiston;
import k4unl.minecraft.Hydraulicraft.lib.config.GuiIDs;
import k4unl.minecraft.Hydraulicraft.lib.config.Names;
import k4unl.minecraft.Hydraulicraft.tileEntities.consumers.TileHydraulicPiston;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.MathHelper;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraftforge.common.util.ForgeDirection;

@@ -19,7 +19,6 @@ public class BlockHydraulicPiston extends HydraulicBlockContainerBase {
public BlockHydraulicPiston() {
super(Names.blockHydraulicPiston);
hasFrontIcon = true;
hasTextures = false;
}

@Override
@@ -36,7 +35,7 @@ public GuiIDs getGUIID() {
@Override
@SideOnly(Side.CLIENT)
public int getRenderType(){
return -1;
return RendererHydraulicPiston.RENDER_ID;
}

@Override
@@ -48,36 +47,6 @@ public boolean isOpaqueCube(){
public boolean renderAsNormalBlock(){
return true;
}

@Override
public void setBlockBoundsBasedOnState(IBlockAccess world, int x, int y, int z){
TileEntity tileEntity = world.getTileEntity(x, y, z);

if(tileEntity instanceof TileHydraulicPiston) {
float extendedLength = ((TileHydraulicPiston)tileEntity).getExtendedLength();

//Get rotation:
int metadata = tileEntity.getBlockMetadata();
float minX = 0.0F;
float minY = 0.0F;
float minZ = 0.0F;
float maxX = 1.0F;
float maxY = 1.0F;
float maxZ = 1.0F;

ForgeDirection dir = ForgeDirection.getOrientation(metadata);
minX += extendedLength * (dir.offsetX < 0 ? dir.offsetX : 0);
minY += extendedLength * (dir.offsetY < 0 ? dir.offsetY : 0);
minZ += extendedLength * (dir.offsetZ < 0 ? dir.offsetZ : 0);

maxX += extendedLength * (dir.offsetX > 0 ? dir.offsetX : 0);
maxY += extendedLength * (dir.offsetY > 0 ? dir.offsetY : 0);
maxZ += extendedLength * (dir.offsetZ > 0 ? dir.offsetZ : 0);


setBlockBounds(minX, minY, minZ, maxX, maxY, maxZ);
}
}

@SuppressWarnings("cast")
@Override
@@ -106,39 +75,7 @@ public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase p
if(pEnt instanceof TileHydraulicPiston){
((TileHydraulicPiston)pEnt).setFacing(ForgeDirection.getOrientation(metaDataToSet));
}
super.onBlockPlacedBy(world, x, y, z, player, iStack);
}
}

/*
@Override
public void addCollisionBoxesToList(World world, int x, int y, int z, AxisAlignedBB axisalignedbb, List arraylist, Entity par7Entity){
TileEntity tileEntity = world.getBlockTileEntity(x, y, z);
if(tileEntity instanceof TileHydraulicPiston) {
float extendedLength = ((TileHydraulicPiston)tileEntity).getExtendedLength();
//Get rotation:
int metadata = tileEntity.getBlockMetadata();
float minX = 0.0F;
float minY = 0.0F;
float minZ = 0.0F;
float maxX = 1.0F;
float maxY = 1.0F;
float maxZ = 1.0F;
ForgeDirection dir = ForgeDirection.getOrientation(metadata);
minX -= extendedLength * (dir.offsetX < 0 ? dir.offsetX : 0);
minY -= extendedLength * (dir.offsetY < 0 ? dir.offsetY : 0);
minZ -= extendedLength * (dir.offsetZ < 0 ? dir.offsetZ : 0);
maxX += extendedLength * (dir.offsetX > 0 ? dir.offsetX : 0);
maxY += extendedLength * (dir.offsetY > 0 ? dir.offsetY : 0);
maxZ += extendedLength * (dir.offsetZ > 0 ? dir.offsetZ : 0);
setBlockBounds(minX, minY, minZ, maxX, maxY, maxZ);
//arraylist.add(arg0)
super.addCollisionBoxesToList(world, x, y, z, axisalignedbb, arraylist, par7Entity);
}
}*/

}
@@ -3,7 +3,6 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import k4unl.minecraft.Hydraulicraft.Hydraulicraft;
import k4unl.minecraft.Hydraulicraft.lib.Log;
import net.minecraft.block.Block;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
@@ -32,8 +31,7 @@ public String getUnlocalizedName(ItemStack stack) {
if(tag != null){
return super.getUnlocalizedName(stack) + "." + tag.getString("name");
}else{
//TODO: Fix meh. Happens when i look at you with WAILA
Log.error("Tag of a trolley itemstack was null??");
//Log.error("Tag of a trolley itemstack was null??");
return super.getUnlocalizedName(stack);
}
}
@@ -44,15 +44,15 @@ public static void init(){

ClientRegistry.bindTileEntitySpecialRenderer(TileHarvesterFrame.class, new RendererHarvesterFrame());
ClientRegistry.bindTileEntitySpecialRenderer(TileHarvesterTrolley.class, new RendererHarvesterTrolley());


RenderingRegistry.registerBlockHandler(new RendererHydraulicPiston());
ClientRegistry.bindTileEntitySpecialRenderer(TileHydraulicPiston.class, new RendererHydraulicPiston());
ClientRegistry.bindTileEntitySpecialRenderer(TileHydraulicLavaPump.class, new RendererHydraulicLavaPump());
ClientRegistry.bindTileEntitySpecialRenderer(TileHydraulicPump.class, new RendererHydraulicPump());

ClientRegistry.bindTileEntitySpecialRenderer(TilePressureHose.class, new RendererPartHose());
ClientRegistry.bindTileEntitySpecialRenderer(TileMovingPane.class, new RendererMovingPane());

MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(HCBlocks.hydraulicPiston), new RendererHydraulicPistonItem());

MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(HCBlocks.hydraulicHarvesterFrame), new RendererHarvesterItem());
MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(HCBlocks.harvesterTrolley), new RendererHarvesterTrolleyItem());
MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(HCBlocks.hydraulicPump), new RendererHydraulicPumpItem());