diff --git a/build.gradle b/build.gradle index ec2d2fbb..42a7f9bb 100644 --- a/build.gradle +++ b/build.gradle @@ -17,6 +17,9 @@ repositories { maven { url = "https://maven.ladysnake.org/releases" } // CCA maven { url = "https://maven.gegy.dev" } // LDL maven { url = "https://maven.parchmentmc.org" } + maven { url = "https://raw.githubusercontent.com/Fuzss/modresources/main/maven/" } // Forge Config API Port + maven { url = "https://maven.tterrag.com" } // Flywheel and Registrate + maven { url = "https://maven.createmod.net" } // Ponder and Catnip maven { url = "https://jitpack.io/" } // Mixin Extras } @@ -44,6 +47,12 @@ dependencies { // Compat modImplementation("com.terraformersmc:modmenu:$mod_menu_version") + + modImplementation("com.jozufozu.flywheel:flywheel-fabric-$minecraft_version:$flywheel_version") + modImplementation("net.createmod.catnip:Catnip-Fabric-$minecraft_version:$catnip_version") + modImplementation("net.createmod.ponder:Ponder-Fabric-$minecraft_version:$ponder_version") + modLocalRuntime("org.quiltmc.quilted-fabric-api:quilted-fabric-api-deprecated:$qfapi_version-$minecraft_version") // flywheel uses deprecated api + modCompileOnly("maven.modrinth:visiblebarriers:$vb_version") modCompileOnly("dev.lambdaurora:lambdynamiclights:$ldl_version") modCompileOnly("com.github.Virtuoel:Pehkui:$pehkui_version") diff --git a/gradle.properties b/gradle.properties index 532f2987..ec48a8b8 100644 --- a/gradle.properties +++ b/gradle.properties @@ -8,7 +8,7 @@ archives_base_name = portal_cubed # https://lambdaurora.dev/tools/import_quilt.html loader_version = 0.20.2 -qfapi_version = 7.1.2+0.87.0 +qfapi_version = 7.2.1+0.88.0 # Mappings qm_version = 23 @@ -25,8 +25,11 @@ mixin_extras_version = 0.2.0-beta.8 # Compat mod_menu_version = 7.1.0 +flywheel_version = 0.6.9-1 +catnip_version = 0.6.2 +ponder_version = 0.6.2 vb_version = 2.0.4 ldl_version = 2.3.1+1.20.1 pehkui_version = 3.6.3 rayon_version = 1.7.2+1.20.1 -sodium_version = mc1.20.1-0.5.2 \ No newline at end of file +sodium_version = mc1.20.1-0.5.2 diff --git a/src/main/java/com/fusionflux/portalcubed/client/PortalCubedClient.java b/src/main/java/com/fusionflux/portalcubed/client/PortalCubedClient.java index 6c5334aa..58958cd4 100644 --- a/src/main/java/com/fusionflux/portalcubed/client/PortalCubedClient.java +++ b/src/main/java/com/fusionflux/portalcubed/client/PortalCubedClient.java @@ -21,6 +21,7 @@ import com.fusionflux.portalcubed.client.render.portal.PortalRenderPhase; import com.fusionflux.portalcubed.client.render.portal.PortalRendererImpl; import com.fusionflux.portalcubed.client.render.portal.PortalRenderers; +import com.fusionflux.portalcubed.compat.ponder.PortalCubedPonderPlugin; import com.fusionflux.portalcubed.entity.Portal; import com.fusionflux.portalcubed.entity.PortalCubedEntities; import com.fusionflux.portalcubed.fluids.PortalCubedFluids; @@ -576,6 +577,10 @@ Items.LIGHT, new ResourceLocation("level") }) ); }); + + if (QuiltLoader.isModLoaded("ponder")) { + PortalCubedPonderPlugin.init(); + } } public static void zoomGoBrrrr(MutableDouble fov) { diff --git a/src/main/java/com/fusionflux/portalcubed/compat/ponder/PortalCubedPonderPlugin.java b/src/main/java/com/fusionflux/portalcubed/compat/ponder/PortalCubedPonderPlugin.java new file mode 100644 index 00000000..84c55507 --- /dev/null +++ b/src/main/java/com/fusionflux/portalcubed/compat/ponder/PortalCubedPonderPlugin.java @@ -0,0 +1,30 @@ +package com.fusionflux.portalcubed.compat.ponder; + +import com.fusionflux.portalcubed.PortalCubed; +import com.fusionflux.portalcubed.items.PortalCubedItems; +import net.createmod.ponder.foundation.PonderIndex; +import net.createmod.ponder.foundation.PonderPlugin; +import net.createmod.ponder.foundation.PonderRegistrationHelper; +import org.jetbrains.annotations.NotNull; + +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.resources.ResourceLocation; + +public class PortalCubedPonderPlugin implements PonderPlugin { + @Override + @NotNull + public String getModID() { + return PortalCubed.MOD_ID; + } + + @Override + public void registerScenes() { + PonderRegistrationHelper helper = new PonderRegistrationHelper(getModID()); + ResourceLocation portalGun = BuiltInRegistries.ITEM.getKey(PortalCubedItems.PORTAL_GUN); + helper.addStoryBoard(portalGun, "test_ponder", TestScene::test); + } + + public static void init() { + PonderIndex.addPlugin(new PortalCubedPonderPlugin()); + } +} diff --git a/src/main/java/com/fusionflux/portalcubed/compat/ponder/TestScene.java b/src/main/java/com/fusionflux/portalcubed/compat/ponder/TestScene.java new file mode 100644 index 00000000..d33daef5 --- /dev/null +++ b/src/main/java/com/fusionflux/portalcubed/compat/ponder/TestScene.java @@ -0,0 +1,14 @@ +package com.fusionflux.portalcubed.compat.ponder; + +import net.createmod.ponder.foundation.SceneBuilder; +import net.createmod.ponder.foundation.SceneBuildingUtil; + +import net.minecraft.world.entity.EntityType; + +public class TestScene { + public static void test(SceneBuilder scene, SceneBuildingUtil util) { + scene.title("test", "Test Scene"); + scene.world.createEntity(EntityType.PARROT::create); + scene.debug.debugSchematic(); + } +} diff --git a/src/main/resources/assets/portalcubed/ponder/auto_portal.nbt b/src/main/resources/assets/portalcubed/ponder/auto_portal.nbt deleted file mode 100644 index b953aa53..00000000 Binary files a/src/main/resources/assets/portalcubed/ponder/auto_portal.nbt and /dev/null differ diff --git a/src/main/resources/assets/portalcubed/ponder/test_ponder.nbt b/src/main/resources/assets/portalcubed/ponder/test_ponder.nbt new file mode 100644 index 00000000..a433833e Binary files /dev/null and b/src/main/resources/assets/portalcubed/ponder/test_ponder.nbt differ