diff options
| author | Kevin <92656833+kevinthegreat1@users.noreply.github.com> | 2024-01-11 04:25:18 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-01-10 15:25:18 -0500 |
| commit | 52e4ce7fe81bb2af8af102b0270c0eac12a34f48 (patch) | |
| tree | 8347ce567c830124fb7035693d607c7e9d630285 /src/main/java/de/hysky/skyblocker/skyblock | |
| parent | 54bfef4b1e2d9d2b3abd1649bf01d7856adf7ad4 (diff) | |
| download | Skyblocker-52e4ce7fe81bb2af8af102b0270c0eac12a34f48.tar.gz Skyblocker-52e4ce7fe81bb2af8af102b0270c0eac12a34f48.tar.bz2 Skyblocker-52e4ce7fe81bb2af8af102b0270c0eac12a34f48.zip | |
Add dungeon score title and sound (#480)
Diffstat (limited to 'src/main/java/de/hysky/skyblocker/skyblock')
| -rw-r--r-- | src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonScore.java | 31 |
1 files changed, 26 insertions, 5 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonScore.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonScore.java index cef5efa1..d67d6988 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonScore.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonScore.java @@ -8,6 +8,8 @@ import de.hysky.skyblocker.utils.Utils; import de.hysky.skyblocker.utils.scheduler.MessageScheduler; import de.hysky.skyblocker.utils.scheduler.Scheduler; import net.fabricmc.fabric.api.client.networking.v1.ClientPlayConnectionEvents; +import net.minecraft.client.MinecraftClient; +import net.minecraft.sound.SoundEvents; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -24,7 +26,8 @@ public class DungeonScore { } public static void tick() { - if (!Utils.isInDungeons()) { + MinecraftClient client = MinecraftClient.getInstance(); + if (!Utils.isInDungeons() || client.player == null) { reset(); return; } @@ -36,12 +39,30 @@ public class DungeonScore { } int score = Integer.parseInt(dungeonClearedMatcher.group("score")); if (!DungeonManager.isInBoss()) score += 28; - if (CONFIG.enableDungeonScore270 && !sent270 && score >= 270 && score < 300) { - MessageScheduler.INSTANCE.sendMessageAfterCooldown(Constants.PREFIX.get().getString() + CONFIG.dungeonScore270Message.replaceAll("\\[score]", "270")); + if (!sent270 && score >= 270 && score < 300) { + if (CONFIG.enableDungeonScore270Message) { + MessageScheduler.INSTANCE.sendMessageAfterCooldown(Constants.PREFIX.get().getString() + CONFIG.dungeonScore270Message.replaceAll("\\[score]", "270")); + } + if (CONFIG.enableDungeonScore270Title) { + client.inGameHud.setDefaultTitleFade(); + client.inGameHud.setTitle(Constants.PREFIX.get().append(CONFIG.dungeonScore270Message.replaceAll("\\[score]", "270"))); + } + if (CONFIG.enableDungeonScore270Sound) { + client.player.playSound(SoundEvents.BLOCK_NOTE_BLOCK_PLING.value(), 100f, 0.1f); + } sent270 = true; } - if (CONFIG.enableDungeonScore300 && !sent300 && score >= 300) { - MessageScheduler.INSTANCE.sendMessageAfterCooldown(Constants.PREFIX.get().getString() + CONFIG.dungeonScore300Message.replaceAll("\\[score]", "300")); + if (!sent300 && score >= 300) { + if (CONFIG.enableDungeonScore300Message) { + MessageScheduler.INSTANCE.sendMessageAfterCooldown(Constants.PREFIX.get().getString() + CONFIG.dungeonScore300Message.replaceAll("\\[score]", "300")); + } + if (CONFIG.enableDungeonScore300Title) { + client.inGameHud.setDefaultTitleFade(); + client.inGameHud.setTitle(Constants.PREFIX.get().append(CONFIG.dungeonScore300Message.replaceAll("\\[score]", "300"))); + } + if (CONFIG.enableDungeonScore300Sound) { + client.player.playSound(SoundEvents.BLOCK_NOTE_BLOCK_PLING.value(), 100f, 0.1f); + } sent300 = true; } break; |
