Thanks! I never used formlists yet. But the event OnUpdate() is called with a weather chage too?
No. (OnUpdate is always called, depending on the time interval you set for it to fire)
You run an OnUpdate check continuously, comparing the old value to the current value. When the two values are not equal that means you have a weather transition. Depending on what you are doing you also need to determine if it is still in transition using GetCurrentWeatherTransition which returns the fraction complete the transition is. Then you can set the old weather using GetOutgoingWeather() or just set oldWeather = curWeather before setting the curWeather to the new weather.
More generally, weather is changing if GetCurrentWeather is < 1.0 or > 0. But that is two comparisons and it may be quicker just to check that the current weather is not the same as the previous weather.
Edit: Also, GetOutgoingWeather != None should tell you in one step if a transition is occurring. It returns None if there is no transition currently happening.