Résolu impossible d'afficher un item
-
bonsoir sur mon mod j’essai d’afficher un item mais il ne veut même pas se mètre sans texture je ne comprend pas pourquoi, il y tout le mod ici :
https://github.com/Gugus02/mod-test-1.12.2
pour information j’utilise eclipse, mon java et le 1.8…0_221 et le mdk et le 14.23.5.2859 -
Bonsoir,
De ce que je vois, tu enregistres tes items ici : https://github.com/Gugus02/mod-test-1.12.2/blob/main/src/main/java/fr/gugus/tuto/util/handlers/RegistryHandler.java#L17
Or sauf erreur de ma part, ta liste ItemInit.ITEMS est vide, tu n’y mets jamais ton item dedans. Donc forcément il n’est pas enregistré. -
@robin4002
bas dans mon ItemInit j’ai mon item qui est dedanspackage fr.gugus.tuto.init; import java.util.ArrayList; import java.util.List; import fr.gugus.tuto.objet.item.ItemBase; import net.minecraft.item.Item; public class ItemInit { public static List<Item> ITEMS = new ArrayList<Item>(); //materiaux public static final Item TUTO_INGOT = new ItemBase("tuto_ingot"); }
donc pour moi l’item est bien mi dans la liste qui est mis dans la variable, mais je ne suis pas sur.
-
Non, actuellement il n’y a aucun lien entre ta variable
ITEMS
et leTUTO_INGOT
que tu déclares en dessous.Il faut utiliser la fonction add de l’ArrayList pour y mettre l’élément.
Et il faut que le code soit appelé.Mais je ne comprends pas trop l’intérêt de passer par cette liste intermédiaire, le plus simple serait de mettre directement les éléments à enregistrer dans l’event RegistryEvent.Register<Item>
-
@robin4002
j’ai régler le problème de l’item@SubscribeEvent public static void onItemRegister(RegistryEvent.Register<Item> event) { event.getRegistry().registerAll(ItemInit.ITEMS.toArray(new Item[0])); } @SubscribeEvent public static void onModelRegister(ModelRegistryEvent event) { for(Item item : ItemInit.ITEMS) { if(item instanceof IHasModel) { ((IHasModel)item).registerModels(); } } }
comme sa il fonctionne bien
-