center description
This commit is contained in:
parent
35057ec8a6
commit
daa5e41551
@ -5,12 +5,15 @@ import (
|
||||
"image/color"
|
||||
"openquell/assets"
|
||||
"openquell/observers"
|
||||
"strings"
|
||||
|
||||
"github.com/hajimehoshi/ebiten/v2"
|
||||
"github.com/mlange-42/arche/ecs"
|
||||
"github.com/solarlune/ldtkgo"
|
||||
)
|
||||
|
||||
const MaxLetters int = 52
|
||||
|
||||
type HudSystem struct {
|
||||
World *ecs.World
|
||||
Cellsize int
|
||||
@ -46,14 +49,17 @@ func (system *HudSystem) Draw(screen *ebiten.Image) {
|
||||
*/
|
||||
|
||||
score := fmt.Sprintf("Score: %d", system.Observer.GetScore())
|
||||
level := fmt.Sprintf("Level %d %s", system.Plan.PropertyByIdentifier("level").AsInt(),
|
||||
system.Plan.Identifier)
|
||||
level := fmt.Sprintf("Level %d: %s", system.Plan.PropertyByIdentifier("level").AsInt(),
|
||||
strings.ReplaceAll(system.Plan.Identifier, "_", " "))
|
||||
|
||||
assets.FontRenderer.Renderer.SetSizePx(20)
|
||||
assets.FontRenderer.Renderer.SetTarget(screen)
|
||||
|
||||
system.Print(score, 515, 22)
|
||||
system.Print(system.Plan.PropertyByIdentifier("description").AsString(), 10, 470)
|
||||
des := system.Plan.PropertyByIdentifier("description").AsString()
|
||||
x := system.GetTextXCentered(des)
|
||||
|
||||
system.Print(system.Plan.PropertyByIdentifier("description").AsString(), x, 470)
|
||||
system.Print(level, 10, 22)
|
||||
}
|
||||
|
||||
@ -66,3 +72,10 @@ func (system *HudSystem) Print(text string, x, y int) {
|
||||
assets.FontRenderer.Renderer.SetColor(fg)
|
||||
assets.FontRenderer.Renderer.Draw(text, x-1, y-1)
|
||||
}
|
||||
|
||||
func (system *HudSystem) GetTextXCentered(text string) int {
|
||||
size := len(text)
|
||||
lettersize := system.Observer.Width / MaxLetters
|
||||
descsize := lettersize * size
|
||||
return system.Observer.Width/2 - descsize/2
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user