summaryrefslogtreecommitdiff
path: root/src/main/kotlin/util/minecrat/infer.kt
blob: 479b18671bc18fbe2289bf348986abfdb3288ff3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
@file:OptIn(ExperimentalContracts::class)

package moe.nea.ultranotifier.util.minecrat

import moe.nea.ultranotifier.datamodel.HasCategorizedChatLine
import net.minecraft.client.gui.hud.ChatHud
import net.minecraft.client.gui.hud.ChatHudLine
import kotlin.contracts.ExperimentalContracts
import kotlin.contracts.contract

interface AccessorChatHud {
	val lineHeight_ultranotifier: Int
}

fun ChatHud.accessor(): AccessorChatHud {
	contract {
		returns() implies (this@accessor is AccessorChatHud)
	}
	return this as AccessorChatHud
}

val ChatHudLine.category get() = (this as HasCategorizedChatLine).categorizedChatLine_ultraNotifier