Je suis assez novice en matière de modélisation avec Forge, donc cette question peut être stupide ou idiote.
Tout d'abord, il y a mon fichier : (situé à ~/forge-1.16.4-35.1.28-mdk/data/chemc/recipes/H2_O2__H2O.json)
{
"type": "minecraft:crafting_shapeless",
"ingredients":
[
{
"item": "chemc:hydrogen"
},
{
"item": "chemc:oxygen"
}
],
"result":
{
"item": "minecraft:water_bucket"
}
}
Le problème est que, lorsque je charge le jeu et passe à la survie plus essayer de combiner l'hydrogène et l'oxygène pour faire un seau d'eau, mais il semble qu'il ne peut pas être fabriqué.
Supposons que les objets soient enregistrés correctement, puisque je peux les obtenir dans le jeu. Fichier principal du Mod pour que vous puissiez voir le nom non localisé des objets.
package com.***.***.mcmods.chemc;
import com.***.***.mcmods.chemc.items.Hydrogen;
import com.***.***.mcmods.chemc.items.Oxygen;
import net.minecraft.block.Block;
import net.minecraft.item.Item;
import net.minecraft.item.Item.Properties;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.RegistryEvent;
import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent;
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
// The value here should match an entry in the META-INF/mods.toml file
@Mod(CheMC.modid)
public class CheMC {
public static final String modid = "chemc";
static Item i_h = new Hydrogen(new Properties()).setRegistryName("chemc", "hydrogen");
static Item i_o = new Oxygen(new Properties()).setRegistryName("chemc", "oxygen");
public CheMC() {
FMLJavaModLoadingContext.get().getModEventBus().addListener(this::setup);
MinecraftForge.EVENT_BUS.register(this);
}
private void setup(final FMLCommonSetupEvent event) {
}
// You can use EventBusSubscriber to automatically subscribe events on the
// contained class (this is subscribing to the MOD
// Event bus for receiving Registry Events)
@Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.MOD)
public static class RegistryEvents {
@SubscribeEvent
public static void onBlocksRegistry(final RegistryEvent.Register<Block> blockRegistryEvent) {
// register a new block here
// blockRegistryEvent.getRegistry().registerAll();
}
@SubscribeEvent
public static void onItemsRegistry(final RegistryEvent.Register<Item> itemRegistryEvent) {
// register a new item here
itemRegistryEvent.getRegistry().registerAll(i_h,i_o);
}
}
}
La documentation que j'ai examinée : ReadTheDocs Forge 1.16
Sortie de ./gradlew runClient --full-stacktrace --debug --info --parallel
Toute réponse serait appréciée !