mirror of
https://github.com/bitburner-official/bitburner-src.git
synced 2024-11-22 15:43:49 +01:00
Factions have a property explaining if they should keep on install
This commit is contained in:
parent
e1741778f9
commit
c79fa240e1
@ -13,6 +13,7 @@ export interface IConstructorParams {
|
||||
expMultiplier: number;
|
||||
salaryMultiplier: number;
|
||||
jobStatReqOffset: number;
|
||||
isMegacorp?: boolean;
|
||||
}
|
||||
|
||||
const DefaultConstructorParams: IConstructorParams = {
|
||||
@ -35,6 +36,11 @@ export class Company {
|
||||
*/
|
||||
info: string;
|
||||
|
||||
/**
|
||||
* Has faction associated.
|
||||
*/
|
||||
isMegacorp: boolean;
|
||||
|
||||
/**
|
||||
* Object that holds all available positions in this Company.
|
||||
* Position names are held in keys.
|
||||
@ -79,6 +85,8 @@ export class Company {
|
||||
this.playerReputation = 1;
|
||||
this.favor = 0;
|
||||
this.rolloverRep = 0;
|
||||
this.isMegacorp = false;
|
||||
if (p.isMegacorp) this.isMegacorp = true;
|
||||
}
|
||||
|
||||
hasPosition(pos: CompanyPosition | string): boolean {
|
||||
|
@ -45,6 +45,11 @@ export class FactionInfo {
|
||||
*/
|
||||
offerSecurityWork: boolean;
|
||||
|
||||
/**
|
||||
* Keep faction on install.
|
||||
*/
|
||||
keep: boolean;
|
||||
|
||||
constructor(
|
||||
infoText: JSX.Element,
|
||||
enemies: string[],
|
||||
@ -52,6 +57,7 @@ export class FactionInfo {
|
||||
offerHackingWork: boolean,
|
||||
offerFieldWork: boolean,
|
||||
offerSecurityWork: boolean,
|
||||
keep: boolean,
|
||||
) {
|
||||
this.infoText = infoText;
|
||||
this.enemies = enemies;
|
||||
@ -63,6 +69,7 @@ export class FactionInfo {
|
||||
// These are always all 1 for now.
|
||||
this.augmentationPriceMult = 1;
|
||||
this.augmentationRepRequirementMult = 1;
|
||||
this.keep = keep;
|
||||
}
|
||||
|
||||
offersWork(): boolean {
|
||||
@ -88,6 +95,7 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
true,
|
||||
false,
|
||||
false,
|
||||
),
|
||||
|
||||
Daedalus: new FactionInfo(
|
||||
@ -97,6 +105,7 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
true,
|
||||
false,
|
||||
false,
|
||||
),
|
||||
|
||||
"The Covenant": new FactionInfo(
|
||||
@ -114,6 +123,7 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
true,
|
||||
false,
|
||||
false,
|
||||
),
|
||||
|
||||
// Megacorporations, each forms its own faction
|
||||
@ -129,6 +139,7 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
),
|
||||
|
||||
MegaCorp: new FactionInfo(
|
||||
@ -147,6 +158,7 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
),
|
||||
|
||||
"Bachman & Associates": new FactionInfo(
|
||||
@ -163,9 +175,10 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
),
|
||||
|
||||
"Blade Industries": new FactionInfo(<>Augmentation is Salvation.</>, [], true, true, true, true),
|
||||
"Blade Industries": new FactionInfo(<>Augmentation is Salvation.</>, [], true, true, true, true, true),
|
||||
|
||||
NWO: new FactionInfo(
|
||||
(
|
||||
@ -180,9 +193,10 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
),
|
||||
|
||||
"Clarke Incorporated": new FactionInfo(<>The Power of the Genome - Unlocked.</>, [], true, true, true, true),
|
||||
"Clarke Incorporated": new FactionInfo(<>The Power of the Genome - Unlocked.</>, [], true, true, true, true, true),
|
||||
|
||||
"OmniTek Incorporated": new FactionInfo(
|
||||
<>Simply put, our mission is to design and build robots that make a difference.</>,
|
||||
@ -191,6 +205,7 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
),
|
||||
|
||||
"Four Sigma": new FactionInfo(
|
||||
@ -205,9 +220,10 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
),
|
||||
|
||||
"KuaiGong International": new FactionInfo(<>Dream big. Work hard. Make history.</>, [], true, true, true, true),
|
||||
"KuaiGong International": new FactionInfo(<>Dream big. Work hard. Make history.</>, [], true, true, true, true, true),
|
||||
|
||||
// Other Corporations
|
||||
"Fulcrum Secret Technologies": new FactionInfo(
|
||||
@ -222,6 +238,7 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
false,
|
||||
true,
|
||||
true,
|
||||
),
|
||||
|
||||
// Hacker groups
|
||||
@ -243,6 +260,7 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
),
|
||||
|
||||
"The Black Hand": new FactionInfo(
|
||||
@ -261,6 +279,7 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
true,
|
||||
false,
|
||||
false,
|
||||
),
|
||||
|
||||
// prettier-ignore
|
||||
@ -305,6 +324,7 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
),
|
||||
|
||||
// City factions, essentially governments
|
||||
@ -315,8 +335,9 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
false,
|
||||
),
|
||||
Chongqing: new FactionInfo(<>Serve the People.</>, ["Sector-12", "Aevum", "Volhaven"], true, true, true, true),
|
||||
Chongqing: new FactionInfo(<>Serve the People.</>, ["Sector-12", "Aevum", "Volhaven"], true, true, true, true, false),
|
||||
Ishima: new FactionInfo(
|
||||
<>The East Asian Order of the Future.</>,
|
||||
["Sector-12", "Aevum", "Volhaven"],
|
||||
@ -324,8 +345,17 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
false,
|
||||
),
|
||||
"New Tokyo": new FactionInfo(
|
||||
<>Asia's World City.</>,
|
||||
["Sector-12", "Aevum", "Volhaven"],
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
false,
|
||||
),
|
||||
"New Tokyo": new FactionInfo(<>Asia's World City.</>, ["Sector-12", "Aevum", "Volhaven"], true, true, true, true),
|
||||
"Sector-12": new FactionInfo(
|
||||
<>The City of the Future.</>,
|
||||
["Chongqing", "New Tokyo", "Ishima", "Volhaven"],
|
||||
@ -333,6 +363,7 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
false,
|
||||
),
|
||||
Volhaven: new FactionInfo(
|
||||
<>Benefit, Honor, and Glory.</>,
|
||||
@ -341,6 +372,7 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
false,
|
||||
),
|
||||
|
||||
// Criminal Organizations/Gangs
|
||||
@ -351,6 +383,7 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
false,
|
||||
),
|
||||
|
||||
"The Dark Army": new FactionInfo(
|
||||
@ -360,9 +393,10 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
true,
|
||||
false,
|
||||
false,
|
||||
),
|
||||
|
||||
"The Syndicate": new FactionInfo(<>Honor holds you back.</>, [], true, true, true, true),
|
||||
"The Syndicate": new FactionInfo(<>Honor holds you back.</>, [], true, true, true, true, false),
|
||||
|
||||
Silhouette: new FactionInfo(
|
||||
(
|
||||
@ -380,6 +414,7 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
true,
|
||||
false,
|
||||
false,
|
||||
),
|
||||
|
||||
Tetrads: new FactionInfo(
|
||||
@ -389,14 +424,15 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
false,
|
||||
true,
|
||||
true,
|
||||
false,
|
||||
),
|
||||
|
||||
"Slum Snakes": new FactionInfo(<>Slum Snakes rule!</>, [], false, false, true, true),
|
||||
"Slum Snakes": new FactionInfo(<>Slum Snakes rule!</>, [], false, false, true, true, false),
|
||||
|
||||
// Earlygame factions - factions the player will prestige with early on that don't belong in other categories.
|
||||
Netburners: new FactionInfo(<>{"~~//*>H4CK||3T 8URN3R5**>?>\\~~"}</>, [], true, true, false, false),
|
||||
Netburners: new FactionInfo(<>{"~~//*>H4CK||3T 8URN3R5**>?>\\~~"}</>, [], true, true, false, false, false),
|
||||
|
||||
"Tian Di Hui": new FactionInfo(<>Obey Heaven and work righteously.</>, [], true, true, false, true),
|
||||
"Tian Di Hui": new FactionInfo(<>Obey Heaven and work righteously.</>, [], true, true, false, true, false),
|
||||
|
||||
CyberSec: new FactionInfo(
|
||||
(
|
||||
@ -411,6 +447,7 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
true,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
),
|
||||
|
||||
// Special Factions
|
||||
@ -429,5 +466,6 @@ export const FactionInfos: IMap<FactionInfo> = {
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
),
|
||||
};
|
||||
|
@ -34,21 +34,8 @@ const BitNode8StartingMoney = 250e6;
|
||||
function prestigeAugmentation() {
|
||||
initBitNodeMultipliers(Player);
|
||||
|
||||
const megaCorpFactions = [
|
||||
"ECorp",
|
||||
"MegaCorp",
|
||||
"Bachman & Associates",
|
||||
"Blade Industries",
|
||||
"NWO",
|
||||
"Clarke Incorporated",
|
||||
"OmniTek Incorporated",
|
||||
"Four Sigma",
|
||||
"KuaiGong International",
|
||||
"Fulcrum Secret Technologies",
|
||||
];
|
||||
|
||||
const maintainMembership = Player.factions.filter(function (faction) {
|
||||
return megaCorpFactions.includes(faction);
|
||||
return Factions[faction].getInfo().keep;
|
||||
});
|
||||
Player.prestigeAugmentation();
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user