feat: turn stage increment after player's command

This commit is contained in:
Ilia Denisov
2026-02-08 16:35:58 +02:00
parent bf34843568
commit ba5d4e1ba8
14 changed files with 102 additions and 81 deletions
+10 -16
View File
@@ -6,33 +6,27 @@ import (
)
func CreateScience(configure func(*controller.Param), race, typeName string, drive, weapons, shields, cargo float64) (err error) {
control(configure, func(c *controller.Controller) {
c.ExecuteGame(func(r controller.Repo, g *game.Game) {
err = createScience(c, r, g, race, typeName, drive, weapons, shields, cargo)
err = control(configure, func(c *controller.Controller) error {
return c.ExecuteCommand(func(r controller.Repo, g *game.Game) error {
return createScience(c, race, typeName, drive, weapons, shields, cargo)
})
})
return
}
func createScience(c *controller.Controller, r controller.Repo, g *game.Game, race, typeName string, drive, weapons, shields, cargo float64) error {
if err := c.CreateScience(race, typeName, drive, weapons, shields, cargo); err != nil {
return err
}
return r.SaveLastState(g)
func createScience(c *controller.Controller, race, typeName string, drive, weapons, shields, cargo float64) error {
return c.CreateScience(race, typeName, drive, weapons, shields, cargo)
}
func DeleteScience(configure func(*controller.Param), race, typeName string) (err error) {
control(configure, func(c *controller.Controller) {
c.ExecuteGame(func(r controller.Repo, g *game.Game) {
err = deleteScience(c, r, g, race, typeName)
err = control(configure, func(c *controller.Controller) error {
return c.ExecuteCommand(func(r controller.Repo, g *game.Game) error {
return deleteScience(c, race, typeName)
})
})
return
}
func deleteScience(c *controller.Controller, r controller.Repo, g *game.Game, race, typeName string) error {
if err := c.DeleteScience(race, typeName); err != nil {
return err
}
return r.SaveLastState(g)
func deleteScience(c *controller.Controller, race, typeName string) error {
return c.DeleteScience(race, typeName)
}