isaacscript-common 2.3.1 → 3.1.0

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 (327) hide show
  1. package/cachedClasses.d.ts +6 -4
  2. package/cachedClasses.lua +24 -0
  3. package/callbacks/customRevive.lua +2 -0
  4. package/callbacks/itemPickup.lua +2 -0
  5. package/callbacks/postBombInitLate.lua +2 -0
  6. package/callbacks/postBoneSwing.lua +2 -0
  7. package/callbacks/postCollectibleInitFirst.lua +2 -0
  8. package/callbacks/postCursedTeleport.lua +2 -0
  9. package/callbacks/postCustomDoorEnter.lua +44 -0
  10. package/callbacks/postDoorRender.lua +2 -0
  11. package/callbacks/postDoorUpdate.lua +2 -0
  12. package/callbacks/postEffectInitLate.lua +2 -0
  13. package/callbacks/postEffectStateChanged.lua +2 -0
  14. package/callbacks/postEsauJr.lua +2 -0
  15. package/callbacks/postFamiliarInitLate.lua +2 -0
  16. package/callbacks/postFamiliarStateChanged.lua +2 -0
  17. package/callbacks/postFlip.lua +2 -0
  18. package/callbacks/postGreedModeWave.lua +2 -0
  19. package/callbacks/postGridEntity.lua +2 -0
  20. package/callbacks/postGridEntityCollision.lua +2 -0
  21. package/callbacks/postGridEntityRender.lua +2 -0
  22. package/callbacks/postHolyMantleRemoved.lua +2 -0
  23. package/callbacks/postKnifeInitLate.lua +2 -0
  24. package/callbacks/postLaserInitLate.lua +2 -0
  25. package/callbacks/postNPCInitLate.lua +2 -0
  26. package/callbacks/postNPCStateChanged.lua +2 -0
  27. package/callbacks/postNewRoomEarly.lua +2 -0
  28. package/callbacks/postPickupCollect.lua +2 -0
  29. package/callbacks/postPickupInitLate.lua +2 -0
  30. package/callbacks/postPickupStateChanged.lua +2 -0
  31. package/callbacks/postPitRender.lua +2 -0
  32. package/callbacks/postPitUpdate.lua +2 -0
  33. package/callbacks/postPlayerChangeHealth.lua +2 -0
  34. package/callbacks/postPlayerChangeType.lua +2 -0
  35. package/callbacks/postPlayerFatalDamage.lua +2 -0
  36. package/callbacks/postPlayerInitLate.lua +2 -0
  37. package/callbacks/postPlayerReordered.lua +2 -0
  38. package/callbacks/postPoopRender.lua +2 -0
  39. package/callbacks/postPoopUpdate.lua +2 -0
  40. package/callbacks/postPressurePlateRender.lua +2 -0
  41. package/callbacks/postPressurePlateUpdate.lua +2 -0
  42. package/callbacks/postProjectileInitLate.lua +2 -0
  43. package/callbacks/postPurchase.lua +2 -0
  44. package/callbacks/postRockRender.lua +2 -0
  45. package/callbacks/postRockUpdate.lua +2 -0
  46. package/callbacks/postRoomClearChanged.lua +2 -0
  47. package/callbacks/postSacrifice.lua +2 -0
  48. package/callbacks/postSlotDestroyed.d.ts +1 -0
  49. package/callbacks/postSlotDestroyed.lua +66 -0
  50. package/callbacks/postSlotInitUpdate.lua +2 -0
  51. package/callbacks/postSlotRender.lua +5 -21
  52. package/callbacks/postSpikesRender.lua +2 -0
  53. package/callbacks/postSpikesUpdate.lua +2 -0
  54. package/callbacks/postTNTRender.lua +2 -0
  55. package/callbacks/postTNTUpdate.lua +2 -0
  56. package/callbacks/postTearInitLate.lua +2 -0
  57. package/callbacks/postTearInitVeryLate.lua +2 -0
  58. package/callbacks/postTransformation.lua +2 -0
  59. package/callbacks/postTrinketBreak.lua +2 -0
  60. package/callbacks/preBerserkDeath.lua +2 -0
  61. package/callbacks/preNewLevel.lua +2 -0
  62. package/callbacks/reorderedCallbacks.lua +16 -0
  63. package/callbacks/subscriptions/postBombInitLate.lua +6 -0
  64. package/callbacks/subscriptions/postBoneSwing.lua +6 -0
  65. package/callbacks/subscriptions/postCollectibleInitFirst.lua +6 -0
  66. package/callbacks/subscriptions/postCursedTeleport.lua +6 -0
  67. package/callbacks/subscriptions/postCustomDoorEnter.lua +6 -0
  68. package/callbacks/subscriptions/postCustomRevive.d.ts +1 -0
  69. package/callbacks/subscriptions/postCustomRevive.lua +6 -0
  70. package/callbacks/subscriptions/postDoorRender.d.ts +1 -0
  71. package/callbacks/subscriptions/postDoorRender.lua +6 -0
  72. package/callbacks/subscriptions/postDoorUpdate.d.ts +1 -0
  73. package/callbacks/subscriptions/postDoorUpdate.lua +6 -0
  74. package/callbacks/subscriptions/postEffectInitLate.lua +6 -0
  75. package/callbacks/subscriptions/postEffectStateChanged.lua +6 -0
  76. package/callbacks/subscriptions/postEsauJr.lua +6 -0
  77. package/callbacks/subscriptions/postFamiliarInitLate.lua +6 -0
  78. package/callbacks/subscriptions/postFamiliarStateChanged.lua +6 -0
  79. package/callbacks/subscriptions/postFirstEsauJr.lua +6 -0
  80. package/callbacks/subscriptions/postFirstFlip.lua +6 -0
  81. package/callbacks/subscriptions/postFlip.lua +6 -0
  82. package/callbacks/subscriptions/postGameStartedReordered.lua +6 -0
  83. package/callbacks/subscriptions/postGreedModeWave.lua +6 -0
  84. package/callbacks/subscriptions/postGridEntityBroken.lua +6 -0
  85. package/callbacks/subscriptions/postGridEntityCollision.lua +6 -0
  86. package/callbacks/subscriptions/postGridEntityInit.lua +6 -0
  87. package/callbacks/subscriptions/postGridEntityRemove.lua +6 -0
  88. package/callbacks/subscriptions/postGridEntityRender.lua +6 -0
  89. package/callbacks/subscriptions/postGridEntityStateChanged.lua +6 -0
  90. package/callbacks/subscriptions/postGridEntityUpdate.lua +6 -0
  91. package/callbacks/subscriptions/postHolyMantleRemoved.lua +6 -0
  92. package/callbacks/subscriptions/postItemDischarged.lua +6 -0
  93. package/callbacks/subscriptions/postItemPickup.lua +6 -0
  94. package/callbacks/subscriptions/postKnifeInitLate.lua +6 -0
  95. package/callbacks/subscriptions/postLaserInitLate.lua +6 -0
  96. package/callbacks/subscriptions/postNPCInitLate.lua +6 -0
  97. package/callbacks/subscriptions/postNPCStateChanged.lua +6 -0
  98. package/callbacks/subscriptions/postNewLevelReordered.lua +6 -0
  99. package/callbacks/subscriptions/postNewRoomEarly.lua +6 -0
  100. package/callbacks/subscriptions/postNewRoomReordered.lua +6 -0
  101. package/callbacks/subscriptions/postPEffectUpdateReordered.lua +6 -0
  102. package/callbacks/subscriptions/postPickupCollect.d.ts +1 -0
  103. package/callbacks/subscriptions/postPickupCollect.lua +6 -0
  104. package/callbacks/subscriptions/postPickupInitLate.lua +6 -0
  105. package/callbacks/subscriptions/postPickupStateChanged.d.ts +1 -0
  106. package/callbacks/subscriptions/postPickupStateChanged.lua +6 -0
  107. package/callbacks/subscriptions/postPitRender.d.ts +1 -0
  108. package/callbacks/subscriptions/postPitRender.lua +6 -0
  109. package/callbacks/subscriptions/postPitUpdate.d.ts +1 -0
  110. package/callbacks/subscriptions/postPitUpdate.lua +6 -0
  111. package/callbacks/subscriptions/postPlayerChangeHealth.lua +6 -0
  112. package/callbacks/subscriptions/postPlayerChangeType.lua +6 -0
  113. package/callbacks/subscriptions/postPlayerFatalDamage.lua +6 -0
  114. package/callbacks/subscriptions/postPlayerInitLate.lua +6 -0
  115. package/callbacks/subscriptions/postPlayerInitReordered.lua +6 -0
  116. package/callbacks/subscriptions/postPlayerRenderReordered.lua +6 -0
  117. package/callbacks/subscriptions/postPlayerUpdateReordered.lua +6 -0
  118. package/callbacks/subscriptions/postPoopRender.d.ts +1 -0
  119. package/callbacks/subscriptions/postPoopRender.lua +6 -0
  120. package/callbacks/subscriptions/postPoopUpdate.d.ts +1 -0
  121. package/callbacks/subscriptions/postPoopUpdate.lua +6 -0
  122. package/callbacks/subscriptions/postPressurePlateRender.d.ts +1 -0
  123. package/callbacks/subscriptions/postPressurePlateRender.lua +6 -0
  124. package/callbacks/subscriptions/postPressurePlateUpdate.d.ts +1 -0
  125. package/callbacks/subscriptions/postPressurePlateUpdate.lua +6 -0
  126. package/callbacks/subscriptions/postProjectileInitLate.lua +6 -0
  127. package/callbacks/subscriptions/postPurchase.lua +6 -0
  128. package/callbacks/subscriptions/postRockRender.d.ts +1 -0
  129. package/callbacks/subscriptions/postRockRender.lua +6 -0
  130. package/callbacks/subscriptions/postRockUpdate.d.ts +1 -0
  131. package/callbacks/subscriptions/postRockUpdate.lua +6 -0
  132. package/callbacks/subscriptions/postRoomClearChanged.lua +6 -0
  133. package/callbacks/subscriptions/postSacrifice.lua +6 -0
  134. package/callbacks/subscriptions/postSlotAnimationChanged.lua +6 -0
  135. package/callbacks/subscriptions/postSlotDestroyed.lua +6 -0
  136. package/callbacks/subscriptions/postSlotInit.lua +6 -0
  137. package/callbacks/subscriptions/postSlotRender.lua +6 -0
  138. package/callbacks/subscriptions/postSlotUpdate.lua +6 -0
  139. package/callbacks/subscriptions/postSpikesRender.d.ts +1 -0
  140. package/callbacks/subscriptions/postSpikesRender.lua +6 -0
  141. package/callbacks/subscriptions/postSpikesUpdate.d.ts +1 -0
  142. package/callbacks/subscriptions/postSpikesUpdate.lua +6 -0
  143. package/callbacks/subscriptions/postTNTRender.d.ts +1 -0
  144. package/callbacks/subscriptions/postTNTRender.lua +6 -0
  145. package/callbacks/subscriptions/postTNTUpdate.d.ts +1 -0
  146. package/callbacks/subscriptions/postTNTUpdate.lua +6 -0
  147. package/callbacks/subscriptions/postTearInitLate.lua +6 -0
  148. package/callbacks/subscriptions/postTearInitVeryLate.lua +6 -0
  149. package/callbacks/subscriptions/postTransformation.lua +6 -0
  150. package/callbacks/subscriptions/postTrinketBreak.lua +6 -0
  151. package/callbacks/subscriptions/preBerserkDeath.lua +6 -0
  152. package/callbacks/subscriptions/preCustomRevive.lua +6 -0
  153. package/callbacks/subscriptions/preItemPickup.lua +6 -0
  154. package/callbacks/subscriptions/preNewLevel.lua +6 -0
  155. package/classes/DefaultMap.d.ts +70 -39
  156. package/classes/DefaultMap.lua +94 -43
  157. package/classes/ModUpgraded.d.ts +3 -3
  158. package/classes/ModUpgraded.lua +5 -0
  159. package/constants.lua +41 -0
  160. package/constantsFirstLast.lua +63 -0
  161. package/enums/HealthType.lua +3 -0
  162. package/enums/ModCallbackCustom.d.ts +1 -1
  163. package/enums/ModCallbackCustom.lua +6 -0
  164. package/enums/private/CopyableIsaacAPIClassType.lua +1 -0
  165. package/enums/private/SerializationBrand.lua +5 -0
  166. package/features/characterHealthConversion.lua +6 -0
  167. package/features/characterStats.lua +17 -0
  168. package/features/debugDisplay/exports.d.ts +17 -0
  169. package/features/debugDisplay/exports.lua +90 -0
  170. package/features/debugDisplay/v.d.ts +17 -0
  171. package/features/deployJSONRoom.d.ts +1 -0
  172. package/features/deployJSONRoom.lua +56 -0
  173. package/features/disableInputs.lua +45 -0
  174. package/features/disableSound.lua +14 -0
  175. package/features/extraConsoleCommands/commandsDisplay.lua +90 -0
  176. package/features/extraConsoleCommands/init.lua +16 -0
  177. package/features/extraConsoleCommands/listCommands.lua +172 -0
  178. package/features/fadeInRemover.lua +10 -0
  179. package/features/fastReset.lua +10 -0
  180. package/features/forgottenSwitch.lua +4 -0
  181. package/features/getCollectibleItemPoolType.lua +5 -0
  182. package/features/playerInventory.lua +18 -0
  183. package/features/ponyDetection.lua +4 -0
  184. package/features/preventCollectibleRotation.lua +9 -0
  185. package/features/runInNFrames.lua +50 -0
  186. package/features/saveDataManager/constants.lua +1 -0
  187. package/features/saveDataManager/exports.lua +115 -0
  188. package/features/saveDataManager/load.lua +12 -8
  189. package/features/saveDataManager/main.lua +16 -3
  190. package/features/saveDataManager/maps.lua +3 -0
  191. package/features/saveDataManager/merge.lua +53 -21
  192. package/features/saveDataManager/save.lua +12 -7
  193. package/features/sirenHelpers.lua +13 -0
  194. package/features/taintedLazarusPlayers.lua +11 -0
  195. package/featuresInitialized.lua +6 -0
  196. package/functions/array.d.ts +2 -0
  197. package/functions/array.lua +85 -0
  198. package/functions/benchmark.lua +6 -0
  199. package/functions/boss.lua +35 -0
  200. package/functions/cacheFlag.lua +4 -0
  201. package/functions/cards.lua +60 -0
  202. package/functions/challenges.lua +1 -0
  203. package/functions/character.lua +23 -0
  204. package/functions/charge.lua +39 -0
  205. package/functions/chargeBar.d.ts +1 -0
  206. package/functions/chargeBar.lua +4 -0
  207. package/functions/collectibleCacheFlag.lua +15 -0
  208. package/functions/collectibleSet.lua +3 -0
  209. package/functions/collectibleTag.lua +9 -0
  210. package/functions/collectibles.d.ts +6 -1
  211. package/functions/collectibles.lua +146 -2
  212. package/functions/color.lua +18 -0
  213. package/functions/debug.lua +18 -0
  214. package/functions/deepCopy.lua +60 -26
  215. package/functions/deepCopyTests.lua +8 -5
  216. package/functions/direction.d.ts +1 -0
  217. package/functions/direction.lua +22 -0
  218. package/functions/doors.d.ts +1 -0
  219. package/functions/doors.lua +58 -0
  220. package/functions/entity.d.ts +4 -4
  221. package/functions/entity.lua +94 -6
  222. package/functions/entitySpecific.d.ts +20 -20
  223. package/functions/entitySpecific.lua +182 -0
  224. package/functions/entityTypes.d.ts +1 -1
  225. package/functions/entityTypes.lua +1 -0
  226. package/functions/enums.d.ts +2 -0
  227. package/functions/enums.lua +62 -0
  228. package/functions/familiars.lua +52 -0
  229. package/functions/flag.lua +77 -0
  230. package/functions/flying.lua +10 -0
  231. package/functions/globals.lua +8 -10
  232. package/functions/gridEntity.lua +105 -0
  233. package/functions/gridEntitySpecific.d.ts +5 -0
  234. package/functions/gridEntitySpecific.lua +8 -0
  235. package/functions/input.lua +11 -0
  236. package/functions/isaacAPIClass.d.ts +4 -4
  237. package/functions/isaacAPIClass.lua +15 -3
  238. package/functions/jsonHelpers.lua +11 -0
  239. package/functions/jsonRoom.d.ts +2 -0
  240. package/functions/jsonRoom.lua +5 -0
  241. package/functions/kColor.lua +9 -0
  242. package/functions/language.lua +5 -0
  243. package/functions/log.lua +31 -3
  244. package/functions/map.lua +18 -0
  245. package/functions/math.lua +26 -0
  246. package/functions/npc.lua +24 -0
  247. package/functions/pickupVariants.d.ts +11 -11
  248. package/functions/pickupVariants.lua +11 -0
  249. package/functions/pickups.d.ts +9 -9
  250. package/functions/pickups.lua +67 -0
  251. package/functions/pills.lua +45 -0
  252. package/functions/player.lua +166 -0
  253. package/functions/playerDataStructures.lua +65 -0
  254. package/functions/playerHealth.d.ts +1 -0
  255. package/functions/playerHealth.lua +10 -0
  256. package/functions/playerIndex.d.ts +2 -0
  257. package/functions/playerIndex.lua +47 -0
  258. package/functions/pocketItems.lua +18 -0
  259. package/functions/positionVelocity.d.ts +3 -0
  260. package/functions/positionVelocity.lua +46 -0
  261. package/functions/random.d.ts +2 -0
  262. package/functions/random.lua +32 -0
  263. package/functions/revive.d.ts +2 -0
  264. package/functions/revive.lua +15 -0
  265. package/functions/rng.d.ts +1 -0
  266. package/functions/rng.lua +19 -0
  267. package/functions/roomData.lua +68 -0
  268. package/functions/roomGrid.lua +21 -0
  269. package/functions/roomShape.lua +22 -0
  270. package/functions/rooms.lua +100 -0
  271. package/functions/run.lua +5 -0
  272. package/functions/seeds.lua +4 -0
  273. package/functions/serialization.lua +6 -2
  274. package/functions/set.d.ts +1 -0
  275. package/functions/set.lua +22 -0
  276. package/functions/spawnCollectible.lua +24 -0
  277. package/functions/sprite.d.ts +2 -0
  278. package/functions/sprite.lua +25 -0
  279. package/functions/stage.lua +16 -0
  280. package/functions/string.lua +6 -0
  281. package/functions/table.d.ts +12 -0
  282. package/functions/table.lua +53 -0
  283. package/functions/tears.d.ts +1 -0
  284. package/functions/tears.lua +12 -0
  285. package/functions/transformations.lua +18 -0
  286. package/functions/trinketCacheFlag.lua +3 -0
  287. package/functions/trinketGive.lua +24 -0
  288. package/functions/trinkets.lua +52 -0
  289. package/functions/tstlClass.d.ts +34 -0
  290. package/functions/tstlClass.lua +63 -9
  291. package/functions/ui.d.ts +2 -0
  292. package/functions/ui.lua +16 -0
  293. package/functions/utils.d.ts +16 -0
  294. package/functions/utils.lua +108 -0
  295. package/functions/vector.lua +13 -16
  296. package/index.d.ts +1 -0
  297. package/initCustomCallbacks.lua +3 -0
  298. package/interfaces/ChargeBarSprites.d.ts +1 -0
  299. package/interfaces/private/TSTLClassMetatable.d.ts +2 -0
  300. package/lualib_bundle.lua +21 -34
  301. package/maps/cardMap.lua +1 -0
  302. package/maps/characterMap.lua +1 -0
  303. package/maps/defaultPlayerStatMap.lua +1 -0
  304. package/maps/gridEntityXMLMap.lua +2 -0
  305. package/maps/pillEffectMap.lua +1 -0
  306. package/maps/roomShapeToTopLeftWallGridIndexMap.lua +2 -0
  307. package/maps/roomTypeMap.lua +1 -0
  308. package/objects/LRoomShapeToRectangles.lua +2 -0
  309. package/objects/colors.lua +4 -0
  310. package/objects/oppositeDoorSlots.d.ts +4 -0
  311. package/objects/oppositeDoorSlots.lua +15 -0
  312. package/objects/roomShapeBounds.lua +2 -0
  313. package/objects/roomShapeLayoutSizes.lua +4 -0
  314. package/objects/roomShapeToBottomRightPosition.lua +2 -0
  315. package/objects/roomShapeToDoorSlotsToGridIndexDelta.lua +2 -0
  316. package/objects/roomShapeToTopLeftPosition.lua +2 -0
  317. package/objects/roomShapeVolumes.lua +3 -0
  318. package/package.json +2 -2
  319. package/patchErrorFunctions.lua +8 -0
  320. package/sets/bossSets.lua +23 -0
  321. package/sets/charactersWithNoRedHeartsSet.lua +2 -0
  322. package/sets/charactersWithNoSoulHeartsSet.lua +2 -0
  323. package/sets/lostStyleCharactersSet.lua +2 -0
  324. package/types/AnyEntity.d.ts +10 -0
  325. package/types/PickingUpItem.lua +7 -0
  326. package/upgradeMod.d.ts +4 -4
  327. package/upgradeMod.lua +18 -0
