1

[SOLVED] Crop drops as crop block rather than item.

Unlocked's Avatar Unlocked8/30/14 7:50 pm
1 emeralds 575 5
8/31/2014 1:12 am
Unlocked's Avatar Unlocked
I looked around for a while and couldn't find anything to help. Also, the title is not strictly correct but it would be confusing it I wrote exactly what was happening and it's similar enough to the truth that the solution should be the same.

The problem:
I have a crop called stonebrick crop. You plant some stonebrick seeds and it grows into a crop. The problem is, when I break the fully grown plant, it drops the "Bush Block" instead of a stone brick (which it should drop). I suppose I should put my code here.

package com.unlocked.stone_bricks.blocks;

import java.util.Random;

import net.minecraft.block.Block;
import net.minecraft.block.BlockBush;
import net.minecraft.block.IGrowable;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraft.util.MathHelper;
import net.minecraft.world.World;

public class StonebrickCrop extends BlockBush implements IGrowable
{
private IIcon[] field_149867_a;
private static final String __OBFID = "CL_00000222";

public StonebrickCrop()
{
this.setTickRandomly(true);
float var1 = 0.5F;
this.setBlockBounds(0.5F - var1, 0.0F, 0.5F - var1, 0.5F + var1, 0.25F, 0.5F + var1);
this.setCreativeTab((CreativeTabs)null);
this.setHardness(0.0F);
this.setStepSound(soundTypeStone);
this.disableStats();
this.setBlockName("stone_brick_crop");
}


protected boolean func_149854_a(Block p_149854_1_)
{
return p_149854_1_ == Blocks.farmland;
}

/**
* Ticks the block if it's been scheduled
*/
public void updateTick(World p_149674_1_, int p_149674_2_, int p_149674_3_, int p_149674_4_, Random p_149674_5_)
{
super.updateTick(p_149674_1_, p_149674_2_, p_149674_3_, p_149674_4_, p_149674_5_);

if (p_149674_1_.getBlockLightValue(p_149674_2_, p_149674_3_ + 1, p_149674_4_) >= 9)
{
int var6 = p_149674_1_.getBlockMetadata(p_149674_2_, p_149674_3_, p_149674_4_);

if (var6 < 7)
{
float var7 = this.func_149864_n(p_149674_1_, p_149674_2_, p_149674_3_, p_149674_4_);

if (p_149674_5_.nextInt((int)(25.0F / var7) + 1) == 0)
{
++var6;
p_149674_1_.setBlockMetadataWithNotify(p_149674_2_, p_149674_3_, p_149674_4_, var6, 2);
}
}
}
}

public void func_149863_m(World p_149863_1_, int p_149863_2_, int p_149863_3_, int p_149863_4_)
{
int var5 = p_149863_1_.getBlockMetadata(p_149863_2_, p_149863_3_, p_149863_4_) + MathHelper.getRandomIntegerInRange(p_149863_1_.rand, 2, 5);

if (var5 > 7)
{
var5 = 7;
}

p_149863_1_.setBlockMetadataWithNotify(p_149863_2_, p_149863_3_, p_149863_4_, var5, 2);
}

private float func_149864_n(World p_149864_1_, int p_149864_2_, int p_149864_3_, int p_149864_4_)
{
float var5 = 1.0F;
Block var6 = p_149864_1_.getBlock(p_149864_2_, p_149864_3_, p_149864_4_ - 1);
Block var7 = p_149864_1_.getBlock(p_149864_2_, p_149864_3_, p_149864_4_ + 1);
Block var8 = p_149864_1_.getBlock(p_149864_2_ - 1, p_149864_3_, p_149864_4_);
Block var9 = p_149864_1_.getBlock(p_149864_2_ + 1, p_149864_3_, p_149864_4_);
Block var10 = p_149864_1_.getBlock(p_149864_2_ - 1, p_149864_3_, p_149864_4_ - 1);
Block var11 = p_149864_1_.getBlock(p_149864_2_ + 1, p_149864_3_, p_149864_4_ - 1);
Block var12 = p_149864_1_.getBlock(p_149864_2_ + 1, p_149864_3_, p_149864_4_ + 1);
Block var13 = p_149864_1_.getBlock(p_149864_2_ - 1, p_149864_3_, p_149864_4_ + 1);
boolean var14 = var8 == this || var9 == this;
boolean var15 = var6 == this || var7 == this;
boolean var16 = var10 == this || var11 == this || var12 == this || var13 == this;

for (int var17 = p_149864_2_ - 1; var17 <= p_149864_2_ + 1; ++var17)
{
for (int var18 = p_149864_4_ - 1; var18 <= p_149864_4_ + 1; ++var18)
{
float var19 = 0.0F;

if (p_149864_1_.getBlock(var17, p_149864_3_ - 1, var18) == Blocks.farmland)
{
var19 = 1.0F;

if (p_149864_1_.getBlockMetadata(var17, p_149864_3_ - 1, var18) > 0)
{
var19 = 3.0F;
}
}

if (var17 != p_149864_2_ || var18 != p_149864_4_)
{
var19 /= 4.0F;
}

var5 += var19;
}
}

if (var16 || var14 && var15)
{
var5 /= 2.0F;
}

return var5;
}

/**
* Gets the block's texture. Args: side, meta
*/
public IIcon getIcon(int p_149691_1_, int p_149691_2_)
{
if (p_149691_2_ < 0 || p_149691_2_ > 7)
{
p_149691_2_ = 7;
}

return this.field_149867_a[p_149691_2_];
}

/**
* The type of render function that is called for this block
*/
public int getRenderType()
{
return 6;
}

protected Item func_149866_i()
{
return null;
}

protected Block func_149865_P()
{
return Blocks.stonebrick;
}

/**
* Drops the block items with a specified chance of dropping the specified items
*/
/*
public void dropBlockAsItemWithChance(World p_149690_1_, int p_149690_2_, int p_149690_3_, int p_149690_4_, int p_149690_5_, float p_149690_6_, int p_149690_7_)
{
super.dropBlockAsItemWithChance(p_149690_1_, p_149690_2_, p_149690_3_, p_149690_4_, p_149690_5_, p_149690_6_, 0);
if (p_149690_5_ >= 7)
{
int var8 = 3 + p_149690_7_;

for (int var9 = 0; var9 < var8; ++var9)
{
if (p_149690_1_.rand.nextInt(15) <= p_149690_5_)
{
this.dropBlockAsItem(p_149690_1_, p_149690_2_, p_149690_3_, p_149690_4_, new ItemStack(this.func_149866_i(), 1, 0));
}
}
}
}
*/

public Object getBlockDropped(int p_149650_1_, Random p_149650_2_, int p_149650_3_)
{
return Blocks.stonebrick;
}

/**
* Returns the quantity of items to drop on block destruction.
*/
public int quantityDropped(Random p_149745_1_)
{
return 1;
}

/**
* Gets an item for the block being called on. Args: world, x, y, z
*/
public Item getItem(World p_149694_1_, int p_149694_2_, int p_149694_3_, int p_149694_4_)
{
return this.func_149866_i();
}

public void registerBlockIcons(IIconRegister p_149651_1_)
{
this.field_149867_a = new IIcon[8];

for (int var2 = 0; var2 < this.field_149867_a.length - 1; ++var2)
{
this.field_149867_a[var2] = p_149651_1_.registerIcon("stonebricks:stone_brick_crop_0");
}
this.field_149867_a[7] = p_149651_1_.registerIcon("stonebricks:stone_brick_crop_1");
}

public boolean func_149851_a(World p_149851_1_, int p_149851_2_, int p_149851_3_, int p_149851_4_, boolean p_149851_5_)
{
return p_149851_1_.getBlockMetadata(p_149851_2_, p_149851_3_, p_149851_4_) != 7;
}

public boolean func_149852_a(World p_149852_1_, Random p_149852_2_, int p_149852_3_, int p_149852_4_, int p_149852_5_)
{
return true;
}

public void func_149853_b(World p_149853_1_, Random p_149853_2_, int p_149853_3_, int p_149853_4_, int p_149853_5_)
{
this.func_149863_m(p_149853_1_, p_149853_3_, p_149853_4_, p_149853_5_);
}
}


