Staff and buildings
This branch implemets much of the features related to cleaning and maintenance (#8 (closed)).
New features:
- Building will randomly break down, notify
MaintenanceDispacher
, accept maintainer wait for repair and let mainainer go returning to being operational once again. (#63 (closed)) -
MaintenanceBuilding
andCleaningBuilding
spawn maintainers and cleaners respectively. (#49 (closed)) - Pavements can have garbage cans or can be littered on. Litter makes visitors' mood decrease more rapidly (depending on its amount). Visitors are more likely to litter after eating. (#64 (closed))
Related additions:
- BuildingBlueprint now has two new properties:
RepairTime
andExpectedLifeSpan
- PavementBlueprint now has a new property:
GarbageCanPrice
- Buildings now have two new displayed Properties:
underConstruction
andneedsRepair
instead ofisOperational
- Pavements now have two new displayed Properties:
hasGarbageCan
andgarbageAmount
- Pavements now have a new Command, that adds garbage can if there wasn't any before.
Other improvements:
- Entrance can now have different properties to every other pavement (eg. it should be and is free).
Bug fixes:
- Pavement cost is now deduced from player account. (#62 (closed))
- Person's destination is changed to null on arrival. (I thought
GetNextOnRoute
returnsINVALID
if no more steps can be taken.)
Future improvenets:
- Change breaking distribution to be more realistic. (#65 (closed))
- Add names to staff (#66)
- Make teleportation of staff invisibe. (#67 (closed))
- Make staff spawn at the entrance of their buildings. (same as in #46 (closed))
- Display garbage and bin (#51 (closed))
- Make being broken and repaired change the look of the building (#50 (closed)), show time until repaired.
- Make the distinction between entrance and Pavement more obvious to make avoiding infinite recursion when reporting back price and new Pavement to Park more straightforward.
- Repair buildings when they become accessible (#44 (closed))
A comment in Building's commands contains one that lets the user to make a building artificially brake down. If you find it unnecessary, I'll remove it.