package/functions/log.lua CHANGED
@@ -35,7 +35,7 @@ local hasFlag = ____flag.hasFlag
35
35
  local ____gridEntity = require("functions.gridEntity")
36
36
  local getGridEntities = ____gridEntity.getGridEntities
37
37
  local ____isaacAPIClass = require("functions.isaacAPIClass")
38
- local getIsaacAPIClassType = ____isaacAPIClass.getIsaacAPIClassType
38
+ local getIsaacAPIClassName = ____isaacAPIClass.getIsaacAPIClassName
39
39
  local ____player = require("functions.player")
40
40
  local getEffectsList = ____player.getEffectsList
41
41
  local getPlayerName = ____player.getPlayerName
@@ -53,6 +53,7 @@ local ____utils = require("functions.utils")
53
53
  local printConsole = ____utils.printConsole
54
54
  local ____vector = require("functions.vector")
55
55
  local vectorToString = ____vector.vectorToString
56
+ --- Helper function to prefix the name of the function and the line number before a debug message.
56
57
  function ____exports.getDebugPrependString(self, msg, numParentFunctions)
57
58
  if numParentFunctions == nil then
58
59
  numParentFunctions = 3
@@ -68,10 +69,15 @@ function ____exports.getDebugPrependString(self, msg, numParentFunctions)
68
69
  end
