Update Osztály diagram: add system component authored by Sárközi Gergely János's avatar Sárközi Gergely János
...@@ -100,6 +100,40 @@ enum Phase{ ...@@ -100,6 +100,40 @@ enum Phase{
``` ```
# `System` komponens
Mindegyik `...System` a `BaseSystem` alosztálya és implementálja a `RegisterListeners(EventDispatcher)` metódust. Ez nincs jelölve a diagrammon a jobb átláthatóság érdekében.
```plantuml
package Logic.System {
abstract BaseSystem {
+ {abstract} RegisterListeners(EventDispatcher) : void
}
class RefreshUnitPositionSystem {
- On(WorldSimulatedPhysicsEvent)
}
class UnitDamagesCastleSystem {
- On(UnitMovedCellEvent)
}
class TurretDamagesUnitSystem {
- On(TurretShootEvent)
}
class DestroyUnitSystem {
- On(UnitDamagedEvent)
}
class DestroyCastleSystem {
- On(CastleDamagedEvent)
}
}
```
# Dispatcher rendszerek # Dispatcher rendszerek
```plantuml ```plantuml
...@@ -141,6 +175,8 @@ BaseCommand --> ICommandResult ...@@ -141,6 +175,8 @@ BaseCommand --> ICommandResult
# Különböző eventek kifejtve # Különböző eventek kifejtve
Mindegyik `...Event` a `BaseEvent` alosztálya. Ez nincs jelölve a diagrammon a jobb átláthatóság érdekében.
```plantuml ```plantuml
package Logic.Event.World.Turret { package Logic.Event.World.Turret {
class TurretBuiltEvent class TurretBuiltEvent
...@@ -167,6 +203,8 @@ package Logic.Event.World { ...@@ -167,6 +203,8 @@ package Logic.Event.World {
# Különböző parancsok kifejtve # Különböző parancsok kifejtve
Mindegyik `...Command` a `BaseCommand` alosztálya. Ez nincs jelölve a diagrammon a jobb átláthatóság érdekében.
```plantuml ```plantuml
package Logic.Command.World { package Logic.Command.World {
class AdvanceTimeCommand class AdvanceTimeCommand
... ...
......