Rendu d'item avec un model techne
-
-
Quand j’enregistre mon Item Dans le clientproxy, il m’affiche sa : “Cannot make a static reference to the non-static field assabody.jeje78660.ItemTutorial.itemID”
Mon code :
MinecraftForgeClient.registerItemRenderer(assabody.jeje78660.ItemTutorial.itemID, (IItemRenderer)new ItemTutorielTechneRender()); -
Envoie ta classe principale.
-
Assabody :
ItemTutorial = new ItemTutorial(12000).setUnlocalizedName("ItemTutorial").setTextureName("modtutoriel:ItemTutorial"); GameRegistry.registerItem(ItemTutorial, "ItemTutorial", "ModTutoriel");ItemTutorial:
package assabody.jeje78660; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; public class ItemTutorial extends Item { public ItemTutorial(int id) { super(id); this.setCreativeTab(CreativeTabs.tabMaterials); } }AssabodyClientProxy :
public class AssabodyClientProxy extends AssabodyCommonProxy{ @Override public void registerRender() { MinecraftForgeClient.registerItemRenderer(assabody.jeje78660.ItemTutorial.itemID, (IItemRenderer)new ItemTutorielTechneRender()); } } -
assabody.jeje78660.ItemTutorial.itemID? change par ClassePrincipal.ItemTutorial.itemID?
-
Voila merci sa marche super mais j’aimerais aussi utiliser cet item comme arme et j’ai vu le tuto sur le kit d’outil mais je n’arrive pas a utiliser ce render comme arme, serait-il possible d’ajouter ce chapitre au tuto ?
Merci -
Tu n’as rien a modifier au render, il faut juste modifier l’item.
-
Tu peut me dire quoi plz ?
-
extends ItemSword … et tu fais ton enumTool.
-
Il crash, il me met #“Attempted to load a proxy type assabody.jeje78660.proxy.AssabodyClientProxy into assabody.jeje78660.Assabody.Arme1Assabody, but the types don’t match”(“Attempted to load a proxy type assabody.jeje78660.proxy.AssabodyClientProxy into assabody.jeje78660.Assabody.Arme1Assabody, but the types don’t match”)
Mon code:ItemTutorial = new ItemTutorial(2000, Assabody.Arme1Assabody).setUnlocalizedName("ItemTutorial").setTextureName("assabody:cd1"); GameRegistry.registerItem(ItemTutorial, "ItemTutorial", "assabody");Mon EnumToolMaterial:
static EnumToolMaterial Arme1Assabody = EnumHelper.addToolMaterial("Arme1Assabody", 3, 2500, 8.0F, 3, 10); -
Vérifie la ligne "@SidedProxy(clientSide = " dans ta classe principale, si tu ne comprend pas je t’invite à relire le tutoriel sur les proxy.
-
Le proxy marchait vu que j’ai crée juste avant un item 3d…
-
Essaie de déclarer
static EnumToolMaterial Arme1Assabody = EnumHelper.addToolMaterial("Arme1Assabody", 3, 2500, 8.0F, 3, 10); ``` en "public" donc: ```java public static EnumToolMaterial Arme1Assabody = EnumHelper.addToolMaterial("Arme1Assabody", 3, 2500, 8.0F, 3, 10); -
J’ai oublié de dire que sa me fait une erreur à la déclaration de l’arme :
“new ItemTutorial(2000, Assabody.Arme1Assabody)”
Tout sa souligné de rouge
Et sa me met toujours la même erreur -
Je peux voir la classe?
-
Ma classe principale :
package assabody.jeje78660; import net.minecraftforge.common.EnumHelper; import net.minecraft.item.EnumToolMaterial; import net.minecraft.item.Item; import assabody.jeje78660.proxy.AssabodyCommonProxy; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.Mod.Instance; import cpw.mods.fml.common.SidedProxy; import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.event.FMLPostInitializationEvent; import cpw.mods.fml.common.event.FMLPreInitializationEvent; import cpw.mods.fml.common.network.NetworkMod; import cpw.mods.fml.common.registry.GameRegistry; @Mod(modid = "assabody", name="assabody", version="1.0") @NetworkMod(clientSideRequired = true, serverSideRequired = false) public class Assabody { // this.func_110628_a => Minecraft.getMinecraft().renderEngine.bindTexture // .func_111206_d("modid:textureditem") -> .setTextureName("modid:textureditem") // .func_111022_d("modid:texturedebloc") -> .setTextureName("modid:texturedebloc") // mc.func_110434_K().func_110577_a(resourcelocation) -> mc.getTextureManager().bindTexture(resourcelocation) @SidedProxy(clientSide = "assabody.jeje78660.proxy.AssabodyClientProxy", serverSide = "assabody.jeje78660.proxy.AssabodyCommonProxy") public static EnumToolMaterial Arme1Assabody = EnumHelper.addToolMaterial("Arme1Assabody", 3, 2500, 8.0F, 3, 10); public static AssabodyCommonProxy proxy; @Instance("assabody") public static Assabody instance; public static Item ItemTutorial; @EventHandler public void PreInit(FMLPreInitializationEvent event) { //Block, Items, Achievements, Configurations // ID de l'Item + 256 ItemTutorial = new ItemTutorial(2000, Assabody.Arme1Assabody).setUnlocalizedName("ItemTutorial").setTextureName("assabody:cd1"); GameRegistry.registerItem(ItemTutorial, "ItemTutorial", "assabody"); } @EventHandler public void Init(FMLInitializationEvent event) { //Mobs, Render, NetWork, Recipe proxy.registerRender(); } @EventHandler public void PostInit(FMLPostInitializationEvent event) { //Recettes, Cuisson, Languages } }ItemTutorial:
package assabody.jeje78660; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraft.item.ItemSword; public class ItemTutorial extends ItemSword { public ItemTutorial(int id) { super(id, Assabody.Arme1Assabody); this.setCreativeTab(CreativeTabs.tabMaterials); } }AssabodyClientProxy:
package assabody.jeje78660.proxy; import cpw.mods.fml.common.registry.GameRegistry; import assabody.jeje78660.Assabody; import assabody.jeje78660.ItemTutorielTechneRender; import net.minecraftforge.client.IItemRenderer; import net.minecraftforge.client.MinecraftForgeClient; public class AssabodyClientProxy extends AssabodyCommonProxy{ @Override public void registerRender() { MinecraftForgeClient.registerItemRenderer(Assabody.ItemTutorial.itemID, (IItemRenderer)new ItemTutorielTechneRender()); GameRegistry.registerItem(Assabody.ItemTutorial, "ItemTutorial", "assabody"); } } -
Dans ta classe principale tu peut enlever le “Assabody.” dans la déclaration de l’item pour l’EnumToolMaterial
Dans la classe de ton item:
Change ça:package assabody.jeje78660; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraft.item.ItemSword; public class ItemTutorial extends ItemSword { public ItemTutorial(int id) { super(id, Assabody.Arme1Assabody); this.setCreativeTab(CreativeTabs.tabMaterials); } }En ça:
package assabody.jeje78660; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraft.item.ItemSword; public class ItemTutorial extends ItemSword { public ItemTutorial(int id, EnumToolMaterial toolMaterial) { super(id, toolMaterial); this.setCreativeTab(CreativeTabs.tabMaterials); } }Dans le clientproxy:
L’enregistrement de l’item ce fait dans la classe principale donc tu déplace ça:GameRegistry.registerItem(Assabody.ItemTutorial, "ItemTutorial", "assabody"); ``` dans ta classe principale -
Cette fois si, plus d’erreur sur Eclipse mais Minecraft crash toujours
-
Log?
-
–-- Minecraft Crash Report ---- // Why is it breaking :( Time: 23/11/13 16:53 Description: There was a severe problem during mod loading that has caused the game to fail cpw.mods.fml.common.LoaderException: cpw.mods.fml.common.LoaderException at cpw.mods.fml.common.ProxyInjector.inject(ProxyInjector.java:75) at cpw.mods.fml.common.FMLModContainer.constructMod(FMLModContainer.java:524) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) at com.google.common.eventbus.EventBus.post(EventBus.java:267) at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:194) at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:174) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) at com.google.common.eventbus.EventBus.post(EventBus.java:267) at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:105) at cpw.mods.fml.common.Loader.loadMods(Loader.java:509) at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:183) at net.minecraft.client.Minecraft.startGame(Minecraft.java:472) at net.minecraft.client.Minecraft.run(Minecraft.java:807) at net.minecraft.client.main.Main.main(Main.java:93) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at net.minecraft.launchwrapper.Launch.launch(Launch.java:131) at net.minecraft.launchwrapper.Launch.main(Launch.java:27) Caused by: cpw.mods.fml.common.LoaderException at cpw.mods.fml.common.ProxyInjector.inject(ProxyInjector.java:68) ... 33 more A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- System Details -- Details: Minecraft Version: 1.6.4 Operating System: Windows 8 (amd64) version 6.2 Java Version: 1.7.0_45, Oracle Corporation Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation Memory: 773810656 bytes (737 MB) / 1037959168 bytes (989 MB) up to 1037959168 bytes (989 MB) JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used Suspicious classes: FML and Forge are installed IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0 FML: MCP v8.11 FML v6.4.20.916 Minecraft Forge 9.11.1.916 4 mods loaded, 4 mods active mcp{8.09} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed FML{6.4.20.916} [Forge Mod Loader] (bin) Unloaded->Constructed Forge{9.11.1.916} [Minecraft Forge] (bin) Unloaded->Constructed assabody{1.0} [assabody] (bin) Unloaded->Errored

