isaacscript-common 18.3.0 → 18.3.1

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 (340) hide show
  1. package/dist/index.d.ts +25 -20
  2. package/dist/isaacscript-common.lua +291 -319
  3. package/dist/src/classes/ModFeature.d.ts +2 -2
  4. package/dist/src/classes/ModFeature.d.ts.map +1 -1
  5. package/dist/src/classes/ModFeature.lua +18 -17
  6. package/dist/src/classes/ModUpgradedBase.d.ts.map +1 -1
  7. package/dist/src/classes/ModUpgradedBase.lua +10 -10
  8. package/dist/src/classes/callbacks/EntityTakeDmgFilter.lua +1 -1
  9. package/dist/src/classes/callbacks/EntityTakeDmgPlayer.d.ts.map +1 -1
  10. package/dist/src/classes/callbacks/EntityTakeDmgPlayer.lua +1 -1
  11. package/dist/src/classes/callbacks/InputActionFilter.lua +1 -1
  12. package/dist/src/classes/callbacks/InputActionPlayer.lua +1 -1
  13. package/dist/src/classes/callbacks/PostAmbushFinished.lua +1 -1
  14. package/dist/src/classes/callbacks/PostAmbushStarted.lua +1 -1
  15. package/dist/src/classes/callbacks/PostBombExploded.lua +1 -1
  16. package/dist/src/classes/callbacks/PostBombInitLate.lua +1 -1
  17. package/dist/src/classes/callbacks/PostBoneSwing.lua +1 -1
  18. package/dist/src/classes/callbacks/PostCollectibleEmpty.d.ts.map +1 -1
  19. package/dist/src/classes/callbacks/PostCollectibleEmpty.lua +1 -1
  20. package/dist/src/classes/callbacks/PostCollectibleInitFirst.d.ts.map +1 -1
  21. package/dist/src/classes/callbacks/PostCollectibleInitFirst.lua +1 -1
  22. package/dist/src/classes/callbacks/PostCursedTeleport.d.ts +2 -2
  23. package/dist/src/classes/callbacks/PostCursedTeleport.d.ts.map +1 -1
  24. package/dist/src/classes/callbacks/PostCursedTeleport.lua +19 -21
  25. package/dist/src/classes/callbacks/PostDiceRoomActivated.d.ts.map +1 -1
  26. package/dist/src/classes/callbacks/PostDiceRoomActivated.lua +1 -1
  27. package/dist/src/classes/callbacks/PostDoorRender.lua +1 -1
  28. package/dist/src/classes/callbacks/PostDoorUpdate.lua +1 -1
  29. package/dist/src/classes/callbacks/PostEffectInitLate.lua +1 -1
  30. package/dist/src/classes/callbacks/PostEffectStateChanged.lua +1 -1
  31. package/dist/src/classes/callbacks/PostFamiliarInitLate.lua +1 -1
  32. package/dist/src/classes/callbacks/PostFamiliarStateChanged.lua +1 -1
  33. package/dist/src/classes/callbacks/PostGreedModeWave.lua +1 -1
  34. package/dist/src/classes/callbacks/PostHolyMantleRemoved.lua +1 -1
  35. package/dist/src/classes/callbacks/PostItemDischarge.d.ts.map +1 -1
  36. package/dist/src/classes/callbacks/PostItemDischarge.lua +2 -2
  37. package/dist/src/classes/callbacks/PostKnifeInitLate.lua +1 -1
  38. package/dist/src/classes/callbacks/PostLaserInitLate.lua +1 -1
  39. package/dist/src/classes/callbacks/PostNPCDeathFilter.lua +1 -1
  40. package/dist/src/classes/callbacks/PostNPCInitFilter.lua +1 -1
  41. package/dist/src/classes/callbacks/PostNPCInitLate.lua +1 -1
  42. package/dist/src/classes/callbacks/PostNPCRenderFilter.lua +1 -1
  43. package/dist/src/classes/callbacks/PostNPCStateChanged.lua +1 -1
  44. package/dist/src/classes/callbacks/PostNPCUpdateFilter.lua +1 -1
  45. package/dist/src/classes/callbacks/PostNewRoomEarly.lua +1 -1
  46. package/dist/src/classes/callbacks/PostPickupCollect.lua +1 -1
  47. package/dist/src/classes/callbacks/PostPickupInitFirst.lua +1 -1
  48. package/dist/src/classes/callbacks/PostPickupInitLate.lua +1 -1
  49. package/dist/src/classes/callbacks/PostPickupStateChanged.lua +1 -1
  50. package/dist/src/classes/callbacks/PostPitRender.lua +1 -1
  51. package/dist/src/classes/callbacks/PostPitUpdate.lua +1 -1
  52. package/dist/src/classes/callbacks/PostPlayerChangeHealth.lua +1 -1
  53. package/dist/src/classes/callbacks/PostPlayerChangeStat.lua +1 -1
  54. package/dist/src/classes/callbacks/PostPlayerChangeType.lua +1 -1
  55. package/dist/src/classes/callbacks/PostPlayerFatalDamage.d.ts +1 -1
  56. package/dist/src/classes/callbacks/PostPlayerFatalDamage.d.ts.map +1 -1
  57. package/dist/src/classes/callbacks/PostPlayerFatalDamage.lua +19 -21
  58. package/dist/src/classes/callbacks/PostPlayerInitFirst.lua +1 -1
  59. package/dist/src/classes/callbacks/PostPlayerInitLate.lua +1 -1
  60. package/dist/src/classes/callbacks/PostPoopRender.lua +1 -1
  61. package/dist/src/classes/callbacks/PostPoopUpdate.lua +1 -1
  62. package/dist/src/classes/callbacks/PostPressurePlateRender.lua +1 -1
  63. package/dist/src/classes/callbacks/PostPressurePlateUpdate.lua +1 -1
  64. package/dist/src/classes/callbacks/PostProjectileInitLate.lua +1 -1
  65. package/dist/src/classes/callbacks/PostPurchase.lua +1 -1
  66. package/dist/src/classes/callbacks/PostRockRender.lua +1 -1
  67. package/dist/src/classes/callbacks/PostRockUpdate.lua +1 -1
  68. package/dist/src/classes/callbacks/PostRoomClearChanged.lua +2 -2
  69. package/dist/src/classes/callbacks/PostSacrifice.d.ts.map +1 -1
  70. package/dist/src/classes/callbacks/PostSacrifice.lua +4 -8
  71. package/dist/src/classes/callbacks/PostSlotCollision.lua +1 -1
  72. package/dist/src/classes/callbacks/PostSlotDestroyed.d.ts.map +1 -1
  73. package/dist/src/classes/callbacks/PostSlotDestroyed.lua +2 -2
  74. package/dist/src/classes/callbacks/PostSpikesRender.lua +1 -1
  75. package/dist/src/classes/callbacks/PostSpikesUpdate.lua +1 -1
  76. package/dist/src/classes/callbacks/PostTNTRender.lua +1 -1
  77. package/dist/src/classes/callbacks/PostTNTUpdate.lua +1 -1
  78. package/dist/src/classes/callbacks/PostTearInitLate.lua +1 -1
  79. package/dist/src/classes/callbacks/PostTearInitVeryLate.lua +1 -1
  80. package/dist/src/classes/callbacks/PostTransformation.lua +1 -1
  81. package/dist/src/classes/callbacks/PostTrinketBreak.d.ts.map +1 -1
  82. package/dist/src/classes/callbacks/PostTrinketBreak.lua +5 -11
  83. package/dist/src/classes/callbacks/PreBerserkDeath.lua +1 -1
  84. package/dist/src/classes/callbacks/PreGetPedestal.d.ts.map +1 -1
  85. package/dist/src/classes/callbacks/PreGetPedestal.lua +1 -1
  86. package/dist/src/classes/callbacks/PreNPCCollisionFilter.lua +1 -1
  87. package/dist/src/classes/callbacks/PreNPCUpdateFilter.lua +1 -1
  88. package/dist/src/classes/callbacks/PreNewLevel.lua +1 -1
  89. package/dist/src/classes/features/callbackLogic/CustomGridEntities.d.ts.map +1 -1
  90. package/dist/src/classes/features/callbackLogic/CustomGridEntities.lua +2 -2
  91. package/dist/src/classes/features/callbackLogic/CustomRevive.d.ts +2 -2
  92. package/dist/src/classes/features/callbackLogic/CustomRevive.d.ts.map +1 -1
  93. package/dist/src/classes/features/callbackLogic/CustomRevive.lua +5 -5
  94. package/dist/src/classes/features/callbackLogic/EsauJrDetection.d.ts.map +1 -1
  95. package/dist/src/classes/features/callbackLogic/EsauJrDetection.lua +1 -1
  96. package/dist/src/classes/features/callbackLogic/FlipDetection.d.ts.map +1 -1
  97. package/dist/src/classes/features/callbackLogic/FlipDetection.lua +1 -1
  98. package/dist/src/classes/features/callbackLogic/GameReorderedCallbacks.d.ts.map +1 -1
  99. package/dist/src/classes/features/callbackLogic/GameReorderedCallbacks.lua +1 -1
  100. package/dist/src/classes/features/callbackLogic/GridEntityCollisionDetection.d.ts.map +1 -1
  101. package/dist/src/classes/features/callbackLogic/GridEntityCollisionDetection.lua +1 -1
  102. package/dist/src/classes/features/callbackLogic/GridEntityRenderDetection.d.ts.map +1 -1
  103. package/dist/src/classes/features/callbackLogic/GridEntityRenderDetection.lua +1 -1
  104. package/dist/src/classes/features/callbackLogic/GridEntityUpdateDetection.d.ts.map +1 -1
  105. package/dist/src/classes/features/callbackLogic/GridEntityUpdateDetection.lua +2 -2
  106. package/dist/src/classes/features/callbackLogic/ItemPickupDetection.d.ts +1 -1
  107. package/dist/src/classes/features/callbackLogic/ItemPickupDetection.d.ts.map +1 -1
  108. package/dist/src/classes/features/callbackLogic/ItemPickupDetection.lua +4 -3
  109. package/dist/src/classes/features/callbackLogic/PlayerCollectibleDetection.d.ts +8 -3
  110. package/dist/src/classes/features/callbackLogic/PlayerCollectibleDetection.d.ts.map +1 -1
  111. package/dist/src/classes/features/callbackLogic/PlayerCollectibleDetection.lua +16 -21
  112. package/dist/src/classes/features/callbackLogic/PlayerReorderedCallbacks.d.ts.map +1 -1
  113. package/dist/src/classes/features/callbackLogic/PlayerReorderedCallbacks.lua +2 -2
  114. package/dist/src/classes/features/callbackLogic/SlotRenderDetection.d.ts.map +1 -1
  115. package/dist/src/classes/features/callbackLogic/SlotRenderDetection.lua +1 -1
  116. package/dist/src/classes/features/callbackLogic/SlotUpdateDetection.d.ts.map +1 -1
  117. package/dist/src/classes/features/callbackLogic/SlotUpdateDetection.lua +2 -2
  118. package/dist/src/classes/features/other/CharacterHealthConversion.d.ts.map +1 -1
  119. package/dist/src/classes/features/other/CharacterHealthConversion.lua +2 -2
  120. package/dist/src/classes/features/other/CharacterStats.lua +1 -1
  121. package/dist/src/classes/features/other/CollectibleItemPoolType.d.ts.map +1 -1
  122. package/dist/src/classes/features/other/CollectibleItemPoolType.lua +1 -1
  123. package/dist/src/classes/features/other/CustomHotkeys.lua +1 -1
  124. package/dist/src/classes/features/other/CustomItemPools.lua +1 -1
  125. package/dist/src/classes/features/other/CustomPickups.d.ts.map +1 -1
  126. package/dist/src/classes/features/other/CustomPickups.lua +1 -1
  127. package/dist/src/classes/features/other/CustomStages.d.ts.map +1 -1
  128. package/dist/src/classes/features/other/CustomStages.lua +2 -2
  129. package/dist/src/classes/features/other/CustomTrapdoors.d.ts.map +1 -1
  130. package/dist/src/classes/features/other/CustomTrapdoors.lua +2 -2
  131. package/dist/src/classes/features/other/DisableAllSound.lua +1 -1
  132. package/dist/src/classes/features/other/DisableInputs.d.ts.map +1 -1
  133. package/dist/src/classes/features/other/DisableInputs.lua +1 -1
  134. package/dist/src/classes/features/other/ExtraConsoleCommands.d.ts +1 -1
  135. package/dist/src/classes/features/other/ExtraConsoleCommands.d.ts.map +1 -1
  136. package/dist/src/classes/features/other/ExtraConsoleCommands.lua +17 -16
  137. package/dist/src/classes/features/other/FadeInRemover.lua +1 -1
  138. package/dist/src/classes/features/other/FastReset.lua +1 -1
  139. package/dist/src/classes/features/other/ModdedElementDetection.lua +1 -1
  140. package/dist/src/classes/features/other/NoSirenSteal.d.ts.map +1 -1
  141. package/dist/src/classes/features/other/NoSirenSteal.lua +1 -1
  142. package/dist/src/classes/features/other/Pause.d.ts.map +1 -1
  143. package/dist/src/classes/features/other/Pause.lua +1 -1
  144. package/dist/src/classes/features/other/PersistentEntities.lua +2 -2
  145. package/dist/src/classes/features/other/PickupIndexCreation.d.ts.map +1 -1
  146. package/dist/src/classes/features/other/PickupIndexCreation.lua +1 -1
  147. package/dist/src/classes/features/other/PlayerInventory.lua +1 -1
  148. package/dist/src/classes/features/other/PonyDetection.lua +1 -1
  149. package/dist/src/classes/features/other/PressInput.d.ts.map +1 -1
  150. package/dist/src/classes/features/other/PressInput.lua +1 -1
  151. package/dist/src/classes/features/other/PreventChildEntities.lua +1 -1
  152. package/dist/src/classes/features/other/PreventCollectibleRotation.d.ts.map +1 -1
  153. package/dist/src/classes/features/other/PreventCollectibleRotation.lua +1 -1
  154. package/dist/src/classes/features/other/PreventGridEntityRespawn.d.ts.map +1 -1
  155. package/dist/src/classes/features/other/PreventGridEntityRespawn.lua +2 -2
  156. package/dist/src/classes/features/other/RoomClearFrame.lua +1 -1
  157. package/dist/src/classes/features/other/RoomHistory.lua +1 -1
  158. package/dist/src/classes/features/other/RunInNFrames.lua +1 -1
  159. package/dist/src/classes/features/other/RunNextRoom.lua +1 -1
  160. package/dist/src/classes/features/other/SaveDataManager.d.ts.map +1 -1
  161. package/dist/src/classes/features/other/SaveDataManager.lua +2 -2
  162. package/dist/src/classes/features/other/StageHistory.d.ts.map +1 -1
  163. package/dist/src/classes/features/other/StageHistory.lua +1 -1
  164. package/dist/src/classes/features/other/TaintedLazarusPlayers.lua +1 -1
  165. package/dist/src/classes/features/other/debugDisplay/DebugDisplayBomb.lua +1 -1
  166. package/dist/src/classes/features/other/debugDisplay/DebugDisplayDoor.lua +1 -1
  167. package/dist/src/classes/features/other/debugDisplay/DebugDisplayEffect.lua +1 -1
  168. package/dist/src/classes/features/other/debugDisplay/DebugDisplayFamiliar.lua +1 -1
  169. package/dist/src/classes/features/other/debugDisplay/DebugDisplayKnife.lua +1 -1
  170. package/dist/src/classes/features/other/debugDisplay/DebugDisplayLaser.lua +1 -1
  171. package/dist/src/classes/features/other/debugDisplay/DebugDisplayNPC.lua +1 -1
  172. package/dist/src/classes/features/other/debugDisplay/DebugDisplayPickup.lua +1 -1
  173. package/dist/src/classes/features/other/debugDisplay/DebugDisplayPit.lua +1 -1
  174. package/dist/src/classes/features/other/debugDisplay/DebugDisplayPlayer.lua +1 -1
  175. package/dist/src/classes/features/other/debugDisplay/DebugDisplayPoop.lua +1 -1
  176. package/dist/src/classes/features/other/debugDisplay/DebugDisplayPressurePlate.lua +1 -1
  177. package/dist/src/classes/features/other/debugDisplay/DebugDisplayProjectile.lua +1 -1
  178. package/dist/src/classes/features/other/debugDisplay/DebugDisplayRock.lua +1 -1
  179. package/dist/src/classes/features/other/debugDisplay/DebugDisplaySlot.lua +1 -1
  180. package/dist/src/classes/features/other/debugDisplay/DebugDisplaySpikes.lua +1 -1
  181. package/dist/src/classes/features/other/debugDisplay/DebugDisplayTNT.lua +1 -1
  182. package/dist/src/classes/features/other/debugDisplay/DebugDisplayTear.lua +1 -1
  183. package/dist/src/classes/private/CustomCallback.d.ts +2 -2
  184. package/dist/src/classes/private/CustomCallback.d.ts.map +1 -1
  185. package/dist/src/classes/private/CustomCallback.lua +7 -10
  186. package/dist/src/functions/array.d.ts +5 -1
  187. package/dist/src/functions/array.d.ts.map +1 -1
  188. package/dist/src/functions/array.lua +17 -8
  189. package/dist/src/functions/decorators.d.ts.map +1 -1
  190. package/dist/src/functions/decorators.lua +12 -22
  191. package/dist/src/functions/logMisc.d.ts +1 -0
  192. package/dist/src/functions/logMisc.d.ts.map +1 -1
  193. package/dist/src/functions/logMisc.lua +2 -1
  194. package/dist/src/types/ModUpgraded.d.ts +1 -1
  195. package/dist/src/types/ModUpgraded.d.ts.map +1 -1
  196. package/dist/src/types/private/CallbackTuple.d.ts +17 -8
  197. package/dist/src/types/private/CallbackTuple.d.ts.map +1 -1
  198. package/package.json +1 -1
  199. package/src/classes/ModFeature.ts +43 -21
  200. package/src/classes/ModUpgradedBase.ts +18 -10
  201. package/src/classes/callbacks/EntityTakeDmgFilter.ts +1 -1
  202. package/src/classes/callbacks/EntityTakeDmgPlayer.ts +2 -1
  203. package/src/classes/callbacks/InputActionFilter.ts +1 -1
  204. package/src/classes/callbacks/InputActionPlayer.ts +1 -1
  205. package/src/classes/callbacks/PostAmbushFinished.ts +1 -1
  206. package/src/classes/callbacks/PostAmbushStarted.ts +1 -1
  207. package/src/classes/callbacks/PostBombExploded.ts +1 -1
  208. package/src/classes/callbacks/PostBombInitLate.ts +1 -1
  209. package/src/classes/callbacks/PostBoneSwing.ts +1 -1
  210. package/src/classes/callbacks/PostCollectibleEmpty.ts +2 -1
  211. package/src/classes/callbacks/PostCollectibleInitFirst.ts +2 -1
  212. package/src/classes/callbacks/PostCursedTeleport.ts +52 -60
  213. package/src/classes/callbacks/PostDiceRoomActivated.ts +2 -1
  214. package/src/classes/callbacks/PostDoorRender.ts +1 -1
  215. package/src/classes/callbacks/PostDoorUpdate.ts +1 -1
  216. package/src/classes/callbacks/PostEffectInitLate.ts +1 -1
  217. package/src/classes/callbacks/PostEffectStateChanged.ts +1 -1
  218. package/src/classes/callbacks/PostFamiliarInitLate.ts +1 -1
  219. package/src/classes/callbacks/PostFamiliarStateChanged.ts +1 -1
  220. package/src/classes/callbacks/PostGreedModeWave.ts +1 -1
  221. package/src/classes/callbacks/PostHolyMantleRemoved.ts +1 -1
  222. package/src/classes/callbacks/PostItemDischarge.ts +3 -2
  223. package/src/classes/callbacks/PostKnifeInitLate.ts +1 -1
  224. package/src/classes/callbacks/PostLaserInitLate.ts +1 -1
  225. package/src/classes/callbacks/PostNPCDeathFilter.ts +1 -1
  226. package/src/classes/callbacks/PostNPCInitFilter.ts +1 -1
  227. package/src/classes/callbacks/PostNPCInitLate.ts +1 -1
  228. package/src/classes/callbacks/PostNPCRenderFilter.ts +1 -1
  229. package/src/classes/callbacks/PostNPCStateChanged.ts +1 -1
  230. package/src/classes/callbacks/PostNPCUpdateFilter.ts +1 -1
  231. package/src/classes/callbacks/PostNewRoomEarly.ts +2 -2
  232. package/src/classes/callbacks/PostPickupCollect.ts +1 -1
  233. package/src/classes/callbacks/PostPickupInitFirst.ts +1 -1
  234. package/src/classes/callbacks/PostPickupInitLate.ts +1 -1
  235. package/src/classes/callbacks/PostPickupStateChanged.ts +1 -1
  236. package/src/classes/callbacks/PostPitRender.ts +1 -1
  237. package/src/classes/callbacks/PostPitUpdate.ts +1 -1
  238. package/src/classes/callbacks/PostPlayerChangeHealth.ts +1 -1
  239. package/src/classes/callbacks/PostPlayerChangeStat.ts +1 -1
  240. package/src/classes/callbacks/PostPlayerChangeType.ts +1 -1
  241. package/src/classes/callbacks/PostPlayerFatalDamage.ts +39 -48
  242. package/src/classes/callbacks/PostPlayerInitFirst.ts +2 -2
  243. package/src/classes/callbacks/PostPlayerInitLate.ts +1 -1
  244. package/src/classes/callbacks/PostPoopRender.ts +1 -1
  245. package/src/classes/callbacks/PostPoopUpdate.ts +1 -1
  246. package/src/classes/callbacks/PostPressurePlateRender.ts +1 -1
  247. package/src/classes/callbacks/PostPressurePlateUpdate.ts +1 -1
  248. package/src/classes/callbacks/PostProjectileInitLate.ts +1 -1
  249. package/src/classes/callbacks/PostPurchase.ts +1 -1
  250. package/src/classes/callbacks/PostRockRender.ts +1 -1
  251. package/src/classes/callbacks/PostRockUpdate.ts +1 -1
  252. package/src/classes/callbacks/PostRoomClearChanged.ts +2 -2
  253. package/src/classes/callbacks/PostSacrifice.ts +5 -20
  254. package/src/classes/callbacks/PostSlotCollision.ts +1 -1
  255. package/src/classes/callbacks/PostSlotDestroyed.ts +3 -2
  256. package/src/classes/callbacks/PostSpikesRender.ts +1 -1
  257. package/src/classes/callbacks/PostSpikesUpdate.ts +1 -1
  258. package/src/classes/callbacks/PostTNTRender.ts +1 -1
  259. package/src/classes/callbacks/PostTNTUpdate.ts +1 -1
  260. package/src/classes/callbacks/PostTearInitLate.ts +1 -1
  261. package/src/classes/callbacks/PostTearInitVeryLate.ts +1 -1
  262. package/src/classes/callbacks/PostTransformation.ts +1 -1
  263. package/src/classes/callbacks/PostTrinketBreak.ts +4 -18
  264. package/src/classes/callbacks/PreBerserkDeath.ts +1 -1
  265. package/src/classes/callbacks/PreGetPedestal.ts +2 -1
  266. package/src/classes/callbacks/PreNPCCollisionFilter.ts +1 -1
  267. package/src/classes/callbacks/PreNPCUpdateFilter.ts +1 -1
  268. package/src/classes/callbacks/PreNewLevel.ts +1 -1
  269. package/src/classes/features/callbackLogic/CustomGridEntities.ts +5 -3
  270. package/src/classes/features/callbackLogic/CustomRevive.ts +19 -18
  271. package/src/classes/features/callbackLogic/EsauJrDetection.ts +6 -2
  272. package/src/classes/features/callbackLogic/FlipDetection.ts +2 -1
  273. package/src/classes/features/callbackLogic/GameReorderedCallbacks.ts +13 -5
  274. package/src/classes/features/callbackLogic/GridEntityCollisionDetection.ts +2 -1
  275. package/src/classes/features/callbackLogic/GridEntityRenderDetection.ts +2 -1
  276. package/src/classes/features/callbackLogic/GridEntityUpdateDetection.ts +3 -2
  277. package/src/classes/features/callbackLogic/ItemPickupDetection.ts +8 -5
  278. package/src/classes/features/callbackLogic/PlayerCollectibleDetection.ts +67 -71
  279. package/src/classes/features/callbackLogic/PlayerReorderedCallbacks.ts +10 -5
  280. package/src/classes/features/callbackLogic/SlotRenderDetection.ts +2 -1
  281. package/src/classes/features/callbackLogic/SlotUpdateDetection.ts +3 -2
  282. package/src/classes/features/other/CharacterHealthConversion.ts +3 -2
  283. package/src/classes/features/other/CharacterStats.ts +1 -1
  284. package/src/classes/features/other/CollectibleItemPoolType.ts +2 -1
  285. package/src/classes/features/other/CustomHotkeys.ts +1 -1
  286. package/src/classes/features/other/CustomItemPools.ts +1 -1
  287. package/src/classes/features/other/CustomPickups.ts +3 -2
  288. package/src/classes/features/other/CustomStages.ts +7 -6
  289. package/src/classes/features/other/CustomTrapdoors.ts +4 -6
  290. package/src/classes/features/other/DisableAllSound.ts +1 -1
  291. package/src/classes/features/other/DisableInputs.ts +6 -3
  292. package/src/classes/features/other/ExtraConsoleCommands.ts +32 -31
  293. package/src/classes/features/other/FadeInRemover.ts +1 -1
  294. package/src/classes/features/other/FastReset.ts +1 -1
  295. package/src/classes/features/other/ModdedElementDetection.ts +1 -1
  296. package/src/classes/features/other/NoSirenSteal.ts +2 -1
  297. package/src/classes/features/other/Pause.ts +3 -2
  298. package/src/classes/features/other/PersistentEntities.ts +2 -2
  299. package/src/classes/features/other/PickupIndexCreation.ts +3 -2
  300. package/src/classes/features/other/PlayerInventory.ts +2 -2
  301. package/src/classes/features/other/PonyDetection.ts +1 -1
  302. package/src/classes/features/other/PressInput.ts +2 -1
  303. package/src/classes/features/other/PreventChildEntities.ts +1 -1
  304. package/src/classes/features/other/PreventCollectibleRotation.ts +4 -2
  305. package/src/classes/features/other/PreventGridEntityRespawn.ts +3 -2
  306. package/src/classes/features/other/RoomClearFrame.ts +1 -1
  307. package/src/classes/features/other/RoomHistory.ts +1 -1
  308. package/src/classes/features/other/RunInNFrames.ts +2 -2
  309. package/src/classes/features/other/RunNextRoom.ts +1 -1
  310. package/src/classes/features/other/SaveDataManager.ts +6 -5
  311. package/src/classes/features/other/StageHistory.ts +1 -4
  312. package/src/classes/features/other/TaintedLazarusPlayers.ts +1 -1
  313. package/src/classes/features/other/debugDisplay/DebugDisplayBomb.ts +1 -1
  314. package/src/classes/features/other/debugDisplay/DebugDisplayDoor.ts +1 -1
  315. package/src/classes/features/other/debugDisplay/DebugDisplayEffect.ts +1 -1
  316. package/src/classes/features/other/debugDisplay/DebugDisplayFamiliar.ts +1 -1
  317. package/src/classes/features/other/debugDisplay/DebugDisplayKnife.ts +1 -1
  318. package/src/classes/features/other/debugDisplay/DebugDisplayLaser.ts +1 -1
  319. package/src/classes/features/other/debugDisplay/DebugDisplayNPC.ts +1 -1
  320. package/src/classes/features/other/debugDisplay/DebugDisplayPickup.ts +1 -1
  321. package/src/classes/features/other/debugDisplay/DebugDisplayPit.ts +1 -1
  322. package/src/classes/features/other/debugDisplay/DebugDisplayPlayer.ts +1 -1
  323. package/src/classes/features/other/debugDisplay/DebugDisplayPoop.ts +1 -1
  324. package/src/classes/features/other/debugDisplay/DebugDisplayPressurePlate.ts +1 -1
  325. package/src/classes/features/other/debugDisplay/DebugDisplayProjectile.ts +1 -1
  326. package/src/classes/features/other/debugDisplay/DebugDisplayRock.ts +1 -1
  327. package/src/classes/features/other/debugDisplay/DebugDisplaySlot.ts +1 -1
  328. package/src/classes/features/other/debugDisplay/DebugDisplaySpikes.ts +1 -1
  329. package/src/classes/features/other/debugDisplay/DebugDisplayTNT.ts +1 -1
  330. package/src/classes/features/other/debugDisplay/DebugDisplayTear.ts +1 -1
  331. package/src/classes/private/CustomCallback.ts +19 -15
  332. package/src/functions/array.ts +14 -5
  333. package/src/functions/decorators.ts +14 -20
  334. package/src/functions/logMisc.ts +4 -1
  335. package/src/types/ModUpgraded.ts +1 -1
  336. package/src/types/private/CallbackTuple.ts +17 -8
  337. package/dist/src/types/private/AllButFirst.d.ts +0 -5
  338. package/dist/src/types/private/AllButFirst.d.ts.map +0 -1
  339. package/dist/src/types/private/AllButFirst.lua +0 -2
  340. package/src/types/private/AllButFirst.ts +0 -6
