@paintswap/estfor-definitions 0.1.23 → 0.1.25

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/src/types.ts CHANGED
@@ -32,7 +32,7 @@ export enum EquipPosition {
32
32
  BODY,
33
33
  ARMS,
34
34
  LEGS,
35
- BOOTS,
35
+ FEET,
36
36
  SPARE1,
37
37
  SPARE2,
38
38
  LEFT_HAND,
@@ -43,19 +43,18 @@ export enum EquipPosition {
43
43
  FOOD,
44
44
  AUX, // wood, seeds etc..
45
45
  BOOST_VIAL,
46
- NO_POSITION,
47
46
  }
48
47
 
49
48
  export class Attire {
50
- head: i32 = 0
51
- neck: i32 = 0
52
- body: i32 = 0
53
- arms: i32 = 0
54
- legs: i32 = 0
55
- boots: i32 = 0
56
- ring: i32 = 0
57
- reserved1: i32 = 0
58
- queueId: i64 = 0
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
59
58
  }
60
59
 
61
60
  export enum ActionQueueStatus {
@@ -66,32 +65,27 @@ export enum ActionQueueStatus {
66
65
 
67
66
  export enum CombatStyle {
68
67
  NONE,
69
- MELEE,
70
- RANGE,
71
- MAGIC,
72
- MELEE_DEFENCE,
73
- RANGE_DEFENCE,
74
- MAGIC_DEFENCE,
68
+ ATTACK,
69
+ DEFENCE,
75
70
  }
76
71
 
77
72
  export class Equipment {
78
- itemTokenId: i32 = 0
79
- amount: i32 = 0
73
+ itemTokenId: u16 = 0
74
+ amount: u16 = 0
80
75
  }
81
76
 
82
77
  export class QueuedActionInput {
83
78
  attire: Attire = new Attire()
84
- actionId: i32 = 0
85
- regenerateId: i32 = 0 // Food (combat), maybe something for non-combat later
86
- choiceId: i32 = 0 // Melee/Arrow/Magic (combat), logs, ore (non-combat)
87
- choiceId1: i32 = 0 // Reserved (TBD)
88
- choiceId2: i32 = 0 // Reserved (TBD)
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)
89
84
  combatStyle: CombatStyle = CombatStyle.NONE
90
- timespan: i32 = 0 // How long to queue the action for
91
- rightHandEquipmentTokenId: i32 = 0
92
- leftHandEquipmentTokenId: i32 = 0
93
- startTime: string = '0' // Filled in by the smart contract, can be "0"
94
- isValid: boolean = true // If we still have the item, TODO: Not used yet
85
+ timespan: u32 = 0 // How long to queue the action for
86
+ rightHandEquipmentTokenId: u16 = 0
87
+ leftHandEquipmentTokenId: u16 = 0
88
+ skill: Skill = Skill.NONE
95
89
  }
96
90
 
97
91
  export class ActionInfo {
@@ -99,23 +93,30 @@ export class ActionInfo {
99
93
  isAvailable: boolean = true
100
94
  isDynamic: boolean = false
101
95
  actionChoiceRequired: boolean = false
102
- xpPerHour: i32 = 0
103
- numSpawn: i32 = 0
104
- minXP: i32 = 0
105
- handItemTokenIdRangeMin: i32 = 0
106
- handItemTokenIdRangeMax: i32 = 0
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
107
  }
108
108
 
109
- export class ActionReward {
109
+ export class RandomReward {
110
110
  itemTokenId: i32 = 0
111
- rate: i32 = 0 // base 100, 2 decimal places
111
+ chance: u16 = 0 // out of 65335
112
+ amount: u8 = 0
112
113
  }
113
114
 
114
115
  export class ActionInput {
115
- actionId: i32 = 0
116
+ actionId: u32 = 0
116
117
  info: ActionInfo = new ActionInfo()
117
- guaranteedRewards: ActionReward[] = []
118
- randomRewards: ActionReward[] = []
118
+ guaranteedRewards: GuaranteedReward[] = []
119
+ randomRewards: RandomReward[] = []
119
120
  combatStats: CombatStats = new CombatStats()
120
121
  }
121
122
 
@@ -123,36 +124,36 @@ export class ActionInput {
123
124
  export class InputItem {
124
125
  combatStats: CombatStats = new CombatStats()
125
126
  nonCombatStats: NonCombatStats = new NonCombatStats()
126
- tokenId: i32 = 0
127
+ tokenId: u16 = 0
127
128
  equipPosition: EquipPosition = EquipPosition.NONE
128
129
  // Can this be transferred to another player?
129
130
  isTransferable: boolean = true
130
131
  // Minimum requirements in this skill
131
132
  skill: Skill = Skill.NONE
132
- minXP: i32 = 0
133
+ minXP: u32 = 0
133
134
  // Food
134
- healthRestored: i32 = 0
135
+ healthRestored: u32 = 0
135
136
  // Boost
136
137
  boostType: BoostType = BoostType.NONE
137
- boostValue: i32 = 0 // Varies, could be the % increase
138
- boostDuration: i32 = 0 // How long the effect of the boost last
138
+ boostValue: u16 = 0 // Varies, could be the % increase
139
+ boostDuration: u32 = 0 // How long the effect of the boost last
139
140
  // uri
140
141
  metadataURI: string = ''
141
142
  }
142
143
 
143
144
  export class CombatStats {
144
- melee: i32 = 0
145
- magic: i32 = 0
146
- range: i32 = 0
147
- meleeDefence: i32 = 0
148
- magicDefence: i32 = 0
149
- rangeDefence: i32 = 0
150
- health: i32 = 0
145
+ melee: i16 = 0
146
+ magic: i16 = 0
147
+ range: i16 = 0
148
+ meleeDefence: i16 = 0
149
+ magicDefence: i16 = 0
150
+ rangeDefence: i16 = 0
151
+ health: i16 = 0
151
152
  }
152
153
 
153
154
  export class NonCombatStats {
154
155
  skill: Skill = Skill.NONE
155
- diff: i32 = 0
156
+ diff: u32 = 0
156
157
  }
157
158
 
158
159
  export const emptyCombatStats = new CombatStats()
@@ -175,11 +176,18 @@ export class PendingFlags {
175
176
  includeXPRewards: boolean = true // Passing any xp thresholds gives you extra rewards
176
177
  }
177
178
 
178
- export class XPThresholdReward {
179
+ export class XPThresholdRewardInput {
179
180
  xpThreshold: i32 = 0
180
181
  equipments: Equipment[] = []
181
182
  }
182
183
 
184
+ export class XPThresholdReward {
185
+ id: string = '' // XP for the reward
186
+ xp: string = '' // same as id
187
+ rewardItemAmounts: string[] = []
188
+ rewardItemTokenIds: string[] = []
189
+ }
190
+
183
191
  export class Player {
184
192
  id: string = '0'
185
193
  tokenId: string = '0'
@@ -190,55 +198,57 @@ export class Player {
190
198
  mintedNumber: string = '0' // Will be unique, use for sorting
191
199
  mintedTimestamp: string = '0'
192
200
  isActive: boolean = false // Is this player the active one for the owner
193
- numActivities: i32 = 0 // Not used yet
201
+ numActivities: u32 = 0 // Not used yet
194
202
  pendingRandomRewards: string[] = [] // Timestamps for any rewards which are waiting on the next seed
203
+ speedMultiplier: u32 = 1
204
+
195
205
  /* Action XP */
196
- woodcuttingXP: i32 = 0
197
- firemakingXP: i32 = 0
198
- fishingXP: i32 = 0
199
- cookingXP: i32 = 0
200
- miningXP: i32 = 0
201
- smithingXP: i32 = 0
202
- craftingXP: i32 = 0
203
- thievingXP: i32 = 0
206
+ woodcuttingXP: string = '0'
207
+ firemakingXP: string = '0'
208
+ fishingXP: string = '0'
209
+ cookingXP: string = '0'
210
+ miningXP: string = '0'
211
+ smithingXP: string = '0'
212
+ craftingXP: string = '0'
213
+ thievingXP: string = '0'
204
214
  totalXP: string = '0'
205
215
 
206
216
  /* Combat XP */
207
- healthXP: i32 = 0
208
- meleeXP: i32 = 0
209
- defenceXP: i32 = 0
210
- magicXP: i32 = 0
211
- rangeXP: i32 = 0
217
+ healthXP: string = '0'
218
+ meleeXP: string = '0'
219
+ defenceXP: string = '0'
220
+ magicXP: string = '0'
221
+ rangeXP: string = '0'
212
222
 
213
223
  /** Ranks */
214
- woodcuttingRank: i32 = 0
215
- firemakingRank: i32 = 0
216
- fishingRank: i32 = 0
217
- cookingRank: i32 = 0
218
- miningRank: i32 = 0
219
- smithingRank: i32 = 0
220
- craftingRank: i32 = 0
221
- thievingRank: i32 = 0
222
- meleeRank: i32 = 0
223
- magicRank: i32 = 0
224
- rangeRank: i32 = 0
225
- defenceRank: i32 = 0
226
- healthRank: i32 = 0
227
- combinedRank: i32 = 0
224
+ woodcuttingRank: u32 = 0
225
+ firemakingRank: u32 = 0
226
+ fishingRank: u32 = 0
227
+ cookingRank: u32 = 0
228
+ miningRank: u32 = 0
229
+ smithingRank: u32 = 0
230
+ craftingRank: u32 = 0
231
+ thievingRank: u32 = 0
232
+ meleeRank: u32 = 0
233
+ magicRank: u32 = 0
234
+ rangeRank: u32 = 0
235
+ defenceRank: u32 = 0
236
+ healthRank: u32 = 0
237
+ combinedRank: u32 = 0
228
238
 
229
239
  /* Boost */
230
- boostStartTime: i32 = 0
231
- boostDuration: i32 = 0
232
- boostVal: i32 = 0
240
+ boostStartTime: u64 = 0
241
+ boostDuration: u32 = 0
242
+ boostVal: u8 = 0
233
243
  boostType: BoostType
234
- boostItemTokenId: i32 = 0
244
+ boostItemTokenId: u16 = 0
235
245
  }
236
246
 
237
247
  export class User {
238
248
  id: string = '0'
239
249
  totalSold: string = '0'
240
250
  totalBought: string = '0'
241
- numPlayers: i32 = 0
251
+ numPlayers: u32 = 0
242
252
  }
243
253
 
244
254
  export class GlobalPlayerStats {
@@ -246,24 +256,26 @@ export class GlobalPlayerStats {
246
256
  }
247
257
 
248
258
  export enum ActivityType {
249
- LevelUp,
250
259
  Buy,
251
260
  Sell,
252
- Died,
253
- Consumed,
254
- Rewards,
255
- ClaimedXPThresholdRewards,
256
261
  ActionPartiallyFinished,
257
- ActionsQueued,
258
262
  ActionFinished,
263
+ PendingRandomRewardsClaimed, // This is only if claimed separately
264
+ }
265
+
266
+ export enum Direction {
267
+ Consumed,
268
+ Produced,
259
269
  }
260
270
 
261
271
  export class Activity {
262
272
  id: string = ''
263
273
  type: string = '' // ActivityType
264
- itemTokenIds: i32[] = []
274
+ itemTokenIds: u16[] = []
265
275
  amounts: string[] = []
276
+ directions: string[] = [] // Direction
266
277
  prices: string[] = []
278
+ actionId: string = ''
267
279
  queueId: string = ''
268
280
  timestamp: string = ''
269
281
  hash: string = ''
@@ -276,60 +288,74 @@ export class ActivityInfo {
276
288
  numActivities: string = ''
277
289
  }
278
290
 
279
- export class LastAttire {
280
- id: string = '' // playerId
281
- playerId: string = ''
291
+ export class LastFullEquipment {
292
+ id: string = '0' // playerId
293
+ playerId: string = '0'
282
294
  user: string = ''
283
- headEquipped: i32 = 0
284
- neckEquipped: i32 = 0
285
- bodyEquipped: i32 = 0
286
- armsEquipped: i32 = 0
287
- legsEquipped: i32 = 0
288
- bootsEquipped: i32 = 0
289
- ringEquipped: i32 = 0
295
+ actionId: u32 = 0
296
+ regenerateId: u16 = 0
297
+ choiceId: u32 = 0
298
+ choiceId1: u32 = 0
299
+ choiceId2: u32 = 0
300
+ rightHandEquipmentTokenId: u16 = 0
301
+ leftHandEquipmentTokenId: u16 = 0
302
+ startTime: string = ''
303
+ timespan: u32 = 0
304
+ isValid: boolean = true
305
+ skill: Skill = Skill.NONE
306
+
307
+ headEquipped: u16 = 0
308
+ neckEquipped: u16 = 0
309
+ bodyEquipped: u16 = 0
310
+ armsEquipped: u16 = 0
311
+ legsEquipped: u16 = 0
312
+ feetEquipped: u16 = 0
313
+ ringEquipped: u16 = 0
314
+ timestamp: string = '0'
290
315
  }
291
316
 
292
317
  export class QueuedAction {
293
318
  id: string = '' // queueId
294
- actionId: i32 = 0
319
+ actionId: u32 = 0
295
320
  playerId: string = ''
296
- regenerateId: i32 = 0
297
- choiceId: i32 = 0
298
- choiceId1: i32 = 0
299
- choiceId2: i32 = 0
300
- rightHandEquipmentTokenId: i32 = 0
301
- leftHandEquipmentTokenId: i32 = 0
321
+ regenerateId: u16 = 0
322
+ choiceId: u32 = 0
323
+ choiceId1: u32 = 0
324
+ choiceId2: u32 = 0
325
+ rightHandEquipmentTokenId: u16 = 0
326
+ leftHandEquipmentTokenId: u16 = 0
302
327
  startTime: string = ''
303
- timespan: i32 = 0
328
+ timespan: u32 = 0
304
329
  isValid: boolean = true
330
+ skill: Skill = Skill.NONE
305
331
 
306
- headEquipped: i32 = 0
307
- neckEquipped: i32 = 0
308
- bodyEquipped: i32 = 0
309
- armsEquipped: i32 = 0
310
- legsEquipped: i32 = 0
311
- bootsEquipped: i32 = 0
312
- ringEquipped: i32 = 0
332
+ headEquipped: u16 = 0
333
+ neckEquipped: u16 = 0
334
+ bodyEquipped: u16 = 0
335
+ armsEquipped: u16 = 0
336
+ legsEquipped: u16 = 0
337
+ feetEquipped: u16 = 0
338
+ ringEquipped: u16 = 0
313
339
  }
314
340
 
315
341
  export class Item {
316
342
  id: string = '0'
317
- tokenId: i32 = 0
318
- melee: i32 = 0
319
- magic: i32 = 0
320
- range: i32 = 0
321
- meleeDefence: i32 = 0
322
- magicDefence: i32 = 0
323
- rangeDefence: i32 = 0
324
- health: i32 = 0
343
+ tokenId: u16 = 0
344
+ melee: i16 = 0
345
+ magic: i16 = 0
346
+ range: i16 = 0
347
+ meleeDefence: i16 = 0
348
+ magicDefence: i16 = 0
349
+ rangeDefence: i16 = 0
350
+ health: i16 = 0
325
351
  totalQuantity: string = '0'
326
- equipPosition: i32 = 0
327
- healthRestored: i32 = 0
352
+ equipPosition: u16 = 0
353
+ healthRestored: u32 = 0
328
354
  skill1: Skill = Skill.NONE
329
- skillDiff1: i32 = 0
355
+ skillDiff1: u8 = 0
330
356
  boostType: BoostType = BoostType.NONE
331
- boostValue: i32 = 0
332
- boostDuration: i32 = 0
357
+ boostValue: u16 = 0
358
+ boostDuration: u32 = 0
333
359
  // Minimum requirements for equipping
334
360
  skill: Skill = Skill.NONE
335
361
  minXP: string = '0'
@@ -338,58 +364,84 @@ export class Item {
338
364
  export class UserItemNFT {
339
365
  id: string = ''
340
366
  user: string = ''
341
- tokenId: i32 = 0
367
+ tokenId: u16 = 0
342
368
  amount: string = ''
343
369
  item: Item = new Item()
344
370
  }
345
371
 
346
372
  export class ShopItem {
347
373
  id: string = ''
348
- tokenId: i32 = 0
374
+ tokenId: u16 = 0
349
375
  price: string = '0'
350
376
  }
351
377
 
378
+ export class ActionChoiceInput {
379
+ skill: Skill = Skill.NONE
380
+ diff: u32 = 0
381
+ rate: u16 = 0
382
+ xpPerHour: u32 = 0
383
+ minXP: u32 = 0
384
+ inputTokenId1: u16 = 0
385
+ num1: u16 = 0
386
+ inputTokenId2: u16 = 0
387
+ num2: u16 = 0
388
+ inputTokenId3: u16 = 0
389
+ num3: u16 = 0
390
+ outputTokenId: u16 = 0
391
+ outputNum: u8 = 1
392
+ successPercent: u8 = 100
393
+ }
394
+
352
395
  export class ActionChoice {
353
396
  id: string = ''
354
- actionId: i32 = 0
397
+ actionId: u32 = 0
355
398
  skill: Skill = Skill.NONE
356
- diff: i32 = 0
357
- rate: i32 = 0
358
- xpPerHour: i32 = 0
359
- minXP: i32 = 0
360
- inputTokenId1: i32 = 0
361
- num1: i32 = 0
362
- inputTokenId2: i32 = 0
363
- num2: i32 = 0
364
- inputTokenId3: i32 = 0
365
- num3: i32 = 0
366
- outputTokenId: i32 = 0
399
+ diff: u32 = 0
400
+ rate: u16 = 0
401
+ xpPerHour: u32 = 0
402
+ minXP: u32 = 0
403
+ inputTokenId1: u16 = 0
404
+ num1: u16 = 0
405
+ inputTokenId2: u16 = 0
406
+ num2: u16 = 0
407
+ inputTokenId3: u16 = 0
408
+ num3: u16 = 0
409
+ outputTokenId: u16 = 0
410
+ outputNum: u8 = 1
411
+ successPercent: u8 = 100
367
412
  }
368
413
 
369
414
  export class Action {
370
415
  id: string = ''
371
- actionId: i32 = 0
416
+ actionId: u32 = 0
372
417
  skill: Skill = Skill.NONE
373
- xpPerHour: i32 = 0
374
- numSpawn: i32 = 0
418
+ xpPerHour: u32 = 0
419
+ numSpawned: u32 = 0
375
420
  minXP: string = '0'
376
421
 
377
- guaranteedRewardItemTokenIds: i32[] = []
378
- guaranteedRewardRates: i32[] = []
379
- randomChanceItemTokenIds: i32[] = []
380
- randomChanceRates: i32[] = []
422
+ guaranteedRewardItemTokenIds: u32[] = []
423
+ guaranteedRewardRates: u32[] = []
424
+ randomChanceItemTokenIds: u32[] = []
425
+ randomChanceRates: u32[] = []
381
426
 
382
- handItemTokenIdRangeMin: i32 = 0
383
- handItemTokenIdRangeMax: i32 = 0
427
+ handItemTokenIdRangeMin: u32 = 0
428
+ handItemTokenIdRangeMax: u32 = 0
384
429
  isAvailable: boolean = false
385
430
  isDynamic: boolean = false
431
+ actionChoiceRequired: boolean = false
432
+ successPercent: i8 = 100
386
433
 
387
434
  /* Combat Stats */
388
- melee: i32 = 0
389
- magic: i32 = 0
390
- range: i32 = 0
391
- rangeDefence: i32 = 0
392
- meleeDefence: i32 = 0
393
- magicDefence: i32 = 0
394
- health: i32 = 0
435
+ melee: i16 = 0
436
+ magic: i16 = 0
437
+ range: i16 = 0
438
+ rangeDefence: i16 = 0
439
+ meleeDefence: i16 = 0
440
+ magicDefence: i16 = 0
441
+ health: i16 = 0
442
+ }
443
+
444
+ export class RandomWords {
445
+ lastRandomWordRequestedTimestamp: string
446
+ lastRandomWordsReceived: string = '' // Bytes
395
447
  }