项目不在minecraft mod-minecraft锻造mod开发[编辑:固定]



我已经开始制作一个mod,它没有注册为项目。当我键入/give Fidojj222 fcm:fuel_canister时,它应该给我项目,除非它说它不存在!我正在使用eclipse作为我的IDE,我怀疑当我将其编译到jar中时可能会出现以下警告:

JAR export finished with warnings. See details for additional information.
Can not export external class folder at 'C:UsersJ.J.gradlecachesminecraftnetminecraftforgeforge1.8-11.14.3.1450start'.

如果这就是问题所在,那么我该如何解决?如果没有,这是我的代码:

CarsMod.java:

package com.fidojj222.carsmod;
import com.fidojj222.carsmod.init.CarsItems;
import com.fidojj222.carsmod.proxy.CommonProxy;
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.MOD_ID, name = Reference.MOD_NAME, version =     Reference.VERSION)
public class CarsMod {
    @SidedProxy(clientSide = Reference.CLIENT_PROXY_CLASS, serverSide =             Reference.SERVER_PROXY_CLASS)
    public static CommonProxy proxy;
    public void PreInit(FMLPreInitializationEvent event){
        CarsItems.init();
        CarsItems.register();
    }
    public void Init(FMLInitializationEvent event){
        proxy.registerRenders();
    }
    public void PostInit(FMLPostInitializationEvent event){
    }
}

Reference.java:

package com.fidojj222.carsmod;
public class Reference {
    public static final String MOD_ID = "fcm";
    public static final String MOD_NAME = "Fidojj222's Cars Mod";
    public static final String VERSION = "1.0";
    public static final String CLIENT_PROXY_CLASS = "com.fidojj222.carsmod.proxy.ClientProxy";
    public static final String SERVER_PROXY_CLASS = "com.fidojj222.carsmod.proxy.CommonProxy";
}

CarsItems.java:

package com.fidojj222.carsmod.init;
import com.fidojj222.carsmod.Reference;
import net.minecraft.client.Minecraft;
import net.minecraft.client.resources.model.ModelResourceLocation;
import net.minecraft.item.Item;
import net.minecraftforge.fml.common.registry.GameRegistry;
public class CarsItems {
    public static Item fuel_canister;
    public static void init(){
        fuel_canister = new Item().setUnlocalizedName("fuel_canister");
    }
    public static void register(){
        GameRegistry.registerItem(fuel_canister, fuel_canister.getUnlocalizedName().substring(5));
    }
    public static void registerRenders(){
        registerRender(fuel_canister);
    }
    public static void registerRender(Item item){
            Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(item, 0, new ModelResourceLocation(Reference.MOD_ID + ":" + item.getUnlocalizedName().substring(5), "inventory"));
    }
}

CommonProxy.java:

package com.fidojj222.carsmod.proxy;
public class CommonProxy {
    public void registerRenders(){
    }
}

ClientProxy.java:

package com.fidojj222.carsmod.proxy;
import com.fidojj222.carsmod.init.CarsItems;
public class ClientProxy extends CommonProxy {
    @Override
    public void registerRenders(){
        CarsItems.registerRenders();
    }
}

不显示是什么意思?在创意搜索菜单中根本找不到该项目,或者它是一个无纹理(紫色/黑色方格)块?

如果它是无框架的,你需要确保这两件事都完成了:

  1. 请确保您已将此纹理放置到位src/main/resources/assets/fcm/textures/items/fuel_canister.png它需要16x16像素
  2. src/main/resources/assets/fcm/models/item/fuel_canister.json上创建一个fuel_canister.json文件该文件定义了如何在同一时间渲染图像

该文件的内容应该是

{
  "parent": "builtin/generated",
  "textures":{
      "layer0":"fcm:items/fuel_canister"
  },
  "display":{
      "thirdperson":{
          "rotation":[-90, 0, 0],
          "translation":[0, 1, -3],
          "scale":[0.55,0.55,0.55]
      },
      "firstperson":{
          "rotation":[0,-135,25],
          "translation":[0,4,2],
        "scale":[1.7,1.7,1.7]
      }
  }
}

最新更新