【问题标题】:Minecraft forge doesn't load my item texture in 1.12.2Minecraft forge 在 1.12.2 中没有加载我的物品纹理
【发布时间】:2022-07-31 01:01:26
【问题描述】:

我正在尝试为我拥有的物品添加纹理,但它没有在 Minecraft 中加载。这是我的基础 mod 类:

package fr.doufut.test;

import fr.doufut.test.events.RegisteringEvent;
import fr.doufut.test.proxy.CommonProxy;
import fr.doufut.test.utils.Reference;
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 = Reference.MODID, name = Reference.NAME , version = Reference.VERSION)
public class TestMain {

    @Mod.Instance(Reference.MODID)
    public static TestMain instance;

    @SidedProxy(clientSide = Reference.CP, serverSide = Reference.SP)
    public static CommonProxy proxy;

    public TestMain()
    {
        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();
    }
}

我的常用代理类:

package fr.doufut.test.proxy;

public class CommonProxy {

    public void preinit()
    {

    }

    public void init()
    {

    }

    public void postinit()
    {

    }
}

我的客户端代理类:

package fr.doufut.test.proxy;

import fr.doufut.test.init.ModItems;
import net.minecraftforge.common.MinecraftForge;

public class ClientProxy extends CommonProxy
{

    @Override
    public void preinit() {
        super.preinit();
        MinecraftForge.EVENT_BUS.register(ModItems.INSTANCE);
    }

    @Override
    public void init() {
        super.init();
    }

    @Override
    public void postinit() {
        super.postinit();
    }
}


这是实际的 ModItem 类:

package fr.doufut.test.init;

import com.google.common.collect.Lists;
import fr.doufut.test.items.HDOItems;
import fr.doufut.test.utils.Reference;
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
import net.minecraft.item.Item;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.event.ModelRegistryEvent;
import net.minecraftforge.client.model.ModelLoader;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;

import java.util.List;

public class ModItems {

    public static final ModItems INSTANCE = new ModItems();

    public static Item coca;

    private List<Item> items;

    public void init()
    {
        items = Lists.newArrayList();
        coca = new HDOItems("coca");
    }

    @SubscribeEvent
    public void registerModels(ModelRegistryEvent e)
    {
        for (Item item : items)
        {
            registerModel(item);
        }
    }

    private void registerModel(Item item)
    {
        ModelLoader.setCustomModelResourceLocation(item, 0, new ModelResourceLocation(new ResourceLocation(Reference.MODID, item.getUnlocalizedName().substring(5)), "inventory"));
    }

    public List<Item> getItems()
    {
        return items;
    }
}

这里是 HDOItem 类文件:

package fr.doufut.test.items;

import fr.doufut.test.init.ModItems;
import net.minecraft.item.Item;

public class HDOItems extends Item
{

    public HDOItems(String name)
    {
        setRegistryName(name).setUnlocalizedName(name);

        ModItems.INSTANCE.getItems().add(this);
    }
}

这里是物品的 json 模型文件:

{

  "parent": "item/generated",
  "textures": {
    "layer0": "hdo:/items/coca"
  }

}

我的文件夹结构:

Json 文件:C:\Users\rober\Desktop\forge-1.12.2-14.23.5.2859-mdk\src\main\resources\assets\hdo\models\item\coca.json

PNG 文件:C:\Users\rober\Desktop\forge-1.12.2-14.23.5.2859-mdk\src\main\resources\assets\hdo\textures\items.json

【问题讨论】:

    标签: java json minecraft minecraft-forge mod


    【解决方案1】:

    怀疑,您的 PNG 文件是“items.json”而不是“cocoa.png”? 据我所知,在“纹理”文件夹中应该有 2 个文件夹: “块”,“项目”。 在“textures/items”里面有文件“cocoa.png”

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-07-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-30
      相关资源
      最近更新 更多