diff options
author | raaaaaven <168305416+raaaaaven@users.noreply.github.com> | 2024-07-28 11:21:27 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-07-28 12:21:27 +0200 |
commit | 32d3a6ae845475284cc5f72dac5649d732c223b5 (patch) | |
tree | df3f67f204ca5ad02ab6266c4d597fedd04aa872 /src/main | |
parent | b75c249c2b5f6a319c076b6dfbb4ae9003814fe1 (diff) | |
download | skyhanni-32d3a6ae845475284cc5f72dac5649d732c223b5.tar.gz skyhanni-32d3a6ae845475284cc5f72dac5649d732c223b5.tar.bz2 skyhanni-32d3a6ae845475284cc5f72dac5649d732c223b5.zip |
Feature: Thunder Bottle Charged Notification (#2234)
Co-authored-by: Thunderblade73 <85900443+Thunderblade73@users.noreply.github.com>
Co-authored-by: hannibal2 <24389977+hannibal00212@users.noreply.github.com>
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/java/at/hannibal2/skyhanni/config/features/misc/MiscConfig.java | 6 | ||||
-rw-r--r-- | src/main/java/at/hannibal2/skyhanni/features/misc/ThunderBottleNotification.kt | 32 |
2 files changed, 38 insertions, 0 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/config/features/misc/MiscConfig.java b/src/main/java/at/hannibal2/skyhanni/config/features/misc/MiscConfig.java index aff9b4964..6843d0948 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/features/misc/MiscConfig.java +++ b/src/main/java/at/hannibal2/skyhanni/config/features/misc/MiscConfig.java @@ -273,6 +273,12 @@ public class MiscConfig { public boolean replaceRomanNumerals = false; @Expose + @ConfigOption(name = "Thunder Bottle", desc = "Show a notification when your Thunder Bottle is fully charged.") + @ConfigEditorBoolean + @FeatureToggle + public boolean thunderBottleNotification = true; + + @Expose @ConfigOption(name = "Unknown Perkpocalypse Mayor Warning", desc = "Show a warning when the Unknown Perkpocalypse Mayor is unknown.") @ConfigEditorBoolean @FeatureToggle diff --git a/src/main/java/at/hannibal2/skyhanni/features/misc/ThunderBottleNotification.kt b/src/main/java/at/hannibal2/skyhanni/features/misc/ThunderBottleNotification.kt new file mode 100644 index 000000000..681f1a0dd --- /dev/null +++ b/src/main/java/at/hannibal2/skyhanni/features/misc/ThunderBottleNotification.kt @@ -0,0 +1,32 @@ +package at.hannibal2.skyhanni.features.misc + +import at.hannibal2.skyhanni.SkyHanniMod +import at.hannibal2.skyhanni.events.LorenzChatEvent +import at.hannibal2.skyhanni.skyhannimodule.SkyHanniModule +import at.hannibal2.skyhanni.utils.LorenzUtils +import at.hannibal2.skyhanni.utils.RegexUtils.matches +import at.hannibal2.skyhanni.utils.repopatterns.RepoPattern +import net.minecraftforge.fml.common.eventhandler.SubscribeEvent +import kotlin.time.Duration.Companion.seconds + +@SkyHanniModule +object ThunderBottleNotification { + + private val config get() = SkyHanniMod.feature.misc + + private val thunderBottleChargedPattern by RepoPattern.pattern( + "thunderbottle.charged", + "§e> Your bottle of thunder has fully charged!", + ) + + @SubscribeEvent + fun onChat(event: LorenzChatEvent) { + if (!isEnabled()) return + + if (thunderBottleChargedPattern.matches(event.message)) { + LorenzUtils.sendTitle("§eThunder Bottle Charged!", 3.seconds) + } + } + + private fun isEnabled() = LorenzUtils.inSkyBlock && config.thunderBottleNotification +} |