コード例 #1
0
        public void KeyUp(Key key)
        {
            if (key == Key.Space)
            {
                SpaceCraft.SetThrottle(0);

                SpaceCraft.Stage();
            }

            if (key == Key.X)
            {
                SpaceCraft.SetThrottle(0);
            }

            if (key == Key.Z)
            {
                SpaceCraft.SetThrottle(100);
            }

            if (key == Key.Q && !IsRetrograde)
            {
                IsPrograde = !IsPrograde;
            }

            if (key == Key.W && !IsPrograde)
            {
                IsRetrograde = !IsRetrograde;
            }
        }
コード例 #2
0
ファイル: ShutdownCommand.cs プロジェクト: rdancer/SpaceSim
        public override void Finalize(ISpaceCraft spaceCraft)
        {
            spaceCraft.SetThrottle(0);

            foreach (IEngine engine in spaceCraft.Engines)
            {
                engine.Shutdown();
            }
        }
コード例 #3
0
ファイル: ShutdownCommand.cs プロジェクト: rdancer/SpaceSim
        public override void Finalize(ISpaceCraft spaceCraft)
        {
            spaceCraft.SetThrottle(0);

            foreach (IEngine engine in spaceCraft.Engines)
            {
                engine.Shutdown();
            }
        }
コード例 #4
0
ファイル: IgnitionCommand.cs プロジェクト: rdancer/SpaceSim
        public override void Update(double elapsedTime, ISpaceCraft spaceCraft)
        {
            double timeRatio = elapsedTime - StartTime;

            spaceCraft.SetThrottle(_throttle * timeRatio);
        }
コード例 #5
0
ファイル: IgnitionCommand.cs プロジェクト: rdancer/SpaceSim
 public override void Finalize(ISpaceCraft spaceCraft)
 {
     spaceCraft.SetThrottle(_throttle);
 }
コード例 #6
0
ファイル: IgnitionCommand.cs プロジェクト: rdancer/SpaceSim
        public override void Update(double elapsedTime, ISpaceCraft spaceCraft)
        {
            double timeRatio = elapsedTime - StartTime;

            spaceCraft.SetThrottle(_throttle * timeRatio);
        }
コード例 #7
0
ファイル: IgnitionCommand.cs プロジェクト: rdancer/SpaceSim
 public override void Finalize(ISpaceCraft spaceCraft)
 {
     spaceCraft.SetThrottle(_throttle);
 }
コード例 #8
0
ファイル: ShutdownCommand.cs プロジェクト: ap0r/SpaceSim
        public override void Update(double elapsedTime, ISpaceCraft spaceCraft)
        {
            double shutdownRatio = (elapsedTime - StartTime) * 2;

            spaceCraft.SetThrottle(_currentThrottle * (1 - shutdownRatio), _engineIds);
        }
コード例 #9
0
ファイル: ThrottleCommand.cs プロジェクト: ap0r/SpaceSim
        // Interpolate between current and target throttle over the duration
        public override void Update(double elapsedTime, ISpaceCraft spaceCraft)
        {
            double ratio = (elapsedTime - StartTime) / Duration;

            spaceCraft.SetThrottle(_currentThrottle * (1 - ratio) + _targetThrottle * ratio);
        }
コード例 #10
0
ファイル: ThrottleCommand.cs プロジェクト: rdancer/SpaceSim
        // Interpolate between current and target throttle over the duration
        public override void Update(double elapsedTime, ISpaceCraft spaceCraft)
        {
            double ratio = (elapsedTime - StartTime) / Duration;

            spaceCraft.SetThrottle(_currentThrottle * (1 - ratio) + _targetThrottle * ratio);
        }
コード例 #11
0
ファイル: ShutdownCommand.cs プロジェクト: rdancer/SpaceSim
        public override void Update(double elapsedTime, ISpaceCraft spaceCraft)
        {
            double shutdownRatio = (elapsedTime - StartTime) * 2;

            spaceCraft.SetThrottle(_currentThrottle * (1-shutdownRatio));
        }