static bool Prefix(SGNavigationActiveFactionWidget __instance, List <string> activeFactions, string OwnerFaction, List <HBSButton> ___FactionButtons, List <Image> ___FactionIcons, SimGameState ___simState) { try { ___FactionButtons.ForEach(delegate(HBSButton btn) { btn.gameObject.SetActive(false); }); int index = 0; foreach (string faction in activeFactions) { FactionDef factionDef = FactionEnumeration.GetFactionByName(faction).FactionDef; ___FactionIcons[index].sprite = factionDef.GetSprite(); HBSTooltip component = ___FactionIcons[index].GetComponent <HBSTooltip>(); if (component != null) { component.SetDefaultStateData(TooltipUtilities.GetStateDataFromObject(factionDef)); } ___FactionButtons[index].SetState(ButtonState.Enabled, false); ___FactionButtons[index].gameObject.SetActive(true); index++; } return(false); } catch (Exception e) { Logger.LogError(e); return(true); } }