mirror of
https://github.com/bitburner-official/bitburner-src.git
synced 2024-12-20 21:25:47 +01:00
API: Programming-friendly interface to getFactionInviteRequirements (#953)
This commit is contained in:
parent
e957864c4b
commit
473217ef31
21
markdown/bitburner.backdoorrequirement.md
Normal file
21
markdown/bitburner.backdoorrequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [BackdoorRequirement](./bitburner.backdoorrequirement.md)
|
||||
|
||||
## BackdoorRequirement interface
|
||||
|
||||
Player must have installed a backdoor on this server.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface BackdoorRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [server](./bitburner.backdoorrequirement.server.md) | | string | |
|
||||
| [type](./bitburner.backdoorrequirement.type.md) | | "backdoorInstalled" | |
|
||||
|
11
markdown/bitburner.backdoorrequirement.server.md
Normal file
11
markdown/bitburner.backdoorrequirement.server.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [BackdoorRequirement](./bitburner.backdoorrequirement.md) > [server](./bitburner.backdoorrequirement.server.md)
|
||||
|
||||
## BackdoorRequirement.server property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
server: string;
|
||||
```
|
11
markdown/bitburner.backdoorrequirement.type.md
Normal file
11
markdown/bitburner.backdoorrequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [BackdoorRequirement](./bitburner.backdoorrequirement.md) > [type](./bitburner.backdoorrequirement.type.md)
|
||||
|
||||
## BackdoorRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "backdoorInstalled";
|
||||
```
|
11
markdown/bitburner.bitnoderequirement.bitnoden.md
Normal file
11
markdown/bitburner.bitnoderequirement.bitnoden.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [BitNodeRequirement](./bitburner.bitnoderequirement.md) > [bitNodeN](./bitburner.bitnoderequirement.bitnoden.md)
|
||||
|
||||
## BitNodeRequirement.bitNodeN property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
bitNodeN: number;
|
||||
```
|
21
markdown/bitburner.bitnoderequirement.md
Normal file
21
markdown/bitburner.bitnoderequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [BitNodeRequirement](./bitburner.bitnoderequirement.md)
|
||||
|
||||
## BitNodeRequirement interface
|
||||
|
||||
Player must be located in this BitNode.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface BitNodeRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [bitNodeN](./bitburner.bitnoderequirement.bitnoden.md) | | number | |
|
||||
| [type](./bitburner.bitnoderequirement.type.md) | | "bitNodeN" | |
|
||||
|
11
markdown/bitburner.bitnoderequirement.type.md
Normal file
11
markdown/bitburner.bitnoderequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [BitNodeRequirement](./bitburner.bitnoderequirement.md) > [type](./bitburner.bitnoderequirement.type.md)
|
||||
|
||||
## BitNodeRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "bitNodeN";
|
||||
```
|
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [BladeburnerRankRequirement](./bitburner.bladeburnerrankrequirement.md) > [bladeburnerRank](./bitburner.bladeburnerrankrequirement.bladeburnerrank.md)
|
||||
|
||||
## BladeburnerRankRequirement.bladeburnerRank property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
bladeburnerRank: number;
|
||||
```
|
21
markdown/bitburner.bladeburnerrankrequirement.md
Normal file
21
markdown/bitburner.bladeburnerrankrequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [BladeburnerRankRequirement](./bitburner.bladeburnerrankrequirement.md)
|
||||
|
||||
## BladeburnerRankRequirement interface
|
||||
|
||||
Player must have at least this rank in the Bladeburner Division.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface BladeburnerRankRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [bladeburnerRank](./bitburner.bladeburnerrankrequirement.bladeburnerrank.md) | | number | |
|
||||
| [type](./bitburner.bladeburnerrankrequirement.type.md) | | "bladeburnerRank" | |
|
||||
|
11
markdown/bitburner.bladeburnerrankrequirement.type.md
Normal file
11
markdown/bitburner.bladeburnerrankrequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [BladeburnerRankRequirement](./bitburner.bladeburnerrankrequirement.md) > [type](./bitburner.bladeburnerrankrequirement.type.md)
|
||||
|
||||
## BladeburnerRankRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "bladeburnerRank";
|
||||
```
|
11
markdown/bitburner.cityrequirement.city.md
Normal file
11
markdown/bitburner.cityrequirement.city.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [CityRequirement](./bitburner.cityrequirement.md) > [city](./bitburner.cityrequirement.city.md)
|
||||
|
||||
## CityRequirement.city property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
city: CityName;
|
||||
```
|
21
markdown/bitburner.cityrequirement.md
Normal file
21
markdown/bitburner.cityrequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [CityRequirement](./bitburner.cityrequirement.md)
|
||||
|
||||
## CityRequirement interface
|
||||
|
||||
Player must be located in this city.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface CityRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [city](./bitburner.cityrequirement.city.md) | | [CityName](./bitburner.cityname.md) | |
|
||||
| [type](./bitburner.cityrequirement.type.md) | | "city" | |
|
||||
|
11
markdown/bitburner.cityrequirement.type.md
Normal file
11
markdown/bitburner.cityrequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [CityRequirement](./bitburner.cityrequirement.md) > [type](./bitburner.cityrequirement.type.md)
|
||||
|
||||
## CityRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "city";
|
||||
```
|
11
markdown/bitburner.companyreputationrequirement.company.md
Normal file
11
markdown/bitburner.companyreputationrequirement.company.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [CompanyReputationRequirement](./bitburner.companyreputationrequirement.md) > [company](./bitburner.companyreputationrequirement.company.md)
|
||||
|
||||
## CompanyReputationRequirement.company property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
company: CompanyName;
|
||||
```
|
22
markdown/bitburner.companyreputationrequirement.md
Normal file
22
markdown/bitburner.companyreputationrequirement.md
Normal file
@ -0,0 +1,22 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [CompanyReputationRequirement](./bitburner.companyreputationrequirement.md)
|
||||
|
||||
## CompanyReputationRequirement interface
|
||||
|
||||
Player must have at least this much reputation with this company.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface CompanyReputationRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [company](./bitburner.companyreputationrequirement.company.md) | | [CompanyName](./bitburner.companyname.md) | |
|
||||
| [reputation](./bitburner.companyreputationrequirement.reputation.md) | | number | |
|
||||
| [type](./bitburner.companyreputationrequirement.type.md) | | "companyReputation" | |
|
||||
|
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [CompanyReputationRequirement](./bitburner.companyreputationrequirement.md) > [reputation](./bitburner.companyreputationrequirement.reputation.md)
|
||||
|
||||
## CompanyReputationRequirement.reputation property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
reputation: number;
|
||||
```
|
11
markdown/bitburner.companyreputationrequirement.type.md
Normal file
11
markdown/bitburner.companyreputationrequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [CompanyReputationRequirement](./bitburner.companyreputationrequirement.md) > [type](./bitburner.companyreputationrequirement.type.md)
|
||||
|
||||
## CompanyReputationRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "companyReputation";
|
||||
```
|
11
markdown/bitburner.employedbyrequirement.company.md
Normal file
11
markdown/bitburner.employedbyrequirement.company.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [EmployedByRequirement](./bitburner.employedbyrequirement.md) > [company](./bitburner.employedbyrequirement.company.md)
|
||||
|
||||
## EmployedByRequirement.company property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
company: CompanyName;
|
||||
```
|
21
markdown/bitburner.employedbyrequirement.md
Normal file
21
markdown/bitburner.employedbyrequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [EmployedByRequirement](./bitburner.employedbyrequirement.md)
|
||||
|
||||
## EmployedByRequirement interface
|
||||
|
||||
Player must be working for this company.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface EmployedByRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [company](./bitburner.employedbyrequirement.company.md) | | [CompanyName](./bitburner.companyname.md) | |
|
||||
| [type](./bitburner.employedbyrequirement.type.md) | | "employedBy" | |
|
||||
|
11
markdown/bitburner.employedbyrequirement.type.md
Normal file
11
markdown/bitburner.employedbyrequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [EmployedByRequirement](./bitburner.employedbyrequirement.md) > [type](./bitburner.employedbyrequirement.type.md)
|
||||
|
||||
## EmployedByRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "employedBy";
|
||||
```
|
11
markdown/bitburner.everyrequirement.conditions.md
Normal file
11
markdown/bitburner.everyrequirement.conditions.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [EveryRequirement](./bitburner.everyrequirement.md) > [conditions](./bitburner.everyrequirement.conditions.md)
|
||||
|
||||
## EveryRequirement.conditions property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
conditions: PlayerRequirement[];
|
||||
```
|
21
markdown/bitburner.everyrequirement.md
Normal file
21
markdown/bitburner.everyrequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [EveryRequirement](./bitburner.everyrequirement.md)
|
||||
|
||||
## EveryRequirement interface
|
||||
|
||||
All sub-conditions must be satisfied.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface EveryRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [conditions](./bitburner.everyrequirement.conditions.md) | | [PlayerRequirement](./bitburner.playerrequirement.md)<!-- -->\[\] | |
|
||||
| [type](./bitburner.everyrequirement.type.md) | | "everyCondition" | |
|
||||
|
11
markdown/bitburner.everyrequirement.type.md
Normal file
11
markdown/bitburner.everyrequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [EveryRequirement](./bitburner.everyrequirement.md) > [type](./bitburner.everyrequirement.type.md)
|
||||
|
||||
## EveryRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "everyCondition";
|
||||
```
|
11
markdown/bitburner.filerequirement.file.md
Normal file
11
markdown/bitburner.filerequirement.file.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [FileRequirement](./bitburner.filerequirement.md) > [file](./bitburner.filerequirement.file.md)
|
||||
|
||||
## FileRequirement.file property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
file: string;
|
||||
```
|
21
markdown/bitburner.filerequirement.md
Normal file
21
markdown/bitburner.filerequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [FileRequirement](./bitburner.filerequirement.md)
|
||||
|
||||
## FileRequirement interface
|
||||
|
||||
Player must have a specific Literature or Message file on their home computer.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface FileRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [file](./bitburner.filerequirement.file.md) | | string | |
|
||||
| [type](./bitburner.filerequirement.type.md) | | "file" | |
|
||||
|
11
markdown/bitburner.filerequirement.type.md
Normal file
11
markdown/bitburner.filerequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [FileRequirement](./bitburner.filerequirement.md) > [type](./bitburner.filerequirement.type.md)
|
||||
|
||||
## FileRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "file";
|
||||
```
|
11
markdown/bitburner.hacknetcoresrequirement.hacknetcores.md
Normal file
11
markdown/bitburner.hacknetcoresrequirement.hacknetcores.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [HacknetCoresRequirement](./bitburner.hacknetcoresrequirement.md) > [hacknetCores](./bitburner.hacknetcoresrequirement.hacknetcores.md)
|
||||
|
||||
## HacknetCoresRequirement.hacknetCores property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
hacknetCores: number;
|
||||
```
|
21
markdown/bitburner.hacknetcoresrequirement.md
Normal file
21
markdown/bitburner.hacknetcoresrequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [HacknetCoresRequirement](./bitburner.hacknetcoresrequirement.md)
|
||||
|
||||
## HacknetCoresRequirement interface
|
||||
|
||||
Player's Hacknet devices must have at least this many total cores.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface HacknetCoresRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [hacknetCores](./bitburner.hacknetcoresrequirement.hacknetcores.md) | | number | |
|
||||
| [type](./bitburner.hacknetcoresrequirement.type.md) | | "hacknetCores" | |
|
||||
|
11
markdown/bitburner.hacknetcoresrequirement.type.md
Normal file
11
markdown/bitburner.hacknetcoresrequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [HacknetCoresRequirement](./bitburner.hacknetcoresrequirement.md) > [type](./bitburner.hacknetcoresrequirement.type.md)
|
||||
|
||||
## HacknetCoresRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "hacknetCores";
|
||||
```
|
11
markdown/bitburner.hacknetlevelsrequirement.hacknetlevels.md
Normal file
11
markdown/bitburner.hacknetlevelsrequirement.hacknetlevels.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [HacknetLevelsRequirement](./bitburner.hacknetlevelsrequirement.md) > [hacknetLevels](./bitburner.hacknetlevelsrequirement.hacknetlevels.md)
|
||||
|
||||
## HacknetLevelsRequirement.hacknetLevels property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
hacknetLevels: number;
|
||||
```
|
21
markdown/bitburner.hacknetlevelsrequirement.md
Normal file
21
markdown/bitburner.hacknetlevelsrequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [HacknetLevelsRequirement](./bitburner.hacknetlevelsrequirement.md)
|
||||
|
||||
## HacknetLevelsRequirement interface
|
||||
|
||||
Player's Hacknet devices must have at least this many total levels.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface HacknetLevelsRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [hacknetLevels](./bitburner.hacknetlevelsrequirement.hacknetlevels.md) | | number | |
|
||||
| [type](./bitburner.hacknetlevelsrequirement.type.md) | | "hacknetLevels" | |
|
||||
|
11
markdown/bitburner.hacknetlevelsrequirement.type.md
Normal file
11
markdown/bitburner.hacknetlevelsrequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [HacknetLevelsRequirement](./bitburner.hacknetlevelsrequirement.md) > [type](./bitburner.hacknetlevelsrequirement.type.md)
|
||||
|
||||
## HacknetLevelsRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "hacknetLevels";
|
||||
```
|
11
markdown/bitburner.hacknetramrequirement.hacknetram.md
Normal file
11
markdown/bitburner.hacknetramrequirement.hacknetram.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [HacknetRAMRequirement](./bitburner.hacknetramrequirement.md) > [hacknetRAM](./bitburner.hacknetramrequirement.hacknetram.md)
|
||||
|
||||
## HacknetRAMRequirement.hacknetRAM property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
hacknetRAM: number;
|
||||
```
|
21
markdown/bitburner.hacknetramrequirement.md
Normal file
21
markdown/bitburner.hacknetramrequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [HacknetRAMRequirement](./bitburner.hacknetramrequirement.md)
|
||||
|
||||
## HacknetRAMRequirement interface
|
||||
|
||||
Player's Hacknet devices must have at least this much total RAM.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface HacknetRAMRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [hacknetRAM](./bitburner.hacknetramrequirement.hacknetram.md) | | number | |
|
||||
| [type](./bitburner.hacknetramrequirement.type.md) | | "hacknetRAM" | |
|
||||
|
11
markdown/bitburner.hacknetramrequirement.type.md
Normal file
11
markdown/bitburner.hacknetramrequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [HacknetRAMRequirement](./bitburner.hacknetramrequirement.md) > [type](./bitburner.hacknetramrequirement.type.md)
|
||||
|
||||
## HacknetRAMRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "hacknetRAM";
|
||||
```
|
11
markdown/bitburner.jobtitlerequirement.jobtitle.md
Normal file
11
markdown/bitburner.jobtitlerequirement.jobtitle.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [JobTitleRequirement](./bitburner.jobtitlerequirement.md) > [jobTitle](./bitburner.jobtitlerequirement.jobtitle.md)
|
||||
|
||||
## JobTitleRequirement.jobTitle property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
jobTitle: JobName;
|
||||
```
|
21
markdown/bitburner.jobtitlerequirement.md
Normal file
21
markdown/bitburner.jobtitlerequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [JobTitleRequirement](./bitburner.jobtitlerequirement.md)
|
||||
|
||||
## JobTitleRequirement interface
|
||||
|
||||
Player must have this job title at some company.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface JobTitleRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [jobTitle](./bitburner.jobtitlerequirement.jobtitle.md) | | [JobName](./bitburner.jobname.md) | |
|
||||
| [type](./bitburner.jobtitlerequirement.type.md) | | "jobTitle" | |
|
||||
|
11
markdown/bitburner.jobtitlerequirement.type.md
Normal file
11
markdown/bitburner.jobtitlerequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [JobTitleRequirement](./bitburner.jobtitlerequirement.md) > [type](./bitburner.jobtitlerequirement.type.md)
|
||||
|
||||
## JobTitleRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "jobTitle";
|
||||
```
|
11
markdown/bitburner.karmarequiremennt.karma.md
Normal file
11
markdown/bitburner.karmarequiremennt.karma.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [KarmaRequiremennt](./bitburner.karmarequiremennt.md) > [karma](./bitburner.karmarequiremennt.karma.md)
|
||||
|
||||
## KarmaRequiremennt.karma property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
karma: number;
|
||||
```
|
21
markdown/bitburner.karmarequiremennt.md
Normal file
21
markdown/bitburner.karmarequiremennt.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [KarmaRequiremennt](./bitburner.karmarequiremennt.md)
|
||||
|
||||
## KarmaRequiremennt interface
|
||||
|
||||
Player must have less than this much karma.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface KarmaRequiremennt
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [karma](./bitburner.karmarequiremennt.karma.md) | | number | |
|
||||
| [type](./bitburner.karmarequiremennt.type.md) | | "karma" | |
|
||||
|
11
markdown/bitburner.karmarequiremennt.type.md
Normal file
11
markdown/bitburner.karmarequiremennt.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [KarmaRequiremennt](./bitburner.karmarequiremennt.md) > [type](./bitburner.karmarequiremennt.type.md)
|
||||
|
||||
## KarmaRequiremennt.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "karma";
|
||||
```
|
11
markdown/bitburner.locationrequirement.location.md
Normal file
11
markdown/bitburner.locationrequirement.location.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [LocationRequirement](./bitburner.locationrequirement.md) > [location](./bitburner.locationrequirement.location.md)
|
||||
|
||||
## LocationRequirement.location property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
location: LocationName;
|
||||
```
|
21
markdown/bitburner.locationrequirement.md
Normal file
21
markdown/bitburner.locationrequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [LocationRequirement](./bitburner.locationrequirement.md)
|
||||
|
||||
## LocationRequirement interface
|
||||
|
||||
Player must be at this location within a city.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface LocationRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [location](./bitburner.locationrequirement.location.md) | | [LocationName](./bitburner.locationname.md) | |
|
||||
| [type](./bitburner.locationrequirement.type.md) | | "location" | |
|
||||
|
11
markdown/bitburner.locationrequirement.type.md
Normal file
11
markdown/bitburner.locationrequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [LocationRequirement](./bitburner.locationrequirement.md) > [type](./bitburner.locationrequirement.type.md)
|
||||
|
||||
## LocationRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "location";
|
||||
```
|
@ -28,12 +28,17 @@
|
||||
| [ActiveFragment](./bitburner.activefragment.md) | |
|
||||
| [AugmentPair](./bitburner.augmentpair.md) | Return value of [getSleevePurchasableAugs](./bitburner.sleeve.getsleevepurchasableaugs.md) |
|
||||
| [AutocompleteData](./bitburner.autocompletedata.md) | Used for autocompletion |
|
||||
| [BackdoorRequirement](./bitburner.backdoorrequirement.md) | Player must have installed a backdoor on this server. |
|
||||
| [BasicHGWOptions](./bitburner.basichgwoptions.md) | Options to affect the behavior of [hack](./bitburner.ns.hack.md)<!-- -->, [grow](./bitburner.ns.grow.md)<!-- -->, and [weaken](./bitburner.ns.weaken.md)<!-- -->. |
|
||||
| [BitNodeMultipliers](./bitburner.bitnodemultipliers.md) | All multipliers affecting the difficulty of the current challenge. |
|
||||
| [BitNodeRequirement](./bitburner.bitnoderequirement.md) | Player must be located in this BitNode. |
|
||||
| [Bladeburner](./bitburner.bladeburner.md) | Bladeburner API |
|
||||
| [BladeburnerCurAction](./bitburner.bladeburnercuraction.md) | Bladeburner current action. |
|
||||
| [BladeburnerRankRequirement](./bitburner.bladeburnerrankrequirement.md) | Player must have at least this rank in the Bladeburner Division. |
|
||||
| [CityRequirement](./bitburner.cityrequirement.md) | Player must be located in this city. |
|
||||
| [CodingContract](./bitburner.codingcontract.md) | Coding Contract API |
|
||||
| [CompanyPositionInfo](./bitburner.companypositioninfo.md) | Company position requirements and salary. |
|
||||
| [CompanyReputationRequirement](./bitburner.companyreputationrequirement.md) | Player must have at least this much reputation with this company. |
|
||||
| [CorpConstants](./bitburner.corpconstants.md) | Corporation related constants |
|
||||
| [CorpIndustryData](./bitburner.corpindustrydata.md) | Data for an individual industry |
|
||||
| [CorpMaterialConstantData](./bitburner.corpmaterialconstantdata.md) | Corporation material information |
|
||||
@ -42,8 +47,11 @@
|
||||
| [CorpProductData](./bitburner.corpproductdata.md) | Product rating information |
|
||||
| [CrimeStats](./bitburner.crimestats.md) | Data representing the internal values of a crime. |
|
||||
| [Division](./bitburner.division.md) | Corporation division |
|
||||
| [EmployedByRequirement](./bitburner.employedbyrequirement.md) | Player must be working for this company. |
|
||||
| [EquipmentStats](./bitburner.equipmentstats.md) | Object representing data representing a gang member equipment. |
|
||||
| [EveryRequirement](./bitburner.everyrequirement.md) | All sub-conditions must be satisfied. |
|
||||
| [Export](./bitburner.export.md) | Export order for a material |
|
||||
| [FileRequirement](./bitburner.filerequirement.md) | Player must have a specific Literature or Message file on their home computer. |
|
||||
| [Formulas](./bitburner.formulas.md) | Formulas API |
|
||||
| [Fragment](./bitburner.fragment.md) | |
|
||||
| [GameInfo](./bitburner.gameinfo.md) | Game Information |
|
||||
@ -60,9 +68,12 @@
|
||||
| [HackingFormulas](./bitburner.hackingformulas.md) | Hacking formulas |
|
||||
| [HackingMultipliers](./bitburner.hackingmultipliers.md) | Hack related multipliers. |
|
||||
| [Hacknet](./bitburner.hacknet.md) | Hacknet API |
|
||||
| [HacknetCoresRequirement](./bitburner.hacknetcoresrequirement.md) | Player's Hacknet devices must have at least this many total cores. |
|
||||
| [HacknetLevelsRequirement](./bitburner.hacknetlevelsrequirement.md) | Player's Hacknet devices must have at least this many total levels. |
|
||||
| [HacknetMultipliers](./bitburner.hacknetmultipliers.md) | Hacknet related multipliers. |
|
||||
| [HacknetNodeConstants](./bitburner.hacknetnodeconstants.md) | Hacknet node related constants |
|
||||
| [HacknetNodesFormulas](./bitburner.hacknetnodesformulas.md) | Hacknet Node formulas |
|
||||
| [HacknetRAMRequirement](./bitburner.hacknetramrequirement.md) | Player's Hacknet devices must have at least this much total RAM. |
|
||||
| [HacknetServerConstants](./bitburner.hacknetserverconstants.md) | Hacknet server related constants |
|
||||
| [HacknetServersFormulas](./bitburner.hacknetserversformulas.md) | Hacknet Server formulas |
|
||||
| [HP](./bitburner.hp.md) | |
|
||||
@ -73,15 +84,23 @@
|
||||
| [InfiltrationReward](./bitburner.infiltrationreward.md) | |
|
||||
| [InvestmentOffer](./bitburner.investmentoffer.md) | Corporation investment offer |
|
||||
| [IStyleSettings](./bitburner.istylesettings.md) | Interface Styles |
|
||||
| [JobTitleRequirement](./bitburner.jobtitlerequirement.md) | Player must have this job title at some company. |
|
||||
| [KarmaRequiremennt](./bitburner.karmarequiremennt.md) | Player must have less than this much karma. |
|
||||
| [LocationRequirement](./bitburner.locationrequirement.md) | Player must be at this location within a city. |
|
||||
| [Material](./bitburner.material.md) | Material in a warehouse |
|
||||
| [MoneyRequirement](./bitburner.moneyrequirement.md) | Player must have at least this much money. |
|
||||
| [MoneySource](./bitburner.moneysource.md) | |
|
||||
| [MoneySources](./bitburner.moneysources.md) | |
|
||||
| [Multipliers](./bitburner.multipliers.md) | |
|
||||
| [NetscriptPort](./bitburner.netscriptport.md) | Object representing a port. A port is a serialized queue. |
|
||||
| [NodeStats](./bitburner.nodestats.md) | Object representing all the values related to a hacknet node. |
|
||||
| [NotRequirement](./bitburner.notrequirement.md) | The sub-condition must not be satisfied. |
|
||||
| [NS](./bitburner.ns.md) | Collection of all functions passed to scripts |
|
||||
| [NumAugmentationsRequirement](./bitburner.numaugmentationsrequirement.md) | Player must have at least this many augmentations installed (if positive). Player must have no augmentations installed (if zero). |
|
||||
| [NumInfiltrationsRequirement](./bitburner.numinfiltrationsrequirement.md) | Player must have completed this many infiltrations. |
|
||||
| [Office](./bitburner.office.md) | Office for a division in a city. |
|
||||
| [OfficeAPI](./bitburner.officeapi.md) | Corporation Office API |
|
||||
| [PeopleKilledRequirement](./bitburner.peoplekilledrequirement.md) | Player must have killed at least this many people. |
|
||||
| [Person](./bitburner.person.md) | |
|
||||
| [Player](./bitburner.player.md) | |
|
||||
| [ProcessInfo](./bitburner.processinfo.md) | A single process on a server. |
|
||||
@ -94,11 +113,14 @@
|
||||
| [RunOptions](./bitburner.runoptions.md) | |
|
||||
| [Server](./bitburner.server.md) | A server. Not all servers have all of these properties - optional properties are missing on certain servers. |
|
||||
| [Singularity](./bitburner.singularity.md) | Singularity API |
|
||||
| [SkillRequirement](./bitburner.skillrequirement.md) | Player must have each listed skill at least this level. |
|
||||
| [Skills](./bitburner.skills.md) | |
|
||||
| [SkillsFormulas](./bitburner.skillsformulas.md) | Skills formulas |
|
||||
| [Sleeve](./bitburner.sleeve.md) | Sleeve API |
|
||||
| [SleevePerson](./bitburner.sleeveperson.md) | |
|
||||
| [SomeRequirement](./bitburner.somerequirement.md) | At least one sub-condition must be satisfied. |
|
||||
| [SourceFileLvl](./bitburner.sourcefilelvl.md) | |
|
||||
| [SourceFileRequirement](./bitburner.sourcefilerequirement.md) | Player must have this Source File. |
|
||||
| [SpawnOptions](./bitburner.spawnoptions.md) | |
|
||||
| [Stanek](./bitburner.stanek.md) | Stanek's Gift API. |
|
||||
| [StockMarketConstants](./bitburner.stockmarketconstants.md) | Constants used for the stockmarket game mechanic. |
|
||||
@ -128,6 +150,7 @@
|
||||
| [CorpUpgradeName](./bitburner.corpupgradename.md) | |
|
||||
| [FilenameOrPID](./bitburner.filenameorpid.md) | |
|
||||
| [NSEnums](./bitburner.nsenums.md) | |
|
||||
| [PlayerRequirement](./bitburner.playerrequirement.md) | Structured interface to requirements for joining a faction or company. For fields with numerical value > 0, the player must have at least this value. For fields with numerical value <<!-- -->= 0, the player must have at most this value. For "not", the sub-condition must be failed instead of passed. For "someCondition", at least one sub-condition must be passed. |
|
||||
| [PortData](./bitburner.portdata.md) | |
|
||||
| [ReactNode](./bitburner.reactnode.md) | <p>A stand-in for the real React.ReactNode. A [ReactElement](./bitburner.reactelement.md) is rendered dynamically with React. number and string are displayed directly. boolean, null, and undefined are ignored and not rendered. An array of ReactNodes will display all members of that array sequentially.</p><p>Use React.createElement to make the ReactElement type, see [creating an element without jsx](https://react.dev/reference/react/createElement#creating-an-element-without-jsx) from the official React documentation.</p> |
|
||||
| [ScriptArg](./bitburner.scriptarg.md) | |
|
||||
|
21
markdown/bitburner.moneyrequirement.md
Normal file
21
markdown/bitburner.moneyrequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [MoneyRequirement](./bitburner.moneyrequirement.md)
|
||||
|
||||
## MoneyRequirement interface
|
||||
|
||||
Player must have at least this much money.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface MoneyRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [money](./bitburner.moneyrequirement.money.md) | | number | |
|
||||
| [type](./bitburner.moneyrequirement.type.md) | | "money" | |
|
||||
|
11
markdown/bitburner.moneyrequirement.money.md
Normal file
11
markdown/bitburner.moneyrequirement.money.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [MoneyRequirement](./bitburner.moneyrequirement.md) > [money](./bitburner.moneyrequirement.money.md)
|
||||
|
||||
## MoneyRequirement.money property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
money: number;
|
||||
```
|
11
markdown/bitburner.moneyrequirement.type.md
Normal file
11
markdown/bitburner.moneyrequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [MoneyRequirement](./bitburner.moneyrequirement.md) > [type](./bitburner.moneyrequirement.type.md)
|
||||
|
||||
## MoneyRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "money";
|
||||
```
|
11
markdown/bitburner.notrequirement.condition.md
Normal file
11
markdown/bitburner.notrequirement.condition.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [NotRequirement](./bitburner.notrequirement.md) > [condition](./bitburner.notrequirement.condition.md)
|
||||
|
||||
## NotRequirement.condition property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
condition: PlayerRequirement;
|
||||
```
|
21
markdown/bitburner.notrequirement.md
Normal file
21
markdown/bitburner.notrequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [NotRequirement](./bitburner.notrequirement.md)
|
||||
|
||||
## NotRequirement interface
|
||||
|
||||
The sub-condition must not be satisfied.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface NotRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [condition](./bitburner.notrequirement.condition.md) | | [PlayerRequirement](./bitburner.playerrequirement.md) | |
|
||||
| [type](./bitburner.notrequirement.type.md) | | "not" | |
|
||||
|
11
markdown/bitburner.notrequirement.type.md
Normal file
11
markdown/bitburner.notrequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [NotRequirement](./bitburner.notrequirement.md) > [type](./bitburner.notrequirement.type.md)
|
||||
|
||||
## NotRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "not";
|
||||
```
|
21
markdown/bitburner.numaugmentationsrequirement.md
Normal file
21
markdown/bitburner.numaugmentationsrequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [NumAugmentationsRequirement](./bitburner.numaugmentationsrequirement.md)
|
||||
|
||||
## NumAugmentationsRequirement interface
|
||||
|
||||
Player must have at least this many augmentations installed (if positive). Player must have no augmentations installed (if zero).
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface NumAugmentationsRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [numAugmentations](./bitburner.numaugmentationsrequirement.numaugmentations.md) | | number | |
|
||||
| [type](./bitburner.numaugmentationsrequirement.type.md) | | "numAugmentations" | |
|
||||
|
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [NumAugmentationsRequirement](./bitburner.numaugmentationsrequirement.md) > [numAugmentations](./bitburner.numaugmentationsrequirement.numaugmentations.md)
|
||||
|
||||
## NumAugmentationsRequirement.numAugmentations property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
numAugmentations: number;
|
||||
```
|
11
markdown/bitburner.numaugmentationsrequirement.type.md
Normal file
11
markdown/bitburner.numaugmentationsrequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [NumAugmentationsRequirement](./bitburner.numaugmentationsrequirement.md) > [type](./bitburner.numaugmentationsrequirement.type.md)
|
||||
|
||||
## NumAugmentationsRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "numAugmentations";
|
||||
```
|
21
markdown/bitburner.numinfiltrationsrequirement.md
Normal file
21
markdown/bitburner.numinfiltrationsrequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [NumInfiltrationsRequirement](./bitburner.numinfiltrationsrequirement.md)
|
||||
|
||||
## NumInfiltrationsRequirement interface
|
||||
|
||||
Player must have completed this many infiltrations.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface NumInfiltrationsRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [numInfiltrations](./bitburner.numinfiltrationsrequirement.numinfiltrations.md) | | number | |
|
||||
| [type](./bitburner.numinfiltrationsrequirement.type.md) | | "numInfiltrations" | |
|
||||
|
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [NumInfiltrationsRequirement](./bitburner.numinfiltrationsrequirement.md) > [numInfiltrations](./bitburner.numinfiltrationsrequirement.numinfiltrations.md)
|
||||
|
||||
## NumInfiltrationsRequirement.numInfiltrations property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
numInfiltrations: number;
|
||||
```
|
11
markdown/bitburner.numinfiltrationsrequirement.type.md
Normal file
11
markdown/bitburner.numinfiltrationsrequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [NumInfiltrationsRequirement](./bitburner.numinfiltrationsrequirement.md) > [type](./bitburner.numinfiltrationsrequirement.type.md)
|
||||
|
||||
## NumInfiltrationsRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "numInfiltrations";
|
||||
```
|
21
markdown/bitburner.peoplekilledrequirement.md
Normal file
21
markdown/bitburner.peoplekilledrequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [PeopleKilledRequirement](./bitburner.peoplekilledrequirement.md)
|
||||
|
||||
## PeopleKilledRequirement interface
|
||||
|
||||
Player must have killed at least this many people.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface PeopleKilledRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [numPeopleKilled](./bitburner.peoplekilledrequirement.numpeoplekilled.md) | | number | |
|
||||
| [type](./bitburner.peoplekilledrequirement.type.md) | | "numPeopleKilled" | |
|
||||
|
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [PeopleKilledRequirement](./bitburner.peoplekilledrequirement.md) > [numPeopleKilled](./bitburner.peoplekilledrequirement.numpeoplekilled.md)
|
||||
|
||||
## PeopleKilledRequirement.numPeopleKilled property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
numPeopleKilled: number;
|
||||
```
|
11
markdown/bitburner.peoplekilledrequirement.type.md
Normal file
11
markdown/bitburner.peoplekilledrequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [PeopleKilledRequirement](./bitburner.peoplekilledrequirement.md) > [type](./bitburner.peoplekilledrequirement.type.md)
|
||||
|
||||
## PeopleKilledRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "numPeopleKilled";
|
||||
```
|
37
markdown/bitburner.playerrequirement.md
Normal file
37
markdown/bitburner.playerrequirement.md
Normal file
@ -0,0 +1,37 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [PlayerRequirement](./bitburner.playerrequirement.md)
|
||||
|
||||
## PlayerRequirement type
|
||||
|
||||
Structured interface to requirements for joining a faction or company. For fields with numerical value > 0, the player must have at least this value. For fields with numerical value <<!-- -->= 0, the player must have at most this value. For "not", the sub-condition must be failed instead of passed. For "someCondition", at least one sub-condition must be passed.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
export type PlayerRequirement =
|
||||
| MoneyRequirement
|
||||
| SkillRequirement
|
||||
| KarmaRequiremennt
|
||||
| PeopleKilledRequirement
|
||||
| FileRequirement
|
||||
| NumAugmentationsRequirement
|
||||
| EmployedByRequirement
|
||||
| CompanyReputationRequirement
|
||||
| JobTitleRequirement
|
||||
| CityRequirement
|
||||
| LocationRequirement
|
||||
| BackdoorRequirement
|
||||
| HacknetRAMRequirement
|
||||
| HacknetCoresRequirement
|
||||
| HacknetLevelsRequirement
|
||||
| BitNodeRequirement
|
||||
| SourceFileRequirement
|
||||
| BladeburnerRankRequirement
|
||||
| NumInfiltrationsRequirement
|
||||
| NotRequirement
|
||||
| SomeRequirement
|
||||
| EveryRequirement;
|
||||
```
|
||||
**References:** [MoneyRequirement](./bitburner.moneyrequirement.md)<!-- -->, [SkillRequirement](./bitburner.skillrequirement.md)<!-- -->, [KarmaRequiremennt](./bitburner.karmarequiremennt.md)<!-- -->, [PeopleKilledRequirement](./bitburner.peoplekilledrequirement.md)<!-- -->, [FileRequirement](./bitburner.filerequirement.md)<!-- -->, [NumAugmentationsRequirement](./bitburner.numaugmentationsrequirement.md)<!-- -->, [EmployedByRequirement](./bitburner.employedbyrequirement.md)<!-- -->, [CompanyReputationRequirement](./bitburner.companyreputationrequirement.md)<!-- -->, [JobTitleRequirement](./bitburner.jobtitlerequirement.md)<!-- -->, [CityRequirement](./bitburner.cityrequirement.md)<!-- -->, [LocationRequirement](./bitburner.locationrequirement.md)<!-- -->, [BackdoorRequirement](./bitburner.backdoorrequirement.md)<!-- -->, [HacknetRAMRequirement](./bitburner.hacknetramrequirement.md)<!-- -->, [HacknetCoresRequirement](./bitburner.hacknetcoresrequirement.md)<!-- -->, [HacknetLevelsRequirement](./bitburner.hacknetlevelsrequirement.md)<!-- -->, [BitNodeRequirement](./bitburner.bitnoderequirement.md)<!-- -->, [SourceFileRequirement](./bitburner.sourcefilerequirement.md)<!-- -->, [BladeburnerRankRequirement](./bitburner.bladeburnerrankrequirement.md)<!-- -->, [NumInfiltrationsRequirement](./bitburner.numinfiltrationsrequirement.md)<!-- -->, [NotRequirement](./bitburner.notrequirement.md)<!-- -->, [SomeRequirement](./bitburner.somerequirement.md)<!-- -->, [EveryRequirement](./bitburner.everyrequirement.md)
|
||||
|
@ -0,0 +1,56 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [Singularity](./bitburner.singularity.md) > [getFactionInviteRequirements](./bitburner.singularity.getfactioninviterequirements.md)
|
||||
|
||||
## Singularity.getFactionInviteRequirements() method
|
||||
|
||||
List conditions for being invited to a faction.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
getFactionInviteRequirements(faction: string): PlayerRequirement[];
|
||||
```
|
||||
|
||||
## Parameters
|
||||
|
||||
| Parameter | Type | Description |
|
||||
| --- | --- | --- |
|
||||
| faction | string | Name of the faction |
|
||||
|
||||
**Returns:**
|
||||
|
||||
[PlayerRequirement](./bitburner.playerrequirement.md)<!-- -->\[\]
|
||||
|
||||
Array of PlayerRequirement objects which must all be fulfilled to receive an invitation.
|
||||
|
||||
## Remarks
|
||||
|
||||
RAM cost: 3 GB \* 16/4/1
|
||||
|
||||
## Example
|
||||
|
||||
|
||||
```js
|
||||
ns.singularity.getFactionInviteRequirements("The Syndicate")
|
||||
[
|
||||
{ "type": "someCondition", "conditions": [
|
||||
{ "type": "city", "city": "Aevum" },
|
||||
{ "type": "city", "city": "Sector-12" }
|
||||
]
|
||||
},
|
||||
{ "type": "not", "condition": {
|
||||
"type": "employedBy", "company": "Central Intelligence Agency"
|
||||
}
|
||||
},
|
||||
{ "type": "not", "condition": {
|
||||
"type": "employedBy", "company": "National Security Agency"
|
||||
}
|
||||
},
|
||||
{ "type": "money", "money": 10000000 },
|
||||
{ "type": "skills", "skills": { "hacking": 200 } },
|
||||
{ "type": "skills", "skills": { "strength": 200, "defense": 200, "dexterity": 200, "agility": 200 } },
|
||||
{ "type": "karma", "karma": -90 }
|
||||
]
|
||||
```
|
||||
|
@ -50,6 +50,7 @@ This API requires Source-File 4 to use. The RAM cost of all these functions is m
|
||||
| [getDarkwebPrograms()](./bitburner.singularity.getdarkwebprograms.md) | Get a list of programs offered on the dark web. |
|
||||
| [getFactionFavor(faction)](./bitburner.singularity.getfactionfavor.md) | Get faction favor. |
|
||||
| [getFactionFavorGain(faction)](./bitburner.singularity.getfactionfavorgain.md) | Get faction favor gain. |
|
||||
| [getFactionInviteRequirements(faction)](./bitburner.singularity.getfactioninviterequirements.md) | List conditions for being invited to a faction. |
|
||||
| [getFactionRep(faction)](./bitburner.singularity.getfactionrep.md) | Get faction reputation. |
|
||||
| [getOwnedAugmentations(purchased)](./bitburner.singularity.getownedaugmentations.md) | Get a list of owned augmentation. |
|
||||
| [getOwnedSourceFiles()](./bitburner.singularity.getownedsourcefiles.md) | Get a list of acquired Source-Files. |
|
||||
|
21
markdown/bitburner.skillrequirement.md
Normal file
21
markdown/bitburner.skillrequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [SkillRequirement](./bitburner.skillrequirement.md)
|
||||
|
||||
## SkillRequirement interface
|
||||
|
||||
Player must have each listed skill at least this level.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface SkillRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [skills](./bitburner.skillrequirement.skills.md) | | Partial<[Skills](./bitburner.skills.md)<!-- -->> | |
|
||||
| [type](./bitburner.skillrequirement.type.md) | | "skills" | |
|
||||
|
11
markdown/bitburner.skillrequirement.skills.md
Normal file
11
markdown/bitburner.skillrequirement.skills.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [SkillRequirement](./bitburner.skillrequirement.md) > [skills](./bitburner.skillrequirement.skills.md)
|
||||
|
||||
## SkillRequirement.skills property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
skills: Partial<Skills>;
|
||||
```
|
11
markdown/bitburner.skillrequirement.type.md
Normal file
11
markdown/bitburner.skillrequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [SkillRequirement](./bitburner.skillrequirement.md) > [type](./bitburner.skillrequirement.type.md)
|
||||
|
||||
## SkillRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "skills";
|
||||
```
|
11
markdown/bitburner.somerequirement.conditions.md
Normal file
11
markdown/bitburner.somerequirement.conditions.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [SomeRequirement](./bitburner.somerequirement.md) > [conditions](./bitburner.somerequirement.conditions.md)
|
||||
|
||||
## SomeRequirement.conditions property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
conditions: PlayerRequirement[];
|
||||
```
|
21
markdown/bitburner.somerequirement.md
Normal file
21
markdown/bitburner.somerequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [SomeRequirement](./bitburner.somerequirement.md)
|
||||
|
||||
## SomeRequirement interface
|
||||
|
||||
At least one sub-condition must be satisfied.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface SomeRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [conditions](./bitburner.somerequirement.conditions.md) | | [PlayerRequirement](./bitburner.playerrequirement.md)<!-- -->\[\] | |
|
||||
| [type](./bitburner.somerequirement.type.md) | | "someCondition" | |
|
||||
|
11
markdown/bitburner.somerequirement.type.md
Normal file
11
markdown/bitburner.somerequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [SomeRequirement](./bitburner.somerequirement.md) > [type](./bitburner.somerequirement.type.md)
|
||||
|
||||
## SomeRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "someCondition";
|
||||
```
|
21
markdown/bitburner.sourcefilerequirement.md
Normal file
21
markdown/bitburner.sourcefilerequirement.md
Normal file
@ -0,0 +1,21 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [SourceFileRequirement](./bitburner.sourcefilerequirement.md)
|
||||
|
||||
## SourceFileRequirement interface
|
||||
|
||||
Player must have this Source File.
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
interface SourceFileRequirement
|
||||
```
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Modifiers | Type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| [sourceFile](./bitburner.sourcefilerequirement.sourcefile.md) | | number | |
|
||||
| [type](./bitburner.sourcefilerequirement.type.md) | | "sourceFile" | |
|
||||
|
11
markdown/bitburner.sourcefilerequirement.sourcefile.md
Normal file
11
markdown/bitburner.sourcefilerequirement.sourcefile.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [SourceFileRequirement](./bitburner.sourcefilerequirement.md) > [sourceFile](./bitburner.sourcefilerequirement.sourcefile.md)
|
||||
|
||||
## SourceFileRequirement.sourceFile property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
sourceFile: number;
|
||||
```
|
11
markdown/bitburner.sourcefilerequirement.type.md
Normal file
11
markdown/bitburner.sourcefilerequirement.type.md
Normal file
@ -0,0 +1,11 @@
|
||||
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
||||
|
||||
[Home](./index.md) > [bitburner](./bitburner.md) > [SourceFileRequirement](./bitburner.sourcefilerequirement.md) > [type](./bitburner.sourcefilerequirement.type.md)
|
||||
|
||||
## SourceFileRequirement.type property
|
||||
|
||||
**Signature:**
|
||||
|
||||
```typescript
|
||||
type: "sourceFile";
|
||||
```
|
@ -1,16 +1,18 @@
|
||||
import React from "react";
|
||||
import { FactionName, CompanyName, CityName, LiteratureName, MessageFilename } from "@enums";
|
||||
import { FactionName, CompanyName, CityName, LiteratureName, MessageFilename, LocationName } from "@enums";
|
||||
import { currentNodeMults } from "../BitNode/BitNodeMultipliers";
|
||||
import { Router } from "../ui/GameRoot";
|
||||
import { Page } from "../ui/Router";
|
||||
import { Option } from "./ui/Option";
|
||||
import { Typography } from "@mui/material";
|
||||
import {
|
||||
JoinCondition,
|
||||
PlayerCondition,
|
||||
CompoundPlayerCondition,
|
||||
haveBackdooredServer,
|
||||
employedBy,
|
||||
haveCompanyRep,
|
||||
executiveEmployee,
|
||||
notEmployee,
|
||||
notEmployedBy,
|
||||
haveAugmentations,
|
||||
haveMoney,
|
||||
haveSkill,
|
||||
@ -18,13 +20,18 @@ import {
|
||||
haveKarma,
|
||||
haveKilledPeople,
|
||||
locatedInCity,
|
||||
locatedInSomeCity,
|
||||
totalHacknetRam,
|
||||
totalHacknetCores,
|
||||
totalHacknetLevels,
|
||||
haveBladeburnerRank,
|
||||
haveSourceFile,
|
||||
haveSomeSourceFile,
|
||||
haveFile,
|
||||
someCondition,
|
||||
everyCondition,
|
||||
delayedCondition,
|
||||
unsatisfiable,
|
||||
} from "./FactionJoinCondition";
|
||||
import { SpecialServers } from "../Server/data/SpecialServers";
|
||||
import { CONSTANTS } from "../Constants";
|
||||
@ -34,8 +41,8 @@ import type { PlayerObject } from "../PersonObjects/Player/PlayerObject";
|
||||
interface FactionInfoParams {
|
||||
infoText?: JSX.Element;
|
||||
rumorText?: JSX.Element;
|
||||
inviteReqs?: JoinCondition[];
|
||||
rumorReqs?: JoinCondition[];
|
||||
inviteReqs?: PlayerCondition[];
|
||||
rumorReqs?: PlayerCondition[];
|
||||
enemies?: FactionName[];
|
||||
offerHackingWork?: boolean;
|
||||
offerFieldWork?: boolean;
|
||||
@ -57,10 +64,10 @@ export class FactionInfo {
|
||||
rumorText: JSX.Element;
|
||||
|
||||
/** Conditions for being automatically inivited to this facton. */
|
||||
inviteReqs: JoinCondition[];
|
||||
inviteReqs: CompoundPlayerCondition;
|
||||
|
||||
/** Conditions for automatically hearing a rumor about this facton. */
|
||||
rumorReqs: JoinCondition[];
|
||||
rumorReqs: CompoundPlayerCondition;
|
||||
|
||||
/** A flag indicating if the faction supports field work to earn reputation. */
|
||||
offerFieldWork: boolean;
|
||||
@ -83,8 +90,8 @@ export class FactionInfo {
|
||||
constructor(params: FactionInfoParams) {
|
||||
this.infoText = params.infoText ?? <></>;
|
||||
this.rumorText = params.rumorText ?? <></>;
|
||||
this.inviteReqs = params.inviteReqs ?? [];
|
||||
this.rumorReqs = params.rumorReqs ?? [];
|
||||
this.inviteReqs = everyCondition(params.inviteReqs ?? [unsatisfiable]);
|
||||
this.rumorReqs = everyCondition(params.rumorReqs ?? [unsatisfiable]);
|
||||
this.enemies = params.enemies ?? [];
|
||||
this.offerHackingWork = params.offerHackingWork ?? false;
|
||||
this.offerFieldWork = params.offerFieldWork ?? false;
|
||||
@ -127,9 +134,9 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
infoText: <>Yesterday we obeyed kings and bent our necks to emperors. Today we kneel only to truth.</>,
|
||||
rumorText: <>Follow the thread. Take fl1ght.</>,
|
||||
inviteReqs: [
|
||||
haveAugmentations(currentNodeMults.DaedalusAugsRequirement),
|
||||
delayedCondition(() => haveAugmentations(currentNodeMults.DaedalusAugsRequirement)),
|
||||
haveMoney(100e9),
|
||||
someCondition(haveSkill("hacking", 2500), haveCombatSkills(1500)),
|
||||
someCondition([haveSkill("hacking", 2500), haveCombatSkills(1500)]),
|
||||
],
|
||||
rumorReqs: [haveFile(MessageFilename.TruthGazer)],
|
||||
offerHackingWork: true,
|
||||
@ -168,7 +175,7 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
</>
|
||||
),
|
||||
rumorText: <>High-ranking employees of {CompanyName.ECorp} can gain access to proprietary hacking augmentations.</>,
|
||||
inviteReqs: [employedBy(CompanyName.ECorp, { withRep: CONSTANTS.CorpFactionRepRequirement })],
|
||||
inviteReqs: [employedBy(CompanyName.ECorp), haveCompanyRep(CompanyName.ECorp, CONSTANTS.CorpFactionRepRequirement)],
|
||||
rumorReqs: [employedBy(CompanyName.ECorp)],
|
||||
offerHackingWork: true,
|
||||
offerFieldWork: true,
|
||||
@ -191,7 +198,10 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
rumorText: (
|
||||
<>High-ranking employees of {CompanyName.MegaCorp} can gain access to proprietary biotech augmentations.</>
|
||||
),
|
||||
inviteReqs: [employedBy(CompanyName.MegaCorp, { withRep: CONSTANTS.CorpFactionRepRequirement })],
|
||||
inviteReqs: [
|
||||
employedBy(CompanyName.MegaCorp),
|
||||
haveCompanyRep(CompanyName.MegaCorp, CONSTANTS.CorpFactionRepRequirement),
|
||||
],
|
||||
rumorReqs: [employedBy(CompanyName.MegaCorp)],
|
||||
offerHackingWork: true,
|
||||
offerFieldWork: true,
|
||||
@ -214,7 +224,10 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
augmentations.
|
||||
</>
|
||||
),
|
||||
inviteReqs: [employedBy(CompanyName.BachmanAndAssociates, { withRep: CONSTANTS.CorpFactionRepRequirement })],
|
||||
inviteReqs: [
|
||||
employedBy(CompanyName.BachmanAndAssociates),
|
||||
haveCompanyRep(CompanyName.BachmanAndAssociates, CONSTANTS.CorpFactionRepRequirement),
|
||||
],
|
||||
rumorReqs: [employedBy(CompanyName.BachmanAndAssociates)],
|
||||
offerHackingWork: true,
|
||||
offerFieldWork: true,
|
||||
@ -227,7 +240,10 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
rumorText: (
|
||||
<>High-ranking employees of {CompanyName.BladeIndustries} can gain access to proprietary bionic augmentations.</>
|
||||
),
|
||||
inviteReqs: [employedBy(CompanyName.BladeIndustries, { withRep: CONSTANTS.CorpFactionRepRequirement })],
|
||||
inviteReqs: [
|
||||
employedBy(CompanyName.BladeIndustries),
|
||||
haveCompanyRep(CompanyName.BladeIndustries, CONSTANTS.CorpFactionRepRequirement),
|
||||
],
|
||||
rumorReqs: [employedBy(CompanyName.BladeIndustries)],
|
||||
offerHackingWork: true,
|
||||
offerFieldWork: true,
|
||||
@ -244,7 +260,7 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
</>
|
||||
),
|
||||
rumorText: <>High-ranking employees of {CompanyName.NWO} can gain access to proprietary nanotech augmentations.</>,
|
||||
inviteReqs: [employedBy(CompanyName.NWO, { withRep: CONSTANTS.CorpFactionRepRequirement })],
|
||||
inviteReqs: [employedBy(CompanyName.NWO), haveCompanyRep(CompanyName.NWO, CONSTANTS.CorpFactionRepRequirement)],
|
||||
rumorReqs: [employedBy(CompanyName.NWO)],
|
||||
offerHackingWork: true,
|
||||
offerFieldWork: true,
|
||||
@ -260,7 +276,10 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
augmentations.
|
||||
</>
|
||||
),
|
||||
inviteReqs: [employedBy(CompanyName.ClarkeIncorporated, { withRep: CONSTANTS.CorpFactionRepRequirement })],
|
||||
inviteReqs: [
|
||||
employedBy(CompanyName.ClarkeIncorporated),
|
||||
haveCompanyRep(CompanyName.ClarkeIncorporated, CONSTANTS.CorpFactionRepRequirement),
|
||||
],
|
||||
rumorReqs: [employedBy(CompanyName.ClarkeIncorporated)],
|
||||
offerHackingWork: true,
|
||||
offerFieldWork: true,
|
||||
@ -276,7 +295,10 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
augmentations.
|
||||
</>
|
||||
),
|
||||
inviteReqs: [employedBy(CompanyName.OmniTekIncorporated, { withRep: CONSTANTS.CorpFactionRepRequirement })],
|
||||
inviteReqs: [
|
||||
employedBy(CompanyName.OmniTekIncorporated),
|
||||
haveCompanyRep(CompanyName.OmniTekIncorporated, CONSTANTS.CorpFactionRepRequirement),
|
||||
],
|
||||
rumorReqs: [employedBy(CompanyName.OmniTekIncorporated)],
|
||||
offerHackingWork: true,
|
||||
offerFieldWork: true,
|
||||
@ -294,7 +316,10 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
rumorText: (
|
||||
<>High-ranking employees of {CompanyName.FourSigma} can gain access to a range of versatile augmentations.</>
|
||||
),
|
||||
inviteReqs: [employedBy(CompanyName.FourSigma, { withRep: CONSTANTS.CorpFactionRepRequirement })],
|
||||
inviteReqs: [
|
||||
employedBy(CompanyName.FourSigma),
|
||||
haveCompanyRep(CompanyName.FourSigma, CONSTANTS.CorpFactionRepRequirement),
|
||||
],
|
||||
rumorReqs: [employedBy(CompanyName.FourSigma)],
|
||||
offerHackingWork: true,
|
||||
offerFieldWork: true,
|
||||
@ -310,7 +335,10 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
augmentations.
|
||||
</>
|
||||
),
|
||||
inviteReqs: [employedBy(CompanyName.KuaiGongInternational, { withRep: CONSTANTS.CorpFactionRepRequirement })],
|
||||
inviteReqs: [
|
||||
employedBy(CompanyName.KuaiGongInternational),
|
||||
haveCompanyRep(CompanyName.KuaiGongInternational, CONSTANTS.CorpFactionRepRequirement),
|
||||
],
|
||||
rumorReqs: [employedBy(CompanyName.KuaiGongInternational)],
|
||||
offerHackingWork: true,
|
||||
offerFieldWork: true,
|
||||
@ -333,7 +361,8 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
</>
|
||||
),
|
||||
inviteReqs: [
|
||||
employedBy(CompanyName.FulcrumTechnologies, { withRep: CONSTANTS.CorpFactionRepRequirement }),
|
||||
employedBy(CompanyName.FulcrumTechnologies),
|
||||
haveCompanyRep(CompanyName.FulcrumTechnologies, CONSTANTS.CorpFactionRepRequirement),
|
||||
haveBackdooredServer(SpecialServers.FulcrumSecretTechnologies),
|
||||
],
|
||||
rumorReqs: [employedBy(CompanyName.FulcrumTechnologies)],
|
||||
@ -520,12 +549,12 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
infoText: <>It is better to reign in Hell than to serve in Heaven.</>,
|
||||
rumorText: <>“We know.”</>,
|
||||
inviteReqs: [
|
||||
notEmployee(CompanyName.CIA),
|
||||
notEmployee(CompanyName.NSA),
|
||||
haveKarma(-45),
|
||||
notEmployedBy(CompanyName.CIA),
|
||||
notEmployedBy(CompanyName.NSA),
|
||||
haveSkill("hacking", 100),
|
||||
haveCombatSkills(300),
|
||||
haveKilledPeople(30),
|
||||
haveKarma(-45),
|
||||
],
|
||||
rumorReqs: [haveKarma(-45), haveSkill("hacking", 50), haveCombatSkills(150), haveKilledPeople(5)],
|
||||
offerHackingWork: true,
|
||||
@ -538,19 +567,19 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
rumorText: <>A ruthless criminal organization based in {CityName.Chongqing}</>,
|
||||
inviteReqs: [
|
||||
locatedInCity(CityName.Chongqing),
|
||||
notEmployee(CompanyName.CIA),
|
||||
notEmployee(CompanyName.NSA),
|
||||
haveKarma(-45),
|
||||
notEmployedBy(CompanyName.CIA),
|
||||
notEmployedBy(CompanyName.NSA),
|
||||
haveSkill("hacking", 300),
|
||||
haveCombatSkills(300),
|
||||
haveKilledPeople(5),
|
||||
haveKarma(-45),
|
||||
],
|
||||
rumorReqs: [
|
||||
locatedInCity(CityName.Chongqing),
|
||||
haveKarma(-45),
|
||||
haveSkill("hacking", 150),
|
||||
haveCombatSkills(150),
|
||||
haveKilledPeople(1),
|
||||
haveKarma(-45),
|
||||
],
|
||||
offerHackingWork: true,
|
||||
offerFieldWork: true,
|
||||
@ -560,17 +589,18 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
infoText: <>Honor holds you back.</>,
|
||||
rumorText: <>An elite criminal organization that operates in the western hemisphere</>,
|
||||
inviteReqs: [
|
||||
locatedInCity(CityName.Aevum, CityName.Sector12),
|
||||
notEmployee(CompanyName.CIA),
|
||||
notEmployee(CompanyName.NSA),
|
||||
haveKarma(-90),
|
||||
locatedInSomeCity(CityName.Aevum, CityName.Sector12),
|
||||
notEmployedBy(CompanyName.CIA),
|
||||
notEmployedBy(CompanyName.NSA),
|
||||
haveMoney(10e6),
|
||||
haveSkill("hacking", 200),
|
||||
haveCombatSkills(200),
|
||||
haveKarma(-90),
|
||||
],
|
||||
rumorReqs: [
|
||||
locatedInCity(CityName.Aevum, CityName.Sector12),
|
||||
someCondition(haveKarma(-90), haveFile(LiteratureName.Sector12Crime)),
|
||||
locatedInSomeCity(CityName.Aevum, CityName.Sector12),
|
||||
haveCombatSkills(100),
|
||||
someCondition([haveKarma(-90), haveFile(LiteratureName.Sector12Crime)]),
|
||||
],
|
||||
offerHackingWork: true,
|
||||
offerFieldWork: true,
|
||||
@ -603,13 +633,14 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
infoText: <>Following the mandate of Heaven and carrying out the way.</>,
|
||||
rumorText: <>A notorious East Asian criminal organization</>,
|
||||
inviteReqs: [
|
||||
locatedInCity(CityName.Chongqing, CityName.NewTokyo, CityName.Ishima),
|
||||
haveKarma(-18),
|
||||
locatedInSomeCity(CityName.Chongqing, CityName.NewTokyo, CityName.Ishima),
|
||||
haveCombatSkills(75),
|
||||
haveKarma(-18),
|
||||
],
|
||||
rumorReqs: [
|
||||
locatedInCity(CityName.Chongqing, CityName.NewTokyo, CityName.Ishima),
|
||||
someCondition(haveKarma(-18), haveFile(LiteratureName.NewTriads)),
|
||||
locatedInSomeCity(CityName.Chongqing, CityName.NewTokyo, CityName.Ishima),
|
||||
haveCombatSkills(50),
|
||||
someCondition([haveKarma(-18), haveFile(LiteratureName.NewTriads)]),
|
||||
],
|
||||
offerFieldWork: true,
|
||||
offerSecurityWork: true,
|
||||
@ -619,7 +650,7 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
infoText: <>{FactionName.SlumSnakes} rule!</>,
|
||||
rumorText: <>Graffiti seen in the slums: “{FactionName.SlumSnakes} rule!”</>,
|
||||
inviteReqs: [haveCombatSkills(30), haveMoney(1e6), haveKarma(-9)],
|
||||
rumorReqs: [haveKarma(-1)],
|
||||
rumorReqs: [haveCombatSkills(10), someCondition([haveKarma(-1), haveFile(LiteratureName.Sector12Crime)])],
|
||||
offerFieldWork: true,
|
||||
offerSecurityWork: true,
|
||||
}),
|
||||
@ -637,12 +668,12 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
infoText: <>Obey Heaven and work righteously.</>,
|
||||
rumorText: <>A Chinese honor society with the motto: “Obey Heaven and work righteously.”</>,
|
||||
inviteReqs: [
|
||||
locatedInCity(CityName.Chongqing, CityName.NewTokyo, CityName.Ishima),
|
||||
locatedInSomeCity(CityName.Chongqing, CityName.NewTokyo, CityName.Ishima),
|
||||
haveSkill("hacking", 50),
|
||||
haveMoney(1e6),
|
||||
],
|
||||
rumorReqs: [
|
||||
locatedInCity(CityName.Chongqing, CityName.NewTokyo, CityName.Ishima),
|
||||
locatedInSomeCity(CityName.Chongqing, CityName.NewTokyo, CityName.Ishima),
|
||||
haveSkill("hacking", 25),
|
||||
haveMoney(0.5e6),
|
||||
],
|
||||
@ -662,8 +693,8 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
</>
|
||||
),
|
||||
rumorText: <>The {CompanyName.NSA} would like to have a word with you once you're ready.</>,
|
||||
inviteReqs: [haveSourceFile(6, 7), haveBladeburnerRank(BladeburnerConstants.RankNeededForFaction)],
|
||||
rumorReqs: [haveSourceFile(6, 7)],
|
||||
inviteReqs: [haveSomeSourceFile(6, 7), haveBladeburnerRank(BladeburnerConstants.RankNeededForFaction)],
|
||||
rumorReqs: [haveSomeSourceFile(6, 7)],
|
||||
special: true,
|
||||
assignment: (): React.ReactElement => {
|
||||
return (
|
||||
@ -715,6 +746,7 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
haveAugmentations(0),
|
||||
{
|
||||
toString: () => `Investigate the dilapidated church in ${CityName.Chongqing}`,
|
||||
toJSON: () => ({ type: "location", location: LocationName.ChongqingChurchOfTheMachineGod }),
|
||||
isSatisfied: (p: PlayerObject) => {
|
||||
return [...p.factions, ...p.factionInvitations].includes(FactionName.ChurchOfTheMachineGod);
|
||||
},
|
||||
@ -750,6 +782,7 @@ export const FactionInfos: Record<FactionName, FactionInfo> = {
|
||||
inviteReqs: [
|
||||
{
|
||||
toString: () => `Complete an infiltration`,
|
||||
toJSON: () => ({ type: "numInfiltrations", numInfiltrations: 1 }),
|
||||
isSatisfied: (p: PlayerObject) => {
|
||||
return [...p.factions, ...p.factionInvitations].includes(FactionName.ShadowsOfAnarchy);
|
||||
},
|
||||
|
@ -1,4 +1,5 @@
|
||||
import { CompanyName, JobName, CityName, AugmentationName, LiteratureName, MessageFilename } from "@enums";
|
||||
import { ServerName } from "../Types/strings";
|
||||
import { Server } from "../Server/Server";
|
||||
import { GetServer } from "../Server/AllServers";
|
||||
import { HacknetServer } from "../Hacknet/HacknetServer";
|
||||
@ -7,16 +8,44 @@ import { Companies } from "../Company/Companies";
|
||||
import { formatReputation, formatMoney, formatRam } from "../ui/formatNumber";
|
||||
import type { PlayerObject } from "../PersonObjects/Player/PlayerObject";
|
||||
import type { Skills } from "../PersonObjects/Skills";
|
||||
import type {
|
||||
PlayerRequirement,
|
||||
BackdoorRequirement,
|
||||
CityRequirement,
|
||||
CompanyReputationRequirement,
|
||||
EmployedByRequirement,
|
||||
JobTitleRequirement,
|
||||
KarmaRequiremennt,
|
||||
MoneyRequirement,
|
||||
NumAugmentationsRequirement,
|
||||
PeopleKilledRequirement,
|
||||
SkillRequirement,
|
||||
FileRequirement,
|
||||
BladeburnerRankRequirement,
|
||||
HacknetRAMRequirement,
|
||||
HacknetCoresRequirement,
|
||||
HacknetLevelsRequirement,
|
||||
NotRequirement,
|
||||
SomeRequirement,
|
||||
EveryRequirement,
|
||||
} from "@nsdefs";
|
||||
|
||||
export interface JoinCondition {
|
||||
/**
|
||||
* Declarative format for checking that the player satisfies some condition, such as the requirements for being invited to a faction.
|
||||
*/
|
||||
export interface PlayerCondition {
|
||||
toString(): string;
|
||||
toJSON(): PlayerRequirement;
|
||||
isSatisfied(p: PlayerObject): boolean;
|
||||
}
|
||||
|
||||
export const haveBackdooredServer = (hostname: string): JoinCondition => ({
|
||||
export const haveBackdooredServer = (hostname: ServerName): PlayerCondition => ({
|
||||
toString(): string {
|
||||
return `Backdoor access to ${hostname} server`;
|
||||
},
|
||||
toJSON(): BackdoorRequirement {
|
||||
return { type: "backdoorInstalled", server: hostname };
|
||||
},
|
||||
isSatisfied(): boolean {
|
||||
const server = GetServer(hostname);
|
||||
if (!(server instanceof Server)) {
|
||||
@ -26,57 +55,69 @@ export const haveBackdooredServer = (hostname: string): JoinCondition => ({
|
||||
},
|
||||
});
|
||||
|
||||
export const employedBy = (
|
||||
companyName: CompanyName,
|
||||
{ withRep }: { withRep: number } = { withRep: 0 },
|
||||
): JoinCondition => ({
|
||||
export const employedBy = (companyName: CompanyName): PlayerCondition => ({
|
||||
toString(): string {
|
||||
if (withRep == 0) {
|
||||
return `Employed at ${companyName}`;
|
||||
} else {
|
||||
return `Employed at ${companyName} with ${formatReputation(withRep)} reputation`;
|
||||
}
|
||||
return `Employed at ${companyName}`;
|
||||
},
|
||||
toJSON(): EmployedByRequirement {
|
||||
return { type: "employedBy", company: companyName };
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
return Object.hasOwn(p.jobs, companyName);
|
||||
},
|
||||
});
|
||||
|
||||
export const haveCompanyRep = (companyName: CompanyName, rep: number): PlayerCondition => ({
|
||||
toString(): string {
|
||||
return `${formatReputation(rep)} reputation with ${companyName}`;
|
||||
},
|
||||
toJSON(): CompanyReputationRequirement {
|
||||
return { type: "companyReputation", company: companyName, reputation: rep };
|
||||
},
|
||||
isSatisfied(): boolean {
|
||||
const company = Companies[companyName];
|
||||
if (!company) return false;
|
||||
const serverMeta = serverMetadata.find((s) => s.specialName === companyName);
|
||||
const server = GetServer(serverMeta ? serverMeta.hostname : "");
|
||||
const bonus = (server as Server).backdoorInstalled ? -100e3 : 0;
|
||||
return Object.hasOwn(p.jobs, companyName) && company.playerReputation > withRep + bonus;
|
||||
const bonus = server?.backdoorInstalled ? 100e3 : 0;
|
||||
return company.playerReputation + bonus >= rep;
|
||||
},
|
||||
});
|
||||
|
||||
export const executiveEmployee = (): JoinCondition => ({
|
||||
export const haveJobTitle = (jobTitle: JobName): PlayerCondition => ({
|
||||
toString(): string {
|
||||
return `CTO, CFO, or CEO of a company`;
|
||||
return `Employed as a ${jobTitle}`;
|
||||
},
|
||||
toJSON(): JobTitleRequirement {
|
||||
return { type: "jobTitle", jobTitle: jobTitle };
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
const allPositions = Object.values(p.jobs);
|
||||
return (
|
||||
allPositions.includes(JobName.software7) || // CTO
|
||||
allPositions.includes(JobName.business4) || // CFO
|
||||
allPositions.includes(JobName.business5) // CEO
|
||||
);
|
||||
return allPositions.includes(jobTitle);
|
||||
},
|
||||
});
|
||||
|
||||
export const notEmployee = (...companyNames: CompanyName[]): JoinCondition => ({
|
||||
export const executiveEmployee = (): PlayerCondition => ({
|
||||
...someCondition([JobName.software7, JobName.business4, JobName.business5].map((jobTitle) => haveJobTitle(jobTitle))),
|
||||
toString(): string {
|
||||
return `Not working for the ${joinList(companyNames)}`;
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
for (const companyName of companyNames) {
|
||||
if (Object.hasOwn(p.jobs, companyName)) return false;
|
||||
}
|
||||
return true;
|
||||
return `CTO, CFO, or CEO of a company`;
|
||||
},
|
||||
});
|
||||
|
||||
export const haveAugmentations = (n: number): JoinCondition => ({
|
||||
export const notEmployedBy = (companyName: CompanyName): PlayerCondition => ({
|
||||
...notCondition(employedBy(companyName)),
|
||||
toString(): string {
|
||||
return `Not working for the ${companyName}`;
|
||||
},
|
||||
});
|
||||
|
||||
export const haveAugmentations = (n: number): PlayerCondition => ({
|
||||
toString(): string {
|
||||
return `${n || "No"} augmentations installed`;
|
||||
},
|
||||
toJSON(): NumAugmentationsRequirement {
|
||||
return { type: "numAugmentations", numAugmentations: n };
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
if (n == 0) {
|
||||
const augs = [...p.augmentations, ...p.queuedAugmentations].filter(
|
||||
@ -88,67 +129,94 @@ export const haveAugmentations = (n: number): JoinCondition => ({
|
||||
},
|
||||
});
|
||||
|
||||
export const haveMoney = (n: number): JoinCondition => ({
|
||||
export const haveMoney = (n: number): PlayerCondition => ({
|
||||
toString(): string {
|
||||
return `Have ${formatMoney(n)}`;
|
||||
},
|
||||
toJSON(): MoneyRequirement {
|
||||
return { type: "money", money: n };
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
return p.money >= n;
|
||||
},
|
||||
});
|
||||
|
||||
export const haveSkill = (skill: keyof Skills, n: number): JoinCondition => ({
|
||||
export const haveSkill = (skill: keyof Skills, n: number): PlayerCondition => ({
|
||||
toString(): string {
|
||||
return `${capitalize(skill)} level ${n}`;
|
||||
},
|
||||
toJSON(): SkillRequirement {
|
||||
return { type: "skills", skills: { [skill]: n } };
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
return p.skills[skill] >= n;
|
||||
},
|
||||
});
|
||||
|
||||
export const haveCombatSkills = (n: number): JoinCondition => ({
|
||||
export const haveCombatSkills = (n: number): CompoundPlayerCondition => ({
|
||||
...everyCondition(["strength", "defense", "dexterity", "agility"].map((s) => haveSkill(s as keyof Skills, n))),
|
||||
toString(): string {
|
||||
return `All combat skills level ${n}`;
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
return p.skills.strength >= n && p.skills.defense >= n && p.skills.dexterity >= n && p.skills.agility >= n;
|
||||
toJSON(): SkillRequirement {
|
||||
return { type: "skills", skills: { strength: n, defense: n, dexterity: n, agility: n } };
|
||||
},
|
||||
});
|
||||
|
||||
export const haveKarma = (n: number): JoinCondition => ({
|
||||
export const haveKarma = (n: number): PlayerCondition => ({
|
||||
toString(): string {
|
||||
return `${n} karma`;
|
||||
if (n < -1000) return "An extensive criminal record";
|
||||
else if (n < -40) return "A criminal reputation";
|
||||
else if (n < -20) return "A disregard for the law";
|
||||
else if (n < -10) return "A history of violence";
|
||||
else return "Street cred";
|
||||
},
|
||||
toJSON(): KarmaRequiremennt {
|
||||
return { type: "karma", karma: n };
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
return p.karma <= n;
|
||||
},
|
||||
});
|
||||
|
||||
export const haveKilledPeople = (n: number): JoinCondition => ({
|
||||
export const haveKilledPeople = (n: number): PlayerCondition => ({
|
||||
toString(): string {
|
||||
return `${n} people killed`;
|
||||
},
|
||||
toJSON(): PeopleKilledRequirement {
|
||||
return { type: "numPeopleKilled", numPeopleKilled: n };
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
return p.numPeopleKilled >= n;
|
||||
},
|
||||
});
|
||||
|
||||
export const locatedInCity = (...cities: CityName[]): JoinCondition => ({
|
||||
export const locatedInCity = (city: CityName): PlayerCondition => ({
|
||||
toString(): string {
|
||||
return `Located in ${joinList(cities)}`;
|
||||
return `Located in ${city}`;
|
||||
},
|
||||
toJSON(): CityRequirement {
|
||||
return { type: "city", city: city };
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
for (const city of cities) {
|
||||
if (p.city == city) return true;
|
||||
}
|
||||
return false;
|
||||
return p.city == city;
|
||||
},
|
||||
});
|
||||
|
||||
export const totalHacknetRam = (n: number): JoinCondition => ({
|
||||
export const locatedInSomeCity = (...cities: CityName[]): PlayerCondition => ({
|
||||
...someCondition(cities.map((city) => locatedInCity(city))),
|
||||
toString(): string {
|
||||
return `Located in ${joinList(cities)}`;
|
||||
},
|
||||
});
|
||||
|
||||
export const totalHacknetRam = (n: number): PlayerCondition => ({
|
||||
toString(): string {
|
||||
return `Total Hacknet RAM of ${formatRam(n)}`;
|
||||
},
|
||||
toJSON(): HacknetRAMRequirement {
|
||||
return { type: "hacknetRAM", hacknetRAM: n };
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
let total = 0;
|
||||
for (const node of iterateHacknet(p)) {
|
||||
@ -159,10 +227,13 @@ export const totalHacknetRam = (n: number): JoinCondition => ({
|
||||
},
|
||||
});
|
||||
|
||||
export const totalHacknetCores = (n: number): JoinCondition => ({
|
||||
export const totalHacknetCores = (n: number): PlayerCondition => ({
|
||||
toString(): string {
|
||||
return `Total Hacknet cores of ${n}`;
|
||||
},
|
||||
toJSON(): HacknetCoresRequirement {
|
||||
return { type: "hacknetCores", hacknetCores: n };
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
let total = 0;
|
||||
for (const node of iterateHacknet(p)) {
|
||||
@ -173,10 +244,13 @@ export const totalHacknetCores = (n: number): JoinCondition => ({
|
||||
},
|
||||
});
|
||||
|
||||
export const totalHacknetLevels = (n: number): JoinCondition => ({
|
||||
export const totalHacknetLevels = (n: number): PlayerCondition => ({
|
||||
toString(): string {
|
||||
return `Total Hacknet levels of ${n}`;
|
||||
},
|
||||
toJSON(): HacknetLevelsRequirement {
|
||||
return { type: "hacknetLevels", hacknetLevels: n };
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
let total = 0;
|
||||
for (const node of iterateHacknet(p)) {
|
||||
@ -187,48 +261,141 @@ export const totalHacknetLevels = (n: number): JoinCondition => ({
|
||||
},
|
||||
});
|
||||
|
||||
export const haveBladeburnerRank = (n: number): JoinCondition => ({
|
||||
export const haveBladeburnerRank = (n: number): PlayerCondition => ({
|
||||
toString(): string {
|
||||
return `Rank ${n} in the Bladeburner Division`;
|
||||
},
|
||||
toJSON(): BladeburnerRankRequirement {
|
||||
return { type: "bladeburnerRank", bladeburnerRank: n };
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
const rank = p.bladeburner?.rank || 0;
|
||||
return rank >= n;
|
||||
},
|
||||
});
|
||||
|
||||
export const haveSourceFile = (...nodeNums: number[]): JoinCondition => ({
|
||||
export const haveSourceFile = (n: number): PlayerCondition => ({
|
||||
toString(): string {
|
||||
return `In BitNode ${joinList(nodeNums)} or have SourceFile ${joinList(nodeNums)}`;
|
||||
return `In BitNode ${n} or have SourceFile ${n}`;
|
||||
},
|
||||
toJSON(): SomeRequirement {
|
||||
return {
|
||||
type: "someCondition",
|
||||
conditions: [
|
||||
{ type: "bitNodeN", bitNodeN: n },
|
||||
{ type: "sourceFile", sourceFile: n },
|
||||
],
|
||||
};
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
for (const n of nodeNums) {
|
||||
if (p.bitNodeN === n || p.sourceFileLvl(n) > 0) return true;
|
||||
}
|
||||
return false;
|
||||
return p.bitNodeN == n || p.sourceFileLvl(n) > 0;
|
||||
},
|
||||
});
|
||||
|
||||
export const haveFile = (fileName: LiteratureName | MessageFilename): JoinCondition => ({
|
||||
export const haveSomeSourceFile = (...nodeNums: number[]): PlayerCondition => ({
|
||||
...someCondition(nodeNums.map((n) => haveSourceFile(n))),
|
||||
toString(): string {
|
||||
return `In BitNode ${joinList(nodeNums)} or have SourceFile ${joinList(nodeNums)}`;
|
||||
},
|
||||
});
|
||||
|
||||
export const haveFile = (fileName: LiteratureName | MessageFilename): PlayerCondition => ({
|
||||
toString(): string {
|
||||
return `Have the file '${fileName}'`;
|
||||
},
|
||||
toJSON(): FileRequirement {
|
||||
return { type: "file", file: fileName };
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
const homeComputer = p.getHomeComputer();
|
||||
return homeComputer.messages.includes(fileName);
|
||||
},
|
||||
});
|
||||
|
||||
export const someCondition = (...conditions: JoinCondition[]): JoinCondition => ({
|
||||
/* higher-order conditions */
|
||||
|
||||
export interface CompoundPlayerCondition extends PlayerCondition, Iterable<PlayerCondition> {
|
||||
type: "someCondition" | "everyCondition";
|
||||
[Symbol.iterator]: () => IterableIterator<PlayerCondition>;
|
||||
}
|
||||
|
||||
export const unsatisfiable: PlayerCondition = {
|
||||
toString(): string {
|
||||
return "(unsatisfiable)";
|
||||
},
|
||||
toJSON(): SomeRequirement {
|
||||
return { type: "someCondition", conditions: [] };
|
||||
},
|
||||
isSatisfied(): boolean {
|
||||
return false;
|
||||
},
|
||||
};
|
||||
|
||||
export const notCondition = (condition: PlayerCondition): PlayerCondition => ({
|
||||
toString(): string {
|
||||
return `Not ${condition.toString()}`;
|
||||
},
|
||||
toJSON(): NotRequirement {
|
||||
return { type: "not", condition: condition.toJSON() };
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
return !condition.isSatisfied(p);
|
||||
},
|
||||
});
|
||||
|
||||
export const someCondition = (conditions: PlayerCondition[]): CompoundPlayerCondition => ({
|
||||
type: "someCondition",
|
||||
toString(): string {
|
||||
return joinList(conditions.map((c) => c.toString()));
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
for (const condition of conditions) {
|
||||
if (condition.isSatisfied(p)) return true;
|
||||
}
|
||||
return false;
|
||||
toJSON(): SomeRequirement {
|
||||
return { type: "someCondition", conditions: conditions.map((c) => c.toJSON()) };
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
return conditions.some((c) => c.isSatisfied(p));
|
||||
},
|
||||
*[Symbol.iterator](): IterableIterator<PlayerCondition> {
|
||||
for (const cond of conditions) {
|
||||
if ("type" in cond && cond.type == "someCondition") {
|
||||
// automatically flatten nested OR lists
|
||||
yield* cond as CompoundPlayerCondition;
|
||||
} else {
|
||||
yield cond;
|
||||
}
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
export const everyCondition = (conditions: PlayerCondition[]): CompoundPlayerCondition => ({
|
||||
type: "everyCondition",
|
||||
toString(): string {
|
||||
return joinList(
|
||||
conditions.map((c) => c.toString()),
|
||||
"and",
|
||||
);
|
||||
},
|
||||
toJSON(): EveryRequirement {
|
||||
return { type: "everyCondition", conditions: conditions.map((c) => c.toJSON()) };
|
||||
},
|
||||
isSatisfied(p: PlayerObject): boolean {
|
||||
return conditions.every((c) => c.isSatisfied(p));
|
||||
},
|
||||
*[Symbol.iterator](): IterableIterator<PlayerCondition> {
|
||||
for (const cond of conditions) {
|
||||
if ("type" in cond && cond.type == "everyCondition") {
|
||||
// automatically flatten nested AND lists
|
||||
yield* cond as CompoundPlayerCondition;
|
||||
} else {
|
||||
yield cond;
|
||||
}
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
export const delayedCondition = (arg: () => PlayerCondition): PlayerCondition => ({
|
||||
toString: () => arg().toString(),
|
||||
toJSON: () => arg().toJSON(),
|
||||
isSatisfied: (p: PlayerObject) => arg().isSatisfied(p),
|
||||
});
|
||||
|
||||
/* helpers */
|
||||
|
@ -50,7 +50,7 @@ const JoinChecklist = (props: { faction: Faction }): React.ReactElement => {
|
||||
const info = props.faction.getInfo();
|
||||
return (
|
||||
<>
|
||||
{info.inviteReqs.map((condition, i) => (
|
||||
{[...info.inviteReqs].map((condition, i) => (
|
||||
<Requirement key={i} fulfilled={condition.isSatisfied(Player)} value={condition.toString()} />
|
||||
))}
|
||||
</>
|
||||
|
@ -181,7 +181,7 @@ const singularity = {
|
||||
getCompanyRep: SF4Cost(RamCostConstants.SingularityFn2 / 3),
|
||||
getCompanyFavor: SF4Cost(RamCostConstants.SingularityFn2 / 3),
|
||||
getCompanyFavorGain: SF4Cost(RamCostConstants.SingularityFn2 / 4),
|
||||
// Temporarily removed for API improvements getFactionInviteRequirements: SF4Cost(RamCostConstants.SingularityFn2),
|
||||
getFactionInviteRequirements: SF4Cost(RamCostConstants.SingularityFn2),
|
||||
checkFactionInvitations: SF4Cost(RamCostConstants.SingularityFn2),
|
||||
joinFaction: SF4Cost(RamCostConstants.SingularityFn2),
|
||||
workForFaction: SF4Cost(RamCostConstants.SingularityFn2),
|
||||
|
@ -816,14 +816,12 @@ export function NetscriptSingularity(): InternalAPI<ISingularity> {
|
||||
const companyName = getEnumHelper("CompanyName").nsGetMember(ctx, _companyName);
|
||||
return Companies[companyName].getFavorGain();
|
||||
},
|
||||
/* Function temporarily removed, likely to change in next version to be more programming-friendly instead of providing human-readable string outputs for each requirement
|
||||
getFactionInviteRequirements: (ctx) => (_facName) => {
|
||||
helpers.checkSingularityAccess(ctx);
|
||||
const facName = getEnumHelper("FactionName").nsGetMember(ctx, _facName);
|
||||
const fac = Factions[facName];
|
||||
return fac.getInfo().inviteReqs.map((condition) => condition.toString());
|
||||
return [...fac.getInfo().inviteReqs].map((condition) => condition.toJSON());
|
||||
},
|
||||
*/
|
||||
checkFactionInvitations: (ctx) => () => {
|
||||
helpers.checkSingularityAccess(ctx);
|
||||
// Manually trigger a check for faction invites
|
||||
|
@ -108,19 +108,13 @@ export function NetscriptStanek(): InternalAPI<IStanek> {
|
||||
return staneksGift.delete(rootX, rootY);
|
||||
},
|
||||
acceptGift: (ctx) => () => {
|
||||
//Check if the player is eligible to join the church
|
||||
if (
|
||||
Player.canAccessCotMG() &&
|
||||
Player.augmentations.filter((a) => a.name !== AugmentationName.NeuroFluxGovernor).length == 0 &&
|
||||
Player.queuedAugmentations.filter((a) => a.name !== AugmentationName.NeuroFluxGovernor).length == 0
|
||||
) {
|
||||
//Attempt to join CotMG
|
||||
joinFaction(Factions[FactionName.ChurchOfTheMachineGod]);
|
||||
//Attempt to install the first Stanek aug
|
||||
if (
|
||||
!Player.hasAugmentation(AugmentationName.StaneksGift1) &&
|
||||
!Player.queuedAugmentations.some((a) => a.name === AugmentationName.StaneksGift1)
|
||||
) {
|
||||
const cotmgFaction = Factions[FactionName.ChurchOfTheMachineGod];
|
||||
// Check if the player is eligible to join the church
|
||||
if (cotmgFaction.getInfo().inviteReqs.isSatisfied(Player)) {
|
||||
// Attempt to join CotMG
|
||||
joinFaction(cotmgFaction);
|
||||
// Attempt to install the first Stanek aug (unless it is already queued)
|
||||
if (!Player.hasAugmentation(AugmentationName.StaneksGift1, false)) {
|
||||
applyAugmentation({ name: AugmentationName.StaneksGift1, level: 1 });
|
||||
helpers.log(
|
||||
ctx,
|
||||
@ -128,11 +122,8 @@ export function NetscriptStanek(): InternalAPI<IStanek> {
|
||||
);
|
||||
}
|
||||
}
|
||||
//Return true iff the player is in CotMG and has the first Stanek aug installed
|
||||
return (
|
||||
Factions[FactionName.ChurchOfTheMachineGod].isMember &&
|
||||
Player.hasAugmentation(AugmentationName.StaneksGift1, true)
|
||||
);
|
||||
// Return true iff the player is in CotMG and has the first Stanek aug installed
|
||||
return cotmgFaction.isMember && Player.hasAugmentation(AugmentationName.StaneksGift1, true);
|
||||
},
|
||||
};
|
||||
}
|
||||
|
@ -620,10 +620,10 @@ export function checkForFactionInvitations(this: PlayerObject): Faction[] {
|
||||
if (faction.alreadyInvited) continue;
|
||||
// Handle invites
|
||||
const { inviteReqs, rumorReqs } = faction.getInfo();
|
||||
if (inviteReqs.every((req) => req.isSatisfied(this))) invitedFactions.push(faction);
|
||||
if (inviteReqs.isSatisfied(this)) invitedFactions.push(faction);
|
||||
// Handle rumors
|
||||
if (this.factionRumors.has(faction.name)) continue;
|
||||
if (rumorReqs.every((req) => req.isSatisfied(this))) this.receiveRumor(faction.name);
|
||||
if (rumorReqs.isSatisfied(this)) this.receiveRumor(faction.name);
|
||||
}
|
||||
return invitedFactions;
|
||||
}
|
||||
|
246
src/ScriptEditor/NetscriptDefinitions.d.ts
vendored
246
src/ScriptEditor/NetscriptDefinitions.d.ts
vendored
@ -1937,29 +1937,39 @@ export interface Singularity {
|
||||
*/
|
||||
getCompanyFavorGain(companyName: CompanyName | `${CompanyName}`): number;
|
||||
|
||||
/* Experimental function temporarily removed, likely to undergo changes in next patch to make return value more programming-friendly
|
||||
/**
|
||||
* List conditions for being invited to a faction.
|
||||
* @remarks
|
||||
* RAM cost: 3 GB * 16/4/1
|
||||
*
|
||||
* @param faction - Name of the faction.
|
||||
* @returns Array of strings describing conditions for receiving an invitation to the faction.
|
||||
* @param faction - Name of the faction
|
||||
* @returns Array of PlayerRequirement objects which must all be fulfilled to receive an invitation.
|
||||
*
|
||||
* @example
|
||||
* ```js
|
||||
* ns.singularity.getFactionInviteRequirements("The Syndicate")
|
||||
* [
|
||||
* "Located in Aevum or Sector-12",
|
||||
* "Not working for the Central Intelligence Agency",
|
||||
* "Not working for the National Security Agency",
|
||||
* "-90 karma",
|
||||
* "Have $10.000m",
|
||||
* "Hacking level 200",
|
||||
* "All combat skills level 200"
|
||||
* { "type": "someCondition", "conditions": [
|
||||
* { "type": "city", "city": "Aevum" },
|
||||
* { "type": "city", "city": "Sector-12" }
|
||||
* ]
|
||||
* },
|
||||
* { "type": "not", "condition": {
|
||||
* "type": "employedBy", "company": "Central Intelligence Agency"
|
||||
* }
|
||||
* },
|
||||
* { "type": "not", "condition": {
|
||||
* "type": "employedBy", "company": "National Security Agency"
|
||||
* }
|
||||
* },
|
||||
* { "type": "money", "money": 10000000 },
|
||||
* { "type": "skills", "skills": { "hacking": 200 } },
|
||||
* { "type": "skills", "skills": { "strength": 200, "defense": 200, "dexterity": 200, "agility": 200 } },
|
||||
* { "type": "karma", "karma": -90 }
|
||||
* ]
|
||||
* ```
|
||||
getFactionInviteRequirements(faction: string): string[];
|
||||
*/
|
||||
*/
|
||||
getFactionInviteRequirements(faction: string): PlayerRequirement[];
|
||||
|
||||
/**
|
||||
* List all current faction invitations.
|
||||
@ -8145,3 +8155,215 @@ interface AutocompleteData {
|
||||
txts: string[];
|
||||
flags(schema: [string, string | number | boolean | string[]][]): { [key: string]: ScriptArg | string[] };
|
||||
}
|
||||
|
||||
/**
|
||||
* Player must have at least this much money.
|
||||
* @public
|
||||
*/
|
||||
interface MoneyRequirement {
|
||||
type: "money";
|
||||
money: number;
|
||||
}
|
||||
/**
|
||||
* Player must have each listed skill at least this level.
|
||||
* @public
|
||||
*/
|
||||
interface SkillRequirement {
|
||||
type: "skills";
|
||||
skills: Partial<Skills>;
|
||||
}
|
||||
/**
|
||||
* Player must have less than this much karma.
|
||||
* @public
|
||||
*/
|
||||
interface KarmaRequiremennt {
|
||||
type: "karma";
|
||||
karma: number;
|
||||
}
|
||||
/**
|
||||
* Player must have killed at least this many people.
|
||||
* @public
|
||||
*/
|
||||
interface PeopleKilledRequirement {
|
||||
type: "numPeopleKilled";
|
||||
numPeopleKilled: number;
|
||||
}
|
||||
/**
|
||||
* Player must have a specific Literature or Message file on their home computer.
|
||||
* @public
|
||||
*/
|
||||
interface FileRequirement {
|
||||
type: "file";
|
||||
file: string;
|
||||
}
|
||||
/**
|
||||
* Player must have at least this many augmentations installed (if positive).
|
||||
* Player must have no augmentations installed (if zero).
|
||||
* @public
|
||||
*/
|
||||
interface NumAugmentationsRequirement {
|
||||
type: "numAugmentations";
|
||||
numAugmentations: number;
|
||||
}
|
||||
/**
|
||||
* Player must be working for this company.
|
||||
* @public
|
||||
*/
|
||||
interface EmployedByRequirement {
|
||||
type: "employedBy";
|
||||
company: CompanyName;
|
||||
}
|
||||
/**
|
||||
* Player must have at least this much reputation with this company.
|
||||
* @public
|
||||
*/
|
||||
interface CompanyReputationRequirement {
|
||||
type: "companyReputation";
|
||||
company: CompanyName;
|
||||
reputation: number;
|
||||
}
|
||||
/**
|
||||
* Player must have this job title at some company.
|
||||
* @public
|
||||
*/
|
||||
interface JobTitleRequirement {
|
||||
type: "jobTitle";
|
||||
jobTitle: JobName;
|
||||
}
|
||||
/**
|
||||
* Player must be located in this city.
|
||||
* @public
|
||||
*/
|
||||
interface CityRequirement {
|
||||
type: "city";
|
||||
city: CityName;
|
||||
}
|
||||
/**
|
||||
* Player must be at this location within a city.
|
||||
* @public
|
||||
*/
|
||||
interface LocationRequirement {
|
||||
type: "location";
|
||||
location: LocationName;
|
||||
}
|
||||
/**
|
||||
* Player must have installed a backdoor on this server.
|
||||
* @public
|
||||
*/
|
||||
interface BackdoorRequirement {
|
||||
type: "backdoorInstalled";
|
||||
server: string;
|
||||
}
|
||||
/**
|
||||
* Player's Hacknet devices must have at least this much total RAM.
|
||||
* @public
|
||||
*/
|
||||
interface HacknetRAMRequirement {
|
||||
type: "hacknetRAM";
|
||||
hacknetRAM: number;
|
||||
}
|
||||
/**
|
||||
* Player's Hacknet devices must have at least this many total cores.
|
||||
* @public
|
||||
*/
|
||||
interface HacknetCoresRequirement {
|
||||
type: "hacknetCores";
|
||||
hacknetCores: number;
|
||||
}
|
||||
/**
|
||||
* Player's Hacknet devices must have at least this many total levels.
|
||||
* @public
|
||||
*/
|
||||
interface HacknetLevelsRequirement {
|
||||
type: "hacknetLevels";
|
||||
hacknetLevels: number;
|
||||
}
|
||||
/**
|
||||
* Player must be located in this BitNode.
|
||||
* @public
|
||||
*/
|
||||
interface BitNodeRequirement {
|
||||
type: "bitNodeN";
|
||||
bitNodeN: number;
|
||||
}
|
||||
/**
|
||||
* Player must have this Source File.
|
||||
* @public
|
||||
*/
|
||||
interface SourceFileRequirement {
|
||||
type: "sourceFile";
|
||||
sourceFile: number;
|
||||
}
|
||||
/**
|
||||
* Player must have at least this rank in the Bladeburner Division.
|
||||
* @public
|
||||
*/
|
||||
interface BladeburnerRankRequirement {
|
||||
type: "bladeburnerRank";
|
||||
bladeburnerRank: number;
|
||||
}
|
||||
/**
|
||||
* Player must have completed this many infiltrations.
|
||||
* @public
|
||||
*/
|
||||
interface NumInfiltrationsRequirement {
|
||||
type: "numInfiltrations";
|
||||
numInfiltrations: number;
|
||||
}
|
||||
/**
|
||||
* The sub-condition must not be satisfied.
|
||||
* @public
|
||||
*/
|
||||
interface NotRequirement {
|
||||
type: "not";
|
||||
condition: PlayerRequirement;
|
||||
}
|
||||
/**
|
||||
* At least one sub-condition must be satisfied.
|
||||
* @public
|
||||
*/
|
||||
interface SomeRequirement {
|
||||
type: "someCondition";
|
||||
conditions: PlayerRequirement[];
|
||||
}
|
||||
/**
|
||||
* All sub-conditions must be satisfied.
|
||||
* @public
|
||||
*/
|
||||
interface EveryRequirement {
|
||||
type: "everyCondition";
|
||||
conditions: PlayerRequirement[];
|
||||
}
|
||||
|
||||
/**
|
||||
* Structured interface to requirements for joining a faction or company.
|
||||
* For fields with numerical value \> 0, the player must have at least this value.
|
||||
* For fields with numerical value \<= 0, the player must have at most this value.
|
||||
* For "not", the sub-condition must be failed instead of passed.
|
||||
* For "someCondition", at least one sub-condition must be passed.
|
||||
* @public
|
||||
* @returns - An object representing one requirement.
|
||||
*/
|
||||
export type PlayerRequirement =
|
||||
| MoneyRequirement
|
||||
| SkillRequirement
|
||||
| KarmaRequiremennt
|
||||
| PeopleKilledRequirement
|
||||
| FileRequirement
|
||||
| NumAugmentationsRequirement
|
||||
| EmployedByRequirement
|
||||
| CompanyReputationRequirement
|
||||
| JobTitleRequirement
|
||||
| CityRequirement
|
||||
| LocationRequirement
|
||||
| BackdoorRequirement
|
||||
| HacknetRAMRequirement
|
||||
| HacknetCoresRequirement
|
||||
| HacknetLevelsRequirement
|
||||
| BitNodeRequirement
|
||||
| SourceFileRequirement
|
||||
| BladeburnerRankRequirement
|
||||
| NumInfiltrationsRequirement
|
||||
| NotRequirement
|
||||
| SomeRequirement
|
||||
| EveryRequirement;
|
||||
|
Loading…
Reference in New Issue
Block a user