Package game

# Class Game

java.lang.Object
game.Game

public class Game extends Object

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static enum`
  `Game.GameState`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Game()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addPlayer(Player player)`
  `MultiDoku`
  `getDoku()`
  `long`
  `getGameDuration()`
  `Game.GameState`
  `getGameState()`
  `List<Player>`
  `getLeaderboard()`
  `Player`
  `getPlayerById(int id)`
  `Map<Integer,Player>`
  `getPlayers()`
  `Instant`
  `getStartTime()`
  `void`
  `removePlayer(int id)`
  `void`
  `setPlayerRemainingCells(Player player, int newScore)`
  `void`
  `startGame(MultiDoku doku, Instant startTime, long gameDuration)`
  `void`
  `stopGame()`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### Game

    public Game()

- ## Method Details

  - ### getPlayerById

    public Player getPlayerById(int id)

  - ### addPlayer

    public void addPlayer(Player player)

  - ### setPlayerRemainingCells

    public void setPlayerRemainingCells(Player player, int newScore)

  - ### removePlayer

    public void removePlayer(int id)

  - ### getPlayers

    public Map<Integer,Player> getPlayers()

  - ### startGame

    public void startGame(MultiDoku doku, Instant startTime, long gameDuration)

  - ### stopGame

    public void stopGame()

  - ### getGameState

    public Game.GameState getGameState()

  - ### getDoku

    public MultiDoku getDoku()

  - ### getLeaderboard

    public List<Player> getLeaderboard()

  - ### getStartTime

    public Instant getStartTime()

  - ### getGameDuration

    public long getGameDuration()