Sorry for the late reply.
I think using variables/switches would definitely be the way to go here.
The problem is that quests aren't linked to specific events so has no context outside of the quest's own start/complete conditions.