69
70
  return msg
70
71
  end
72
+ --- Helper function to avoid typing out `Isaac.DebugString()`.
73
+ --
74
+ -- If you have the "--luadebug" launch flag turned on or the Racing+ sandbox enabled, then this
75
+ -- function will also prepend the function name and the line number before the string.
71
76
  function ____exports.log(msg)
72
77
  local debugMsg = ____exports.getDebugPrependString(nil, msg)
73
78
  Isaac.DebugString(debugMsg)
74
79
  end
80
+ --- Helper function for printing out every flag that is turned on. Useful when debugging.
75
81
  function ____exports.logFlags(flags, flagEnum, description)
76
82
  if description == nil then
77
83
  description = ""
@@ -111,6 +117,7 @@ end
111
117
  function ____exports.logColor(color)
112
118
  ____exports.log((((((((((((("Color: R" .. tostring(color.R)) .. ", G") .. tostring(color.G)) .. ", B") .. tostring(color.B)) .. ", A") .. tostring(color.A)) .. ", RO") .. tostring(color.RO)) .. ", BO") .. tostring(color.BO)) .. ", GO") .. tostring(color.GO))
113
119
  end
120
+ --- Helper function for printing out every damage flag that is turned on. Useful when debugging.
114
121
  function ____exports.logDamageFlags(flags)
