isaacscript-common 15.0.3 → 15.0.5

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 (94) hide show
  1. package/dist/index.d.ts +263 -9
  2. package/dist/isaacscript-common.lua +55 -9
  3. package/dist/src/classes/features/other/DisableInputs.d.ts +14 -0
  4. package/dist/src/classes/features/other/DisableInputs.d.ts.map +1 -1
  5. package/dist/src/classes/features/other/ExtraConsoleCommands.d.ts +6 -0
  6. package/dist/src/classes/features/other/ExtraConsoleCommands.d.ts.map +1 -1
  7. package/dist/src/classes/features/other/FadeInRemover.d.ts +4 -0
  8. package/dist/src/classes/features/other/FadeInRemover.d.ts.map +1 -1
  9. package/dist/src/classes/features/other/FastReset.d.ts +4 -0
  10. package/dist/src/classes/features/other/FastReset.d.ts.map +1 -1
  11. package/dist/src/classes/features/other/FlyingDetection.d.ts +2 -0
  12. package/dist/src/classes/features/other/FlyingDetection.d.ts.map +1 -1
  13. package/dist/src/classes/features/other/ForgottenSwitch.d.ts +2 -0
  14. package/dist/src/classes/features/other/ForgottenSwitch.d.ts.map +1 -1
  15. package/dist/src/classes/features/other/ItemPoolDetection.d.ts +6 -0
  16. package/dist/src/classes/features/other/ItemPoolDetection.d.ts.map +1 -1
  17. package/dist/src/classes/features/other/ModdedElementDetection.d.ts +69 -0
  18. package/dist/src/classes/features/other/ModdedElementDetection.d.ts.map +1 -1
  19. package/dist/src/classes/features/other/ModdedElementSets.d.ts +66 -4
  20. package/dist/src/classes/features/other/ModdedElementSets.d.ts.map +1 -1
  21. package/dist/src/classes/features/other/NoSirenSteal.d.ts +2 -0
  22. package/dist/src/classes/features/other/NoSirenSteal.d.ts.map +1 -1
  23. package/dist/src/classes/features/other/Pause.d.ts +7 -1
  24. package/dist/src/classes/features/other/Pause.d.ts.map +1 -1
  25. package/dist/src/classes/features/other/PersistentEntities.d.ts +4 -0
  26. package/dist/src/classes/features/other/PersistentEntities.d.ts.map +1 -1
  27. package/dist/src/classes/features/other/PickupIndexCreation.d.ts +3 -0
  28. package/dist/src/classes/features/other/PickupIndexCreation.d.ts.map +1 -1
  29. package/dist/src/classes/features/other/PlayerInventory.d.ts +4 -0
  30. package/dist/src/classes/features/other/PlayerInventory.d.ts.map +1 -1
  31. package/dist/src/classes/features/other/PonyDetection.d.ts +4 -0
  32. package/dist/src/classes/features/other/PonyDetection.d.ts.map +1 -1
  33. package/dist/src/classes/features/other/PreventChildEntities.d.ts +3 -0
  34. package/dist/src/classes/features/other/PreventChildEntities.d.ts.map +1 -1
  35. package/dist/src/classes/features/other/PreventCollectibleRotation.d.ts +3 -0
  36. package/dist/src/classes/features/other/PreventCollectibleRotation.d.ts.map +1 -1
  37. package/dist/src/classes/features/other/PreventGridEntityRespawn.d.ts +3 -0
  38. package/dist/src/classes/features/other/PreventGridEntityRespawn.d.ts.map +1 -1
  39. package/dist/src/classes/features/other/RoomClearFrame.d.ts +4 -0
  40. package/dist/src/classes/features/other/RoomClearFrame.d.ts.map +1 -1
  41. package/dist/src/classes/features/other/RoomHistory.d.ts +8 -0
  42. package/dist/src/classes/features/other/RoomHistory.d.ts.map +1 -1
  43. package/dist/src/classes/features/other/RunInNFrames.d.ts +14 -0
  44. package/dist/src/classes/features/other/RunInNFrames.d.ts.map +1 -1
  45. package/dist/src/classes/features/other/RunNextRoom.d.ts +2 -0
  46. package/dist/src/classes/features/other/RunNextRoom.d.ts.map +1 -1
  47. package/dist/src/classes/features/other/SaveDataManager.d.ts +14 -0
  48. package/dist/src/classes/features/other/SaveDataManager.d.ts.map +1 -1
  49. package/dist/src/enums/ISCFeature.d.ts +1 -1
  50. package/dist/src/enums/ISCFeature.d.ts.map +1 -1
  51. package/dist/src/enums/ISCFeature.lua +2 -2
  52. package/dist/src/features.d.ts +1 -1
  53. package/dist/src/features.d.ts.map +1 -1
  54. package/dist/src/features.lua +1 -1
  55. package/dist/src/functions/entitiesSpecific.d.ts +6 -1
  56. package/dist/src/functions/entitiesSpecific.d.ts.map +1 -1
  57. package/dist/src/functions/entitiesSpecific.lua +3 -0
  58. package/dist/src/functions/familiars.d.ts.map +1 -1
  59. package/dist/src/functions/familiars.lua +8 -1
  60. package/dist/src/functions/gridEntities.d.ts +4 -0
  61. package/dist/src/functions/gridEntities.d.ts.map +1 -1
  62. package/dist/src/functions/gridEntities.lua +48 -4
  63. package/dist/src/functions/math.d.ts +1 -1
  64. package/dist/src/functions/math.lua +1 -1
  65. package/package.json +1 -1
  66. package/src/classes/features/other/DisableInputs.ts +12 -0
  67. package/src/classes/features/other/ExtraConsoleCommands.ts +6 -0
  68. package/src/classes/features/other/FadeInRemover.ts +4 -0
  69. package/src/classes/features/other/FastReset.ts +4 -0
  70. package/src/classes/features/other/FlyingDetection.ts +2 -0
  71. package/src/classes/features/other/ForgottenSwitch.ts +2 -0
  72. package/src/classes/features/other/ItemPoolDetection.ts +6 -0
  73. package/src/classes/features/other/ModdedElementDetection.ts +69 -0
  74. package/src/classes/features/other/ModdedElementSets.ts +66 -4
  75. package/src/classes/features/other/NoSirenSteal.ts +2 -0
  76. package/src/classes/features/other/Pause.ts +7 -1
  77. package/src/classes/features/other/PersistentEntities.ts +4 -0
  78. package/src/classes/features/other/PickupIndexCreation.ts +3 -0
  79. package/src/classes/features/other/PlayerInventory.ts +4 -0
  80. package/src/classes/features/other/PonyDetection.ts +4 -0
  81. package/src/classes/features/other/PreventChildEntities.ts +3 -0
  82. package/src/classes/features/other/PreventCollectibleRotation.ts +3 -0
  83. package/src/classes/features/other/PreventGridEntityRespawn.ts +3 -0
  84. package/src/classes/features/other/RoomClearFrame.ts +4 -0
  85. package/src/classes/features/other/RoomHistory.ts +8 -0
  86. package/src/classes/features/other/RunInNFrames.ts +14 -0
  87. package/src/classes/features/other/RunNextRoom.ts +2 -0
  88. package/src/classes/features/other/SaveDataManager.ts +14 -0
  89. package/src/enums/ISCFeature.ts +1 -1
  90. package/src/features.ts +2 -2
  91. package/src/functions/entitiesSpecific.ts +6 -1
  92. package/src/functions/familiars.ts +11 -1
  93. package/src/functions/gridEntities.ts +68 -13
  94. package/src/functions/math.ts +1 -1
