assets -> game, and no embed for native

This commit is contained in:
Josh Deprez 2021-08-25 14:25:45 +10:00
parent 94b9711e4b
commit 7d4912187c
7 changed files with 23 additions and 8 deletions

View file

Before

Width:  |  Height:  |  Size: 201 B

After

Width:  |  Height:  |  Size: 201 B

View file

Before

Width:  |  Height:  |  Size: 605 B

After

Width:  |  Height:  |  Size: 605 B

View file

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View file

Before

Width:  |  Height:  |  Size: 472 KiB

After

Width:  |  Height:  |  Size: 472 KiB

11
game/assets_js.go Normal file
View file

@ -0,0 +1,11 @@
//go:build js
// +build js
package game
// TODO: make io/fs wrapper for ebitenutil.OpenFile ?
import "embed"
//go:embed assets
var Assets embed.FS

8
game/assets_notjs.go Normal file
View file

@ -0,0 +1,8 @@
//go:build !js
// +build !js
package game
import "os"
var Assets = os.DirFS("game/")

12
main.go
View file

@ -1,7 +1,6 @@
package main package main
import ( import (
"embed"
"image" "image"
"image/color" "image/color"
_ "image/png" _ "image/png"
@ -12,9 +11,6 @@ import (
"github.com/hajimehoshi/ebiten/v2" "github.com/hajimehoshi/ebiten/v2"
) )
//go:embed assets
var assets embed.FS
func main() { func main() {
ebiten.SetWindowResizable(true) ebiten.SetWindowResizable(true)
ebiten.SetWindowSize(640, 480) ebiten.SetWindowSize(640, 480)
@ -111,7 +107,7 @@ func main() {
}, },
} }
game := &engine.Game{ g := &engine.Game{
ScreenHeight: 240, ScreenHeight: 240,
ScreenWidth: 320, ScreenWidth: 320,
Root: &engine.Scene{ Root: &engine.Scene{
@ -131,12 +127,12 @@ func main() {
}, },
}, },
} }
if err := game.Load(assets); err != nil { if err := g.Load(game.Assets); err != nil {
log.Fatalf("Loading error: %v", err) log.Fatalf("Loading error: %v", err)
} }
game.Prepare() g.Prepare()
if err := ebiten.RunGame(game); err != nil { if err := ebiten.RunGame(g); err != nil {
log.Fatalf("Game error: %v", err) log.Fatalf("Game error: %v", err)
} }
} }