115
122
  ____exports.logFlags(flags, DamageFlag, "damage")
116
123
  end
@@ -140,6 +147,7 @@ function ____exports.logEffects(player)
140
147
  end
141
148
  )
142
149
  end
150
+ --- Helper function for printing out every entity (or filtered entity) in the current room.
143
151
  function ____exports.logEntities(includeBackgroundEffects, entityTypeFilter)
144
152
  local msg = "Entities in the room"
145
153
  if entityTypeFilter ~= nil then
@@ -225,17 +233,23 @@ function ____exports.logEntities(includeBackgroundEffects, entityTypeFilter)
225
233
  end
226
234
  ____exports.log(msg)
227
235
  end
236
+ --- Helper function for printing out every entity flag that is turned on. Useful when debugging.
228
237
  function ____exports.logEntityFlags(flags)
229
238
  ____exports.logFlags(flags, EntityFlag, "entity")
230
239
  end
231
240
  function ____exports.logEntityID(entity)
232
241
  ____exports.log((((("Entity: " .. tostring(entity.Type)) .. ".") .. tostring(entity.Variant)) .. ".") .. tostring(entity.SubType))
233
242
  end
243
+ --- Helper function to log an error message and also print it to the console for better visibility.
244
+ --
245
+ -- This is useful in situations where using the `error` function would be dangerous (since it
246
+ -- prevents all of the subsequent code in the callback from running).
234
247
  function ____exports.logError(msg)
