-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathedit_mode_draw.go
51 lines (43 loc) · 1.99 KB
/
edit_mode_draw.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
package main
import (
"fmt"
"github.com/hajimehoshi/ebiten/v2"
"github.com/hajimehoshi/ebiten/v2/text"
)
var EditTextBlink = 0
func (g *Game) EditModeDraw(screen *ebiten.Image) {
nameOptionOp := &ebiten.DrawImageOptions{}
nameOptionOp.GeoM.Scale(0.6, 0.6)
nameOptionOp.GeoM.Translate(2, 24)
text.DrawWithOptions(screen, fmt.Sprintf("(N) Name: %v", UInfo.Name), MyEpicGamerFont, nameOptionOp)
urlOptionOp := &ebiten.DrawImageOptions{}
urlOptionOp.GeoM.Scale(0.6, 0.6)
urlOptionOp.GeoM.Translate(2, 50)
text.DrawWithOptions(screen, fmt.Sprintf("(U) Leaderboard URL: %v", UInfo.LD_URL), MyEpicGamerFont, urlOptionOp)
passOptionOp := &ebiten.DrawImageOptions{}
passOptionOp.GeoM.Scale(0.6, 0.6)
passOptionOp.GeoM.Translate(2, 76)
text.DrawWithOptions(screen, fmt.Sprintf("(P) Leaderboard password: %v", UInfo.LD_Pass), MyEpicGamerFont, passOptionOp)
if editSelected == "" {
instructionsOp := &ebiten.DrawImageOptions{}
instructionsText := "press 'N', 'U', 'P' to edit or 'ESC' to save and exit"
instructionsTextSize := text.BoundString(MyEpicGamerFont, instructionsText)
instructionsOp.GeoM.Translate(float64(SCREENWIDTH/2-instructionsTextSize.Dx()/2), SCREENHEIGHT-200)
text.DrawWithOptions(screen, instructionsText, MyEpicGamerFont, instructionsOp)
} else {
t := g.EditText
if EditTextBlink%60 < 30 {
t += "_"
}
editTextOp := &ebiten.DrawImageOptions{}
editTextSize := text.BoundString(MyEpicGamerFont, g.EditText)
editTextOp.GeoM.Translate(float64(SCREENWIDTH/2-editTextSize.Dx()/2), SCREENHEIGHT-200)
editTextOp.GeoM.Scale(0.8, 0.8)
text.DrawWithOptions(screen, t, MyEpicGamerFont, editTextOp)
instructionsOp := &ebiten.DrawImageOptions{}
instructionsText := "press 'ESC' to cancel or 'ENTER' to confirm the changes"
instructionsTextSize := text.BoundString(MyEpicGamerFont, instructionsText)
instructionsOp.GeoM.Translate(float64(SCREENWIDTH/2-instructionsTextSize.Dx()/2), SCREENHEIGHT-20)
text.DrawWithOptions(screen, instructionsText, MyEpicGamerFont, instructionsOp)
}
}