Do you have access to FBD in Logix5k? I've never used it before, so it's all an experiment for me.
In LAD, you can reset a TON in 2 ways: with a RESet instruction or by disabling the rung-in condition. Either will stop a TON's timing. A TOF behaves differently. An RTO can only be RESet with a RES instruction (or manually manipulating the ACC and DN bits, but you probably shouldn't be doing any of that in general...).
In other words....in the original LAD code, the lights will turn on in sequence and stay on until Stop_Button is activated. If you only want one light at a time, try this:
Remove REDLT from rung 1 and use Virtual_Relay to drive RedTime.
Use RedTime.TT to turn on REDLT in rung 0.
Use RedTime.DN to run GreenTime in rung 2 and GreenTime.TT to turn on GREENLT in rung 0.
Use GreenTime.DN to run WhiteTime in rung 2 and WhiteTime.TT to turn on AMBERLT in rung 0.
After the timers are done, the lights will all be off until Stop_Button is pushed and then Start_Button is pushed. If you want the timers to "self reset", add "XIO WhiteTime.DN" where you already have "XIO Stop_Button". That will drop out Virtual_Relay, which will drop the EN to RedTime, which will turn off its DN bit, which will cascade down and reset the other timers. Then, the system will be ready for another run with Start_Button.
In FBD...I'd have to tinker with it some. First thing I'd try is to precede each LT with a LES instruction comparing its corresponding timer's ACC to its PRE. That may not quite work, though. Then I'd add WhiteTime's DN signal with a NOT to BAND_01