Program: 165730
Project: 165730
Buggy source:
@Override protected EnumActionResult clOnItemUse(EntityPlayer player,World world,BlockPos pos,EnumHand hand,EnumFacing facing,float hitX,float hitY,float hitZ){
  ItemStack stack=player.getHeldItem(hand);
  if (!world.isRemote) {
    int mode=getMode(stack);
    if (mode == MODE_NONE) {
      if (player.isSneaking()) {
        if (world.getTileEntity(pos) instanceof BuilderTileEntity) {
          setCurrentBlock(stack,new GlobalCoordinate(pos,world.provider.getDimension()));
          Logging.message(player,TextFormatting.GREEN + "String_Node_Str");
          setMode(stack,MODE_CORNER1);
          setCorner1(stack,null);
        }
 else {
          Logging.message(player,TextFormatting.RED + "String_Node_Str");
        }
      }
 else {
        return EnumActionResult.SUCCESS;
      }
    }
 else     if (mode == MODE_CORNER1) {
      GlobalCoordinate currentBlock=getCurrentBlock(stack);
      if (currentBlock.getDimension() != world.provider.getDimension()) {
        Logging.message(player,TextFormatting.RED + "String_Node_Str");
      }
 else       if (currentBlock.getCoordinate().equals(pos)) {
        Logging.message(player,TextFormatting.RED + "String_Node_Str");
        setMode(stack,MODE_NONE);
      }
 else {
        Logging.message(player,TextFormatting.GREEN + "String_Node_Str");
        setMode(stack,MODE_CORNER2);
        setCorner1(stack,pos);
      }
    }
 else {
      GlobalCoordinate currentBlock=getCurrentBlock(stack);
      if (currentBlock.getDimension() != world.provider.getDimension()) {
        Logging.message(player,TextFormatting.RED + "String_Node_Str");
      }
 else       if (currentBlock.getCoordinate().equals(pos)) {
        Logging.message(player,TextFormatting.RED + "String_Node_Str");
        setMode(stack,MODE_NONE);
      }
 else {
        NBTTagCompound tag=stack.getTagCompound();
        if (tag == null) {
          tag=new NBTTagCompound();
          stack.setTagCompound(tag);
        }
        BlockPos c1=getCorner1(stack);
        if (c1 == null) {
          Logging.message(player,TextFormatting.RED + "String_Node_Str");
          setMode(stack,MODE_NONE);
        }
 else {
          Logging.message(player,TextFormatting.GREEN + "String_Node_Str");
          BlockPos center=new BlockPos((int)Math.ceil((c1.getX() + pos.getX()) / 2.0f),(int)Math.ceil((c1.getY() + pos.getY()) / 2.0f),(int)Math.ceil((c1.getZ() + pos.getZ()) / 2.0f));
          tag.setInteger("String_Node_Str",Math.abs(c1.getX() - pos.getX()) + 1);
          tag.setInteger("String_Node_Str",Math.abs(c1.getY() - pos.getY()) + 1);
          tag.setInteger("String_Node_Str",Math.abs(c1.getZ() - pos.getZ()) + 1);
          tag.setInteger("String_Node_Str",center.getX() - currentBlock.getCoordinate().getX());
          tag.setInteger("String_Node_Str",center.getY() - currentBlock.getCoordinate().getY());
          tag.setInteger("String_Node_Str",center.getZ() - currentBlock.getCoordinate().getZ());
          setMode(stack,MODE_NONE);
          setCorner1(stack,null);
        }
      }
    }
  }
  return EnumActionResult.SUCCESS;
}

Fixed version (ground truth):
@Override protected EnumActionResult clOnItemUse(EntityPlayer player,World world,BlockPos pos,EnumHand hand,EnumFacing facing,float hitX,float hitY,float hitZ){
  ItemStack stack=player.getHeldItem(hand);
  if (!world.isRemote) {
    int mode=getMode(stack);
    if (mode == MODE_NONE) {
      if (player.isSneaking()) {
        if (world.getTileEntity(pos) instanceof BuilderTileEntity) {
          setCurrentBlock(stack,new GlobalCoordinate(pos,world.provider.getDimension()));
          Logging.message(player,TextFormatting.GREEN + "String_Node_Str");
          setMode(stack,MODE_CORNER1);
          setCorner1(stack,null);
        }
 else {
          Logging.message(player,TextFormatting.RED + "String_Node_Str");
        }
      }
 else {
        return EnumActionResult.SUCCESS;
      }
    }
 else     if (mode == MODE_CORNER1) {
      GlobalCoordinate currentBlock=getCurrentBlock(stack);
      if (currentBlock.getDimension() != world.provider.getDimension()) {
        Logging.message(player,TextFormatting.RED + "String_Node_Str");
      }
 else       if (currentBlock.getCoordinate().equals(pos)) {
        Logging.message(player,TextFormatting.RED + "String_Node_Str");
        setMode(stack,MODE_NONE);
      }
 else {
        Logging.message(player,TextFormatting.GREEN + "String_Node_Str");
        setMode(stack,MODE_CORNER2);
        setCorner1(stack,pos);
      }
    }
 else {
      GlobalCoordinate currentBlock=getCurrentBlock(stack);
      if (currentBlock.getDimension() != world.provider.getDimension()) {
        Logging.message(player,TextFormatting.RED + "String_Node_Str");
      }
 else       if (currentBlock.getCoordinate().equals(pos)) {
        Logging.message(player,TextFormatting.RED + "String_Node_Str");
        setMode(stack,MODE_NONE);
      }
 else {
        NBTTagCompound tag=stack.getTagCompound();
        if (tag == null) {
          tag=new NBTTagCompound();
          stack.setTagCompound(tag);
        }
        BlockPos c1=getCorner1(stack);
        if (c1 == null) {
          Logging.message(player,TextFormatting.RED + "String_Node_Str");
          setMode(stack,MODE_NONE);
        }
 else {
          Logging.message(player,TextFormatting.GREEN + "String_Node_Str");
          BlockPos center=new BlockPos((int)Math.ceil((c1.getX() + pos.getX()) / 2.0f),(int)Math.ceil((c1.getY() + pos.getY()) / 2.0f),(int)Math.ceil((c1.getZ() + pos.getZ()) / 2.0f));
          tag.setInteger("String_Node_Str",Math.abs(c1.getX() - pos.getX()) + 1);
          tag.setInteger("String_Node_Str",Math.abs(c1.getY() - pos.getY()) + 1);
          tag.setInteger("String_Node_Str",Math.abs(c1.getZ() - pos.getZ()) + 1);
          tag.setInteger("String_Node_Str",center.getX() - currentBlock.getCoordinate().getX());
          tag.setInteger("String_Node_Str",center.getY() - currentBlock.getCoordinate().getY());
          tag.setInteger("String_Node_Str",center.getZ() - currentBlock.getCoordinate().getZ());
          setMode(stack,MODE_NONE);
          setCorner1(stack,null);
          setShape(stack,Shape.SHAPE_SOLIDBOX);
        }
      }
    }
  }
  return EnumActionResult.SUCCESS;
}