I am 99% sure that my main class is correct but I figure I'll put that there anyway just in case someone asks for it.

package com.unlocked.stone_bricks;

import com.unlocked.stone_bricks.items.*;
import com.unlocked.stone_bricks.blocks.*;
import com.unlocked.stone_bricks.crops.*;
import com.unlocked.stone_bricks.lib.ProxyCommon;
import com.unlocked.stone_bricks.lib.References;

import net.minecraft.block.Block;
import net.minecraft.block.BlockBush;
import net.minecraft.block.BlockCrops;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.inventory.IInventory;
import net.minecraft.item.Item;
import net.minecraft.item.ItemFlintAndSteel;
import net.minecraft.item.ItemFood;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.IRecipe;
import net.minecraftforge.oredict.OreDictionary;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.Mod.Instance;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.common.registry.LanguageRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;

@Mod(modid = References.MODID, version = References.VERSION)
public class StoneBricksMod
{
@SidedProxy(clientSide = References.Client,
serverSide = References.Common)
public static ProxyCommon proxy;

@Instance(References.MODID)
public static StoneBricksMod instance;

//ItemFood

//Item
public static Item hammer = new Hammer();
public static Item rubble = new Rubble();


//Block
public static Block sandstoneBrick = new StoneBrick(0, false);
public static Block invertedSandstoneBrick = new StoneBrick(0, true);
public static Block oakBrick = new StoneBrick(1, false);
public static Block invertedOakBrick = new StoneBrick(1, true);
public static Block birchBrick = new StoneBrick(2, false);
public static Block invertedBirchBrick = new StoneBrick(2, true);
public static Block spruceBrick = new StoneBrick(3, false);
public static Block invertedSpruceBrick = new StoneBrick(3, true);
public static Block jungleBrick = new StoneBrick(4, false);
public static Block invertedJungleBrick = new StoneBrick(4, true);
public static Block darkoakBrick = new StoneBrick(5, false);
public static Block invertedDarkoakBrick = new StoneBrick(5, true);
public static Block acaciaBrick = new StoneBrick(6, false);
public static Block invertedAcaciaBrick = new StoneBrick(6, true);
public static Block redstoneBrick = new RedstoneBrick(false);
public static Block invertedRedstoneBrick = new RedstoneBrick(true);
public static Block glowstoneBrick = new StoneBrick(7, false);
public static Block invertedGlowstoneBrick = new StoneBrick(7, true);
public static Block invertedStoneBrick = new StoneBrick(8, true);
public static Block stonebrickCrop = new StonebrickCrop();

//Seeds
public static Item stonebrickSeed = new StonebrickSeed();


@EventHandler
public void init(FMLInitializationEvent event)
{
}

@EventHandler
public void load(FMLInitializationEvent event)
{
proxy.registerRenderInformation();
this.addRecipes();
}

public void addRecipes() {

//Shaped Crafting
GameRegistry.addShapedRecipe(new ItemStack (sandstoneBrick, 8), "SSS", "SBS",
"SSS", 'S', Blocks.sandstone, 'B', Blocks.stonebrick);
GameRegistry.addShapedRecipe(new ItemStack (invertedSandstoneBrick, 8), "SSS", "STS",
"SSS", 'S', sandstoneBrick, 'T', Blocks.redstone_torch);

GameRegistry.addShapelessRecipe(new ItemStack (rubble, 4),
new ItemStack(hammer, 1, OreDictionary.WILDCARD_VALUE), new ItemStack (Blocks.stonebrick));



//Smelting
//GameRegistry.addSmelting(CakeBatter, new ItemStack (Items.cake, 1), 10f);


}

public StoneBricksMod(){
//Item Registry
//GameReg
GameRegistry.registerItem(hammer, "hammer");
GameRegistry.registerItem(rubble, "rubble");
GameRegistry.registerItem(stonebrickSeed, "stonebrickSeed");
//LangReg
LanguageRegistry.addName(hammer, "Hammer");
LanguageRegistry.addName(rubble, "Rubble");
LanguageRegistry.addName(stonebrickSeed, "Stone Brick Seed");
//Block Registry
//GameReg
GameRegistry.registerBlock(sandstoneBrick, "sandstone_brick");
GameRegistry.registerBlock(invertedSandstoneBrick, "sandstone_brick_inverted");

GameRegistry.registerBlock(oakBrick, "oak_brick");
GameRegistry.registerBlock(invertedOakBrick, "oak_brick_inverted");

GameRegistry.registerBlock(birchBrick, "birch_brick");
GameRegistry.registerBlock(invertedBirchBrick, "birch_brick_inverted");

GameRegistry.registerBlock(spruceBrick, "spruce_brick");
GameRegistry.registerBlock(invertedSpruceBrick, "spruce_brick_inverted");

GameRegistry.registerBlock(jungleBrick, "jungle_brick");
GameRegistry.registerBlock(invertedJungleBrick, "jungle_brick_inverted");

GameRegistry.registerBlock(darkoakBrick, "darkoak_brick");
GameRegistry.registerBlock(invertedDarkoakBrick, "darkoak_brick_inverted");

GameRegistry.registerBlock(acaciaBrick, "acaica_brick");
GameRegistry.registerBlock(invertedAcaciaBrick, "acacia_brick_inverted");

GameRegistry.registerBlock(invertedStoneBrick, "stone_brick_inverted");

GameRegistry.registerBlock(redstoneBrick, "redstone_brick");
GameRegistry.registerBlock(invertedRedstoneBrick, "redstone_brick_inverted");

GameRegistry.registerBlock(glowstoneBrick, "glowstone_brick");
GameRegistry.registerBlock(invertedGlowstoneBrick, "glowstone_brick_inverted");

GameRegistry.registerBlock(stonebrickCrop, "stone_brick_crop");
//LangReg
LanguageRegistry.addName(sandstoneBrick, "Sandstone Brick");
LanguageRegistry.addName(invertedSandstoneBrick, "Inverted Sandstone Brick");

LanguageRegistry.addName(oakBrick, "Oak Brick");
LanguageRegistry.addName(invertedOakBrick, "Inverted Oak Brick");

LanguageRegistry.addName(birchBrick, "Birch Brick");
LanguageRegistry.addName(invertedBirchBrick, "Inverted Birch Brick");

LanguageRegistry.addName(spruceBrick, "Spruce Brick");
LanguageRegistry.addName(invertedSpruceBrick, "Inverted Spruce Brick");

LanguageRegistry.addName(jungleBrick, "Jungle Brick");
LanguageRegistry.addName(invertedJungleBrick, "Inverted Jungle Brick");

LanguageRegistry.addName(darkoakBrick, "Dark Oak Brick");
LanguageRegistry.addName(invertedDarkoakBrick, "Inverted Dark Oak Brick");

LanguageRegistry.addName(acaciaBrick, "Acacia Brick");
LanguageRegistry.addName(invertedAcaciaBrick, "Inverted Acacia Brick");

LanguageRegistry.addName(invertedStoneBrick, "Inverted Stone Brick");

LanguageRegistry.addName(redstoneBrick, "Redstone-infused Stone Brick");
LanguageRegistry.addName(invertedRedstoneBrick, "Inverted Redstone-infused Stone Brick");

LanguageRegistry.addName(glowstoneBrick, "Glowstone-infused Stone Brick");
LanguageRegistry.addName(invertedGlowstoneBrick, "Inverted Glowstone-infused Stone Brick");



}


}


