Esempio n. 1
0
        void HandleTrigger(string argument)
        {
            switch (argument)
            {
            case "GoUp":
                _crawlerStatus = CrawlerStatus.GoUp;
                _lowerLandingGear.Lock();
                _upperLandingGear.Unlock();
                ExtendPistons();
                break;

            case "GoDown":
                _crawlerStatus = CrawlerStatus.GoDown;
                _upperLandingGear.Lock();
                _lowerLandingGear.Unlock();
                ExtendPistons();
                break;

            case "Stop":
                _crawlerStatus = CrawlerStatus.Stop;
                break;

            default:
                Echo($"Invalid option: {argument}\n");
                break;
            }
        }
Esempio n. 2
0
        void Recall()
        {
            switch (State_Machine.CurrentState)
            {
            case "Dock":
                Message("Cannot recall the drone at this stage."); break;

            default:
            {
                if (Clamp.WorldMatrix != MatrixD.Identity)
                {
                    Clamp.Unlock();
                }
                State_Machine.CurrentState = "ReturnHome";
            };
                break;
            }
        }
 private void ToggleGear(IMyLandingGear gear, bool state)
 {
     if (state)
     {
         gear.Lock();
         gear.AutoLock = true;
     }
     else
     {
         gear.Unlock();
         gear.AutoLock = false;
     }
 }
    public void Raise()
    {
        float t = -1 * RAISE_SPEED * Speed_Multx;

        TargetLeg = LegStatus.Raised;
        Hinge1.TargetVelocityRPM = t;
        Hinge2.TargetVelocityRPM = t;
        Hinge3.TargetVelocityRPM = t;
        Hinge4.TargetVelocityRPM = t;
        Stopped = false;
        LandingGear.Unlock();
        LandingGear.AutoLock = false;
    }
            public void GearsLock(bool bLock = true)
            {
                for (int i = 0; i < gearList.Count; i++)
                {
                    IMyLandingGear g = gearList[i] as IMyLandingGear;
                    if (g == null)
                    {
                        continue;
                    }
                    if (bLock)
                    {
                        g.Lock();
                    }
                    else
                    {
                        g.Unlock();
                    }

                    //                blockApplyAction(gearList[i], "Lock");
                }
            }
        public void Main(string argument, UpdateType updateSource)
        {
            try
            {
                switch (argument)
                {
                case "RUN":
                {
                    if (!running)
                    {
                        switch (_state)
                        {
                        case State.Closed:
                        {
                            _pistonInOut.Reverse();
                            _timer.TriggerDelay = 0.5f;
                            _timer.StartCountdown();
                            _gear.Unlock();

                            _state  = State.Open_Initial;
                            running = true;
                        }
                        break;

                        case State.Open:
                        {
                            _pistonSlide.Reverse();
                            _timer.TriggerDelay = 5f;
                            _timer.StartCountdown();
                            _state  = State.Close_Initial;
                            running = true;
                        }
                        break;
                        }
                    }
                }
                break;

                case "TIMER":
                {
                    if (running)
                    {
                        switch (_state)
                        {
                        case State.Open_Initial:
                        {
                            _pistonSlide.Reverse();
                            _timer.TriggerDelay = 5f;
                            _timer.StartCountdown();
                            _state = State.Open_Final;
                        }
                        break;

                        case State.Open_Final:
                        {
                            _state  = State.Open;
                            running = false;
                        }
                        break;

                        case State.Close_Initial:
                        {
                            _pistonInOut.Reverse();
                            _timer.TriggerDelay = 0.5f;
                            _timer.StartCountdown();

                            _state = State.Close_Final;
                        }
                        break;

                        case State.Close_Final:
                        {
                            _gear.Lock();
                            _state  = State.Closed;
                            running = false;
                        }
                        break;
                        }
                    }
                }
                break;
                }
            }
            catch (Exception e)
            {
                EchoText("Error: " + e.Message);
            }
        }
 // Functions
 private static void OutRiggerRelease()
 {
     Lock.Enabled  = true;
     Lock.AutoLock = false;
     Lock.Unlock();
 }
Esempio n. 8
0
 protected override void OnExecuting(IMyLandingGear landingGear)
 => landingGear.Unlock();
Esempio n. 9
0
            void UnlockLGear()
            {
                IMyLandingGear clamp = Reference as IMyLandingGear;

                clamp.Unlock();
            }