Skip to content

Commit c70a4cc

Browse files
committed
➖➕ throw yacl like a motherf'er, hi midnightlib
1 parent 6b4b7c8 commit c70a4cc

File tree

11 files changed

+61
-133
lines changed

11 files changed

+61
-133
lines changed

build.gradle.kts

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ repositories {
1919
maven("https://maven.parchmentmc.org")
2020
maven("https://mvn.devos.one/snapshots")
2121
maven("https://maven.bawnorton.com/releases") // MixinSquared
22-
maven("https://maven.isxander.dev/releases") // YetAnotherConfigLib
2322
}
2423

2524
//All dependencies and their versions are in ./gradle/libs.versions.toml
@@ -32,25 +31,25 @@ dependencies {
3231
parchment("org.parchmentmc.data:parchment-1.21.1:2024.11.17@zip")
3332
})
3433

35-
//Fabric
34+
// Fabric
3635
modImplementation(libs.fabric.loader)
3736
modImplementation(libs.fabric.api)
3837
modImplementation(libs.fabric.language.kotlin)
3938

40-
//Mods
39+
// Mods
4140
modImplementation(libs.bundles.dependencies)
4241
modLocalRuntime(libs.bundles.dev.mods)
4342

4443
// Config
45-
modImplementation(libs.yacl)
44+
include(modImplementation(libs.midnightlib.get())!!)
4645

4746
modImplementation(files("localLibs/centered-crosshair+1.21-1.0.8.jar"))
4847
modImplementation(files("localLibs/limits_grapple-0.7.3-1.21.1.jar"))
4948
modImplementation(files("localLibs/trinkets-3.10.0.jar"))
5049

51-
include(modImplementation("gay.asoji:fmw:1.0.0+build.8")!!) // just to avoid the basic long metadata calls
52-
include(implementation(annotationProcessor("com.github.bawnorton.mixinsquared:mixinsquared-fabric:0.3.3")!!)!!)
53-
include(implementation("com.moulberry:mixinconstraints:1.0.9")!!)
50+
include(modImplementation(libs.fmw.get())!!) // just to avoid the basic long metadata calls
51+
include(implementation(annotationProcessor(libs.mixinsquared.get())!!)!!)
52+
include(implementation(libs.mixinconstraints.get())!!)
5453
}
5554

5655
// Write the version to the fabric.mod.json

gradle/libs.versions.toml

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,30 @@
11
[versions]
2-
# The latest versions are available at https://fabricmc.net/develop
32
minecraft = "1.21.1"
4-
#quilt_mappings = "1.21+build.18"
53
fabric_loader = "0.16.14"
64
fabric_api = "0.116.4+1.21.1"
75
fabric_language_kotlin = "1.13.4+kotlin.2.2.0"
8-
sodium = "mc1.21.1-0.6.13-fabric"
6+
fmw = "1.0.0+build.8"
7+
midnightlib = "1.7.5+1.21.1-fabric"
8+
mixinconstraints = "1.0.9"
9+
mixinsquared = "0.3.3"
910
modmenu = "11.0.3"
10-
yacl = "3.7.1+1.21.1-fabric"
11+
sodium = "mc1.21.1-0.6.13-fabric"
1112

1213
[libraries]
13-
minecraft = { module = "com.mojang:minecraft", version.ref = "minecraft" }
14-
fabric_loader = { module = "net.fabricmc:fabric-loader", version.ref = "fabric_loader" }
1514
fabric-api = { module = "net.fabricmc.fabric-api:fabric-api", version.ref = "fabric_api" }
1615
fabric_language_kotlin = { module = "net.fabricmc:fabric-language-kotlin", version.ref = "fabric_language_kotlin" }
17-
sodium = { module = "maven.modrinth:sodium", version.ref = "sodium" }
16+
fabric_loader = { module = "net.fabricmc:fabric-loader", version.ref = "fabric_loader" }
17+
fmw = { module = "gay.asoji:fmw", version.ref = "fmw" }
18+
midnightlib = { module = "maven.modrinth:midnightlib", version.ref = "midnightlib" }
19+
mixinconstraints = { module = "com.moulberry:mixinconstraints", version.ref = "mixinconstraints" }
20+
mixinsquared = { module = "com.github.bawnorton.mixinsquared:mixinsquared-fabric", version.ref = "mixinsquared" }
21+
minecraft = { module = "com.mojang:minecraft", version.ref = "minecraft" }
1822
modmenu = { module = "com.terraformersmc:modmenu", version.ref = "modmenu" }
19-
yacl = { module = "dev.isxander:yet-another-config-lib", version.ref = "yacl" }
23+
sodium = { module = "maven.modrinth:sodium", version.ref = "sodium" }
2024

21-
# If you have multiple similar dependencies, you can declare a dependency bundle and reference it on the build script with "libs.bundles.example".
2225
[bundles]
23-
dev_mods = [ "sodium" ]
24-
dependencies = ["modmenu"]
26+
dev_mods = [ "sodium", "modmenu" ]
27+
dependencies = [ "midnightlib" ]
2528

2629
[plugins]
2730
grgit = { id = "org.ajoberstar.grgit", version = "5.2.2"}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
package one.devos.nautical.winterssummerfixes.config;
2+
3+
import eu.midnightdust.lib.config.MidnightConfig;
4+
5+
public class Config extends MidnightConfig {
6+
@Comment(category = "client", centered = true)
7+
public static String limitsGrapple;
8+
9+
@Entry(category = "client", isColor = true)
10+
public static String limitsGrappleHitColor = "#3333ff";
11+
12+
@Entry(category = "client", isColor = true)
13+
public static String limitsGrappleMissColor = "#99994c";
14+
}
Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,11 @@
11
package one.devos.nautical.winterssummerfixes.mixin.compat.client;
22

