diff --git a/game.go b/game.go index 6eccfbc..83d18c9 100644 --- a/game.go +++ b/game.go @@ -189,6 +189,7 @@ func (g *Game) claimStartingArea(p *Player) { p.Score++ } } + g.killPlayersWithZeroScore() } func (g *Game) getMinAvailablePlayerId() PlayerID { @@ -255,6 +256,8 @@ func (g *Game) fillTrace(p *Player) { } } } + g.killPlayersWithZeroScore() + } func (g *Game) getTakenMask(p *Player) [][]bool { @@ -314,6 +317,14 @@ func (g *Game) getScoreboard() []*Player { return scoreboard } +func (g *Game) killPlayersWithZeroScore() { + for pID, player := range g.Players { + if player.Score == 0 { + g.killPlayer(pID) + } + } +} + func (g *Game) killPlayer(pID PlayerID) { for uid, playerID := range g.UIDToPID { if pID == playerID {