World : holds Game --> Deck : holds World "1" --> "1..*" Continent : composed of Continent "1" --> "1..*" Territory : composed of Army "*" --> "1" Territory : defends Deck "1" --> "*" ArmyCard : shuffles Deck "1" --> "*" ChanceCard : shuffles Deck "1" --> "*" TerritoryCard : shuffles TerritoryCard "1" --> "1" Territory : denotes Player "1..*" --> "1" Game : plays Player --> Deck : draws from Player "1" --> "*" Territory : owns Player "1" --> "*" Army : has in inventory Player --> Dice : rolls ChanceCard --> Army : grants mercenaries class Game { world deck players roundPhase isPaused } class Dice { sides } class World { continents } class Continent { name territories } class Territory { name continent owner armies isPlayable } class Army { type isMercenary } class Player { avatar username color isComputer territories armies armyCards territory"> World : holds Game --> Deck : holds World "1" --> "1..*" Continent : composed of Continent "1" --> "1..*" Territory : composed of Army "*" --> "1" Territory : defends Deck "1" --> "*" ArmyCard : shuffles Deck "1" --> "*" ChanceCard : shuffles Deck "1" --> "*" TerritoryCard : shuffles TerritoryCard "1" --> "1" Territory : denotes Player "1..*" --> "1" Game : plays Player --> Deck : draws from Player "1" --> "*" Territory : owns Player "1" --> "*" Army : has in inventory Player --> Dice : rolls ChanceCard --> Army : grants mercenaries class Game { world deck players roundPhase isPaused } class Dice { sides } class World { continents } class Continent { name territories } class Territory { name continent owner armies isPlayable } class Army { type isMercenary } class Player { avatar username color isComputer territories armies armyCards territory"> World : holds Game --> Deck : holds World "1" --> "1..*" Continent : composed of Continent "1" --> "1..*" Territory : composed of Army "*" --> "1" Territory : defends Deck "1" --> "*" ArmyCard : shuffles Deck "1" --> "*" ChanceCard : shuffles Deck "1" --> "*" TerritoryCard : shuffles TerritoryCard "1" --> "1" Territory : denotes Player "1..*" --> "1" Game : plays Player --> Deck : draws from Player "1" --> "*" Territory : owns Player "1" --> "*" Army : has in inventory Player --> Dice : rolls ChanceCard --> Army : grants mercenaries class Game { world deck players roundPhase isPaused } class Dice { sides } class World { continents } class Continent { name territories } class Territory { name continent owner armies isPlayable } class Army { type isMercenary } class Player { avatar username color isComputer territories armies armyCards territory">
%%{init: {"theme": "default"}}%%
classDiagram
direction LR
Game --> World : holds
Game --> Deck : holds
World "1" --> "1..*" Continent : composed of
Continent "1" --> "1..*" Territory : composed of
Army "*" --> "1" Territory : defends
Deck "1" --> "*" ArmyCard : shuffles
Deck "1" --> "*" ChanceCard : shuffles
Deck "1" --> "*" TerritoryCard : shuffles
TerritoryCard "1" --> "1" Territory : denotes
Player "1..*" --> "1" Game : plays
Player --> Deck : draws from
Player "1" --> "*" Territory : owns
Player "1" --> "*" Army : has in inventory
Player --> Dice : rolls
ChanceCard --> Army : grants mercenaries
class Game {
world
deck
players
roundPhase
isPaused
}
class Dice {
sides
}
class World {
continents
}
class Continent {
name
territories
}
class Territory {
name
continent
owner
armies
isPlayable
}
class Army {
type
isMercenary
}
class Player {
avatar
username
color
isComputer
territories
armies
armyCards
territoryCards
chanceCards
}
class Deck {
armyCards
territoryCards
chanceCards
}
class ArmyCard {
type
}
class ChanceCard {
type
}
class TerritoryCard {
territory
}