Make include directives work in .mnu files

This commit is contained in:
2020-04-13 21:03:54 +01:00
parent 76bf8438b0
commit dc131939f4
11 changed files with 298 additions and 119 deletions

View File

@@ -70,7 +70,7 @@ func registerNoninteractive(d *Driver, r *menus.Record) (*noninteractive, error)
spriteId = r.SpriteId[0]
}
sprite, err := d.menu.Sprite(spriteId)
sprite, err := d.menu.Sprite(r.ObjectIdx, spriteId)
if err != nil {
return nil, err
}
@@ -89,7 +89,7 @@ func registerNoninteractive(d *Driver, r *menus.Record) (*noninteractive, error)
}
func registerHypertext(d *Driver, r *menus.Record) error {
sprite, err := d.menu.Sprite(r.Share)
sprite, err := d.menu.Sprite(r.ObjectIdx, r.Share)
if err != nil {
return err
}
@@ -108,7 +108,7 @@ func registerHypertext(d *Driver, r *menus.Record) error {
// An overlay is a static image + some text that needs to be rendered
func registerOverlay(d *Driver, r *menus.Record) error {
sprite, err := d.menu.Sprite(r.Share)
sprite, err := d.menu.Sprite(r.ObjectIdx, r.Share)
if err != nil {
return err
}
@@ -139,12 +139,12 @@ func registerOverlay(d *Driver, r *menus.Record) error {
// An animation is a non-interactive element that displays something in a loop
func registerAnimation(d *Driver, r *menus.Record) error {
sprite, err := d.menu.Sprite(r.SpriteId[0])
sprite, err := d.menu.Sprite(r.ObjectIdx, r.SpriteId[0])
if err != nil {
return err
}
frames, err := d.menu.Images(r.SpriteId[0], r.DrawType)
frames, err := d.menu.Images(r.ObjectIdx, r.SpriteId[0], r.DrawType)
if err != nil {
return err
}
@@ -163,17 +163,17 @@ func registerAnimation(d *Driver, r *menus.Record) error {
}
func registerAnimationHover(d *Driver, r *menus.Record) error {
sprite, err := d.menu.Sprite(r.SpriteId[0])
sprite, err := d.menu.Sprite(r.ObjectIdx, r.SpriteId[0])
if err != nil {
return err
}
enterFrames, err := d.menu.Images(r.SpriteId[0], r.DrawType)
enterFrames, err := d.menu.Images(r.ObjectIdx, r.SpriteId[0], r.DrawType)
if err != nil {
return err
}
exitFrames, err := d.menu.Images(r.SpriteId[0]+r.DrawType, r.DrawType)
exitFrames, err := d.menu.Images(r.ObjectIdx, r.SpriteId[0]+r.DrawType, r.DrawType)
if err != nil {
return err
}