generator shouldn't draw markers in separate goroutines
This commit is contained in:
parent
785e53d024
commit
fb8892ceb2
Binary file not shown.
Before Width: | Height: | Size: 550 KiB After Width: | Height: | Size: 550 KiB |
|
@ -8,7 +8,6 @@ import (
|
|||
"io"
|
||||
|
||||
"github.com/disintegration/imaging"
|
||||
"golang.org/x/sync/errgroup"
|
||||
|
||||
"github.com/pkg/errors"
|
||||
"github.com/tribalwarshelp/shared/models"
|
||||
|
@ -81,7 +80,6 @@ func Generate(cfg Config) error {
|
|||
mapSizeDividedBy10 := cfg.MapSize / 10
|
||||
imgHalfWidth := cfg.MapSize / 2
|
||||
imgHalfHeight := imgHalfWidth
|
||||
g := new(errgroup.Group)
|
||||
|
||||
if cfg.BackgroundColor != defaultBackgroundColor {
|
||||
backgroundColor, err := parseHexColorFast(cfg.BackgroundColor)
|
||||
|
@ -100,34 +98,27 @@ func Generate(cfg Config) error {
|
|||
// Markers
|
||||
for _, marker := range cfg.Markers {
|
||||
m := marker
|
||||
g.Go(func() error {
|
||||
parsedColor, err := parseHexColorFast(m.Color)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
for _, village := range m.Villages {
|
||||
if m.Larger {
|
||||
for y := 1; y <= 1; y++ {
|
||||
for x := 1; x <= 1; x++ {
|
||||
img.Set(village.X+x, village.Y, parsedColor)
|
||||
img.Set(village.X-x, village.Y, parsedColor)
|
||||
img.Set(village.X, village.Y+y, parsedColor)
|
||||
img.Set(village.X, village.Y-y, parsedColor)
|
||||
img.Set(village.X+x, village.Y-y, parsedColor)
|
||||
img.Set(village.X-x, village.Y-y, parsedColor)
|
||||
img.Set(village.X+x, village.Y+y, parsedColor)
|
||||
img.Set(village.X-x, village.Y+y, parsedColor)
|
||||
}
|
||||
parsedColor, err := parseHexColorFast(m.Color)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
for _, village := range m.Villages {
|
||||
if m.Larger {
|
||||
for y := 1; y <= 1; y++ {
|
||||
for x := 1; x <= 1; x++ {
|
||||
img.Set(village.X+x, village.Y, parsedColor)
|
||||
img.Set(village.X-x, village.Y, parsedColor)
|
||||
img.Set(village.X, village.Y+y, parsedColor)
|
||||
img.Set(village.X, village.Y-y, parsedColor)
|
||||
img.Set(village.X+x, village.Y-y, parsedColor)
|
||||
img.Set(village.X-x, village.Y-y, parsedColor)
|
||||
img.Set(village.X+x, village.Y+y, parsedColor)
|
||||
img.Set(village.X-x, village.Y+y, parsedColor)
|
||||
}
|
||||
}
|
||||
img.Set(village.X, village.Y, parsedColor)
|
||||
}
|
||||
return nil
|
||||
})
|
||||
}
|
||||
|
||||
if err := g.Wait(); err != nil {
|
||||
return err
|
||||
img.Set(village.X, village.Y, parsedColor)
|
||||
}
|
||||
}
|
||||
|
||||
//Continents
|
||||
|
|
Reference in New Issue