_internal.classes.store._base.Store - vladzaharia/bitburner GitHub Wiki

Class: Store<P, S>

_internal/classes/store/_base.Store

Abstract class representing an entity capable of purchasing and selling.

abstract

Type parameters

Name Description
P The purchase parameters for implementing classes.
S The sell parameters for implementing classes.

Hierarchy

Implements

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new Store<P, S>(ns, budget)

Type parameters

Name
P
S

Parameters

Name Type Description
ns NS The Netscript object.
budget number Budget, as whole number or percentage of max money.

Defined in

_internal/classes/store/_base.ts:31

Properties

_budget

Private Readonly _budget: number

Budget available to this purchaser.

  • If > 1, interpreted as exact budget.
  • If < 1, interpreted as percentage of available money.
  • Use 0 to disable purchasing.

Defined in

_internal/classes/store/_base.ts:24


_ns

Protected _ns: NS

The Netscript object.

Defined in

_internal/classes/store/_base.ts:15

Methods

_checkParams

Protected _checkParams(params): boolean

Verify the purchase parameters, must be overridden by implementing classes.

virtual Must be overridden by implementing classes.

Parameters

Name Type Description
params P | S Parameters for this transaction.

Returns

boolean

Whether the parameters are valid.

Defined in

_internal/classes/store/_base.ts:163


_checkParamsInternal

Private _checkParamsInternal(params): true

Verify the purchase parameters, executed before canPurchase, purchase, and sell.

Parameters

Name Type Description
params P | S Parameters for this transaction.

Returns

true

Whether the parameters are valid.

Defined in

_internal/classes/store/_base.ts:147


_purchase

Protected _purchase(params): Promise<boolean>

Purchase an item, must be overridden by implementing classes.

virtual Must be overridden by implementing classes.

async

Parameters

Name Type Description
params P Parameters for this transaction.

Returns

Promise<boolean>

Whether the transaction was successful.

Defined in

_internal/classes/store/_base.ts:110


_sell

Protected _sell(params): Promise<boolean>

Sell an item with params params, must be overridden by implementing classes if supported.

virtual Must be overridden by implementing classes.

async

Parameters

Name Type Description
params S Parameters for this sale.

Returns

Promise<boolean>

Whether the transaction was successful.

Defined in

_internal/classes/store/_base.ts:137


canPurchase

canPurchase(params): boolean

Checks whether the user can purchase based on parameters params.

Parameters

Name Type Description
params P Parameters for this transaction.

Returns

boolean

Whether this transaction is possible.

Implementation of

IPurchaseable.canPurchase

Defined in

_internal/classes/store/_base.ts:59


getAvailableMoney

getAvailableMoney(): number

Gets the amount of money available to this store.

Returns

number

Available money according to this._budget.

Implementation of

IPurchaseable.getAvailableMoney

Defined in

_internal/classes/store/_base.ts:41


getPurchaseCost

getPurchaseCost(params): number

Get cost of purchase with parameters params.

virtual Must be overridden by implementing classes.

Parameters

Name Type Description
params P Parameters for this transaction.

Returns

number

Cost of the transaction.

Implementation of

IPurchaseable.getPurchaseCost

Defined in

_internal/classes/store/_base.ts:73


purchase

purchase(params): Promise<boolean>

Purchase an item with parameters params if there is money available.

virtual Must be overridden by implementing classes.

async

Parameters

Name Type Description
params P Parameters for this transaction.

Returns

Promise<boolean>

Whether the transaction was successful.

Implementation of

IPurchaseable.purchase

Defined in

_internal/classes/store/_base.ts:85


sell

sell(params): Promise<boolean>

Sell an item with params params, if possible.

async

Parameters

Name Type Description
params S Parameters for this sale.

Returns

Promise<boolean>

Whether the transaction was successful.

Implementation of

ISellable.sell

Defined in

_internal/classes/store/_base.ts:122

⚠️ **GitHub.com Fallback** ⚠️