235
248
  local errorMsg = "Error: " .. msg
236
249
  ____exports.log(errorMsg)
237
250
  printConsole(nil, errorMsg)
238
251
  end
252
+ --- Helper function for printing out every game state flag that is turned on. Useful when debugging.
239
253
  function ____exports.logGameStateFlags()
240
254
  ____exports.log("Logging game state flags:")
241
255
  local gameStateFlagEntries = getEnumEntries(nil, GameStateFlag)
@@ -253,6 +267,7 @@ function ____exports.logGameStateFlags()
253
267
  ____exports.log(" n/a (no flags)")
254
268
  end
255
269
  end
270
+ --- Helper function for printing out every grid entity (or filtered grid entity) in the current room.
256
271
  function ____exports.logGridEntities(includeWalls, gridEntityTypeFilter)
257
272
  local msg = "Grid entities in the room"
258
273
  if gridEntityTypeFilter ~= nil then
@@ -328,6 +343,7 @@ end
328
343
  function ____exports.logKColor(kColor)
329
344
  ____exports.log((((((("Color: R" .. tostring(kColor.Red)) .. ", G") .. tostring(kColor.Green)) .. ", B") .. tostring(kColor.Blue)) .. ", A") .. tostring(kColor.Alpha))
330
345
  end
346
+ --- Helper function for printing out every level state flag that is turned on. Useful when debugging.
331
347
  function ____exports.logLevelStateFlags()
332
348
  local level = game:GetLevel()
333
349
  local levelStateFlagEntries = getEnumEntries(nil, LevelStateFlag)
@@ -372,9 +388,11 @@ function ____exports.logPlayerHealth(player)
372
388
  ____exports.log(" Blood charges: " .. tostring(playerHealth.bloodCharges))
373
389
  ____exports.log((" Soul heart types: [" .. table.concat(playerHealth.soulHeartTypes, ",")) .. "]")
374
390
  end
391
+ --- Helper function for printing out every projectile flag that is turned on. Useful when debugging.
375
392
  function ____exports.logProjectileFlags(flags)
376
393
  ____exports.logFlags(flags, ProjectileFlag, "projectile")
377
394
  end
395
+ --- Helper function for logging information about the current room.
378
396
  function ____exports.logRoom()
379
397
  local roomGridIndex = getRoomGridIndex(nil)
380
398
  local roomListIndex = getRoomListIndex(nil)
@@ -389,6 +407,8 @@ function ____exports.logRoom()
389
407
  ____exports.log("Current room grid index: " .. tostring(roomGridIndex))
390
408
  ____exports.log("Current room list index: " .. tostring(roomListIndex))
391
409
  end
410
+ --- Helper function for printing out every seed effect (i.e. Easter Egg) that is turned on for the
411
+ -- particular run.
392
412
  function ____exports.logSeedEffects()
393
413
  local seeds = game:GetSeeds()
394
414
  local seedEffectEntries = getEnumEntries(nil, SeedEffect)
@@ -414,6 +434,7 @@ function ____exports.logSet(set)
414
434
  end
415
435
  ____exports.log("The size of the set was: " .. tostring(set.size))
416
436
  end
437
+ --- Helper function for logging every sound effect that is currently playing.
417
438
  function ____exports.logSounds()
418
439
  local soundEffects = getEnumEntries(nil, SoundEffect)
419
440
  for ____, ____value in ipairs(soundEffects) do
@@ -453,14 +474,18 @@ function ____exports.logTable(____table, parentTables)
453
474
  end
454
475
  numKeys = numKeys + 1
455
476
  end
456
- ____exports.log("The size of the table was: " .. tostring(numKeys))
477
+ ____exports.log((indentation .. "The size of the table was: ") .. tostring(numKeys))
457
478
  end
479
+ --- Helper function for printing out every tear flag that is turned on. Useful when debugging.
458
480
  function ____exports.logTearFlags(flags)
459
481
  ____exports.logFlags(flags, TearFlag, "tear")
460
482
  end
483
+ --- Helper function for printing out every use flag that is turned on. Useful when debugging.
461
484
  function ____exports.logUseFlags(flags)
462
485
  ____exports.logFlags(flags, UseFlag, "use")
463
486
  end
487
+ --- Helper function to enumerate all of the properties of a "userdata" object (i.e. an object from
488
+ -- the Isaac API).
464
489
  function ____exports.logUserdata(userdata)
465
490
  local userdataType = type(userdata)
466
491
  if userdataType ~= "userdata" then
@@ -472,7 +497,7 @@ function ____exports.logUserdata(userdata)
472
497
  ____exports.log("Userdata: [no metatable]")
473
498
  return
474
499
  end
475
- local classType = getIsaacAPIClassType(nil, userdata)
500
+ local classType = getIsaacAPIClassName(nil, userdata)
476
501
  if classType == nil then
477
502
  ____exports.log("Userdata: [no class type]")
478
503
  else
@@ -487,6 +512,9 @@ function ____exports.logVector(vector, round)
487
512
  local vectorString = vectorToString(nil, vector, round)
488
513
  ____exports.log("Vector: " .. vectorString)
489
514
  end
515
+ --- Converts every `isaacscript-common` function that begins with "log" to a global function.
516
+ --
517
+ -- This is useful when printing out variables from the in-game debug console.
490
518
  function ____exports.setLogFunctionsGlobal(self)
491
519
  local globals = _G
492
520
  globals.log = ____exports.log
package/functions/map.lua CHANGED
@@ -8,6 +8,7 @@ local __TS__StringReplaceAll = ____lualib.__TS__StringReplaceAll
8
8
  local __TS__StringStartsWith = ____lualib.__TS__StringStartsWith
9
9
  local __TS__ArrayFilter = ____lualib.__TS__ArrayFilter
10
10
  local ____exports = {}
11
+ --- Helper function to copy a map. (You can also use a Map constructor to accomplish this task.)
11
12
  function ____exports.copyMap(self, oldMap)
12
13
  local newMap = __TS__New(Map)
13
14
  for ____, ____value in __TS__Iterator(oldMap:entries()) do
@@ -17,6 +18,23 @@ function ____exports.copyMap(self, oldMap)
17
18
  end
