gpt4 book ai didi

java - 项目在 minecraft mod 中不起作用 - Minecraft Forge Mod 开发 [编辑 : FIXED]

转载 作者:行者123 更新时间:2023-11-30 08:43:17 33 4
gpt4 key购买 nike

我已经开始制作模组,它没有注册为元素。当我键入 /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:\Users\J.J\.gradle\caches\minecraft\net\minecraftforge\forge\1.8-11.14.3.1450\start'.

如果这是问题所在,那么我该如何解决呢?如果不是这里是我的代码:

汽车模组.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){

}
}

引用.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"));
}
}

通用代理.java:

package com.fidojj222.carsmod.proxy;

public class CommonProxy {
public void registerRenders(){

}
}

客户端代理.java:

package com.fidojj222.carsmod.proxy;

import com.fidojj222.carsmod.init.CarsItems;

public class ClientProxy extends CommonProxy {
@Override
public void registerRenders(){
CarsItems.registerRenders();
}
}

最佳答案

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

如果它是无纹理的,您需要确保完成以下两件事:

  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]
}
}
}

关于java - 项目在 minecraft mod 中不起作用 - Minecraft Forge Mod 开发 [编辑 : FIXED],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34346852/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com