diff options
| author | Florian Fischer <florian.fischer@muhq.space> | 2025-07-19 18:34:59 -0400 |
|---|---|---|
| committer | Florian Fischer <florian.fischer@muhq.space> | 2025-07-19 18:54:25 -0400 |
| commit | 673977d13a52b3724943d58256d91410c792b651 (patch) | |
| tree | 28f17d5b7653359932e72d5d8a697931cb21d50f | |
| parent | d51ca07150ee9e412b57269436f9554de83eedcc (diff) | |
| download | muhqs-game-673977d13a52b3724943d58256d91410c792b651.tar.gz muhqs-game-673977d13a52b3724943d58256d91410c792b651.zip | |
remove player color from game code
| -rw-r--r-- | go/client/game.go | 3 | ||||
| -rw-r--r-- | go/client/startMenu.go | 4 | ||||
| -rw-r--r-- | go/game/action_test.go | 2 | ||||
| -rw-r--r-- | go/game/ai_test.go | 8 | ||||
| -rw-r--r-- | go/game/areaEffect_test.go | 2 | ||||
| -rw-r--r-- | go/game/kraken.go | 9 | ||||
| -rw-r--r-- | go/game/player.go | 3 | ||||
| -rw-r--r-- | go/game/state.go | 19 | ||||
| -rw-r--r-- | go/game/targets_test.go | 2 | ||||
| -rw-r--r-- | go/game/unit_test.go | 2 | ||||
| -rw-r--r-- | go/ui/mapView.go | 3 |
11 files changed, 28 insertions, 29 deletions
diff --git a/go/client/game.go b/go/client/game.go index 7c54ac0f..4dc61a1a 100644 --- a/go/client/game.go +++ b/go/client/game.go @@ -123,8 +123,7 @@ func (g *Game) loadMap(mapName string) *Game { func (g *Game) addActivePlayer(name string, deckList string) *Game { deck := game.NewDeckFromDeckList(deckList) - color := ui.PlayerColors[len(g.gameState.Players())] - g.gameState.AddNewPlayer(name, deck, color) + g.gameState.AddNewPlayer(name, deck) p := g.gameState.PlayerByName(name) g.activePlayerId = p.Id return g.initPlayerUi(p) diff --git a/go/client/startMenu.go b/go/client/startMenu.go index dea148ec..a9ee5c48 100644 --- a/go/client/startMenu.go +++ b/go/client/startMenu.go @@ -173,9 +173,7 @@ func (m *startMenu) startGame() { g := newGame(m.app, state).loadMap(m.mapPath).addActivePlayer(m.playerName, m.startDeck) if m.mapPath == "the-kraken" { - idx := len(g.gameState.Players()) - color := ui.PlayerColors[idx] - g.gameState.AddNewAiPlayer("kraken", color) + g.gameState.AddNewAiPlayer("kraken") } activities.PushActivity(g.Start()) diff --git a/go/game/action_test.go b/go/game/action_test.go index b1642bd1..1c5a7262 100644 --- a/go/game/action_test.go +++ b/go/game/action_test.go @@ -7,7 +7,7 @@ import ( const PASS_STRING = "muhq\u00A0pass" var s *LocalState = NewLocalState() -var p *Player = s.AddNewPlayer("muhq", NewDeck(), nil) +var p *Player = s.AddNewPlayer("muhq", NewDeck()) func TestMarshalPass(t *testing.T) { exp := PASS_STRING diff --git a/go/game/ai_test.go b/go/game/ai_test.go index 81d86a7a..08cef2cb 100644 --- a/go/game/ai_test.go +++ b/go/game/ai_test.go @@ -82,8 +82,8 @@ symbols: m, _ := readMap(r) s := NewLocalState() s.SetMap(m) - p1 := s.AddNewPlayer("kraken", NewDeck(), nil) - p2 := s.AddNewPlayer("player", NewDeck(), nil) + p1 := s.AddNewPlayer("kraken", NewDeck()) + p2 := s.AddNewPlayer("player", NewDeck()) c := s.addNewUnit(NewCard("kraken/clownfish"), Position{2, 2}, p1) s.addNewUnit(NewCard("kraken/sailfish"), Position{1, 1}, p2) s.addNewUnit(NewCard("kraken/sailfish"), Position{3, 2}, p2) @@ -138,8 +138,8 @@ symbols: m, _ := readMap(r) s := NewLocalState() s.SetMap(m) - p1 := s.AddNewPlayer("tyrant", NewDeck(), nil) - p2 := s.AddNewPlayer("player", NewDeck(), nil) + p1 := s.AddNewPlayer("tyrant", NewDeck()) + p2 := s.AddNewPlayer("player", NewDeck()) b := s.addNewUnit(NewCard("tyrant/bauernfeind"), Position{1, 1}, p1) s.addNewUnit(NewCard("misc/farmer"), Position{1, 3}, p2) diff --git a/go/game/areaEffect_test.go b/go/game/areaEffect_test.go index 5a7ab0a6..17688f1e 100644 --- a/go/game/areaEffect_test.go +++ b/go/game/areaEffect_test.go @@ -16,7 +16,7 @@ symbols: m, _ := readMap(r) s.SetMap(m) - s.AddNewPlayer("player", NewDeck(), nil) + s.AddNewPlayer("player", NewDeck()) p := s.Players()[0] t0_0 := s.Map().TileAt(Position{0, 0}) diff --git a/go/game/kraken.go b/go/game/kraken.go index 94d63898..5f8f2612 100644 --- a/go/game/kraken.go +++ b/go/game/kraken.go @@ -1,7 +1,6 @@ package game import ( - "image/color" "log" "strings" "sync" @@ -27,8 +26,8 @@ var KrakenDecklist = `2 kraken/angry_squid 2 kraken/tides_change! 2 kraken/unholy_cannonball` -func NewKraken(id int, s *LocalState, color color.Color) *Player { - kraken := NewPlayer(id, KRAKEN_NAME, NewDeck(), s, color) +func NewKraken(id int, s *LocalState) *Player { + kraken := NewPlayer(id, KRAKEN_NAME, NewDeck(), s) d := NewDeckFromDeckList(KrakenDecklist) d.Shuffle(s.Rand) kraken.Deck = d @@ -47,8 +46,8 @@ func NewKraken(id int, s *LocalState, color color.Color) *Player { return kraken } -func (s *LocalState) AddKraken(color color.Color) *Player { - kraken := NewKraken(len(s.Players())+1, s, color) +func (s *LocalState) AddKraken() *Player { + kraken := NewKraken(len(s.Players())+1, s) s.players = append(s.players, kraken) return kraken } diff --git a/go/game/player.go b/go/game/player.go index 974223d1..38e959da 100644 --- a/go/game/player.go +++ b/go/game/player.go @@ -1,7 +1,6 @@ package game import ( - "image/color" "log" "muhq.space/muhqs-game/go/utils" @@ -22,7 +21,6 @@ type Player struct { Deck *Deck Store *Store gameState *LocalState - Color color.Color Ctrl PlayerControl knownStores map[Position]bool } @@ -43,7 +41,6 @@ func NewPlayer(id int, name string, deck *Deck, gameState *LocalState, color col DiscardPile: NewDiscardPile(), Store: store, gameState: gameState, - Color: color, Ctrl: nil, knownStores: make(map[Position]bool), } diff --git a/go/game/state.go b/go/game/state.go index 6c77a42f..6c3b237f 100644 --- a/go/game/state.go +++ b/go/game/state.go @@ -2,7 +2,6 @@ package game import ( "fmt" - "image/color" "log" "math/rand" "strconv" @@ -17,8 +16,8 @@ type State interface { Players() []*Player PlayerByName(name string) *Player PlayerById(id int) *Player - AddNewPlayer(name string, deck *Deck, color color.Color) *Player - AddNewAiPlayer(name string, color color.Color) *Player + AddNewPlayer(name string, deck *Deck) *Player + AddNewAiPlayer(name string) *Player ActivePlayer() *Player ActivePhase() PhaseType SetMap(m *Map) @@ -110,16 +109,22 @@ func NewLocalState() *LocalState { return s } -func (s *LocalState) AddNewPlayer(name string, deck *Deck, color color.Color) *Player { - p := NewPlayer(len(s.players)+1, name, deck, s, color) +func (s *LocalState) AddNewPlayerDeckAndStore(name string, deck *Deck, store *Store) *Player { + p := NewPlayerWithDeckAndStore(len(s.players)+1, name, deck, store, s) s.players = append(s.players, p) return s.players[len(s.players)-1] } -func (s *LocalState) AddNewAiPlayer(name string, color color.Color) *Player { +func (s *LocalState) AddNewPlayer(name string, deck *Deck) *Player { + p := NewPlayer(len(s.players)+1, name, deck, s) + s.players = append(s.players, p) + return s.players[len(s.players)-1] +} + +func (s *LocalState) AddNewAiPlayer(name string) *Player { switch name { case "kraken": - return s.AddKraken(color) + return s.AddKraken() default: log.Fatalf("Ai Player %s not implemented", name) } diff --git a/go/game/targets_test.go b/go/game/targets_test.go index 44bd60de..b7d1cda0 100644 --- a/go/game/targets_test.go +++ b/go/game/targets_test.go @@ -22,7 +22,7 @@ symbols: m, _ := readMap(r) s.SetMap(m) - s.AddNewPlayer("player", NewDeck(), nil) + s.AddNewPlayer("player", NewDeck()) p := s.Players()[0] pioneer := NewUnit(NewCard("base/pioneer"), s.Map().TileAt(Position{1, 1}), p) diff --git a/go/game/unit_test.go b/go/game/unit_test.go index 68fadea4..b6a6f59a 100644 --- a/go/game/unit_test.go +++ b/go/game/unit_test.go @@ -22,7 +22,7 @@ symbols: m, _ := readMap(r) s.SetMap(m) - s.AddNewPlayer("player", NewDeck(), nil) + s.AddNewPlayer("player", NewDeck()) p := s.Players()[0] f := NewUnit(NewCard("nautics/fisher"), s.Map().TileAt(Position{2, 2}), p) diff --git a/go/ui/mapView.go b/go/ui/mapView.go index 2016a60f..25ebd5aa 100644 --- a/go/ui/mapView.go +++ b/go/ui/mapView.go @@ -309,7 +309,8 @@ func (vw *MapView) drawPermanentsLayer(screen *ebiten.Image) { op := &ebiten.DrawImageOptions{} op.GeoM.Scale(vw.scale, vw.scale) op.GeoM.Translate(float64(x_px), float64(y_px)) - op.ColorScale.ScaleWithColor(p.Controller().Color) + col := PlayerColors[p.Controller().Id-1] + op.ColorScale.ScaleWithColor(col) if colors, found := vw.permanentsHighlights[p]; found { for _, color := range colors { |
