Créer un bloc basique
-
Mon block apparait bien avec sa texture quand je le pose mais en main il est non-texturé

Des idées de pourquoi ?
-
Tu as probablement oublié d’appeler le model json de ton block.
-
Euuh j’ai pourtant tout bien mis regarde
ClientProxy
package mod.client; import mod.DinoCraft; import mod.client.model.ModelBrachiosaurus; import mod.client.model.ModelCoelophysis; import mod.client.model.ModelFrog; import mod.client.model.ModelTriceratops; import mod.client.model.ModelVelociraptors; import mod.client.render.RenderBrachiosaurus; import mod.client.render.RenderCoelophysis; import mod.client.render.RenderFlechette; import mod.client.render.RenderFrog; import mod.client.render.RenderTriceratops; import mod.client.render.RenderVelociraptors; import mod.common.CommonProxy; import mod.common.block.BlockRegister; import mod.common.block.entity.TileEntityBarriere; import mod.common.block.entity.TileEntityBarriereSpecialRenderer; import mod.common.block.entity.TileEntityCombiner; import mod.common.block.entity.TileEntityCombinerSpecialRenderer; import mod.common.block.entity.TileEntityCouveuse; import mod.common.block.entity.TileEntityCouveuseSpecialRenderer; import mod.common.block.entity.TileEntityEgg; import mod.common.block.entity.TileEntityEggSpecialRenderer; import mod.common.block.entity.TileEntityExtractor; import mod.common.block.entity.TileEntityExtractorSpecialRenderer; import mod.common.entity.EntityBrachiosaurus; import mod.common.entity.EntityCoelophysis; import mod.common.entity.EntityFlechette; import mod.common.entity.EntityFrog; import mod.common.entity.EntityTriceratops; import mod.common.entity.EntityVelociraptors; import mod.common.item.ItemRegister; import net.minecraft.block.Block; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.BlockModelRenderer; import net.minecraft.client.renderer.ItemModelMesher; import net.minecraft.client.resources.model.ModelResourceLocation; import net.minecraft.item.Item; import net.minecraftforge.fml.client.registry.ClientRegistry; import net.minecraftforge.fml.client.registry.RenderingRegistry; public class ClientProxy extends CommonProxy { public static int tesrRenderId; @Override public void register() { ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher(); System.out.println("Rendering Entity/TileEntity"); RenderingRegistry.registerEntityRenderingHandler(EntityFlechette.class, new RenderFlechette(Minecraft.getMinecraft().getRenderManager())); RenderingRegistry.registerEntityRenderingHandler(EntityFrog.class, new RenderFrog(Minecraft.getMinecraft().getRenderManager(),new ModelFrog(), 0.5F)); RenderingRegistry.registerEntityRenderingHandler(EntityBrachiosaurus.class, new RenderBrachiosaurus(Minecraft.getMinecraft().getRenderManager(), new ModelBrachiosaurus(), 3.5F)); RenderingRegistry.registerEntityRenderingHandler(EntityCoelophysis.class, new RenderCoelophysis(Minecraft.getMinecraft().getRenderManager(), new ModelCoelophysis(), 0.5F)); RenderingRegistry.registerEntityRenderingHandler(EntityTriceratops.class, new RenderTriceratops(Minecraft.getMinecraft().getRenderManager(),new ModelTriceratops(), 3.5F)); RenderingRegistry.registerEntityRenderingHandler(EntityVelociraptors.class, new RenderVelociraptors(Minecraft.getMinecraft().getRenderManager(),new ModelVelociraptors(), 3.5F)); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityBarriere.class, new TileEntityBarriereSpecialRenderer()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityEgg.class, new TileEntityEggSpecialRenderer()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityCouveuse.class, new TileEntityCouveuseSpecialRenderer()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityExtractor.class, new TileEntityExtractorSpecialRenderer()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityCombiner.class, new TileEntityCombinerSpecialRenderer()); /* tesrRenderId = RenderingRegistry.getNextAvailableRenderId(); RenderingRegistry.registerBlockHandler(new TESRInventoryRenderer()); */ System.out.println("Rendering Items"); mesher.register(ItemRegister.itemADNofFrog, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_ADNofFrog", "inventory")); mesher.register(ItemRegister.itemADNofmosquito, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_ADNofmosquito", "inventory")); mesher.register(ItemRegister.itemADNofvelociraptors, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_ADNofvelociraptors", "inventory")); mesher.register(ItemRegister.itemAmbre, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_Ambre", "inventory")); mesher.register(ItemRegister.itemAmbrewithmosquito, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_Ambrewithmmosquito", "inventory")); mesher.register(ItemRegister.itemBloodofmosquito, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_Bloodofmosquito", "inventory")); mesher.register(ItemRegister.itemBlowGun, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_Blowgun", "inventory")); mesher.register(ItemRegister.itemCPU, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_CPU", "inventory")); mesher.register(ItemRegister.itemDart, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_Dart", "inventory")); mesher.register(ItemRegister.itemDartEmpty, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_DartEmpty", "inventory")); mesher.register(ItemRegister.itemEnhancer, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_Enhancer", "inventory")); mesher.register(ItemRegister.itemFrogLegs, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_FrogLegs", "inventory")); mesher.register(ItemRegister.itemFrogLegsCooked, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_FrogLegsCooked", "inventory")); mesher.register(ItemRegister.itemSap, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_Sap", "inventory")); mesher.register(ItemRegister.itemSapwithmosquito, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_Sapwithmosquito", "inventory")); mesher.register(ItemRegister.itemSuperAxe, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_SuperAxe", "inventory")); mesher.register(ItemRegister.itemSyringe, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_Syringe", "inventory")); mesher.register(ItemRegister.itemSyringewithblood, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_SyringeWithBlood", "inventory")); mesher.register(ItemRegister.itemSyringewithraptorblood, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_SyringeWithRaptorBlood", "inventory")); mesher.register(ItemRegister.itemZoom, 0, new ModelResourceLocation(DinoCraft.MODID + ":item_Zoom", "inventory")); System.out.println("Rendering Blocks"); } @Override public void registerBlockTexture(Block block, int metadata, String name) { registerItemTexture(Item.getItemFromBlock(block), metadata, name); } @Override public void registerBlockTexture(Block block, String name) { registerBlockTexture(block, 0, name); } }ClassePrincipale
package mod; import java.util.HashMap; import mod.client.TickClient.TickClientHandlerEvent; import mod.common.CommonProxy; import mod.common.block.BlockRegister; import mod.common.block.entity.RegisterTileEntity; import mod.common.block.gui.GuiHandler; import mod.common.block.recipe.RecipeRegisterBlock; import mod.common.entity.EntityRegister; import mod.common.item.ItemRegister; import mod.common.item.recipe.RecipeRegister; import mod.common.world.biome.BiomeRegister; import mod.common.world.structure.DimensionRegister; import net.minecraft.block.Block; import net.minecraft.entity.EntityList; import net.minecraft.item.Item; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.fml.common.FMLCommonHandler; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.Mod.EventHandler; import net.minecraftforge.fml.common.Mod.Instance; import net.minecraftforge.fml.common.ObfuscationReflectionHelper; 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; import net.minecraftforge.fml.common.network.NetworkRegistry; @Mod(modid = DinoCraft.MODID, name = DinoCraft.Name, version = DinoCraft.Version) public class DinoCraft { public static HashMap <class, integer="">maptoid; public static final String MODID = "dinocraft"; public static final String Name = "DinoCraft"; public static final String Version = "1.0"; @Instance("dinocraft") public static DinoCraft instance; @SidedProxy(clientSide = "mod.client.ClientProxy", serverSide = "mod.common.CommonProxy") public static CommonProxy proxy; @EventHandler public void preInit(FMLPreInitializationEvent event) { BlockRegister.register(); ItemRegister.register(); if(event.getSide().isClient()) { FMLCommonHandler.instance().bus().register(new TickClientHandlerEvent()); MinecraftForge.EVENT_BUS.register(new TickClientHandlerEvent()); } } @EventHandler public void init(FMLInitializationEvent event) { RegisterTileEntity.register(); RecipeRegister.register(); RecipeRegisterBlock.register(); BiomeRegister.register(); EntityRegister.register(); proxy.register(); proxy.registerBlockTexture(BlockRegister.BlockAmbre, "block_ambre"); NetworkRegistry.INSTANCE.registerGuiHandler(instance, new GuiHandler()); } @EventHandler public void postInit(FMLPostInitializationEvent event) { /*DimensionRegister.register();*/ maptoid = ObfuscationReflectionHelper.getPrivateValue(EntityList.class, null, "classToIDMapping", "field_75624_e"); } }BlockRegister
package mod.common.block; import mod.DinoCraft; import mod.common.block.entity.TileEntityAnalyzer; import mod.common.block.entity.TileEntityBarriere; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.world.biome.BiomeGenBase; import net.minecraftforge.fml.common.registry.GameRegistry; public class BlockRegister { public static Block BlockBarriere; public static Block BlockTronc; public static Block BlockFeuille; public static Block BlockPousse; public static Block BlockAnalyzer; public static Block BlockAmbre; public static Block BlockEgg; public static Block BlockEggIndominus; public static Block BlockFossiliser; public static Block BlockCouveuse; public static Block BlockExtractor; public static Block BlockCombiner; public static Block BlockPortail; public static void register() { BlockBarriere = new BlockBarriere(Material.rock).setCreativeTab(CreativeTabs.tabBlock); BlockTronc = new BlockTronc().setCreativeTab(CreativeTabs.tabBlock).setHardness(2.0F); BlockFeuille = new BlockFeuille(Material.leaves).setCreativeTab(CreativeTabs.tabBlock).setHardness(0.1F); BlockPousse = new BlockPousse().setHardness(0.5F); BlockAnalyzer = new BlockAnalyzer().setCreativeTab(CreativeTabs.tabBlock); BlockAmbre = new BlockAmbre(Material.rock); BlockEgg = new BlockEgg(); BlockEggIndominus = new BlockEggIndominus(Material.dragonEgg); BlockFossiliser = new BlockFossiliser(Material.rock); BlockCouveuse = new BlockBroody(Material.rock).setCreativeTab(CreativeTabs.tabBlock).setLightLevel(1.0F); BlockExtractor = new BlockExtractor(Material.rock).setCreativeTab(CreativeTabs.tabBlock); BlockCombiner = new BlockCombiner(Material.rock).setCreativeTab(CreativeTabs.tabBlock); BlockPortail = new BlockPortail(Material.portal); GameRegistry.registerBlock(BlockAnalyzer,"block_analyzer"); GameRegistry.registerBlock(BlockBarriere, "block_barriere"); GameRegistry.registerBlock(BlockTronc, "block_tronc"); GameRegistry.registerBlock(BlockFeuille, "block_feuille"); GameRegistry.registerBlock(BlockPousse, "block_pousse"); GameRegistry.registerBlock(BlockAmbre, "block_ambre"); GameRegistry.registerBlock(BlockEgg, ItemBlockEgg.class, "block_egg"); GameRegistry.registerBlock(BlockEggIndominus, "block_eggindominus"); GameRegistry.registerBlock(BlockFossiliser, "block_fossiliser"); GameRegistry.registerBlock(BlockCouveuse, "block_couveuse"); GameRegistry.registerBlock(BlockExtractor, "block_extractor"); GameRegistry.registerBlock(BlockCombiner, "block_combiner"); GameRegistry.registerBlock(BlockPortail, "block_portail"); } } ```</class,> -
Il manque le register mesher pour ton bloc.
-
Des fois je me demande comment je peut être aussi con T_T Merci robin ^^
-
Moi c’est le contraire, la texture en main s’affiche mais pas quand je pose le bloc (il est invisible)
Classe principale :
@Mod(modid = "testmod", name = "Mod de test", version = "1.0.0") public class TestMod { @Instance("testmod") public static TestMod instance; public static final String MODID = "testmod"; @SidedProxy(clientSide = "in.olympe.javaware.testmod.proxy.ClientProxy", serverSide = "in.olympe.javaware.testmod.proxy.CommonProxy") public static CommonProxy proxy; public static Block machineTuto; @EventHandler public void preInit(FMLPreInitializationEvent event) { machineTuto = new BlockMachineTuto(); } @EventHandler public void init(FMLInitializationEvent event) { GameRegistry.registerBlock(machineTuto, "machinetuto"); GameRegistry.registerTileEntity(TileEntityMachineTuto.class, "tileentitymachinetuto"); proxy.registerRender(); proxy.registerBlockTexture(machineTuto, "machinetuto"); if(event.getSide().isClient()) { MinecraftForge.EVENT_BUS.register(new EventClientListener()); } FMLCommonHandler.instance().bus().register(new EventListener()); MinecraftForge.EVENT_BUS.register(new EventListener()); NetworkRegistry.INSTANCE.registerGuiHandler(instance, new GuiHandlerTestMod()); } @EventHandler public void postInit(FMLPostInitializationEvent event) { } }Client Proxy :
public class ClientProxy extends CommonProxy { @Override public void registerRender() { } @Override public void registerItemTexture(Item item, int metadata, String name) { ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher(); mesher.register(item, metadata, new ModelResourceLocation(TestMod.MODID + ":" + name, "inventory")); } @Override public void registerItemTexture(Item item, String name) { registerItemTexture(item, 0, name); } @Override public void registerBlockTexture(Block block, int metadata, String name) { registerItemTexture(Item.getItemFromBlock(block), metadata, name); } @Override public void registerBlockTexture(Block block, String name) { registerBlockTexture(block, 0, name); } }Le json du blockstate :
{ "variants": { "normal": { "model": "testmod:machinetuto" } } }Le json du model :
{ "parent": "block/cube_all", "textures": { "all": "testmod:blocks/machinetuto" } }Le json de l’item :
{ "parent": "testmod:block/machinetuto", "display": { "thirdperson": { "rotation": [ 10, -45, 170 ], "translation": [ 0, 1.5, -2.75 ], "scale": [ 0.375, 0.375, 0.375 ] } } } -
Logs ?
-
[17:49:22] [main/INFO] [GradleStart]: Extra: [] [17:49:22] [main/INFO] [GradleStart]: Running with arguments: [–userProperties, {}, --assetsDir, C:/Users/Utilisateur/.gradle/caches/minecraft/assets, --assetIndex, 1.8, --accessToken, {REDACTED}, --version, 1.8, --tweakClass, net.minecraftforge.fml.common.launcher.FMLTweaker, --tweakClass, net.minecraftforge.gradle.tweakers.CoremodTweaker] [17:49:22] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.FMLTweaker [17:49:22] [main/INFO] [LaunchWrapper]: Using primary tweak class name net.minecraftforge.fml.common.launcher.FMLTweaker [17:49:22] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.gradle.tweakers.CoremodTweaker [17:49:22] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLTweaker [17:49:22] [main/INFO] [FML]: Forge Mod Loader version 8.0.37.1334 for Minecraft 1.8 loading [17:49:22] [main/INFO] [FML]: Java is Java HotSpot(TM) 64-Bit Server VM, version 1.8.0_65, running on Windows 10:amd64:10.0, installed at C:\Program Files\Java\jre1.8.0_65 [17:49:22] [main/INFO] [FML]: Managed to load a deobfuscated Minecraft name- we are in a deobfuscated environment. Skipping runtime deobfuscation [17:49:22] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.gradle.tweakers.CoremodTweaker [17:49:22] [main/INFO] [GradleStart]: Injecting location in coremod net.minecraftforge.fml.relauncher.FMLCorePlugin [17:49:22] [main/INFO] [GradleStart]: Injecting location in coremod net.minecraftforge.classloading.FMLForgePlugin [17:49:22] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.FMLInjectionAndSortingTweaker [17:49:22] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.FMLDeobfTweaker [17:49:22] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.gradle.tweakers.AccessTransformerTweaker [17:49:22] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLInjectionAndSortingTweaker [17:49:22] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLInjectionAndSortingTweaker [17:49:22] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.relauncher.CoreModManager$FMLPluginWrapper [17:49:23] [main/ERROR] [FML]: The binary patch set is missing. Either you are in a development environment, or things are not going to work! [17:49:26] [main/ERROR] [FML]: FML appears to be missing any signature data. This is not a good thing [17:49:26] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.relauncher.CoreModManager$FMLPluginWrapper [17:49:26] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLDeobfTweaker [17:49:26] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.gradle.tweakers.AccessTransformerTweaker [17:49:26] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.TerminalTweaker [17:49:26] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.TerminalTweaker [17:49:26] [main/INFO] [LaunchWrapper]: Launching wrapped minecraft {net.minecraft.client.main.Main} [17:49:27] [Client thread/INFO]: Setting user: Player984 [17:49:32] [Client thread/INFO]: LWJGL Version: 2.9.1 [17:49:32] [Client thread/INFO] [MinecraftForge]: Attempting early MinecraftForge initialization [17:49:32] [Client thread/INFO] [FML]: MinecraftForge v11.14.1.1334 Initialized [17:49:33] [Client thread/INFO] [FML]: Replaced 204 ore recipies [17:49:33] [Client thread/INFO] [MinecraftForge]: Completed early MinecraftForge initialization [17:49:33] [Client thread/INFO] [FML]: Searching C:\Users\Utilisateur\Desktop\Minecraft modding\Forge\forge-1.8-11.14.1.1334\mods for mods [17:49:35] [Client thread/INFO] [FML]: Forge Mod Loader has identified 4 mods to load [17:49:35] [Client thread/INFO] [FML]: Attempting connection with missing mods [mcp, FML, Forge, testmod] at CLIENT [17:49:35] [Client thread/INFO] [FML]: Attempting connection with missing mods [mcp, FML, Forge, testmod] at SERVER [17:49:36] [Client thread/INFO]: Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:Mod de test [17:49:36] [Client thread/INFO] [FML]: Processing ObjectHolder annotations [17:49:36] [Client thread/INFO] [FML]: Found 384 ObjectHolder annotations [17:49:36] [Client thread/INFO] [FML]: Configured a dormant chunk cache size of 0 [17:49:36] [Client thread/INFO] [FML]: Applying holder lookups [17:49:36] [Client thread/INFO] [FML]: Holder lookups applied [17:49:37] [Sound Library Loader/INFO]: Starting up SoundSystem… [17:49:37] [Thread-7/INFO]: Initializing LWJGL OpenAL [17:49:37] [Thread-7/INFO]: (The LWJGL binding of OpenAL. For more information, see http://www.lwjgl.org) [17:49:38] [Thread-7/INFO]: OpenAL initialized. [17:49:38] [Sound Library Loader/INFO]: Sound engine started [17:49:43] [Client thread/INFO]: Created: 512x512 textures-atlas [17:49:44] [Client thread/INFO] [FML]: Forge Mod Loader has successfully loaded 4 mods [17:49:44] [Client thread/INFO]: Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:Mod de test [17:49:45] [Client thread/INFO]: SoundSystem shutting down… [17:49:45] [Client thread/WARN]: Author: Paul Lamb, www.paulscode.com [17:49:45] [Sound Library Loader/INFO]: Starting up SoundSystem… [17:49:45] [Thread-9/INFO]: Initializing LWJGL OpenAL [17:49:45] [Thread-9/INFO]: (The LWJGL binding of OpenAL. For more information, see http://www.lwjgl.org) [17:49:45] [Thread-9/INFO]: OpenAL initialized. [17:49:45] [Sound Library Loader/INFO]: Sound engine started [17:49:49] [Client thread/INFO]: Created: 512x512 textures-atlas [17:49:59] [Server thread/INFO]: Starting integrated minecraft server version 1.8 [17:49:59] [Server thread/INFO]: Generating keypair [17:49:59] [Server thread/INFO] [FML]: Injecting existing block and item data into this server instance [17:49:59] [Server thread/INFO] [FML]: Applying holder lookups [17:49:59] [Server thread/INFO] [FML]: Holder lookups applied [17:49:59] [Server thread/INFO] [FML]: Loading dimension 0 (New World) (net.minecraft.server.integrated.IntegratedServer@13fc6737) [17:49:59] [Server thread/INFO] [FML]: Loading dimension 1 (New World) (net.minecraft.server.integrated.IntegratedServer@13fc6737) [17:50:00] [Server thread/INFO] [FML]: Loading dimension -1 (New World) (net.minecraft.server.integrated.IntegratedServer@13fc6737) [17:50:00] [Server thread/INFO]: Preparing start region for level 0 [17:50:01] [Server thread/INFO]: Preparing spawn area: 88% [17:50:01] [Server thread/INFO]: Changing view distance to 12, from 10 [17:50:02] [Netty Local Client IO #0/INFO] [FML]: Server protocol version 1 [17:50:02] [Netty Server IO #1/INFO] [FML]: Client protocol version 1 [17:50:02] [Netty Server IO #1/INFO] [FML]: Client attempting to join with 4 mods : FML@8.0.37.1334,testmod@1.0.0,Forge@11.14.1.1334,mcp@9.05 [17:50:02] [Netty Local Client IO #0/INFO] [FML]: [Netty Local Client IO #0] Client side modded connection established [17:50:03] [Server thread/INFO] [FML]: [Server thread] Server side modded connection established [17:50:03] [Server thread/INFO]: Player984[local:E:64f89e2b] logged in with entity id 76 at (-594.2845748776858, 4.0, 24.696510820793282) [17:50:03] [Server thread/INFO]: Player984 joined the game -
Étrange car il n’y a pas d’erreur dans les logs. Ton bloc est enregistré dans init ou dans preInit ?
-
preInit je l’instancie, puis je l’enregistre dans init, ma classe principale et plus haut (la première)
-
Enregistre le bloc dans preInit.
-
Ça ne marche toujours pas
-
Je ne sais pas d’où ça vient dans ce cas. Envoies-moi un zip de ton dossier src je vais regarder de mon côté.
-
-
Ta texture est semi-transparente c’est pour cela que tu n’as aucun rendu en jeu. Regardes le code du verre si tu veux garder cette transparence.
-
Ok, merci
-
salut moi j’ai pas les texture please help me
package fr.geekuko.killtheboss.common; import fr.geekuko.item.itemregister; import fr.geekuko.killtheboss.blocks.blockregister; import fr.geekuko.killtheboss.blocks.blocks; import fr.geekuko.proxy.CommonProxy; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.creativetab.CreativeTabs; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.Mod.EventHandler; import net.minecraftforge.fml.common.Mod.Instance; 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; import net.minecraftforge.fml.common.registry.GameRegistry; @Mod(modid = "killheboss", name = "killtheboss", version = "1.0.0") public class killtheboss { @Instance("killtheboss") public static killtheboss instance; public static final String MODID = "killtheboss"; @SidedProxy(clientSide = "fr.geekuko.proxy.ClientProxy", serverSide = "fr.geekuko.proxy.CommonProxy") public static CommonProxy proxy; @EventHandler public void preInit(FMLPreInitializationEvent event) { blockregister.register(); itemregister.register(); } @EventHandler public void init(FMLInitializationEvent event) { proxy.registerRender(); proxy.registerBlockTexture(blockregister.pierrecompresse, "pierrecompresse"); } @EventHandler public void postInit(FMLPostInitializationEvent event) { } }package fr.geekuko.proxy; import net.minecraft.block.Block; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.ItemModelMesher; import net.minecraft.client.renderer.block.model.ModelResourceLocation; import net.minecraft.item.Item; public class ClientProxy extends CommonProxy { @Override public void registerRender() { System.out.println("méthode côté client"); } @Override public void registerItemTexture(Item item, int metadata, String name) { ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher(); mesher.register(item, metadata, new ModelResourceLocation("killtheboss:" + name, "inventory")); } @Override public void registerItemTexture(Item item, String name) { registerItemTexture(item, 0, name); } @Override public void registerBlockTexture(Block block, int metadata, String name) { registerItemTexture(Item.getItemFromBlock(block), metadata, name); } @Override public void registerBlockTexture(Block block, String name) { registerBlockTexture(block, 0, name); } }package fr.geekuko.proxy; import net.minecraft.block.Block; import net.minecraft.item.Item; public class CommonProxy { public void registerItemTexture(Item item, int metadata, String name){} public void registerItemTexture(Item item, String name){} public void registerBlockTexture(Block block, int metadata, String name){} public void registerBlockTexture(Block block, String name){} public void registerRender() { System.out.println("méthode côté serveur"); } }package fr.geekuko.killtheboss.blocks; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.creativetab.CreativeTabs; import net.minecraftforge.fml.common.registry.GameRegistry; public class blockregister { public static Block pierrecompresse; public static void register() { pierrecompresse = new blocks(Material.rock).setUnlocalizedName("pierrecompresse").setResistance(1000.0F).setHardness(25.0F).setCreativeTab(CreativeTabs.tabBlock); GameRegistry.registerBlock(pierrecompresse, "pierrecompresse"); } }{ "variants": { "normal": { "model": "killtheboss:pierrecompresse" } } }{ "parent": "block/cube_all", "textures": { "all": "killtheboss:blocks/pierrecompresse" } }{ "parent": "killtheboss:block/pierrecompresse", "display": { "thirdperson": { "rotation": [ 10, -45, 170 ], "translation": [ 0, 1.5, -2.75 ], "scale": [ 0.375, 0.375, 0.375 ] } } } -
Salut,
Peux-tu envoyer les logs du jeu ? -
voila
[12:08:38] [Client thread/INFO]: Setting user: Player261 [12:08:42] [Client thread/INFO]: LWJGL Version: 2.9.4 [12:08:46] [Client thread/INFO]: Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:killtheboss [12:08:49] [Sound Library Loader/INFO]: Starting up SoundSystem… [12:08:50] [Thread-8/INFO]: Initializing LWJGL OpenAL [12:08:50] [Thread-8/INFO]: (The LWJGL binding of OpenAL. For more information, see http://www.lwjgl.org) [12:08:50] [Thread-8/INFO]: OpenAL initialized. [12:08:50] [Sound Library Loader/INFO]: Sound engine started [12:08:54] [Client thread/INFO]: Created: 16x16 textures-atlas [12:08:55] [Client thread/INFO]: Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:killtheboss [12:08:57] [Client thread/INFO]: SoundSystem shutting down… [12:08:58] [Client thread/WARN]: Author: Paul Lamb, www.paulscode.com [12:08:58] [Sound Library Loader/INFO]: Starting up SoundSystem… [12:08:58] [Thread-10/INFO]: Initializing LWJGL OpenAL [12:08:58] [Thread-10/INFO]: (The LWJGL binding of OpenAL. For more information, see http://www.lwjgl.org) [12:08:58] [Thread-10/INFO]: OpenAL initialized. [12:08:58] [Sound Library Loader/INFO]: Sound engine started [12:09:01] [Client thread/INFO]: Created: 1024x512 textures-atlas [12:09:03] [Realms Notification Availability checker #1/INFO]: Could not authorize you against Realms server: Invalid session id [12:09:16] [Server thread/INFO]: Starting integrated minecraft server version 1.9 [12:09:16] [Server thread/INFO]: Generating keypair [12:09:17] [Server thread/INFO]: Preparing start region for level 0 [12:09:18] [Server thread/INFO]: Preparing spawn area: 40% [12:09:19] [Server thread/INFO]: Changing view distance to 12, from 10 [12:09:19] [Server thread/INFO]: Player261[local:E:79c72009] logged in with entity id 280 at (130.442613564471, 66.0, 232.15103124565024) [12:09:19] [Server thread/INFO]: Player261 joined the game [12:09:20] [Server thread/INFO]: Saving and pausing game… [12:09:20] [Server thread/INFO]: Saving chunks for level 'Nouveau monde'/Overworld [12:09:20] [Server thread/INFO]: Saving chunks for level 'Nouveau monde'/Nether [12:09:20] [Server thread/INFO]: Saving chunks for level 'Nouveau monde'/The End [12:09:20] [pool-2-thread-1/WARN]: Couldn't look up profile properties for com.mojang.authlib.GameProfile@2a95500c[id=5c5c7719-d2ce-30c8-bc42-ad9690493df6,name=Player261,properties={},legacy=false] com.mojang.authlib.exceptions.AuthenticationException: The client has sent too many requests within a certain amount of time at com.mojang.authlib.yggdrasil.YggdrasilAuthenticationService.makeRequest(YggdrasilAuthenticationService.java:65) ~[YggdrasilAuthenticationService.class:?] at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService.fillGameProfile(YggdrasilMinecraftSessionService.java:175) [YggdrasilMinecraftSessionService.class:?] at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService$1.load(YggdrasilMinecraftSessionService.java:59) [YggdrasilMinecraftSessionService$1.class:?] at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService$1.load(YggdrasilMinecraftSessionService.java:56) [YggdrasilMinecraftSessionService$1.class:?] at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3524) [guava-17.0.jar:?] at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2317) [guava-17.0.jar:?] at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2280) [guava-17.0.jar:?] at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2195) [guava-17.0.jar:?] at com.google.common.cache.LocalCache.get(LocalCache.java:3934) [guava-17.0.jar:?] at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3938) [guava-17.0.jar:?] at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4821) [guava-17.0.jar:?] at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4827) [guava-17.0.jar:?] at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService.fillProfileProperties(YggdrasilMinecraftSessionService.java:165) [YggdrasilMinecraftSessionService.class:?] at net.minecraft.client.Minecraft.getProfileProperties(Minecraft.java:3038) [Minecraft.class:?] at net.minecraft.client.resources.SkinManager$3.run(SkinManager.java:130) [SkinManager$3.class:?] at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_73] at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_73] at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:1.8.0_73] at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:1.8.0_73] at java.lang.Thread.run(Unknown Source) [?:1.8.0_73] [12:09:23] [Server thread/INFO]: Saving and pausing game… [12:09:23] [Server thread/INFO]: Saving chunks for level 'Nouveau monde'/Overworld [12:09:23] [Server thread/INFO]: Saving chunks for level 'Nouveau monde'/Nether [12:09:23] [Server thread/INFO]: Saving chunks for level 'Nouveau monde'/The End [12:09:24] [Client thread/INFO]: Stopping! [12:09:24] [Client thread/INFO]: SoundSystem shutting down… [12:09:24] [Server thread/INFO]: Stopping server [12:09:24] [Server thread/INFO]: Saving players [12:09:24] [Server thread/INFO]: Saving worlds [12:09:24] [Server thread/INFO]: Saving chunks for level 'Nouveau monde'/Overworld [12:09:24] [Server thread/INFO]: Saving chunks for level 'Nouveau monde'/Nether [12:09:24] [Server thread/INFO]: Saving chunks for level 'Nouveau monde'/The End [12:09:24] [Client thread/WARN]: Author: Paul Lamb, www.paulscode.com [12:09:24] [Client Shutdown Thread/INFO]: Stopping server [12:09:24] [Client Shutdown Thread/INFO]: Saving players [12:09:24] [Client Shutdown Thread/INFO]: Saving worlds [12:09:24] [Client Shutdown Thread/INFO]: Saving chunks for level 'Nouveau monde'/Nether [12:09:24] [Client Shutdown Thread/INFO]: Saving chunks for level 'Nouveau monde'/The End -
Ce sont les logs de la console d’eclipse ça ? Car je ne vois rien venant de FML et donc rien concernant la texture.
