Skip to content

Commit 7ed81aa

Browse files
ui
1 parent 216d811 commit 7ed81aa

11 files changed

Lines changed: 288 additions & 218 deletions

File tree

build.gradle.kts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,12 @@ import org.jetbrains.kotlin.gradle.dsl.JvmTarget
22
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
33

44
plugins {
5-
kotlin("jvm") version "2.3.0"
5+
kotlin("jvm") version "2.4.0"
66
id("dev.kikugie.loom-back-compat")
77
id("dev.deftu.gradle.bloom") version "0.2.0"
88
id("me.modmuss50.mod-publish-plugin") version "2.0.0"
9+
id("org.jetbrains.compose") version "1.11.0"
10+
id("org.jetbrains.kotlin.plugin.compose") version "2.4.0"
911
}
1012

1113
val modid = property("mod.id")
@@ -16,6 +18,7 @@ val versionoverride = property("minecraft_version")
1618

1719
val loaderversion = property("loader_version")
1820
val oneconfigversion = property("oneconfig_version")
21+
val fapiversion = property("fabric_api_version")
1922

2023
val necversion = property("nec_version")
2124

@@ -52,6 +55,7 @@ dependencies {
5255
loomx.applyMojangMappings()
5356

5457
modImplementation("net.fabricmc:fabric-loader:$loaderversion")
58+
modImplementation("net.fabricmc.fabric-api:fabric-api:$fapiversion")
5559
modImplementation("maven.modrinth:notenoughcrashes:$necversion+$mcversion-fabric")
5660
implementation(annotationProcessor("com.github.bawnorton.mixinsquared:mixinsquared-common:0.3.3")!!)
5761
implementation("gs.mclo:api:3.0.1")
@@ -60,6 +64,7 @@ dependencies {
6064
for (module in arrayOf("config", "config-impl", "internal")) {
6165
implementation("org.polyfrost.oneconfig:$module:$oneconfigversion")
6266
}
67+
compileOnly(compose.desktop.currentOs)
6368
}
6469

6570
bloom {

src/main/java/org/polyfrost/crashpatch/mixin/Mixin_CrashPatchInitUI.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
import net.minecraft.client.Minecraft;
77
import net.minecraft.client.gui.screens.Screen;
88
import org.polyfrost.crashpatch.client.gui.CrashUI;
9-
import org.polyfrost.oneconfig.api.ui.v1.internal.wrappers.PolyUIScreen;
109
import org.polyfrost.oneconfig.internal.ui.compose.ComposeScreen;import org.spongepowered.asm.mixin.Mixin;
1110
import org.spongepowered.asm.mixin.injection.At;
1211
import org.spongepowered.asm.mixin.injection.Inject;
Lines changed: 22 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,16 @@
11
package org.polyfrost.crashpatch.client
22

33
import com.mojang.brigadier.Command
4+
import net.fabricmc.fabric.api.client.command.v2.ClientCommandRegistrationCallback
5+
import net.fabricmc.fabric.api.client.command.v2.ClientCommands
6+
import net.minecraft.network.chat.Component
7+
import net.minecraft.util.CommonColors
48
import org.apache.logging.log4j.LogManager
59
import org.polyfrost.crashpatch.CrashPatchConstants
10+
import org.polyfrost.crashpatch.client.CrashPatchClient.isSkyClient
611
import org.polyfrost.crashpatch.client.crashes.CrashScanner
712
import org.polyfrost.oneconfig.utils.v1.Multithreading
8-
import org.polyfrost.oneconfig.utils.v1.dsl.createScreen
13+
import org.polyfrost.oneconfig.utils.v1.dsl.mc
914
import kotlin.io.path.exists
1015

1116
object CrashPatchClient {
@@ -33,27 +38,21 @@ object CrashPatchClient {
3338
fun initialize() {
3439
CrashPatchConfig.preload() // Initialize the config
3540

36-
OmniClientCommands.command(CrashPatchConstants.ID) {
37-
runs { ctx ->
38-
ctx.source.openScreen(CrashPatchConfig.createScreen())
39-
}
40-
41-
then("reload") {
42-
runs { ctx ->
43-
val success = CrashScanner.submitCacheRequest()
44-
45-
val content = "Requested reload of crash data! Please wait." to TextColors.GREEN
46-
val (message, color) = content
47-
ctx.source.replyChat(Text.literal("[${CrashPatchConstants.NAME}] $message").setStyle(MCTextStyle.color(color)))
48-
}
49-
}
50-
51-
then("crash") {
52-
runs { ctx ->
53-
isCrashRequested = true
54-
Command.SINGLE_SUCCESS
55-
}
56-
}
57-
}.register()
41+
ClientCommandRegistrationCallback.EVENT.register { dispatcher, _ ->
42+
dispatcher.register(
43+
ClientCommands.literal("crashpatch")
44+
.then(ClientCommands.literal("reload").executes {
45+
CrashScanner.submitCacheRequest()
46+
val content = "Requested reload of crash data! Please wait." to CommonColors.GREEN
47+
val (message, color) = content
48+
mc.gui.chat.addClientSystemMessage(Component.literal("[${CrashPatchConstants.NAME}] $message").withColor(color))
49+
Command.SINGLE_SUCCESS
50+
})
51+
.then(ClientCommands.literal("crash").executes {
52+
isCrashRequested = true
53+
Command.SINGLE_SUCCESS
54+
})
55+
)
56+
}
5857
}
5958
}

0 commit comments

Comments
 (0)