Make animations work in the options screen
This commit is contained in:
@@ -1,19 +1,25 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"flag"
|
||||
"log"
|
||||
"os"
|
||||
|
||||
"code.ur.gs/lupine/ordoor/internal/ordoor"
|
||||
)
|
||||
|
||||
var (
|
||||
winX = flag.Int("win-x", 0, "Pre-scaled window X dimension override")
|
||||
winY = flag.Int("win-y", 0, "Pre-scaled window Y dimension override")
|
||||
)
|
||||
|
||||
func main() {
|
||||
configFile := "config.toml"
|
||||
if len(os.Args) == 2 {
|
||||
configFile = os.Args[1]
|
||||
}
|
||||
|
||||
if err := ordoor.Run(configFile); err != nil {
|
||||
if err := ordoor.Run(configFile, *winX, *winY); err != nil {
|
||||
log.Fatalf(err.Error())
|
||||
}
|
||||
|
||||
|
@@ -24,6 +24,7 @@ var (
|
||||
|
||||
type env struct {
|
||||
obj *assetstore.Object
|
||||
spr *assetstore.Sprite
|
||||
step int
|
||||
|
||||
state state
|
||||
@@ -92,10 +93,17 @@ func main() {
|
||||
|
||||
func (e *env) Update(screenX, screenY int) error {
|
||||
if e.step == 0 || e.lastState != e.state {
|
||||
sprite, err := e.obj.Sprite(e.state.spriteIdx)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
e.spr = sprite
|
||||
|
||||
log.Printf(
|
||||
"new state: sprite=%d/%d zoom=%.2f, origin=%+v",
|
||||
"new state: sprite=%d/%d bounds=%+#v zoom=%.2f, origin=%+v",
|
||||
e.state.spriteIdx,
|
||||
e.obj.NumSprites,
|
||||
e.spr.Rect,
|
||||
e.state.zoom,
|
||||
e.state.origin,
|
||||
)
|
||||
|
Reference in New Issue
Block a user