Box Key
-
Tu fais un tableau qui contient les différents items et quand on click sur le block, tu choisis un item au hasard avec un random.
Exemple, dans onBlockActivated :Random rand = new Random(); Item tonItem = tonTableau[rand.nextInt(tonTableau.lenght)];Et pour vérifier l’item du joueur :
if(player.getHeldItem() != null && player.getHeldItem().getItem() == itemATester -
Excusez-moi je m’était mal exprimé ce que je voulais faire c’était une sorte de boite que quand tu fait clique droit avec une clé sa te fait un item aléatoire mais que c’est item soient défini donc bien un random
-
C’est exactement ce qu’il t’as fait ^^
-
Ha OK xD
-
Je ne comprend pas comment faire j’ai chercher et je n’arrive toujours pas
(Et dsl du double poste) et comment faire pour définir les items (faire le tableau)
-
Attention au double post. Explique ce que tu ne comprends pas

-
Je ne comprend pas comment faire j’ai chercher et je n’arrive toujours pas
(Et dsl du double poste) et comment faire pour définir les items (faire le tableau)
-
public class TonBloc extends Block{ private ItemStack[] prices = new ItemStack[]{new ItemStack(Items.apple), new ItemStack(Items.stick)}; public TonBloc() { super(Material.rock); } @Override public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumFacing side, float hitX, float hitY, float hitZ) { if(player.getHeldItem() != null && player.getHeldItem().getItem() == TaClé) { Random rand = new Random(); ItemStack price = prices[rand.nextInt(prices.length)]; player.inventory.addItemStackToInventory(price); } } } -
Le BlockPos et le IBlockState est en 1.8
-
En même temps si tu ne mets pas la balise de version dans le titre comment veux-tu qu’on sache en quelle version tu codes ? On est sensé le deviner ?
-
Ha oui excusez moi c’est en 17.10 ^^
-
Bah après c’est pas compliqué tu fait un CTRL + CLIC sur Block, ça t’ouvre la classe Block et tu cherche la fonction onBlockActivated, tu copy la fonction avec ces arguments et tu met le code que je t’ai donné à l’intérieur
-
public boolean onBlockActivated(World p_149727_1_, int p_149727_2_, int p_149727_3_, int p_149727_4_, EntityPlayer p_149727_5_, int p_149727_6_, float p_149727_7_, float p_149727_8_, float p_149727_9_)
{
if(p_149727_5_.getHeldItem() != null && p_149727_5_.getHeldItem().getItem() == enderdeath.Rubis) {
Random rand = new Random();
ItemStack price = prices[rand.nextInt(prices.length)];
p_149727_5_.inventory.addItemStackToInventory(price);
}
return false;
}j’ai mi sa il me fait une erreur à price ^^
-
Quoi comme erreur ? T’a bien importé ItemStack ?
Et je te conseille de mettre return true -
oui je l’ai bien import et sa fait une error a price il veut une constant
-
Met ta classe entière et renomme-moi ces arguments je t’en prie
EDIT : utilise le ALT + MAJ + R pour renommer tes arguments
EDIT 2 : Et mes des balises [java] -
Peut-être car il te manque cette ligne ?
private ItemStack[] prices = new ItemStack[]{new ItemStack(Items.apple), new ItemStack(Items.stick)}; -
sa fait plus l’érreur merci x)
-
Résolu?
-
Ok sa marche merci mais comment on pourrait faire que sa drop des objet enchant?
