summaryrefslogtreecommitdiff
path: root/src/main/java/at/hannibal2/skyhanni/features/chat
diff options
context:
space:
mode:
authorhannibal2 <24389977+hannibal00212@users.noreply.github.com>2022-12-27 18:49:28 +0100
committerhannibal2 <24389977+hannibal00212@users.noreply.github.com>2022-12-27 18:49:28 +0100
commitf9dad248e60cb7c34caf2cf82ba0ad0a59e07f5a (patch)
tree6b4da8fc9d46d2dabb61922900416d033e50fd08 /src/main/java/at/hannibal2/skyhanni/features/chat
parent31df4b31ded78db6714e8b859b073ad4dce3c470 (diff)
downloadskyhanni-f9dad248e60cb7c34caf2cf82ba0ad0a59e07f5a.tar.gz
skyhanni-f9dad248e60cb7c34caf2cf82ba0ad0a59e07f5a.tar.bz2
skyhanni-f9dad248e60cb7c34caf2cf82ba0ad0a59e07f5a.zip
Add two more chat filter categories: Powder Mining and Winter Gifts
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/features/chat')
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/chat/ChatFilter.kt73
1 files changed, 63 insertions, 10 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/features/chat/ChatFilter.kt b/src/main/java/at/hannibal2/skyhanni/features/chat/ChatFilter.kt
index 742625fb7..963095215 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/chat/ChatFilter.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/chat/ChatFilter.kt
@@ -24,7 +24,9 @@ class ChatFilter {
empty(message) && SkyHanniMod.feature.chat.empty -> "empty"
warping(message) && SkyHanniMod.feature.chat.warping -> "warping"
welcome(message) && SkyHanniMod.feature.chat.welcome -> "welcome"
- guild(message) && SkyHanniMod.feature.chat.others -> "guild"
+ isGuildExp(message) && SkyHanniMod.feature.chat.guildExp -> "guild_exp"
+ friendJoin(message) && SkyHanniMod.feature.chat.friendJoinLeft -> "friend_join"
+
killCombo(message) && SkyHanniMod.feature.chat.others -> "kill_combo"
bazaarAndAHMiniMessages(message) && SkyHanniMod.feature.chat.others -> "bz_ah_minis"
watchdogAnnouncement(message) && SkyHanniMod.feature.chat.others -> "watchdog"
@@ -36,9 +38,11 @@ class ChatFilter {
money(message) && SkyHanniMod.feature.chat.others -> "money"
winterIsland(message) && SkyHanniMod.feature.chat.others -> "winter_island"
uselessWarning(message) && SkyHanniMod.feature.chat.others -> "useless_warning"
- friendJoin(message) && SkyHanniMod.feature.chat.others -> "friend_join"
annoyingSpam(message) && SkyHanniMod.feature.chat.others -> "annoying_spam"
+ isWinterGift(message) && SkyHanniMod.feature.chat.winterGift -> "winter_gift"
+ isPowderMining(message) && SkyHanniMod.feature.chat.powderMining -> "powder_mining"
+
else -> ""
}
@@ -142,7 +146,6 @@ class ChatFilter {
}
private fun party(message: String): Boolean {
- if (message == "§9§m-----------------------------") return true
if (message == "§9§m-----------------------------------------------------") return true
return false
@@ -278,13 +281,10 @@ class ChatFilter {
else -> false
}
- private fun guild(message: String): Boolean = when {
- message.matchRegex("§2Guild > (.*) §r§e(joined|left).") -> true
- message.matchRegex("§aYou earned §r§2\\d+ GEXP §r§afrom playing SkyBlock!") -> true
- message.matchRegex("§aYou earned §r§2(\\d|,)+ GEXP §r§a\\+ §r§[e5](\\d|,)+ Event EXP §r§afrom playing SkyBlock!") -> true
- message == "§b§m-----------------------------------------------------" -> true
- else -> false
- }
+ private fun isGuildExp(message: String) =
+ // §aYou earned §r§22 GEXP §r§afrom playing SkyBlock!
+ // §aYou earned §r§22 GEXP §r§a+ §r§c210 Event EXP §r§afrom playing SkyBlock!
+ message.matchRegex("§aYou earned §r§2.* GEXP (§r§a\\+ §r§.* Event EXP )?§r§afrom playing SkyBlock!")
private fun welcome(message: String): Boolean = message == "§eWelcome to §r§aHypixel SkyBlock§r§e!"
@@ -319,4 +319,57 @@ class ChatFilter {
else -> false
}
+
+ private fun isWinterGift(message: String): Boolean = when {
+ //winter gifts useless
+ message.matchRegex("§f§lCOMMON! §r§3.* XP §r§egift with §r.*§r§e!") -> true
+ message.matchRegex("(§f§lCOMMON|§9§lRARE)! §r.* XP Boost .* Potion §r.*§r§e!") -> true
+ message.matchRegex("(§f§lCOMMON|§9§lRARE)! §r§6.* coins §r§egift with §r.*§r§e!") -> true
+
+ //enchanted book
+ message.matchRegex("§9§lRARE! §r§9Scavenger IV §r§egift with §r.*§r§e!") -> true
+ message.matchRegex("§9§lRARE! §r§9Looting IV §r§egift with §r.*§r§e!") -> true
+ message.matchRegex("§9§lRARE! §r§9Luck VI §r§egift with §r.*§r§e!") -> true
+
+ message.matchRegex("§e§lSWEET! §r§f(Grinch|Santa|Gingerbread Man) Minion Skin §r§egift with §r.*§r§e!") -> true
+ message.matchRegex("§9§lRARE! §r§f◆ Ice Rune §r§egift with §r.*§r§e!") -> true
+
+ //furniture
+ message.matchRegex("§e§lSWEET! §r§fTall Holiday Tree §r§egift with §r.*§r§e!") -> true
+ message.matchRegex("§e§lSWEET! §r§fNutcracker §r§egift with §r.*§r§e!") -> true
+ message.matchRegex("§e§lSWEET! §r§fPresent Stack §r§egift with §r.*§r§e!") -> true
+
+ message.matchRegex("§e§lSWEET! §r§9(Winter|Battle) Disc §r§egift with §r.*§r§e!") -> true
+
+ //winter gifts a bit useful
+ message.matchRegex("§e§lSWEET! §r§9Winter Sack §r§egift with §r.*§r§e!") -> true
+ message.matchRegex("§e§lSWEET! §r§5Snow Suit .* §r§egift with §r.*§r§e!") -> true
+
+ //winter gifts not your gifts
+ message.matchRegex("§cThis gift is for §r.*§r§c, sorry!") -> true
+
+ else -> false
+ }
+
+ private fun isPowderMining(message: String) = when {
+ message.matchRegex("§cYou need a stronger tool to mine (Amethyst|Ruby|Jade|Amber|Sapphire) Gemstone Block§r§c.") -> true
+
+ message.matchRegex("§aYou received §r§f\\d* §r§f[❤❈☘⸕✎] §r§fRough (Ruby|Amethyst|Jade|Amber|Sapphire) Gemstone§r§a\\.") -> true
+ message.matchRegex("§aYou received §r§f\\d §r§a[❤❈☘⸕✎] §r§aFlawed (Ruby|Amethyst|Jade|Amber|Sapphire) Gemstone§r§a\\.") -> true
+
+
+ message == "§aYou uncovered a treasure chest!" -> true
+ message == "§aYou received §r§f1 §r§aWishing Compass§r§a." -> true
+ message == "§aYou received §r§f1 §r§9Ascension Rope§r§a." -> true
+
+ //Jungle
+ message.matchRegex("§aYou received §r§f\\d* §r§aSludge Juice§r§a\\.") -> true
+ message == "§aYou received §r§f1 §r§aOil Barrel§r§a." -> true
+
+ //Useful, maybe in another chat
+ message.matchRegex("§aYou received §r§b\\+\\d{1,3} §r§a(Mithril|Gemstone) Powder") -> true
+ message == "§6You have successfully picked the lock on this chest!" -> true
+
+ else -> false
+ }
}