2017-09-23 2 views
2

Je suis un débutant dans Minecraft et j'ai besoin d'aide. Quel est le problème? Je pense que cela est lié à CraftingManager. Quand je commence le jeu, le chargement vient à l'initialisation et aux crashs minecraft. S'il vous plaît aider! Version Minecraft: 1.7.10, version Forge: 10.13.4.1558, version Eclipse: Oxygen.Erreur CraftingManager

accident:

at java.lang.String.charAt(Unknown Source) 
at net.minecraft.item.crafting.CraftingManager.addRecipe(CraftingManager.java:232) 
at cpw.mods.fml.common.registry.GameRegistry.addShapedRecipe(GameRegistry.java:250) 
at cpw.mods.fml.common.registry.GameRegistry.addRecipe(GameRegistry.java:245) 
at org.flakerZ.LotsOfThings.LotsOfThings.init(LotsOfThings.java:84) 
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 cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:532) 
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.EventSubscriber.handleEvent(EventSubscriber.java:74) 
at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) 
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) 
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) 
at com.google.common.eventbus.EventBus.post(EventBus.java:275) 
at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:212) 
at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:190) 
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.EventSubscriber.handleEvent(EventSubscriber.java:74) 
at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) 
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) 
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) 
at com.google.common.eventbus.EventBus.post(EventBus.java:275) 
at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:119) 
at cpw.mods.fml.common.Loader.initializeMods(Loader.java:737) 
at cpw.mods.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:311) 
at net.minecraft.client.Minecraft.startGame(Minecraft.java:597) 
Code

(classe principale, initalization):

@EventHandler 
    public void init(FMLInitializationEvent event) { 
     GameRegistry.addRecipe(new ItemStack(itemPerfectCheese, 1), new Object[]{ "MM", "CC", "BB",('M'), itemMeltedCheese, ('B'), Items.bowl, ('C'), itemCheese}); 

     GameRegistry.addShapelessRecipe(new ItemStack(itemReinforcedCheese, 1), new Object[] {itemCheese, itemMeltedCheese, itemPerfectCheese}); 

     GameRegistry.addSmelting(Items.milk_bucket, new ItemStack(itemCheese,1), 5.0F); 
     GameRegistry.addSmelting(itemCheese, new ItemStack(itemMeltedCheese, 1), 10.0F); 

     GameRegistry.addRecipe(new ItemStack(itemCheesePickaxe, 1), new Object[]{ "CCC", " S ", " S ",('C'), itemReinforcedCheese, ('S'), Items.stick}); 
     GameRegistry.addRecipe(new ItemStack(itemCheeseAxe, 1), new Object[]{ "CC", "CS", " S ",('C'), itemReinforcedCheese, ('S'), Items.stick}); 
     GameRegistry.addRecipe(new ItemStack(itemCheeseShovel, 1), new Object[]{ "C", "S", "S",('C'), itemReinforcedCheese, ('S'), Items.stick}); 
     GameRegistry.addRecipe(new ItemStack(itemCheeseHoe, 1), new Object[]{ "CC", " S", " S",('C'), itemReinforcedCheese, ('S'), Items.stick}); 
     GameRegistry.addRecipe(new ItemStack(itemCheeseSword, 1), new Object[]{ "C", "C", "S",('C'), itemReinforcedCheese, ('S'), Items.stick}); 

    } 

} 

accident

org.flakerZ.LotsOfThings.LotsOfThings.init(LotsOfThings.java‌​:84) ~[bin/:?] 
+0

Pouvez-vous publier votre pile complète? – Edric

+0

https://pastebin.com/Z82T7gGt –

+0

Je me demandais, mais quel est votre mod? 'examplemod', ou' lotsofthings'? – Edric

Répondre

1

Vous n'êtes pas ajouter un élément correctement! http://www.wuppy29.com/minecraft/1-8-tutorial/forge-modding-tutorials-1-8-crafting-recipes/#sthash.8j4SP17W.dpbs utilise cet article. Cela devrait fonctionner

Dans votre cas:

GameRegistry.addRecipe(new ItemStack(itemPerfectCheese, 1), "MM", "CC", "BB","M", itemMeltedCheese, "B", Items.bowl, "C", itemCheese}); 

(Après le site metioned ci-dessus)

+0

Oui, je change mon code, même le mod sur les autres versions de Minecraft Forge. –

+0

Qu'avez-vous changé? Et cela a-t-il fonctionné sur les autres versions de MF? –

+0

Ne fonctionne déjà pas sur les autres versions de Forge. Résoudrons ce problème? Et démonter ce crash? –

2

Quelques autres choses, ne pas causer exactement votre problème actuel, mais qui sont inutiles, ce qui provoque un autre problème, ou pourrait autrement être plus propre ou plus flexible.

  1. Vous n'avez pas besoin de new Object[]{}, c'est what varargs does. La raison pour laquelle le code vanilla a new Object[]{} est que le compilateur compile varargs... dans un tableau d'objets encadré et que le processus de décompilation ne peut pas les différencier. C'est ce qu'on appelle Syntactic Sugar.
  2. Cette recette échouera

    GameRegistry.addRecipe(new ItemStack(itemCheeseAxe, 1), new Object[]{ "CC", "CS", " S ",('C'), itemReinforcedCheese, ('S'), Items.stick}); 
    

    Pourquoi? Parce que "CC", "CS", " S " ne sont pas tous de la même longueur: 2, 2, et 3. La recette n'est pas carrée et provoquera une erreur lors de l'exécution du jeu.

  3. ('C'), ('S') etc. Excédent parens, vous n'en avez pas besoin. Mais ils ne blessent rien.

  4. Vous voudrez peut-être utiliser ShapedOreRecipes et remplacer Items.Stick par "stickWood" afin que les bâtonnets de modification ajoutée fonctionnent pour vos recettes.