Jump to content

Meisa

Members
  • Posts

    2
  • Joined

  • Last visited

Everything posted by Meisa

  1. Fixed the issue by referring to the ResourceLocation instead of Item. Like so: public class Blueprint extends Item { public List<Resource> resources; public ResourceLocation outputItem; public Blueprint(Properties properties, List<Resource> resources, ResourceLocation outputItem) { super(properties); this.resources = resources; this.outputItem = outputItem; } public static class Resource { public final ResourceLocation resourceLocation; public final int amount; public Resource(ResourceLocation resourceLocation, int amount) { this.resourceLocation = resourceLocation; this.amount = amount; } } }
  2. I'm trying to register an object that uses other items in the class but I'm not sure how to make it register properly Blueprints.java: (creating new blueprint) public class Blueprints { private static final List<Blueprint.Resource> SKANA_RESOURCES = Arrays.asList( new Blueprint.Resource(Items.STICK, 1), new Blueprint.Resource(Resources.MORPHICS.get(), 1) ); public static final RegistryObject<Item> SKANA_BLUEPRINT = Registration.ITEMS.register("skana_blueprint", () -> new Blueprint(new Item.Properties().tab(TennoMC.TAB_TENNO), SKANA_RESOURCES, Swords.SKANA.get()) ); public static void register() {} } Blueprint.java: (my new class) public class Blueprint extends Item { public List<Resource> resources; public Item outputItem; public Blueprint(Properties properties, List<Resource> resources, Item outputItem) { super(properties); this.resources = resources; this.outputItem = outputItem; } public static class Resource { public final Item item; public final int amount; public Resource(Item item, int amount) { this.item = item; this.amount = amount; } } } Registration.java: public class Registration { public static final DeferredRegister<Item> ITEMS = DeferredRegister.create(ForgeRegistries.ITEMS, TennoMC.MOD_ID); public static void init() { IEventBus eventBus = FMLJavaModLoadingContext.get().getModEventBus(); ITEMS.register(eventBus); } } TennoMC.java: public TennoMC { registerModAdditions(); } private void registerModAdditions() { // Inits additions Registration.init(); // Inits in game items Resources.register(); Blueprints.register(); }
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.