As much as I hate signals, that is the only thing that would work here
Code:
quest::signal(npc_id, wait=0 ) # cause an EVENT_SIGNAL on all mobs in the zone with this NPC type, with $signalid = 0. wait is an optional time to wait in ms before sending signal.
quest::signalwith(npc_id,signal_id, wait=0) # same as signal(), except it sets $signal to the supplied signal_id. wait is an optional time to wait in ms before sending signal.