isaacscript-common 15.0.2 → 15.0.4

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.
Files changed (90) hide show
  1. package/dist/index.d.ts +256 -8
  2. package/dist/isaacscript-common.lua +9 -6
  3. package/dist/src/classes/callbacks/PostPlayerInitFirst.d.ts.map +1 -1
  4. package/dist/src/classes/callbacks/PostPlayerInitFirst.lua +0 -1
  5. package/dist/src/classes/features/other/DisableInputs.d.ts +14 -0
  6. package/dist/src/classes/features/other/DisableInputs.d.ts.map +1 -1
  7. package/dist/src/classes/features/other/ExtraConsoleCommands.d.ts +6 -0
  8. package/dist/src/classes/features/other/ExtraConsoleCommands.d.ts.map +1 -1
  9. package/dist/src/classes/features/other/FadeInRemover.d.ts +4 -0
  10. package/dist/src/classes/features/other/FadeInRemover.d.ts.map +1 -1
  11. package/dist/src/classes/features/other/FastReset.d.ts +4 -0
  12. package/dist/src/classes/features/other/FastReset.d.ts.map +1 -1
  13. package/dist/src/classes/features/other/FlyingDetection.d.ts +2 -0
  14. package/dist/src/classes/features/other/FlyingDetection.d.ts.map +1 -1
  15. package/dist/src/classes/features/other/ForgottenSwitch.d.ts +2 -0
  16. package/dist/src/classes/features/other/ForgottenSwitch.d.ts.map +1 -1
  17. package/dist/src/classes/features/other/ItemPoolDetection.d.ts +6 -0
  18. package/dist/src/classes/features/other/ItemPoolDetection.d.ts.map +1 -1
  19. package/dist/src/classes/features/other/ModdedElementDetection.d.ts +69 -0
  20. package/dist/src/classes/features/other/ModdedElementDetection.d.ts.map +1 -1
  21. package/dist/src/classes/features/other/ModdedElementSets.d.ts +66 -4
  22. package/dist/src/classes/features/other/ModdedElementSets.d.ts.map +1 -1
  23. package/dist/src/classes/features/other/NoSirenSteal.d.ts +2 -0
  24. package/dist/src/classes/features/other/NoSirenSteal.d.ts.map +1 -1
  25. package/dist/src/classes/features/other/Pause.d.ts +7 -1
  26. package/dist/src/classes/features/other/Pause.d.ts.map +1 -1
  27. package/dist/src/classes/features/other/PersistentEntities.d.ts +4 -0
  28. package/dist/src/classes/features/other/PersistentEntities.d.ts.map +1 -1
  29. package/dist/src/classes/features/other/PickupIndexCreation.d.ts +3 -0
  30. package/dist/src/classes/features/other/PickupIndexCreation.d.ts.map +1 -1
  31. package/dist/src/classes/features/other/PlayerInventory.d.ts +4 -0
  32. package/dist/src/classes/features/other/PlayerInventory.d.ts.map +1 -1
  33. package/dist/src/classes/features/other/PonyDetection.d.ts +4 -0
  34. package/dist/src/classes/features/other/PonyDetection.d.ts.map +1 -1
  35. package/dist/src/classes/features/other/PreventChildEntities.d.ts +3 -0
  36. package/dist/src/classes/features/other/PreventChildEntities.d.ts.map +1 -1
  37. package/dist/src/classes/features/other/PreventCollectibleRotation.d.ts +3 -0
  38. package/dist/src/classes/features/other/PreventCollectibleRotation.d.ts.map +1 -1
  39. package/dist/src/classes/features/other/PreventGridEntityRespawn.d.ts +3 -0
  40. package/dist/src/classes/features/other/PreventGridEntityRespawn.d.ts.map +1 -1
  41. package/dist/src/classes/features/other/RoomClearFrame.d.ts +4 -0
  42. package/dist/src/classes/features/other/RoomClearFrame.d.ts.map +1 -1
  43. package/dist/src/classes/features/other/RoomHistory.d.ts +8 -0
  44. package/dist/src/classes/features/other/RoomHistory.d.ts.map +1 -1
  45. package/dist/src/classes/features/other/RunInNFrames.d.ts +14 -0
  46. package/dist/src/classes/features/other/RunInNFrames.d.ts.map +1 -1
  47. package/dist/src/classes/features/other/RunNextRoom.d.ts +2 -0
  48. package/dist/src/classes/features/other/RunNextRoom.d.ts.map +1 -1
  49. package/dist/src/classes/features/other/SaveDataManager.d.ts +14 -0
  50. package/dist/src/classes/features/other/SaveDataManager.d.ts.map +1 -1
  51. package/dist/src/enums/ISCFeature.d.ts +1 -1
  52. package/dist/src/enums/ISCFeature.d.ts.map +1 -1
  53. package/dist/src/enums/ISCFeature.lua +2 -2
  54. package/dist/src/features.d.ts +1 -1
  55. package/dist/src/features.d.ts.map +1 -1
  56. package/dist/src/features.lua +1 -1
  57. package/dist/src/functions/entitiesSpecific.d.ts +6 -1
  58. package/dist/src/functions/entitiesSpecific.d.ts.map +1 -1
  59. package/dist/src/functions/entitiesSpecific.lua +3 -0
  60. package/dist/src/functions/familiars.d.ts.map +1 -1
  61. package/dist/src/functions/familiars.lua +8 -1
  62. package/package.json +1 -1
  63. package/src/classes/callbacks/PostPlayerInitFirst.ts +0 -2
  64. package/src/classes/features/other/DisableInputs.ts +14 -0
  65. package/src/classes/features/other/ExtraConsoleCommands.ts +6 -0
  66. package/src/classes/features/other/FadeInRemover.ts +4 -0
  67. package/src/classes/features/other/FastReset.ts +4 -0
  68. package/src/classes/features/other/FlyingDetection.ts +2 -0
  69. package/src/classes/features/other/ForgottenSwitch.ts +2 -0
  70. package/src/classes/features/other/ItemPoolDetection.ts +6 -0
  71. package/src/classes/features/other/ModdedElementDetection.ts +69 -0
  72. package/src/classes/features/other/ModdedElementSets.ts +66 -4
  73. package/src/classes/features/other/NoSirenSteal.ts +2 -0
  74. package/src/classes/features/other/Pause.ts +7 -1
  75. package/src/classes/features/other/PersistentEntities.ts +4 -0
  76. package/src/classes/features/other/PickupIndexCreation.ts +3 -0
  77. package/src/classes/features/other/PlayerInventory.ts +4 -0
  78. package/src/classes/features/other/PonyDetection.ts +4 -0
  79. package/src/classes/features/other/PreventChildEntities.ts +3 -0
  80. package/src/classes/features/other/PreventCollectibleRotation.ts +3 -0
  81. package/src/classes/features/other/PreventGridEntityRespawn.ts +3 -0
  82. package/src/classes/features/other/RoomClearFrame.ts +4 -0
  83. package/src/classes/features/other/RoomHistory.ts +8 -0
  84. package/src/classes/features/other/RunInNFrames.ts +14 -0
  85. package/src/classes/features/other/RunNextRoom.ts +2 -0
  86. package/src/classes/features/other/SaveDataManager.ts +14 -0
  87. package/src/enums/ISCFeature.ts +1 -1
  88. package/src/features.ts +2 -2
  89. package/src/functions/entitiesSpecific.ts +6 -1
  90. package/src/functions/familiars.ts +11 -1
