diff --git a/src/Faction/ui/AugmentationsPage.tsx b/src/Faction/ui/AugmentationsPage.tsx index 1d519b124..e086a4ee4 100644 --- a/src/Faction/ui/AugmentationsPage.tsx +++ b/src/Faction/ui/AugmentationsPage.tsx @@ -45,12 +45,16 @@ export function AugmentationsPage(props: IProps): React.ReactElement { if (isPlayersGang) { const augs: string[] = []; for (const augName of Object.keys(Augmentations)) { - if (augName === AugmentationNames.NeuroFluxGovernor) continue; - if (augName === AugmentationNames.TheRedPill && player.bitNodeN !== 2) continue; const aug = Augmentations[augName]; - if (!aug.isSpecial) { - augs.push(augName); - } + if ( + augName === AugmentationNames.NeuroFluxGovernor || + augName === AugmentationNames.TheRedPill && player.bitNodeN !== 2 || + // Special augs (i.e. Bladeburner augs) + aug.isSpecial || + // Exclusive augs (i.e. QLink) + (aug.factions.length <= 1 && !props.faction.augmentations.includes(augName)) + ) continue; + augs.push(augName); } return augs; diff --git a/src/Faction/ui/FactionsRoot.tsx b/src/Faction/ui/FactionsRoot.tsx index 45e750232..db039ef4e 100644 --- a/src/Faction/ui/FactionsRoot.tsx +++ b/src/Faction/ui/FactionsRoot.tsx @@ -64,10 +64,14 @@ export function FactionsRoot(props: IProps): React.ReactElement { if (isPlayersGang) { for (const augName of Object.keys(Augmentations)) { + const aug = Augmentations[augName]; if ( augName === AugmentationNames.NeuroFluxGovernor || augName === AugmentationNames.TheRedPill && player.bitNodeN !== 2 || - Augmentations[augName].isSpecial + // Special augs (i.e. Bladeburner augs) + aug.isSpecial || + // Exclusive augs (i.e. QLink) + (aug.factions.length <= 1 && !faction.augmentations.includes(augName)) ) continue; augs.push(augName) }