@@ -53,6 +53,8 @@ export declare class SaveDataManager extends Feature {
53
53
  * You feed this function with an object containing your variables, and then it will automatically
54
54
  * manage them for you. (See below for an example.)
55
55
  *
56
+ * In order to use this function, you must upgrade your mod with `ISCFeature.SAVE_DATA_MANAGER`.
57
+ *
56
58
  * The save data manager is meant to be called once for each feature of your mod. In other words,
57
59
  * you should not put all of the data for your mod on the same object. Instead, scope your
58
60
  * variables locally to a single file that contains a mod feature, and then call this function to
@@ -157,12 +159,16 @@ export declare class SaveDataManager extends Feature {
157
159
  *
158
160
  * Obviously, doing this will overwrite the current data, so using this function can potentially
159
161
  * result in lost state.
162
+ *
163
+ * In order to use this function, you must upgrade your mod with `ISCFeature.SAVE_DATA_MANAGER`.
160
164
  */
161
165
  saveDataManagerLoad(): void;
162
166
  /**
163
167
  * The save data manager will automatically save variables to disk at the appropriate times (i.e.
164
168
  * when the run is exited). Use this function to explicitly force the save data manager to write
165
169
  * all of its variables to disk immediately.
170
+ *
171
+ * In order to use this function, you must upgrade your mod with `ISCFeature.SAVE_DATA_MANAGER`.
166
172
  */
167
173
  saveDataManagerSave(): void;
168
174
  /**
@@ -170,6 +176,8 @@ export declare class SaveDataManager extends Feature {
170
176
  *
171
177
  * This can make debugging easier, as you can access the variables from the game's debug console.
172
178
  * e.g. `l print(g.feature1.run.foo)`
179
+ *
180
+ * In order to use this function, you must upgrade your mod with `ISCFeature.SAVE_DATA_MANAGER`.
173
181
  */
174
182
  saveDataManagerSetGlobal(): void;
175
183
  /**
@@ -181,11 +189,15 @@ export declare class SaveDataManager extends Feature {
181
189
  * the data fields).
182
190
  *
183
191
  * This function is variadic, which means you can pass as many classes as you want to register.
192
+ *
193
+ * In order to use this function, you must upgrade your mod with `ISCFeature.SAVE_DATA_MANAGER`.
184
194
  */
185
195
  saveDataManagerRegisterClass(...tstlClasses: AnyClass[]): void;
186
196
  /**
187
197
  * Removes a previously registered key from the save data manager. This is the opposite of the
188
198
  * "saveDataManager" method.
199
+ *
200
+ * In order to use this function, you must upgrade your mod with `ISCFeature.SAVE_DATA_MANAGER`.
189
201
  */
190
202
  saveDataManagerRemove(key: string): void;
191
203
  /**
@@ -207,6 +219,8 @@ export declare class SaveDataManager extends Feature {
207
219
  * // Then, later on, to explicit reset all of the "room" variables:
208
220
  * mod.saveDataManagerReset("file1", "room");
209
221
  * ```
222
+ *
223
+ * In order to use this function, you must upgrade your mod with `ISCFeature.SAVE_DATA_MANAGER`.
210
224
  */
211
225
  saveDataManagerReset(key: string, childObjectKey: SaveDataKey): void;
212
226
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SaveDataManager.d.ts","sourceRoot":"","sources":["../../../../../src/classes/features/other/SaveDataManager.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAMzD,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAsBhD,qBAAa,eAAgB,SAAQ,OAAO;IAC1C;;;OAGG;IACH,OAAO,CAAC,GAAG,CAAM;IAEjB;;;;OAIG;IACH,OAAO,CAAC,WAAW,CAAkC;IAErD;;;OAGG;IACH,OAAO,CAAC,mBAAmB,CAAkC;IAE7D;;;OAGG;IACH,OAAO,CAAC,0BAA0B,CAAuC;IAEzE;;;;;;OAMG;IACH,OAAO,CAAC,2BAA2B,CAAkC;IAErE;;;OAGG;IACH,OAAO,CAAC,iBAAiB,CAAkC;IAG3D,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,qCAAqC,CAAS;IAyBtD,OAAO,CAAC,2BAA2B,CAUjC;IAGF,OAAO,CAAC,cAAc,CA0BpB;IAGF,OAAO,CAAC,WAAW,CAUjB;IAGF,OAAO,CAAC,YAAY,CAYlB;IAGF,OAAO,CAAC,gBAAgB,CAuBtB;IAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiGG;IACI,eAAe,CAAC,UAAU,EAAE,GAAG,EAAE,KAAK,EAC3C,GAAG,EAAE,MAAM,EAAE,qEAAqE;IAClF,CAAC,EAAE,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE,KAAK,CAAC,EACnC,eAAe,CAAC,EAAE,MAAM,OAAO,GAC9B,IAAI;IACA,eAAe,CACpB,GAAG,EAAE,MAAM,EAAE,kEAAkE;IAC/E,CAAC,EAAE,QAAQ,EACX,eAAe,EAAE,KAAK,GACrB,IAAI;IAkDP;;OAEG;IACH,OAAO,CAAC,gCAAgC;IAgBxC;;;;;;;OAOG;IAEI,mBAAmB,IAAI,IAAI;IAIlC;;;;OAIG;IAEI,mBAAmB,IAAI,IAAI;IAIlC;;;;;OAKG;IAEI,wBAAwB,IAAI,IAAI;IAIvC;;;;;;;;;OASG;IAEI,4BAA4B,CAAC,GAAG,WAAW,EAAE,QAAQ,EAAE,GAAG,IAAI;IAcrE;;;OAGG;IAEI,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAoB/C;;;;;;;;;;;;;;;;;;;OAmBG;IAEI,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,GAAG,IAAI;CAqB5E"}
1
+ {"version":3,"file":"SaveDataManager.d.ts","sourceRoot":"","sources":["../../../../../src/classes/features/other/SaveDataManager.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAMzD,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAsBhD,qBAAa,eAAgB,SAAQ,OAAO;IAC1C;;;OAGG;IACH,OAAO,CAAC,GAAG,CAAM;IAEjB;;;;OAIG;IACH,OAAO,CAAC,WAAW,CAAkC;IAErD;;;OAGG;IACH,OAAO,CAAC,mBAAmB,CAAkC;IAE7D;;;OAGG;IACH,OAAO,CAAC,0BAA0B,CAAuC;IAEzE;;;;;;OAMG;IACH,OAAO,CAAC,2BAA2B,CAAkC;IAErE;;;OAGG;IACH,OAAO,CAAC,iBAAiB,CAAkC;IAG3D,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,qCAAqC,CAAS;IAyBtD,OAAO,CAAC,2BAA2B,CAUjC;IAGF,OAAO,CAAC,cAAc,CA0BpB;IAGF,OAAO,CAAC,WAAW,CAUjB;IAGF,OAAO,CAAC,YAAY,CAYlB;IAGF,OAAO,CAAC,gBAAgB,CAuBtB;IAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmGG;IACI,eAAe,CAAC,UAAU,EAAE,GAAG,EAAE,KAAK,EAC3C,GAAG,EAAE,MAAM,EAAE,qEAAqE;IAClF,CAAC,EAAE,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE,KAAK,CAAC,EACnC,eAAe,CAAC,EAAE,MAAM,OAAO,GAC9B,IAAI;IACA,eAAe,CACpB,GAAG,EAAE,MAAM,EAAE,kEAAkE;IAC/E,CAAC,EAAE,QAAQ,EACX,eAAe,EAAE,KAAK,GACrB,IAAI;IAkDP;;OAEG;IACH,OAAO,CAAC,gCAAgC;IAgBxC;;;;;;;;;OASG;IAEI,mBAAmB,IAAI,IAAI;IAIlC;;;;;;OAMG;IAEI,mBAAmB,IAAI,IAAI;IAIlC;;;;;;;OAOG;IAEI,wBAAwB,IAAI,IAAI;IAIvC;;;;;;;;;;;OAWG;IAEI,4BAA4B,CAAC,GAAG,WAAW,EAAE,QAAQ,EAAE,GAAG,IAAI;IAcrE;;;;;OAKG;IAEI,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAoB/C;;;;;;;;;;;;;;;;;;;;;OAqBG;IAEI,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,GAAG,IAAI;CAqB5E"}
@@ -35,7 +35,7 @@ export declare enum ISCFeature {
35
35
  NO_SIREN_STEAL = 33,
36
36
  PAUSE = 34,
37
37
  PERSISTENT_ENTITIES = 35,
38
- PICKUP_INDEX = 36,
38
+ PICKUP_INDEX_CREATION = 36,
39
39
  PLAYER_INVENTORY = 37,
40
40
  PONY_DETECTION = 38,
41
41
  PREVENT_CHILD_ENTITIES = 39,
@@ -1 +1 @@
1
- {"version":3,"file":"ISCFeature.d.ts","sourceRoot":"","sources":["../../../src/enums/ISCFeature.ts"],"names":[],"mappings":"AAAA,oBAAY,UAAU;IAEpB,aAAa,IAAA;IACb,iBAAiB,IAAA;IACjB,cAAc,IAAA;IACd,+BAA+B,IAAA;IAC/B,4BAA4B,IAAA;IAC5B,4BAA4B,IAAA;IAC5B,wBAAwB,IAAA;IACxB,qBAAqB,IAAA;IACrB,4BAA4B,IAAA;IAC5B,0BAA0B,IAAA;IAC1B,qBAAqB,KAAA;IACrB,qBAAqB,KAAA;IAGrB,2BAA2B,KAAA;IAC3B,eAAe,KAAA;IACf,0BAA0B,KAAA;IAC1B,oBAAoB,KAAA;IACpB,iBAAiB,KAAA;IACjB,cAAc,KAAA;IACd,cAAc,KAAA;IACd,aAAa,KAAA;IACb,gBAAgB,KAAA;IAChB,aAAa,KAAA;IACb,gBAAgB,KAAA;IAChB,iBAAiB,KAAA;IACjB,cAAc,KAAA;IACd,eAAe,KAAA;IACf,UAAU,KAAA;IACV,gBAAgB,KAAA;IAChB,gBAAgB,KAAA;IAChB,sBAAsB,KAAA;IACtB,mBAAmB,KAAA;IACnB,wBAAwB,KAAA;IACxB,mBAAmB,KAAA;IACnB,cAAc,KAAA;IACd,KAAK,KAAA;IACL,mBAAmB,KAAA;IACnB,YAAY,KAAA;IACZ,gBAAgB,KAAA;IAChB,cAAc,KAAA;IACd,sBAAsB,KAAA;IACtB,4BAA4B,KAAA;IAC5B,2BAA2B,KAAA;IAC3B,gBAAgB,KAAA;IAChB,YAAY,KAAA;IACZ,eAAe,KAAA;IACf,aAAa,KAAA;IACb,iBAAiB,KAAA;IACjB,sBAAsB,KAAA;IACtB,iBAAiB,KAAA;IACjB,aAAa,KAAA;IACb,YAAY,KAAA;IACZ,uBAAuB,KAAA;CACxB"}
1
+ {"version":3,"file":"ISCFeature.d.ts","sourceRoot":"","sources":["../../../src/enums/ISCFeature.ts"],"names":[],"mappings":"AAAA,oBAAY,UAAU;IAEpB,aAAa,IAAA;IACb,iBAAiB,IAAA;IACjB,cAAc,IAAA;IACd,+BAA+B,IAAA;IAC/B,4BAA4B,IAAA;IAC5B,4BAA4B,IAAA;IAC5B,wBAAwB,IAAA;IACxB,qBAAqB,IAAA;IACrB,4BAA4B,IAAA;IAC5B,0BAA0B,IAAA;IAC1B,qBAAqB,KAAA;IACrB,qBAAqB,KAAA;IAGrB,2BAA2B,KAAA;IAC3B,eAAe,KAAA;IACf,0BAA0B,KAAA;IAC1B,oBAAoB,KAAA;IACpB,iBAAiB,KAAA;IACjB,cAAc,KAAA;IACd,cAAc,KAAA;IACd,aAAa,KAAA;IACb,gBAAgB,KAAA;IAChB,aAAa,KAAA;IACb,gBAAgB,KAAA;IAChB,iBAAiB,KAAA;IACjB,cAAc,KAAA;IACd,eAAe,KAAA;IACf,UAAU,KAAA;IACV,gBAAgB,KAAA;IAChB,gBAAgB,KAAA;IAChB,sBAAsB,KAAA;IACtB,mBAAmB,KAAA;IACnB,wBAAwB,KAAA;IACxB,mBAAmB,KAAA;IACnB,cAAc,KAAA;IACd,KAAK,KAAA;IACL,mBAAmB,KAAA;IACnB,qBAAqB,KAAA;IACrB,gBAAgB,KAAA;IAChB,cAAc,KAAA;IACd,sBAAsB,KAAA;IACtB,4BAA4B,KAAA;IAC5B,2BAA2B,KAAA;IAC3B,gBAAgB,KAAA;IAChB,YAAY,KAAA;IACZ,eAAe,KAAA;IACf,aAAa,KAAA;IACb,iBAAiB,KAAA;IACjB,sBAAsB,KAAA;IACtB,iBAAiB,KAAA;IACjB,aAAa,KAAA;IACb,YAAY,KAAA;IACZ,uBAAuB,KAAA;CACxB"}
@@ -72,8 +72,8 @@ ____exports.ISCFeature.PAUSE = 34
72
72
  ____exports.ISCFeature[____exports.ISCFeature.PAUSE] = "PAUSE"
73
73
  ____exports.ISCFeature.PERSISTENT_ENTITIES = 35
74
74
  ____exports.ISCFeature[____exports.ISCFeature.PERSISTENT_ENTITIES] = "PERSISTENT_ENTITIES"
75
- ____exports.ISCFeature.PICKUP_INDEX = 36
76
- ____exports.ISCFeature[____exports.ISCFeature.PICKUP_INDEX] = "PICKUP_INDEX"
75
+ ____exports.ISCFeature.PICKUP_INDEX_CREATION = 36
76
+ ____exports.ISCFeature[____exports.ISCFeature.PICKUP_INDEX_CREATION] = "PICKUP_INDEX_CREATION"
77
77
  ____exports.ISCFeature.PLAYER_INVENTORY = 37
78
78
  ____exports.ISCFeature[____exports.ISCFeature.PLAYER_INVENTORY] = "PLAYER_INVENTORY"
79
79
  ____exports.ISCFeature.PONY_DETECTION = 38
@@ -90,7 +90,7 @@ export interface ISCFeatureToClass {
90
90
  [ISCFeature.NO_SIREN_STEAL]: NoSirenSteal;
91
91
  [ISCFeature.PAUSE]: Pause;
92
92
  [ISCFeature.PERSISTENT_ENTITIES]: PersistentEntities;
93
- [ISCFeature.PICKUP_INDEX]: PickupIndexCreation;
93
+ [ISCFeature.PICKUP_INDEX_CREATION]: PickupIndexCreation;
94
94
  [ISCFeature.PLAYER_INVENTORY]: PlayerInventory;
95
95
  [ISCFeature.PONY_DETECTION]: PonyDetection;
96
96
  [ISCFeature.PREVENT_CHILD_ENTITIES]: PreventChildEntities;
@@ -1 +1 @@
1
- {"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../../src/features.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../../src/features.ts"],"names":[],"mappings":"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"}
@@ -214,7 +214,7 @@ function ____exports.getFeatures(self, mod, callbacks)
214
214
  [ISCFeature.NO_SIREN_STEAL] = __TS__New(NoSirenSteal),
215
215
  [ISCFeature.PAUSE] = pause,
216
216
  [ISCFeature.PERSISTENT_ENTITIES] = __TS__New(PersistentEntities, roomHistory),
217
- [ISCFeature.PICKUP_INDEX] = __TS__New(PickupIndexCreation, roomHistory),
217
+ [ISCFeature.PICKUP_INDEX_CREATION] = __TS__New(PickupIndexCreation, roomHistory),
218
218
  [ISCFeature.PLAYER_INVENTORY] = __TS__New(PlayerInventory),
219
219
  [ISCFeature.PONY_DETECTION] = ponyDetection,
220
220
  [ISCFeature.PREVENT_CHILD_ENTITIES] = __TS__New(PreventChildEntities),
@@ -297,7 +297,12 @@ export declare function spawnBombWithSeed(bombVariant: BombVariant, subType: int
297
297
  export declare function spawnEffect(effectVariant: EffectVariant, subType: int, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityEffect;
298
298
  /** Helper function to spawn a `EntityType.EFFECT` (1000) with a specific seed. */
299
299
  export declare function spawnEffectWithSeed(effectVariant: EffectVariant, subType: int, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityEffect;
300
- /** Helper function to spawn a `EntityType.FAMILIAR` (3). */
300
+ /**
301
+ * Helper function to spawn a `EntityType.FAMILIAR` (3).
302
+ *
303
+ * If you are trying to implement a custom familiar, you probably want to use the
304
+ * `checkFamiliarFromCollectibles` helper function instead.
305
+ */
301
306
  export declare function spawnFamiliar(familiarVariant: FamiliarVariant, subType: int, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityFamiliar;
302
307
  /** Helper function to spawn a `EntityType.FAMILIAR` (3) with a specific seed. */
303
308
  export declare function spawnFamiliarWithSeed(familiarVariant: FamiliarVariant, subType: int, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityFamiliar;
@@ -1 +1 @@
1
- {"version":3,"file":"entitiesSpecific.d.ts","sourceRoot":"","sources":["../../../src/functions/entitiesSpecific.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,aAAa,EACb,UAAU,EACV,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,WAAW,EACZ,MAAM,8BAA8B,CAAC;AAItC;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,QAAQ,CACtB,WAAW,GAAE,WAAgB,EAC7B,OAAO,SAAK,GACX,UAAU,EAAE,CAYd;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,UAAU,CACxB,aAAa,GAAE,aAAkB,EACjC,OAAO,SAAK,GACX,YAAY,EAAE,CAYhB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,YAAY,CAC1B,eAAe,GAAE,eAAoB,EACrC,OAAO,SAAK,GACX,cAAc,EAAE,CAYlB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,SAAS,CACvB,YAAY,GAAE,YAAiB,EAC/B,OAAO,SAAK,GACX,WAAW,EAAE,CAYf;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,SAAS,CACvB,YAAY,GAAE,YAAiB,EAC/B,OAAO,SAAK,GACX,WAAW,EAAE,CAYf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,OAAO,CACrB,UAAU,GAAE,UAAe,EAC3B,OAAO,SAAK,EACZ,OAAO,SAAK,EACZ,cAAc,UAAQ,GACrB,SAAS,EAAE,CAYb;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,UAAU,CACxB,aAAa,GAAE,aAAkB,EACjC,OAAO,SAAK,GACX,YAAY,EAAE,CAYhB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAC5B,iBAAiB,GAAE,iBAAsB,EACzC,OAAO,SAAK,GACX,gBAAgB,EAAE,CAgBpB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,QAAQ,CACtB,WAAW,GAAE,WAAgB,EAC7B,OAAO,SAAK,GACX,UAAU,EAAE,CAId;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,QAAQ,CACtB,WAAW,GAAE,WAAgB,EAC7B,OAAO,SAAK,GACX,UAAU,EAAE,CAYd;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAC5B,WAAW,GAAE,WAAgB,EAC7B,OAAO,SAAK,EACZ,GAAG,CAAC,EAAE,GAAG,GACR,UAAU,EAAE,CAGd;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,aAAa,GAAE,aAAkB,EACjC,OAAO,SAAK,EACZ,GAAG,CAAC,EAAE,GAAG,GACR,YAAY,EAAE,CAGhB;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,eAAe,GAAE,eAAoB,EACrC,OAAO,SAAK,EACZ,GAAG,CAAC,EAAE,GAAG,GACR,cAAc,EAAE,CAGlB;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,YAAY,GAAE,YAAiB,EAC/B,OAAO,SAAK,EACZ,GAAG,CAAC,EAAE,GAAG,GACR,WAAW,EAAE,CAGf;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,YAAY,GAAE,YAAiB,EAC/B,OAAO,SAAK,EACZ,GAAG,CAAC,EAAE,GAAG,GACR,WAAW,EAAE,CAGf;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAC3B,UAAU,GAAE,UAAe,EAC3B,OAAO,SAAK,EACZ,OAAO,SAAK,EACZ,GAAG,CAAC,EAAE,GAAG,GACR,SAAS,EAAE,CAGb;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,aAAa,GAAE,aAAkB,EACjC,OAAO,SAAK,EACZ,GAAG,CAAC,EAAE,GAAG,GACR,YAAY,EAAE,CAGhB;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAClC,iBAAiB,GAAE,iBAAsB,EACzC,OAAO,SAAK,EACZ,GAAG,CAAC,EAAE,GAAG,GACR,gBAAgB,EAAE,CAGpB;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAC5B,WAAW,GAAE,WAAgB,EAC7B,OAAO,SAAK,EACZ,GAAG,CAAC,EAAE,GAAG,GACR,MAAM,EAAE,CAGV;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAC5B,WAAW,GAAE,WAAgB,EAC7B,OAAO,SAAK,EACZ,GAAG,CAAC,EAAE,GAAG,GACR,UAAU,EAAE,CAGd;AAED,wDAAwD;AACxD,wBAAgB,SAAS,CACvB,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,EACvC,SAAS,GAAE,IAAI,GAAG,GAAG,GAAG,SAAqB,GAC5C,UAAU,CAiBZ;AAED,6EAA6E;AAC7E,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,IAAI,GAAG,GAAG,EACrB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,GACtC,UAAU,CASZ;AAED,6DAA6D;AAC7D,wBAAgB,WAAW,CACzB,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,EACvC,SAAS,GAAE,IAAI,GAAG,GAAG,GAAG,SAAqB,GAC5C,YAAY,CAiBd;AAED,kFAAkF;AAClF,wBAAgB,mBAAmB,CACjC,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,IAAI,GAAG,GAAG,EACrB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,GACtC,YAAY,CASd;AAED,4DAA4D;AAC5D,wBAAgB,aAAa,CAC3B,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,EACvC,SAAS,GAAE,IAAI,GAAG,GAAG,GAAG,SAAqB,GAC5C,cAAc,CAiBhB;AAED,iFAAiF;AACjF,wBAAgB,qBAAqB,CACnC,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,IAAI,GAAG,GAAG,EACrB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,GACtC,cAAc,CAShB;AAED,yDAAyD;AACzD,wBAAgB,UAAU,CACxB,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,EACvC,SAAS,GAAE,IAAI,GAAG,GAAG,GAAG,SAAqB,GAC5C,WAAW,CAiBb;AAED,8EAA8E;AAC9E,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,IAAI,GAAG,GAAG,EACrB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,GACtC,WAAW,CASb;AAED,yDAAyD;AACzD,wBAAgB,UAAU,CACxB,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,EACvC,SAAS,GAAE,IAAI,GAAG,GAAG,GAAG,SAAqB,GAC5C,WAAW,CAiBb;AAED,8EAA8E;AAC9E,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,IAAI,GAAG,GAAG,EACrB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,GACtC,WAAW,CASb;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CACtB,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,GAAG,EACZ,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,EACvC,SAAS,GAAE,IAAI,GAAG,GAAG,GAAG,SAAqB,GAC5C,SAAS,CAiBX;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,GAAG,EACZ,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,IAAI,GAAG,GAAG,EACrB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,GACtC,SAAS,CAUX;AAED,0DAA0D;AAC1D,wBAAgB,WAAW,CACzB,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,EACvC,SAAS,GAAE,IAAI,GAAG,GAAG,GAAG,SAAqB,GAC5C,YAAY,CAiBd;AAED,+EAA+E;AAC/E,wBAAgB,mBAAmB,CACjC,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,IAAI,GAAG,GAAG,EACrB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,GACtC,YAAY,CASd;AAED,8DAA8D;AAC9D,wBAAgB,eAAe,CAC7B,iBAAiB,EAAE,iBAAiB,EACpC,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,EACvC,SAAS,GAAE,IAAI,GAAG,GAAG,GAAG,SAAqB,GAC5C,gBAAgB,CAiBlB;AAED,mFAAmF;AACnF,wBAAgB,uBAAuB,CACrC,iBAAiB,EAAE,iBAAiB,EACpC,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,IAAI,GAAG,GAAG,EACrB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,GACtC,gBAAgB,CASlB;AAED,wDAAwD;AACxD,wBAAgB,SAAS,CACvB,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,EACvC,SAAS,GAAE,IAAI,GAAG,GAAG,GAAG,SAAqB,GAC5C,UAAU,CAUZ;AAED,6EAA6E;AAC7E,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,IAAI,GAAG,GAAG,EACrB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,GACtC,UAAU,CASZ;AAED,wDAAwD;AACxD,wBAAgB,SAAS,CACvB,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,EACvC,SAAS,GAAE,IAAI,GAAG,GAAG,GAAG,SAAqB,GAC5C,UAAU,CAiBZ;AAED,mFAAmF;AACnF,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,IAAI,GAAG,GAAG,EACrB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,GACtC,UAAU,CASZ"}
1
+ {"version":3,"file":"entitiesSpecific.d.ts","sourceRoot":"","sources":["../../../src/functions/entitiesSpecific.ts"],"names":[],"mappings":"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"}
@@ -606,6 +606,9 @@ function ____exports.spawnEffectWithSeed(self, effectVariant, subType, position,
606
606
  )
607
607
  end
608
608
  --- Helper function to spawn a `EntityType.FAMILIAR` (3).
609
+ --
610
+ -- If you are trying to implement a custom familiar, you probably want to use the
611
+ -- `checkFamiliarFromCollectibles` helper function instead.
609
612
  function ____exports.spawnFamiliar(self, familiarVariant, subType, position, velocity, spawner, seedOrRNG)
610
613
  if velocity == nil then
611
614
  velocity = VectorZero
@@ -1 +1 @@
1
- {"version":3,"file":"familiars.d.ts","sourceRoot":"","sources":["../../../src/functions/familiars.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAEf,eAAe,EAChB,MAAM,8BAA8B,CAAC;AAMtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,YAAY,EACpB,eAAe,EAAE,eAAe,EAChC,WAAW,EAAE,GAAG,EAChB,eAAe,EAAE,eAAe,EAChC,eAAe,CAAC,EAAE,GAAG,GACpB,IAAI,CASN;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,YAAY,EACpB,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE,eAAe,EAChC,eAAe,CAAC,EAAE,GAAG,GACpB,IAAI,CAmBN;AAED,kFAAkF;AAClF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG,cAAc,EAAE,CAOzE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAS3E;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAGzE;AAED;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,cAAc,GACvB,OAAO,CAET"}
1
+ {"version":3,"file":"familiars.d.ts","sourceRoot":"","sources":["../../../src/functions/familiars.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAEf,eAAe,EAChB,MAAM,8BAA8B,CAAC;AActC;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,YAAY,EACpB,eAAe,EAAE,eAAe,EAChC,WAAW,EAAE,GAAG,EAChB,eAAe,EAAE,eAAe,EAChC,eAAe,CAAC,EAAE,GAAG,GACpB,IAAI,CAWN;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,YAAY,EACpB,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE,eAAe,EAChC,eAAe,CAAC,EAAE,GAAG,GACpB,IAAI,CAmBN;AAED,kFAAkF;AAClF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG,cAAc,EAAE,CAOzE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAS3E;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAGzE;AAED;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,cAAc,GACvB,OAAO,CAET"}
@@ -12,6 +12,12 @@ local ____entities = require("src.functions.entities")
12
12
  local getEntities = ____entities.getEntities
13
13
  local ____entitiesSpecific = require("src.functions.entitiesSpecific")
14
14
  local getFamiliars = ____entitiesSpecific.getFamiliars
15
+ local ____rng = require("src.functions.rng")
16
+ local newRNG = ____rng.newRNG
17
+ --- Instead of generating a new RNG object every time we need to spawn a new familiar, we instead
18
+ -- re-use the same RNG object. This makes it less likely that the `InitSeed` of the familiar will
19
+ -- overlap, since we are "nexting" instead of doing a fresh reroll.
20
+ local familiarGenerationRNG = newRNG(nil)
15
21
  --- Helper function to add and remove familiars based on a target amount that you specify.
16
22
  --
17
23
  -- This is a convenience wrapper around the `EntityPlayer.CheckFamiliar` method. Use this helper
@@ -40,11 +46,12 @@ local getFamiliars = ____entitiesSpecific.getFamiliars
40
46
  -- specified, it will search for existing familiars of all sub-types, and
41
47
  -- spawn new familiars with a sub-type of 0.
42
48
  function ____exports.checkFamiliar(self, player, collectibleType, targetCount, familiarVariant, familiarSubType)
49
+ familiarGenerationRNG:Next()
43
50
  local itemConfigItem = itemConfig:GetCollectible(collectibleType)
44
51
  player:CheckFamiliar(
45
52
  familiarVariant,
46
53
  targetCount,
47
- RNG(),
54
+ familiarGenerationRNG,
48
55
  itemConfigItem,
49
56
  familiarSubType
50
57
  )
@@ -52,6 +52,8 @@ export declare function getGridEntities(...gridEntityTypes: GridEntityType[]): G
52
52
  * exclude.
53
53
  */
54
54
  export declare function getGridEntitiesExcept(...gridEntityTypes: GridEntityType[]): GridEntity[];
55
+ /** Helper function to get all grid entities in a given radius around a given point. */
56
+ export declare function getGridEntitiesInRadius(targetPosition: Vector, radius: number): GridEntity[];
55
57
  /**
56
58
  * Helper function to get a map of every grid entity in the current room. The indexes of the map are
57
59
  * equal to the grid index. The values of the map are equal to the grid entities.
@@ -60,6 +62,8 @@ export declare function getGridEntitiesExcept(...gridEntityTypes: GridEntityType
60
62
  * arguments to match specific grid entity types.
61
63
  */
62
64
  export declare function getGridEntitiesMap(...gridEntityTypes: GridEntityType[]): Map<int, GridEntity>;
65
+ /** Helper function to get the top left and bottom right corners of a given grid entity. */
66
+ export declare function getGridEntityCollisionPoints(gridEntity: GridEntity): [topLeft: Vector, bottomRight: Vector];
63
67
  /** Helper function to get a string containing the grid entity's type and variant. */
64
68
  export declare function getGridEntityID(gridEntity: GridEntity): string;
65
69
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"gridEntities.d.ts","sourceRoot":"","sources":["../../../src/functions/gridEntities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gridEntities.d.ts","sourceRoot":"","sources":["../../../src/functions/gridEntities.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ local ____cachedClasses = require("src.core.cachedClasses")
16
16
  local game = ____cachedClasses.game
17
17
  local ____constants = require("src.core.constants")
18
18
  local DISTANCE_OF_GRID_TILE = ____constants.DISTANCE_OF_GRID_TILE
19
+ local VectorOne = ____constants.VectorOne
19
20
  local ____gridEntityTypeToBrokenStateMap = require("src.maps.gridEntityTypeToBrokenStateMap")
20
21
  local GRID_ENTITY_TYPE_TO_BROKEN_STATE_MAP = ____gridEntityTypeToBrokenStateMap.GRID_ENTITY_TYPE_TO_BROKEN_STATE_MAP
21
22
  local ____gridEntityXMLMap = require("src.maps.gridEntityXMLMap")
@@ -38,6 +39,7 @@ local asNumber = ____types.asNumber
38
39
  local isNumber = ____types.isNumber
39
40
  local ____utils = require("src.functions.utils")
40
41
  local eRange = ____utils.eRange
42
+ local iRange = ____utils.iRange
41
43
  local ____vector = require("src.functions.vector")
42
44
  local isVector = ____vector.isVector
43
45
  local vectorEquals = ____vector.vectorEquals
@@ -60,6 +62,12 @@ function getAllGridEntities(self)
60
62
  end
61
63
  return gridEntities
62
64
  end
65
+ --- Helper function to get the top left and bottom right corners of a given grid entity.
66
+ function ____exports.getGridEntityCollisionPoints(self, gridEntity)
67
+ local topLeft = Vector(gridEntity.Position.X - DISTANCE_OF_GRID_TILE / 2, gridEntity.Position.Y - DISTANCE_OF_GRID_TILE / 2)
68
+ local bottomRight = Vector(gridEntity.Position.X + DISTANCE_OF_GRID_TILE / 2, gridEntity.Position.Y + DISTANCE_OF_GRID_TILE / 2)
69
+ return {topLeft, bottomRight}
70
+ end
63
71
  --- Helper function to get the grid index of the top left wall. (This will depend on what the current
64
72
  -- room shape is.)
65
73
  function ____exports.getTopLeftWallGridIndex(self)
@@ -181,8 +189,7 @@ end
181
189
  -- Note that this function will not work properly in the `POST_NEW_ROOM` callback, since entities do
182
190
  -- not have collision yet in that callback.
183
191
  function ____exports.getCollidingEntitiesWithGridEntity(self, gridEntity)
184
- local gridEntityCollisionTopLeft = Vector(gridEntity.Position.X - DISTANCE_OF_GRID_TILE / 2, gridEntity.Position.Y - DISTANCE_OF_GRID_TILE / 2)
185
- local gridEntityCollisionBottomRight = Vector(gridEntity.Position.X + DISTANCE_OF_GRID_TILE / 2, gridEntity.Position.Y + DISTANCE_OF_GRID_TILE / 2)
192
+ local topLeft, bottomRight = table.unpack(____exports.getGridEntityCollisionPoints(nil, gridEntity))
186
193
  local closeEntities = Isaac.FindInRadius(gridEntity.Position, DISTANCE_OF_GRID_TILE * 2)
187
194
  return __TS__ArrayFilter(
188
195
  closeEntities,
@@ -190,8 +197,8 @@ function ____exports.getCollidingEntitiesWithGridEntity(self, gridEntity)
190
197
  nil,
191
198
  entity.Position,
192
199
  entity.Size + 0.1,
193
- gridEntityCollisionTopLeft,
194
- gridEntityCollisionBottomRight
200
+ topLeft,
201
+ bottomRight
195
202
  ) end
196
203
  )
197
204
  end
@@ -251,6 +258,43 @@ function ____exports.getGridEntitiesExcept(self, ...)
251
258
  end
252
259
  )
253
260
  end
261
+ --- Helper function to get all grid entities in a given radius around a given point.
262
+ function ____exports.getGridEntitiesInRadius(self, targetPosition, radius)
263
+ radius = math.abs(radius)
264
+ local topLeftOffset = VectorOne * -radius
265
+ local mostTopLeftPosition = targetPosition + topLeftOffset
266
+ local room = game:GetRoom()
267
+ local diameter = radius * 2
268
+ local iterations = math.ceil(diameter / DISTANCE_OF_GRID_TILE)
269
+ local separation = diameter / iterations
270
+ local gridEntities = {}
271
+ local registeredGridIndexes = __TS__New(Set)
272
+ for ____, x in ipairs(iRange(nil, iterations)) do
273
+ for ____, y in ipairs(iRange(nil, iterations)) do
274
+ do
275
+ local position = mostTopLeftPosition + Vector(x * separation, y * separation)
276
+ local gridIndex = room:GetGridIndex(position)
277
+ local gridEntity = room:GetGridEntityFromPos(position)
278
+ if gridEntity == nil or registeredGridIndexes:has(gridIndex) then
279
+ goto __continue20
280
+ end
281
+ registeredGridIndexes:add(gridIndex)
282
+ local topLeft, bottomRight = table.unpack(____exports.getGridEntityCollisionPoints(nil, gridEntity))
283
+ if isCircleIntersectingRectangle(
284
+ nil,
285
+ targetPosition,
286
+ radius,
287
+ topLeft,
288
+ bottomRight
289
+ ) then
290
+ gridEntities[#gridEntities + 1] = gridEntity
291
+ end
292
+ end
293
+ ::__continue20::
294
+ end
295
+ end
296
+ return gridEntities
297
+ end
254
298
  --- Helper function to get a map of every grid entity in the current room. The indexes of the map are
255
299
  -- equal to the grid index. The values of the map are equal to the grid entities.
256
300
  --
@@ -40,7 +40,7 @@ export declare function lerpAngleDegrees(aStart: number, aEnd: number, percent:
40
40
  * From: http://lua-users.org/wiki/SimpleRound
41
41
  *
42
42
  * @param num The number to round.
43
- * @param numDecimalPlaces Default is 0.
43
+ * @param numDecimalPlaces Optional. Default is 0.
44
44
  */
45
45
  export declare function round(num: float, numDecimalPlaces?: number): float;
46
46
  /**
@@ -90,7 +90,7 @@ end
90
90
  -- From: http://lua-users.org/wiki/SimpleRound
91
91
  --
92
92
  -- @param num The number to round.
93
- -- @param numDecimalPlaces Default is 0.
93
+ -- @param numDecimalPlaces Optional. Default is 0.
94
94
  function ____exports.round(self, num, numDecimalPlaces)
95
95
  if numDecimalPlaces == nil then
96
96
  numDecimalPlaces = 0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "isaacscript-common",
3
- "version": "15.0.3",
3
+ "version": "15.0.5",
4
4
  "description": "Helper functions and features for IsaacScript mods.",
5
5
  "keywords": [
6
6
  "isaac",
@@ -116,6 +116,8 @@ export class DisableInputs extends Feature {
116
116
  *
117
117
  * Use the `enableAllInputs` helper function to set things back to normal.
118
118
  *
119
+ * In order to use this function, you must upgrade your mod with `ISCFeature.DISABLE_INPUTS`.
120
+ *
119
121
  * @param key The name of the mod feature that is requesting the enable/disable. This is needed so
120
122
  * that multiple mod features can work in tandem.
121
123
  * @param buttonActions An array of the actions to action.
@@ -132,6 +134,8 @@ export class DisableInputs extends Feature {
132
134
  *
133
135
  * Use the `enableAllInputs` helper function to set things back to normal.
134
136
  *
137
+ * In order to use this function, you must upgrade your mod with `ISCFeature.DISABLE_INPUTS`.
138
+ *
135
139
  * @param key The name of the mod feature that is requesting the enable/disable. This is needed so
136
140
  * that multiple mod features can work in tandem.
137
141
  */
@@ -147,6 +151,8 @@ export class DisableInputs extends Feature {
147
151
  *
148
152
  * Use the `enableAllInputs` helper function to set things back to normal.
149
153
  *
154
+ * In order to use this function, you must upgrade your mod with `ISCFeature.DISABLE_INPUTS`.
155
+ *
150
156
  * @param key The name of the mod feature that is requesting the enable/disable. This is needed so
151
157
  * that multiple mod features can work in tandem.
152
158
  * @param blacklist A set of ButtonActions to disallow.
@@ -166,6 +172,8 @@ export class DisableInputs extends Feature {
166
172
  *
167
173
  * Use the `enableAllInputs` helper function to set things back to normal.
168
174
  *
175
+ * In order to use this function, you must upgrade your mod with `ISCFeature.DISABLE_INPUTS`.
176
+ *
169
177
  * @param key The name of the mod feature that is requesting the enable/disable. This is needed so
170
178
  * that multiple mod features can work in tandem.
171
179
  * @param whitelist A set of ButtonActions to allow.
@@ -186,6 +194,8 @@ export class DisableInputs extends Feature {
186
194
  *
187
195
  * Use the `enableAllInputs` helper function to set things back to normal.
188
196
  *
197
+ * In order to use this function, you must upgrade your mod with `ISCFeature.DISABLE_INPUTS`.
198
+ *
189
199
  * @param key The name of the mod feature that is requesting the enable/disable. This is needed so
190
200
  * that multiple mod features can work in tandem.
191
201
  */
@@ -201,6 +211,8 @@ export class DisableInputs extends Feature {
201
211
  *
202
212
  * Use the `enableAllInputs` helper function to set things back to normal.
203
213
  *
214
+ * In order to use this function, you must upgrade your mod with `ISCFeature.DISABLE_INPUTS`.
215
+ *
204
216
  * @param key The name of the mod feature that is requesting the enable/disable. This is needed so
205
217
  * that multiple mod features can work in tandem.
206
218
  */
@@ -196,6 +196,9 @@ export class ExtraConsoleCommands extends Feature {
196
196
  * but you can also add your own commands that are useful for your particular mod. It's easier to
197
197
  * add commands to the existing command system than to add your own logic manually to the
198
198
  * `EXECUTE_CMD` callback.
199
+ *
200
+ * In order to use this function, you must upgrade your mod with
201
+ * `ISCFeature.EXTRA_CONSOLE_COMMANDS`.
199
202
  */
200
203
  @Exported
201
204
  public addConsoleCommand(
@@ -222,6 +225,9 @@ export class ExtraConsoleCommands extends Feature {
222
225
  *
223
226
  * The standard library comes with many existing console commands that are useful for debugging.
224
227
  * If you want to disable one of them, use this function.
228
+ *
229
+ * In order to use this function, you must upgrade your mod with
230
+ * `ISCFeature.EXTRA_CONSOLE_COMMANDS`.
225
231
  */
226
232
  @Exported
227
233
  public removeConsoleCommand(commandName: string): void {
@@ -31,6 +31,8 @@ export class FadeInRemover extends Feature {
31
31
  * This is useful for debugging, when you are resetting the game often.
32
32
  *
33
33
  * You can restore the vanilla behavior with the `restoreFadeIn` function.
34
+ *
35
+ * In order to use this function, you must upgrade your mod with `ISCFeature.FADE_IN_REMOVER`.
34
36
  */
35
37
  @Exported
36
38
  public removeFadeIn(): void {
@@ -40,6 +42,8 @@ export class FadeInRemover extends Feature {
40
42
  /**
41
43
  * Disables the fade-in remover. Only useful if you have previously called the `removeFadeIn`
42
44
  * function.
45
+ *
46
+ * In order to use this function, you must upgrade your mod with `ISCFeature.FADE_IN_REMOVER`.
43
47
  */
44
48
  @Exported
45
49
  public restoreFadeIn(): void {
@@ -39,6 +39,8 @@ export class FastReset extends Feature {
39
39
  * This is useful for debugging, when you are resetting the game often.
40
40
  *
41
41
  * You can disable the fast-reset feature with the `disableFastReset` function.
42
+ *
43
+ * In order to use this function, you must upgrade your mod with `ISCFeature.FAST_RESET`.
42
44
  */
43
45
  @Exported
44
46
  public enableFastReset(): void {
@@ -48,6 +50,8 @@ export class FastReset extends Feature {
48
50
  /**
49
51
  * Disables the fast-reset feature. Only useful if you have previously called the
50
52
  * `enableFastReset` function.
53
+ *
54
+ * In order to use this function, you must upgrade your mod with `ISCFeature.FAST_RESET`.
51
55
  */
52
56
  @Exported
53
57
  public disableFastReset(): void {
@@ -25,6 +25,8 @@ export class FlyingDetection extends Feature {
25
25
  /**
26
26
  * Helper function to see if the player currently has flying from a temporary effect such as
27
27
  * Hanged Man, Bat Wing, and so on.
28
+ *
29
+ * In order to use this function, you must upgrade your mod with `ISCFeature.FLYING_DETECTION`.
28
30
  */
29
31
  @Exported
30
32
  public hasFlyingTemporaryEffect(player: EntityPlayer): boolean {
@@ -44,6 +44,8 @@ export class ForgottenSwitch extends Feature {
44
44
  /**
45
45
  * When used on The Forgotten, switches to The Soul. When used on The Soul, switches to The
46
46
  * Forgotten. This takes 1 game frame to take effect.
47
+ *
48
+ * In order to use this function, you must upgrade your mod with `ISCFeature.FORGOTTEN_SWITCH`.
47
49
  */
48
50
  @Exported
49
51
  public forgottenSwitch(): void {
@@ -50,6 +50,8 @@ export class ItemPoolDetection extends Feature {
50
50
  /**
51
51
  * Helper function to get the remaining collectibles in a given item pool. This function is
52
52
  * expensive, so only use it in situations where the lag is acceptable.
53
+ *
54
+ * In order to use this function, you must upgrade your mod with `ISCFeature.ITEM_POOL_DETECTION`.
53
55
  */
54
56
  @Exported
55
57
  public getCollectiblesInItemPool(
@@ -70,6 +72,8 @@ export class ItemPoolDetection extends Feature {
70
72
  *
71
73
  * Under the hood, this function works by using the `ItemPool.AddRoomBlacklist` method to
72
74
  * blacklist every collectible except for the one provided.
75
+ *
76
+ * In order to use this function, you must upgrade your mod with `ISCFeature.ITEM_POOL_DETECTION`.
73
77
  */
74
78
  @Exported
75
79
  public isCollectibleInItemPool(
@@ -151,6 +155,8 @@ export class ItemPoolDetection extends Feature {
151
155
  * - If the collectible is non-offensive, any Tainted Losts will be temporarily changed to Isaac
152
156
  * and then changed back. (This is because Tainted Lost is not able to retrieve non-offensive
153
157
  * collectibles from item pools).
158
+ *
159
+ * In order to use this function, you must upgrade your mod with `ISCFeature.ITEM_POOL_DETECTION`.
154
160
  */
155
161
  @Exported
156
162
  public isCollectibleUnlocked(