SelectedUnitUiManager

The SelectedUnitUiManager subscribes to the SelectedUnitProperty of the ScenePlayerContext so it can react when the selected unit changes.

This way the SelectedUnitUiManager is practically optional in that there will be no errors when it is not present.

Functionality:

On Start, it collects all UnitPanelBhv that are children of itself: GetComponentsInChildren<UnitPanelBhv>()

When the selected unit changes, it updates all UnitPanelBhv. This means that you can delete such a panel (while the game is not running) without getting an error, or you can add your own and it will be picked up.