问题描述
我正在尝试制作一个 minecraft mod,一切都已加载,但是当我运行代码时,我收到 ItemBase 的错误“对象不是功能接口”。
package com.example.examplemod;
import net.minecraft.block.Block;
import net.minecraft.item.Item;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.eventbus.api.IEventBus;
import net.minecraftforge.fml.RegistryObject;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent;
import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent;
import net.minecraftforge.fml.event.lifecycle.InterModEnqueueEvent;
import net.minecraftforge.fml.event.lifecycle.InterModProcessEvent;
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
import net.minecraftforge.registries.DeferredRegister;
import net.minecraftforge.registries.ForgeRegistries;
// The value here should match an entry in the META-INF/mods.toml file
@Mod("examplemod")
public class ExampleMod {
private final Object ItemBase;
public <ItemBase> ExampleMod(Object itemBase) {
ItemBase = itemBase;
FMLJavaModLoadingContext.get().getModEventBus().addListener(this::setup);
FMLJavaModLoadingContext.get().getModEventBus().addListener(this::enqueueIMC);
FMLJavaModLoadingContext.get().getModEventBus().addListener(this::processIMC);
FMLJavaModLoadingContext.get().getModEventBus().addListener(this::doClientStuff);
MinecraftForge.EVENT_BUS.register(this);
final String MODID = "mod";
Object name;
//ITEMS.register("Copper_ingot",() -> new Item(new Item.Properties().group(ItemGroup.MATERIALS)));
final RegistryObject<Item> COPPER_INGOT = ITEMS.register("copper_ingot",ItemBase::new);
}
private void setup(FMLCommonSetupEvent event) {
}
private void doClientStuff(FMLClientSetupEvent event) {
}
private void enqueueIMC(InterModEnqueueEvent event) {
}
;
private void processIMC(InterModProcessEvent event) {
}
@Mod.EventBusSubscriber(
bus = Mod.EventBusSubscriber.Bus.MOD
)
class RegistryEvents {
private static final String MODID = "mod";
private final Object Block;
private final Object RegistryEvent;
public RegistryEvents(Object block,Object registryEvent) {
Block = block;
RegistryEvent = registryEvent;
boolean blockRegistryEvent;
{
{
IEventBus eventBus = FMLJavaModLoadingContext.get().getModEventBus();
final DeferredRegister<Block> BLOCKS = DeferredRegister.create(ForgeRegistries.BLOCKS,MODID);
final DeferredRegister<Item> ITEMS = DeferredRegister.create(ForgeRegistries.ITEMS,MODID);
BLOCKS.register(eventBus);
ITEMS.register(eventBus);
}
}
}
}
private static class ITEMS {
public static void register(Object name) {
}
public static void register(String copper_ingot,Object o) {
}
}
}
错误:
C:\Users\User\Downloads\folder\forge\src\main\java\com\example\examplemod\ExampleMod.java:36: 错误:意外类型 ItemBase::new); ^ 必需:类或数组 找到:类型参数 ItemBase 其中 ItemBase 是一个类型变量: ItemBase 扩展在构造函数 ExampleMod(Object) 中声明的 Object
请帮忙。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)