diff --git a/cmd/loader/main.go b/cmd/loader/main.go index 6157e9d..a9d8ac0 100644 --- a/cmd/loader/main.go +++ b/cmd/loader/main.go @@ -127,13 +127,14 @@ func loadMapsFrom(part string) { log.Printf("Maps in %s:", mapsPath) for key, gameMap := range gameMaps { + rect := gameMap.Rect() hdr := gameMap.Header fmt.Printf( " * `%s`: IsCampaignMap=%v W=%v:%v L=%v:%v SetName=%s\n", key, hdr.IsCampaignMap, - hdr.MinWidth, hdr.MaxWidth, - hdr.MinLength, hdr.MaxLength, + rect.Min.X, rect.Max.X, + rect.Min.Y, rect.Max.Y, string(hdr.SetName[:]), ) } diff --git a/cmd/view-minimap/main.go b/cmd/view-minimap/main.go index 524ffd5..7a80be5 100644 --- a/cmd/view-minimap/main.go +++ b/cmd/view-minimap/main.go @@ -172,18 +172,15 @@ func (e *env) Update(screenX, screenY int) error { func (e *env) Draw(screen *ebiten.Image) error { gameMap := e.gameMap - imd, err := ebiten.NewImage( - int(gameMap.MaxWidth), - int(gameMap.MaxLength), - ebiten.FilterDefault, - ) + rect := gameMap.Rect() + imd, err := ebiten.NewImage(rect.Dx(), rect.Dy(), ebiten.FilterDefault) if err != nil { return err } - for y := int(gameMap.MinLength); y < int(gameMap.MaxLength); y++ { - for x := int(gameMap.MinWidth); x < int(gameMap.MaxWidth); x++ { + for y := int(rect.Min.Y); y < int(rect.Max.Y); y++ { + for x := int(rect.Min.X); x < int(rect.Max.X); x++ { cell := gameMap.Cells.At(x, y, int(e.state.zIdx)) imd.Set(x, y, makeColour(&cell, e.state.cellIdx)) }