All Classes and Interfaces

Class
Description
Network event used to register a new player in the lobby.
Network event that transitions all clients to the next round.
Represents an Artist character card.
General-purpose helper for building fixed-width ASCII/Unicode tables in a TUI.
Board manages all the elements during the game such as decks, upper and lower rows, totems, tiles...
Defines the available border styles used to render AsciiTable instances in the text-based user interface.
Represents a Builder character card.
Building effect that grants 5 food for each new complete set of 6 different character types obtained after purchasing this building.
Building effect that grants a discount of 1 food during the Sustenance Event for each character of the indicated type present in the player's tribe.
At the end of the game, the player gains 6 Prestige Points for each complete set of character types in their tribe.
At the end of the game, the player gains Prestige Points based on the number of cards of the indicated character type in their tribe.
At the end of the game, this building grants 25 Prestige Points to the player who owns it.
Building effect that grants 3 food for each new pair of identical inventors obtained after purchasing this building.
At the end of the game, you gain double the Prestige Points indicated on the Builder cards in your tribe.
Represents a generic building card in the game.
Defines the effect behavior of a building card.
Represents a Cave Paintings event card.
Abstract base class for all character cards.
Represents the different types of character cards available in the game.
RMI client callback implementation of IClientCallback.
Controller responsible for coordinating the client-side components, including the view, the network client and the local mini model.
Handles the TCP connection with a single client.
Entry point for launching the game client with the JavaFX GUI.
Inner Application subclass that wires the GUI to the client controller and hands off control to GUI.start(Stage).
Entry point for the TUI-based game client.
Forwards every notification to both the RMI and the TCP transport layers.
Represents the current state of the game.
Utility class responsible for loading and creating decks of cards and slots for the game.
Internal data class representing the raw definition of a building card as loaded from a JSON file.
Internal data class representing the raw definition of a tribe card as loaded from a JSON file.
Network event used to notify all clients that a player has disconnected.
NetworkEvent to draw a building card from the lower card list.
NetworkEvent to draw a tribe card from the lower card list.
NetworkEvent to draw a building card from the upper card list.
NetworkEvent to draw a tribe card from the upper card list.
Represents the possible effect types of building cards.
Network event that signals the end of the game and delivers the final standings.
Enumeration of error types that can be returned by server-side operations.
Abstract base class for all event cards.
Represents the different types of event cards available in the game.
Represents the different types of network events that can be sent between client and server.
Ambient fire-particle effect rendered on a transparent overlay pane.
A single fire particle with position, velocity, wobble, and JavaFX visual nodes.
Represents the main game model.
Controller responsible for managing interactions with the Game model.
Processes game events from the action queue and routes each one based on the current game state.
Represents the possible stages of a game.
Represents a Gatherer character card.
JavaFX-based GUI implementation of IView.
Handles the heartbeat communication associated with a TCP client.
When activated, gives Food and Prestige Points to every player.
Represents a Hunter character card.
Defines the operations that a client can request during the game.
Callback interface used by the server to notify an RMI client about game updates and incoming network actions.
Remote interface used by RMI clients to interact with the game server.
Utility class for resolving the local network interface to use when connecting to a server.
Represents an Inventor character card.
View interface implemented by both the TUI and GUI.
FXML controller for the end-of-game leaderboard scene.
A ConcurrentHashMap-backed map with a configurable size limit and an associated action.
FXML controller for the login scene.
FXML controller for the main game scene.
Lightweight representation of the game model shared with clients.
Shared network constants used by both server and client components.
Represents an event sent over the network.
Represents the order logic card used in a two-player game.
Represents the order logic card used in a three-player game.
Represents the order logic card used in a four-player game.
Represents the order logic card used in a five-player game.
Abstract base class for all order logic cards.
Represents a player entry in an order logic card.
Abstract base class for all playable cards.
Default Player class; contains all identifiers and methods needed.
Network event used to notify that a player has reconnected to the game.
Client RMI.
Server-side heartbeat watchdog for a single RMI client.
RMI server responsible for handling remote client connections, receiving player actions, and propagating game updates.
Handles persistence of the game model to and from disk.
Main server entry point.
Represents a Shaman character card.
When activated, rewards the player with the most shaman icons and penalizes the one with the fewest.
Network event used to skip the current player's optional card action.
Represents a slot with a specific identifier and associated values for upper cards, lower cards, food, and minimum number of players.
NetworkEvent to select a slot where to place the player totem.
Represents a Sustenance event card.
Client TCP.
TCP server responsible for accepting client connections, handling player registration and reconnection, and sending game updates to connected clients.
Network event used to handle a player's totem choice.
FXML controller for the totem selection scene.
Represents the different totem colors available in the game.
Abstract base class for all tribe cards.
Text-based User Interface (TUI) implementation of IView.