From cd78878bd37698242cffa0ec45379d05ecf03366 Mon Sep 17 00:00:00 2001 From: IThundxr Date: Sat, 4 Jan 2025 12:05:08 -0500 Subject: [PATCH] Curious curios - Reimplement support for curios # Conflicts: # gradle.properties --- build.gradle | 15 ++++-------- .../059f70d822f3fe46a7addb0bb70dc58ad8353903 | 2 ++ .../data/create/curios/entities/players.json | 8 +++++++ .../simibubi/create/compat/curios/Curios.java | 10 -------- .../compat/curios/CuriosDataGenerator.java | 23 +++++++++++++++++++ .../infrastructure/data/CreateDatagen.java | 4 +++- 6 files changed, 41 insertions(+), 21 deletions(-) create mode 100644 src/generated/resources/.cache/059f70d822f3fe46a7addb0bb70dc58ad8353903 create mode 100644 src/generated/resources/data/create/curios/entities/players.json create mode 100644 src/main/java/com/simibubi/create/compat/curios/CuriosDataGenerator.java diff --git a/build.gradle b/build.gradle index 73f6a5d780..983c68080f 100644 --- a/build.gradle +++ b/build.gradle @@ -94,18 +94,18 @@ repositories { maven { url = "https://maven.ithundxr.dev/snapshots" } // Registrate maven { url = "https://maven.blamejared.com" } // JEI, Vazkii's Mods maven { url = "https://harleyoconnor.com/maven" } // Dynamic Trees - maven { url = "https://maven.theillusivec4.top/" } // Curios API - maven { url = "https://maven.squiddev.cc/" } // CC: Tweaked + maven { url = "https://maven.squiddev.cc" } // CC: Tweaked maven { url = "https://www.cursemaven.com" } maven { url = "https://api.modrinth.com/maven" } maven { url = "https://maven.saps.dev/releases" } // FTB Mods - maven { url = "https://maven.architectury.dev/" } // Arch API - maven { url = "https://jm.gserv.me/repository/maven-public/" // JourneyMap + maven { url = "https://maven.architectury.dev" } // Arch API + maven { url = "https://jm.gserv.me/repository/maven-public" // JourneyMap content { includeGroup "info.journeymap" includeGroup "mysticdrew" } } + maven { url = "https://maven.octo-studios.com/releases" } // Curios API Continuation // Mirror of maven.createmod.net if (System.getProperty("os.name").contains("Mac") && System.getenv("USER") == "ithundxr") { @@ -114,9 +114,6 @@ repositories { // todo - temp maven { url = "https://maven.ithundxr.dev/hidden" } // Flywheel 1.21 PR - flatDir { - dirs "libs" - } } dependencies { @@ -132,9 +129,7 @@ dependencies { //compileOnly("mezz.jei:jei-${jei_minecraft_version}-neoforge-api:${jei_version}") implementation("mezz.jei:jei-${jei_minecraft_version}-neoforge:${jei_version}") - compileOnly("top.theillusivec4.curios:curios-neoforge:${curios_version}+${curios_minecraft_version}:api") - // FIXME: Look into what to replace this with - //runtimeOnly("top.theillusivec4.curios:curios-neoforge:${curios_version}+${curios_minecraft_version}") + implementation("top.theillusivec4.curios:curios-neoforge:${curios_version}+${curios_minecraft_version}") if (cc_tweaked_enable.toBoolean()) { compileOnly("cc.tweaked:cc-tweaked-${cc_tweaked_minecraft_version}-core-api:${cc_tweaked_version}") diff --git a/src/generated/resources/.cache/059f70d822f3fe46a7addb0bb70dc58ad8353903 b/src/generated/resources/.cache/059f70d822f3fe46a7addb0bb70dc58ad8353903 new file mode 100644 index 0000000000..3e3de64218 --- /dev/null +++ b/src/generated/resources/.cache/059f70d822f3fe46a7addb0bb70dc58ad8353903 @@ -0,0 +1,2 @@ +// 1.21.1 2025-01-04T12:01:45.511078156 Curios for create +4346f33a498b3b430f1c4d978e8121dd6bb996c3 data/create/curios/entities/players.json diff --git a/src/generated/resources/data/create/curios/entities/players.json b/src/generated/resources/data/create/curios/entities/players.json new file mode 100644 index 0000000000..e109155425 --- /dev/null +++ b/src/generated/resources/data/create/curios/entities/players.json @@ -0,0 +1,8 @@ +{ + "entities": [ + "minecraft:player" + ], + "slots": [ + "head" + ] +} \ No newline at end of file diff --git a/src/main/java/com/simibubi/create/compat/curios/Curios.java b/src/main/java/com/simibubi/create/compat/curios/Curios.java index ba2bfecb50..c33c98a81d 100644 --- a/src/main/java/com/simibubi/create/compat/curios/Curios.java +++ b/src/main/java/com/simibubi/create/compat/curios/Curios.java @@ -14,12 +14,8 @@ import net.createmod.catnip.platform.CatnipServices; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.item.ItemStack; import net.neoforged.bus.api.IEventBus; -import net.neoforged.fml.InterModComms; import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent; -import net.neoforged.fml.event.lifecycle.InterModEnqueueEvent; import top.theillusivec4.curios.api.CuriosCapability; -import top.theillusivec4.curios.api.SlotTypeMessage; -import top.theillusivec4.curios.api.SlotTypePreset; import top.theillusivec4.curios.api.type.capability.ICuriosItemHandler; import top.theillusivec4.curios.api.type.inventory.ICurioStacksHandler; @@ -38,7 +34,6 @@ public class Curios { } public static void init(IEventBus modEventBus) { - modEventBus.addListener(Curios::onInterModEnqueue); modEventBus.addListener(Curios::onClientSetup); GogglesItem.addIsWearingPredicate(player -> resolveCuriosMap(player) @@ -76,11 +71,6 @@ public class Curios { CatnipServices.PLATFORM.executeOnClientOnly(() -> () -> modEventBus.addListener(CuriosRenderers::onLayerRegister)); } - private static void onInterModEnqueue(final InterModEnqueueEvent event) { - InterModComms.sendTo("curios", SlotTypeMessage.REGISTER_TYPE, () -> SlotTypePreset.HEAD.getMessageBuilder() - .build()); - } - private static void onClientSetup(final FMLClientSetupEvent event) { CuriosRenderers.register(); } diff --git a/src/main/java/com/simibubi/create/compat/curios/CuriosDataGenerator.java b/src/main/java/com/simibubi/create/compat/curios/CuriosDataGenerator.java new file mode 100644 index 0000000000..65b7d99ac5 --- /dev/null +++ b/src/main/java/com/simibubi/create/compat/curios/CuriosDataGenerator.java @@ -0,0 +1,23 @@ +package com.simibubi.create.compat.curios; + +import java.util.concurrent.CompletableFuture; + +import com.simibubi.create.Create; + +import net.minecraft.core.HolderLookup.Provider; +import net.minecraft.data.PackOutput; +import net.neoforged.neoforge.common.data.ExistingFileHelper; +import top.theillusivec4.curios.api.CuriosDataProvider; + +public class CuriosDataGenerator extends CuriosDataProvider { + public CuriosDataGenerator(PackOutput output, CompletableFuture registries, ExistingFileHelper fileHelper) { + super(Create.ID, output, fileHelper, registries); + } + + @Override + public void generate(Provider registries, ExistingFileHelper fileHelper) { + createEntities("players") + .addPlayer() + .addSlots("head"); + } +} diff --git a/src/main/java/com/simibubi/create/infrastructure/data/CreateDatagen.java b/src/main/java/com/simibubi/create/infrastructure/data/CreateDatagen.java index 88361b5dc3..cc4f47cd70 100644 --- a/src/main/java/com/simibubi/create/infrastructure/data/CreateDatagen.java +++ b/src/main/java/com/simibubi/create/infrastructure/data/CreateDatagen.java @@ -8,6 +8,7 @@ import com.google.gson.JsonElement; import com.google.gson.JsonObject; import com.simibubi.create.AllSoundEvents; import com.simibubi.create.Create; +import com.simibubi.create.compat.curios.CuriosDataGenerator; import com.simibubi.create.foundation.advancement.AllAdvancements; import com.simibubi.create.foundation.data.CreateDatamapProvider; import com.simibubi.create.foundation.data.DamageTypeTagGen; @@ -48,8 +49,9 @@ public class CreateDatagen { generator.addProvider(event.includeServer(), new StandardRecipeGen(output, lookupProvider)); generator.addProvider(event.includeServer(), new MechanicalCraftingRecipeGen(output, lookupProvider)); generator.addProvider(event.includeServer(), new SequencedAssemblyRecipeGen(output, lookupProvider)); - generator.addProvider(true, new CreateDatamapProvider(output, lookupProvider)); + generator.addProvider(event.includeServer(), new CreateDatamapProvider(output, lookupProvider)); generator.addProvider(event.includeServer(), new VanillaHatOffsetGenerator(output)); + generator.addProvider(event.includeServer(), new CuriosDataGenerator(output, lookupProvider, existingFileHelper)); if (event.includeServer()) { ProcessingRecipeGen.registerAll(generator, output, lookupProvider);