@paintswap/estfor-definitions 0.1.30 → 0.1.35
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/.eslintrc.json +27 -27
- package/.github/workflows/publish_npm.yml +18 -0
- package/.prettierrc +6 -6
- package/LICENSE +21 -21
- package/README.md +135 -135
- package/asconfig.json +17 -17
- package/constants.d.ts +647 -647
- package/constants.js +719 -719
- package/index.d.ts +4 -4
- package/index.js +9 -9
- package/package.json +47 -47
- package/src/constants.ts +745 -745
- package/src/index.ts +5 -5
- package/src/types.ts +463 -452
- package/src/whitelisted_admins.ts +13 -13
- package/src/whitelisted_alpha_snapshot.ts +5484 -5484
- package/tsconfig.json +9 -9
- package/types.d.ts +406 -396
- package/types.d.ts.map +1 -1
- package/types.js +457 -446
- package/whitelisted_admins.d.ts +2 -2
- package/whitelisted_admins.js +16 -16
- package/whitelisted_alpha_snapshot.d.ts +2 -2
- package/whitelisted_alpha_snapshot.d.ts.map +1 -1
- package/whitelisted_alpha_snapshot.js +5487 -5487
package/src/types.ts
CHANGED
|
@@ -1,452 +1,463 @@
|
|
|
1
|
-
export enum BoostType {
|
|
2
|
-
NONE,
|
|
3
|
-
ANY_XP,
|
|
4
|
-
COMBAT_XP,
|
|
5
|
-
NON_COMBAT_XP,
|
|
6
|
-
GATHERING,
|
|
7
|
-
ABSENCE,
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export enum Skill {
|
|
11
|
-
NONE,
|
|
12
|
-
COMBAT,
|
|
13
|
-
MELEE,
|
|
14
|
-
RANGE,
|
|
15
|
-
MAGIC,
|
|
16
|
-
DEFENCE,
|
|
17
|
-
HEALTH,
|
|
18
|
-
MINING,
|
|
19
|
-
WOODCUTTING,
|
|
20
|
-
FISHING,
|
|
21
|
-
SMITHING,
|
|
22
|
-
THIEVING,
|
|
23
|
-
CRAFTING,
|
|
24
|
-
COOKING,
|
|
25
|
-
FIREMAKING,
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export enum EquipPosition {
|
|
29
|
-
NONE,
|
|
30
|
-
HEAD,
|
|
31
|
-
NECK,
|
|
32
|
-
BODY,
|
|
33
|
-
ARMS,
|
|
34
|
-
LEGS,
|
|
35
|
-
FEET,
|
|
36
|
-
SPARE1,
|
|
37
|
-
SPARE2,
|
|
38
|
-
LEFT_HAND,
|
|
39
|
-
RIGHT_HAND,
|
|
40
|
-
BOTH_HANDS,
|
|
41
|
-
ARROW_SATCHEL,
|
|
42
|
-
MAGIC_BAG,
|
|
43
|
-
FOOD,
|
|
44
|
-
AUX, // wood, seeds etc..
|
|
45
|
-
BOOST_VIAL,
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
export class Attire {
|
|
49
|
-
head: u16 = 0
|
|
50
|
-
neck: u16 = 0
|
|
51
|
-
body: u16 = 0
|
|
52
|
-
arms: u16 = 0
|
|
53
|
-
legs: u16 = 0
|
|
54
|
-
feet: u16 = 0
|
|
55
|
-
ring: u16 = 0
|
|
56
|
-
reserved1: u16 = 0
|
|
57
|
-
queueId: u64 = 0
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
export enum ActionQueueStatus {
|
|
61
|
-
NONE,
|
|
62
|
-
APPEND,
|
|
63
|
-
KEEP_LAST_IN_PROGRESS,
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
export enum CombatStyle {
|
|
67
|
-
NONE,
|
|
68
|
-
ATTACK,
|
|
69
|
-
DEFENCE,
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
export class Equipment {
|
|
73
|
-
itemTokenId: u16 = 0
|
|
74
|
-
amount: u16 = 0
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
export class QueuedActionInput {
|
|
78
|
-
attire: Attire = new Attire()
|
|
79
|
-
actionId: u32 = 0
|
|
80
|
-
regenerateId: u16 = 0 // Food (combat), maybe something for non-combat later
|
|
81
|
-
choiceId: u32 = 0 // Melee/Arrow/Magic (combat), logs, ore (non-combat)
|
|
82
|
-
choiceId1: u32 = 0 // Reserved (TBD)
|
|
83
|
-
choiceId2: u32 = 0 // Reserved (TBD)
|
|
84
|
-
combatStyle: CombatStyle = CombatStyle.NONE
|
|
85
|
-
timespan: u32 = 0 // How long to queue the action for
|
|
86
|
-
rightHandEquipmentTokenId: u16 = 0
|
|
87
|
-
leftHandEquipmentTokenId: u16 = 0
|
|
88
|
-
skill: Skill = Skill.NONE
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
export class ActionInfo {
|
|
92
|
-
skill: Skill = Skill.NONE
|
|
93
|
-
isAvailable: boolean = true
|
|
94
|
-
isDynamic: boolean = false
|
|
95
|
-
actionChoiceRequired: boolean = false
|
|
96
|
-
xpPerHour: u32 = 0
|
|
97
|
-
numSpawned: u32 = 0
|
|
98
|
-
minXP: u32 = 0
|
|
99
|
-
handItemTokenIdRangeMin: u16 = 0
|
|
100
|
-
handItemTokenIdRangeMax: u16 = 0
|
|
101
|
-
successPercent: u8 = 0
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
export class GuaranteedReward {
|
|
105
|
-
itemTokenId: u16 = 0
|
|
106
|
-
rate: u32 = 0 // base 100, 2 decimal places
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
export class RandomReward {
|
|
110
|
-
itemTokenId: i32 = 0
|
|
111
|
-
chance: u16 = 0 // out of 65335
|
|
112
|
-
amount: u8 = 0
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
export class ActionInput {
|
|
116
|
-
actionId: u32 = 0
|
|
117
|
-
info: ActionInfo = new ActionInfo()
|
|
118
|
-
guaranteedRewards: GuaranteedReward[] = []
|
|
119
|
-
randomRewards: RandomReward[] = []
|
|
120
|
-
combatStats: CombatStats = new CombatStats()
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
// Contains everything you need to create an item
|
|
124
|
-
export class InputItem {
|
|
125
|
-
combatStats: CombatStats = new CombatStats()
|
|
126
|
-
nonCombatStats: NonCombatStats = new NonCombatStats()
|
|
127
|
-
tokenId: u16 = 0
|
|
128
|
-
equipPosition: EquipPosition = EquipPosition.NONE
|
|
129
|
-
// Can this be transferred to another player?
|
|
130
|
-
isTransferable: boolean = true
|
|
131
|
-
// Minimum requirements in this skill
|
|
132
|
-
skill: Skill = Skill.NONE
|
|
133
|
-
minXP: u32 = 0
|
|
134
|
-
// Food
|
|
135
|
-
healthRestored: u32 = 0
|
|
136
|
-
// Boost
|
|
137
|
-
boostType: BoostType = BoostType.NONE
|
|
138
|
-
boostValue: u16 = 0 // Varies, could be the % increase
|
|
139
|
-
boostDuration: u32 = 0 // How long the effect of the boost last
|
|
140
|
-
// uri
|
|
141
|
-
metadataURI: string = ''
|
|
142
|
-
// name of the item
|
|
143
|
-
name: string = ''
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
export class CombatStats {
|
|
147
|
-
melee: i16 = 0
|
|
148
|
-
magic: i16 = 0
|
|
149
|
-
range: i16 = 0
|
|
150
|
-
meleeDefence: i16 = 0
|
|
151
|
-
magicDefence: i16 = 0
|
|
152
|
-
rangeDefence: i16 = 0
|
|
153
|
-
health: i16 = 0
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
export class NonCombatStats {
|
|
157
|
-
skill: Skill = Skill.NONE
|
|
158
|
-
diff: u32 = 0
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
export const emptyCombatStats = new CombatStats()
|
|
162
|
-
export const emptyNonCombatStats = new NonCombatStats()
|
|
163
|
-
export const defaultInputItem = new InputItem()
|
|
164
|
-
export const noAttire = new Attire()
|
|
165
|
-
|
|
166
|
-
export class PendingOutput {
|
|
167
|
-
consumed: Equipment[] = []
|
|
168
|
-
produced: Equipment[] = []
|
|
169
|
-
producedPastRandomRewards: Equipment[] = []
|
|
170
|
-
producedXPRewards: Equipment[] = []
|
|
171
|
-
xpGained: u32 = 0
|
|
172
|
-
died: boolean = false
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
export class PendingFlags {
|
|
176
|
-
includeLoot: boolean = true // Guaranteed loot from actions, and random loot if claiming quite late
|
|
177
|
-
includePastRandomRewards: boolean = true // This is random loot from previous actions
|
|
178
|
-
includeXPRewards: boolean = true // Passing any xp thresholds gives you extra rewards
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
export class XPThresholdRewardInput {
|
|
182
|
-
xpThreshold: i32 = 0
|
|
183
|
-
equipments: Equipment[] = []
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
export class XPThresholdReward {
|
|
187
|
-
id: string = '' // XP for the reward
|
|
188
|
-
xp: string = '' // same as id
|
|
189
|
-
rewardItemAmounts: string[] = []
|
|
190
|
-
rewardItemTokenIds: string[] = []
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
export class Player {
|
|
194
|
-
id: string = '0'
|
|
195
|
-
tokenId: string = '0'
|
|
196
|
-
avatarId: string = '1'
|
|
197
|
-
owner: string = ''
|
|
198
|
-
name: string = ''
|
|
199
|
-
lastTimestamp: string = '0'
|
|
200
|
-
mintedNumber: string = '0' // Will be unique, use for sorting
|
|
201
|
-
mintedTimestamp: string = '0'
|
|
202
|
-
isActive: boolean = false // Is this player the active one for the owner
|
|
203
|
-
numActivities: u32 = 0 // Not used yet
|
|
204
|
-
pendingRandomRewards: string[] = [] // Timestamps for any rewards which are waiting on the next seed
|
|
205
|
-
speedMultiplier: u32 = 1
|
|
206
|
-
|
|
207
|
-
/* Action XP */
|
|
208
|
-
woodcuttingXP: string = '0'
|
|
209
|
-
firemakingXP: string = '0'
|
|
210
|
-
fishingXP: string = '0'
|
|
211
|
-
cookingXP: string = '0'
|
|
212
|
-
miningXP: string = '0'
|
|
213
|
-
smithingXP: string = '0'
|
|
214
|
-
craftingXP: string = '0'
|
|
215
|
-
thievingXP: string = '0'
|
|
216
|
-
totalXP: string = '0'
|
|
217
|
-
|
|
218
|
-
/* Combat XP */
|
|
219
|
-
healthXP: string = '0'
|
|
220
|
-
meleeXP: string = '0'
|
|
221
|
-
defenceXP: string = '0'
|
|
222
|
-
magicXP: string = '0'
|
|
223
|
-
rangeXP: string = '0'
|
|
224
|
-
|
|
225
|
-
/** Ranks */
|
|
226
|
-
woodcuttingRank: u32 = 0
|
|
227
|
-
firemakingRank: u32 = 0
|
|
228
|
-
fishingRank: u32 = 0
|
|
229
|
-
cookingRank: u32 = 0
|
|
230
|
-
miningRank: u32 = 0
|
|
231
|
-
smithingRank: u32 = 0
|
|
232
|
-
craftingRank: u32 = 0
|
|
233
|
-
thievingRank: u32 = 0
|
|
234
|
-
meleeRank: u32 = 0
|
|
235
|
-
magicRank: u32 = 0
|
|
236
|
-
rangeRank: u32 = 0
|
|
237
|
-
defenceRank: u32 = 0
|
|
238
|
-
healthRank: u32 = 0
|
|
239
|
-
combinedRank: u32 = 0
|
|
240
|
-
|
|
241
|
-
/* Boost */
|
|
242
|
-
boostStartTime: u64 = 0
|
|
243
|
-
boostDuration: u32 = 0
|
|
244
|
-
boostVal: u8 = 0
|
|
245
|
-
boostType: BoostType
|
|
246
|
-
boostItemTokenId: u16 = 0
|
|
247
|
-
}
|
|
248
|
-
|
|
249
|
-
export class User {
|
|
250
|
-
id: string = '0'
|
|
251
|
-
totalSold: string = '0'
|
|
252
|
-
totalBought: string = '0'
|
|
253
|
-
numPlayers: u32 = 0
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
export class GlobalPlayerStats {
|
|
257
|
-
totalPlayers: string = '0'
|
|
258
|
-
}
|
|
259
|
-
|
|
260
|
-
export enum ActivityType {
|
|
261
|
-
Buy,
|
|
262
|
-
Sell,
|
|
263
|
-
ActionPartiallyFinished,
|
|
264
|
-
ActionFinished,
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
1
|
+
export enum BoostType {
|
|
2
|
+
NONE,
|
|
3
|
+
ANY_XP,
|
|
4
|
+
COMBAT_XP,
|
|
5
|
+
NON_COMBAT_XP,
|
|
6
|
+
GATHERING,
|
|
7
|
+
ABSENCE,
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export enum Skill {
|
|
11
|
+
NONE,
|
|
12
|
+
COMBAT,
|
|
13
|
+
MELEE,
|
|
14
|
+
RANGE,
|
|
15
|
+
MAGIC,
|
|
16
|
+
DEFENCE,
|
|
17
|
+
HEALTH,
|
|
18
|
+
MINING,
|
|
19
|
+
WOODCUTTING,
|
|
20
|
+
FISHING,
|
|
21
|
+
SMITHING,
|
|
22
|
+
THIEVING,
|
|
23
|
+
CRAFTING,
|
|
24
|
+
COOKING,
|
|
25
|
+
FIREMAKING,
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export enum EquipPosition {
|
|
29
|
+
NONE,
|
|
30
|
+
HEAD,
|
|
31
|
+
NECK,
|
|
32
|
+
BODY,
|
|
33
|
+
ARMS,
|
|
34
|
+
LEGS,
|
|
35
|
+
FEET,
|
|
36
|
+
SPARE1,
|
|
37
|
+
SPARE2,
|
|
38
|
+
LEFT_HAND,
|
|
39
|
+
RIGHT_HAND,
|
|
40
|
+
BOTH_HANDS,
|
|
41
|
+
ARROW_SATCHEL,
|
|
42
|
+
MAGIC_BAG,
|
|
43
|
+
FOOD,
|
|
44
|
+
AUX, // wood, seeds etc..
|
|
45
|
+
BOOST_VIAL,
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export class Attire {
|
|
49
|
+
head: u16 = 0
|
|
50
|
+
neck: u16 = 0
|
|
51
|
+
body: u16 = 0
|
|
52
|
+
arms: u16 = 0
|
|
53
|
+
legs: u16 = 0
|
|
54
|
+
feet: u16 = 0
|
|
55
|
+
ring: u16 = 0
|
|
56
|
+
reserved1: u16 = 0
|
|
57
|
+
queueId: u64 = 0
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export enum ActionQueueStatus {
|
|
61
|
+
NONE,
|
|
62
|
+
APPEND,
|
|
63
|
+
KEEP_LAST_IN_PROGRESS,
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export enum CombatStyle {
|
|
67
|
+
NONE,
|
|
68
|
+
ATTACK,
|
|
69
|
+
DEFENCE,
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export class Equipment {
|
|
73
|
+
itemTokenId: u16 = 0
|
|
74
|
+
amount: u16 = 0
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
export class QueuedActionInput {
|
|
78
|
+
attire: Attire = new Attire()
|
|
79
|
+
actionId: u32 = 0
|
|
80
|
+
regenerateId: u16 = 0 // Food (combat), maybe something for non-combat later
|
|
81
|
+
choiceId: u32 = 0 // Melee/Arrow/Magic (combat), logs, ore (non-combat)
|
|
82
|
+
choiceId1: u32 = 0 // Reserved (TBD)
|
|
83
|
+
choiceId2: u32 = 0 // Reserved (TBD)
|
|
84
|
+
combatStyle: CombatStyle = CombatStyle.NONE
|
|
85
|
+
timespan: u32 = 0 // How long to queue the action for
|
|
86
|
+
rightHandEquipmentTokenId: u16 = 0
|
|
87
|
+
leftHandEquipmentTokenId: u16 = 0
|
|
88
|
+
skill: Skill = Skill.NONE
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
export class ActionInfo {
|
|
92
|
+
skill: Skill = Skill.NONE
|
|
93
|
+
isAvailable: boolean = true
|
|
94
|
+
isDynamic: boolean = false
|
|
95
|
+
actionChoiceRequired: boolean = false
|
|
96
|
+
xpPerHour: u32 = 0
|
|
97
|
+
numSpawned: u32 = 0
|
|
98
|
+
minXP: u32 = 0
|
|
99
|
+
handItemTokenIdRangeMin: u16 = 0
|
|
100
|
+
handItemTokenIdRangeMax: u16 = 0
|
|
101
|
+
successPercent: u8 = 0
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
export class GuaranteedReward {
|
|
105
|
+
itemTokenId: u16 = 0
|
|
106
|
+
rate: u32 = 0 // base 100, 2 decimal places
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
export class RandomReward {
|
|
110
|
+
itemTokenId: i32 = 0
|
|
111
|
+
chance: u16 = 0 // out of 65335
|
|
112
|
+
amount: u8 = 0
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
export class ActionInput {
|
|
116
|
+
actionId: u32 = 0
|
|
117
|
+
info: ActionInfo = new ActionInfo()
|
|
118
|
+
guaranteedRewards: GuaranteedReward[] = []
|
|
119
|
+
randomRewards: RandomReward[] = []
|
|
120
|
+
combatStats: CombatStats = new CombatStats()
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
// Contains everything you need to create an item
|
|
124
|
+
export class InputItem {
|
|
125
|
+
combatStats: CombatStats = new CombatStats()
|
|
126
|
+
nonCombatStats: NonCombatStats = new NonCombatStats()
|
|
127
|
+
tokenId: u16 = 0
|
|
128
|
+
equipPosition: EquipPosition = EquipPosition.NONE
|
|
129
|
+
// Can this be transferred to another player?
|
|
130
|
+
isTransferable: boolean = true
|
|
131
|
+
// Minimum requirements in this skill
|
|
132
|
+
skill: Skill = Skill.NONE
|
|
133
|
+
minXP: u32 = 0
|
|
134
|
+
// Food
|
|
135
|
+
healthRestored: u32 = 0
|
|
136
|
+
// Boost
|
|
137
|
+
boostType: BoostType = BoostType.NONE
|
|
138
|
+
boostValue: u16 = 0 // Varies, could be the % increase
|
|
139
|
+
boostDuration: u32 = 0 // How long the effect of the boost last
|
|
140
|
+
// uri
|
|
141
|
+
metadataURI: string = ''
|
|
142
|
+
// name of the item
|
|
143
|
+
name: string = ''
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
export class CombatStats {
|
|
147
|
+
melee: i16 = 0
|
|
148
|
+
magic: i16 = 0
|
|
149
|
+
range: i16 = 0
|
|
150
|
+
meleeDefence: i16 = 0
|
|
151
|
+
magicDefence: i16 = 0
|
|
152
|
+
rangeDefence: i16 = 0
|
|
153
|
+
health: i16 = 0
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
export class NonCombatStats {
|
|
157
|
+
skill: Skill = Skill.NONE
|
|
158
|
+
diff: u32 = 0
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
export const emptyCombatStats = new CombatStats()
|
|
162
|
+
export const emptyNonCombatStats = new NonCombatStats()
|
|
163
|
+
export const defaultInputItem = new InputItem()
|
|
164
|
+
export const noAttire = new Attire()
|
|
165
|
+
|
|
166
|
+
export class PendingOutput {
|
|
167
|
+
consumed: Equipment[] = []
|
|
168
|
+
produced: Equipment[] = []
|
|
169
|
+
producedPastRandomRewards: Equipment[] = []
|
|
170
|
+
producedXPRewards: Equipment[] = []
|
|
171
|
+
xpGained: u32 = 0
|
|
172
|
+
died: boolean = false
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
export class PendingFlags {
|
|
176
|
+
includeLoot: boolean = true // Guaranteed loot from actions, and random loot if claiming quite late
|
|
177
|
+
includePastRandomRewards: boolean = true // This is random loot from previous actions
|
|
178
|
+
includeXPRewards: boolean = true // Passing any xp thresholds gives you extra rewards
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
export class XPThresholdRewardInput {
|
|
182
|
+
xpThreshold: i32 = 0
|
|
183
|
+
equipments: Equipment[] = []
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
export class XPThresholdReward {
|
|
187
|
+
id: string = '' // XP for the reward
|
|
188
|
+
xp: string = '' // same as id
|
|
189
|
+
rewardItemAmounts: string[] = []
|
|
190
|
+
rewardItemTokenIds: string[] = []
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
export class Player {
|
|
194
|
+
id: string = '0'
|
|
195
|
+
tokenId: string = '0'
|
|
196
|
+
avatarId: string = '1'
|
|
197
|
+
owner: string = ''
|
|
198
|
+
name: string = ''
|
|
199
|
+
lastTimestamp: string = '0'
|
|
200
|
+
mintedNumber: string = '0' // Will be unique, use for sorting
|
|
201
|
+
mintedTimestamp: string = '0'
|
|
202
|
+
isActive: boolean = false // Is this player the active one for the owner
|
|
203
|
+
numActivities: u32 = 0 // Not used yet
|
|
204
|
+
pendingRandomRewards: string[] = [] // Timestamps for any rewards which are waiting on the next seed
|
|
205
|
+
speedMultiplier: u32 = 1
|
|
206
|
+
|
|
207
|
+
/* Action XP */
|
|
208
|
+
woodcuttingXP: string = '0'
|
|
209
|
+
firemakingXP: string = '0'
|
|
210
|
+
fishingXP: string = '0'
|
|
211
|
+
cookingXP: string = '0'
|
|
212
|
+
miningXP: string = '0'
|
|
213
|
+
smithingXP: string = '0'
|
|
214
|
+
craftingXP: string = '0'
|
|
215
|
+
thievingXP: string = '0'
|
|
216
|
+
totalXP: string = '0'
|
|
217
|
+
|
|
218
|
+
/* Combat XP */
|
|
219
|
+
healthXP: string = '0'
|
|
220
|
+
meleeXP: string = '0'
|
|
221
|
+
defenceXP: string = '0'
|
|
222
|
+
magicXP: string = '0'
|
|
223
|
+
rangeXP: string = '0'
|
|
224
|
+
|
|
225
|
+
/** Ranks */
|
|
226
|
+
woodcuttingRank: u32 = 0
|
|
227
|
+
firemakingRank: u32 = 0
|
|
228
|
+
fishingRank: u32 = 0
|
|
229
|
+
cookingRank: u32 = 0
|
|
230
|
+
miningRank: u32 = 0
|
|
231
|
+
smithingRank: u32 = 0
|
|
232
|
+
craftingRank: u32 = 0
|
|
233
|
+
thievingRank: u32 = 0
|
|
234
|
+
meleeRank: u32 = 0
|
|
235
|
+
magicRank: u32 = 0
|
|
236
|
+
rangeRank: u32 = 0
|
|
237
|
+
defenceRank: u32 = 0
|
|
238
|
+
healthRank: u32 = 0
|
|
239
|
+
combinedRank: u32 = 0
|
|
240
|
+
|
|
241
|
+
/* Boost */
|
|
242
|
+
boostStartTime: u64 = 0
|
|
243
|
+
boostDuration: u32 = 0
|
|
244
|
+
boostVal: u8 = 0
|
|
245
|
+
boostType: BoostType
|
|
246
|
+
boostItemTokenId: u16 = 0
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
export class User {
|
|
250
|
+
id: string = '0'
|
|
251
|
+
totalSold: string = '0'
|
|
252
|
+
totalBought: string = '0'
|
|
253
|
+
numPlayers: u32 = 0
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
export class GlobalPlayerStats {
|
|
257
|
+
totalPlayers: string = '0'
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
export enum ActivityType {
|
|
261
|
+
Buy,
|
|
262
|
+
Sell,
|
|
263
|
+
ActionPartiallyFinished,
|
|
264
|
+
ActionFinished,
|
|
265
|
+
XPThresholdReward,
|
|
266
|
+
DailyReward,
|
|
267
|
+
WeeklyReward,
|
|
268
|
+
PendingRandomRewardsClaimed,
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
export enum Direction {
|
|
272
|
+
Consumed,
|
|
273
|
+
Produced,
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
export enum ActivityUndertaker {
|
|
277
|
+
Player,
|
|
278
|
+
User,
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
export class Activity {
|
|
282
|
+
id: string = ''
|
|
283
|
+
type: string = '' // ActivityType
|
|
284
|
+
itemTokenIds: u16[] = []
|
|
285
|
+
amounts: string[] = []
|
|
286
|
+
directions: string[] = [] // Direction
|
|
287
|
+
prices: string[] = []
|
|
288
|
+
actionId: string = ''
|
|
289
|
+
queueId: string = ''
|
|
290
|
+
timestamp: string = ''
|
|
291
|
+
hash: string = ''
|
|
292
|
+
playerId: string = '0'
|
|
293
|
+
user: string = ''
|
|
294
|
+
undertaker: string = '' // ActivityUndertaker
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
export class ActivityInfo {
|
|
298
|
+
id: string = ''
|
|
299
|
+
numActivities: string = ''
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
export class LastFullEquipment {
|
|
303
|
+
id: string = '0' // playerId
|
|
304
|
+
playerId: string = '0'
|
|
305
|
+
user: string = ''
|
|
306
|
+
actionId: u32 = 0
|
|
307
|
+
regenerateId: u16 = 0
|
|
308
|
+
choiceId: u32 = 0
|
|
309
|
+
choiceId1: u32 = 0
|
|
310
|
+
choiceId2: u32 = 0
|
|
311
|
+
rightHandEquipmentTokenId: u16 = 0
|
|
312
|
+
leftHandEquipmentTokenId: u16 = 0
|
|
313
|
+
startTime: string = ''
|
|
314
|
+
timespan: u32 = 0
|
|
315
|
+
isValid: boolean = true
|
|
316
|
+
skill: Skill = Skill.NONE
|
|
317
|
+
|
|
318
|
+
headEquipped: u16 = 0
|
|
319
|
+
neckEquipped: u16 = 0
|
|
320
|
+
bodyEquipped: u16 = 0
|
|
321
|
+
armsEquipped: u16 = 0
|
|
322
|
+
legsEquipped: u16 = 0
|
|
323
|
+
feetEquipped: u16 = 0
|
|
324
|
+
ringEquipped: u16 = 0
|
|
325
|
+
timestamp: string = '0'
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
export class QueuedAction {
|
|
329
|
+
id: string = '' // queueId
|
|
330
|
+
actionId: u32 = 0
|
|
331
|
+
playerId: string = ''
|
|
332
|
+
regenerateId: u16 = 0
|
|
333
|
+
choiceId: u32 = 0
|
|
334
|
+
choiceId1: u32 = 0
|
|
335
|
+
choiceId2: u32 = 0
|
|
336
|
+
rightHandEquipmentTokenId: u16 = 0
|
|
337
|
+
leftHandEquipmentTokenId: u16 = 0
|
|
338
|
+
startTime: string = ''
|
|
339
|
+
timespan: u32 = 0
|
|
340
|
+
originalStartTime: string = ''
|
|
341
|
+
originalTimespan: u32 = 0
|
|
342
|
+
isValid: boolean = true
|
|
343
|
+
skill: Skill = Skill.NONE
|
|
344
|
+
combatStyle: CombatStyle = CombatStyle.NONE
|
|
345
|
+
|
|
346
|
+
headEquipped: u16 = 0
|
|
347
|
+
neckEquipped: u16 = 0
|
|
348
|
+
bodyEquipped: u16 = 0
|
|
349
|
+
armsEquipped: u16 = 0
|
|
350
|
+
legsEquipped: u16 = 0
|
|
351
|
+
feetEquipped: u16 = 0
|
|
352
|
+
ringEquipped: u16 = 0
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
export class Item {
|
|
356
|
+
id: string = '0'
|
|
357
|
+
tokenId: u16 = 0
|
|
358
|
+
melee: i16 = 0
|
|
359
|
+
magic: i16 = 0
|
|
360
|
+
range: i16 = 0
|
|
361
|
+
meleeDefence: i16 = 0
|
|
362
|
+
magicDefence: i16 = 0
|
|
363
|
+
rangeDefence: i16 = 0
|
|
364
|
+
health: i16 = 0
|
|
365
|
+
totalQuantity: string = '0'
|
|
366
|
+
equipPosition: u16 = 0
|
|
367
|
+
healthRestored: u32 = 0
|
|
368
|
+
skill1: Skill = Skill.NONE
|
|
369
|
+
skillDiff1: u8 = 0
|
|
370
|
+
boostType: BoostType = BoostType.NONE
|
|
371
|
+
boostValue: u16 = 0
|
|
372
|
+
boostDuration: u32 = 0
|
|
373
|
+
// Minimum requirements for equipping
|
|
374
|
+
skill: Skill = Skill.NONE
|
|
375
|
+
minXP: string = '0'
|
|
376
|
+
name: string = ''
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
export class UserItemNFT {
|
|
380
|
+
id: string = ''
|
|
381
|
+
user: string = ''
|
|
382
|
+
tokenId: u16 = 0
|
|
383
|
+
amount: string = ''
|
|
384
|
+
item: Item = new Item()
|
|
385
|
+
}
|
|
386
|
+
|
|
387
|
+
export class ShopItem {
|
|
388
|
+
id: string = ''
|
|
389
|
+
tokenId: u16 = 0
|
|
390
|
+
price: string = '0'
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
export class ActionChoiceInput {
|
|
394
|
+
skill: Skill = Skill.NONE
|
|
395
|
+
diff: u32 = 0
|
|
396
|
+
rate: u16 = 0
|
|
397
|
+
xpPerHour: u32 = 0
|
|
398
|
+
minXP: u32 = 0
|
|
399
|
+
inputTokenId1: u16 = 0
|
|
400
|
+
num1: u16 = 0
|
|
401
|
+
inputTokenId2: u16 = 0
|
|
402
|
+
num2: u16 = 0
|
|
403
|
+
inputTokenId3: u16 = 0
|
|
404
|
+
num3: u16 = 0
|
|
405
|
+
outputTokenId: u16 = 0
|
|
406
|
+
outputNum: u8 = 1
|
|
407
|
+
successPercent: u8 = 100
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
export class ActionChoice {
|
|
411
|
+
id: string = ''
|
|
412
|
+
actionId: u32 = 0
|
|
413
|
+
skill: Skill = Skill.NONE
|
|
414
|
+
diff: u32 = 0
|
|
415
|
+
rate: u16 = 0
|
|
416
|
+
xpPerHour: u32 = 0
|
|
417
|
+
minXP: u32 = 0
|
|
418
|
+
inputTokenId1: u16 = 0
|
|
419
|
+
num1: u16 = 0
|
|
420
|
+
inputTokenId2: u16 = 0
|
|
421
|
+
num2: u16 = 0
|
|
422
|
+
inputTokenId3: u16 = 0
|
|
423
|
+
num3: u16 = 0
|
|
424
|
+
outputTokenId: u16 = 0
|
|
425
|
+
outputNum: u8 = 1
|
|
426
|
+
successPercent: u8 = 100
|
|
427
|
+
}
|
|
428
|
+
|
|
429
|
+
export class Action {
|
|
430
|
+
id: string = ''
|
|
431
|
+
actionId: u32 = 0
|
|
432
|
+
skill: Skill = Skill.NONE
|
|
433
|
+
xpPerHour: u32 = 0
|
|
434
|
+
numSpawned: u32 = 0
|
|
435
|
+
minXP: string = '0'
|
|
436
|
+
|
|
437
|
+
guaranteedRewardItemTokenIds: u32[] = []
|
|
438
|
+
guaranteedRewardRates: u32[] = []
|
|
439
|
+
randomChanceItemTokenIds: u32[] = []
|
|
440
|
+
randomChanceRates: u32[] = []
|
|
441
|
+
|
|
442
|
+
handItemTokenIdRangeMin: u32 = 0
|
|
443
|
+
handItemTokenIdRangeMax: u32 = 0
|
|
444
|
+
isAvailable: boolean = false
|
|
445
|
+
isDynamic: boolean = false
|
|
446
|
+
actionChoiceRequired: boolean = false
|
|
447
|
+
successPercent: i8 = 100
|
|
448
|
+
|
|
449
|
+
/* Combat Stats */
|
|
450
|
+
melee: i16 = 0
|
|
451
|
+
magic: i16 = 0
|
|
452
|
+
range: i16 = 0
|
|
453
|
+
rangeDefence: i16 = 0
|
|
454
|
+
meleeDefence: i16 = 0
|
|
455
|
+
magicDefence: i16 = 0
|
|
456
|
+
health: i16 = 0
|
|
457
|
+
}
|
|
458
|
+
|
|
459
|
+
export class RandomWords {
|
|
460
|
+
lastRequestedTimestamp: string = ''
|
|
461
|
+
lastRandomWordsReceived: string = '' // Bytes
|
|
462
|
+
hasLastRequestedRandomWordsBeenReceived: boolean = false
|
|
463
|
+
}
|