Changes
Page history
Update Osztály diagram: elaborate on unit navigation
authored
Mar 03, 2022
by
Sárközi Gergely János
Show whitespace changes
Inline
Side-by-side
Osztály-diagram.md
View page @
bbbd1007
...
@@ -32,6 +32,13 @@ package Logic.Data.World{
...
@@ -32,6 +32,13 @@ package Logic.Data.World{
+ DestroyTower(Tower): void
+ DestroyTower(Tower): void
}
}
class WorldNavigation{
+ IsPositionReachable(from: Vector2, to: Vector2): bool
+ TryGetPathDeltas(Vector2, Vector2, collider: float): IEnumerable<Vector2>
}
GameWorld o-- WorldNavigation
Unit --> WorldNavigation
abstract TileObject{
abstract TileObject{
+ World(): GameWorld{get}
+ World(): GameWorld{get}
}
}
...
@@ -78,6 +85,7 @@ package Logic.Data.World{
...
@@ -78,6 +85,7 @@ package Logic.Data.World{
+ Owner(): GameTeam{get}
+ Owner(): GameTeam{get}
+ NextCheckpoint(): TilePosition
+ NextCheckpoint(): TilePosition
+ Move(float): void
+ Move(float): void
+ SkipUnreachableCheckpoints() : void
+ Position(): Vector2{get}
+ Position(): Vector2{get}
}
}
...
@@ -470,6 +478,11 @@ class DestroyCastleSystem {
...
@@ -470,6 +478,11 @@ class DestroyCastleSystem {
}
}
DestroyCastleSystem ---> Castle
DestroyCastleSystem ---> Castle
DestroyCastleSystem ---> GameWorld
DestroyCastleSystem ---> GameWorld
class UpdateUnitCheckpointsSystems {
- On(PhaseAdvancedEvent)
}
UpdateUnitCheckpointsSystems ---> Unit
```
```
# Diszpécser rendszerek (`CommandDispatcher`, `EventDispatcher`)
# Diszpécser rendszerek (`CommandDispatcher`, `EventDispatcher`)
...
@@ -524,10 +537,21 @@ abstract "BaseCommand<BiCommandResult>" extends BaseCommand{
...
@@ -524,10 +537,21 @@ abstract "BaseCommand<BiCommandResult>" extends BaseCommand{
}
}
```
```
# `Event`-ek (események)
# `Event`-ek (események)
Mindegyik
`...Event`
, ami nem interfész, az a
`BaseEvent`
alosztálya. Ez nincs jelölve a diagrammon a jobb átláthatóság érdekében.
Mindegyik
`...Event`
, ami nem interfész, az a
`BaseEvent`
alosztálya. Ez nincs jelölve a diagrammon a jobb átláthatóság érdekében.
```
plantuml
package Logic.Event {
class PhaseAdvancedEvent {
+ Game : GameOverview {get}
+ OldPhase : GamePhase {get}
}
}
```
```
plantuml
```
plantuml
package Logic.Event.World.Tower {
package Logic.Event.World.Tower {
...
...
...
...