diff options
Diffstat (limited to 'src/main/kotlin/moe/nea/firmament/events')
-rw-r--r-- | src/main/kotlin/moe/nea/firmament/events/ProcessChatEvent.kt | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/main/kotlin/moe/nea/firmament/events/ProcessChatEvent.kt b/src/main/kotlin/moe/nea/firmament/events/ProcessChatEvent.kt index 413c209..b1b66b0 100644 --- a/src/main/kotlin/moe/nea/firmament/events/ProcessChatEvent.kt +++ b/src/main/kotlin/moe/nea/firmament/events/ProcessChatEvent.kt @@ -6,8 +6,8 @@ package moe.nea.firmament.events -import moe.nea.firmament.util.unformattedString import net.minecraft.text.Text +import moe.nea.firmament.util.unformattedString /** * Behaves like [AllowChatEvent], but is triggered even when cancelled by other mods. Intended for data collection. @@ -16,6 +16,13 @@ import net.minecraft.text.Text data class ProcessChatEvent(val text: Text, val wasExternallyCancelled: Boolean) : FirmamentEvent.Cancellable() { val unformattedString = text.unformattedString + val nameHeuristic: String? = run { + val firstColon = unformattedString.indexOf(':') + if (firstColon < 0) return@run null + val firstSpace = unformattedString.lastIndexOf(' ', firstColon) + unformattedString.substring(firstSpace + 1 until firstColon).takeIf { it.isNotEmpty() } + } + init { if (wasExternallyCancelled) cancelled = true |