mirror of
https://gitlab.bixilon.de/bixilon/minosoft.git
synced 2025-09-18 03:44:54 -04:00
hud: render block item textures
This commit is contained in:
parent
c0a2064080
commit
f2d8f28815
@ -25,12 +25,16 @@ import de.bixilon.minosoft.gui.rendering.gui.elements.Pollable
|
||||
import de.bixilon.minosoft.gui.rendering.gui.elements.VerticalAlignments
|
||||
import de.bixilon.minosoft.gui.rendering.gui.elements.VerticalAlignments.Companion.getOffset
|
||||
import de.bixilon.minosoft.gui.rendering.gui.elements.primitive.ColorElement
|
||||
import de.bixilon.minosoft.gui.rendering.gui.elements.primitive.ImageElement
|
||||
import de.bixilon.minosoft.gui.rendering.gui.elements.text.TextElement
|
||||
import de.bixilon.minosoft.gui.rendering.gui.hud.HUDRenderer
|
||||
import de.bixilon.minosoft.gui.rendering.gui.mesh.GUIVertexConsumer
|
||||
import de.bixilon.minosoft.gui.rendering.gui.mesh.GUIVertexOptions
|
||||
import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3iUtil.EMPTY
|
||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||
import de.bixilon.minosoft.util.KUtil
|
||||
import glm_.vec2.Vec2i
|
||||
import glm_.vec3.Vec3i
|
||||
|
||||
class ItemElement(
|
||||
hudRenderer: HUDRenderer,
|
||||
@ -61,14 +65,18 @@ class ItemElement(
|
||||
val countSize = countText.size
|
||||
countText.render(offset + Vec2i(HorizontalAlignments.RIGHT.getOffset(size.x, countSize.x), VerticalAlignments.BOTTOM.getOffset(size.y, countSize.y)), z + 1, consumer, options)
|
||||
|
||||
var element: Element? = null
|
||||
|
||||
var color = ChatColors.WHITE
|
||||
if (item.item is BlockItem) {
|
||||
item.item.block.defaultState.material.color?.let { color = it }
|
||||
val defaultState = item.item.block.defaultState
|
||||
defaultState.material.color?.let { color = it }
|
||||
defaultState.blockModel?.getParticleTexture(KUtil.RANDOM, Vec3i.EMPTY)?.let {
|
||||
element = ImageElement(hudRenderer, it)
|
||||
}
|
||||
}
|
||||
|
||||
val image = ColorElement(hudRenderer, _size, color)
|
||||
|
||||
image.render(offset, z + 1, consumer, options)
|
||||
(element ?: ColorElement(hudRenderer, _size, color)).render(offset, z + 1, consumer, options)
|
||||
|
||||
// ToDo: Render model
|
||||
return TextElement.LAYERS + 1
|
||||
|
Loading…
x
Reference in New Issue
Block a user