package game import ( "github.com/iliadenisov/galaxy/internal/controller" "github.com/iliadenisov/galaxy/internal/model/game" ) func PlanetProduction(configure func(*controller.Param), race string, planetNumber int, prodType, subject string) (err error) { control(configure, func(c *controller.Controller) { c.Execute(func(r controller.Repo, g game.Game) { err = planetProduction(r, g, race, planetNumber, prodType, subject) }) }) return } func planetProduction(r controller.Repo, g game.Game, race string, planetNumber int, prodType, subject string) error { if err := g.PlanetProduction(race, planetNumber, prodType, subject); err != nil { return err } return r.SaveState(g) }