private static bool Prefix(GameObject target, FilterSideScreen __instance, ref bool __result) { if (target.GetComponent <InfiniteSourceFlowControl>() != null) { __result = !__instance.isLogicFilter; return(false); } return(true); }
/// <summary> /// Applied after IsValidForTarget runs. /// </summary> internal static void Postfix(FilterSideScreen __instance, GameObject target, ref bool __result) { var prefabID = target.GetComponentSafe <KPrefabID>(); if (target.GetComponent <Filterable>() != null && __instance.isLogicFilter && prefabID != null) { // Some targets do not have an ID? var id = prefabID.PrefabTag; if (id == FilteredGasPumpConfig.ID || id == FilteredLiquidPumpConfig.ID) { __result = true; } } }