public boolean canPlaceBlockAt(World var1, int var2, int var3, int var4) {
      int var5 = var1.getBlockId(var2, var3 - 1, var4);
      return var5 == this.blockID?true:(var5 != Block.grass.blockID && var5 != Block.dirt.blockID?false:(var1.getBlockMaterial(var2 - 1, var3 - 1, var4) == Material.water?true:(var1.getBlockMaterial(var2 + 1, var3 - 1, var4) == Material.water?true:(var1.getBlockMaterial(var2, var3 - 1, var4 - 1) == Material.water?true:var1.getBlockMaterial(var2, var3 - 1, var4 + 1) == Material.water))));
   }