18
19
  return newMap
19
20
  end
21
+ --- Helper function to get the closest value from a map based on partial search text. For the
22
+ -- purposes of this function, both search text and map keys are converted to lowercase before
23
+ -- attempting to find a match.
24
+ --
25
+ -- For example:
26
+ --
27
+ -- ```ts
28
+ -- const map = new <string, number>Map([
29
+ -- ["foo", 123],
30
+ -- ["bar", 456],
31
+ -- ]);
32
+ -- const searchText = "f";
33
+ -- const match = getMapPartialMatch(map, searchText); // match is now equal to 123
34
+ --
35
+ -- @returns If a match was found, returns a tuple of the map key and value. If a match was not
36
+ -- found, returns undefined.
37
+ -- ```
20
38
  function ____exports.getMapPartialMatch(self, searchText, map)
21
39
  local keys = {__TS__Spread(map:keys())}
22
40
  __TS__ArraySort(keys)
@@ -3,6 +3,10 @@ local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitio
3
3
  local Direction = ____isaac_2Dtypescript_2Ddefinitions.Direction
4
4
  local ____direction = require("functions.direction")
5
5
  local directionToVector = ____direction.directionToVector
6
+ --- Helper function to normalize an integer.
7
+ --
8
+ -- - If `x` is less than `min`, then it will be clamped to `min`.
9
+ -- - If `x` is greater than `max`, then it will be clamped to `max`.
6
10
  function ____exports.clamp(self, x, min, max)
