Changes
Page history
Update Class-Diagram
authored
Mar 02, 2021
by
Pőcze Barnabás
Show whitespace changes
Inline
Side-by-side
Class-Diagram.md
View page @
3845f195
...
...
@@ -145,8 +145,8 @@ package Model.Map {
class Cell {
}
Cell
*
- "1" MapObject
Cell
*
-- "{0,1}" VertexHandle
Cell
o
- "1" MapObject
Cell
o
-- "{0,1}" VertexHandle
enum Orientation {
NORTH
...
...
@@ -157,17 +157,16 @@ package Model.Map {
class Placement {
+ Pos : Vector2
+ Orientation : Orientation
}
Placement *- "1" Orientation
class Map {
+ Map(Vector2)
+ CanBuild(IMapObjectBlueprint, Orientation) : bool
+ Build(IMapObjectBlueprint, Orientation) : (IDisplayable, IInspectable)
}
Map *- "*" Cell
Map
*
-- "1" NavigationGraph
Map
o
-- "1" NavigationGraph
Simulation *-- "1" Map
IBuilder <|-- Map
...
...
@@ -206,6 +205,12 @@ package Model.People {
+ SetDestination(MapObject)
}
class VisitorEffect {
+ MoodChange : int
+ MoneyChange : int
+ SatietyChange : int
}
class Visitor {
- mood : int
- satiety : int
...
...
@@ -213,7 +218,7 @@ package Model.People {
- inQueue : bool
+ Visitor(Vector2, float, int, int, int)
- ChooseDestination()
+ DeliverEffects(
int, int, in
t)
+ DeliverEffects(
VisitorEffec
t)
+ GameEnded(Vector2)
+ Tick() {override}
+ GetProperties() : IEnumerable<Property> {override}
...
...
@@ -275,11 +280,27 @@ package Model.Landscape {
}
PavementBlueprint --|> ObjectBlueprint
class QueuePavementBlueprint {
+ Place(Map, Placement) : MapObject {override}
}
QueuePavementBlueprint --|> PavementBlueprint
class StaffBuildingBlueprint {
+ SpawnedStaffCount: int
+ Place(Map, Placement) : MapObject {override}
}
StaffBuildingBlueprint --|> BuildingBlueprint
class CleaningLadyBuildingBlueprint {
}
CleaningLadyBuildingBlueprint --|> StaffBuildingBlueprint
class MaintenanceGuyBuildingBlueprint {
}
MaintenanceGuyBuildingBlueprint --|> StaffBuildingBlueprint
class VisitableBuildingBlueprint {
+ Capacity: int
+ EntryFee: int
...
...
@@ -288,6 +309,8 @@ package Model.Landscape {
+ ConstructionCost: int
+ MinVisitorCountToStart: int
+ TimePerRound: int
+ EffectOnVisitor : VisitorEffect
+ RepairCost: int
+ Place(Map, Placement) : MapObject {override}
}
...
...
@@ -298,6 +321,7 @@ package Model.Landscape {
WORKING
WAITING
UNDER_CONSTRUCTION
BEING_REPAIRED
}
abstract class Building {
...
...
@@ -312,12 +336,19 @@ package Model.Landscape {
}
StaffBuilding --|> Building
class CleaningLadyBuilding {
}
CleaningLadyBuilding --|> StaffBuilding
class MaintenanceGuyBuilding {
}
MaintenanceGuyBuilding --|> StaffBuilding
class VisitableBuilding {
- Capacity: int
- EntryFee: int
- MaintenanceCostPerVisitor: int
- MinVisitorCountToStart: int
- TimePerRound: int
+ Enter(Person) : Vector2? {override}
+ Exit(Person) {override}
...
...
...
...