I just finished the scene tutorial yesterday so probably premature for me to suggest anything, but hopefully you'll forgive it if its dumb ...
One feature I liked, from a non-adventure game called Tropico, for scripting events was its events scheduler. The system kept track of years, months and days and you could simply add events to any one of the lists (monthly events, weekly events, yearly events) and they'd run. It was something like
CheckFrequencyYearBegin
CheckFrequencyYearEnd
CheckFrequencyMonthBegin
CheckFrequencyMonthEnd
CheckFrequencyWeekBegin
CheckFrequencyWeekEnd
CheckFrequencyDayBegin
CheckFrequencyDayEnd
So you could simply add stuff like this (pseudocode)
CheckFrequencyDayBegin
Call NightToDay
Call TurnOnStreetLights
CheckFrequencyDayEnd
Call DayToNight
Call TurnOffStreetLights
Entity1.ChangeColor
CheckFrequencyWeekEnd
Call AddGold
CheckFrequencyMonthBegin
If Month > 9 < 12 && PlayerIsOutside
Call RandomWinterStorms
Else NormalWeather
CheckFrequencyYearBegin
If Year 2 Then Call TeleportToHiddenRoom
Hope this makes sense.