7
11
  return math.max(
8
12
  min,
@@ -13,6 +17,16 @@ function ____exports.getAngleDifference(self, angle1, angle2)
13
17
  local subtractedAngle = angle1 - angle2
14
18
  return (subtractedAngle + 180) % 360 - 180
15
19
  end
20
+ --- Helper function to get an array of equidistant points on the circumference around a circle.
21
+ -- Useful for equally distributing things in a circle pattern.
22
+ --
23
+ -- @param centerPos A position that represents the center of the center to get the points from.
24
+ -- @param radius The radius of the circle.
25
+ -- @param numPoints The number of points on the circumference of the circle to get.
26
+ -- @param xMultiplier An optional multiplier to get the points around an oval. Default is 1.
27
+ -- @param yMultiplier An optional multiplier to get the points around an oval. Default is 1.
28
+ -- @param initialDirection By default, the first point on the circle will be on the top center, but
29
+ -- this can be optionally changed by specifying this argument.
16
30
  function ____exports.getCircleDiscretizedPoints(self, centerPos, radius, numPoints, xMultiplier, yMultiplier, initialDirection)
17
31
  if xMultiplier == nil then
18
32
  xMultiplier = 1
@@ -39,9 +53,14 @@ function ____exports.getCircleDiscretizedPoints(self, centerPos, radius, numPoin
39
53
  end
40
54
  return positions
41
55
  end
56
+ --- Helper function to check if a given position is within a given rectangle.
57
+ --
58
+ -- This is an inclusive check, meaning that it will return true if the position is on the border of
59
+ -- the rectangle.
42
60
  function ____exports.inRectangle(self, position, topLeft, bottomRight)
43
61
  return position.X >= topLeft.X and position.X <= bottomRight.X and position.Y >= topLeft.Y and position.Y <= bottomRight.Y
44
62
  end
63
+ --- From: https://www.geeksforgeeks.org/check-if-any-point-overlaps-the-given-circle-and-rectangle/
45
64
  function ____exports.isCircleIntersectingRectangle(self, circleCenter, circleRadius, rectangleTopLeft, rectangleBottomRight)
46
65
  local nearestX = math.max(
47
66
  rectangleTopLeft.X,
@@ -67,6 +86,11 @@ end
67
86
  function ____exports.lerpAngleDegrees(self, aStart, aEnd, percent)
68
87
  return aStart + ____exports.getAngleDifference(nil, aStart, aEnd) * percent
69
88
  end
89
+ --- If rounding fails, this function returns 0.
90
+ -- From: http://lua-users.org/wiki/SimpleRound
91
+ --
92
+ -- @param num The number to round.
93
+ -- @param numDecimalPlaces Default is 0.
70
94
  function ____exports.round(self, num, numDecimalPlaces)
71
95
  if numDecimalPlaces == nil then
72
96
  numDecimalPlaces = 0
@@ -77,6 +101,8 @@ function ____exports.round(self, num, numDecimalPlaces)
77
101
  ))
78
102
  return roundedNum == nil and 0 or roundedNum
79
103
  end
104
+ ---
105
+ -- @returns 1 if n is positive, -1 if n is negative, or 0 if n is 0.
80
106
  function ____exports.sign(self, n)
81
107
  if n > 0 then
82
108
  return 1
package/functions/npc.lua CHANGED
@@ -27,6 +27,8 @@ local getFilteredNewEntities = ____entity.getFilteredNewEntities
27
27
  local ____entitySpecific = require("functions.entitySpecific")
28
28
  local getNPCs = ____entitySpecific.getNPCs
29
29
  local getProjectiles = ____entitySpecific.getProjectiles
30
+ --- Checks for specific NPCs that have "CanShutDoors" set to true naturally by the game, but should
31
+ -- not actually keep the doors closed (like Death's scythes).
30
32
  function ____exports.isAliveExceptionNPC(self, npc)
31
33
  local entityTypeVariant = (tostring(npc.Type) .. ".") .. tostring(npc.Variant)
32
34
  if NON_ALIVE_NPCS_TYPE_VARIANT:has(entityTypeVariant) then
@@ -44,9 +46,16 @@ function ____exports.isAliveExceptionNPC(self, npc)
44
46
  end
45
47
  return false
46
48
  end
49
+ --- Helper function to detect the custom death state of an Eggy. Eggies are never actually marked
50
+ -- dead by the game. Instead, when Eggies take fatal damage, they go into NpcState.STATE_SUICIDE and
51
+ -- spawn 14 Swarm Spiders while their StateFrame ticks upwards.
47
52
  function ____exports.isDyingEggyWithNoSpidersLeft(self, npc)
48
53
  return npc.State == NpcState.SUICIDE and npc.StateFrame >= EGGY_STATE_FRAME_OF_FINAL_SPIDER
49
54
  end
55
+ --- Helper function to detect the custom death state of a Rag Man Ragling. When Rag Man Raglings die,
56
+ -- they turn into a patch on the ground and can be revived by Rag Man at a later time. This causes
57
+ -- them to show up as an "alive" enemy, so they should usually be filtered out of lists of alive
58
+ -- enemies.
50
59
  function ____exports.isRaglingDeathPatch(self, npc)
51
60
  return npc.Type == EntityType.RAGLING and npc.Variant == RaglingVariant.RAG_MANS_RAGLING and npc.State == NpcState.SPECIAL
52
61
  end
@@ -73,6 +82,17 @@ NON_ALIVE_NPCS_TYPE_VARIANT_SUBTYPE = __TS__New(
73
82
  (((tostring(EntityType.MOTHER) .. ".") .. tostring(MotherVariant.MOTHER_1)) .. ".") .. tostring(MotherSubType.PHASE_2)
74
83
  }
75
84
  )
85
+ --- Helper function to make an NPC fire a projectile. Returns the fired projectile. Use this function
86
+ -- instead of the `EntityNPC.FireProjectiles` method, since that returns void.
87
+ --
88
+ -- @param npc The NPC to fire the projectile from.
89
+ -- @param position The staring position of the projectile.
90
+ -- @param velocity The starting velocity of the projectile.
91
+ -- @param projectilesMode The mode of the projectile. Optional. Default is
92
+ -- `ProjectilesMode.ONE_PROJECTILE`.
93
+ -- @param projectileParams The parameters of the projectile. Optional. Default is
94
+ -- `ProjectileParams()`.
95
+ -- @returns The fired projectile.
76
96
  function ____exports.fireProjectiles(self, npc, position, velocity, projectilesMode, projectileParams)
77
97
  if projectilesMode == nil then
78
98
  projectilesMode = ProjectilesMode.ONE_PROJECTILE
@@ -85,6 +105,10 @@ function ____exports.fireProjectiles(self, npc, position, velocity, projectilesM
85
105
  local newProjectiles = getProjectiles(nil, projectileParams.Variant)
86
106
  return getFilteredNewEntities(nil, oldProjectiles, newProjectiles)
87
107
  end
108
+ --- Helper function to get all of the non-dead NPCs in the room.
109
+ --
110
+ -- This function will not include NPCs on an internal blacklist, such as Death's scythes or Big Horn
111
+ -- holes.
88
112
  function ____exports.getAliveNPCs(self, matchingEntityType, matchingVariant, matchingSubType, ignoreFriendly)
89
113
  if ignoreFriendly == nil then
90
114
  ignoreFriendly = false
@@ -1,23 +1,23 @@
1
1
  /// <reference types="isaac-typescript-definitions" />
2
- /** For PickupVariant.HEART (10) */
2
+ /** For `PickupVariant.HEART` (10) */
3
3
  export declare function isHeart(pickup: EntityPickup): pickup is EntityPickupHeart;
4
- /** For PickupVariant.COIN (20) */
4
+ /** For `PickupVariant.COIN` (20) */
5
5
  export declare function isCoin(pickup: EntityPickup): pickup is EntityPickupCoin;
6
- /** For PickupVariant.KEY (30) */
6
+ /** For `PickupVariant.KEY` (30) */
7
7
  export declare function isKey(pickup: EntityPickup): pickup is EntityPickupKey;
8
- /** For PickupVariant.BOMB (40) */
8
+ /** For `PickupVariant.BOMB` (40) */
9
9
  export declare function isBomb(pickup: EntityPickup): pickup is EntityPickupBomb;
10
- /** For PickupVariant.POOP (42) */
10
+ /** For `PickupVariant.POOP` (42) */
11
11
  export declare function isPoop(pickup: EntityPickup): pickup is EntityPickupPoop;
12
- /** For PickupVariant.POOP (42) */
12
+ /** For `PickupVariant.SACK` (69) */
13
13
  export declare function isSack(pickup: EntityPickup): pickup is EntityPickupSack;
14
- /** For PickupVariant.PILL (70) */
14
+ /** For `PickupVariant.PILL` (70) */
15
15
  export declare function isPill(pickup: EntityPickup): pickup is EntityPickupPill;
16
- /** For PickupVariant.LIL_BATTERY (90) */
16
+ /** For `PickupVariant.LIL_BATTERY` (90) */
17
17
  export declare function isBattery(pickup: EntityPickup): pickup is EntityPickupBattery;
18
- /** For PickupVariant.COLLECTIBLE (100) */
18
+ /** For `PickupVariant.COLLECTIBLE` (100) */
19
19
  export declare function isCollectible(pickup: EntityPickup): pickup is EntityPickupCollectible;
20
- /** For PickupVariant.TAROT_CARD (300) */
20
+ /** For `PickupVariant.TAROT_CARD` (300) */
21
21
  export declare function isCardPickup(pickup: EntityPickup): pickup is EntityPickupCard;
22
- /** For PickupVariant.TRINKET (350) */
22
+ /** For `PickupVariant.TRINKET` (350) */
23
23
  export declare function isTrinket(pickup: EntityPickup): pickup is EntityPickupTrinket;
@@ -1,36 +1,47 @@
1
1
  local ____exports = {}
2
2
  local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
3
3
  local PickupVariant = ____isaac_2Dtypescript_2Ddefinitions.PickupVariant
4
+ --- For `PickupVariant.HEART` (10)
4
5
  function ____exports.isHeart(self, pickup)
5
6
  return pickup.Variant == PickupVariant.HEART
6
7
  end
8
+ --- For `PickupVariant.COIN` (20)
7
9
  function ____exports.isCoin(self, pickup)
8
10
  return pickup.Variant == PickupVariant.COIN
9
11
  end
12
+ --- For `PickupVariant.KEY` (30)
10
13
  function ____exports.isKey(self, pickup)
11
14
  return pickup.Variant == PickupVariant.KEY
12
15
  end
16
+ --- For `PickupVariant.BOMB` (40)
13
17
  function ____exports.isBomb(self, pickup)
14
18
  return pickup.Variant == PickupVariant.BOMB
15
19
  end
20
+ --- For `PickupVariant.POOP` (42)
16
21
  function ____exports.isPoop(self, pickup)
17
22
  return pickup.Variant == PickupVariant.POOP
18
23
  end
24
+ --- For `PickupVariant.SACK` (69)
19
25
  function ____exports.isSack(self, pickup)
20
26
  return pickup.Variant == PickupVariant.SACK
21
27
  end
28
+ --- For `PickupVariant.PILL` (70)
22
29
  function ____exports.isPill(self, pickup)
23
30
  return pickup.Variant == PickupVariant.PILL
24
31
  end
32
+ --- For `PickupVariant.LIL_BATTERY` (90)
25
33
  function ____exports.isBattery(self, pickup)
26
34
  return pickup.Variant == PickupVariant.LIL_BATTERY
27
35
  end
36
+ --- For `PickupVariant.COLLECTIBLE` (100)
28
37
  function ____exports.isCollectible(self, pickup)
29
38
  return pickup.Variant == PickupVariant.COLLECTIBLE
30
39
  end
40
+ --- For `PickupVariant.TAROT_CARD` (300)
31
41
  function ____exports.isCardPickup(self, pickup)
32
42
  return pickup.Variant == PickupVariant.TAROT_CARD
33
43
  end
44
+ --- For `PickupVariant.TRINKET` (350)
34
45
  function ____exports.isTrinket(self, pickup)
35
46
  return pickup.Variant == PickupVariant.TRINKET
36
47
  end
@@ -33,7 +33,7 @@ export declare function isRedHeart(pickup: EntityPickup): boolean;
33
33
  * @param cap Optional. If specified, will only remove the given amount of cards.
34
34
  * @returns True if one or more cards were removed, false otherwise.
35
35
  */
36
- export declare function removeAllBatteries(batterySubType?: BatterySubType, cap?: int): boolean;
36
+ export declare function removeAllBatteries(batterySubType?: BatterySubType, cap?: int): EntityPickupBattery[];
37
37
  /**
38
38
  * Helper function to remove all of the cards in the room.
39
39
  *
@@ -41,7 +41,7 @@ export declare function removeAllBatteries(batterySubType?: BatterySubType, cap?
41
41
  * @param cap Optional. If specified, will only remove the given amount of cards.
42
42
  * @returns True if one or more cards were removed, false otherwise.
43
43
  */
44
- export declare function removeAllCards(card?: Card, cap?: int): boolean;
44
+ export declare function removeAllCards(card?: Card, cap?: int): EntityPickupCard[];
45
45
  /**
46
46
  * Helper function to remove all of the coins in the room.
47
47
  *
@@ -49,7 +49,7 @@ export declare function removeAllCards(card?: Card, cap?: int): boolean;
49
49
  * @param cap Optional. If specified, will only remove the given amount of coins.
50
50
  * @returns True if one or more coins were removed, false otherwise.
51
51
  */
52
- export declare function removeAllCoins(coinSubType?: CoinSubType, cap?: int): boolean;
52
+ export declare function removeAllCoins(coinSubType?: CoinSubType, cap?: int): EntityPickupCoin[];
53
53
  /**
54
54
  * Helper function to remove all of the collectibles in the room.
55
55
  *
@@ -58,7 +58,7 @@ export declare function removeAllCoins(coinSubType?: CoinSubType, cap?: int): bo
58
58
  * @param cap Optional. If specified, will only remove the given amount of collectibles.
59
59
  * @returns True if one or more collectibles were removed, false otherwise.
60
60
  */
61
- export declare function removeAllCollectibles(collectibleType?: CollectibleType, cap?: int): boolean;
61
+ export declare function removeAllCollectibles(collectibleType?: CollectibleType, cap?: int): EntityPickupCollectible[];
62
62
  /**
63
63
  * Helper function to remove all of the hearts in the room.
64
64
  *
@@ -66,7 +66,7 @@ export declare function removeAllCollectibles(collectibleType?: CollectibleType,
66
66
  * @param cap Optional. If specified, will only remove the given amount of hearts.
67
67
  * @returns True if one or more hearts were removed, false otherwise.
68
68
  */
69
- export declare function removeAllHearts(heartSubType?: HeartSubType, cap?: int): boolean;
69
+ export declare function removeAllHearts(heartSubType?: HeartSubType, cap?: int): EntityPickupHeart[];
70
70
  /**
71
71
  * Helper function to remove all of the keys in the room.
72
72
  *
@@ -74,7 +74,7 @@ export declare function removeAllHearts(heartSubType?: HeartSubType, cap?: int):
74
74
  * @param cap Optional. If specified, will only remove the given amount of keys.
75
75
  * @returns True if one or more keys were removed, false otherwise.
76
76
  */
77
- export declare function removeAllKeys(keySubType?: KeySubType, cap?: int): boolean;
77
+ export declare function removeAllKeys(keySubType?: KeySubType, cap?: int): EntityPickupKey[];
78
78
  /**
79
79
  * Helper function to remove all of the pills in the room.
80
80
  *
@@ -82,7 +82,7 @@ export declare function removeAllKeys(keySubType?: KeySubType, cap?: int): boole
82
82
  * @param cap Optional. If specified, will only remove the given amount of pills.
83
83
  * @returns True if one or more pills were removed, false otherwise.
84
84
  */
85
- export declare function removeAllPills(pillColor?: PillColor, cap?: int): boolean;
85
+ export declare function removeAllPills(pillColor?: PillColor, cap?: int): EntityPickupPill[];
86
86
  /**
87
87
  * Helper function to remove all of the sacks (i.e. grab bags) in the room.
88
88
  *
@@ -90,7 +90,7 @@ export declare function removeAllPills(pillColor?: PillColor, cap?: int): boolea
90
90
  * @param cap Optional. If specified, will only remove the given amount of trinkets.
91
91
  * @returns True if one or more trinkets were removed, false otherwise.
92
92
  */
93
- export declare function removeAllSacks(sackSubType?: SackSubType, cap?: int): boolean;
93
+ export declare function removeAllSacks(sackSubType?: SackSubType, cap?: int): EntityPickupSack[];
94
94
  /**
95
95
  * Helper function to remove all of the trinkets in the room.
96
96
  *
@@ -99,7 +99,7 @@ export declare function removeAllSacks(sackSubType?: SackSubType, cap?: int): bo
99
99
  * @param cap Optional. If specified, will only remove the given amount of trinkets.
100
100
  * @returns True if one or more trinkets were removed, false otherwise.
101
101
  */
102
- export declare function removeAllTrinkets(trinketType?: TrinketType, cap?: int): boolean;
102
+ export declare function removeAllTrinkets(trinketType?: TrinketType, cap?: int): EntityPickupTrinket[];
103
103
  /**
104
104
  * Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.LIL_BATTERY` (90).
105
105
  */