blob: 75616520f8ffd89378b5d80f0b2d67d68b0b4c35 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
package at.hannibal2.skyhanni.data
import at.hannibal2.skyhanni.events.LorenzChatEvent
import at.hannibal2.skyhanni.events.player.PlayerDeathEvent
import at.hannibal2.skyhanni.skyhannimodule.SkyHanniModule
import at.hannibal2.skyhanni.utils.RegexUtils.matchMatcher
import at.hannibal2.skyhanni.utils.StringUtils.removeColor
import at.hannibal2.skyhanni.utils.repopatterns.RepoPattern
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
@SkyHanniModule
object PlayerDeathManager {
/**
* REGEX-TEST: §c ☠ §r§7§r§bZeroHazel§r§7 was killed by §r§8§lAshfang§r§7§r§7.
*/
private val deathMessagePattern by RepoPattern.pattern(
"chat.player.death",
"§c ☠ §r§7§r§.(?<name>.+)§r§7 (?<reason>.+)",
)
@SubscribeEvent
fun onChat(event: LorenzChatEvent) {
val message = event.message
deathMessagePattern.matchMatcher(message) {
val name = group("name")
val reason = group("reason").removeColor()
PlayerDeathEvent(name, reason, event).postAndCatch()
}
}
}
|