improve BreakProgressHUDElement, fix position in EntityRaycastHit

This commit is contained in:
Bixilon 2021-09-18 23:37:07 +02:00
parent e7d924817b
commit 04c154d42d
No known key found for this signature in database
GPG Key ID: 5CAD791931B09AC4
2 changed files with 9 additions and 1 deletions

View File

@ -24,16 +24,23 @@ import glm_.vec2.Vec2i
class BreakProgressHUDElement(hudRenderer: HUDRenderer) : HUDElement<TextElement>(hudRenderer) {
override val layout: TextElement = TextElement(hudRenderer, "")
private val leftClickHandler = hudRenderer.renderWindow.inputHandler.leftClickHandler
override val layoutOffset: Vec2i
get() = Vec2i((hudRenderer.scaledSize.x / 2) + CrosshairHUDElement.CROSSHAIR_SIZE / 2 + 5, (hudRenderer.scaledSize.y - layout.size.y) / 2)
private var lastPercent = -1
override fun draw() {
val breakProgress = leftClickHandler.breakProgress
if (breakProgress <= 0 || breakProgress >= 1.0) {
layout.text = ""
lastPercent = -1
return
}
val percent = (leftClickHandler.breakProgress * 100).toInt()
if (percent == lastPercent) {
return
}
val text = TextComponent("$percent%")
text.color = when {
percent <= 30 -> ChatColors.RED
@ -41,6 +48,7 @@ class BreakProgressHUDElement(hudRenderer: HUDRenderer) : HUDElement<TextElement
else -> ChatColors.GREEN
}
layout.text = text
lastPercent = percent
}
companion object : HUDBuilder<BreakProgressHUDElement> {

View File

@ -35,7 +35,7 @@ class EntityRaycastHit(
val text = BaseComponent()
text += "Entity target "
text += position
text += entity.position
text += ": "
text += entity.entityType.resourceLocation