@skullandbonestools/snbdata 5.0.10 → 5.0.12
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/README.md +16 -9
- package/data/commodities.json +5 -1
- package/data/contracts.json +3 -0
- package/data/cosmetics.json +174 -0
- package/data/items.json +14 -11
- package/data/materials.json +8 -0
- package/data/sets.json +8 -0
- package/data/worldEvents.json +9 -0
- package/dist/daos/cosmetics.d.ts +6 -5
- package/dist/daos/cosmetics.d.ts.map +1 -1
- package/dist/daos/cosmetics.js +6 -2
- package/dist/daos/cosmetics.js.map +1 -1
- package/dist/daos/items.d.ts +6 -5
- package/dist/daos/items.d.ts.map +1 -1
- package/dist/daos/items.js +6 -2
- package/dist/daos/items.js.map +1 -1
- package/dist/daos/ships.d.ts +3 -1
- package/dist/daos/ships.d.ts.map +1 -1
- package/dist/daos/ships.js +5 -2
- package/dist/daos/ships.js.map +1 -1
- package/dist/types/Category.d.ts +1 -1
- package/dist/types/Category.d.ts.map +1 -1
- package/dist/types/CosmeticProperties.d.ts +3 -0
- package/dist/types/CosmeticProperties.d.ts.map +1 -1
- package/dist/types/ItemProperties.d.ts +3 -0
- package/dist/types/ItemProperties.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -5,14 +5,7 @@ Welcome to the inofficial data repository for the Skull and Bones game by Ubisof
|
|
|
5
5
|
|
|
6
6
|
This repository hosts data for the several elements in the game like **Materials**, **Items**, **Cosmetics** and more in a JSON format and provides a npm package to access the data in typescript and javascript.
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
- [ ] Extract data stored in translation files into own data files
|
|
10
|
-
- [x] Sets
|
|
11
|
-
- [x] Events
|
|
12
|
-
- [x] World Events
|
|
13
|
-
- [ ] Locations
|
|
14
|
-
- [ ] Crowdin workflow integration
|
|
15
|
-
- [x] npm packages with generated types for the different data (events, cosmetics, items, ...)
|
|
8
|
+
This project is also compliant with the Terms of Service of Skull and Bones and approved by Ubisoft, as the data was/is collected and written down by hand and not acquired in other ways.
|
|
16
9
|
|
|
17
10
|
For each update of the game a new release is provided containing the updated files which can be found under the [Releases](https://github.com/SkullAndBonesTools/SkullAndBonesData/releases) section.
|
|
18
11
|
|
|
@@ -30,7 +23,7 @@ This represents the SnB game version Y2S1.2.X
|
|
|
30
23
|
|
|
31
24
|
## How to Use
|
|
32
25
|
### Raw Data
|
|
33
|
-
You can find the raw data files as JSON in the [data](https://github.com/SkullAndBonesTools/SkullAndBonesData/tree/
|
|
26
|
+
You can find the raw data files as JSON in the [data](https://github.com/SkullAndBonesTools/SkullAndBonesData/tree/main/data) folder.
|
|
34
27
|
|
|
35
28
|
### Package
|
|
36
29
|
Based on the raw data is the `snbdata` npm package available, featuring access to the data as objects with type safety and autocompletion.
|
|
@@ -91,6 +84,12 @@ set: ashenCorsair
|
|
|
91
84
|
obtainable: premiumEdition
|
|
92
85
|
```
|
|
93
86
|
|
|
87
|
+
### Translation
|
|
88
|
+
You can find the english translation of the data in the [languages](https://github.com/SkullAndBonesTools/SkullAndBonesData/tree/main/languages/en) folder.\
|
|
89
|
+
The translations for other languages can currently be found on [Crowdin](#adding-translations-for-the-data).
|
|
90
|
+
|
|
91
|
+
*It is planned that at some point the translations will also be present as files in the languages folder.*
|
|
92
|
+
|
|
94
93
|
## History
|
|
95
94
|
The data available in the repository was originally put together for [Skull and Bones Tools](https://skullandbonestools.de) and got published with **Year 2 Season 1 - Ascent into Chaos** with the goal of supporting other creators and to promote up to date informations by allowing everyone to contribute to the dataset.
|
|
96
95
|
|
|
@@ -111,6 +110,14 @@ If you want to add to or update informations of the dataset, the general open so
|
|
|
111
110
|
Which consits of creating a **Fork**, adding/updating the code in the forked repository and then creating a **Pull Request** in this repository to merge the changes of your fork into this one.
|
|
112
111
|
|
|
113
112
|
|
|
113
|
+
## Sponsor
|
|
114
|
+
### Crowdin
|
|
115
|
+
Skull and Bones Data is, as part of the Skull and Bones Tools project, supported by Crowdin 💚
|
|
116
|
+
|
|
117
|
+
[](https://crowdin.com/)
|
|
118
|
+
|
|
119
|
+
Allowing me to provide a direct integration into this github project, an overview of all translations and an easy way for everyone to participate in the translation of the project.
|
|
120
|
+
|
|
114
121
|
## Support
|
|
115
122
|
For general questions or support of any kind you can use the official Skull and Bones Tools Discord (https://discord.gg/fTgvPxR7eR) or the support@skullandbonestools.de email.
|
|
116
123
|
|
package/data/commodities.json
CHANGED
|
@@ -220,7 +220,7 @@
|
|
|
220
220
|
"category": "theHelm"
|
|
221
221
|
},
|
|
222
222
|
"crystalizedTaintedWood": {
|
|
223
|
-
"rarity": "
|
|
223
|
+
"rarity": "epic",
|
|
224
224
|
"category": "theHelm"
|
|
225
225
|
},
|
|
226
226
|
"silverSnuff": {
|
|
@@ -246,5 +246,9 @@
|
|
|
246
246
|
"helmLeaseOpen": {
|
|
247
247
|
"rarity": "legendary",
|
|
248
248
|
"category": "theHelm"
|
|
249
|
+
},
|
|
250
|
+
"sigilFlare": {
|
|
251
|
+
"rarity": "epic",
|
|
252
|
+
"category": "event"
|
|
249
253
|
}
|
|
250
254
|
}
|
package/data/contracts.json
CHANGED
package/data/cosmetics.json
CHANGED
|
@@ -23084,5 +23084,179 @@
|
|
|
23084
23084
|
"obtainable": "ubisoftStore",
|
|
23085
23085
|
"dateAdded": "2025-04-29",
|
|
23086
23086
|
"lastUpdated": "2025-04-29"
|
|
23087
|
+
},
|
|
23088
|
+
"warWagers": {
|
|
23089
|
+
"id": "warWagers",
|
|
23090
|
+
"type": "sailsEmblem",
|
|
23091
|
+
"event": "theHonorless",
|
|
23092
|
+
"set": "theRedHorseman",
|
|
23093
|
+
"obtainable": ["ubisoftStore","ubisoftStoreRedeemableWithEventToken"],
|
|
23094
|
+
"dateAdded": "2025-05-06",
|
|
23095
|
+
"lastUpdated": "2025-05-06"
|
|
23096
|
+
},
|
|
23097
|
+
"bornBrutal": {
|
|
23098
|
+
"id": "bornBrutal",
|
|
23099
|
+
"type": "sailsPattern",
|
|
23100
|
+
"event": "theHonorless",
|
|
23101
|
+
"set": "theRedHorseman",
|
|
23102
|
+
"obtainable": ["ubisoftStore","ubisoftStoreRedeemableWithEventToken"],
|
|
23103
|
+
"dateAdded": "2025-05-06",
|
|
23104
|
+
"lastUpdated": "2025-05-06"
|
|
23105
|
+
},
|
|
23106
|
+
"bitterEnds": {
|
|
23107
|
+
"id": "bitterEnds",
|
|
23108
|
+
"type": "sailsColor",
|
|
23109
|
+
"effect": "emissive",
|
|
23110
|
+
"event": "theHonorless",
|
|
23111
|
+
"set": "theRedHorseman",
|
|
23112
|
+
"obtainable": ["ubisoftStore","ubisoftStoreRedeemableWithEventToken"],
|
|
23113
|
+
"dateAdded": "2025-05-06",
|
|
23114
|
+
"lastUpdated": "2025-05-06"
|
|
23115
|
+
},
|
|
23116
|
+
"harbingerOfAres": {
|
|
23117
|
+
"id": "harbingerOfAres",
|
|
23118
|
+
"type": "figureHead",
|
|
23119
|
+
"event": "theHonorless",
|
|
23120
|
+
"set": "theRedHorseman",
|
|
23121
|
+
"obtainable": ["ubisoftStore","ubisoftStoreRedeemableWithEventToken"],
|
|
23122
|
+
"dateAdded": "2025-05-06",
|
|
23123
|
+
"lastUpdated": "2025-05-06"
|
|
23124
|
+
},
|
|
23125
|
+
"stainedSeas": {
|
|
23126
|
+
"id": "stainedSeas",
|
|
23127
|
+
"type": "hull",
|
|
23128
|
+
"event": "theHonorless",
|
|
23129
|
+
"set": "theRedHorseman",
|
|
23130
|
+
"obtainable": ["ubisoftStore","ubisoftStoreRedeemableWithEventToken"],
|
|
23131
|
+
"dateAdded": "2025-05-06",
|
|
23132
|
+
"lastUpdated": "2025-05-06"
|
|
23133
|
+
},
|
|
23134
|
+
"sanguivore": {
|
|
23135
|
+
"id": "sanguivore",
|
|
23136
|
+
"type": "nameplate",
|
|
23137
|
+
"event": "theHonorless",
|
|
23138
|
+
"set": "theRedHorseman",
|
|
23139
|
+
"obtainable": ["ubisoftStore","ubisoftStoreRedeemableWithEventToken"],
|
|
23140
|
+
"dateAdded": "2025-05-06",
|
|
23141
|
+
"lastUpdated": "2025-05-06"
|
|
23142
|
+
},
|
|
23143
|
+
"shardDance": {
|
|
23144
|
+
"id": "shardDance",
|
|
23145
|
+
"type": "wheel",
|
|
23146
|
+
"event": "theHonorless",
|
|
23147
|
+
"set": "theRedHorseman",
|
|
23148
|
+
"obtainable": ["ubisoftStore","ubisoftStoreRedeemableWithEventToken"],
|
|
23149
|
+
"dateAdded": "2025-05-06",
|
|
23150
|
+
"lastUpdated": "2025-05-06"
|
|
23151
|
+
},
|
|
23152
|
+
"crimsonPlumes": {
|
|
23153
|
+
"id": "crimsonPlumes",
|
|
23154
|
+
"type": "headwear",
|
|
23155
|
+
"event": "theHonorless",
|
|
23156
|
+
"set": "inquisitiveDawn",
|
|
23157
|
+
"obtainable": ["ubisoftStore","ubisoftStoreRedeemableWithEventToken"],
|
|
23158
|
+
"dateAdded": "2025-05-06",
|
|
23159
|
+
"lastUpdated": "2025-05-06"
|
|
23160
|
+
},
|
|
23161
|
+
"oneForsaken": {
|
|
23162
|
+
"id": "oneForsaken",
|
|
23163
|
+
"type": "faceAccessory",
|
|
23164
|
+
"event": "theHonorless",
|
|
23165
|
+
"set": "inquisitiveDawn",
|
|
23166
|
+
"obtainable": ["ubisoftStore","ubisoftStoreRedeemableWithEventToken"],
|
|
23167
|
+
"dateAdded": "2025-05-06",
|
|
23168
|
+
"lastUpdated": "2025-05-06"
|
|
23169
|
+
},
|
|
23170
|
+
"oathkeeper": {
|
|
23171
|
+
"id": "oathkeeper",
|
|
23172
|
+
"type": "torso",
|
|
23173
|
+
"event": "theHonorless",
|
|
23174
|
+
"set": "inquisitiveDawn",
|
|
23175
|
+
"obtainable": ["ubisoftStore","ubisoftStoreRedeemableWithEventToken"],
|
|
23176
|
+
"dateAdded": "2025-05-06",
|
|
23177
|
+
"lastUpdated": "2025-05-06"
|
|
23178
|
+
},
|
|
23179
|
+
"scarletFrills": {
|
|
23180
|
+
"id": "scarletFrills",
|
|
23181
|
+
"type": "neck",
|
|
23182
|
+
"event": "theHonorless",
|
|
23183
|
+
"set": "inquisitiveDawn",
|
|
23184
|
+
"obtainable": ["ubisoftStore","ubisoftStoreRedeemableWithEventToken"],
|
|
23185
|
+
"dateAdded": "2025-05-06",
|
|
23186
|
+
"lastUpdated": "2025-05-06"
|
|
23187
|
+
},
|
|
23188
|
+
"bracersOfFinality": {
|
|
23189
|
+
"id": "bracersOfFinality",
|
|
23190
|
+
"type": "forearm",
|
|
23191
|
+
"event": "theHonorless",
|
|
23192
|
+
"set": "inquisitiveDawn",
|
|
23193
|
+
"obtainable": ["ubisoftStore","ubisoftStoreRedeemableWithEventToken"],
|
|
23194
|
+
"dateAdded": "2025-05-06",
|
|
23195
|
+
"lastUpdated": "2025-05-06"
|
|
23196
|
+
},
|
|
23197
|
+
"inquisitorsSash": {
|
|
23198
|
+
"id": "inquisitorsSash",
|
|
23199
|
+
"type": "waist",
|
|
23200
|
+
"event": "theHonorless",
|
|
23201
|
+
"set": "inquisitiveDawn",
|
|
23202
|
+
"obtainable": ["ubisoftStore","ubisoftStoreRedeemableWithEventToken"],
|
|
23203
|
+
"dateAdded": "2025-05-06",
|
|
23204
|
+
"lastUpdated": "2025-05-06"
|
|
23205
|
+
},
|
|
23206
|
+
"stitchedTrousers": {
|
|
23207
|
+
"id": "stitchedTrousers",
|
|
23208
|
+
"type": "bottom",
|
|
23209
|
+
"event": "theHonorless",
|
|
23210
|
+
"set": "inquisitiveDawn",
|
|
23211
|
+
"obtainable": ["ubisoftStore","ubisoftStoreRedeemableWithEventToken"],
|
|
23212
|
+
"dateAdded": "2025-05-06",
|
|
23213
|
+
"lastUpdated": "2025-05-06"
|
|
23214
|
+
},
|
|
23215
|
+
"stepsOfJudgment": {
|
|
23216
|
+
"id": "stepsOfJudgment",
|
|
23217
|
+
"type": "footwear",
|
|
23218
|
+
"event": "theHonorless",
|
|
23219
|
+
"set": "inquisitiveDawn",
|
|
23220
|
+
"obtainable": ["ubisoftStore","ubisoftStoreRedeemableWithEventToken"],
|
|
23221
|
+
"dateAdded": "2025-05-06",
|
|
23222
|
+
"lastUpdated": "2025-05-06"
|
|
23223
|
+
},
|
|
23224
|
+
"apocalyptic": {
|
|
23225
|
+
"id": "apocalyptic",
|
|
23226
|
+
"type": "aura",
|
|
23227
|
+
"effect": "bossKillReactive",
|
|
23228
|
+
"event": "theHonorless",
|
|
23229
|
+
"obtainable": "ubisoftStore",
|
|
23230
|
+
"dateAdded": "2025-05-06",
|
|
23231
|
+
"lastUpdated": "2025-05-06"
|
|
23232
|
+
},
|
|
23233
|
+
"redbeard": {
|
|
23234
|
+
"id": "redbeard",
|
|
23235
|
+
"type": "pet",
|
|
23236
|
+
"event": "theHonorless",
|
|
23237
|
+
"obtainable": "ubisoftStore",
|
|
23238
|
+
"dateAdded": "2025-05-06",
|
|
23239
|
+
"lastUpdated": "2025-05-06"
|
|
23240
|
+
},
|
|
23241
|
+
"pissDrunk": {
|
|
23242
|
+
"id": "pissDrunk",
|
|
23243
|
+
"type": "emote",
|
|
23244
|
+
"obtainable": "ubisoftStore",
|
|
23245
|
+
"dateAdded": "2025-05-06",
|
|
23246
|
+
"lastUpdated": "2025-05-06"
|
|
23247
|
+
},
|
|
23248
|
+
"bigwigDance": {
|
|
23249
|
+
"id": "bigwigDance",
|
|
23250
|
+
"type": "emote",
|
|
23251
|
+
"obtainable": "ubisoftStore",
|
|
23252
|
+
"dateAdded": "2025-05-06",
|
|
23253
|
+
"lastUpdated": "2025-05-06"
|
|
23254
|
+
},
|
|
23255
|
+
"justClowningAround": {
|
|
23256
|
+
"id": "justClowningAround",
|
|
23257
|
+
"type": "emote",
|
|
23258
|
+
"obtainable": "ubisoftStore",
|
|
23259
|
+
"dateAdded": "2025-05-06",
|
|
23260
|
+
"lastUpdated": "2025-05-06"
|
|
23087
23261
|
}
|
|
23088
23262
|
}
|
package/data/items.json
CHANGED
|
@@ -9700,11 +9700,11 @@
|
|
|
9700
9700
|
"buffDuration": 20,
|
|
9701
9701
|
"event": "theHonorless",
|
|
9702
9702
|
"season": "ascentIntoChaos",
|
|
9703
|
-
"obtainable": "",
|
|
9703
|
+
"obtainable": "defeatingHonorless",
|
|
9704
9704
|
"required": {},
|
|
9705
9705
|
"perks": ["libertyCap"],
|
|
9706
|
-
"dateAdded": "2025-05-
|
|
9707
|
-
"lastUpdated": "2025-05-
|
|
9706
|
+
"dateAdded": "2025-05-06",
|
|
9707
|
+
"lastUpdated": "2025-05-06"
|
|
9708
9708
|
},
|
|
9709
9709
|
"schoonerUpgrade1": {
|
|
9710
9710
|
"id": "schoonerUpgrade1",
|
|
@@ -10041,6 +10041,7 @@
|
|
|
10041
10041
|
"id": "divineWind",
|
|
10042
10042
|
"type": "bombard",
|
|
10043
10043
|
"rarity": "epic",
|
|
10044
|
+
"event": "theHonorless",
|
|
10044
10045
|
"season": "ascentIntoChaos",
|
|
10045
10046
|
"value": 1,
|
|
10046
10047
|
"weight": 500,
|
|
@@ -10052,10 +10053,11 @@
|
|
|
10052
10053
|
"optimalRange": 550,
|
|
10053
10054
|
"projectileSpeed": 135,
|
|
10054
10055
|
"blastRadius": 35,
|
|
10056
|
+
"obtainable": "theHelmEvent",
|
|
10055
10057
|
"required": {},
|
|
10056
10058
|
"perks": ["afterShock","explosive2","electric1"],
|
|
10057
|
-
"dateAdded": "2025-
|
|
10058
|
-
"lastUpdated": "2025-
|
|
10059
|
+
"dateAdded": "2025-05-06",
|
|
10060
|
+
"lastUpdated": "2025-05-06"
|
|
10059
10061
|
},
|
|
10060
10062
|
"tearingLongGun1": {
|
|
10061
10063
|
"id": "tearingLongGun1",
|
|
@@ -10415,7 +10417,7 @@
|
|
|
10415
10417
|
"id": "kleineKartouwe",
|
|
10416
10418
|
"type": "demicannon",
|
|
10417
10419
|
"rarity": "epic",
|
|
10418
|
-
"obtainable": "
|
|
10420
|
+
"obtainable": "theHelmEvent",
|
|
10419
10421
|
"event": "theHonorless",
|
|
10420
10422
|
"value": 1,
|
|
10421
10423
|
"weight": 500,
|
|
@@ -10428,8 +10430,8 @@
|
|
|
10428
10430
|
"projectileSpeed": 400,
|
|
10429
10431
|
"required": {},
|
|
10430
10432
|
"perks": ["imminentBang","combustion3"],
|
|
10431
|
-
"dateAdded": "2025-
|
|
10432
|
-
"lastUpdated": "2025-
|
|
10433
|
+
"dateAdded": "2025-05-06",
|
|
10434
|
+
"lastUpdated": "2025-05-16"
|
|
10433
10435
|
},
|
|
10434
10436
|
"fireCulverin1": {
|
|
10435
10437
|
"id": "fireCulverin1",
|
|
@@ -10689,14 +10691,15 @@
|
|
|
10689
10691
|
"id": "fuseFusingStation",
|
|
10690
10692
|
"rarity": "rare",
|
|
10691
10693
|
"type": "offensiveFurniture",
|
|
10694
|
+
"event": "theHonorless",
|
|
10692
10695
|
"gearScore": 20,
|
|
10693
10696
|
"value": 1,
|
|
10694
10697
|
"weight": 80,
|
|
10695
|
-
"obtainable": "",
|
|
10698
|
+
"obtainable": ["theHelmEvent","bloodiedStrongbox"],
|
|
10696
10699
|
"perks": ["fuseFusingStation"],
|
|
10697
10700
|
"required": {},
|
|
10698
|
-
"dateAdded": "2025-
|
|
10699
|
-
"lastUpdated": "2025-
|
|
10701
|
+
"dateAdded": "2025-05-06",
|
|
10702
|
+
"lastUpdated": "2025-05-06"
|
|
10700
10703
|
},
|
|
10701
10704
|
"ramrodWorkshop": {
|
|
10702
10705
|
"id": "ramrodWorkshop",
|
package/data/materials.json
CHANGED
|
@@ -35,6 +35,10 @@
|
|
|
35
35
|
"rarity": "common",
|
|
36
36
|
"category": "currency"
|
|
37
37
|
},
|
|
38
|
+
"jadeDragon": {
|
|
39
|
+
"rarity": "common",
|
|
40
|
+
"category": "currency"
|
|
41
|
+
},
|
|
38
42
|
"cork": {
|
|
39
43
|
"rarity": "common",
|
|
40
44
|
"category": "currency"
|
|
@@ -43,6 +47,10 @@
|
|
|
43
47
|
"rarity": "legendary",
|
|
44
48
|
"category": "currency"
|
|
45
49
|
},
|
|
50
|
+
"bloodiedDoubloon": {
|
|
51
|
+
"rarity": "common",
|
|
52
|
+
"category": "currency"
|
|
53
|
+
},
|
|
46
54
|
"jute": {
|
|
47
55
|
"rarity": "common",
|
|
48
56
|
"category": "raw"
|
package/data/sets.json
CHANGED
|
@@ -1154,5 +1154,13 @@
|
|
|
1154
1154
|
"envyFreedom": {
|
|
1155
1155
|
"id": "envyFreedom",
|
|
1156
1156
|
"type": "ship"
|
|
1157
|
+
},
|
|
1158
|
+
"theRedHorseman": {
|
|
1159
|
+
"id": "theRedHorseman",
|
|
1160
|
+
"type": "ship"
|
|
1161
|
+
},
|
|
1162
|
+
"inquisitiveDawn": {
|
|
1163
|
+
"id": "inquisitiveDawn",
|
|
1164
|
+
"type": "player"
|
|
1157
1165
|
}
|
|
1158
1166
|
}
|
package/data/worldEvents.json
CHANGED
|
@@ -97,5 +97,14 @@
|
|
|
97
97
|
},
|
|
98
98
|
"gloryAdorned": {
|
|
99
99
|
"id": "gloryAdorned"
|
|
100
|
+
},
|
|
101
|
+
"theHonorlessMizerja": {
|
|
102
|
+
"id": "theHonorlessMizerja"
|
|
103
|
+
},
|
|
104
|
+
"theHonorlessDianSinaga": {
|
|
105
|
+
"id": "theHonorlessDianSinaga"
|
|
106
|
+
},
|
|
107
|
+
"theHonorlessAhPak": {
|
|
108
|
+
"id": "theHonorlessAhPak"
|
|
100
109
|
}
|
|
101
110
|
}
|
package/dist/daos/cosmetics.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import cosmeticsData from '../../data/cosmetics.json';
|
|
2
|
-
import { Effect } from '../types/CosmeticProperties';
|
|
2
|
+
import { Effect, PlayerAppearanceType, PlayerOutfitType, ShipType } from '../types/CosmeticProperties';
|
|
3
3
|
import { Rarity } from '../types/Rarity';
|
|
4
|
+
import { Contract } from './contracts';
|
|
4
5
|
import { Event } from './events';
|
|
5
6
|
import { Material } from './materials';
|
|
6
7
|
import { Season } from './seasons';
|
|
@@ -8,7 +9,7 @@ import { Set } from './sets';
|
|
|
8
9
|
import { WorldEvent } from './worldEvents';
|
|
9
10
|
export declare class Cosmetic {
|
|
10
11
|
readonly id: string;
|
|
11
|
-
readonly type:
|
|
12
|
+
readonly type: ShipType | PlayerOutfitType | PlayerAppearanceType;
|
|
12
13
|
readonly dateAdded: string;
|
|
13
14
|
readonly lastUpdated: string;
|
|
14
15
|
readonly rarity?: Rarity | undefined;
|
|
@@ -17,15 +18,15 @@ export declare class Cosmetic {
|
|
|
17
18
|
readonly obtainable?: (string | string[] | Array<string | string[]>) | undefined;
|
|
18
19
|
readonly effect?: (Effect | Effect[]) | undefined;
|
|
19
20
|
readonly season?: Season | undefined;
|
|
20
|
-
readonly contract?:
|
|
21
|
+
readonly contract?: Contract | undefined;
|
|
21
22
|
basic?: Cosmetic | undefined;
|
|
22
23
|
upgrades?: Cosmetic[] | undefined;
|
|
23
24
|
readonly required?: Map<Material, number> | undefined;
|
|
24
25
|
readonly requiredRank?: string | undefined;
|
|
25
26
|
readonly bounty?: string | undefined;
|
|
26
27
|
readonly event?: Event | undefined;
|
|
27
|
-
readonly worldEvent?: WorldEvent | undefined;
|
|
28
|
-
constructor(id: string, type:
|
|
28
|
+
readonly worldEvent?: (WorldEvent | WorldEvent[]) | undefined;
|
|
29
|
+
constructor(id: string, type: ShipType | PlayerOutfitType | PlayerAppearanceType, dateAdded: string, lastUpdated: string, rarity?: Rarity | undefined, tier?: number | undefined, set?: Set | undefined, obtainable?: (string | string[] | Array<string | string[]>) | undefined, effect?: (Effect | Effect[]) | undefined, season?: Season | undefined, contract?: Contract | undefined, basic?: Cosmetic | undefined, upgrades?: Cosmetic[] | undefined, required?: Map<Material, number> | undefined, requiredRank?: string | undefined, bounty?: string | undefined, event?: Event | undefined, worldEvent?: (WorldEvent | WorldEvent[]) | undefined);
|
|
29
30
|
static fromRawData(rawData: any): Cosmetic;
|
|
30
31
|
static updateCosmeticWithUpgrades(key: string, rawData: any, cosmetics: Record<string, Cosmetic>): void;
|
|
31
32
|
static loadCosmetics(): Record<string, Cosmetic>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cosmetics.d.ts","sourceRoot":"","sources":["../../src/daos/cosmetics.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"cosmetics.d.ts","sourceRoot":"","sources":["../../src/daos/cosmetics.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvG,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAa,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,KAAK,EAAU,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAa,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,MAAM,EAAW,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,GAAG,EAAQ,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,UAAU,EAAe,MAAM,eAAe,CAAC;AAExD,qBAAa,QAAQ;aAEG,EAAE,EAAE,MAAM;aACV,IAAI,EAAE,QAAQ,GAAG,gBAAgB,GAAG,oBAAoB;aACxD,SAAS,EAAE,MAAM;aACjB,WAAW,EAAE,MAAM;aACnB,MAAM,CAAC,EAAE,MAAM;aACf,IAAI,CAAC,EAAE,MAAM;aACb,GAAG,CAAC,EAAE,GAAG;aACT,UAAU,CAAC,GAAE,MAAM,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC;aACzD,MAAM,CAAC,GAAE,MAAM,GAAG,MAAM,EAAE;aAC1B,MAAM,CAAC,EAAE,MAAM;aACf,QAAQ,CAAC,EAAE,QAAQ;IAC5B,KAAK,CAAC,EAAE,QAAQ;IAChB,QAAQ,CAAC,EAAE,QAAQ,EAAE;aACZ,QAAQ,CAAC,EAAE,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC;aAChC,YAAY,CAAC,EAAE,MAAM;aACrB,MAAM,CAAC,EAAE,MAAM;aACf,KAAK,CAAC,EAAE,KAAK;aACb,UAAU,CAAC,GAAE,UAAU,GAAG,UAAU,EAAE;gBAjBtC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,QAAQ,GAAG,gBAAgB,GAAG,oBAAoB,EACxD,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,MAAM,YAAA,EACf,IAAI,CAAC,EAAE,MAAM,YAAA,EACb,GAAG,CAAC,EAAE,GAAG,YAAA,EACT,UAAU,CAAC,GAAE,MAAM,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,aAAA,EACzD,MAAM,CAAC,GAAE,MAAM,GAAG,MAAM,EAAE,aAAA,EAC1B,MAAM,CAAC,EAAE,MAAM,YAAA,EACf,QAAQ,CAAC,EAAE,QAAQ,YAAA,EAC5B,KAAK,CAAC,EAAE,QAAQ,YAAA,EAChB,QAAQ,CAAC,EAAE,QAAQ,EAAE,YAAA,EACZ,QAAQ,CAAC,EAAE,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,YAAA,EAChC,YAAY,CAAC,EAAE,MAAM,YAAA,EACrB,MAAM,CAAC,EAAE,MAAM,YAAA,EACf,KAAK,CAAC,EAAE,KAAK,YAAA,EACb,UAAU,CAAC,GAAE,UAAU,GAAG,UAAU,EAAE,aAAA;WAG5C,WAAW,CAAC,OAAO,EAAE,GAAG,GAAG,QAAQ;WAsCnC,0BAA0B,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC;WAWzF,aAAa,IAAI,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC;CAU1D;AAED,KAAK,SAAS,GAAG;KACZ,CAAC,IAAI,MAAM,OAAO,aAAa,GAAG,QAAQ;CAC9C,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,SAAiD,CAAC"}
|
package/dist/daos/cosmetics.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import cosmeticsData from '../../data/cosmetics.json';
|
|
2
|
+
import { Contracts } from './contracts';
|
|
2
3
|
import { Events } from './events';
|
|
3
4
|
import { Materials } from './materials';
|
|
4
5
|
import { Seasons } from './seasons';
|
|
@@ -28,8 +29,11 @@ export class Cosmetic {
|
|
|
28
29
|
static fromRawData(rawData) {
|
|
29
30
|
const season = rawData.season;
|
|
30
31
|
const set = rawData.set;
|
|
32
|
+
const contract = rawData.contract;
|
|
31
33
|
const event = rawData.event;
|
|
32
|
-
const worldEvent = rawData.worldEvent
|
|
34
|
+
const worldEvent = Array.isArray(rawData.worldEvent)
|
|
35
|
+
? rawData.worldEvent.map((_worldEvent) => WorldEvents[_worldEvent])
|
|
36
|
+
: WorldEvents[rawData.worldEvent];
|
|
33
37
|
const required = rawData.required ? new Map() : undefined;
|
|
34
38
|
if (required) {
|
|
35
39
|
for (const [requiredKey, quantity] of Object.entries(rawData.required)) {
|
|
@@ -37,7 +41,7 @@ export class Cosmetic {
|
|
|
37
41
|
required.set(Materials[requiredMaterial], quantity);
|
|
38
42
|
}
|
|
39
43
|
}
|
|
40
|
-
return new Cosmetic(rawData.id, rawData.type, rawData.dateAdded, rawData.lastUpdated, rawData.rarity ?? undefined, rawData.tier ?? undefined, rawData.set ? Sets[set] : undefined, rawData.obtainable ?? undefined, rawData.effect ?? undefined, rawData.season ? Seasons[season] : undefined, rawData.contract
|
|
44
|
+
return new Cosmetic(rawData.id, rawData.type, rawData.dateAdded, rawData.lastUpdated, rawData.rarity ?? undefined, rawData.tier ?? undefined, rawData.set ? Sets[set] : undefined, rawData.obtainable ?? undefined, rawData.effect ?? undefined, rawData.season ? Seasons[season] : undefined, rawData.contract ? Contracts[contract] : undefined, undefined, undefined, required, rawData.requiredRank ?? undefined, rawData.bounty ?? undefined, rawData.event ? Events[event] : undefined, worldEvent ?? undefined);
|
|
41
45
|
}
|
|
42
46
|
static updateCosmeticWithUpgrades(key, rawData, cosmetics) {
|
|
43
47
|
if (rawData.basic) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cosmetics.js","sourceRoot":"","sources":["../../src/daos/cosmetics.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,2BAA2B,CAAC;AAGtD,OAAO,EAAS,MAAM,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAY,SAAS,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAU,OAAO,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAO,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAc,WAAW,EAAE,MAAM,eAAe,CAAC;AAExD,MAAM,OAAO,QAAQ;IACjB,YACoB,EAAU,EACV,
|
|
1
|
+
{"version":3,"file":"cosmetics.js","sourceRoot":"","sources":["../../src/daos/cosmetics.ts"],"names":[],"mappings":"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"}
|
package/dist/daos/items.d.ts
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import itemsData from '../../data/items.json';
|
|
2
|
-
import { Tier } from '../types/ItemProperties';
|
|
2
|
+
import { FurnitureType, GeneralType, Tier, WeaponType } from '../types/ItemProperties';
|
|
3
3
|
import { Rarity } from '../types/Rarity';
|
|
4
|
+
import { Contract } from './contracts';
|
|
4
5
|
import { Event } from './events';
|
|
5
6
|
import { Material } from './materials';
|
|
6
7
|
import { Season } from './seasons';
|
|
7
8
|
import { WorldEvent } from './worldEvents';
|
|
8
9
|
export declare class Item {
|
|
9
10
|
readonly id: string;
|
|
10
|
-
readonly type:
|
|
11
|
+
readonly type: GeneralType | WeaponType | FurnitureType;
|
|
11
12
|
readonly dateAdded: Date;
|
|
12
13
|
readonly lastUpdated: Date;
|
|
13
14
|
readonly tier?: Tier | undefined;
|
|
@@ -28,11 +29,11 @@ export declare class Item {
|
|
|
28
29
|
readonly season?: Season | undefined;
|
|
29
30
|
readonly obtainable?: string | string[] | undefined;
|
|
30
31
|
readonly event?: Event | undefined;
|
|
31
|
-
readonly worldEvent?: WorldEvent | undefined;
|
|
32
|
+
readonly worldEvent?: (WorldEvent | WorldEvent[]) | undefined;
|
|
32
33
|
readonly armor?: number | undefined;
|
|
33
34
|
readonly damageMitigation?: Record<string, number> | undefined;
|
|
34
|
-
readonly contract?:
|
|
35
|
-
constructor(id: string, type:
|
|
35
|
+
readonly contract?: Contract | undefined;
|
|
36
|
+
constructor(id: string, type: GeneralType | WeaponType | FurnitureType, dateAdded: Date, lastUpdated: Date, tier?: Tier | undefined, blueprint?: string | undefined, value?: number | undefined, weight?: number | undefined, gearScore?: number | undefined, projectilesPerShot?: number | undefined, damagePerShot?: number | undefined, rateOfFire?: number | undefined, reloadSpeed?: number | undefined, optimalRange?: number | undefined, projectileSpeed?: number | undefined, required?: Map<Material, number> | undefined, requiredRank?: string | undefined, perks?: string[] | undefined, rarity?: Rarity | undefined, season?: Season | undefined, obtainable?: string | string[] | undefined, event?: Event | undefined, worldEvent?: (WorldEvent | WorldEvent[]) | undefined, armor?: number | undefined, damageMitigation?: Record<string, number> | undefined, contract?: Contract | undefined);
|
|
36
37
|
static fromRawData(rawData: any): Item;
|
|
37
38
|
static loadItems(): Record<string, Item>;
|
|
38
39
|
}
|
package/dist/daos/items.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"items.d.ts","sourceRoot":"","sources":["../../src/daos/items.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"items.d.ts","sourceRoot":"","sources":["../../src/daos/items.ts"],"names":[],"mappings":"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"}
|
package/dist/daos/items.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import itemsData from '../../data/items.json';
|
|
2
|
+
import { Contracts } from './contracts';
|
|
2
3
|
import { Events } from './events';
|
|
3
4
|
import { Materials } from './materials';
|
|
4
5
|
import { Seasons } from './seasons';
|
|
@@ -35,7 +36,10 @@ export class Item {
|
|
|
35
36
|
static fromRawData(rawData) {
|
|
36
37
|
const season = rawData.season;
|
|
37
38
|
const event = rawData.event;
|
|
38
|
-
const
|
|
39
|
+
const contract = rawData.contract;
|
|
40
|
+
const worldEvent = Array.isArray(rawData.worldEvent)
|
|
41
|
+
? rawData.worldEvent.map((_worldEvent) => WorldEvents[_worldEvent])
|
|
42
|
+
: WorldEvents[rawData.worldEvent];
|
|
39
43
|
const required = rawData.required ? new Map() : undefined;
|
|
40
44
|
if (required) {
|
|
41
45
|
for (const [requiredKey, quantity] of Object.entries(rawData.required)) {
|
|
@@ -43,7 +47,7 @@ export class Item {
|
|
|
43
47
|
required.set(Materials[requiredMaterial], quantity);
|
|
44
48
|
}
|
|
45
49
|
}
|
|
46
|
-
return new Item(rawData.id, rawData.type, new Date(rawData.dateAdded), new Date(rawData.lastUpdated), rawData.tier, rawData.blueprint ?? undefined, rawData.value ?? undefined, rawData.weight ?? undefined, rawData.gearScore ?? undefined, rawData.projectilesPerShot ?? undefined, rawData.damagePerShot ?? undefined, rawData.rateOfFire ?? undefined, rawData.reloadSpeed ?? undefined, rawData.optimalRange ?? undefined, rawData.projectileSpeed ?? undefined, required, rawData.requiredRank ?? undefined, rawData.perks ?? [], rawData.rarity ?? undefined, rawData.season ? Seasons[season] : undefined, rawData.obtainable ?? undefined, rawData.event ? Events[event] : undefined,
|
|
50
|
+
return new Item(rawData.id, rawData.type, new Date(rawData.dateAdded), new Date(rawData.lastUpdated), rawData.tier, rawData.blueprint ?? undefined, rawData.value ?? undefined, rawData.weight ?? undefined, rawData.gearScore ?? undefined, rawData.projectilesPerShot ?? undefined, rawData.damagePerShot ?? undefined, rawData.rateOfFire ?? undefined, rawData.reloadSpeed ?? undefined, rawData.optimalRange ?? undefined, rawData.projectileSpeed ?? undefined, required, rawData.requiredRank ?? undefined, rawData.perks ?? [], rawData.rarity ?? undefined, rawData.season ? Seasons[season] : undefined, rawData.obtainable ?? undefined, rawData.event ? Events[event] : undefined, worldEvent ?? undefined, rawData.armor ?? undefined, rawData.damageMitigation ?? undefined, rawData.contract ? Contracts[contract] : undefined);
|
|
47
51
|
}
|
|
48
52
|
static loadItems() {
|
|
49
53
|
const items = {};
|
package/dist/daos/items.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"items.js","sourceRoot":"","sources":["../../src/daos/items.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,uBAAuB,CAAC;AAG9C,OAAO,EAAS,MAAM,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAY,SAAS,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAU,OAAO,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAc,WAAW,EAAE,MAAM,eAAe,CAAC;AAExD,MAAM,OAAO,IAAI;IACb,YACoB,EAAU,EACV,
|
|
1
|
+
{"version":3,"file":"items.js","sourceRoot":"","sources":["../../src/daos/items.ts"],"names":[],"mappings":"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"}
|
package/dist/daos/ships.d.ts
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import shipsData from '../../data/ships.json';
|
|
2
2
|
import { ShipSize, SlotWithGunports } from '../types/ShipProperties';
|
|
3
|
+
import { Contract } from './contracts';
|
|
3
4
|
import { Material } from './materials';
|
|
4
5
|
import { Season } from './seasons';
|
|
5
6
|
export declare class Ship {
|
|
6
7
|
readonly id: string;
|
|
7
8
|
readonly size: ShipSize;
|
|
8
9
|
readonly type: string;
|
|
10
|
+
readonly contract: Contract | undefined;
|
|
9
11
|
readonly blueprint: string | string[] | undefined;
|
|
10
12
|
readonly season: Season | undefined;
|
|
11
13
|
readonly hitpoints: number;
|
|
@@ -37,7 +39,7 @@ export declare class Ship {
|
|
|
37
39
|
readonly perks: string[];
|
|
38
40
|
readonly dateAdded: Date;
|
|
39
41
|
readonly lastUpdated: Date;
|
|
40
|
-
constructor(id: string, size: ShipSize, type: string, blueprint: string | string[] | undefined, season: Season | undefined, hitpoints: number, braceStrength: number, braceStrengthRecovery: number, stamina: number | undefined, baseRank: number, requiredRank: string | undefined, contact: string | undefined, sailSpeed: {
|
|
42
|
+
constructor(id: string, size: ShipSize, type: string, contract: Contract | undefined, blueprint: string | string[] | undefined, season: Season | undefined, hitpoints: number, braceStrength: number, braceStrengthRecovery: number, stamina: number | undefined, baseRank: number, requiredRank: string | undefined, contact: string | undefined, sailSpeed: {
|
|
41
43
|
halfSail: number;
|
|
42
44
|
fullSail: number;
|
|
43
45
|
travelSail: number;
|
package/dist/daos/ships.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ships.d.ts","sourceRoot":"","sources":["../../src/daos/ships.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAa,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,MAAM,EAAW,MAAM,WAAW,CAAC;AAE5C,qBAAa,IAAI;aAEO,EAAE,EAAE,MAAM;aACV,IAAI,EAAE,QAAQ;aACd,IAAI,EAAE,MAAM;aACZ,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS;aACxC,MAAM,EAAE,MAAM,GAAG,SAAS;aAC1B,SAAS,EAAE,MAAM;aACjB,aAAa,EAAE,MAAM;aACrB,qBAAqB,EAAE,MAAM;aAC7B,OAAO,EAAE,MAAM,GAAG,SAAS;aAC3B,QAAQ,EAAE,MAAM;aAChB,YAAY,EAAE,MAAM,GAAG,SAAS;aAChC,OAAO,EAAE,MAAM,GAAG,SAAS;aAC3B,SAAS,EAAE;QACvB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;KACtB;aACe,KAAK,EAAE;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;KAC1B;aACe,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,SAAS;aAC3C,KAAK,EAAE;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,gBAAgB,CAAC;QAC/B,cAAc,CAAC,EAAE,gBAAgB,CAAC;QAClC,eAAe,CAAC,EAAE,gBAAgB,CAAC;QACnC,SAAS,CAAC,EAAE,gBAAgB,CAAC;QAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,SAAS,CAAC,EAAE,MAAM,CAAC;KACtB;aACe,KAAK,EAAE,MAAM,EAAE;aACf,SAAS,EAAE,IAAI;aACf,WAAW,EAAE,IAAI;
|
|
1
|
+
{"version":3,"file":"ships.d.ts","sourceRoot":"","sources":["../../src/daos/ships.ts"],"names":[],"mappings":"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"}
|
package/dist/daos/ships.js
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import shipsData from '../../data/ships.json';
|
|
2
|
+
import { Contracts } from './contracts';
|
|
2
3
|
import { Materials } from './materials';
|
|
3
4
|
import { Seasons } from './seasons';
|
|
4
5
|
export class Ship {
|
|
5
|
-
constructor(id, size, type, blueprint, season, hitpoints, braceStrength, braceStrengthRecovery, stamina, baseRank, requiredRank, contact, sailSpeed, cargo, required, slots, perks, dateAdded, lastUpdated) {
|
|
6
|
+
constructor(id, size, type, contract, blueprint, season, hitpoints, braceStrength, braceStrengthRecovery, stamina, baseRank, requiredRank, contact, sailSpeed, cargo, required, slots, perks, dateAdded, lastUpdated) {
|
|
6
7
|
this.id = id;
|
|
7
8
|
this.size = size;
|
|
8
9
|
this.type = type;
|
|
10
|
+
this.contract = contract;
|
|
9
11
|
this.blueprint = blueprint;
|
|
10
12
|
this.season = season;
|
|
11
13
|
this.hitpoints = hitpoints;
|
|
@@ -26,6 +28,7 @@ export class Ship {
|
|
|
26
28
|
// Static method to create a Ship instance from raw data
|
|
27
29
|
static fromRawData(rawData) {
|
|
28
30
|
const season = rawData.season;
|
|
31
|
+
const contract = rawData.contract;
|
|
29
32
|
const required = rawData.required ? new Map() : undefined;
|
|
30
33
|
if (required) {
|
|
31
34
|
for (const [requiredKey, quantity] of Object.entries(rawData.required)) {
|
|
@@ -33,7 +36,7 @@ export class Ship {
|
|
|
33
36
|
required.set(Materials[requiredMaterial], quantity);
|
|
34
37
|
}
|
|
35
38
|
}
|
|
36
|
-
return new Ship(rawData.id, rawData.size, rawData.type, rawData.blueprint ?? undefined, season ? Seasons[season] : undefined, rawData.hitpoints, rawData.braceStrength, rawData.braceStrengthRecovery, rawData.stamina ?? undefined, rawData.baseRank, rawData.requiredRank ?? undefined, rawData.contact ?? undefined, rawData.sailSpeed, rawData.cargo, required, {
|
|
39
|
+
return new Ship(rawData.id, rawData.size, rawData.type, rawData.contract ? Contracts[contract] : undefined, rawData.blueprint ?? undefined, season ? Seasons[season] : undefined, rawData.hitpoints, rawData.braceStrength, rawData.braceStrengthRecovery, rawData.stamina ?? undefined, rawData.baseRank, rawData.requiredRank ?? undefined, rawData.contact ?? undefined, rawData.sailSpeed, rawData.cargo, required, {
|
|
37
40
|
attachement: rawData.slots.attachement ?? undefined,
|
|
38
41
|
frontWeapon: rawData.slots.frontWeapon ?? undefined,
|
|
39
42
|
leftSideWeapon: rawData.slots.leftSideWeapon ?? undefined,
|
package/dist/daos/ships.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ships.js","sourceRoot":"","sources":["../../src/daos/ships.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,uBAAuB,CAAC;AAE9C,OAAO,EAAY,SAAS,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAU,OAAO,EAAE,MAAM,WAAW,CAAC;AAE5C,MAAM,OAAO,IAAI;IACb,YACoB,EAAU,EACV,IAAc,EACd,IAAY,EACZ,SAAwC,EACxC,MAA0B,EAC1B,SAAiB,EACjB,aAAqB,EACrB,qBAA6B,EAC7B,OAA2B,EAC3B,QAAgB,EAChB,YAAgC,EAChC,OAA2B,EAC3B,SAIf,EACe,KAGf,EACe,QAA2C,EAC3C,KAQf,EACe,KAAe,EACf,SAAe,EACf,WAAiB;
|
|
1
|
+
{"version":3,"file":"ships.js","sourceRoot":"","sources":["../../src/daos/ships.ts"],"names":[],"mappings":"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"}
|
package/dist/types/Category.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export type CommodityCategory = "localFaction" | "megacorp" | "kingpin" | "theHelm";
|
|
1
|
+
export type CommodityCategory = "localFaction" | "megacorp" | "kingpin" | "theHelm" | "event";
|
|
2
2
|
export type MaterialCategory = "raw" | "refined" | "specialized" | "exotic" | "helm" | "scrap" | "currency";
|
|
3
3
|
//# sourceMappingURL=Category.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Category.d.ts","sourceRoot":"","sources":["../../src/types/Category.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GAAG,cAAc,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"Category.d.ts","sourceRoot":"","sources":["../../src/types/Category.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GAAG,cAAc,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;AAE9F,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,SAAS,GAAG,aAAa,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,CAAC"}
|
|
@@ -1,2 +1,5 @@
|
|
|
1
1
|
export type Effect = "emissive" | "combatReactive" | "killReactive" | "bossKillReactive" | "animated";
|
|
2
|
+
export type ShipType = "sailsEmblem" | "sailsPattern" | "sailsColor" | "hull" | "crowsNest" | "trophy" | "wheel" | "helmDecor" | "ornaments" | "figureHead" | "nameplate" | "pet" | "crewLook" | "aura" | "shipSkin";
|
|
3
|
+
export type PlayerOutfitType = "headwear" | "faceAccessory" | "torso" | "neck" | "forearm" | "hand" | "waist" | "bottom" | "footwear" | "bodyCosmetics" | "emote";
|
|
4
|
+
export type PlayerAppearanceType = "hair" | "facialHair" | "eyeColor";
|
|
2
5
|
//# sourceMappingURL=CosmeticProperties.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CosmeticProperties.d.ts","sourceRoot":"","sources":["../../src/types/CosmeticProperties.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG,UAAU,GAAG,gBAAgB,GAAG,cAAc,GAAG,kBAAkB,GAAG,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"CosmeticProperties.d.ts","sourceRoot":"","sources":["../../src/types/CosmeticProperties.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG,UAAU,GAAG,gBAAgB,GAAG,cAAc,GAAG,kBAAkB,GAAG,UAAU,CAAC;AACtG,MAAM,MAAM,QAAQ,GAAG,aAAa,GAAG,cAAc,GAAG,YAAY,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,OAAO,GAAG,WAAW,GAAG,WAAW,GAAG,YAAY,GAAG,WAAW,GACnK,KAAK,GAAG,UAAU,GAAG,MAAM,GAAG,UAAU,CAAC;AAC/C,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,eAAe,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,GAAG,eAAe,GAAG,OAAO,CAAC;AAClK,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,YAAY,GAAG,UAAU,CAAC"}
|
|
@@ -1,2 +1,5 @@
|
|
|
1
1
|
export type Tier = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10;
|
|
2
|
+
export type GeneralType = "consumable" | "ammunition" | "armor" | "tool";
|
|
3
|
+
export type WeaponType = "culverin" | "longGun" | "demicannon" | "bombard" | "torpedo" | "ballista" | "seaFire" | "mortar" | "rocket" | "springloader";
|
|
4
|
+
export type FurnitureType = "offensiveFurniture" | "utilityFurniture" | "majorFurniture";
|
|
2
5
|
//# sourceMappingURL=ItemProperties.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ItemProperties.d.ts","sourceRoot":"","sources":["../../src/types/ItemProperties.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"ItemProperties.d.ts","sourceRoot":"","sources":["../../src/types/ItemProperties.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;AAC1D,MAAM,MAAM,WAAW,GAAG,YAAY,GAAG,YAAY,GAAG,OAAO,GAAG,MAAM,CAAC;AACzE,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,SAAS,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,cAAc,CAAC;AACvJ,MAAM,MAAM,aAAa,GAAG,oBAAoB,GAAG,kBAAkB,GAAG,gBAAgB,CAAC"}
|