Also, in case this is not understood from how I wrote the code: I do not want it to drop the seeds when the plant is grown. I have/will make other crafting recipes that will allow the players to recraft the seeds from the stone bricks. (Some things aren't actually needed and will be removed later)

Thanks a ton for any help.

~Unlocked
Posted by Unlocked's Avatar
Unlocked
Level 28 : Expert Dragon
10

Create an account or sign in to comment.

5

1
08/31/2014 1:12 am
Level 28 : Expert Dragon
Unlocked
Unlocked's Avatar
Okay. So I figured it out. I replaced that whole huge function with
public void dropBlockAsItemWithChance(World p_149690_1_, int p_149690_2_, int p_149690_3_, int p_149690_4_, int p_149690_5_, float p_149690_6_, int p_149690_7_)
{
if (p_149690_5_ >= 7) {
this.dropBlockAsItem(p_149690_1_, p_149690_2_, p_149690_3_, p_149690_4_, new ItemStack(Blocks.stonebrick));
}

}

and added this:
public Item getItemDropped(int par1, Random par2, int par3){
return null;
}


In case anyone else is trying to do something like what I did and stumbles across this, the following is my code:

package com.unlocked.stone_bricks.blocks;

import java.util.Random;

import net.minecraft.block.Block;
import net.minecraft.block.BlockBush;
import net.minecraft.block.IGrowable;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraft.util.MathHelper;
import net.minecraft.world.World;

public class StonebrickCrop extends BlockBush implements IGrowable
{
private IIcon[] field_149867_a;
private static final String __OBFID = "CL_00000222";

public StonebrickCrop()
{
this.setTickRandomly(true);
float var1 = 0.5F;
this.setBlockBounds(0.5F - var1, 0.0F, 0.5F - var1, 0.5F + var1, 0.25F, 0.5F + var1);
this.setCreativeTab((CreativeTabs)null);
this.setHardness(0.0F);
this.setStepSound(soundTypeStone);
this.disableStats();
this.setBlockName("stone_brick_crop");
}

public Item getItemDropped(int par1, Random par2, int par3){
return null;
}

protected boolean func_149854_a(Block p_149854_1_)
{
return p_149854_1_ == Blocks.farmland;
}

/**
* Ticks the block if it's been scheduled
*/
public void updateTick(World p_149674_1_, int p_149674_2_, int p_149674_3_, int p_149674_4_, Random p_149674_5_)
{
super.updateTick(p_149674_1_, p_149674_2_, p_149674_3_, p_149674_4_, p_149674_5_);

if (p_149674_1_.getBlockLightValue(p_149674_2_, p_149674_3_ + 1, p_149674_4_) >= 9)
{
int var6 = p_149674_1_.getBlockMetadata(p_149674_2_, p_149674_3_, p_149674_4_);

if (var6 < 7)
{
float var7 = this.func_149864_n(p_149674_1_, p_149674_2_, p_149674_3_, p_149674_4_);

if (p_149674_5_.nextInt((int)(25.0F / var7) + 1) == 0)
{
++var6;
p_149674_1_.setBlockMetadataWithNotify(p_149674_2_, p_149674_3_, p_149674_4_, var6, 2);
}
}
}
}

public void func_149863_m(World p_149863_1_, int p_149863_2_, int p_149863_3_, int p_149863_4_)
{
int var5 = p_149863_1_.getBlockMetadata(p_149863_2_, p_149863_3_, p_149863_4_) + MathHelper.getRandomIntegerInRange(p_149863_1_.rand, 2, 5);

if (var5 > 7)
{
var5 = 7;
}

p_149863_1_.setBlockMetadataWithNotify(p_149863_2_, p_149863_3_, p_149863_4_, var5, 2);
}

private float func_149864_n(World p_149864_1_, int p_149864_2_, int p_149864_3_, int p_149864_4_)
{
float var5 = 1.0F;
Block var6 = p_149864_1_.getBlock(p_149864_2_, p_149864_3_, p_149864_4_ - 1);
Block var7 = p_149864_1_.getBlock(p_149864_2_, p_149864_3_, p_149864_4_ + 1);
Block var8 = p_149864_1_.getBlock(p_149864_2_ - 1, p_149864_3_, p_149864_4_);
Block var9 = p_149864_1_.getBlock(p_149864_2_ + 1, p_149864_3_, p_149864_4_);
Block var10 = p_149864_1_.getBlock(p_149864_2_ - 1, p_149864_3_, p_149864_4_ - 1);
Block var11 = p_149864_1_.getBlock(p_149864_2_ + 1, p_149864_3_, p_149864_4_ - 1);
Block var12 = p_149864_1_.getBlock(p_149864_2_ + 1, p_149864_3_, p_149864_4_ + 1);
Block var13 = p_149864_1_.getBlock(p_149864_2_ - 1, p_149864_3_, p_149864_4_ + 1);
boolean var14 = var8 == this || var9 == this;
boolean var15 = var6 == this || var7 == this;
boolean var16 = var10 == this || var11 == this || var12 == this || var13 == this;

for (int var17 = p_149864_2_ - 1; var17 <= p_149864_2_ + 1; ++var17)
{
for (int var18 = p_149864_4_ - 1; var18 <= p_149864_4_ + 1; ++var18)
{
float var19 = 0.0F;

if (p_149864_1_.getBlock(var17, p_149864_3_ - 1, var18) == Blocks.farmland)
{
var19 = 1.0F;

if (p_149864_1_.getBlockMetadata(var17, p_149864_3_ - 1, var18) > 0)
{
var19 = 3.0F;
}
}

if (var17 != p_149864_2_ || var18 != p_149864_4_)
{
var19 /= 4.0F;
}

var5 += var19;
}
}

if (var16 || var14 && var15)
{
var5 /= 2.0F;
}

return var5;
}

/**
* Gets the block's texture. Args: side, meta
*/
public IIcon getIcon(int p_149691_1_, int p_149691_2_)
{
if (p_149691_2_ < 0 || p_149691_2_ > 7)
{
p_149691_2_ = 7;
}

return this.field_149867_a[p_149691_2_];
}

/**
* The type of render function that is called for this block
*/
public int getRenderType()
{
return 6;
}

protected Item func_149866_i()
{
return null;
}

protected Block func_149865_P()
{
return Blocks.stonebrick;
}

/**
* Drops the block items with a specified chance of dropping the specified items
*/

public void dropBlockAsItemWithChance(World p_149690_1_, int p_149690_2_, int p_149690_3_, int p_149690_4_, int p_149690_5_, float p_149690_6_, int p_149690_7_)
{
if (p_149690_5_ >= 7) {
this.dropBlockAsItem(p_149690_1_, p_149690_2_, p_149690_3_, p_149690_4_, new ItemStack(Blocks.stonebrick));
}

}


public Object getBlockDropped(int p_149650_1_, Random p_149650_2_, int p_149650_3_)
{
return null;
}

/**
* Returns the quantity of items to drop on block destruction.
*/
public int quantityDropped(Random p_149745_1_)
{
return 1;
}

/**
* Gets an item for the block being called on. Args: world, x, y, z
*/
public Item getItem(World p_149694_1_, int p_149694_2_, int p_149694_3_, int p_149694_4_)
{
return this.func_149866_i();
}

public void registerBlockIcons(IIconRegister p_149651_1_)
{
this.field_149867_a = new IIcon[8];

for (int var2 = 0; var2 < this.field_149867_a.length - 1; ++var2)
{
this.field_149867_a[var2] = p_149651_1_.registerIcon("stonebricks:stone_brick_crop_0");
}
this.field_149867_a[7] = p_149651_1_.registerIcon("stonebricks:stone_brick_crop_1");
}

public boolean func_149851_a(World p_149851_1_, int p_149851_2_, int p_149851_3_, int p_149851_4_, boolean p_149851_5_)
{
return p_149851_1_.getBlockMetadata(p_149851_2_, p_149851_3_, p_149851_4_) != 7;
}

public boolean func_149852_a(World p_149852_1_, Random p_149852_2_, int p_149852_3_, int p_149852_4_, int p_149852_5_)
{
return true;
}

public void func_149853_b(World p_149853_1_, Random p_149853_2_, int p_149853_3_, int p_149853_4_, int p_149853_5_)
{
this.func_149863_m(p_149853_1_, p_149853_3_, p_149853_4_, p_149853_5_);
}
}
1
08/30/2014 7:57 pm
Level 14 : Journeyman Modder
searchndstroy
searchndstroy's Avatar
Extremely sorry but I am having extremely difficult problems following the code.. I can't tell what you are doing with each variable and why.
1
08/30/2014 8:03 pm
Level 28 : Expert Dragon
Unlocked
Unlocked's Avatar
that is a modified version of the default wheat code.
1
08/30/2014 8:23 pm
Level 57 : Grandmaster Programmer
bmanrules
bmanrules's Avatar
You may be using a beta MCP that doesn't have the actual variable and method names correctly mapped yet, or just an oddly broken version

Anyway, where you've set the drop to "Blocks.stonebrick" is actually the drop for when you break the block by hand. You want to edit

this.dropBlockAsItem(p_149690_1_, p_149690_2_, p_149690_3_, p_149690_4_, new ItemStack(this.func_149866_i(), 1, 0));

Specifically the "new ItemStack()"
1
08/30/2014 8:30 pm
Level 28 : Expert Dragon
Unlocked
Unlocked's Avatar
I changed "new ItemStack(this.func_149866_i(), 1, 0)" to new ItemStack(Blocks.stonebrick) and it worked... sort of. Now it drops both the crop block and a stone brick.
Planet Minecraft

Website

© 2010 - 2024
www.planetminecraft.com

Welcome