@@ -75,6 +75,9 @@ export class ModdedElementDetection extends Feature {
75
75
  * This function can only be called if at least one callback has been executed. This is because
76
76
  * not all collectibles will necessarily be present when a mod first loads (due to mod load
77
77
  * order).
78
+ *
79
+ * In order to use this function, you must upgrade your mod with
80
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
78
81
  */
79
82
  @Exported
80
83
  public getFirstModdedCollectibleType(): CollectibleType | undefined {
@@ -100,6 +103,9 @@ export class ModdedElementDetection extends Feature {
100
103
  * This function can only be called if at least one callback has been executed. This is because
101
104
  * not all collectibles will necessarily be present when a mod first loads (due to mod load
102
105
  * order).
106
+ *
107
+ * In order to use this function, you must upgrade your mod with
108
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
103
109
  */
104
110
  @Exported
105
111
  public getLastCollectibleType(): CollectibleType {
@@ -124,6 +130,9 @@ export class ModdedElementDetection extends Feature {
124
130
  * This function can only be called if at least one callback has been executed. This is because
125
131
  * not all collectibles will necessarily be present when a mod first loads (due to mod load
126
132
  * order).
133
+ *
134
+ * In order to use this function, you must upgrade your mod with
135
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
127
136
  */
128
137
  @Exported
129
138
  public getModdedCollectibleTypes(): CollectibleType[] {
@@ -142,6 +151,9 @@ export class ModdedElementDetection extends Feature {
142
151
  * This function can only be called if at least one callback has been executed. This is because
143
152
  * not all collectibles will necessarily be present when a mod first loads (due to mod load
144
153
  * order).
154
+ *
155
+ * In order to use this function, you must upgrade your mod with
156
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
145
157
  */
146
158
  @Exported
147
159
  public getNumCollectibleTypes(): int {
@@ -157,6 +169,9 @@ export class ModdedElementDetection extends Feature {
157
169
  * This function can only be called if at least one callback has been executed. This is because
158
170
  * not all collectibles will necessarily be present when a mod first loads (due to mod load
159
171
  * order).
172
+ *
173
+ * In order to use this function, you must upgrade your mod with
174
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
160
175
  */
161
176
  @Exported
162
177
  public getNumModdedCollectibleTypes(): int {
@@ -175,6 +190,9 @@ export class ModdedElementDetection extends Feature {
175
190
  *
176
191
  * This function can only be called if at least one callback has been executed. This is because
177
192
  * not all trinkets will necessarily be present when a mod first loads (due to mod load order).
193
+ *
194
+ * In order to use this function, you must upgrade your mod with
195
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
178
196
  */
179
197
  @Exported
180
198
  public getFirstModdedTrinketType(): TrinketType | undefined {
@@ -195,6 +213,9 @@ export class ModdedElementDetection extends Feature {
195
213
  *
196
214
  * This function can only be called if at least one callback has been executed. This is because
197
215
  * not all trinkets will necessarily be present when a mod first loads (due to mod load order).
216
+ *
217
+ * In order to use this function, you must upgrade your mod with
218
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
198
219
  */
199
220
  @Exported
200
221
  public getLastTrinketType(): TrinketType {
@@ -215,6 +236,9 @@ export class ModdedElementDetection extends Feature {
215
236
  *
216
237
  * This function can only be called if at least one callback has been executed. This is because
217
238
  * not all trinkets will necessarily be present when a mod first loads (due to mod load order).
239
+ *
240
+ * In order to use this function, you must upgrade your mod with
241
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
218
242
  */
219
243
  @Exported
220
244
  public getModdedTrinketTypes(): TrinketType[] {
@@ -237,6 +261,9 @@ export class ModdedElementDetection extends Feature {
237
261
  *
238
262
  * This function can only be called if at least one callback has been executed. This is because
239
263
  * not all trinkets will necessarily be present when a mod first loads (due to mod load order).
264
+ *
265
+ * In order to use this function, you must upgrade your mod with
266
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
240
267
  */
241
268
  @Exported
242
269
  public getNumTrinketTypes(): int {
@@ -248,6 +275,9 @@ export class ModdedElementDetection extends Feature {
248
275
  /**
249
276
  * This function can only be called if at least one callback has been executed. This is because
250
277
  * not all trinkets will necessarily be present when a mod first loads (due to mod load order).
278
+ *
279
+ * In order to use this function, you must upgrade your mod with
280
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
251
281
  */
252
282
  @Exported
253
283
  public getNumModdedTrinketTypes(): int {
@@ -262,6 +292,9 @@ export class ModdedElementDetection extends Feature {
262
292
  *
263
293
  * This function can only be called if at least one callback has been executed. This is because
264
294
  * not all trinkets will necessarily be present when a mod first loads (due to mod load order).
295
+ *
296
+ * In order to use this function, you must upgrade your mod with
297
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
265
298
  */
266
299
  @Exported
267
300
  public getTrinketTypes(): TrinketType[] {
@@ -280,6 +313,9 @@ export class ModdedElementDetection extends Feature {
280
313
  *
281
314
  * This function can only be called if at least one callback has been executed. This is because
282
315
  * not all cards will necessarily be present when a mod first loads (due to mod load order).
316
+ *
317
+ * In order to use this function, you must upgrade your mod with
318
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
283
319
  */
284
320
  @Exported
285
321
  public getAllCardTypes(): CardType[] {
@@ -294,6 +330,9 @@ export class ModdedElementDetection extends Feature {
294
330
  *
295
331
  * This function can only be called if at least one callback has been executed. This is because
296
332
  * not all cards will necessarily be present when a mod first loads (due to mod load order).
333
+ *
334
+ * In order to use this function, you must upgrade your mod with
335
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
297
336
  */
298
337
  @Exported
299
338
  public getFirstModdedCardType(): CardType | undefined {
@@ -314,6 +353,9 @@ export class ModdedElementDetection extends Feature {
314
353
  *
315
354
  * This function can only be called if at least one callback has been executed. This is because
316
355
  * not all cards will necessarily be present when a mod first loads (due to mod load order).
356
+ *
357
+ * In order to use this function, you must upgrade your mod with
358
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
317
359
  */
318
360
  @Exported
319
361
  public getLastCardType(): CardType {
@@ -330,6 +372,9 @@ export class ModdedElementDetection extends Feature {
330
372
  *
331
373
  * This function can only be called if at least one callback has been executed. This is because
332
374
  * not all cards will necessarily be present when a mod first loads (due to mod load order).
375
+ *
376
+ * In order to use this function, you must upgrade your mod with
377
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
333
378
  */
334
379
  @Exported
335
380
  public getModdedCardTypes(): CardType[] {
@@ -351,6 +396,9 @@ export class ModdedElementDetection extends Feature {
351
396
  *
352
397
  * This function can only be called if at least one callback has been executed. This is because
353
398
  * not all cards will necessarily be present when a mod first loads (due to mod load order).
399
+ *
400
+ * In order to use this function, you must upgrade your mod with
401
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
354
402
  */
355
403
  @Exported
356
404
  public getNumCardTypes(): int {
@@ -362,6 +410,9 @@ export class ModdedElementDetection extends Feature {
362
410
  /**
363
411
  * This function can only be called if at least one callback has been executed. This is because
364
412
  * not all trinkets will necessarily be present when a mod first loads (due to mod load order).
413
+ *
414
+ * In order to use this function, you must upgrade your mod with
415
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
365
416
  */
366
417
  @Exported
367
418
  public getNumModdedCardTypes(): int {
@@ -382,6 +433,9 @@ export class ModdedElementDetection extends Feature {
382
433
  * This function can only be called if at least one callback has been executed. This is because
383
434
  * not all pill effects will necessarily be present when a mod first loads (due to mod load
384
435
  * order).
436
+ *
437
+ * In order to use this function, you must upgrade your mod with
438
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
385
439
  */
386
440
  @Exported
387
441
  public getAllPillEffects(): PillEffect[] {
@@ -397,6 +451,9 @@ export class ModdedElementDetection extends Feature {
397
451
  * This function can only be called if at least one callback has been executed. This is because
398
452
  * not all pill effects will necessarily be present when a mod first loads (due to mod load
399
453
  * order).
454
+ *
455
+ * In order to use this function, you must upgrade your mod with
456
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
400
457
  */
401
458
  @Exported
402
459
  public getFirstModdedPillEffect(): PillEffect | undefined {
@@ -422,6 +479,9 @@ export class ModdedElementDetection extends Feature {
422
479
  * This function can only be called if at least one callback has been executed. This is because
423
480
  * not all pill effects will necessarily be present when a mod first loads (due to mod load
424
481
  * order).
482
+ *
483
+ * In order to use this function, you must upgrade your mod with
484
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
425
485
  */
426
486
  @Exported
427
487
  public getLastPillEffect(): PillEffect {
@@ -439,6 +499,9 @@ export class ModdedElementDetection extends Feature {
439
499
  * This function can only be called if at least one callback has been executed. This is because
440
500
  * not all pill effects will necessarily be present when a mod first loads (due to mod load
441
501
  * order).
502
+ *
503
+ * In order to use this function, you must upgrade your mod with
504
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
442
505
  */
443
506
  @Exported
444
507
  public getModdedPillEffects(): PillEffect[] {
@@ -462,6 +525,9 @@ export class ModdedElementDetection extends Feature {
462
525
  * This function can only be called if at least one callback has been executed. This is because
463
526
  * not all pill effects will necessarily be present when a mod first loads (due to mod load
464
527
  * order).
528
+ *
529
+ * In order to use this function, you must upgrade your mod with
530
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
465
531
  */
466
532
  @Exported
467
533
  public getNumPillEffects(): int {
@@ -474,6 +540,9 @@ export class ModdedElementDetection extends Feature {
474
540
  * This function can only be called if at least one callback has been executed. This is because
475
541
  * not all pill effects will necessarily be present when a mod first loads (due to mod load
476
542
  * order).
543
+ *
544
+ * In order to use this function, you must upgrade your mod with
545
+ * `ISCFeature.MODDED_ELEMENT_DETECTION`.
477
546
  */
478
547
  @Exported
479
548
  public getNumModdedPillEffects(): int {
@@ -344,6 +344,8 @@ export class ModdedElementSets extends Feature {
344
344
  * This function can only be called if at least one callback has been executed. This is because
345
345
  * not all collectibles will necessarily be present when a mod first loads (due to mod load
346
346
  * order).
347
+ *
348
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
347
349
  */
348
350
  @Exported
349
351
  public getCollectibleArray(): readonly CollectibleType[] {
@@ -361,6 +363,8 @@ export class ModdedElementSets extends Feature {
361
363
  * This function can only be called if at least one callback has been executed. This is because
362
364
  * not all collectibles will necessarily be present when a mod first loads (due to mod load
363
365
  * order).
366
+ *
367
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
364
368
  */
365
369
  @Exported
366
370
  public getCollectibleSet(): ReadonlySet<CollectibleType> {
@@ -377,6 +381,8 @@ export class ModdedElementSets extends Feature {
377
381
  * ```ts
378
382
  * const guppyCollectibleTypes = getCollectiblesForTransformation(PlayerForm.GUPPY);
379
383
  * ```
384
+ *
385
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
380
386
  */
381
387
  @Exported
382
388
  public getCollectiblesForTransformation(
@@ -399,6 +405,8 @@ export class ModdedElementSets extends Feature {
399
405
  * This function can only be called if at least one callback has been executed. This is because
400
406
  * not all collectibles will necessarily be present when a mod first loads (due to mod load
401
407
  * order).
408
+ *
409
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
402
410
  */
403
411
  @Exported
404
412
  public getCollectiblesWithCacheFlag(
@@ -423,6 +431,8 @@ export class ModdedElementSets extends Feature {
423
431
  * ```ts
424
432
  * const offensiveCollectibleTypes = getCollectibleTypesWithTag(ItemConfigTag.OFFENSIVE);
425
433
  * ```
434
+ *
435
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
426
436
  */
427
437
  @Exported
428
438
  public getCollectiblesWithTag(
@@ -443,6 +453,8 @@ export class ModdedElementSets extends Feature {
443
453
  /**
444
454
  * Returns a set containing every valid passive item that can be randomly granted to Eden as a
445
455
  * starting item.
456
+ *
457
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
446
458
  */
447
459
  @Exported
448
460
  public getEdenActiveCollectibles(): ReadonlySet<CollectibleType> {
@@ -453,6 +465,8 @@ export class ModdedElementSets extends Feature {
453
465
  /**
454
466
  * Returns a set containing every valid passive item that can be randomly granted to Eden as a
455
467
  * starting item.
468
+ *
469
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
456
470
  */
457
471
  @Exported
458
472
  public getEdenPassiveCollectibles(): ReadonlySet<CollectibleType> {
@@ -467,6 +481,8 @@ export class ModdedElementSets extends Feature {
467
481
  * Collectibles that only grant flight conditionally are manually pruned. Collectibles such as
468
482
  * Empty Vessel should be checked for via the `hasFlyingTemporaryEffect` function.
469
483
  *
484
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
485
+ *
470
486
  * @param pruneConditionalItems Whether or not collectibles that only grant flight conditionally
471
487
  * should be included in the set (like Empty Vessel).
472
488
  */
@@ -484,6 +500,8 @@ export class ModdedElementSets extends Feature {
484
500
  /**
485
501
  * Returns a set of all of the trinkets that grant flight. (All trinkets that grant flight do so
486
502
  * conditionally, like Bat Wing and Azazel's Stump.)
503
+ *
504
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
487
505
  */
488
506
  @Exported
489
507
  public getFlyingTrinkets(): ReadonlySet<TrinketType> {
@@ -501,6 +519,8 @@ export class ModdedElementSets extends Feature {
501
519
  * This function can only be called if at least one callback has been executed. This is because
502
520
  * not all collectibles will necessarily be present when a mod first loads (due to mod load
503
521
  * order).
522
+ *
523
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
504
524
  */
505
525
  @Exported
506
526
  public getModdedCollectibleArray(): readonly CollectibleType[] {
@@ -517,6 +537,8 @@ export class ModdedElementSets extends Feature {
517
537
  * This function can only be called if at least one callback has been executed. This is because
518
538
  * not all collectibles will necessarily be present when a mod first loads (due to mod load
519
539
  * order).
540
+ *
541
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
520
542
  */
521
543
  @Exported
522
544
  public getModdedCollectibleSet(): ReadonlySet<CollectibleType> {
@@ -532,6 +554,8 @@ export class ModdedElementSets extends Feature {
532
554
  *
533
555
  * This function can only be called if at least one callback has been executed. This is because
534
556
  * not all trinkets will necessarily be present when a mod first loads (due to mod load order).
557
+ *
558
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
535
559
  */
536
560
  @Exported
537
561
  public getModdedTrinketArray(): readonly TrinketType[] {
@@ -547,6 +571,8 @@ export class ModdedElementSets extends Feature {
547
571
  *
548
572
  * This function can only be called if at least one callback has been executed. This is because
549
573
  * not all trinkets will necessarily be present when a mod first loads (due to mod load order).
574
+ *
575
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
550
576
  */
551
577
  @Exported
552
578
  public getModdedTrinketSet(): ReadonlySet<TrinketType> {
@@ -559,6 +585,8 @@ export class ModdedElementSets extends Feature {
559
585
  * the player has.
560
586
  *
561
587
  * Note that this will filter out non-real collectibles like Lilith's Incubus.
588
+ *
589
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
562
590
  */
563
591
  @Exported
564
592
  public getPlayerCollectibleMap(
@@ -599,6 +627,8 @@ export class ModdedElementSets extends Feature {
599
627
  * This function can only be called if at least one callback has been executed. This is because
600
628
  * not all collectibles will necessarily be present when a mod first loads (due to mod load
601
629
  * order).
630
+ *
631
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
602
632
  */
603
633
  @Exported
604
634
  public getPlayerCollectiblesWithCacheFlag(
@@ -622,7 +652,11 @@ export class ModdedElementSets extends Feature {
622
652
  return playerCollectibles;
623
653
  }
624
654
 
625
- /** Returns the number of items that a player has towards a particular transformation. */
655
+ /**
656
+ * Returns the number of items that a player has towards a particular transformation.
657
+ *
658
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
659
+ */
626
660
  @Exported
627
661
  public getPlayerCollectiblesWithTag(
628
662
  player: EntityPlayer,
@@ -642,7 +676,11 @@ export class ModdedElementSets extends Feature {
642
676
  return playerCollectibles;
643
677
  }
644
678
 
645
- /** Returns the number of items that a player has towards a particular transformation. */
679
+ /**
680
+ * Returns the number of items that a player has towards a particular transformation.
681
+ *
682
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
683
+ */
646
684
  @Exported
647
685
  public getPlayerCollectiblesForTransformation(
648
686
  player: EntityPlayer,
@@ -671,6 +709,8 @@ export class ModdedElementSets extends Feature {
671
709
  *
672
710
  * This function can only be called if at least one callback has been executed. This is because
673
711
  * not all trinkets will necessarily be present when a mod first loads (due to mod load order).
712
+ *
713
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
674
714
  */
675
715
  @Exported
676
716
  public getPlayerTrinketsWithCacheFlag(
@@ -690,7 +730,11 @@ export class ModdedElementSets extends Feature {
690
730
  return playerTrinkets;
691
731
  }
692
732
 
693
- /** Returns a random active collectible type that that is a valid starting item for Eden. */
733
+ /**
734
+ * Returns a random active collectible type that that is a valid starting item for Eden.
735
+ *
736
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
737
+ */
694
738
  @Exported
695
739
  public getRandomEdenActiveCollectible(
696
740
  seedOrRNG: Seed | RNG = getRandomSeed(),
@@ -704,7 +748,11 @@ export class ModdedElementSets extends Feature {
704
748
  );
705
749
  }
706
750
 
707
- /** Returns a random passive collectible type that that is a valid starting item for Eden. */
751
+ /**
752
+ * Returns a random passive collectible type that that is a valid starting item for Eden.
753
+ *
754
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
755
+ */
708
756
  @Exported
709
757
  public getRandomEdenPassiveCollectible(
710
758
  seedOrRNG: Seed | RNG = getRandomSeed(),
@@ -726,6 +774,8 @@ export class ModdedElementSets extends Feature {
726
774
  *
727
775
  * This function can only be called if at least one callback has been executed. This is because
728
776
  * not all trinkets will necessarily be present when a mod first loads (due to mod load order).
777
+ *
778
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
729
779
  */
730
780
  @Exported
731
781
  public getTrinketArray(): readonly TrinketType[] {
@@ -741,6 +791,8 @@ export class ModdedElementSets extends Feature {
741
791
  *
742
792
  * This function can only be called if at least one callback has been executed. This is because
743
793
  * not all trinkets will necessarily be present when a mod first loads (due to mod load order).
794
+ *
795
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
744
796
  */
745
797
  @Exported
746
798
  public getTrinketSet(): ReadonlySet<TrinketType> {
@@ -754,6 +806,8 @@ export class ModdedElementSets extends Feature {
754
806
  *
755
807
  * This function can only be called if at least one callback has been executed. This is because
756
808
  * not all trinkets will necessarily be present when a mod first loads (due to mod load order).
809
+ *
810
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
757
811
  */
758
812
  @Exported
759
813
  public getTrinketsWithCacheFlag(
@@ -774,6 +828,8 @@ export class ModdedElementSets extends Feature {
774
828
  *
775
829
  * Use this if you need to iterate over the collectibles in order. If you need to do O(1) lookups,
776
830
  * then use the `getVanillaCollectibleSet` helper function instead.
831
+ *
832
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
777
833
  */
778
834
  @Exported
779
835
  public getVanillaCollectibleArray(): readonly CollectibleType[] {
@@ -786,6 +842,8 @@ export class ModdedElementSets extends Feature {
786
842
  *
787
843
  * Use this if you need to do O(1) lookups. If you need to iterate over the collectibles in order,
788
844
  * then use the `getVanillaCollectibleArray` helper function instead.
845
+ *
846
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
789
847
  */
790
848
  @Exported
791
849
  public getVanillaCollectibleSet(): ReadonlySet<CollectibleType> {
@@ -798,6 +856,8 @@ export class ModdedElementSets extends Feature {
798
856
  *
799
857
  * Use this if you need to iterate over the trinkets in order. If you need to do O(1) lookups,
800
858
  * then use the `getVanillaTrinketSet` helper function instead.
859
+ *
860
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
801
861
  */
802
862
  @Exported
803
863
  public getVanillaTrinketArray(): readonly TrinketType[] {
@@ -810,6 +870,8 @@ export class ModdedElementSets extends Feature {
810
870
  *
811
871
  * Use this if you need to do O(1) lookups. If you need to iterate over the trinkets in order,
812
872
  * then use the `getVanillaTrinketArray` helper function instead.
873
+ *
874
+ * In order to use this function, you must upgrade your mod with `ISCFeature.MODDED_ELEMENT_SETS`.
813
875
  */
814
876
  @Exported
815
877
  public getVanillaTrinketSet(): ReadonlySet<TrinketType> {
@@ -81,6 +81,8 @@ export class NoSirenSteal extends Feature {
81
81
  * Blacklists a familiar from being stolen by The Siren boss. This should be called once at the
82
82
  * beginning of every run.
83
83
  *
84
+ * In order to use this function, you must upgrade your mod with `ISCFeature.NO_SIREN_STEAL`.
85
+ *
84
86
  * @param familiarVariant The familiar variant to blacklist.
85
87
  * @param familiarSubType The sub-type to blacklist. Optional. The default is to blacklist all
86
88
  * sub-types of the given variant.
@@ -121,6 +121,8 @@ export class Pause extends Feature {
121
121
  * - uses the Pause collectible on every game frame
122
122
  * - disables any player inputs (except for `ButtonAction.MENU_CONFIRM` and
123
123
  * `ButtonAction.CONSOLE`)
124
+ *
125
+ * In order to use this function, you must upgrade your mod with `ISCFeature.PAUSE`.
124
126
  */
125
127
  @Exported
126
128
  public pause(): void {
@@ -179,7 +181,11 @@ export class Pause extends Feature {
179
181
  this.stopTearsAndProjectilesFromMoving();
180
182
  }
181
183
 
182
- /** Helper function to put things back to normal after the `pause` function was used. */
184
+ /**
185
+ * Helper function to put things back to normal after the `pause` function was used.
186
+ *
187
+ * In order to use this function, you must upgrade your mod with `ISCFeature.PAUSE`.
188
+ */
183
189
  @Exported
184
190
  public unpause(): void {
185
191
  if (!this.v.run.isPseudoPaused) {
@@ -155,6 +155,8 @@ export class PersistentEntities extends Feature {
155
155
  * Helper function to stop an entity spawned with the `spawnPersistentEntity` helper function from
156
156
  * respawning.
157
157
  *
158
+ * In order to use this function, you must upgrade your mod with `ISCFeature.PERSISTENT_ENTITIES`.
159
+ *
158
160
  * @param persistentEntityIndex The index that was returned by the `spawnPersistentEntity`
159
161
  * function.
160
162
  * @param removeEntity Optional. True by default. Set to false if you want to stop an entity from
@@ -198,6 +200,8 @@ export class PersistentEntities extends Feature {
198
200
  * persistent, but they are not present in every room, only one specific room. This function
199
201
  * spawns entities like pickups, not familiars.
200
202
  *
203
+ * In order to use this function, you must upgrade your mod with `ISCFeature.PERSISTENT_ENTITIES`.
204
+ *
201
205
  * @returns A tuple containing the entity and the persistent entity index. You can use the index
202
206
  * with the `removePersistentEntity` function.
203
207
  */
@@ -232,6 +232,9 @@ export class PickupIndexCreation extends Feature {
232
232
  * have an index of 2, and so on.
233
233
  *
234
234
  * Tracking pickups requires stateful tracking, so using pickup indexes requires an upgraded mod.
235
+ *
236
+ * In order to use this function, you must upgrade your mod with
237
+ * `ISCFeature.PICKUP_INDEX_CREATION`.
235
238
  */
236
239
  @Exported
237
240
  public getPickupIndex(pickup: EntityPickup): PickupIndex {
@@ -82,6 +82,8 @@ export class PlayerInventory extends Feature {
82
82
  * might do this for some reason. (With that said, the next time that a collectible is normally
83
83
  * added or removed, it would trigger a re-scan, and the previous changes would be picked up.)
84
84
  *
85
+ * In order to use this function, you must upgrade your mod with `ISCFeature.PLAYER_INVENTORY`.
86
+ *
85
87
  * @param player The player to get the inventory for.
86
88
  * @param includeActiveCollectibles Optional. If true, will include all active collectibles.
87
89
  * Default is true.
@@ -111,6 +113,8 @@ export class PlayerInventory extends Feature {
111
113
  * this will be the passive that is removed when the player would use Clicker.
112
114
  *
113
115
  * Returns undefined if the player does not have any passive collectibles.
116
+ *
117
+ * In order to use this function, you must upgrade your mod with `ISCFeature.PLAYER_INVENTORY`.
114
118
  */
115
119
  @Exported
116
120
  public getPlayerLastPassiveCollectible(
@@ -62,6 +62,8 @@ export class PonyDetection extends Feature {
62
62
  /**
63
63
  * Helper function to see if the player is under the effects of A Pony or White Pony charge.
64
64
  * Detecting this is difficult, as the temporary effect will disappear upon entering a new room.
65
+ *
66
+ * In order to use this function, you must upgrade your mod with `ISCFeature.PONY_DETECTION`.
65
67
  */
66
68
  @Exported
67
69
  public isPlayerUsingPony(player: EntityPlayer): boolean {
@@ -71,6 +73,8 @@ export class PonyDetection extends Feature {
71
73
  /**
72
74
  * Helper function to see if any player is under the effects of A Pony or White Pony charge.
73
75
  * Detecting this is difficult, as the temporary effect will disappear upon entering a new room.
76
+ *
77
+ * In order to use this function, you must upgrade your mod with `ISCFeature.PONY_DETECTION`.
74
78
  */
75
79
  @Exported
76
80
  public anyPlayerUsingPony(): boolean {
@@ -41,6 +41,9 @@ export class PreventChildEntities extends Feature {
41
41
  * Under the hood, this function will remove any new NPCs spawned that have a
42
42
  * `Entity.SpawnerEntity` or `Entity.Parent` value that matches the provided entity. (They are
43
43
  * removed during the `POST_NPC_INIT` callback specifically.)
44
+ *
45
+ * In order to use this function, you must upgrade your mod with
46
+ * `ISCFeature.PREVENT_CHILD_ENTITIES`.
44
47
  */
45
48
  @Exported
46
49
  public preventChildEntities(entity: Entity): void {
@@ -86,6 +86,9 @@ export class PreventCollectibleRotation extends Feature {
86
86
  *
87
87
  * It is required to pass the intended collectible type to this function since it is possible for
88
88
  * collectibles to rotate on the first frame that they are spawned.
89
+ *
90
+ * In order to use this function, you must upgrade your mod with
91
+ * `ISCFeature.PREVENT_COLLECTIBLE_ROTATION`.
89
92
  */
90
93
  @Exported
91
94
  public preventCollectibleRotation(
@@ -166,6 +166,9 @@ export class PreventGridEntityRespawn extends Feature {
166
166
  * room. However, the room data must exactly match the room type, the room shape, and the doors,
167
167
  * so this is not possible to do in a robust way without adding empty rooms to the mod's `content`
168
168
  * folder to draw the data from.
169
+ *
170
+ * In order to use this function, you must upgrade your mod with
171
+ * `ISCFeature.PREVENT_GRID_ENTITY_RESPAWN`.
169
172
  */
170
173
  @Exported
171
174
  public preventGridEntityRespawn(): void {
@@ -38,6 +38,8 @@ export class RoomClearFrame extends Feature {
38
38
  /**
39
39
  * Helper function to get the game frame (i.e. `Game.GetFrameCount`) of the last time that this
40
40
  * room was cleared. Returns undefined if the room has never been cleared.
41
+ *
42
+ * In order to use this function, you must upgrade your mod with `ISCFeature.ROOM_CLEAR_FRAME`.
41
43
  */
42
44
  @Exported
43
45
  public getRoomClearGameFrame(): int | undefined {
@@ -47,6 +49,8 @@ export class RoomClearFrame extends Feature {
47
49
  /**
48
50
  * Helper function to get the room frame (i.e. `Room.GetFrameCount`) of the last time that this
49
51
  * room was cleared. Returns undefined if the room has never been cleared.
52
+ *
53
+ * In order to use this function, you must upgrade your mod with `ISCFeature.ROOM_CLEAR_FRAME`.
50
54
  */
51
55
  @Exported
52
56
  public getRoomClearRoomFrame(): int | undefined {
@@ -67,6 +67,8 @@ export class RoomHistory extends Feature {
67
67
  /**
68
68
  * Helper function to get information about all of the rooms that a player has visited thus far on
69
69
  * this run.
70
+ *
71
+ * In order to use this function, you must upgrade your mod with `ISCFeature.ROOM_HISTORY`.
70
72
  */
71
73
  @Exported
72
74
  public getRoomHistory(): ReadonlyArray<Readonly<RoomDescription>> {
@@ -78,6 +80,8 @@ export class RoomHistory extends Feature {
78
80
  *
79
81
  * In the special case of only one room having been visited thus far (i.e. the starting room of
80
82
  * the run), the starting room will be returned.
83
+ *
84
+ * In order to use this function, you must upgrade your mod with `ISCFeature.ROOM_HISTORY`.
81
85
  */
82
86
  @Exported
83
87
  public getPreviousRoomDescription(): Readonly<RoomDescription> {
@@ -105,6 +109,8 @@ export class RoomHistory extends Feature {
105
109
  *
106
110
  * Note that this function can return undefined in the case where it is called on the first room
107
111
  * of the run.
112
+ *
113
+ * In order to use this function, you must upgrade your mod with `ISCFeature.ROOM_HISTORY`.
108
114
  */
109
115
  @Exported
110
116
  public getLatestRoomDescription(): Readonly<RoomDescription> | undefined {
@@ -119,6 +125,8 @@ export class RoomHistory extends Feature {
119
125
  *
120
126
  * This function is intended to be used in the `POST_ENTITY_REMOVE` callback to detect when an
121
127
  * entity is despawning.
128
+ *
129
+ * In order to use this function, you must upgrade your mod with `ISCFeature.ROOM_HISTORY`.
122
130
  */
123
131
  @Exported
124
132
  public isLeavingRoom(): boolean {