Пример #1
0
 public Vent.State GetEndPointState()
 {
     Vent.State state = Vent.State.Ready;
     if (!IsValidOutputCell(outputCell))
     {
         state = !Grid.Solid[outputCell] ? Vent.State.OverPressure : Vent.State.Blocked;
     }
     return(state);
 }
Пример #2
0
        private bool UpdateVentOperational()
        {
            Vent.State outputState      = GetEndPointState();
            bool       obstructedFlag   = outputState == Vent.State.Blocked;
            bool       overPressureFlag = outputState == Vent.State.OverPressure;

            obstructedStatusGuid   = selectable.ToggleStatusItem(conduitType != ConduitType.Gas ? Db.Get().BuildingStatusItems.LiquidVentObstructed : Db.Get().BuildingStatusItems.GasVentObstructed, obstructedStatusGuid, obstructedFlag, null);
            overPressureStatusGuid = selectable.ToggleStatusItem(conduitType != ConduitType.Gas ? Db.Get().BuildingStatusItems.LiquidVentOverPressure : Db.Get().BuildingStatusItems.GasVentOverPressure, overPressureStatusGuid, overPressureFlag, null);
            bool flag = !obstructedFlag && !overPressureFlag;

            operational.SetFlag(FanOutFlag, flag);
            return(flag);
        }