diff --git a/fabric/build.gradle b/fabric/build.gradle index 0b3870e..2b57b2d 100644 --- a/fabric/build.gradle +++ b/fabric/build.gradle @@ -6,6 +6,9 @@ plugins { id 'maven-publish' } +sourceSets.create("gui") +loom.createRemapConfigurations(sourceSets.gui) + dependencies { minecraft "com.mojang:minecraft:${project.minecraft_version}" mappings loom.officialMojangMappings() @@ -20,9 +23,16 @@ dependencies { libs("ca.spottedleaf:yamlconfig:${rootProject.yamlconfig_version}") { setTransitive(false) } libs("org.yaml:snakeyaml:${rootProject.snakeyaml_version}") - //modImplementation "me.shedaniel.cloth:cloth-config-fabric:${rootProject.cloth_version}" - //include "me.shedaniel.cloth:cloth-config-fabric:${rootProject.cloth_version}" - //modImplementation "com.terraformersmc:modmenu:${rootProject.modmenu_version}" + guiCompileOnly(project(":")) + runtimeOnly(sourceSets.gui.output) + shadow(sourceSets.gui.output) + modGuiImplementation "me.shedaniel.cloth:cloth-config-fabric:${rootProject.cloth_version}" + include "me.shedaniel.cloth:cloth-config-fabric:${rootProject.cloth_version}" + modGuiImplementation "com.terraformersmc:modmenu:${rootProject.modmenu_version}" + if (enable_gui == "true") { + modRuntimeOnly "me.shedaniel.cloth:cloth-config-fabric:${rootProject.cloth_version}" + modRuntimeOnly "com.terraformersmc:modmenu:${rootProject.modmenu_version}" + } modImplementation platform(fabricApiLibs.bom) modImplementation fabricApiLibs.command.api.v2 @@ -31,6 +41,12 @@ dependencies { include fabricApiLibs.base } +afterEvaluate { + configurations.guiCompileOnly { + extendsFrom configurations.getByName("minecraftNamedCompile") + } +} + tasks.processResources { def properties = [ "version": project.version, diff --git a/fabric/src/main/java/ca/spottedleaf/moonrise/fabric/MoonriseModMenuHook.java b/fabric/src/gui/java/ca/spottedleaf/moonrise/fabric/MoonriseModMenuHook.java similarity index 89% rename from fabric/src/main/java/ca/spottedleaf/moonrise/fabric/MoonriseModMenuHook.java rename to fabric/src/gui/java/ca/spottedleaf/moonrise/fabric/MoonriseModMenuHook.java index ebb358a..5137924 100644 --- a/fabric/src/main/java/ca/spottedleaf/moonrise/fabric/MoonriseModMenuHook.java +++ b/fabric/src/gui/java/ca/spottedleaf/moonrise/fabric/MoonriseModMenuHook.java @@ -1,6 +1,5 @@ package ca.spottedleaf.moonrise.fabric; -/* import ca.spottedleaf.moonrise.common.config.MoonriseConfigScreen; import com.terraformersmc.modmenu.api.ConfigScreenFactory; import com.terraformersmc.modmenu.api.ModMenuApi; @@ -11,4 +10,3 @@ public final class MoonriseModMenuHook implements ModMenuApi { return MoonriseConfigScreen::create; } } -*/public final class MoonriseModMenuHook{} diff --git a/gradle.properties b/gradle.properties index bd498c0..9fb1299 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,6 +16,8 @@ concurrentutil_version=0.0.3 yamlconfig_version=1.0.2 cloth_version=18.0.145 modmenu_version=14.0.0-rc.2 +# set to false when modmenu/cloth is not updated for the current minecraft version +enable_gui=false junit_version=5.11.3 # version ids from modrinth fabric_lithium_version=nhc57Td2 diff --git a/src/main/java/ca/spottedleaf/moonrise/common/config/MoonriseConfigScreen.java b/src/main/java/ca/spottedleaf/moonrise/common/config/MoonriseConfigScreen.java index c63509e..08d78c3 100644 --- a/src/main/java/ca/spottedleaf/moonrise/common/config/MoonriseConfigScreen.java +++ b/src/main/java/ca/spottedleaf/moonrise/common/config/MoonriseConfigScreen.java @@ -1,15 +1,13 @@ package ca.spottedleaf.moonrise.common.config; -/* import ca.spottedleaf.moonrise.common.config.moonrise.MoonriseConfig; import ca.spottedleaf.moonrise.common.config.ui.ConfigWalker; import ca.spottedleaf.moonrise.common.util.ConfigHolder; import me.shedaniel.clothconfig2.api.ConfigBuilder; import net.minecraft.client.gui.screens.Screen; import net.minecraft.network.chat.Component; -*/ + public final class MoonriseConfigScreen { - /* private MoonriseConfigScreen() { } @@ -29,5 +27,5 @@ public final class MoonriseConfigScreen { } return builder.build(); - }*/ + } }