,-------------------------------------------------------------. |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 | `-------------------------------------------------------------' ,----------------------. ,--------------------------------------------------------------------. |Debt | |Card | |----------------------| |--------------------------------------------------------------------| ,----------. |+amount: number | |+text: string | |HouseRules| |+payDebt(): void | |+action: "advance" | "back" | "choice" | "payeach" | "collecteach" || |----------| |+toString(): string | | "doubletransport" | "earn" | "pay" | "stealmoney" | "stolenmoney" || `----------' |+game: MonopolyGame | | "streetrepairs" | "gotojail" | |+debtor: Player | |+value?: string | number | number[] | |+creditor: Player | `--------------------------------------------------------------------' |+initialAmount: number| `----------------------' ,----------------------------. |Player | |----------------------------| |+ownedProperties: Property[]| |+currentSquare: Square | |+turnsInJail: number | |+name: string | |+money: number | `----------------------------' ,--------------------------------------------------------------------. |Square | |--------------------------------------------------------------------| |+occupants: Player[] | |+addOccupant(occupant: Player): void | |+removeOccupant(occupant: Player): void | |+squareContents: "gotojail" | Property | "go" | "jail" | "parking" || | "chance" | "chest" | "incometax" | "supertax" | `--------------------------------------------------------------------' ,----------------------------------------------------------------------. |Property | |----------------------------------------------------------------------| |+buildingsCount: number | |+isMortgaged: boolean | |+owner: Player | |+name: string | |+color: "brown" | "lightblue" | "pink" | "orange" | "red" | "yellow" || | "green" | "blue" | "white" | |+price: number | |+rent: number[] | "transport" | "utility" | |+buildPrice: number | `----------------------------------------------------------------------'