diff --git a/build.gradle.kts b/build.gradle.kts index 32befbd..f7c916b 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,5 +1,4 @@ import com.github.breadmoirai.githubreleaseplugin.GithubReleaseTask -import org.gradle.jvm.tasks.Jar plugins { java @@ -17,7 +16,9 @@ plugins { } group = "dev.isxander" -version = "1.2.0+1.19.4" +version = "1.3.0-beta.1+1.20" +val isBeta = "beta" in version.toString() +if (isBeta) println("Beta version detected.") repositories { mavenCentral() @@ -62,7 +63,7 @@ val minecraftVersion = libs.versions.minecraft.get() dependencies { minecraft(libs.minecraft) mappings(loom.layered { - //mappings("org.quiltmc:quilt-mappings:$minecraftVersion+build.${libs.versions.quilt.mappings.get()}:intermediary-v2") + mappings("org.quiltmc:quilt-mappings:$minecraftVersion+build.${libs.versions.quilt.mappings.get()}:intermediary-v2") officialMojangMappings() }) modImplementation(libs.fabric.loader) @@ -107,9 +108,10 @@ dependencies { // sodium compat modImplementation(libs.sodium) // iris compat + modImplementation(files("libs/iris-b7bf8745.jar")) // modImplementation(libs.iris) -// modRuntimeOnly("org.anarres:jcpp:1.4.14") -// modRuntimeOnly("io.github.douira:glsl-transformer:2.0.0-pre9") + modRuntimeOnly("org.anarres:jcpp:1.4.14") + modRuntimeOnly("io.github.douira:glsl-transformer:2.0.0-pre13") // immediately-fast compat // modImplementation(libs.immediately.fast) // modRuntimeOnly("net.lenni0451:Reflect:1.1.0") @@ -153,18 +155,6 @@ tasks { ) } } - - remapJar { - archiveClassifier.set("fabric-$minecraftVersion") - } - - remapSourcesJar { - archiveClassifier.set("fabric-$minecraftVersion-sources") - } - - named("javadocJar") { - archiveClassifier.set("fabric-$minecraftVersion-javadoc") - } register("releaseMod") { group = "mod" @@ -189,9 +179,9 @@ if (modrinthId.isNotEmpty()) { token.set(findProperty("modrinth.token")?.toString()) projectId.set(modrinthId) versionNumber.set("${project.version}") - versionType.set("release") + versionType.set(if (isBeta) "beta" else "release") uploadFile.set(tasks["remapJar"]) - gameVersions.set(listOf("1.19.4")) + gameVersions.set(listOf("1.20-pre2")) loaders.set(listOf("fabric", "quilt")) changelog.set(changelogText) syncBodyFrom.set(file(".github/README.md").readText()) @@ -208,8 +198,8 @@ if (hasProperty("curseforge.token") && curseforgeId.isNotEmpty()) { }) id = curseforgeId - releaseType = "release" - addGameVersion("1.19.4") + releaseType = if (isBeta) "beta" else "release" + addGameVersion("1.20-Snapshot") addGameVersion("Fabric") addGameVersion("Java 17") @@ -231,7 +221,7 @@ githubRelease { owner(split[0]) repo(split[1]) tagName("${project.version}") - targetCommitish("1.19.x/dev") + targetCommitish("1.20.x/dev") body(changelogText) releaseAssets(tasks["remapJar"].outputs.files) } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index bb6da29..4f71f60 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -9,7 +9,7 @@ grgit = "5.0.+" blossom = "1.3.+" minecraft = "1.20-pre2" -#quilt_mappings = "10" +quilt_mappings = "1" fabric_loader = "0.14.19" fabric_api = "0.81.2+1.20" mixin_extras = "0.2.0-beta.7" diff --git a/libs/iris-b7bf8745.jar b/libs/iris-b7bf8745.jar new file mode 100644 index 0000000..2be234d Binary files /dev/null and b/libs/iris-b7bf8745.jar differ diff --git a/src/main/java/dev/isxander/controlify/mixins/compat/iris/BaseOptionElementWidgetMixin.java b/src/main/java/dev/isxander/controlify/mixins/compat/iris/BaseOptionElementWidgetMixin.java index 6c25fee..ca7f4f8 100644 --- a/src/main/java/dev/isxander/controlify/mixins/compat/iris/BaseOptionElementWidgetMixin.java +++ b/src/main/java/dev/isxander/controlify/mixins/compat/iris/BaseOptionElementWidgetMixin.java @@ -1,32 +1,32 @@ package dev.isxander.controlify.mixins.compat.iris; -//import dev.isxander.controlify.compatibility.iris.BaseOptionElementComponentProcessor; -//import dev.isxander.controlify.screenop.ComponentProcessor; -//import dev.isxander.controlify.screenop.ComponentProcessorProvider; -//import net.coderbot.iris.gui.NavigationController; -//import net.coderbot.iris.gui.element.widget.BaseOptionElementWidget; -//import org.spongepowered.asm.mixin.Mixin; -//import org.spongepowered.asm.mixin.Shadow; -//import org.spongepowered.asm.mixin.Unique; -// -//@Mixin(value = BaseOptionElementWidget.class, remap = false) -//public abstract class BaseOptionElementWidgetMixin implements ComponentProcessorProvider { -// @Shadow public abstract boolean applyPreviousValue(); -// @Shadow public abstract boolean applyNextValue(); -// -// @Shadow protected NavigationController navigation; -// @Unique private final BaseOptionElementComponentProcessor processor -// = new BaseOptionElementComponentProcessor(this::cycle); -// -// @Override -// public ComponentProcessor componentProcessor() { -// return processor; -// } -// -// private void cycle(boolean reverse) { -// boolean needsUpdate = reverse ? applyPreviousValue() : applyNextValue(); -// if (needsUpdate) { -// navigation.refresh(); -// } -// } -//} +import dev.isxander.controlify.compatibility.iris.BaseOptionElementComponentProcessor; +import dev.isxander.controlify.screenop.ComponentProcessor; +import dev.isxander.controlify.screenop.ComponentProcessorProvider; +import net.coderbot.iris.gui.NavigationController; +import net.coderbot.iris.gui.element.widget.BaseOptionElementWidget; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; + +@Mixin(value = BaseOptionElementWidget.class, remap = false) +public abstract class BaseOptionElementWidgetMixin implements ComponentProcessorProvider { + @Shadow public abstract boolean applyPreviousValue(); + @Shadow public abstract boolean applyNextValue(); + + @Shadow protected NavigationController navigation; + @Unique private final BaseOptionElementComponentProcessor processor + = new BaseOptionElementComponentProcessor(this::cycle); + + @Override + public ComponentProcessor componentProcessor() { + return processor; + } + + private void cycle(boolean reverse) { + boolean needsUpdate = reverse ? applyPreviousValue() : applyNextValue(); + if (needsUpdate) { + navigation.refresh(); + } + } +} diff --git a/src/main/resources/controlify.mixins.json b/src/main/resources/controlify.mixins.json index a3c7130..20836c1 100644 --- a/src/main/resources/controlify.mixins.json +++ b/src/main/resources/controlify.mixins.json @@ -7,7 +7,7 @@ }, "compatibilityLevel": "JAVA_17", "mixins": [ -// "compat.iris.BaseOptionElementWidgetMixin", + "compat.iris.BaseOptionElementWidgetMixin", "compat.sodium.CycleControlElementMixin", "compat.sodium.SliderControlElementMixin", "compat.sodium.TickBoxControlElementMixin",