# NPC.library string npc_directions "north" "south" "east" "west" string npc_directions "northeast" "northwest" "southeast" "southwest" string npc_directions "up" "down" "in" "out" string npc_opposite "south" "north" "west" "east" string npc_opposite "southwest" "southeast" "northwest" "northeast" string npc_leaves " heads off to the " string npc_leaves " walks " string npc_leaves " heads " string npc_leaves " leaves to the " string npc_arrives " enters from the " string npc_arrives " arrives from the " string npc_arrives " arrives here from the " string npc_arrives " approaches from the " integer npc_index # THIS FUNCTION PUSHES THE SPECIFIED NPC TOWARDS THE SPECIFIED LOCATION {+push_to #ARGS: 0 : npc_loc(COUNTER) < objects set npc_index + 1 endif set COUNTER + 1 until COUNTER = 10 if npc_index = 0 return endif # WHICH EXIT SHALL WE CHOOSE... set max_rand = npc_index set npc_index = random set COUNTER = 0 repeat ifall npc_loc(COUNTER) > 0 : npc_loc(COUNTER) < objects set npc_index - 1 if npc_index = 0 #...AH, THIS ONE! execute "+push_object objects return false endif set arg[0](parent) = UTILS_temp if player(parent) = arg[0](parent) if here hasnt DARKNESS write "^" arg[0]{The} execute +from_direction