add debug mode for drawing either minimap or palette
This commit is contained in:
parent
90f9eb43b2
commit
3f65829e43
1 changed files with 24 additions and 3 deletions
27
main.go
27
main.go
|
|
@ -12,12 +12,20 @@ import (
|
||||||
"github.com/veandco/go-sdl2/sdl"
|
"github.com/veandco/go-sdl2/sdl"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type DebugMode int
|
||||||
|
|
||||||
|
const (
|
||||||
|
DebugMode_NONE DebugMode = iota
|
||||||
|
DebugMode_MINIMAP
|
||||||
|
DebugMode_PALETTE
|
||||||
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
gfxContext *graphics.Context
|
gfxContext *graphics.Context
|
||||||
player Player
|
player Player
|
||||||
level *world.Level
|
level *world.Level
|
||||||
startOfFrame time.Time
|
startOfFrame time.Time
|
||||||
drawMinimap bool
|
debugMode DebugMode
|
||||||
)
|
)
|
||||||
|
|
||||||
func loadLevel(newLevel *world.Level) {
|
func loadLevel(newLevel *world.Level) {
|
||||||
|
|
@ -40,8 +48,18 @@ func update() bool {
|
||||||
case *sdl.KeyboardEvent:
|
case *sdl.KeyboardEvent:
|
||||||
if ev.Type == sdl.KEYDOWN {
|
if ev.Type == sdl.KEYDOWN {
|
||||||
switch ev.Keysym.Sym {
|
switch ev.Keysym.Sym {
|
||||||
|
case sdl.K_p:
|
||||||
|
if debugMode != DebugMode_PALETTE {
|
||||||
|
debugMode = DebugMode_PALETTE
|
||||||
|
} else {
|
||||||
|
debugMode = DebugMode_NONE
|
||||||
|
}
|
||||||
case sdl.K_m:
|
case sdl.K_m:
|
||||||
drawMinimap = !drawMinimap
|
if debugMode != DebugMode_MINIMAP {
|
||||||
|
debugMode = DebugMode_MINIMAP
|
||||||
|
} else {
|
||||||
|
debugMode = DebugMode_NONE
|
||||||
|
}
|
||||||
case sdl.K_ESCAPE:
|
case sdl.K_ESCAPE:
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
@ -89,9 +107,12 @@ func main() {
|
||||||
}
|
}
|
||||||
|
|
||||||
render.DrawScene(gfxContext, player.Transform, level)
|
render.DrawScene(gfxContext, player.Transform, level)
|
||||||
if drawMinimap {
|
if debugMode == DebugMode_MINIMAP {
|
||||||
render.DrawMiniMap(gfxContext, player.Transform, level)
|
render.DrawMiniMap(gfxContext, player.Transform, level)
|
||||||
}
|
}
|
||||||
|
if debugMode == DebugMode_PALETTE {
|
||||||
|
render.DrawPalette(gfxContext, 16, 16)
|
||||||
|
}
|
||||||
gfxContext.Sync()
|
gfxContext.Sync()
|
||||||
|
|
||||||
elapsed := time.Since(startOfFrame)
|
elapsed := time.Since(startOfFrame)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue