diff options
| author | nea <nea@nea.moe> | 2023-10-05 17:33:20 +0200 |
|---|---|---|
| committer | nea <nea@nea.moe> | 2023-10-05 17:33:20 +0200 |
| commit | f1f682aa8d3ac5252411568c3a14da275b819d42 (patch) | |
| tree | 63336639051fb3f74c1c674082ebb3602d54f1ff /src/main | |
| parent | 0516a4be0c93d6a82dc23ba074a5ee6c6b8c181f (diff) | |
| download | DulkirMod-Fabric-f1f682aa8d3ac5252411568c3a14da275b819d42.tar.gz DulkirMod-Fabric-f1f682aa8d3ac5252411568c3a14da275b819d42.tar.bz2 DulkirMod-Fabric-f1f682aa8d3ac5252411568c3a14da275b819d42.zip | |
Port to 1.20.2
Diffstat (limited to 'src/main')
4 files changed, 20 insertions, 25 deletions
diff --git a/src/main/java/com/dulkirfabric/mixin/render/GameRendererMixin.java b/src/main/java/com/dulkirfabric/mixin/render/GameRendererMixin.java index 78b4dbd..18abbe6 100644 --- a/src/main/java/com/dulkirfabric/mixin/render/GameRendererMixin.java +++ b/src/main/java/com/dulkirfabric/mixin/render/GameRendererMixin.java @@ -2,6 +2,7 @@ package com.dulkirfabric.mixin.render; import com.dulkirfabric.features.InventoryScale; +import com.llamalad7.mixinextras.sugar.Local; import net.minecraft.client.gui.DrawContext; import net.minecraft.client.render.GameRenderer; import net.minecraft.client.util.Window; @@ -37,9 +38,8 @@ public class GameRendererMixin { opcode = Opcodes.GETFIELD, target = "Lnet/minecraft/client/MinecraftClient;currentScreen:Lnet/minecraft/client/gui/screen/Screen;", shift = At.Shift.BEFORE, - ordinal = 1), locals = LocalCapture.CAPTURE_FAILHARD) - public void onScreenRenderPre(float tickDelta, long startTime, boolean tick, CallbackInfo ci, int i, int j, - Window window, Matrix4f matrix4f, MatrixStack matrixStack, DrawContext drawContext) { + ordinal = 1)) + public void onScreenRenderPre(float tickDelta, long startTime, boolean tick, CallbackInfo ci, @Local DrawContext drawContext) { drawContext.getMatrices().push(); drawContext.getMatrices().scale(InventoryScale.INSTANCE.getScale(), InventoryScale.INSTANCE.getScale(), 1f); } @@ -49,10 +49,9 @@ public class GameRendererMixin { opcode = Opcodes.GETFIELD, target = "Lnet/minecraft/client/MinecraftClient;currentScreen:Lnet/minecraft/client/gui/screen/Screen;", shift = At.Shift.AFTER, - ordinal = 3), locals = LocalCapture.CAPTURE_FAILHARD + ordinal = 3) ) - public void onScreenRenderPost(float tickDelta, long startTime, boolean tick, CallbackInfo ci, int i, int j, - Window window, Matrix4f matrix4f, MatrixStack matrixStack, DrawContext drawContext) { + public void onScreenRenderPost(float tickDelta, long startTime, boolean tick, CallbackInfo ci, @Local DrawContext drawContext) { drawContext.getMatrices().pop(); } }
\ No newline at end of file diff --git a/src/main/kotlin/com/dulkirfabric/util/ScoreBoardUtils.kt b/src/main/kotlin/com/dulkirfabric/util/ScoreBoardUtils.kt index c62cbab..35166d2 100644 --- a/src/main/kotlin/com/dulkirfabric/util/ScoreBoardUtils.kt +++ b/src/main/kotlin/com/dulkirfabric/util/ScoreBoardUtils.kt @@ -5,6 +5,7 @@ import com.dulkirfabric.events.LongUpdateEvent import com.dulkirfabric.events.PlaySoundEvent import com.dulkirfabric.events.SlayerBossEvents import meteordevelopment.orbit.EventHandler +import net.minecraft.scoreboard.ScoreboardDisplaySlot import net.minecraft.scoreboard.Team import net.minecraft.text.StringVisitable import net.minecraft.text.Style @@ -21,15 +22,19 @@ object ScoreBoardUtils { * Gets Scoreboard lines, will return null if not in Skyblock. */ fun getLines(): MutableList<String>? { + return getLines { it.string.replace("§.".toRegex(), "") } + } + + fun getLines(textMapper: (Text) -> String): MutableList<String>? { val scoreboard = DulkirModFabric.mc.player?.scoreboard ?: return null // This returns null if we're not in skyblock curiously - val sidebarObjective = scoreboard.getObjective("SBScoreboard") ?: return null + val sidebarObjective = scoreboard.getObjectiveForSlot(ScoreboardDisplaySlot.SIDEBAR) ?: return null + if (sidebarObjective.name != "SBScoreboard") return null val scores = scoreboard.getAllPlayerScores(sidebarObjective) val lines: MutableList<String> = ArrayList() for (score in scores.reversed()) { val team = scoreboard.getPlayerTeam(score.playerName) - var str = Team.decorateName(team, Text.literal(score.playerName)).string - .replace("§[^a-f0-9]".toRegex(), "") + var str = textMapper(Team.decorateName(team, Text.literal(score.playerName))) lines.add(str) } return lines @@ -40,16 +45,7 @@ object ScoreBoardUtils { * namely effigy display for now - but might be useful later? Who knows. */ fun getLinesWithColor(): MutableList<String>? { - val scoreboard = DulkirModFabric.mc.player?.scoreboard ?: return null - // This returns null if we're not in skyblock curiously - val sidebarObjective = scoreboard.getObjective("SBScoreboard") ?: return null - val scores = scoreboard.getAllPlayerScores(sidebarObjective) - val lines: MutableList<String> = ArrayList() - for (score in scores.reversed()) { - val team = scoreboard.getPlayerTeam(score.playerName) - lines.add(Team.decorateName(team, Text.literal(score.playerName)).formattedString()) - } - return lines + return getLines { it.formattedString() } } /** @@ -97,7 +93,7 @@ object ScoreBoardUtils { if (event.sound.id.path != "entity.wither.shoot") return if (event.sound.pitch != 0.6984127f) return if (event.sound.volume != .5f) return - SlayerBossEvents.Spawn(slayerType?: return err()).post() + SlayerBossEvents.Spawn(slayerType ?: return err()).post() } fun err() { diff --git a/src/main/kotlin/com/dulkirfabric/util/Utils.kt b/src/main/kotlin/com/dulkirfabric/util/Utils.kt index a0fec78..3a93e5f 100644 --- a/src/main/kotlin/com/dulkirfabric/util/Utils.kt +++ b/src/main/kotlin/com/dulkirfabric/util/Utils.kt @@ -74,6 +74,6 @@ object Utils { fun getSkullTexture(itemStack: ItemStack): String? { return itemStack.getSubNbt(SkullBlockEntity.SKULL_OWNER_KEY)?.let(NbtHelper::toGameProfile)?.properties?.get( - PlayerSkinProvider.TEXTURES)?.first()?.value + "textures")?.first()?.value } }
\ No newline at end of file diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index fabcfeb..bf78049 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -35,10 +35,10 @@ "dulkirmod-fabric.mixins.json" ], "depends": { - "fabricloader": ">=0.14.21", - "minecraft": "~1.20.1", - "java": ">=17", - "fabric-api": ">=0.86.0+1.20.1", + "fabricloader": ">=${fabric_loader_version}", + "minecraft": "~${minecraft_version}", + "java": ">=${java_version}", + "fabric-api": ">=${fabric_api_version}", "fabric-language-kotlin": ">=1.8.21" }, "suggests": { |
