@@ -60,29 +60,31 @@ abstract class AbstractHudElement(
60
60
private val chatSnapY = 15f
61
61
62
62
init {
63
- safeListener<TickEvent .ClientTickEvent > {
64
- if (it .phase != TickEvent .Phase .END || ! visible) return @safeListener
63
+ safeListener<TickEvent .ClientTickEvent > { event ->
64
+ if (event .phase != TickEvent .Phase .END || ! visible) return @safeListener
65
65
width = maxWidth
66
66
height = maxHeight
67
- if (Hud .chatSnap) {
68
- if (mc.currentScreen is GuiChat && ! chatSnapping) {
69
- val screenH = (mc.currentScreen as GuiChat ).height
70
- if (posY >= screenH - height - 3 && posX <= 3 && yShift == 0.0f ) {
71
- val prevPosYSnap = posY
72
- yShift = - chatSnapY
73
- snappedElements.clear()
74
- GuiManager .getHudElementOrNull(componentName)?.let { snappedElements.add(it) }
75
- chatSnapCheck(componentName, prevPosYSnap)
76
- chatSnapping = true
77
- }
78
- } else if (mc.currentScreen !is GuiChat && chatSnapping) {
79
- yShift = 0.0f
80
- for (element in snappedElements) {
81
- element.yShift = 0.0f
82
- }
67
+
68
+ if (! Hud .chatSnap) return @safeListener
69
+
70
+ val currentScreen = mc.currentScreen
71
+ if (currentScreen is GuiChat && ! chatSnapping) {
72
+ val screenH = currentScreen.height
73
+ if (posY >= screenH - height - 3 && posX <= 3 && yShift == 0.0f ) {
74
+ val prevPosYSnap = posY
75
+ yShift = - chatSnapY
83
76
snappedElements.clear()
84
- chatSnapping = false
77
+ GuiManager .getHudElementOrNull(componentName)?.let { snappedElements.add(it) }
78
+ chatSnapCheck(componentName, prevPosYSnap)
79
+ chatSnapping = true
80
+ }
81
+ } else if (currentScreen !is GuiChat && chatSnapping) {
82
+ yShift = 0.0f
83
+ snappedElements.forEach {
84
+ it.yShift = 0.0f
85
85
}
86
+ snappedElements.clear()
87
+ chatSnapping = false
86
88
}
87
89
}
88
90
}
0 commit comments