Drop quand bloc cassé
-
Ouai, item…
donc .itemID a la place de idDropped
-
cela ne fait rien:
public class coppermineralitem extends Item{ public static int idDropped; public static int itemID; public coppermineralitem(int id){ super(id); this.setCreativeTab(CreativeTabs.tabMaterials); setMaxStackSize(64); } } -
Ta class coppermineralitem devrais ressemblé à ça:
public class coppermineralitem extends Item{ public coppermineralitem(int id){ super(id); this.setCreativeTab(CreativeTabs.tabMaterials); setMaxStackSize(64); } public int idDropped(int par1, Random par2Random, int par3) { return this.itemID; } public int quantityDropped(Random par1Random) { return 1; } } -
heu ca ne marche pas
-
…
Un item ne drop rien, il ne peut pas être miné.
Ces méthodes sont a mettre dans la classe du bloc. -
blocks:
package Mineralherb.Blocks; import java.util.Random; import Mineralherb.ClientProxy; import Mineralherb.Items.coppermineralitem; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.Block; import net.minecraft.block.BlockContainer; import net.minecraft.block.material.Material; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; public class coppermineral extends BlockContainer { public coppermineral(int id) { super(id, Material.rock); this.setCreativeTab(CreativeTabs.tabBlock); } public TileEntity createTileEntity(World world, int metadata) { return new TileEntityCopper(); } public boolean hasTileEntity(int metadata) { return true; } public boolean renderAsNormalBlock() { return false; } public boolean isOpaqueCube() { return false; } public int idDropped(int par1, Random par2Random, int par3) { return coppermineralitem.idDropped; } public int quantityDropped(Random par1Random) { return 2; } @SideOnly(Side.CLIENT) public int getRenderType() { return ClientProxy.renderInventoryTESRId; } @Override public TileEntity createNewTileEntity(World world) { // TODO Auto-generated method stub return new TileEntityCopper(); } }item:
package Mineralherb.Items; import java.util.Random; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; public class coppermineralitem extends Item{ public static int idDropped; public static int itemID; public coppermineralitem(int id){ super(id); this.setCreativeTab(CreativeTabs.tabMaterials); setMaxStackSize(64); } }voila mes deux classes, qu’est ce qui cloche?
-
public int idDropped(int metadata, Random rand, int fortune) { return TaClassePrincipale.coppermineralitem.itemID; } -
TaClassePrincipale: Mineralherbmain ?
-
Non, tu remplace par le nom de la classe principale.tu mets le nom de l’objet de l’item qui doit être dropé.itemID
C’est pas compliqué. -
EDIT: résolue: une génération random et voila:
int randomloot;
int lower = 1;
int higher = 6;int random = (int)(Math.random() * (higher-lower)) + lower;
return this.blockID == MineralherbMain.coppermineralitem.itemID ? 6 + par1Random.nextInt(2) : random;

