Hello,
to use elevator you can use this sample: https://wrobot.eu/forums/topic/2681-snippets-codes-for-quest-profiles/?do=findComment&comment=24442
In WRobot code, I use offmeshconnection for that like:
new PathFinder.OffMeshConnection(new List<Vector3>
{
new Vector3(1900.185, -4362.321, 43.23154),
new Vector3(1901.796, -4370.77, 44.39288) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Ogrimmar > Wait Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(206609).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.Z <= 44) break; Thread.Sleep(10); }"},
new Vector3(1903.901, -4382.015, 105.6566) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Ogrimmar > Wait to leave Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(206609).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.Z >= 105) break; Thread.Sleep(10); }"},
}, (int)ContinentId.Kalimdor),