Update Class-Diagram authored by Pőcze Barnabás's avatar Pőcze Barnabás
......@@ -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, int)
+ DeliverEffects(VisitorEffect)
+ 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}
......
......