All Classes

Class Description
AbuseOfFaithException
Thrown when one try to use the faith resource type in the wrong way (but permitted with other resource type): e.g. try to add it into chest or warehouse
Action
A generic action that a player can request to perform on the model
ActionToken
The public interface of a generic action token used to perform and represent Lorenzo's actions in a single player game
ActionType
All the possible type of action: they are necessary for json serialization
ActivatedLeaderDrawer
Class that builds and fills the Cli representation of the LeaderCards that has been activated
ActivatedLeaderObservable  
ActivateLeaderAction
An action to request to the model to activate a specific leader card of a specific player
AlreadyProducedException
Thrown when one try to perform a production on something whose production has already been activated during the same turn
BaseProductionAction
An action to request to the model to activate the base player board production of a specific player
Buildable
Interface that allows an Object to build its Cli representation
BuyDevelopCardAction
An action to request to the model to buy a specific develop card for a specific player
CardBehaviour
Class that contains all possibile leaderCards behaviours.
CardFlag
Represents a develop card banner (i.e. level and colour of a develop card)
CardSlotObservable  
CardSlots
Represents the set of card slots of a player where they can place their develop cards
CardSlotsDrawer
Class that builds and fills the Cli representation of the Card Slots
CardSlotUpdate
A model update represents an update happened in a card slot.
Chest
Represents the chest of player.
ChestDrawer
Class that builds and fills the Cli representation of the Chest
ChestMergeObservable  
ChestUpdate
A model update represents an update happened in a chest.
ChestUpdateObservable  
ChooseInitialResourcesAction
An action to specify the initial resources of a player
ChooseLeaderOnWhiteMarbleAction
An action used to specify which leader card must be used to convert a white marble
Cli
CLI client class, manages the game if the player decides to play with Command Line Interface
CliDrawer
Class that manage the Cli representation of the game state
Client
Main class to manage the client side of the application.
ClientModelState
Class that contains game state client side
ClientModelUpdaterInterface
Interface used to receive all the updates from the client
ClientStateViewer
Interface that enables querying on client side model state
ClientStrings
Class containing the possible error outputs
ClientTurnManagerInterface
Interface of the turn manager client side
CliTurnManager
Class instantiated once a game is played in CLI configuration.
Color
Enumeration of the colors used in Cli
ConfigParameters
Contains configuration parameters for the project
ConnectionController
Java controller of the connection.fxml file
ControllerException
A generic controller exception
DeckDrawer
Class that builds and fills the Cli representation of the Develop Card Deck
DeckSetupObservable  
DevDeckUpdateObservable  
DevelopCard
Represents a develop card
DevelopCardColor
Represents all the possible color of a develop card
DevelopCardConstructor
Class that builds and fills the Cli representation of a DevelopCard
DevelopCardDeck
Represent the develop cards' deck where players can buy
DevelopCardDeckSetup
A special model update used to communicate to clients or views the initial state of a develop card deck.
DevelopCardDeckUpdate
A model update represents an update happened in a develop card deck.
DiscardInitialLeaderAction
An action to specify which leader cards of a player must be discarded during the initial setup
DiscardLeaderAction
An action to request to the model to discard a specific leader card of a player
DiscardToken
Represents Lorenzo's action tokens that discard two development cards of the same color in a single player game
DiscountBehaviour
The CardBehaviour that represents the discount behaviour: a leader card with this behaviour will reduce the develop card price
EndGameController
Java controller of endGameWin.fxml and endGameLose.fxml files
EndGameObservable
It's used together with EndGameObserver to notify of the end of the game
EndGameObserver
It's used together with EndGameObservable to notify of the end of the game
EndTurnAction
An action to request to terminate a player's turn
ErrorType
Represents the possible type of error that can be sent to client
FatalErrorController
Java controller of the fatalError.fxml file
Fillable
Interface that allows an Object to fill its Cli representation
Game
Represents a game
GameboardController
Java controller of the gameboard.fxml file
GSON
Contains all the possible method used to parse to and from a json string.
GUI  
GUIController
A generic fxml file controller
GuiResources
Contains resources used in gui (NOTE: card images are contained in the JSON files and loaded by their specific classes)
GUIStarter
Class used by javafx to start GUI
GuiTurnManager
Class instantiated once a game is played in GUI configuration.
IGameState
Represents the current state of a game
InsertMarbleAction
An action to request to the model to insert a specific marble obtained after shopping the market into warehouse
InterfacePlayerBoard
An interface used to restrict the visible methods of PlayerBoard when it's passed as a parameter of a method
InvalidActionException
Thrown when one try to perform an action with not all the required field correctly set
InvalidCardException
Thrown when a specified develop card doesn't exist or isn't available to perform the specific action
InvalidCardSlotException
Thrown when a card placement (e.g. a card slot) is full/empty, doesn't exist or a card can't be placed into it
InvalidDevelopCardException
Thrown when a specified develop card doesn't exist or isn't available to perform the specific action
InvalidLeaderCardException
Thrown when a specified leader card doesn't exist or isn't available to perform the specific action
InvalidUsernameException
Thrown when a specified player doesn't exist
LeaderCard
Represents a leader card
LeaderCardDeck
Represents the deck of leader cards before they are distributed to the players
LeaderConstructor
Class that builds and fills the Cli representation of a LeaderCard
LeaderDiscardObservable  
LeaderHandDrawer
Class that builds and fills the Cli representation of the LeaderCards that has not been activated, the cards that the player has in is hand
LeaderIsActiveException
Thrown when one try to perform something that must be performed on an inactive leader card on an active leader card: e.g. try to discard an active leader card
LeaderProduceBehaviour
The CardBehaviour that represents the producing behaviour: a leader card with this behaviour can perform a production
LeaderProductionAction
An action to request to the model to activate the production on a specific leader card of a player
LeaderSetup
A special model update used to communicate to clients or views the initial leader cards of a player.
LeaderSetupObservable  
LeaderUpdate
A model update represents an update concerning a leader card.
LocalVirtualModel
Class instantiated once a game is played in local configuration.
LocalVirtualView
A model observer that calls method directly on ClientModelUpdaterInterface when an update is received: used in local game (to instantiate instead of NetworkVirtualView)
LoginController
Java controller of the login.fxml file
LorenzoDevDeckObservable  
LorenzoDrawer
Class that builds and fills the Cli representation of Lorenzo il Magnifico Builds and Fills the track and the last token played
LorenzoTrack
Represents the Lorenzo's track and his position in a single player game
LorenzoViewInterface
Interface containing the possible displays that can be done after Lorenzo plays
Main
The class containing the first main method called when running the jar file
MarbleColor
Represents the color of a market marble, it's used in json serialization
MarbleModifierBehaviour
The CardBehaviour that represents the producing behaviour: a leader card with this behaviour will convert white market marbles
MarbleNotExistException
Thrown when a specified marble doesn't exist
MarginConstructor
Class that builds margins
Market
Represents the market of the game where players can buy a row or column of marble that will be converted in resources
MarketDrawer
Class that builds and fills the Cli representation of the Market
MarketMarble
Represents a generic market marble
MarketSetup
A special model update used to communicate to clients or views the initial state of a market.
MarketSetupObservable  
MarketUpdate
A model update represents an update happened in a market.
MarketUpdateObservable  
Match
This class contains reference to all the clientHandlers in order to manage at an high level of abstraction the message sending process and the client disconnections inside of a match.
MaximumNumberOfPlayersException
Thrown when one try to start a game with too many players
MaxLeaderCardLevelsException
Thrown when one try to add to warehouse too many special leader card's levels (try to activate too many storage leader cards)
Message
Represents a message between client and server in network
MessageType
Represents the possible type of messages
ModelException
A generic model exception
ModelObserver
Defines all the required method of class used to observe the model
ModelUpdate
A generic model update.
MoreWhiteLeaderCardsException
Thrown when one try to add into warehouse a white marble having more than one leader card that can convert it without specify which of them must be used
MoveForwardObservable
It's used together with MoveForwardObserver to notify a track that have to move their faith marker
MoveForwardObserver
It's used together with MoveForwardObservable to notify a track that have to move their faith marker
NeedAResourceToAddException
Thrown when one try to produce a null resource
NegativeQuantityException
Thrown when a specified quantity is negative
NetworkVirtualModel
Class instantiated once a game is played in network configuration.
NetworkVirtualView
A model observer that send all the received update in the network: used when the game is not in local
NoConnectedPlayerException
Thrown when, after a player disconnection, there aren't connected player to continue the game
NormalMarble
Represents a market marble that will be converted in a resource that can be added into warehouse
NotActivatableException
Thrown when one try to perform a not activatable production
NotAllowedActionException
Thrown when an one try to perform an action that could not be performed during that phase of the game
NotBuyableException
Thrown when one try to buy a develop card that can't be bought by them
NotEnoughResourcesException
Thrown when one try to perform something without having the required resources
NotEnoughSpaceException
Thrown when one try to add into warehouse a resources without having a place in which put it
NumberOfPlayersController
Java controller of the numberOfPlayer.fxml file
Pair<K,​V>
Represents a pair of two object: a key and a value.
PhaseChangedObservable  
PhaseChangedObserver  
PhaseType
Represents all the possible turn phases.
PlayerBoard
Represents a player board containing all the element of the game that regards a single player
PlayerboardController  
PlayerDisconnectionAction
An action to notify the model that a player is no longer connected with the server
PlayerReconnectionAction Deprecated.
ProductionAction
An action to request to the model to activate the production on the develop top card of a specific card slot
RedMarble
Represents a red market marble that will be converted in a faith resulting in a step forward on track
ResourceType
Represents all the possible type of resources
RowOrColumnNotExistsException
Thrown when a specified market row or column is out of bound
SceneController
Used to manages GUI's stages loading fxml files and conserve their root controllers (Note that only one stage will be active at a time)
Server
This class accepts connection to a client and assign the client handling to the ServerClientHandler class via Thread.
ServerClientHandler
Every instance of this class handles the server side connection of a specific client
ServerConnector
Class that manage the connection with the server.
ShopMarketAction
An action to request to the model to buy a specific row or column of the marked to a specific player
ShuffleToken
Represents Lorenzo's action tokens that shuffle action token's deck and move foreword of one position Lorenzo's faith marker in a single player game
SimpleGameState
Class containing a simplified version of the game state.
SimplePlayerState
Class containing a simplified version of the PlayerBoard state
SinglePlayer
Represents a single player game
Square
Represents a single cell of the track
StepForwardToken
Represents Lorenzo's action tokens that move foreword of two position Lorenzo's faith marker in a single player game
StorageBehaviour
The CardBehaviour that represents the producing behaviour: a leader card with this behaviour will add a new warehouse level
TempChestObservable  
TokenShuffleObservable  
Track
Represents a player's track with their position and their pope cards
TrackDrawer
Class that builds and fills the Cli representation of the Track
TrackObservable  
TrackUpdate
A model update represents the update of player that changes their position on the track.
TurnManager
Represent the current phase of the game and manages the players turn
TurnState
A model update represents the new state of the game, i.e. an update happened in a turn manager.
VaticanReport
A model update represents the update of player that reaches a vatican report cell on the track.
VaticanReportObservable
It's used together with VaticanReportObserver to notify other players' track when a track reaches a vatican report cell
VaticanReportObserver
It's used together with VaticanReportObserver to notify other players' track when a track reaches a vatican report cell
VaticanUpdateObservable  
ViewInterface  
VirtualModel
Interface that hides client side if the game is running in local or network
Warehouse
Represents the warehouse of player.
WarehouseDrawer
Class that builds and fills the Cli representation of the Warehouse
WarehouseUpdate
A model update represents an update happened in a warehouse.
WarehouseUpdateObservable  
WhiteMarble
Represents a white market marble that can be converted, using a particular type of leader card, in a specific resource that can be added into warehouse or, in case it's faith, resulting in a step forward on track
WrongLeaderCardException
Thrown one try to use a leader card of the wrong type to do something
WrongPlayerException
Thrown when one try to perform an action for the wrong player: e.g. for a player that isn't the current player of for a player that doesn't exist
WrongResourceNumberException
Thrown when some specified resources are too many or too few