aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRonald Inglett <71849533+inglettronald@users.noreply.github.com>2023-08-01 15:14:28 -0500
committerGitHub <noreply@github.com>2023-08-01 15:14:28 -0500
commit0516a4be0c93d6a82dc23ba074a5ee6c6b8c181f (patch)
treee14da1c0b06c7411804dd406ed41b9db6413b0b9 /src
parentead0b68578d40562728aec8c725fe35cf6724d73 (diff)
parent0aceb412e0eec21379805286afb59788530f4fb6 (diff)
downloadDulkirMod-Fabric-0516a4be0c93d6a82dc23ba074a5ee6c6b8c181f.tar.gz
DulkirMod-Fabric-0516a4be0c93d6a82dc23ba074a5ee6c6b8c181f.tar.bz2
DulkirMod-Fabric-0516a4be0c93d6a82dc23ba074a5ee6c6b8c181f.zip
Merge pull request #6 from romangraef/feat/modmenu
Add modmenu support
Diffstat (limited to 'src')
-rw-r--r--src/main/kotlin/com/dulkirfabric/config/DulkirConfig.kt8
-rw-r--r--src/main/kotlin/com/dulkirfabric/util/DulkirModMenuPlugin.kt11
-rw-r--r--src/main/resources/fabric.mod.json7
3 files changed, 21 insertions, 5 deletions
diff --git a/src/main/kotlin/com/dulkirfabric/config/DulkirConfig.kt b/src/main/kotlin/com/dulkirfabric/config/DulkirConfig.kt
index 5e2eb5d..93db1a0 100644
--- a/src/main/kotlin/com/dulkirfabric/config/DulkirConfig.kt
+++ b/src/main/kotlin/com/dulkirfabric/config/DulkirConfig.kt
@@ -38,9 +38,9 @@ class DulkirConfig {
private val buttonText: Text =
MutableText.of(LiteralTextContent("Dulkir")).formatted(Formatting.BOLD, Formatting.YELLOW)
- var screen: Screen
+ var screen: Screen = buildScreen(null)
- init {
+ fun buildScreen(parentScreen: Screen? = null): Screen {
val builder = ConfigBuilder.create().setTitle(buttonText)
builder.setDefaultBackgroundTexture(Identifier("minecraft:textures/block/oak_planks.png"))
builder.setGlobalized(true)
@@ -408,7 +408,9 @@ class DulkirConfig {
// .build()
// )
builder.transparentBackground()
- screen = builder.build()
+ if (parentScreen != null)
+ builder.setParentScreen(parentScreen)
+ return builder.build()
}
@Serializable
diff --git a/src/main/kotlin/com/dulkirfabric/util/DulkirModMenuPlugin.kt b/src/main/kotlin/com/dulkirfabric/util/DulkirModMenuPlugin.kt
new file mode 100644
index 0000000..40b731e
--- /dev/null
+++ b/src/main/kotlin/com/dulkirfabric/util/DulkirModMenuPlugin.kt
@@ -0,0 +1,11 @@
+package com.dulkirfabric.util
+
+import com.dulkirfabric.config.DulkirConfig
+import com.terraformersmc.modmenu.api.ConfigScreenFactory
+import com.terraformersmc.modmenu.api.ModMenuApi
+
+class DulkirModMenuPlugin : ModMenuApi {
+ override fun getModConfigScreenFactory(): ConfigScreenFactory<*> {
+ return ConfigScreenFactory { DulkirConfig().buildScreen(it) }
+ }
+} \ No newline at end of file
diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json
index 962251b..fabcfeb 100644
--- a/src/main/resources/fabric.mod.json
+++ b/src/main/resources/fabric.mod.json
@@ -26,8 +26,11 @@
],
"jarvis": [
"com.dulkirfabric.util.JarvisIntegrationPlugin"
- ]
- },
+ ],
+ "modmenu": [
+ "com.dulkirfabric.util.DulkirModMenuPlugin"
+ ]
+ },
"mixins": [
"dulkirmod-fabric.mixins.json"
],