144 字
1 分钟
教程 | minecraft模组开发-1
2024-07-24 14:45:00
本文最后更新于 584 天前,内容可能已不准确,请注意甄别。

minecraft模组开发-使用反射批量添加创建的物品#

在使用数据生成时,使用反射批量注册物品 Model ,将自己创建的 ModItems 类中写的所有物品进行注册,下面是一个简单的例子

package net.wssz.tutorialmod.datagen;
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
import net.fabricmc.fabric.api.datagen.v1.provider.FabricModelProvider;
import net.minecraft.data.client.BlockStateModelGenerator;
import net.minecraft.data.client.ItemModelGenerator;
import net.minecraft.data.client.Models;
import net.minecraft.item.Item;
import net.wssz.tutorialmod.block.ModBlocks;
import net.wssz.tutorialmod.item.ModItems;
import java.lang.reflect.Field;
public class ModModelsProvider extends FabricModelProvider {
public ModModelsProvider(FabricDataOutput output) {
super(output);
}
@Override
public void generateBlockStateModels(BlockStateModelGenerator blockStateModelGenerator) {
blockStateModelGenerator.registerSimpleCubeAll(ModBlocks.RED_IRON_ORE);
}
@Override
public void generateItemModels(ItemModelGenerator itemModelGenerator) {
Field[] fields = ModItems.class.getDeclaredFields();
try {
for (Field field : fields) {
if (field.getType().equals(Item.class)) {
itemModelGenerator.register((Item) field.get(null), Models.GENERATED);
}
}
} catch (IllegalAccessException e) {
throw new RuntimeException(e);
}
}
}
教程 | minecraft模组开发-1
https://fuwari.wisansiiz.top/posts/minecraft-dev-1/
作者
Wisansiiz
发布于
2024-07-24
许可协议
CC BY-NC-SA 4.0