From 362d2eb51deead5de07ebc957e39b2568a7e83fd Mon Sep 17 00:00:00 2001 From: Olivier Gagnon Date: Fri, 5 Nov 2021 13:20:52 -0400 Subject: [PATCH] Fix a few bugs and also added the concept of gang power multiplier --- src/Gang/Gang.ts | 6 ++++-- src/Gang/data/power.ts | 11 +++++++++++ src/Gang/ui/TerritorySubpage.tsx | 2 ++ src/NetscriptFunctions.ts | 1 + src/NetscriptFunctions/Singularity.ts | 3 +++ 5 files changed, 21 insertions(+), 2 deletions(-) create mode 100644 src/Gang/data/power.ts diff --git a/src/Gang/Gang.ts b/src/Gang/Gang.ts index ae558d00a..122f97476 100644 --- a/src/Gang/Gang.ts +++ b/src/Gang/Gang.ts @@ -24,7 +24,7 @@ import { GangMember } from "./GangMember"; import { WorkerScript } from "../Netscript/WorkerScript"; import { IPlayer } from "../PersonObjects/IPlayer"; -import { BitNodeMultipliers } from "../BitNode/BitNodeMultipliers"; +import { PowerMultiplier } from "./data/power"; export class Gang { facName: string; @@ -171,7 +171,9 @@ export class Gang { AllGangs[name].power += Math.min(0.85, multiplicativeGain); } else { // Additive gain (50% chance) - const additiveGain = 0.75 * gainRoll * AllGangs[name].territory; + const powerMult = PowerMultiplier[name]; + if (powerMult === undefined) throw new Error("Should not be undefined"); + const additiveGain = 0.75 * gainRoll * AllGangs[name].territory * powerMult; AllGangs[name].power += additiveGain; } } diff --git a/src/Gang/data/power.ts b/src/Gang/data/power.ts new file mode 100644 index 000000000..b0336a497 --- /dev/null +++ b/src/Gang/data/power.ts @@ -0,0 +1,11 @@ +export const PowerMultiplier: { + [key: string]: number | undefined; +} = { + "Slum Snakes": 1, + Tetrads: 2, + "The Syndicate": 5, + "The Dark Army": 10, + "Speakers for the Dead": 50, + NiteSec: 10, + "The Black Hand": 50, +}; diff --git a/src/Gang/ui/TerritorySubpage.tsx b/src/Gang/ui/TerritorySubpage.tsx index 9459fdb90..434bf1c3e 100644 --- a/src/Gang/ui/TerritorySubpage.tsx +++ b/src/Gang/ui/TerritorySubpage.tsx @@ -41,6 +41,8 @@ export function TerritorySubpage(): React.ReactElement { and wanted level. It is very beneficial to have high territory control.

+ To increase your chances of winning territory assign gang members to "Territory Warfare", this will build your + gang power. Then enable "Engage in Territory Warfare" to start fighting over territory.