      }
  
      /**
-@@ -729,7 +783,7 @@
+@@ -729,7 +785,7 @@
       */
      public boolean canHarvestBlock(Block par1Block)
      {

         if (this.username.equals("Notch"))
         {
             this.dropPlayerItemWithRandomChoice(new ItemStack(Item.appleRed, 1), true);
@@ -585,6 +600,20 @@
         if (!this.worldObj.getGameRules().getGameRuleBooleanValue("keepInventory"))
         {
             this.inventory.dropAllItems();

         if (!this.worldObj.isRemote)
         {
             if (this.isPlayerSleeping() || !this.isEntityAlive())
@@ -1317,6 +1404,11 @@
         {
             int var9 = this.worldObj.getBlockMetadata(par1, par2, par3);
             int var5 = BlockBed.getDirection(var9);