33
import com.bawnorton.mixinsquared.TargetHandler;
4-
import com.moulberry.mixinconstraints.annotations.IfModLoaded;
54
import net.minecraft.client.gui.Gui;
5+
import net.minecraft.util.FastColor;
66
import one.devos.nautical.winterssummerfixes.config.Config;
7-
import org.joml.Vector4f;
8-
import org.spongepowered.asm.mixin.Final;
7+
import one.devos.nautical.winterssummerfixes.utils.ConversionKt;
98
import org.spongepowered.asm.mixin.Mixin;
10-
import org.spongepowered.asm.mixin.Shadow;
119
import org.spongepowered.asm.mixin.injection.At;
1210
import org.spongepowered.asm.mixin.injection.ModifyArgs;
1311
import org.spongepowered.asm.mixin.injection.invoke.arg.Args;
@@ -18,24 +16,22 @@ public class LimitsGrappleInGameHudColorMixin {
1816
@TargetHandler(mixin = "io.github.moonlight_maya.limits_grapple.mixin.render.InGameHudMixin", name = "limits_grapple$drawHitResult")
1917
@ModifyArgs(method = "@MixinSquared:Handler", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/GuiGraphics;setColor(FFFF)V", ordinal = 0))
2018
private void modifyHitColor(Args args) {
21-
float[] hitColorFromConfig = Config.INSTANCE.getLimitsGrappleHitColor().getColorComponents(null);
22-
Vector4f hitColor = new Vector4f(hitColorFromConfig[0], hitColorFromConfig[1], hitColorFromConfig[2], 1f);
19+
int hitColor = ConversionKt.convertHexStringAsAnInt(Config.limitsGrappleHitColor);
2320

24-
args.set(0, hitColor.x);
25-
args.set(1, hitColor.y);
26-
args.set(2, hitColor.z);
27-
args.set(3, hitColor.w);
21+
args.set(0, FastColor.ARGB32.red(hitColor) / 255f);
22+
args.set(1, FastColor.ARGB32.green(hitColor) / 255f);
23+
args.set(2, FastColor.ARGB32.blue(hitColor) / 255f);
24+
args.set(3, FastColor.ARGB32.alpha(hitColor) / 255f);
2825
}
2926

3027
@TargetHandler(mixin = "io.github.moonlight_maya.limits_grapple.mixin.render.InGameHudMixin", name = "limits_grapple$drawHitResult")
3128
@ModifyArgs(method = "@MixinSquared:Handler", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/GuiGraphics;setColor(FFFF)V", ordinal = 1))
3229
private void modifyMissColor(Args args) {
33-
float[] missColorFromConfig = Config.INSTANCE.getLimitsGrappleMissColor().getColorComponents(null);
34-
Vector4f missColor = new Vector4f(missColorFromConfig[0], missColorFromConfig[1], missColorFromConfig[2], 1f);
30+
int missColor = ConversionKt.convertHexStringAsAnInt(Config.limitsGrappleMissColor);
3531

36-
args.set(0, missColor.x);
37-
args.set(1, missColor.y);
38-
args.set(2, missColor.z);
39-
args.set(3, missColor.w);
32+
args.set(0, FastColor.ARGB32.red(missColor) / 255f);
33+
args.set(1, FastColor.ARGB32.green(missColor) / 255f);
34+
args.set(2, FastColor.ARGB32.blue(missColor) / 255f);
35+
args.set(3, FastColor.ARGB32.alpha(missColor) / 255f);
4036
}
4137
}

src/main/kotlin/one/devos/nautical/winterssummerfixes/WintersSummerFixes.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
package one.devos.nautical.winterssummerfixes
22

3+
import eu.midnightdust.lib.config.MidnightConfig
34
import gay.asoji.fmw.FMW
45
import net.fabricmc.api.ModInitializer
6+
import one.devos.nautical.winterssummerfixes.config.Config
57
import org.slf4j.Logger
68
import org.slf4j.LoggerFactory
79

@@ -11,6 +13,7 @@ object WintersSummerFixes : ModInitializer {
1113
val MOD_NAME: String = FMW.getName(MOD_ID)
1214

1315
override fun onInitialize() {
16+
MidnightConfig.init(MOD_ID, Config::class.java)
1417
LOGGER.info("[${MOD_NAME}] Winter's Summer Fixes v${FMW.getVersion(MOD_ID)} loaded!")
1518
LOGGER.info("[${MOD_NAME}] Who let the gay cat furry into the server room? Get them out! Oh wait they have a wrench.")
1619
}

src/main/kotlin/one/devos/nautical/winterssummerfixes/config/Config.kt

Lines changed: 0 additions & 31 deletions
This file was deleted.

src/main/kotlin/one/devos/nautical/winterssummerfixes/config/ConfigModMenuIntegration.kt

Lines changed: 0 additions & 15 deletions
This file was deleted.

src/main/kotlin/one/devos/nautical/winterssummerfixes/config/ConfigScreens.kt

Lines changed: 0 additions & 45 deletions
This file was deleted.
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
package one.devos.nautical.winterssummerfixes.utils
2+
3+
fun convertHexStringAsAnInt(hexString: String): Int {
4+
return hexString.removePrefix("#").toInt(16)
5+
}
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"winterssummerfixes.midnightconfig.title": "Winter's Summer Fixes",
3+
"winterssummerfixes.midnightconfig.limitsGrapple" : "Limits' Grapple",
4+
"winterssummerfixes.midnightconfig.limitsGrappleHitColor": "Hit Color",
5+
"winterssummerfixes.midnightconfig.limitsGrappleMissColor": "Miss Color"
6+
}

0 commit comments

Comments
 (0)