Résolu Problème de Code avec Register et getRegistery
-
Bonjour est ce que quelqu’un peu m’aider car je ne trouve pas d’ou vient le problème .
Voila mes codes :
Main :
package fr.dodo.csmm; import fr.dodo.csmm.events.RegisteringEvent; import fr.dodo.csmm.proxy.CommonProxy; import fr.dodo.csmm.utils.References; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.SidedProxy; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; @Mod(modid = References.MODID, name = References.NAME, version = References.VERSION) public class CSSMMMain { @Mod.Instance(References.MODID) public static CSSMMMain instance; @SidedProxy(clientSide = References.CP,serverSide = References.SP) public static CommonProxy proxy; public CSSMMMain(){ MinecraftForge.EVENT_BUS.register(new RegisteringEvent()); } @Mod.EventHandler public void preInit(FMLPreInitializationEvent e) { proxy.preInit(); } @Mod.EventHandler public void init(FMLInitializationEvent e) { proxy.init(); } @Mod.EventHandler public void postInit(FMLPostInitializationEvent e) { proxy.postInit(); } }
Le CSMMItem :
package fr.dodo.csmm.items; import fr.dodo.csmm.init.ModItems; import net.minecraft.item.Item; public class CSMMItem extends Item { public CSMMItem(String name) { setRegistryName(name).setUnlocalizedName(name); ModItems.INSTANCE.getItems().add(this); } }
Et le RegisteringEvents ou j’ai un problème avec le
Register
et legetRegistry
package fr.dodo.csmm.events; import fr.dodo.csmm.CSSMMMain; import fr.dodo.csmm.init.ModItems; import fr.dodo.csmm.proxy.CommonProxy; import net.minecraftforge.common.MinecraftForge; import net.minecraft.item.Item; import net.minecraftforge.event.RegistryEvent; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; public class RegisteringEvent { @SubscribeEvent public void registerItems(RegisteringEvent.Register<Item> e) { ModItems.INSTANCE.init(); e.getRegistry().registerAll(ModItems.INSTANCE.getItems().toArray(new Item[0])); } }
Après j’ai tous se qui est proxy mais ça ne vient pas de là.
Merci de me répondre au plus vite
Dodo
-
Bonsoir,
C’est mieux en étant dans la bonne section et avec la balise de version de Minecraft
Ton code ne fonctionne pas correctement car comme ta classe se nomme
RegisteringEvent
elle masque le nom de la classe importée. Choisis un nom différent. (Et letoArray
n’a rien à faire là). -
Je l’ai changer de nom, j’ai mit
RegisterEvents
au lieu deRegisteringEvent
et cela ne fonctionne toujours pas …Le Register est toujours en rouge sur IDEA
-
Salut, c’est RegistryEvent.Register<Item> et pas RegisteringEvent qui peut tout a fait etre le nom de ta classe si tu veux @Dodo_Report
-
A merci
-
@Flow-Arg a dit dans Problème de Code avec Register et getRegistery :
Salut, c’est RegistryEvent.Register<Item> et pas RegisteringEvent qui peut tout a fait etre le nom de ta classe si tu veux @Dodo_Report
Effectivement j’avais mal vu x)