Example (console app) with a class Crossing that can have TrafficLights that may not be on green at the same time.
As a starting point, you can use the training command TrafficLight and expand from there. See [[../../objects/training_Enum_TrafficLight]].
Sample code/possible elaboration: Crossing.zip