////////////////////////////////////////
// Programming project code
// UniBw M, 2022, 2023, 2024
// www.unibw.de/inf2
// (c) Mark Minas (mark.minas@unibw.de)
////////////////////////////////////////

package pp.battleship.game.server;

/**
 * Represents the different states of the Battleship server during the game lifecycle.
 */
enum ServerState {
    /**
     * The server is waiting for clients to connect.
     */
    WAIT,

    /**
     * The server is waiting for clients to set up their maps.
     */
    SET_UP,

    /**
     * The battle of the game where players take turns to attack each other's ships.
     */
    BATTLE,

    /**
     * The server is waiting for all clients to finish the shoot animation.
     */
    ANIMATION,

    /**
     * The game has ended because all the ships of one player have been destroyed.
     */
    GAME_OVER
}
