@startuml
left to right direction

node "MainCamera"{
    node "BackgroundImage"
    [CameraController]
}

node "Player"{
    [PlayerController]
    node "PlayerModel"
    node "PlayerWeapon"{
        [PlayerWeaponController]
        node "TurretModel"
    }
}

node "Enemy"{
    [EnemyController]
    node "EnemyModel"
    node "EnemyWeapon"{
        [EnemyWeaponController]
        node "TurretModel"
    }
}

node "AsteroidModel"{
    [AsteroidController]
}

node "StationModel"{
    [GoalController]
}

node "Boundry"{
    [BoundryBehaviour]
    [SpawnManager]
}

node "Canvas"{
    node "Crosshair"
    node "PlayerHealthBar"
    [UiController]
}

@enduml