I'd like to suggest a function for calculating the shorted path for AI inside a building, analoguous to calculatePath, taking into account ladders, and ideally worked in both Unscheduled and Scheduled environments (without needing agents with eventhandlers).
path = calculateBuildingPath [startpos near or inside building, endpos near or inside building, building] ;
(near or inside: for AI to find way into/out of building)