package/dist/index.d.ts CHANGED
@@ -81,10 +81,6 @@ import { TrapdoorVariant } from 'isaac-typescript-definitions';
81
81
  import { TrinketType } from 'isaac-typescript-definitions';
82
82
  import { UseFlag } from 'isaac-typescript-definitions';
83
83
 
84
- export declare const ADD_CALLBACK_ARGS_KEY = "__addCallbackArgs";
85
-
86
- export declare const ADD_CALLBACK_CUSTOM_ARGS_KEY = "__addCallbackCustomArgs";
87
-
88
84
  declare interface AddCallbackParametersCustom {
89
85
  [ModCallbackCustom.ENTITY_TAKE_DMG_FILTER]: [
90
86
  callback: (entity: Entity, amount: float, damageFlags: BitFlags<DamageFlag>, source: EntityRef, countdownFrames: int) => boolean | undefined,
@@ -740,11 +736,6 @@ unknown,
740
736
  ...infer Tail
741
737
  ] ? Tail : unknown[];
742
738
 
743
- declare type AllButFirst_2<T extends unknown[]> = T extends [
744
- unknown,
745
- ...infer Tail
746
- ] ? Tail : unknown[];
747
-
748
739
  /** Helper type to create a new tuple containing all but the last element of another tuple. */
749
740
  export declare type AllButLast<T extends unknown[]> = T extends [...infer Head, unknown] ? Head : unknown[];
750
741
 
@@ -1506,7 +1497,7 @@ export declare function countSetBits(n: int): int;
1506
1497
  */
1507
1498
  declare abstract class CustomCallback<T extends ModCallbackCustom> extends Feature {
1508
1499
  private subscriptions;
1509
- addSubscriber(...args: AddCallbackParametersCustom[T]): void;
1500
+ addSubscriber(callbackFunc: AddCallbackParametersCustom[T][0], ...optionalArgs: AllButFirst<AddCallbackParametersCustom[T]>): void;
1510
1501
  /**
1511
1502
  * If the submitted function does not match any of the existing subscriptions, this method will do
1512
1503
  * nothing.
@@ -1827,9 +1818,9 @@ declare class CustomRevive extends Feature {
1827
1818
  private runInNFrames;
1828
1819
  constructor(preCustomRevive: PreCustomRevive, postCustomRevive: PostCustomRevive, runInNFrames: RunInNFrames);
1829
1820
  private postRender;
1830
- private postPEffectUpdate;
1831
- private checkWaitingForItemAnimation;
1832
1821
  private postNewRoomReordered;
1822
+ private postPEffectUpdateReordered;
1823
+ private checkWaitingForItemAnimation;
1833
1824
  private postPlayerFatalDamage;
1834
1825
  private preBerserkDeath;
1835
1826
  /**
@@ -3584,10 +3575,10 @@ declare class ExtraConsoleCommands extends Feature {
3584
3575
  private evaluateCacheFireDelay;
3585
3576
  private evaluateCacheSpeed;
3586
3577
  private evaluateCacheFlying;
3587
- private entityTakeDmgPlayer;
3588
3578
  private postCurseEval;
3589
3579
  private executeCmd;
3590
3580
  private postFireTear;
3581
+ private entityTakeDmgPlayer;
3591
3582
  /**
3592
3583
  * Helper function to add a custom console command.
3593
3584
  *
@@ -7102,8 +7093,12 @@ export declare function isAngelRoomDoor(door: GridEntityDoor): boolean;
7102
7093
  *
7103
7094
  * - the table contains all numerical indexes that are contiguous, starting at 1
7104
7095
  * - the table has no keys (i.e. an "empty" table)
7096
+ *
7097
+ * @param object The object to analyze.
7098
+ * @param ensureContiguousValues Optional. Whether or not the Lua table has to have all contiguous
7099
+ * keys in order to be considered an array. Default is true.
7105
7100
  */
7106
- export declare function isArray(object: unknown): object is unknown[];
7101
+ export declare function isArray(object: unknown, ensureContiguousValues?: boolean): object is unknown[];
7107
7102
 
7108
7103
  /**
7109
7104
  * Helper function to see if every element in the array is N + 1.
@@ -7286,7 +7281,7 @@ declare type ISCFeatureTuple<T extends readonly ISCFeature[]> = ISCFeature exten
7286
7281
  * same private fields will cause a `never` type.
7287
7282
  */
7288
7283
  declare type ISCFeatureTupleToClassTuple<T extends ISCFeature[]> = {
7289
- [K in keyof T]: PublicInterface<ISCFeatureToClass[T[K]]>;
7284
+ [Key in keyof T]: PublicInterface<ISCFeatureToClass[T[Key]]>;
7290
7285
  };
7291
7286
 
7292
7287
  /**
@@ -8012,7 +8007,7 @@ declare class ItemPickupDetection extends Feature {
8012
8007
  private postItemPickup;
8013
8008
  private preItemPickup;
8014
8009
  constructor(postItemPickup: PostItemPickup, preItemPickup: PreItemPickup);
8015
- private postPEffectUpdate;
8010
+ private postPEffectUpdateReordered;
8016
8011
  private queueEmpty;
8017
8012
  private queueNotEmpty;
8018
8013
  }
@@ -8342,6 +8337,7 @@ export declare function logAllEntities(includeBackgroundEffects: boolean, entity
8342
8337
  */
8343
8338
  export declare function logAllGridEntities(includeWalls?: boolean, gridEntityTypeFilter?: GridEntityType): void;
8344
8339
 
8340
+ /** Helper function to enumerate all of the values in an array. */
8345
8341
  export declare function logArray<T>(array: T[] | readonly T[]): void;
8346
8342
 
8347
8343
  export declare function logCollectibleTypes(collectibleTypes: CollectibleType[]): void;
@@ -8619,6 +8615,10 @@ export declare const MIN_PLAYER_SPEED_STAT = 0.1;
8619
8615
 
8620
8616
  export declare const MINUTE_IN_MILLISECONDS: number;
8621
8617
 
8618
+ export declare const MOD_FEATURE_CALLBACKS_KEY = "__callbacks";
8619
+
8620
+ export declare const MOD_FEATURE_CUSTOM_CALLBACKS_KEY = "__customCallbacks";
8621
+
8622
8622
  /**
8623
8623
  * - The Isaac API offers a lot of callbacks, but a lot of times there isn't one for the specific
8624
8624
  * thing that you are looking to do. So, `isaacscript-common` adds a bunch of new callbacks that
@@ -11552,7 +11552,7 @@ export declare function openAllDoors(): void;
11552
11552
  */
11553
11553
  export declare function openDoorFast(door: GridEntityDoor): void;
11554
11554
 
11555
- declare type OptionalArgs<T extends ModCallbackCustom> = AllButFirst_2<AddCallbackParametersCustom[T]>;
11555
+ declare type OptionalArgs<T extends ModCallbackCustom> = AllButFirst<AddCallbackParametersCustom[T]>;
11556
11556
 
11557
11557
  /**
11558
11558
  * Helper function to parse a string that contains an entity type, a variant, and a sub-type,
@@ -11775,7 +11775,14 @@ declare class PlayerCollectibleDetection extends Feature {
11775
11775
  */
11776
11776
  private updateCollectibleMapAndFire;
11777
11777
  private useItemD4;
11778
- private postPEffectUpdate;
11778
+ /** We need to handle the case of Tainted Eden taking damage. */
11779
+ private entityTakeDmgPlayer;
11780
+ /**
11781
+ * We need to handle TMTRAINER collectibles, since they do not cause the player's collectible
11782
+ * count to change.
11783
+ */
11784
+ private postItemPickup;
11785
+ private postPEffectUpdateReordered;
11779
11786
  /**
11780
11787
  * Checking for collectible count will work to detect when a player swaps their active item for
11781
11788
  * another active item. This is because the collectible count will decrement by 1 when the item is
@@ -11786,8 +11793,6 @@ declare class PlayerCollectibleDetection extends Feature {
11786
11793
  * collectible on the same frame, since doing so is cheap.
11787
11794
  */
11788
11795
  private checkActiveItemsChanged;
11789
- private entityTakeDmgPlayer;
11790
- private postItemPickup;
11791
11796
  }
11792
11797
 
11793
11798
  export declare function playerConvertBlackHeartsToSoulHearts(player: EntityPlayer): void;