IF
DialogEnded("NPC Dialog name", INT InstanceID)
THEN
GlobalSetEvent("blahblah")
IF
GlobalEventSet("blahblah")
THEN
CharacterMoveToTrigger("NPC name", TRIGGER name, INT running, "NPC is moving")
Something like that might work. The way that the Story functions appear to work is that all of the relevent IF's get called sequentially from the same event. In the sequential order, it then checks whether the ANDs are fulfilled as well for each IF.
In your case, you might want to set a global event after the dialog ends. That event setting then triggers the IF statement that it is checking for, which is what moves the character.