@shipload/sdk 2.0.0-rc1 → 2.0.0-rc11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/shipload.d.ts +1701 -1183
- package/lib/shipload.js +6746 -3447
- package/lib/shipload.js.map +1 -1
- package/lib/shipload.m.js +6429 -3229
- package/lib/shipload.m.js.map +1 -1
- package/package.json +6 -6
- package/src/capabilities/crafting.ts +26 -0
- package/src/capabilities/gathering.ts +36 -0
- package/src/capabilities/guards.ts +38 -0
- package/src/capabilities/hauling.ts +22 -0
- package/src/capabilities/index.ts +8 -0
- package/src/capabilities/loading.ts +8 -0
- package/src/capabilities/modules.ts +57 -0
- package/src/capabilities/movement.ts +29 -0
- package/src/capabilities/storage.ts +72 -0
- package/src/contracts/server.ts +932 -314
- package/src/data/capabilities.ts +408 -0
- package/src/data/categories.ts +58 -0
- package/src/data/colors.ts +53 -0
- package/src/data/items.json +17 -0
- package/src/data/locations.ts +53 -0
- package/src/data/nebula-adjectives.json +211 -0
- package/src/data/nebula-nouns.json +151 -0
- package/src/data/recipes.ts +571 -0
- package/src/data/syllables.json +1386 -780
- package/src/data/tiers.ts +45 -0
- package/src/derivation/crafting.ts +197 -0
- package/src/derivation/index.ts +28 -0
- package/src/derivation/location-size.ts +15 -0
- package/src/derivation/resources.ts +142 -0
- package/src/derivation/stats.ts +146 -0
- package/src/derivation/stratum.ts +124 -0
- package/src/entities/cargo-utils.ts +46 -9
- package/src/entities/container.ts +106 -0
- package/src/entities/entity-inventory.ts +13 -13
- package/src/entities/inventory-accessor.ts +42 -0
- package/src/entities/location.ts +7 -188
- package/src/entities/makers.ts +72 -0
- package/src/entities/player.ts +1 -273
- package/src/entities/ship-deploy.ts +263 -0
- package/src/entities/ship.ts +93 -453
- package/src/entities/warehouse.ts +34 -148
- package/src/errors.ts +4 -4
- package/src/index-module.ts +226 -42
- package/src/managers/actions.ts +111 -79
- package/src/managers/context.ts +0 -9
- package/src/managers/entities.ts +22 -5
- package/src/managers/index.ts +0 -1
- package/src/managers/locations.ts +15 -79
- package/src/market/items.ts +30 -0
- package/src/nft/description.ts +175 -0
- package/src/nft/deserializers.ts +81 -0
- package/src/nft/index.ts +2 -0
- package/src/resolution/resolve-item.ts +313 -0
- package/src/scheduling/accessor.ts +82 -0
- package/src/scheduling/projection.ts +158 -54
- package/src/scheduling/schedule.ts +24 -0
- package/src/shipload.ts +0 -5
- package/src/travel/travel.ts +93 -19
- package/src/types/capabilities.ts +71 -0
- package/src/types/entity-traits.ts +69 -0
- package/src/types/entity.ts +39 -0
- package/src/types/index.ts +3 -0
- package/src/types.ts +76 -33
- package/src/utils/hash.ts +1 -1
- package/src/utils/system.ts +148 -11
- package/src/data/goods.json +0 -23
- package/src/managers/trades.ts +0 -119
- package/src/market/goods.ts +0 -31
- package/src/market/market.ts +0 -209
- package/src/market/rolls.ts +0 -8
- package/src/trading/collect.ts +0 -939
- package/src/trading/deal.ts +0 -208
- package/src/trading/trade.ts +0 -203
|
@@ -1,166 +1,62 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {UInt64, UInt64Type} from '@wharfkit/antelope'
|
|
2
2
|
import {ServerContract} from '../contracts'
|
|
3
|
-
import {
|
|
3
|
+
import {CoordinatesType} from '../types'
|
|
4
4
|
import {Location} from './location'
|
|
5
|
-
import {
|
|
6
|
-
import
|
|
7
|
-
import {Scheduleable} from '../scheduling/schedule'
|
|
5
|
+
import {ScheduleAccessor} from '../scheduling/accessor'
|
|
6
|
+
import {InventoryAccessor} from './inventory-accessor'
|
|
8
7
|
import {EntityInventory} from './entity-inventory'
|
|
8
|
+
import * as schedule from '../scheduling/schedule'
|
|
9
9
|
|
|
10
10
|
export interface WarehouseStateInput {
|
|
11
11
|
id: UInt64Type
|
|
12
|
-
owner:
|
|
12
|
+
owner: string
|
|
13
13
|
name: string
|
|
14
|
-
|
|
14
|
+
coordinates: CoordinatesType | {x: number; y: number; z?: number}
|
|
15
|
+
hullmass?: number
|
|
15
16
|
capacity: number
|
|
16
|
-
loaders
|
|
17
|
+
loaders?: ServerContract.Types.loader_stats
|
|
17
18
|
schedule?: ServerContract.Types.schedule
|
|
18
19
|
cargo?: ServerContract.Types.cargo_item[]
|
|
19
20
|
}
|
|
20
21
|
|
|
21
|
-
export class Warehouse extends ServerContract.Types.entity_info
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
type: Name.from('warehouse'),
|
|
25
|
-
id: UInt64.from(state.id),
|
|
26
|
-
owner: Name.from(state.owner),
|
|
27
|
-
entity_name: state.name,
|
|
28
|
-
location: ServerContract.Types.coordinates.from(state.location),
|
|
29
|
-
capacity: UInt32.from(state.capacity),
|
|
30
|
-
cargomass: UInt32.from(0),
|
|
31
|
-
cargo: state.cargo || [],
|
|
32
|
-
loaders: state.loaders,
|
|
33
|
-
is_idle: !state.schedule,
|
|
34
|
-
current_task_elapsed: UInt32.from(0),
|
|
35
|
-
current_task_remaining: UInt32.from(0),
|
|
36
|
-
pending_tasks: [],
|
|
37
|
-
schedule: state.schedule,
|
|
38
|
-
mass: UInt32.from(0),
|
|
39
|
-
energy: 0,
|
|
40
|
-
engines: ServerContract.Types.movement_stats.from({
|
|
41
|
-
thrust: 0,
|
|
42
|
-
drain: 0,
|
|
43
|
-
maxmass: 0,
|
|
44
|
-
}),
|
|
45
|
-
generator: ServerContract.Types.energy_stats.from({
|
|
46
|
-
capacity: 0,
|
|
47
|
-
recharge: 0,
|
|
48
|
-
}),
|
|
49
|
-
})
|
|
50
|
-
return new Warehouse(entityInfo)
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
private _location?: Location
|
|
54
|
-
private _inventory?: EntityInventory[]
|
|
22
|
+
export class Warehouse extends ServerContract.Types.entity_info {
|
|
23
|
+
private _sched?: ScheduleAccessor
|
|
24
|
+
private _inv?: InventoryAccessor
|
|
55
25
|
|
|
56
26
|
get name(): string {
|
|
57
27
|
return this.entity_name
|
|
58
28
|
}
|
|
59
29
|
|
|
30
|
+
get inv(): InventoryAccessor {
|
|
31
|
+
return (this._inv ??= new InventoryAccessor(this))
|
|
32
|
+
}
|
|
33
|
+
|
|
60
34
|
get inventory(): EntityInventory[] {
|
|
61
|
-
|
|
62
|
-
this._inventory = this.cargo.map((item) => new EntityInventory(item))
|
|
63
|
-
}
|
|
64
|
-
return this._inventory
|
|
35
|
+
return this.inv.items
|
|
65
36
|
}
|
|
66
37
|
|
|
67
|
-
get
|
|
68
|
-
return
|
|
38
|
+
get sched(): ScheduleAccessor {
|
|
39
|
+
return (this._sched ??= new ScheduleAccessor(this))
|
|
69
40
|
}
|
|
70
41
|
|
|
71
42
|
get isIdle(): boolean {
|
|
72
43
|
return this.is_idle
|
|
73
44
|
}
|
|
74
45
|
|
|
75
|
-
get tasks(): ServerContract.Types.task[] {
|
|
76
|
-
return schedule.getTasks(this)
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
scheduleDuration(): number {
|
|
80
|
-
return schedule.scheduleDuration(this)
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
scheduleElapsed(now: Date): number {
|
|
84
|
-
return schedule.scheduleElapsed(this, now)
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
scheduleRemaining(now: Date): number {
|
|
88
|
-
return schedule.scheduleRemaining(this, now)
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
scheduleComplete(now: Date): boolean {
|
|
92
|
-
return schedule.scheduleComplete(this, now)
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
currentTaskIndex(now: Date): number {
|
|
96
|
-
return schedule.currentTaskIndex(this, now)
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
currentTask(now: Date): ServerContract.Types.task | undefined {
|
|
100
|
-
return schedule.currentTask(this, now)
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
currentTaskType(now: Date): TaskType | undefined {
|
|
104
|
-
return schedule.currentTaskType(this, now)
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
getTaskStartTime(index: number): number {
|
|
108
|
-
return schedule.getTaskStartTime(this, index)
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
getTaskElapsed(index: number, now: Date): number {
|
|
112
|
-
return schedule.getTaskElapsed(this, index, now)
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
getTaskRemaining(index: number, now: Date): number {
|
|
116
|
-
return schedule.getTaskRemaining(this, index, now)
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
isTaskComplete(index: number, now: Date): boolean {
|
|
120
|
-
return schedule.isTaskComplete(this, index, now)
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
isTaskInProgress(index: number, now: Date): boolean {
|
|
124
|
-
return schedule.isTaskInProgress(this, index, now)
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
currentTaskProgress(now: Date): number {
|
|
128
|
-
return schedule.currentTaskProgress(this, now)
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
scheduleProgress(now: Date): number {
|
|
132
|
-
return schedule.scheduleProgress(this, now)
|
|
133
|
-
}
|
|
134
|
-
|
|
135
46
|
isLoading(now: Date): boolean {
|
|
136
|
-
|
|
137
|
-
return taskType === TaskType.LOAD
|
|
47
|
+
return schedule.isLoading(this, now)
|
|
138
48
|
}
|
|
139
49
|
|
|
140
50
|
isUnloading(now: Date): boolean {
|
|
141
|
-
|
|
142
|
-
return taskType === TaskType.UNLOAD
|
|
51
|
+
return schedule.isUnloading(this, now)
|
|
143
52
|
}
|
|
144
53
|
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
for (const item of this.cargo) {
|
|
148
|
-
const good = getGood(item.good_id)
|
|
149
|
-
mass = mass.adding(good.mass.multiplying(item.quantity))
|
|
150
|
-
}
|
|
151
|
-
return mass
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
get currentLocation(): Coordinates {
|
|
155
|
-
return this.location
|
|
54
|
+
get location(): Location {
|
|
55
|
+
return Location.from(this.coordinates)
|
|
156
56
|
}
|
|
157
57
|
|
|
158
58
|
get totalCargoMass(): UInt64 {
|
|
159
|
-
return this.
|
|
160
|
-
}
|
|
161
|
-
|
|
162
|
-
get cargoValue(): UInt64 {
|
|
163
|
-
return this.inventory.reduce((sum, c) => sum.adding(c.totalCost), UInt64.from(0))
|
|
59
|
+
return this.inv.totalMass
|
|
164
60
|
}
|
|
165
61
|
|
|
166
62
|
get maxCapacity(): UInt64 {
|
|
@@ -168,38 +64,28 @@ export class Warehouse extends ServerContract.Types.entity_info implements Sched
|
|
|
168
64
|
}
|
|
169
65
|
|
|
170
66
|
get availableCapacity(): UInt64 {
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
}
|
|
174
|
-
return this.maxCapacity.subtracting(this.totalCargoMass)
|
|
67
|
+
const cargo = this.totalCargoMass
|
|
68
|
+
return cargo.gte(this.maxCapacity) ? UInt64.from(0) : this.maxCapacity.subtracting(cargo)
|
|
175
69
|
}
|
|
176
70
|
|
|
177
71
|
hasSpace(goodMass: UInt64, quantity: number): boolean {
|
|
178
|
-
|
|
179
|
-
const newTotal = this.totalCargoMass.adding(additionalMass)
|
|
180
|
-
return newTotal.lte(this.maxCapacity)
|
|
72
|
+
return this.totalCargoMass.adding(goodMass.multiplying(quantity)).lte(this.maxCapacity)
|
|
181
73
|
}
|
|
182
74
|
|
|
183
75
|
get isFull(): boolean {
|
|
184
76
|
return this.totalCargoMass.gte(this.maxCapacity)
|
|
185
77
|
}
|
|
186
78
|
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
this._location = Location.from(this.location)
|
|
190
|
-
}
|
|
191
|
-
return this._location
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
setLocation(location: Location): void {
|
|
195
|
-
this._location = location
|
|
79
|
+
getCargoForItem(goodId: UInt64Type): EntityInventory | undefined {
|
|
80
|
+
return this.inv.forItem(goodId)
|
|
196
81
|
}
|
|
197
82
|
|
|
198
|
-
|
|
199
|
-
return this.
|
|
83
|
+
get orbitalAltitude(): number {
|
|
84
|
+
return this.coordinates.z?.toNumber() || 0
|
|
200
85
|
}
|
|
201
86
|
|
|
202
|
-
get
|
|
203
|
-
|
|
87
|
+
get totalMass(): UInt64 {
|
|
88
|
+
const hull = this.hullmass ? UInt64.from(this.hullmass) : UInt64.from(0)
|
|
89
|
+
return hull.adding(this.totalCargoMass)
|
|
204
90
|
}
|
|
205
91
|
}
|
package/src/errors.ts
CHANGED
|
@@ -9,11 +9,11 @@ export const ERROR_SYSTEM_DISABLED = 'This game is currently disabled.'
|
|
|
9
9
|
export const ERROR_SYSTEM_NOT_INITIALIZED = 'This game has not been initialized.'
|
|
10
10
|
export const GAME_NOT_FOUND = 'Cannot find game for given account name.'
|
|
11
11
|
export const GAME_SEED_NOT_SET = 'This game has not initialized an epoch seed value.'
|
|
12
|
-
export const
|
|
13
|
-
export const
|
|
12
|
+
export const ITEM_DOES_NOT_EXIST = 'Item does not exist.'
|
|
13
|
+
export const ITEM_NOT_AVAILABLE_AT_LOCATION = 'Item is not tradeable at ship location.'
|
|
14
14
|
export const INSUFFICIENT_BALANCE = 'Insufficient balance.'
|
|
15
|
-
export const
|
|
16
|
-
export const
|
|
15
|
+
export const INSUFFICIENT_ITEM_QUANTITY = 'Insufficient quantity in cargo.'
|
|
16
|
+
export const INSUFFICIENT_ITEM_SUPPLY = 'Insufficient supply of item at location.'
|
|
17
17
|
export const INVALID_AMOUNT = 'Invalid amount.'
|
|
18
18
|
export const REQUIRES_MORE_THAN_ONE = 'A value greater than one is required.'
|
|
19
19
|
export const REQUIRES_POSITIVE_VALUE = 'Value must be greater than zero.'
|
package/src/index-module.ts
CHANGED
|
@@ -8,6 +8,10 @@ export {Shipload} from './shipload'
|
|
|
8
8
|
export {Ship} from './entities/ship'
|
|
9
9
|
export type {ShipStateInput} from './entities/ship'
|
|
10
10
|
export {Warehouse} from './entities/warehouse'
|
|
11
|
+
export type {WarehouseStateInput} from './entities/warehouse'
|
|
12
|
+
export {Container} from './entities/container'
|
|
13
|
+
export type {ContainerStateInput} from './entities/container'
|
|
14
|
+
export {makeShip, makeWarehouse, makeContainer} from './entities/makers'
|
|
11
15
|
|
|
12
16
|
export type movement_stats = ServerContract.Types.movement_stats
|
|
13
17
|
export type energy_stats = ServerContract.Types.energy_stats
|
|
@@ -16,6 +20,13 @@ export type schedule = ServerContract.Types.schedule
|
|
|
16
20
|
export type task = ServerContract.Types.task
|
|
17
21
|
export type cargo_item = ServerContract.Types.cargo_item
|
|
18
22
|
export type warehouse_row = ServerContract.Types.warehouse_row
|
|
23
|
+
export type container_row = ServerContract.Types.container_row
|
|
24
|
+
export type gatherer_stats = ServerContract.Types.gatherer_stats
|
|
25
|
+
|
|
26
|
+
export type location_static = ServerContract.Types.location_static
|
|
27
|
+
export type location_epoch = ServerContract.Types.location_epoch
|
|
28
|
+
export type location_derived = ServerContract.Types.location_derived
|
|
29
|
+
export type location_row = ServerContract.Types.location_row
|
|
19
30
|
export {Player} from './entities/player'
|
|
20
31
|
export type {PlayerStateInput} from './entities/player'
|
|
21
32
|
export {EntityInventory} from './entities/entity-inventory'
|
|
@@ -26,45 +37,57 @@ export {
|
|
|
26
37
|
EntitiesManager,
|
|
27
38
|
PlayersManager,
|
|
28
39
|
LocationsManager,
|
|
29
|
-
TradesManager,
|
|
30
40
|
EpochsManager,
|
|
31
41
|
ActionsManager,
|
|
32
42
|
} from './managers'
|
|
33
43
|
export type {EntityType} from './managers'
|
|
44
|
+
export type {EntityRefInput} from './managers/actions'
|
|
34
45
|
|
|
35
|
-
export {
|
|
46
|
+
export {getItem, getItems, itemIds} from './market/items'
|
|
36
47
|
export {getCurrentEpoch, getEpochInfo} from './scheduling/epoch'
|
|
37
48
|
export type {EpochInfo} from './scheduling/epoch'
|
|
38
|
-
export {
|
|
39
|
-
|
|
40
|
-
|
|
49
|
+
export {
|
|
50
|
+
getSystemName,
|
|
51
|
+
hasSystem,
|
|
52
|
+
getLocationType,
|
|
53
|
+
getLocationTypeName,
|
|
54
|
+
isGatherableLocation,
|
|
55
|
+
deriveLocationStatic,
|
|
56
|
+
deriveLocationEpoch,
|
|
57
|
+
deriveLocation,
|
|
58
|
+
} from './utils/system'
|
|
41
59
|
|
|
42
|
-
export {
|
|
60
|
+
export {
|
|
61
|
+
deriveStratum,
|
|
62
|
+
deriveResourceStats,
|
|
63
|
+
deriveLocationSize,
|
|
64
|
+
getEligibleResources,
|
|
65
|
+
getResourceWeight,
|
|
66
|
+
getLocationCandidates,
|
|
67
|
+
getDepthThreshold,
|
|
68
|
+
getResourceTier,
|
|
69
|
+
depthScaleFactor,
|
|
70
|
+
DEPTH_THRESHOLD_T1,
|
|
71
|
+
DEPTH_THRESHOLD_T2,
|
|
72
|
+
DEPTH_THRESHOLD_T3,
|
|
73
|
+
DEPTH_THRESHOLD_T4,
|
|
74
|
+
DEPTH_THRESHOLD_T5,
|
|
75
|
+
LOCATION_MIN_DEPTH,
|
|
76
|
+
LOCATION_MAX_DEPTH,
|
|
77
|
+
PLANET_SUBTYPE_GAS_GIANT,
|
|
78
|
+
PLANET_SUBTYPE_ROCKY,
|
|
79
|
+
PLANET_SUBTYPE_TERRESTRIAL,
|
|
80
|
+
PLANET_SUBTYPE_ICY,
|
|
81
|
+
PLANET_SUBTYPE_OCEAN,
|
|
82
|
+
PLANET_SUBTYPE_INDUSTRIAL,
|
|
83
|
+
} from './derivation'
|
|
43
84
|
|
|
44
|
-
export type {
|
|
45
|
-
export {findDealsForShip, findBestDeal} from './trading/deal'
|
|
85
|
+
export type {StratumInfo, ResourceStats} from './derivation'
|
|
46
86
|
|
|
47
|
-
export
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
CollectAnalysisOptions,
|
|
52
|
-
CollectAnalysisCallbacks,
|
|
53
|
-
BetterSaleLocation,
|
|
54
|
-
RepositionLocation,
|
|
55
|
-
DiscountedGoodInfo,
|
|
56
|
-
PotentialDeal,
|
|
57
|
-
CargoSaleItem,
|
|
58
|
-
} from './trading/collect'
|
|
59
|
-
export {
|
|
60
|
-
analyzeCollectOptions,
|
|
61
|
-
analyzeCargoSale,
|
|
62
|
-
createSellAndTradeOption,
|
|
63
|
-
createTravelToSellOption,
|
|
64
|
-
createSellAndRepositionOption,
|
|
65
|
-
createSellAndStayOption,
|
|
66
|
-
createExploreOption,
|
|
67
|
-
} from './trading/collect'
|
|
87
|
+
export {getStatDefinitions, getStatName, resolveStats} from './derivation'
|
|
88
|
+
export type {StatDefinition, NamedStats} from './derivation'
|
|
89
|
+
|
|
90
|
+
export {hash, hash512} from './utils/hash'
|
|
68
91
|
|
|
69
92
|
export {
|
|
70
93
|
distanceBetweenCoordinates,
|
|
@@ -91,32 +114,193 @@ export {
|
|
|
91
114
|
estimateTravelTime,
|
|
92
115
|
estimateDealTravelTime,
|
|
93
116
|
hasEnergyForDistance,
|
|
117
|
+
getFlightOrigin,
|
|
118
|
+
getDestinationLocation,
|
|
119
|
+
getPositionAt,
|
|
94
120
|
} from './travel/travel'
|
|
95
121
|
export type {
|
|
96
122
|
LoadTimeBreakdown,
|
|
97
123
|
EstimatedTravelTime,
|
|
98
124
|
EstimateTravelTimeOptions,
|
|
99
125
|
TransferEntity,
|
|
126
|
+
HasScheduleAndLocation,
|
|
100
127
|
} from './travel/travel'
|
|
101
128
|
|
|
102
|
-
export {
|
|
103
|
-
calculateUpdatedCargoCost,
|
|
104
|
-
calculateMaxTradeQuantity,
|
|
105
|
-
calculateTradeProfit,
|
|
106
|
-
calculateProfitPerMass,
|
|
107
|
-
calculateProfitPerSecond,
|
|
108
|
-
findBestGoodToTrade,
|
|
109
|
-
calculateBreakEvenPrice,
|
|
110
|
-
isProfitable,
|
|
111
|
-
calculateROI,
|
|
112
|
-
} from './trading/trade'
|
|
113
|
-
export type {TradeCalculation, TradeProfitResult} from './trading/trade'
|
|
114
|
-
|
|
115
129
|
export * as schedule from './scheduling/schedule'
|
|
116
130
|
export type {Scheduleable, ScheduleData} from './scheduling/schedule'
|
|
131
|
+
export {ScheduleAccessor, createScheduleAccessor} from './scheduling/accessor'
|
|
132
|
+
export {InventoryAccessor, createInventoryAccessor} from './entities/inventory-accessor'
|
|
133
|
+
export type {HasCargo} from './entities/inventory-accessor'
|
|
117
134
|
|
|
118
135
|
export * as cargoUtils from './entities/cargo-utils'
|
|
119
136
|
export type {CargoData} from './entities/cargo-utils'
|
|
120
137
|
|
|
121
138
|
export {projectEntity, projectEntityAt, createProjectedEntity} from './scheduling/projection'
|
|
122
139
|
export type {Projectable, ProjectedEntity} from './scheduling/projection'
|
|
140
|
+
|
|
141
|
+
export * from './types/capabilities'
|
|
142
|
+
export * from './types/entity'
|
|
143
|
+
export * from './capabilities'
|
|
144
|
+
|
|
145
|
+
export {
|
|
146
|
+
categoryColors,
|
|
147
|
+
tierColors,
|
|
148
|
+
categoryIcons,
|
|
149
|
+
componentIcon,
|
|
150
|
+
moduleIcon,
|
|
151
|
+
itemIcons,
|
|
152
|
+
} from './data/colors'
|
|
153
|
+
|
|
154
|
+
export {itemTier, itemOffset, itemCategory, isRelatedItem, isCraftedItem} from './data/tiers'
|
|
155
|
+
export type {CraftedItemCategory} from './data/tiers'
|
|
156
|
+
|
|
157
|
+
export {getCategoryInfo} from './data/categories'
|
|
158
|
+
export type {CategoryInfo} from './data/categories'
|
|
159
|
+
|
|
160
|
+
export {getPlanetSubtypes, getPlanetSubtype} from './data/locations'
|
|
161
|
+
export type {PlanetSubtypeInfo} from './data/locations'
|
|
162
|
+
|
|
163
|
+
export {
|
|
164
|
+
capabilityNames,
|
|
165
|
+
capabilityAttributes,
|
|
166
|
+
statMappings,
|
|
167
|
+
isInvertedAttribute,
|
|
168
|
+
getCapabilityAttributes,
|
|
169
|
+
getStatMappings,
|
|
170
|
+
getStatMappingsForStat,
|
|
171
|
+
getStatMappingsForCapability,
|
|
172
|
+
} from './data/capabilities'
|
|
173
|
+
export type {CapabilityAttribute, StatMapping} from './data/capabilities'
|
|
174
|
+
|
|
175
|
+
export {
|
|
176
|
+
components,
|
|
177
|
+
entityRecipes,
|
|
178
|
+
moduleRecipes,
|
|
179
|
+
getComponentById,
|
|
180
|
+
getEntityRecipe,
|
|
181
|
+
getEntityRecipeByItemId,
|
|
182
|
+
getModuleRecipe,
|
|
183
|
+
getModuleRecipeByItemId,
|
|
184
|
+
getAllCraftableItems,
|
|
185
|
+
getComponentsForCategory,
|
|
186
|
+
getComponentsForStat,
|
|
187
|
+
ITEM_HULL_PLATES,
|
|
188
|
+
ITEM_CARGO_LINING,
|
|
189
|
+
ITEM_CONTAINER_T1_PACKED,
|
|
190
|
+
ITEM_THRUSTER_CORE,
|
|
191
|
+
ITEM_POWER_CELL,
|
|
192
|
+
ITEM_ENGINE_T1,
|
|
193
|
+
ITEM_GENERATOR_T1,
|
|
194
|
+
ITEM_SHIP_T1_PACKED,
|
|
195
|
+
ITEM_WAREHOUSE_T1_PACKED,
|
|
196
|
+
ITEM_MATTER_CONDUIT,
|
|
197
|
+
ITEM_SURVEY_PROBE,
|
|
198
|
+
ITEM_CARGO_ARM,
|
|
199
|
+
ITEM_TOOL_BIT,
|
|
200
|
+
ITEM_REACTION_CHAMBER,
|
|
201
|
+
ITEM_GATHERER_T1,
|
|
202
|
+
ITEM_LOADER_T1,
|
|
203
|
+
ITEM_MANUFACTURING_T1,
|
|
204
|
+
ITEM_STORAGE_T1,
|
|
205
|
+
ITEM_HULL_PLATES_T2,
|
|
206
|
+
ITEM_CARGO_LINING_T2,
|
|
207
|
+
ITEM_CONTAINER_T2_PACKED,
|
|
208
|
+
ITEM_FOCUSING_ARRAY,
|
|
209
|
+
} from './data/recipes'
|
|
210
|
+
export type {
|
|
211
|
+
ComponentDefinition,
|
|
212
|
+
ComponentStat,
|
|
213
|
+
RecipeInput,
|
|
214
|
+
EntityRecipe,
|
|
215
|
+
ModuleRecipe,
|
|
216
|
+
ModuleSlot,
|
|
217
|
+
CraftableItem,
|
|
218
|
+
} from './data/recipes'
|
|
219
|
+
|
|
220
|
+
export {
|
|
221
|
+
encodeStats,
|
|
222
|
+
decodeStat,
|
|
223
|
+
decodeStats,
|
|
224
|
+
decodeCraftedItemStats,
|
|
225
|
+
blendStacks,
|
|
226
|
+
computeComponentStats,
|
|
227
|
+
blendComponentStacks,
|
|
228
|
+
computeEntityStats,
|
|
229
|
+
blendCargoStacks,
|
|
230
|
+
blendCrossGroup,
|
|
231
|
+
categoryItemMass,
|
|
232
|
+
computeInputMass,
|
|
233
|
+
} from './derivation/crafting'
|
|
234
|
+
export type {StackInput, CategoryStacks} from './derivation/crafting'
|
|
235
|
+
|
|
236
|
+
export {computeContainerCapabilities, computeContainerT2Capabilities} from './entities/container'
|
|
237
|
+
|
|
238
|
+
export {
|
|
239
|
+
computeShipHullCapabilities,
|
|
240
|
+
computeEngineCapabilities,
|
|
241
|
+
computeGeneratorCapabilities,
|
|
242
|
+
computeGathererCapabilities,
|
|
243
|
+
computeHaulerCapabilities,
|
|
244
|
+
computeLoaderCapabilities,
|
|
245
|
+
computeManufacturingCapabilities,
|
|
246
|
+
computeWarehouseHullCapabilities,
|
|
247
|
+
computeStorageCapabilities,
|
|
248
|
+
computeShipCapabilities,
|
|
249
|
+
} from './entities/ship-deploy'
|
|
250
|
+
export type {ShipCapabilities} from './entities/ship-deploy'
|
|
251
|
+
|
|
252
|
+
export {resolveItem} from './resolution/resolve-item'
|
|
253
|
+
export type {
|
|
254
|
+
ResolvedItem,
|
|
255
|
+
ResolvedItemStat,
|
|
256
|
+
ResolvedAttributeGroup,
|
|
257
|
+
ResolvedModuleSlot,
|
|
258
|
+
ResolvedItemType,
|
|
259
|
+
} from './resolution/resolve-item'
|
|
260
|
+
|
|
261
|
+
export * as NFT from './nft'
|
|
262
|
+
export {
|
|
263
|
+
deserializeAsset,
|
|
264
|
+
deserializeResource,
|
|
265
|
+
deserializeComponent,
|
|
266
|
+
deserializeModule,
|
|
267
|
+
deserializeEntity,
|
|
268
|
+
readCommonBase,
|
|
269
|
+
} from './nft/deserializers'
|
|
270
|
+
export type {
|
|
271
|
+
NFTCargoItem,
|
|
272
|
+
NFTModuleSlot,
|
|
273
|
+
NFTInstalledModule,
|
|
274
|
+
NFTCommonBase,
|
|
275
|
+
} from './nft/deserializers'
|
|
276
|
+
|
|
277
|
+
export {
|
|
278
|
+
buildEntityDescription,
|
|
279
|
+
formatModuleLine,
|
|
280
|
+
entityDisplayName,
|
|
281
|
+
moduleDisplayName,
|
|
282
|
+
computeBaseHullmass,
|
|
283
|
+
computeBaseCapacityShip,
|
|
284
|
+
computeBaseCapacityWarehouse,
|
|
285
|
+
computeEngineThrust,
|
|
286
|
+
computeEngineDrain,
|
|
287
|
+
computeGeneratorCap,
|
|
288
|
+
computeGeneratorRech,
|
|
289
|
+
computeGathererYield,
|
|
290
|
+
computeGathererDrain,
|
|
291
|
+
computeGathererDepth,
|
|
292
|
+
computeGathererSpeed,
|
|
293
|
+
computeLoaderMass,
|
|
294
|
+
computeLoaderThrust,
|
|
295
|
+
computeCrafterSpeed,
|
|
296
|
+
computeCrafterDrain,
|
|
297
|
+
} from './nft/description'
|
|
298
|
+
|
|
299
|
+
export {getEntitySlotLayout} from './data/recipes'
|
|
300
|
+
export {
|
|
301
|
+
ITEM_TYPE_RESOURCE,
|
|
302
|
+
ITEM_TYPE_COMPONENT,
|
|
303
|
+
ITEM_TYPE_MODULE,
|
|
304
|
+
ITEM_TYPE_ENTITY,
|
|
305
|
+
itemTypeCode,
|
|
306
|
+
} from './data/tiers'
|