public virtual void StartConverter()
        {
            //If the drill is broken, then don't start the converter.
            if (isBroken)
            {
                if (this.part.vessel == FlightGlobals.ActiveVessel)
                {
                    BARISBridge.LogPlayerMessage(this.part.partInfo.title + BARISBridge.PartBrokenCannotStart);
                }
                StopResourceConverter();
                return;
            }

            //Update events
            Events["StartConverter"].guiActive          = false;
            Events["StartConverter"].guiActiveUnfocused = false;

            //Start the converter
            StartResourceConverter();
            qualityControl.UpdateActivationState();
            if (BARISBridge.DrillsCanFail)
            {
                qualityControl.PerformQualityCheck();
            }
        }
示例#2
0
        public override void StartResourceConverter()
        {
            base.StartResourceConverter();
            //If the drill is broken, then don't start the converter.
            if (isBroken)
            {
                if (this.part.vessel == FlightGlobals.ActiveVessel)
                {
                    string message = this.part.partInfo.title + BARISBridge.PartBrokenCannotStart;
                    BARISBridge.LogPlayerMessage(message);
                }
                StopResourceConverter();
                return;
            }

            //Start the converter
            if (qualityControl != null)
            {
                qualityControl.UpdateActivationState();
                if (BARISBridge.ConvertersCanFail)
                {
                    qualityControl.PerformQualityCheck();
                }
            }
        }
        public virtual void OnPartBroken(BaseQualityControl moduleQualityControl)
        {
            isBroken = true;
            StopResourceConverter();

            if (this.part.vessel == FlightGlobals.ActiveVessel)
            {
                string message = Localizer.Format(this.part.partInfo.title + BARISBridge.DrillBroken);
                BARISBridge.LogPlayerMessage(message);
            }
            qualityControl.UpdateQualityDisplay(qualityControl.qualityDisplay + Localizer.Format(BARISBridge.DrillLabel));
        }
示例#4
0
        public virtual void OnPartBroken(BaseQualityControl moduleQualityControl)
        {
            if (!BARISBridge.ConvertersCanFail)
            {
                return;
            }

            isBroken    = true;
            IsActivated = false;

            //Generate a failure mode

            if (this.part.vessel == FlightGlobals.ActiveVessel)
            {
                string message = Localizer.Format(this.part.partInfo.title + partBrokenMessage);
                BARISBridge.LogPlayerMessage(message);
            }
            qualityControl.UpdateQualityDisplay(qualityControl.qualityDisplay + Localizer.Format(partBrokenLabel));
        }