Bonjour, je suis actuellement en train d'apprendre à modder sur minecraft (bukkit). J'ai appris le Java en mode rapidos (je suis dev C++ / C#.net). Je tente de créer un block personnalisé.
Evidemment j'y arrive pas, d'ou ce topic.
Voici les approches que j'ai tentée:
J'ai tenter d’implémenter MaterialData, dés que j'essaie d'utiliser la classe, en exécution, j'ai une erreur disant que c'est pas un MaterialData (l’héritage de Java est pourrit ou quoi? )
Donc, j'ai tentée avec une classe plus simple genre Dirt (qui hérite de MaterialData), même problème...
J'ai finit par remarquer que ItemStack à un constructeur protégée, donc j'ai tentée cette fois ci de l’implémenté, toujours des bugs en exécution mais sur le coup, la je sait pas pourquoi (les logs sont pas précis du tout...)
Donc je me pose la questions, qu'elle est la marche à suivre pour créer un bloc personnalisée avec un contrôle sur son environnement (les cubes contre celui-ci), et la façon dont le joueur peut le poser...
Merci de votre aide.
Edit: voici mon code
Code (cpp):
package fr.e101mk2.redext;
import org.bukkit.Material;
import org.bukkit.material.MaterialData;
public class RedCableBlock extends MaterialData{
public RedCableBlock() {
super(Material.REDSTONE);
}
}
Code (cpp):
ItemStack item2 = new ItemStack(Material.REDSTONE);
item2.setData( (MaterialData) new RedCableBlock());
ev.getPlayer().getInventory().addItem( item2);
ev.getPlayer().sendMessage("la methodes a finit");
et l'erreur c'est Caused by: java.lang.IllegalArgumentExecption: provuded data is not of org.bukkit.material.MaterialData, found fr.e101mk2.redect.RedCableBlock
Java est en train de me rendre maboule....