|
|
|
@ -3,10 +3,6 @@
|
|
|
|
|
skinparam linetype polyline
|
|
|
|
|
skinparam linetype ortho
|
|
|
|
|
package "Qwirkle" {
|
|
|
|
|
package "Boards" {
|
|
|
|
|
class Board
|
|
|
|
|
class Cell
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
package "Games" {
|
|
|
|
|
class Game
|
|
|
|
@ -19,52 +15,18 @@ package "Qwirkle" {
|
|
|
|
|
class Score
|
|
|
|
|
class LeaderBoard
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
package "Tiles" {
|
|
|
|
|
class Tile
|
|
|
|
|
class TileBag
|
|
|
|
|
enum Color
|
|
|
|
|
enum Shape
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
package "Events" {
|
|
|
|
|
class AddPlayerNotifiedEventArgs
|
|
|
|
|
class EndOfGameNotifiedEventArgs
|
|
|
|
|
class NextPlayerNotifiedEventArgs
|
|
|
|
|
class PlaceTileNotifiedEventArgs
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
package "Persistences" {
|
|
|
|
|
class GamePersistence
|
|
|
|
|
class LeaderBoardPersistence
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
package "Program" {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Cell <--* Board
|
|
|
|
|
|
|
|
|
|
IPlayer ..|> Game
|
|
|
|
|
IRules ..|> Game
|
|
|
|
|
|
|
|
|
|
Score <--* LeaderBoard
|
|
|
|
|
|
|
|
|
|
Tile <--* TileBag
|
|
|
|
|
Tile --> Color
|
|
|
|
|
Tile --> Shape
|
|
|
|
|
|
|
|
|
|
Program ..> Boards : <<import>>
|
|
|
|
|
Program ..> Games : <<import>>
|
|
|
|
|
Program ..> Players : <<import>>
|
|
|
|
|
Program ..> Tiles : <<import>>
|
|
|
|
|
Program ..> Events : <<import>>
|
|
|
|
|
|
|
|
|
|
Games ..> Boards : <<import>>
|
|
|
|
|
Games ..> Players : <<import>>
|
|
|
|
|
Games ..> Tiles : <<import>>
|
|
|
|
|
Games ..> Events : <<import>>
|
|
|
|
|
Boards ..> Tiles : <<import>>
|
|
|
|
|
Players ..> Tiles : <<access>>
|
|
|
|
|
|
|
|
|
|
GamePersistence ..> Game
|
|
|
|
|
LeaderBoardPersistence ..> LeaderBoard
|
|
|
|
|