@startuml scale 0.6 interface Card { +text: string +action: "advance" | "back" | "choice" | "payeach" | "collecteach" |\n "doubletransport" | "earn" | "pay" | "stealmoney" | "stolenmoney" |\n "streetrepairs" | "gotojail" +value?: string | number | number[] } class MonopolyGame { +jackpot: number +currentTurnIndex: number +consecutiveDoubles: number +players: Player[] +currentPlayer: Player +dice: number[] +isTurnFinished: boolean +unpaidDebts: Debt[] +messageEventHandler: (message: string) => void +chanceCards: Card[] +chestCards: Card[] +chanceCardIndex: number +chestCardIndex: number +addToJackpot(amount: number): void +rollDice(die1?: number, die2?: number): void +moveToSquare(newSquare: Square, awardSalary?: boolean): void +sendToJail(): void +moveBack(numberOfSpaces: number): void +postBail(): void +takeChance(): void +takeChest(): void +handleCard(card: Card): void +movePlayer(): void +payDebts(): void +finishTurn(): void +board: Square[] +playerNames: string[] +houseRules: HouseRules } interface HouseRules { } class Player { +ownedProperties: Property[] +currentSquare: Square +turnsInJail: number +name: string +money: number } class Property { +buildingsCount: number +isMortgaged: boolean +owner: Player +name: string +color: "brown" | "lightblue" | "pink" | "orange" | "red" | "yellow" |\n "green" | "blue" | "white" +price: number +rent: number[] | "transport" | "utility" +buildPrice: number } class Square { +occupants: Player[] +addOccupant(occupant: Player): void +removeOccupant(occupant: Player): void +squareContents: "gotojail" | Property | "go" | "jail" | "parking" |\n "chance" | "chest" | "incometax" | "supertax" } class Debt { +amount: number +payDebt(): void +toString(): string +game: MonopolyGame +debtor: Player +creditor: Player +initialAmount: number } MonopolyGame --> "*" Player MonopolyGame --> "*" Debt MonopolyGame --> "*" Card MonopolyGame --> "*" Square MonopolyGame --> "1" HouseRules Player --> "*" Property Player --> "1" Square Property --> "1" Player Square --> "*" Player Square --> "1" Property Debt --> "1" MonopolyGame Debt --> "1" Player @enduml
Decode URL
Submit
amiga
aws-orange
black-knight
bluegray
blueprint
cerulean-outline
cerulean
crt-amber
crt-green
cyborg-outline
cyborg
hacker
lightgray
mars
materia-outline
materia
metal
mimeograph
minty
plain
reddress-darkblue
reddress-darkgreen
reddress-darkorange
reddress-darkred
reddress-lightblue
reddress-lightgreen
reddress-lightorange
reddress-lightred
sandstone
silver
sketchy-outline
sketchy
spacelab
spacelab-white
superhero-outline
superhero
toy
united
vibrant
Pure Javascript
PNG
SVG
ASCII Art