Merge pull request #4139 from Mughur/Sleeve

MISC: crime gains, sleeve gang augs and faq
This commit is contained in:
hydroflame
2022-09-23 12:32:15 -03:00
committed by GitHub
4 changed files with 20 additions and 20 deletions

View File

@@ -2,12 +2,14 @@ import { FactionNames } from "../../Faction/data/FactionNames";
import { Sleeve } from "./Sleeve";
import { IPlayer } from "../IPlayer";
import { Player } from "../../Player";
import { Augmentation } from "../../Augmentation/Augmentation";
import { StaticAugmentations } from "../../Augmentation/StaticAugmentations";
import { Faction } from "../../Faction/Faction";
import { Factions } from "../../Faction/Factions";
import { Multipliers } from "../Multipliers";
import { getFactionAugmentationsFiltered } from "../../Faction/FactionHelpers";
export function findSleevePurchasableAugs(sleeve: Sleeve, p: IPlayer): Augmentation[] {
// You can only purchase Augmentations that are actually available from
@@ -65,8 +67,9 @@ export function findSleevePurchasableAugs(sleeve: Sleeve, p: IPlayer): Augmentat
// has enough reputation for (since that gang offers all augs)
if (p.inGang()) {
const fac = p.getGangFaction();
const gangAugs = getFactionAugmentationsFiltered(Player, fac);
for (const augName of Object.keys(StaticAugmentations)) {
for (const augName of gangAugs) {
const aug = StaticAugmentations[augName];
if (!isAvailableForSleeve(aug)) {
continue;

View File

@@ -71,15 +71,8 @@ export function FAQModal({ open, onClose }: IProps): React.ReactElement {
<br />
<Typography>
Only one of your sleeves can work for a given company/faction a time. To clarify further, if you have two
sleeves they can work for two different companies, but they cannot both work for the same company.
</Typography>
<br />
<br />
<Typography variant="h4">Why did my Sleeve stop working?</Typography>
<br />
<Typography>
Sleeves are subject to the same time restrictions as you. This means that they automatically stop working at a
company after 8 hours, and stop working for a faction after 20 hours.
sleeves they can work for two different companies/factions, but they cannot both work for the same
company/faction.
</Typography>
<br />
<br />
@@ -92,13 +85,16 @@ export function FAQModal({ open, onClose }: IProps): React.ReactElement {
<br />
<Typography>
Certain Augmentations, like {FactionNames.Bladeburners}-specific ones and NeuroFlux Governor, are not
available for sleeves.
available for sleeves. You also need enough current reputation on some faction that offers that Augmentation.
</Typography>
<br />
<br />
<Typography variant="h4">Do sleeves get reset when installing Augmentations or switching BitNodes?</Typography>
<br />
<Typography>Sleeves are reset when switching BitNodes, but not when installing Augmentations.</Typography>
<Typography>
Sleeves are reset when switching BitNodes, but not when installing Augmentations. However installing
Augmentations on a sleeve does reset their stats.
</Typography>
<br />
<br />
<Typography variant="h4">What is Memory?</Typography>

View File

@@ -108,7 +108,7 @@ export class CrimeWork extends Work {
let karma = crime.karma;
const success = determineCrimeSuccess(player, crime.type);
if (success) {
player.gainMoney(gains.money * player.mults.crime_money, "crime");
player.gainMoney(gains.money, "crime");
player.numPeopleKilled += crime.kills;
player.gainIntelligenceExp(gains.intExp);
} else {

View File

@@ -1,17 +1,18 @@
import { BitNodeMultipliers } from "../../BitNode/BitNodeMultipliers";
import { Crime } from "src/Crime/Crime";
import { newWorkStats, scaleWorkStats, WorkStats } from "../WorkStats";
import { Player } from "../../Player";
export const calculateCrimeWorkStats = (crime: Crime): WorkStats => {
const gains = scaleWorkStats(
newWorkStats({
money: crime.money,
hackExp: crime.hacking_exp * 2,
strExp: crime.strength_exp * 2,
defExp: crime.defense_exp * 2,
dexExp: crime.dexterity_exp * 2,
agiExp: crime.agility_exp * 2,
chaExp: crime.charisma_exp * 2,
money: crime.money * Player.mults.crime_money,
hackExp: crime.hacking_exp * 2 * Player.mults.hacking_exp,
strExp: crime.strength_exp * 2 * Player.mults.strength_exp,
defExp: crime.defense_exp * 2 * Player.mults.defense_exp,
dexExp: crime.dexterity_exp * 2 * Player.mults.dexterity_exp,
agiExp: crime.agility_exp * 2 * Player.mults.agility_exp,
chaExp: crime.charisma_exp * 2 * Player.mults.charisma_exp,
intExp: crime.intelligence_exp * 2,
}),
BitNodeMultipliers.CrimeExpGain,