I don't have it scripted properly at all yet (haven't scripted anything in years, relearning the process), but basically I *think* the logical steps would be something as follows:
When SetPlayerTeammate first fires:
StartDating=GetCurrentGameTime.
Every day, check GetCurrentGameTime-StartDating.
While (GetCurrentGameTime-StartDating<21)
setstage QuestCan'tBeMarriedYet 10
When (GetCurrentGameTime-StartDating=21)
setstage QuestCan'tBeMarriedYet 20 (or finish quest, whatever.)
The part I haven't found/figured out yet is how to run the GetCurrentGameTime-StartDating check every in-game day, or how the game calculates days passed while waiting, that sort of thing.
Help? Thoughts? Suggestions on what might work better?