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); }
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); }