bool BookmarkPrep(object[] Params) { Bookmark Bookmark = (Bookmark)Params[0]; int Distance = (int)Params[1]; if (Bookmark == null) { return(true); } if (Session.InStation) { if (Session.StationID == Bookmark.ItemID) { return(true); } QueueState(Undock); QueueState(BookmarkPrep, -1, Bookmark, Distance); return(true); } if (Bookmark.LocationID != Session.SolarSystemID) { if (Route.Path.Last() != Bookmark.LocationID) { Log.Log("|oSetting course"); Log.Log(" |-g{0}", Bookmark.Title); Bookmark.SetDestination(); } QueueState(AutoPilot, 2000); } if (Bookmark.Dockable() && Bookmark.LocationID == Session.SolarSystemID) { QueueState(Dock, -1, Entity.All.FirstOrDefault(a => a.ID == Bookmark.ItemID)); } else { QueueState(BookmarkWarp, -1, Bookmark, Distance); } return(true); }