Diagram update

This commit is contained in:
aqys
2026-03-25 11:30:08 +01:00
committed by GitHub
parent 09998f8e07
commit 74c3201555

110
README.md
View File

@@ -11,73 +11,91 @@
```mermaid ```mermaid
classDiagram classDiagram
class IEquipment{ class IEquipment {
<<interface>> <<interface>>
+void Equip() +void Equip()
+void Unequip() +void Unequip()
+void Use() +void Use()
} }
Food ..|> IEquipment
Gun ..|> IEquipment
class Person{ class ICitizenBuilder {
<<interface>>
+ICitizenBuilder CreateAdult()
+ICitizenBuilder CreateChild()
+ICitizenBuilder WithGun()
+ICitizenBuilder WithFood()
+Person BuildCitizens()
}
class Gun {
+string Name
+int Damage
+void Use()
}
class Food {
+string Name
+int HealthPoints
+void Use()
}
class Person {
<<abstract>> <<abstract>>
+string Name +string Name
+int Health +int Health
+List~Equipment~ Inventory +List~IEquipment~ Inventory
+Location Location
+int Money
+int Age
+void Walk()
} }
AdultCitizen --|> Person
ChildCitizen --|> Person
IEquipment ..|> Person
class AdultCitizen{ class AdultCitizen{
}
class ChildCitizen{
} }
class Location{ class ChildCitizen{
}
class Location {
<<abstract>> <<abstract>>
+string Name +string Name
} }
class Store {
+Dictionary~object, int~ Inventory
}
class Bank{
}
class GunStore{
}
class EggStore{
}
class CitizenBuilder{
}
class GameManager {
-List~Store~ Stores
+Task StartClock()
}
Gun ..|> IEquipment
Food ..|> IEquipment
AdultCitizen --|> Person
ChildCitizen --|> Person
Person o-- IEquipment
Bank --|> Location Bank --|> Location
Store --|> Location Store --|> Location
Person ..|> Location
class Logger{
<<singleton>>
+void Log()
}
class Food{
+string Name
+int HealthPoints
+Use()
}
class Gun{
+string Name
+int Damage
+Use()
}
class Store{
+Dictionary~IEquipment int~ Inventory
}
GunStore --|> Store GunStore --|> Store
EggStore --|> Store EggStore --|> Store
IEquipment --|> Store
class SimulationManager{ CitizenBuilder ..|> ICitizenBuilder
+void StartSim() CitizenBuilder --> Person
+List~Equipment~ Equipment GameManager --> Store
+List~Location~ Locations
}
IEquipment ..|> SimulationManager
Person ..|> SimulationManager
Location ..|> SimulationManager
``` ```