...
1 package etk_test
2
3 import (
4 "bytes"
5 "log"
6
7 "codeberg.org/tslocum/etk"
8 "github.com/hajimehoshi/ebiten/v2"
9 "github.com/hajimehoshi/ebiten/v2/examples/resources/fonts"
10 "github.com/hajimehoshi/ebiten/v2/text/v2"
11 )
12
13 type game struct{}
14
15 func newGame() *game {
16
17 source, err := text.NewGoTextFaceSource(bytes.NewReader(fonts.MPlus1pRegular_ttf))
18 if err != nil {
19 log.Fatal(err)
20 }
21 etk.Style.TextFont = source
22
23 g := &game{}
24 return g
25 }
26
27 func (g *game) Layout(outsideWidth, outsideHeight int) (screenWidth, screenHeight int) {
28 return etk.Layout(outsideWidth, outsideHeight)
29 }
30
31 func (g *game) Update() error {
32 return etk.Update()
33 }
34
35 func (g *game) Draw(screen *ebiten.Image) {
36 err := etk.Draw(screen)
37 if err != nil {
38 log.Fatal(err)
39 }
40 }
41
42
43 func Example() {
44
45 g := newGame()
46
47
48 t := etk.NewText("Hello, world!")
49
50
51 etk.SetRoot(t)
52
53
54 err := ebiten.RunGame(g)
55 if err != nil {
56 log.Fatal(err)
57 }
58 }
59
View as plain text