shadowfacts / shadowfacts.github.io

My website
https://shadowfacts.net
6 stars 4 forks source link

1.12 modding tutorial #10

Open Thyriel opened 6 years ago

Thyriel commented 6 years ago

Hi,

i'm about to learn modding with your tutorial, great stuff so far. (although i'm a totally java noob) One question, when i imported the ipr into IntelliJ there's an error in the import window: A small popup in the lower right corner appears "Unlinked Gradle Project > Import Gradle Project" but in the upcoming import window the Gradle JVM appears as "not defined" (can't continue here). Not sure if this is a problem or just an optional feature in ultimate edition of IntelliJ (at least the Defining a JDK Site of IntelliJ says ultimate edition only). At least editing works so far.

And i think your Main mod class tutorial code may have a wrong line for 1.12: @Mod(modid = TutorialMod.modId, name = TutorialMod.name, version = TutorialMod.version, acceptedMinecraftVersions = "[1.10.2]") Shouldn't that be 1.12 instead 1.10 ?

Thyriel commented 6 years ago

Not sure if i'm missunderstanding something or if there is a discrepancy in your tutorial codes between the RegistrationHandler created for the copper ingot and the code added later for the copper ore:

In "Basic Items" tutorial you add this to RegistrationHandler: `public static class RegistrationHandler {

@SubscribeEvent
     public static void registerItems(RegistryEvent.Register<Item> event) {
    ModItems.register(event.getRegistry());
}
   @SubscribeEvent
public static void registerItems(ModelRegistryEvent event) {
    ModItems.registerModels();
}

` two times registerItems

Later in "Basic Blocks" when adding the third registrationHandler it's now: `@SubscribeEvent public static void registerItems(RegistryEvent.Register event) { ModItems.register(event.getRegistry()); ModBlocks.registerItemBlocks(event.getRegistry()); }

@SubscribeEvent
public static void registerModels(ModelRegistryEvent event) {
    ModItems.registerItemModels();
    ModBlocks.registerItemModels();
}

`

the 2nd registerItems is now registerModels and ModItems.registerModels became ModItems.registerItemsModels (which isn't defined in ModItems)

edit: "Basic Blocks" section "Copper Ore" > i guess the first "register.registerAll(" should be "registry.registerAll" (giving me an error with register)

edit2: Hmm, are you sure that code actually works in 1.12 ? return new ItemBlock(this); throws an error: Can't use a null-name for the registry when calling registerItemBlocks: public static void registerItemBlocks(IForgeRegistry<Item> registry) { registry.registerAll( oreCopper.createItemBlock() ); }