コード例 #1
0
ファイル: Scrubber.cs プロジェクト: PetMudstone/unitystation
        public void SetOperatingMode(AcuMode mode)
        {
            // Override all custom changes if the operating mode changes.

            OperatingMode = acuSiphonModes.Contains(mode) ? Mode.Siphoning : Mode.Scrubbing;
            // Create a list copy as this list can be further modified via device settings.
            FilteredGases = new ObservableCollection <GasSO>(mode == AcuMode.Contaminated ? defaultContaminatedGases : defaultFilteredGases);
            FilteredGases.CollectionChanged += OnFilteredGasesChanged;
            IsExpandedRange = mode == AcuMode.Contaminated || mode == AcuMode.Cycle || mode == AcuMode.PanicSiphon;

            SetTurnedOn(mode != AcuMode.Off);
        }
コード例 #2
0
ファイル: AirController.cs プロジェクト: fomalsd/unitystation
        public void SetOperatingMode(AcuMode mode)
        {
            if (IsWriteable == false)
            {
                return;
            }

            DesiredMode = mode;
            foreach (var device in ConnectedDevices)
            {
                device.SetOperatingMode(mode);
            }

            OnStateChanged?.Invoke();
        }
コード例 #3
0
ファイル: AirVent.cs プロジェクト: ZeroDayDaemon/unitystation
        public void SetOperatingMode(AcuMode mode)
        {
            OperatingMode   = Mode.Out;
            InternalEnabled = false;
            ExternalEnabled = true;
            InternalTarget  = 0;
            ExternalTarget  = AtmosConstants.ONE_ATMOSPHERE;

            if (mode == AcuMode.Refill)
            {
                ExternalTarget *= 3;
            }

            SetTurnedOn(mode == AcuMode.Filtering || mode == AcuMode.Contaminated || mode == AcuMode.Draught || mode == AcuMode.Refill);
        }
コード例 #4
0
 // Don't care about the ACU operating mode.
 public void SetOperatingMode(AcuMode mode)
 {
 }