<commit_before>--- ../src_base/common/net/minecraft/src/BlockSnow.java
+++ ../src_work/common/net/minecraft/src/BlockSnow.java
@@ -57,7 +57,8 @@
     public boolean canPlaceBlockAt(World par1World, int par2, int par3, int par4)
     {
         int var5 = par1World.getBlockId(par2, par3 - 1, par4);
-        return var5 != 0 && (var5 == Block.leaves.blockID || Block.blocksList[var5].isOpaqueCube()) ? par1World.getBlockMaterial(par2, par3 - 1, par4).blocksMovement() : false;
+        Block block = Block.blocksList[var5];
+        return block != null && (block.isLeaves(par1World, par2, par3 - 1, par4) || Block.blocksList[var5].isOpaqueCube()) ? par1World.getBlockMaterial(par2, par3 - 1, par4).blocksMovement() : false;
     }
 
     /**
@@ -76,7 +77,6 @@
     {
         if (!this.canPlaceBlockAt(par1World, par2, par3, par4))
         {
-            this.dropBlockAsItem(par1World, par2, par3, par4, par1World.getBlockMetadata(par2, par3, par4), 0);
             par1World.setBlockWithNotify(par2, par3, par4, 0);
             return false;
         }
@@ -92,15 +92,7 @@
      */
     public void harvestBlock(World par1World, EntityPlayer par2EntityPlayer, int par3, int par4, int par5, int par6)
     {
-        int var7 = Item.snowball.shiftedIndex;
-        float var8 = 0.7F;
-        double var9 = (double)(par1World.rand.nextFloat() * var8) + (double)(1.0F - var8) * 0.5D;
-        double var11 = (double)(par1World.rand.nextFloat() * var8) + (double)(1.0F - var8) * 0.5D;
-        double var13 = (double)(par1World.rand.nextFloat() * var8) + (double)(1.0F - var8) * 0.5D;
-        EntityItem var15 = new EntityItem(par1World, (double)par3 + var9, (double)par4 + var11, (double)par5 + var13, new ItemStack(var7, 1, 0));
-        var15.delayBeforeCanPickup = 10;
-        par1World.spawnEntityInWorld(var15);
-        par1World.setBlockWithNotify(par3, par4, par5, 0);
+        dropBlockAsItem(par1World, par3, par4, par5, par6, 0);
         par2EntityPlayer.addStat(StatList.mineBlockStatArray[this.blockID], 1);
     }
 
@@ -117,7 +109,7 @@
      */
     public int quantityDropped(Random par1Random)
     {
-        return 0;
+        return 1;
     }
 
     /**
@@ -127,7 +119,6 @@
     {
         if (par1World.getSavedLightValue(EnumSkyBlock.Block, par2, par3, par4) > 11)
         {
-            this.dropBlockAsItem(par1World, par2, par3, par4, par1World.getBlockMetadata(par2, par3, par4), 0);
             par1World.setBlockWithNotify(par2, par3, par4, 0);
         }
     }
<commit_msg>BlockSnow now pretty much just passes harvestBlock to it's super.<commit_after>--- ../src_base/common/net/minecraft/src/BlockSnow.java
+++ ../src_work/common/net/minecraft/src/BlockSnow.java
@@ -57,7 +57,8 @@
     public boolean canPlaceBlockAt(World par1World, int par2, int par3, int par4)
     {
         int var5 = par1World.getBlockId(par2, par3 - 1, par4);
-        return var5 != 0 && (var5 == Block.leaves.blockID || Block.blocksList[var5].isOpaqueCube()) ? par1World.getBlockMaterial(par2, par3 - 1, par4).blocksMovement() : false;
+        Block block = Block.blocksList[var5];
+        return block != null && (block.isLeaves(par1World, par2, par3 - 1, par4) || Block.blocksList[var5].isOpaqueCube()) ? par1World.getBlockMaterial(par2, par3 - 1, par4).blocksMovement() : false;
     }
 
     /**
@@ -76,7 +77,6 @@
     {
         if (!this.canPlaceBlockAt(par1World, par2, par3, par4))
         {
-            this.dropBlockAsItem(par1World, par2, par3, par4, par1World.getBlockMetadata(par2, par3, par4), 0);
             par1World.setBlockWithNotify(par2, par3, par4, 0);
             return false;
         }
@@ -92,10 +92,8 @@
      */
     public void harvestBlock(World par1World, EntityPlayer par2EntityPlayer, int par3, int par4, int par5, int par6)
     {
-        int var7 = Item.snowball.shiftedIndex;
-        this.dropBlockAsItem_do(par1World, par3, par4, par5, new ItemStack(var7, 1, 0));
+        super.harvestBlock(par1World, par2EntityPlayer, par3, par4, par5, par6);
         par1World.setBlockWithNotify(par3, par4, par5, 0);
-        par2EntityPlayer.addStat(StatList.mineBlockStatArray[this.blockID], 1);
     }
 
     /**
@@ -111,7 +109,7 @@
      */
     public int quantityDropped(Random par1Random)
     {
-        return 0;
+        return 1;
     }
 
     /**
@@ -121,7 +119,6 @@
     {
         if (par1World.getSavedLightValue(EnumSkyBlock.Block, par2, par3, par4) > 11)
         {
-            this.dropBlockAsItem(par1World, par2, par3, par4, par1World.getBlockMetadata(par2, par3, par4), 0);
             par1World.setBlockWithNotify(par2, par3, par4, 0);
         }
     }

{'fraction_non_alphanumeric': 0.14717959801167063, 'fraction_numerical': 0.06721417765290685, 'mean_word_length': 2.7142857142857144, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6956037', 'n_tokens_mistral': 1778, 'n_tokens_neox': 1669, 'n_words': 320}