Update Osztály diagram: Data update authored by Bahil Botond's avatar Bahil Botond
# Modell (logika) # Modell (logika)
```plantuml ```plantuml
package Logic.Data{ package Logic.Data{
package Logic.World{ package Logic.World{
...@@ -29,7 +30,7 @@ package Logic.World{ ...@@ -29,7 +30,7 @@ package Logic.World{
} }
abstract Building extends TileObject{ abstract Building extends TileObject{
+ Owner(): GameTeam{get} + OwnerColor(): Color{get}
} }
class Obstacle extends TileObject{ class Obstacle extends TileObject{
...@@ -44,7 +45,8 @@ package Logic.World{ ...@@ -44,7 +45,8 @@ package Logic.World{
} }
class Barrack extends Building{ class Barrack extends Building{
- _checkPoints: IList<TilePosition>
+ CheckPoints(): IReadOnlyCollection<TilePosition>{get}
} }
class Castle extends Building{ class Castle extends Building{
...@@ -61,10 +63,11 @@ package Logic.Unit{ ...@@ -61,10 +63,11 @@ package Logic.Unit{
abstract Unit{ abstract Unit{
- _checkpoints: IList<TilePosition> - _checkpoints: IList<TilePosition>
+ Owner(): GameTeam{get} + OwnerColor(): Color{get}
+ Cost(): int{get} + Cost(): int{get}
+ NextCheckpoint(): TilePosition + NextCheckpoint(): TilePosition
} }
Unit o-- TilePosition
interface IUnitTypeData{ interface IUnitTypeData{
+ Name(): String{get} + Name(): String{get}
...@@ -78,13 +81,26 @@ package Logic.Unit{ ...@@ -78,13 +81,26 @@ package Logic.Unit{
} }
class GameTeam{
+ TeamColor(): Color{get}
+ Barracks(): IReadOnlyCollection<Barrack>
+ CastlePos(): TilePosition{get}
+ Money(): int{get}
+ AliveUnitCount(): int{get}
+ PresentTowerCount(): int{get}
+ MoneySpent(): int{get}
+ PurchasedUnitCount(): int{get}
+ BuiltTowerCount(): int{get}
}
GameTeam o-- TilePosition
enum Phase{ enum Phase{
PREPARE PREPARE
FIGHT FIGHT
} }
enum GameTeam{ enum Color{
RED RED
BLUE BLUE
} }
... ...
......