Ejemplo n.º 1
0
        private async Task <bool> Start()
        {
            if (navigator == null && BotManager.Current.EnglishName != "Fate Bot")
            {
                var settings = EnableFlightSettings.Instance;
                navigator = new FlightEnabledNavigator(
                    Navigator.NavigationProvider,
                    new FlightEnabledSlideMover(Navigator.PlayerMover, new FlightMovementArgs {
                    MountId = settings.MountId
                }),
                    new FlightNavigationArgs
                {
                    ForcedAltitude            = settings.ForcedAltitude,
                    InverseParabolicMagnitude = settings.InverseParabolicMagnitude,
                    Radius    = settings.Radius,
                    Smoothing = settings.Smoothing
                });

                cleanup = bot =>
                {
                    DoCleanup();
                    DisposeNav();
                    TreeRoot.OnStop -= cleanup;
                };

                TreeRoot.OnStop += cleanup;

                Logger.Info("Started Flight Navigator.");
            }

            return(false);
        }
Ejemplo n.º 2
0
 private void DoCleanup()
 {
     if (navigator != null)
     {
         Logger.Info("Stopped Flight Navigator.");
         navigator.Dispose();
         navigator = null;
     }
 }
Ejemplo n.º 3
0
        private async Task<bool> Start()
        {
            if (navigator == null)
            {
                navigator = new FlightEnabledNavigator(
                    Navigator.NavigationProvider,
                    new FlightEnabledSlideMover(Navigator.PlayerMover),
                    new FlightNavigationArgs
                    {
                        ForcedAltitude = EnableFlightSettings.Instance.ForcedAltitude,
                        InverseParabolicMagnitude = EnableFlightSettings.Instance.InverseParabolicMagnitude,
                        LogWaypoints = EnableFlightSettings.Instance.LogWaypoints,
                        Radius = EnableFlightSettings.Instance.Radius,
                        Smoothing = EnableFlightSettings.Instance.Smoothing
                    });

                cleanup = bot =>
                {
                    DoCleanup();
                    DisposeNav();
                    TreeRoot.OnStop -= cleanup;
                };

                TreeRoot.OnStop += cleanup;

                Logging.Write(Colors.DeepSkyBlue, "Started Flight Navigator.");
            }

            return false;
        }
Ejemplo n.º 4
0
 private void DoCleanup()
 {
     if (navigator != null)
     {
         Logging.Write(Colors.DeepSkyBlue, "Stopped Flight Navigator.");
         navigator.Dispose();
         navigator = null;
     }
 }