isaacscript-common 87.9.6 → 87.9.8

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 (1596) hide show
  1. package/dist/cachedEnumValues.js +29 -32
  2. package/dist/callbackClasses.js +142 -289
  3. package/dist/callbacks.js +147 -183
  4. package/dist/classes/DefaultMap.d.ts.map +1 -1
  5. package/dist/classes/DefaultMap.js +4 -8
  6. package/dist/classes/ModFeature.d.ts.map +1 -1
  7. package/dist/classes/ModFeature.js +21 -25
  8. package/dist/classes/ModUpgraded.d.ts +19 -19
  9. package/dist/classes/ModUpgraded.d.ts.map +1 -1
  10. package/dist/classes/ModUpgraded.js +138 -141
  11. package/dist/classes/ModUpgraded.lua +99 -99
  12. package/dist/classes/callbacks/EntityTakeDmgFilter.d.ts +2 -2
  13. package/dist/classes/callbacks/EntityTakeDmgFilter.d.ts.map +1 -1
  14. package/dist/classes/callbacks/EntityTakeDmgFilter.js +8 -12
  15. package/dist/classes/callbacks/EntityTakeDmgFilter.lua +1 -1
  16. package/dist/classes/callbacks/EntityTakeDmgPlayer.d.ts +2 -2
  17. package/dist/classes/callbacks/EntityTakeDmgPlayer.d.ts.map +1 -1
  18. package/dist/classes/callbacks/EntityTakeDmgPlayer.js +15 -19
  19. package/dist/classes/callbacks/EntityTakeDmgPlayer.lua +1 -1
  20. package/dist/classes/callbacks/InputActionFilter.d.ts +2 -2
  21. package/dist/classes/callbacks/InputActionFilter.d.ts.map +1 -1
  22. package/dist/classes/callbacks/InputActionFilter.js +12 -16
  23. package/dist/classes/callbacks/InputActionFilter.lua +1 -1
  24. package/dist/classes/callbacks/InputActionPlayer.d.ts +2 -2
  25. package/dist/classes/callbacks/InputActionPlayer.d.ts.map +1 -1
  26. package/dist/classes/callbacks/InputActionPlayer.js +21 -25
  27. package/dist/classes/callbacks/InputActionPlayer.lua +6 -6
  28. package/dist/classes/callbacks/PostAmbushFinished.d.ts +2 -2
  29. package/dist/classes/callbacks/PostAmbushFinished.d.ts.map +1 -1
  30. package/dist/classes/callbacks/PostAmbushFinished.js +17 -21
  31. package/dist/classes/callbacks/PostAmbushFinished.lua +2 -2
  32. package/dist/classes/callbacks/PostAmbushStarted.d.ts +2 -2
  33. package/dist/classes/callbacks/PostAmbushStarted.d.ts.map +1 -1
  34. package/dist/classes/callbacks/PostAmbushStarted.js +17 -21
  35. package/dist/classes/callbacks/PostAmbushStarted.lua +2 -2
  36. package/dist/classes/callbacks/PostBombExploded.d.ts +2 -2
  37. package/dist/classes/callbacks/PostBombExploded.d.ts.map +1 -1
  38. package/dist/classes/callbacks/PostBombExploded.js +13 -17
  39. package/dist/classes/callbacks/PostBombExploded.lua +1 -1
  40. package/dist/classes/callbacks/PostBombInitFilter.d.ts +2 -2
  41. package/dist/classes/callbacks/PostBombInitFilter.d.ts.map +1 -1
  42. package/dist/classes/callbacks/PostBombInitFilter.js +10 -14
  43. package/dist/classes/callbacks/PostBombInitFilter.lua +1 -1
  44. package/dist/classes/callbacks/PostBombInitLate.d.ts +2 -2
  45. package/dist/classes/callbacks/PostBombInitLate.d.ts.map +1 -1
  46. package/dist/classes/callbacks/PostBombInitLate.js +13 -17
  47. package/dist/classes/callbacks/PostBombInitLate.lua +2 -2
  48. package/dist/classes/callbacks/PostBombRenderFilter.d.ts +2 -2
  49. package/dist/classes/callbacks/PostBombRenderFilter.d.ts.map +1 -1
  50. package/dist/classes/callbacks/PostBombRenderFilter.js +10 -14
  51. package/dist/classes/callbacks/PostBombRenderFilter.lua +1 -1
  52. package/dist/classes/callbacks/PostBombUpdateFilter.d.ts +2 -2
  53. package/dist/classes/callbacks/PostBombUpdateFilter.d.ts.map +1 -1
  54. package/dist/classes/callbacks/PostBombUpdateFilter.js +10 -14
  55. package/dist/classes/callbacks/PostBombUpdateFilter.lua +1 -1
  56. package/dist/classes/callbacks/PostBoneSwing.d.ts +1 -1
  57. package/dist/classes/callbacks/PostBoneSwing.d.ts.map +1 -1
  58. package/dist/classes/callbacks/PostBoneSwing.js +14 -18
  59. package/dist/classes/callbacks/PostBoneSwing.lua +1 -1
  60. package/dist/classes/callbacks/PostCollectibleEmpty.d.ts +2 -2
  61. package/dist/classes/callbacks/PostCollectibleEmpty.d.ts.map +1 -1
  62. package/dist/classes/callbacks/PostCollectibleEmpty.js +22 -26
  63. package/dist/classes/callbacks/PostCollectibleEmpty.lua +6 -6
  64. package/dist/classes/callbacks/PostCursedTeleport.d.ts +2 -2
  65. package/dist/classes/callbacks/PostCursedTeleport.d.ts.map +1 -1
  66. package/dist/classes/callbacks/PostCursedTeleport.js +54 -61
  67. package/dist/classes/callbacks/PostCursedTeleport.lua +4 -7
  68. package/dist/classes/callbacks/PostCustomRevive.d.ts +1 -1
  69. package/dist/classes/callbacks/PostCustomRevive.d.ts.map +1 -1
  70. package/dist/classes/callbacks/PostCustomRevive.js +7 -11
  71. package/dist/classes/callbacks/PostDiceRoomActivated.d.ts +2 -2
  72. package/dist/classes/callbacks/PostDiceRoomActivated.d.ts.map +1 -1
  73. package/dist/classes/callbacks/PostDiceRoomActivated.js +28 -30
  74. package/dist/classes/callbacks/PostDiceRoomActivated.lua +8 -7
  75. package/dist/classes/callbacks/PostDoorRender.d.ts +2 -2
  76. package/dist/classes/callbacks/PostDoorRender.d.ts.map +1 -1
  77. package/dist/classes/callbacks/PostDoorRender.js +13 -17
  78. package/dist/classes/callbacks/PostDoorRender.lua +1 -1
  79. package/dist/classes/callbacks/PostDoorUpdate.d.ts +2 -2
  80. package/dist/classes/callbacks/PostDoorUpdate.d.ts.map +1 -1
  81. package/dist/classes/callbacks/PostDoorUpdate.js +13 -17
  82. package/dist/classes/callbacks/PostDoorUpdate.lua +1 -1
  83. package/dist/classes/callbacks/PostEffectInitFilter.d.ts +2 -2
  84. package/dist/classes/callbacks/PostEffectInitFilter.d.ts.map +1 -1
  85. package/dist/classes/callbacks/PostEffectInitFilter.js +10 -14
  86. package/dist/classes/callbacks/PostEffectInitFilter.lua +1 -1
  87. package/dist/classes/callbacks/PostEffectInitLate.d.ts +2 -2
  88. package/dist/classes/callbacks/PostEffectInitLate.d.ts.map +1 -1
  89. package/dist/classes/callbacks/PostEffectInitLate.js +13 -17
  90. package/dist/classes/callbacks/PostEffectInitLate.lua +2 -2
  91. package/dist/classes/callbacks/PostEffectRenderFilter.d.ts +2 -2
  92. package/dist/classes/callbacks/PostEffectRenderFilter.d.ts.map +1 -1
  93. package/dist/classes/callbacks/PostEffectRenderFilter.js +10 -14
  94. package/dist/classes/callbacks/PostEffectRenderFilter.lua +1 -1
  95. package/dist/classes/callbacks/PostEffectStateChanged.d.ts +2 -2
  96. package/dist/classes/callbacks/PostEffectStateChanged.d.ts.map +1 -1
  97. package/dist/classes/callbacks/PostEffectStateChanged.js +15 -19
  98. package/dist/classes/callbacks/PostEffectStateChanged.lua +2 -2
  99. package/dist/classes/callbacks/PostEffectUpdateFilter.d.ts +2 -2
  100. package/dist/classes/callbacks/PostEffectUpdateFilter.d.ts.map +1 -1
  101. package/dist/classes/callbacks/PostEffectUpdateFilter.js +10 -14
  102. package/dist/classes/callbacks/PostEffectUpdateFilter.lua +1 -1
  103. package/dist/classes/callbacks/PostEntityKillFilter.d.ts +2 -2
  104. package/dist/classes/callbacks/PostEntityKillFilter.d.ts.map +1 -1
  105. package/dist/classes/callbacks/PostEntityKillFilter.js +10 -14
  106. package/dist/classes/callbacks/PostEntityKillFilter.lua +1 -1
  107. package/dist/classes/callbacks/PostEntityRemoveFilter.d.ts +2 -2
  108. package/dist/classes/callbacks/PostEntityRemoveFilter.d.ts.map +1 -1
  109. package/dist/classes/callbacks/PostEntityRemoveFilter.js +10 -14
  110. package/dist/classes/callbacks/PostEntityRemoveFilter.lua +1 -1
  111. package/dist/classes/callbacks/PostEsauJr.js +4 -8
  112. package/dist/classes/callbacks/PostFamiliarInitFilter.d.ts +2 -2
  113. package/dist/classes/callbacks/PostFamiliarInitFilter.d.ts.map +1 -1
  114. package/dist/classes/callbacks/PostFamiliarInitFilter.js +10 -14
  115. package/dist/classes/callbacks/PostFamiliarInitFilter.lua +1 -1
  116. package/dist/classes/callbacks/PostFamiliarInitLate.d.ts +2 -2
  117. package/dist/classes/callbacks/PostFamiliarInitLate.d.ts.map +1 -1
  118. package/dist/classes/callbacks/PostFamiliarInitLate.js +13 -17
  119. package/dist/classes/callbacks/PostFamiliarInitLate.lua +2 -2
  120. package/dist/classes/callbacks/PostFamiliarRenderFilter.d.ts +2 -2
  121. package/dist/classes/callbacks/PostFamiliarRenderFilter.d.ts.map +1 -1
  122. package/dist/classes/callbacks/PostFamiliarRenderFilter.js +10 -14
  123. package/dist/classes/callbacks/PostFamiliarRenderFilter.lua +1 -1
  124. package/dist/classes/callbacks/PostFamiliarStateChanged.d.ts +2 -2
  125. package/dist/classes/callbacks/PostFamiliarStateChanged.d.ts.map +1 -1
  126. package/dist/classes/callbacks/PostFamiliarStateChanged.js +15 -19
  127. package/dist/classes/callbacks/PostFamiliarStateChanged.lua +2 -2
  128. package/dist/classes/callbacks/PostFamiliarUpdateFilter.d.ts +2 -2
  129. package/dist/classes/callbacks/PostFamiliarUpdateFilter.d.ts.map +1 -1
  130. package/dist/classes/callbacks/PostFamiliarUpdateFilter.js +10 -14
  131. package/dist/classes/callbacks/PostFamiliarUpdateFilter.lua +1 -1
  132. package/dist/classes/callbacks/PostFirstEsauJr.js +4 -8
  133. package/dist/classes/callbacks/PostFirstFlip.js +4 -8
  134. package/dist/classes/callbacks/PostFlip.js +4 -8
  135. package/dist/classes/callbacks/PostGameEndFilter.d.ts +2 -2
  136. package/dist/classes/callbacks/PostGameEndFilter.d.ts.map +1 -1
  137. package/dist/classes/callbacks/PostGameEndFilter.js +10 -14
  138. package/dist/classes/callbacks/PostGameEndFilter.lua +1 -1
  139. package/dist/classes/callbacks/PostGameStartedReordered.d.ts +1 -1
  140. package/dist/classes/callbacks/PostGameStartedReordered.d.ts.map +1 -1
  141. package/dist/classes/callbacks/PostGameStartedReordered.js +6 -10
  142. package/dist/classes/callbacks/PostGameStartedReorderedLast.d.ts +1 -1
  143. package/dist/classes/callbacks/PostGameStartedReorderedLast.d.ts.map +1 -1
  144. package/dist/classes/callbacks/PostGameStartedReorderedLast.js +6 -10
  145. package/dist/classes/callbacks/PostGreedModeWave.d.ts +1 -1
  146. package/dist/classes/callbacks/PostGreedModeWave.d.ts.map +1 -1
  147. package/dist/classes/callbacks/PostGreedModeWave.js +14 -18
  148. package/dist/classes/callbacks/PostGreedModeWave.lua +1 -1
  149. package/dist/classes/callbacks/PostGridEntityBroken.d.ts +1 -1
  150. package/dist/classes/callbacks/PostGridEntityBroken.d.ts.map +1 -1
  151. package/dist/classes/callbacks/PostGridEntityBroken.js +6 -10
  152. package/dist/classes/callbacks/PostGridEntityCollision.d.ts +1 -1
  153. package/dist/classes/callbacks/PostGridEntityCollision.d.ts.map +1 -1
  154. package/dist/classes/callbacks/PostGridEntityCollision.js +7 -11
  155. package/dist/classes/callbacks/PostGridEntityCustomBroken.d.ts +1 -1
  156. package/dist/classes/callbacks/PostGridEntityCustomBroken.d.ts.map +1 -1
  157. package/dist/classes/callbacks/PostGridEntityCustomBroken.js +6 -10
  158. package/dist/classes/callbacks/PostGridEntityCustomCollision.d.ts +1 -1
  159. package/dist/classes/callbacks/PostGridEntityCustomCollision.d.ts.map +1 -1
  160. package/dist/classes/callbacks/PostGridEntityCustomCollision.js +7 -11
  161. package/dist/classes/callbacks/PostGridEntityCustomInit.d.ts +1 -1
  162. package/dist/classes/callbacks/PostGridEntityCustomInit.d.ts.map +1 -1
  163. package/dist/classes/callbacks/PostGridEntityCustomInit.js +6 -10
  164. package/dist/classes/callbacks/PostGridEntityCustomRemove.d.ts +1 -1
  165. package/dist/classes/callbacks/PostGridEntityCustomRemove.d.ts.map +1 -1
  166. package/dist/classes/callbacks/PostGridEntityCustomRemove.js +7 -11
  167. package/dist/classes/callbacks/PostGridEntityCustomRender.d.ts +1 -1
  168. package/dist/classes/callbacks/PostGridEntityCustomRender.d.ts.map +1 -1
  169. package/dist/classes/callbacks/PostGridEntityCustomRender.js +6 -10
  170. package/dist/classes/callbacks/PostGridEntityCustomStateChanged.d.ts +1 -1
  171. package/dist/classes/callbacks/PostGridEntityCustomStateChanged.d.ts.map +1 -1
  172. package/dist/classes/callbacks/PostGridEntityCustomStateChanged.js +6 -10
  173. package/dist/classes/callbacks/PostGridEntityCustomUpdate.d.ts +1 -1
  174. package/dist/classes/callbacks/PostGridEntityCustomUpdate.d.ts.map +1 -1
  175. package/dist/classes/callbacks/PostGridEntityCustomUpdate.js +6 -10
  176. package/dist/classes/callbacks/PostGridEntityInit.d.ts +1 -1
  177. package/dist/classes/callbacks/PostGridEntityInit.d.ts.map +1 -1
  178. package/dist/classes/callbacks/PostGridEntityInit.js +6 -10
  179. package/dist/classes/callbacks/PostGridEntityRemove.d.ts +1 -1
  180. package/dist/classes/callbacks/PostGridEntityRemove.d.ts.map +1 -1
  181. package/dist/classes/callbacks/PostGridEntityRemove.js +7 -11
  182. package/dist/classes/callbacks/PostGridEntityRender.d.ts +1 -1
  183. package/dist/classes/callbacks/PostGridEntityRender.d.ts.map +1 -1
  184. package/dist/classes/callbacks/PostGridEntityRender.js +6 -10
  185. package/dist/classes/callbacks/PostGridEntityStateChanged.d.ts +1 -1
  186. package/dist/classes/callbacks/PostGridEntityStateChanged.d.ts.map +1 -1
  187. package/dist/classes/callbacks/PostGridEntityStateChanged.js +6 -10
  188. package/dist/classes/callbacks/PostGridEntityUpdate.d.ts +1 -1
  189. package/dist/classes/callbacks/PostGridEntityUpdate.d.ts.map +1 -1
  190. package/dist/classes/callbacks/PostGridEntityUpdate.js +6 -10
  191. package/dist/classes/callbacks/PostHolyMantleRemoved.d.ts +2 -2
  192. package/dist/classes/callbacks/PostHolyMantleRemoved.d.ts.map +1 -1
  193. package/dist/classes/callbacks/PostHolyMantleRemoved.js +24 -28
  194. package/dist/classes/callbacks/PostHolyMantleRemoved.lua +2 -2
  195. package/dist/classes/callbacks/PostItemDischarge.d.ts +3 -3
  196. package/dist/classes/callbacks/PostItemDischarge.d.ts.map +1 -1
  197. package/dist/classes/callbacks/PostItemDischarge.js +60 -64
  198. package/dist/classes/callbacks/PostItemDischarge.lua +9 -9
  199. package/dist/classes/callbacks/PostItemPickup.d.ts +1 -1
  200. package/dist/classes/callbacks/PostItemPickup.d.ts.map +1 -1
  201. package/dist/classes/callbacks/PostItemPickup.js +6 -10
  202. package/dist/classes/callbacks/PostKeyboardChanged.d.ts +2 -2
  203. package/dist/classes/callbacks/PostKeyboardChanged.d.ts.map +1 -1
  204. package/dist/classes/callbacks/PostKeyboardChanged.js +25 -28
  205. package/dist/classes/callbacks/PostKeyboardChanged.lua +13 -9
  206. package/dist/classes/callbacks/PostKnifeInitFilter.d.ts +2 -2
  207. package/dist/classes/callbacks/PostKnifeInitFilter.d.ts.map +1 -1
  208. package/dist/classes/callbacks/PostKnifeInitFilter.js +10 -14
  209. package/dist/classes/callbacks/PostKnifeInitFilter.lua +1 -1
  210. package/dist/classes/callbacks/PostKnifeInitLate.d.ts +2 -2
  211. package/dist/classes/callbacks/PostKnifeInitLate.d.ts.map +1 -1
  212. package/dist/classes/callbacks/PostKnifeInitLate.js +13 -17
  213. package/dist/classes/callbacks/PostKnifeInitLate.lua +2 -2
  214. package/dist/classes/callbacks/PostKnifeRenderFilter.d.ts +2 -2
  215. package/dist/classes/callbacks/PostKnifeRenderFilter.d.ts.map +1 -1
  216. package/dist/classes/callbacks/PostKnifeRenderFilter.js +10 -14
  217. package/dist/classes/callbacks/PostKnifeRenderFilter.lua +1 -1
  218. package/dist/classes/callbacks/PostKnifeUpdateFilter.d.ts +2 -2
  219. package/dist/classes/callbacks/PostKnifeUpdateFilter.d.ts.map +1 -1
  220. package/dist/classes/callbacks/PostKnifeUpdateFilter.js +10 -14
  221. package/dist/classes/callbacks/PostKnifeUpdateFilter.lua +1 -1
  222. package/dist/classes/callbacks/PostLaserInitFilter.d.ts +2 -2
  223. package/dist/classes/callbacks/PostLaserInitFilter.d.ts.map +1 -1
  224. package/dist/classes/callbacks/PostLaserInitFilter.js +10 -14
  225. package/dist/classes/callbacks/PostLaserInitFilter.lua +1 -1
  226. package/dist/classes/callbacks/PostLaserInitLate.d.ts +2 -2
  227. package/dist/classes/callbacks/PostLaserInitLate.d.ts.map +1 -1
  228. package/dist/classes/callbacks/PostLaserInitLate.js +13 -17
  229. package/dist/classes/callbacks/PostLaserInitLate.lua +2 -2
  230. package/dist/classes/callbacks/PostLaserRenderFilter.d.ts +2 -2
  231. package/dist/classes/callbacks/PostLaserRenderFilter.d.ts.map +1 -1
  232. package/dist/classes/callbacks/PostLaserRenderFilter.js +10 -14
  233. package/dist/classes/callbacks/PostLaserRenderFilter.lua +1 -1
  234. package/dist/classes/callbacks/PostLaserUpdateFilter.d.ts +2 -2
  235. package/dist/classes/callbacks/PostLaserUpdateFilter.d.ts.map +1 -1
  236. package/dist/classes/callbacks/PostLaserUpdateFilter.js +10 -14
  237. package/dist/classes/callbacks/PostLaserUpdateFilter.lua +1 -1
  238. package/dist/classes/callbacks/PostNPCDeathFilter.d.ts +2 -2
  239. package/dist/classes/callbacks/PostNPCDeathFilter.d.ts.map +1 -1
  240. package/dist/classes/callbacks/PostNPCDeathFilter.js +10 -14
  241. package/dist/classes/callbacks/PostNPCDeathFilter.lua +1 -1
  242. package/dist/classes/callbacks/PostNPCInitFilter.d.ts +2 -2
  243. package/dist/classes/callbacks/PostNPCInitFilter.d.ts.map +1 -1
  244. package/dist/classes/callbacks/PostNPCInitFilter.js +10 -14
  245. package/dist/classes/callbacks/PostNPCInitFilter.lua +1 -1
  246. package/dist/classes/callbacks/PostNPCInitLate.d.ts +2 -2
  247. package/dist/classes/callbacks/PostNPCInitLate.d.ts.map +1 -1
  248. package/dist/classes/callbacks/PostNPCInitLate.js +13 -17
  249. package/dist/classes/callbacks/PostNPCInitLate.lua +2 -2
  250. package/dist/classes/callbacks/PostNPCRenderFilter.d.ts +2 -2
  251. package/dist/classes/callbacks/PostNPCRenderFilter.d.ts.map +1 -1
  252. package/dist/classes/callbacks/PostNPCRenderFilter.js +10 -14
  253. package/dist/classes/callbacks/PostNPCRenderFilter.lua +1 -1
  254. package/dist/classes/callbacks/PostNPCStateChanged.d.ts +2 -2
  255. package/dist/classes/callbacks/PostNPCStateChanged.d.ts.map +1 -1
  256. package/dist/classes/callbacks/PostNPCStateChanged.js +15 -19
  257. package/dist/classes/callbacks/PostNPCStateChanged.lua +2 -2
  258. package/dist/classes/callbacks/PostNPCUpdateFilter.d.ts +2 -2
  259. package/dist/classes/callbacks/PostNPCUpdateFilter.d.ts.map +1 -1
  260. package/dist/classes/callbacks/PostNPCUpdateFilter.js +10 -14
  261. package/dist/classes/callbacks/PostNPCUpdateFilter.lua +1 -1
  262. package/dist/classes/callbacks/PostNewLevelReordered.d.ts +1 -1
  263. package/dist/classes/callbacks/PostNewLevelReordered.d.ts.map +1 -1
  264. package/dist/classes/callbacks/PostNewLevelReordered.js +6 -10
  265. package/dist/classes/callbacks/PostNewRoomEarly.d.ts +2 -2
  266. package/dist/classes/callbacks/PostNewRoomEarly.d.ts.map +1 -1
  267. package/dist/classes/callbacks/PostNewRoomEarly.js +29 -32
  268. package/dist/classes/callbacks/PostNewRoomEarly.lua +6 -5
  269. package/dist/classes/callbacks/PostNewRoomReordered.d.ts +1 -1
  270. package/dist/classes/callbacks/PostNewRoomReordered.d.ts.map +1 -1
  271. package/dist/classes/callbacks/PostNewRoomReordered.js +6 -10
  272. package/dist/classes/callbacks/PostPEffectUpdateReordered.d.ts +1 -1
  273. package/dist/classes/callbacks/PostPEffectUpdateReordered.d.ts.map +1 -1
  274. package/dist/classes/callbacks/PostPEffectUpdateReordered.js +6 -10
  275. package/dist/classes/callbacks/PostPickupChanged.d.ts +1 -1
  276. package/dist/classes/callbacks/PostPickupChanged.d.ts.map +1 -1
  277. package/dist/classes/callbacks/PostPickupChanged.js +6 -10
  278. package/dist/classes/callbacks/PostPickupCollect.d.ts +2 -2
  279. package/dist/classes/callbacks/PostPickupCollect.d.ts.map +1 -1
  280. package/dist/classes/callbacks/PostPickupCollect.js +15 -19
  281. package/dist/classes/callbacks/PostPickupCollect.lua +2 -2
  282. package/dist/classes/callbacks/PostPickupInitFilter.d.ts +2 -2
  283. package/dist/classes/callbacks/PostPickupInitFilter.d.ts.map +1 -1
  284. package/dist/classes/callbacks/PostPickupInitFilter.js +10 -14
  285. package/dist/classes/callbacks/PostPickupInitFilter.lua +1 -1
  286. package/dist/classes/callbacks/PostPickupInitFirst.d.ts +2 -2
  287. package/dist/classes/callbacks/PostPickupInitFirst.d.ts.map +1 -1
  288. package/dist/classes/callbacks/PostPickupInitFirst.js +17 -21
  289. package/dist/classes/callbacks/PostPickupInitFirst.lua +3 -3
  290. package/dist/classes/callbacks/PostPickupInitLate.d.ts +2 -2
  291. package/dist/classes/callbacks/PostPickupInitLate.d.ts.map +1 -1
  292. package/dist/classes/callbacks/PostPickupInitLate.js +13 -17
  293. package/dist/classes/callbacks/PostPickupInitLate.lua +2 -2
  294. package/dist/classes/callbacks/PostPickupRenderFilter.d.ts +2 -2
  295. package/dist/classes/callbacks/PostPickupRenderFilter.d.ts.map +1 -1
  296. package/dist/classes/callbacks/PostPickupRenderFilter.js +10 -14
  297. package/dist/classes/callbacks/PostPickupRenderFilter.lua +1 -1
  298. package/dist/classes/callbacks/PostPickupSelectionFilter.d.ts +2 -2
  299. package/dist/classes/callbacks/PostPickupSelectionFilter.d.ts.map +1 -1
  300. package/dist/classes/callbacks/PostPickupSelectionFilter.js +12 -16
  301. package/dist/classes/callbacks/PostPickupSelectionFilter.lua +1 -1
  302. package/dist/classes/callbacks/PostPickupStateChanged.d.ts +2 -2
  303. package/dist/classes/callbacks/PostPickupStateChanged.d.ts.map +1 -1
  304. package/dist/classes/callbacks/PostPickupStateChanged.js +15 -19
  305. package/dist/classes/callbacks/PostPickupStateChanged.lua +2 -2
  306. package/dist/classes/callbacks/PostPickupUpdateFilter.d.ts +2 -2
  307. package/dist/classes/callbacks/PostPickupUpdateFilter.d.ts.map +1 -1
  308. package/dist/classes/callbacks/PostPickupUpdateFilter.js +10 -14
  309. package/dist/classes/callbacks/PostPickupUpdateFilter.lua +1 -1
  310. package/dist/classes/callbacks/PostPitRender.d.ts +2 -2
  311. package/dist/classes/callbacks/PostPitRender.d.ts.map +1 -1
  312. package/dist/classes/callbacks/PostPitRender.js +13 -17
  313. package/dist/classes/callbacks/PostPitRender.lua +1 -1
  314. package/dist/classes/callbacks/PostPitUpdate.d.ts +2 -2
  315. package/dist/classes/callbacks/PostPitUpdate.d.ts.map +1 -1
  316. package/dist/classes/callbacks/PostPitUpdate.js +13 -17
  317. package/dist/classes/callbacks/PostPitUpdate.lua +1 -1
  318. package/dist/classes/callbacks/PostPlayerChangeHealth.d.ts +2 -2
  319. package/dist/classes/callbacks/PostPlayerChangeHealth.d.ts.map +1 -1
  320. package/dist/classes/callbacks/PostPlayerChangeHealth.js +23 -27
  321. package/dist/classes/callbacks/PostPlayerChangeHealth.lua +2 -2
  322. package/dist/classes/callbacks/PostPlayerChangeStat.d.ts +2 -2
  323. package/dist/classes/callbacks/PostPlayerChangeStat.d.ts.map +1 -1
  324. package/dist/classes/callbacks/PostPlayerChangeStat.js +35 -39
  325. package/dist/classes/callbacks/PostPlayerChangeStat.lua +2 -2
  326. package/dist/classes/callbacks/PostPlayerChangeType.d.ts +2 -2
  327. package/dist/classes/callbacks/PostPlayerChangeType.d.ts.map +1 -1
  328. package/dist/classes/callbacks/PostPlayerChangeType.js +18 -22
  329. package/dist/classes/callbacks/PostPlayerChangeType.lua +2 -2
  330. package/dist/classes/callbacks/PostPlayerCollectibleAdded.d.ts +1 -1
  331. package/dist/classes/callbacks/PostPlayerCollectibleAdded.d.ts.map +1 -1
  332. package/dist/classes/callbacks/PostPlayerCollectibleAdded.js +6 -10
  333. package/dist/classes/callbacks/PostPlayerCollectibleRemoved.d.ts +1 -1
  334. package/dist/classes/callbacks/PostPlayerCollectibleRemoved.d.ts.map +1 -1
  335. package/dist/classes/callbacks/PostPlayerCollectibleRemoved.js +6 -10
  336. package/dist/classes/callbacks/PostPlayerFatalDamage.d.ts +7 -7
  337. package/dist/classes/callbacks/PostPlayerFatalDamage.d.ts.map +1 -1
  338. package/dist/classes/callbacks/PostPlayerFatalDamage.js +33 -37
  339. package/dist/classes/callbacks/PostPlayerFatalDamage.lua +2 -2
  340. package/dist/classes/callbacks/PostPlayerInitFirst.d.ts +2 -2
  341. package/dist/classes/callbacks/PostPlayerInitFirst.d.ts.map +1 -1
  342. package/dist/classes/callbacks/PostPlayerInitFirst.js +17 -21
  343. package/dist/classes/callbacks/PostPlayerInitFirst.lua +1 -1
  344. package/dist/classes/callbacks/PostPlayerInitLate.d.ts +2 -2
  345. package/dist/classes/callbacks/PostPlayerInitLate.d.ts.map +1 -1
  346. package/dist/classes/callbacks/PostPlayerInitLate.js +15 -18
  347. package/dist/classes/callbacks/PostPlayerInitLate.lua +6 -5
  348. package/dist/classes/callbacks/PostPlayerRenderReordered.d.ts +1 -1
  349. package/dist/classes/callbacks/PostPlayerRenderReordered.d.ts.map +1 -1
  350. package/dist/classes/callbacks/PostPlayerRenderReordered.js +6 -10
  351. package/dist/classes/callbacks/PostPlayerUpdateReordered.d.ts +1 -1
  352. package/dist/classes/callbacks/PostPlayerUpdateReordered.d.ts.map +1 -1
  353. package/dist/classes/callbacks/PostPlayerUpdateReordered.js +6 -10
  354. package/dist/classes/callbacks/PostPoopRender.d.ts +2 -2
  355. package/dist/classes/callbacks/PostPoopRender.d.ts.map +1 -1
  356. package/dist/classes/callbacks/PostPoopRender.js +13 -17
  357. package/dist/classes/callbacks/PostPoopRender.lua +1 -1
  358. package/dist/classes/callbacks/PostPoopUpdate.d.ts +2 -2
  359. package/dist/classes/callbacks/PostPoopUpdate.d.ts.map +1 -1
  360. package/dist/classes/callbacks/PostPoopUpdate.js +13 -17
  361. package/dist/classes/callbacks/PostPoopUpdate.lua +1 -1
  362. package/dist/classes/callbacks/PostPressurePlateRender.d.ts +2 -2
  363. package/dist/classes/callbacks/PostPressurePlateRender.d.ts.map +1 -1
  364. package/dist/classes/callbacks/PostPressurePlateRender.js +13 -17
  365. package/dist/classes/callbacks/PostPressurePlateRender.lua +1 -1
  366. package/dist/classes/callbacks/PostPressurePlateUpdate.d.ts +2 -2
  367. package/dist/classes/callbacks/PostPressurePlateUpdate.d.ts.map +1 -1
  368. package/dist/classes/callbacks/PostPressurePlateUpdate.js +13 -17
  369. package/dist/classes/callbacks/PostPressurePlateUpdate.lua +1 -1
  370. package/dist/classes/callbacks/PostProjectileInitFilter.d.ts +2 -2
  371. package/dist/classes/callbacks/PostProjectileInitFilter.d.ts.map +1 -1
  372. package/dist/classes/callbacks/PostProjectileInitFilter.js +10 -14
  373. package/dist/classes/callbacks/PostProjectileInitFilter.lua +1 -1
  374. package/dist/classes/callbacks/PostProjectileInitLate.d.ts +2 -2
  375. package/dist/classes/callbacks/PostProjectileInitLate.d.ts.map +1 -1
  376. package/dist/classes/callbacks/PostProjectileInitLate.js +13 -17
  377. package/dist/classes/callbacks/PostProjectileInitLate.lua +2 -2
  378. package/dist/classes/callbacks/PostProjectileKill.d.ts +4 -4
  379. package/dist/classes/callbacks/PostProjectileKill.d.ts.map +1 -1
  380. package/dist/classes/callbacks/PostProjectileKill.js +17 -21
  381. package/dist/classes/callbacks/PostProjectileKill.lua +2 -2
  382. package/dist/classes/callbacks/PostProjectileRenderFilter.d.ts +2 -2
  383. package/dist/classes/callbacks/PostProjectileRenderFilter.d.ts.map +1 -1
  384. package/dist/classes/callbacks/PostProjectileRenderFilter.js +10 -14
  385. package/dist/classes/callbacks/PostProjectileRenderFilter.lua +1 -1
  386. package/dist/classes/callbacks/PostProjectileUpdateFilter.d.ts +2 -2
  387. package/dist/classes/callbacks/PostProjectileUpdateFilter.d.ts.map +1 -1
  388. package/dist/classes/callbacks/PostProjectileUpdateFilter.js +10 -14
  389. package/dist/classes/callbacks/PostProjectileUpdateFilter.lua +1 -1
  390. package/dist/classes/callbacks/PostPurchase.d.ts +5 -5
  391. package/dist/classes/callbacks/PostPurchase.d.ts.map +1 -1
  392. package/dist/classes/callbacks/PostPurchase.js +43 -47
  393. package/dist/classes/callbacks/PostPurchase.lua +6 -6
  394. package/dist/classes/callbacks/PostRockRender.d.ts +2 -2
  395. package/dist/classes/callbacks/PostRockRender.d.ts.map +1 -1
  396. package/dist/classes/callbacks/PostRockRender.js +13 -17
  397. package/dist/classes/callbacks/PostRockRender.lua +1 -1
  398. package/dist/classes/callbacks/PostRockUpdate.d.ts +2 -2
  399. package/dist/classes/callbacks/PostRockUpdate.d.ts.map +1 -1
  400. package/dist/classes/callbacks/PostRockUpdate.js +13 -17
  401. package/dist/classes/callbacks/PostRockUpdate.lua +1 -1
  402. package/dist/classes/callbacks/PostRoomClearChanged.d.ts +3 -3
  403. package/dist/classes/callbacks/PostRoomClearChanged.d.ts.map +1 -1
  404. package/dist/classes/callbacks/PostRoomClearChanged.js +23 -27
  405. package/dist/classes/callbacks/PostRoomClearChanged.lua +6 -6
  406. package/dist/classes/callbacks/PostSacrifice.d.ts +2 -2
  407. package/dist/classes/callbacks/PostSacrifice.d.ts.map +1 -1
  408. package/dist/classes/callbacks/PostSacrifice.js +18 -22
  409. package/dist/classes/callbacks/PostSacrifice.lua +3 -3
  410. package/dist/classes/callbacks/PostSlotAnimationChanged.d.ts +1 -1
  411. package/dist/classes/callbacks/PostSlotAnimationChanged.d.ts.map +1 -1
  412. package/dist/classes/callbacks/PostSlotAnimationChanged.js +6 -10
  413. package/dist/classes/callbacks/PostSlotCollision.d.ts +2 -2
  414. package/dist/classes/callbacks/PostSlotCollision.d.ts.map +1 -1
  415. package/dist/classes/callbacks/PostSlotCollision.js +14 -18
  416. package/dist/classes/callbacks/PostSlotCollision.lua +1 -1
  417. package/dist/classes/callbacks/PostSlotDestroyed.d.ts +1 -1
  418. package/dist/classes/callbacks/PostSlotDestroyed.d.ts.map +1 -1
  419. package/dist/classes/callbacks/PostSlotDestroyed.js +6 -10
  420. package/dist/classes/callbacks/PostSlotInit.d.ts +1 -1
  421. package/dist/classes/callbacks/PostSlotInit.d.ts.map +1 -1
  422. package/dist/classes/callbacks/PostSlotInit.js +6 -10
  423. package/dist/classes/callbacks/PostSlotRender.d.ts +1 -1
  424. package/dist/classes/callbacks/PostSlotRender.d.ts.map +1 -1
  425. package/dist/classes/callbacks/PostSlotRender.js +6 -10
  426. package/dist/classes/callbacks/PostSlotUpdate.d.ts +1 -1
  427. package/dist/classes/callbacks/PostSlotUpdate.d.ts.map +1 -1
  428. package/dist/classes/callbacks/PostSlotUpdate.js +6 -10
  429. package/dist/classes/callbacks/PostSpikesRender.d.ts +2 -2
  430. package/dist/classes/callbacks/PostSpikesRender.d.ts.map +1 -1
  431. package/dist/classes/callbacks/PostSpikesRender.js +13 -17
  432. package/dist/classes/callbacks/PostSpikesRender.lua +1 -1
  433. package/dist/classes/callbacks/PostSpikesUpdate.d.ts +2 -2
  434. package/dist/classes/callbacks/PostSpikesUpdate.d.ts.map +1 -1
  435. package/dist/classes/callbacks/PostSpikesUpdate.js +13 -17
  436. package/dist/classes/callbacks/PostSpikesUpdate.lua +1 -1
  437. package/dist/classes/callbacks/PostTNTRender.d.ts +2 -2
  438. package/dist/classes/callbacks/PostTNTRender.d.ts.map +1 -1
  439. package/dist/classes/callbacks/PostTNTRender.js +13 -17
  440. package/dist/classes/callbacks/PostTNTRender.lua +1 -1
  441. package/dist/classes/callbacks/PostTNTUpdate.d.ts +2 -2
  442. package/dist/classes/callbacks/PostTNTUpdate.d.ts.map +1 -1
  443. package/dist/classes/callbacks/PostTNTUpdate.js +13 -17
  444. package/dist/classes/callbacks/PostTNTUpdate.lua +1 -1
  445. package/dist/classes/callbacks/PostTearInitFilter.d.ts +2 -2
  446. package/dist/classes/callbacks/PostTearInitFilter.d.ts.map +1 -1
  447. package/dist/classes/callbacks/PostTearInitFilter.js +10 -14
  448. package/dist/classes/callbacks/PostTearInitFilter.lua +1 -1
  449. package/dist/classes/callbacks/PostTearInitLate.d.ts +2 -2
  450. package/dist/classes/callbacks/PostTearInitLate.d.ts.map +1 -1
  451. package/dist/classes/callbacks/PostTearInitLate.js +13 -17
  452. package/dist/classes/callbacks/PostTearInitLate.lua +2 -2
  453. package/dist/classes/callbacks/PostTearInitVeryLate.d.ts +2 -2
  454. package/dist/classes/callbacks/PostTearInitVeryLate.d.ts.map +1 -1
  455. package/dist/classes/callbacks/PostTearInitVeryLate.js +13 -17
  456. package/dist/classes/callbacks/PostTearInitVeryLate.lua +2 -2
  457. package/dist/classes/callbacks/PostTearKill.d.ts +4 -4
  458. package/dist/classes/callbacks/PostTearKill.d.ts.map +1 -1
  459. package/dist/classes/callbacks/PostTearKill.js +17 -21
  460. package/dist/classes/callbacks/PostTearKill.lua +2 -2
  461. package/dist/classes/callbacks/PostTearRenderFilter.d.ts +2 -2
  462. package/dist/classes/callbacks/PostTearRenderFilter.d.ts.map +1 -1
  463. package/dist/classes/callbacks/PostTearRenderFilter.js +10 -14
  464. package/dist/classes/callbacks/PostTearRenderFilter.lua +1 -1
  465. package/dist/classes/callbacks/PostTearUpdateFilter.d.ts +2 -2
  466. package/dist/classes/callbacks/PostTearUpdateFilter.d.ts.map +1 -1
  467. package/dist/classes/callbacks/PostTearUpdateFilter.js +10 -14
  468. package/dist/classes/callbacks/PostTearUpdateFilter.lua +1 -1
  469. package/dist/classes/callbacks/PostTransformation.d.ts +2 -2
  470. package/dist/classes/callbacks/PostTransformation.d.ts.map +1 -1
  471. package/dist/classes/callbacks/PostTransformation.js +24 -28
  472. package/dist/classes/callbacks/PostTransformation.lua +6 -6
  473. package/dist/classes/callbacks/PostTrinketBreak.d.ts +3 -3
  474. package/dist/classes/callbacks/PostTrinketBreak.d.ts.map +1 -1
  475. package/dist/classes/callbacks/PostTrinketBreak.js +25 -29
  476. package/dist/classes/callbacks/PostTrinketBreak.lua +2 -2
  477. package/dist/classes/callbacks/PostUsePillFilter.d.ts +2 -2
  478. package/dist/classes/callbacks/PostUsePillFilter.d.ts.map +1 -1
  479. package/dist/classes/callbacks/PostUsePillFilter.js +27 -31
  480. package/dist/classes/callbacks/PostUsePillFilter.lua +1 -1
  481. package/dist/classes/callbacks/PreBerserkDeath.d.ts +2 -2
  482. package/dist/classes/callbacks/PreBerserkDeath.d.ts.map +1 -1
  483. package/dist/classes/callbacks/PreBerserkDeath.js +24 -28
  484. package/dist/classes/callbacks/PreBerserkDeath.lua +2 -2
  485. package/dist/classes/callbacks/PreBombCollisionFilter.d.ts +2 -2
  486. package/dist/classes/callbacks/PreBombCollisionFilter.d.ts.map +1 -1
  487. package/dist/classes/callbacks/PreBombCollisionFilter.js +8 -12
  488. package/dist/classes/callbacks/PreBombCollisionFilter.lua +1 -1
  489. package/dist/classes/callbacks/PreCustomRevive.d.ts +1 -1
  490. package/dist/classes/callbacks/PreCustomRevive.d.ts.map +1 -1
  491. package/dist/classes/callbacks/PreCustomRevive.js +6 -10
  492. package/dist/classes/callbacks/PreEntitySpawnFilter.d.ts +2 -2
  493. package/dist/classes/callbacks/PreEntitySpawnFilter.d.ts.map +1 -1
  494. package/dist/classes/callbacks/PreEntitySpawnFilter.js +12 -16
  495. package/dist/classes/callbacks/PreEntitySpawnFilter.lua +5 -5
  496. package/dist/classes/callbacks/PreFamiliarCollisionFilter.d.ts +2 -2
  497. package/dist/classes/callbacks/PreFamiliarCollisionFilter.d.ts.map +1 -1
  498. package/dist/classes/callbacks/PreFamiliarCollisionFilter.js +8 -12
  499. package/dist/classes/callbacks/PreFamiliarCollisionFilter.lua +1 -1
  500. package/dist/classes/callbacks/PreGetPedestal.d.ts +2 -2
  501. package/dist/classes/callbacks/PreGetPedestal.d.ts.map +1 -1
  502. package/dist/classes/callbacks/PreGetPedestal.js +17 -21
  503. package/dist/classes/callbacks/PreGetPedestal.lua +1 -1
  504. package/dist/classes/callbacks/PreItemPickup.d.ts +1 -1
  505. package/dist/classes/callbacks/PreItemPickup.d.ts.map +1 -1
  506. package/dist/classes/callbacks/PreItemPickup.js +6 -10
  507. package/dist/classes/callbacks/PreKnifeCollisionFilter.d.ts +2 -2
  508. package/dist/classes/callbacks/PreKnifeCollisionFilter.d.ts.map +1 -1
  509. package/dist/classes/callbacks/PreKnifeCollisionFilter.js +8 -12
  510. package/dist/classes/callbacks/PreKnifeCollisionFilter.lua +1 -1
  511. package/dist/classes/callbacks/PreNPCCollisionFilter.d.ts +2 -2
  512. package/dist/classes/callbacks/PreNPCCollisionFilter.d.ts.map +1 -1
  513. package/dist/classes/callbacks/PreNPCCollisionFilter.js +8 -12
  514. package/dist/classes/callbacks/PreNPCCollisionFilter.lua +1 -1
  515. package/dist/classes/callbacks/PreNPCUpdateFilter.d.ts +2 -2
  516. package/dist/classes/callbacks/PreNPCUpdateFilter.d.ts.map +1 -1
  517. package/dist/classes/callbacks/PreNPCUpdateFilter.js +8 -12
  518. package/dist/classes/callbacks/PreNPCUpdateFilter.lua +1 -1
  519. package/dist/classes/callbacks/PreNewLevel.d.ts +1 -1
  520. package/dist/classes/callbacks/PreNewLevel.d.ts.map +1 -1
  521. package/dist/classes/callbacks/PreNewLevel.js +19 -23
  522. package/dist/classes/callbacks/PreNewLevel.lua +1 -1
  523. package/dist/classes/callbacks/PreProjectileCollisionFilter.d.ts +2 -2
  524. package/dist/classes/callbacks/PreProjectileCollisionFilter.d.ts.map +1 -1
  525. package/dist/classes/callbacks/PreProjectileCollisionFilter.js +8 -12
  526. package/dist/classes/callbacks/PreProjectileCollisionFilter.lua +1 -1
  527. package/dist/classes/callbacks/PreRoomEntitySpawnFilter.d.ts +2 -2
  528. package/dist/classes/callbacks/PreRoomEntitySpawnFilter.d.ts.map +1 -1
  529. package/dist/classes/callbacks/PreRoomEntitySpawnFilter.js +12 -16
  530. package/dist/classes/callbacks/PreRoomEntitySpawnFilter.lua +5 -5
  531. package/dist/classes/callbacks/PreTearCollisionFilter.d.ts +2 -2
  532. package/dist/classes/callbacks/PreTearCollisionFilter.d.ts.map +1 -1
  533. package/dist/classes/callbacks/PreTearCollisionFilter.js +8 -12
  534. package/dist/classes/callbacks/PreTearCollisionFilter.lua +1 -1
  535. package/dist/classes/features/callbackLogic/CustomGridEntities.d.ts.map +1 -1
  536. package/dist/classes/features/callbackLogic/CustomGridEntities.js +65 -66
  537. package/dist/classes/features/callbackLogic/CustomGridEntities.lua +1 -1
  538. package/dist/classes/features/callbackLogic/CustomRevive.d.ts +9 -9
  539. package/dist/classes/features/callbackLogic/CustomRevive.d.ts.map +1 -1
  540. package/dist/classes/features/callbackLogic/CustomRevive.js +56 -60
  541. package/dist/classes/features/callbackLogic/CustomRevive.lua +1 -1
  542. package/dist/classes/features/callbackLogic/EsauJrDetection.d.ts +4 -4
  543. package/dist/classes/features/callbackLogic/EsauJrDetection.d.ts.map +1 -1
  544. package/dist/classes/features/callbackLogic/EsauJrDetection.js +24 -28
  545. package/dist/classes/features/callbackLogic/EsauJrDetection.lua +1 -1
  546. package/dist/classes/features/callbackLogic/FlipDetection.d.ts +3 -3
  547. package/dist/classes/features/callbackLogic/FlipDetection.d.ts.map +1 -1
  548. package/dist/classes/features/callbackLogic/FlipDetection.js +20 -24
  549. package/dist/classes/features/callbackLogic/FlipDetection.lua +1 -1
  550. package/dist/classes/features/callbackLogic/GameReorderedCallbacks.d.ts.map +1 -1
  551. package/dist/classes/features/callbackLogic/GameReorderedCallbacks.js +51 -55
  552. package/dist/classes/features/callbackLogic/GameReorderedCallbacks.lua +4 -4
  553. package/dist/classes/features/callbackLogic/GridEntityCollisionDetection.d.ts +4 -4
  554. package/dist/classes/features/callbackLogic/GridEntityCollisionDetection.d.ts.map +1 -1
  555. package/dist/classes/features/callbackLogic/GridEntityCollisionDetection.js +20 -24
  556. package/dist/classes/features/callbackLogic/GridEntityCollisionDetection.lua +1 -1
  557. package/dist/classes/features/callbackLogic/GridEntityRenderDetection.d.ts +1 -1
  558. package/dist/classes/features/callbackLogic/GridEntityRenderDetection.d.ts.map +1 -1
  559. package/dist/classes/features/callbackLogic/GridEntityRenderDetection.js +15 -19
  560. package/dist/classes/features/callbackLogic/GridEntityUpdateDetection.d.ts +8 -8
  561. package/dist/classes/features/callbackLogic/GridEntityUpdateDetection.d.ts.map +1 -1
  562. package/dist/classes/features/callbackLogic/GridEntityUpdateDetection.js +36 -40
  563. package/dist/classes/features/callbackLogic/GridEntityUpdateDetection.lua +1 -1
  564. package/dist/classes/features/callbackLogic/ItemPickupDetection.d.ts +3 -3
  565. package/dist/classes/features/callbackLogic/ItemPickupDetection.d.ts.map +1 -1
  566. package/dist/classes/features/callbackLogic/ItemPickupDetection.js +28 -32
  567. package/dist/classes/features/callbackLogic/ItemPickupDetection.lua +1 -1
  568. package/dist/classes/features/callbackLogic/PickupChangeDetection.d.ts +3 -3
  569. package/dist/classes/features/callbackLogic/PickupChangeDetection.d.ts.map +1 -1
  570. package/dist/classes/features/callbackLogic/PickupChangeDetection.js +15 -19
  571. package/dist/classes/features/callbackLogic/PickupChangeDetection.lua +1 -1
  572. package/dist/classes/features/callbackLogic/PlayerCollectibleDetection.d.ts +13 -13
  573. package/dist/classes/features/callbackLogic/PlayerCollectibleDetection.d.ts.map +1 -1
  574. package/dist/classes/features/callbackLogic/PlayerCollectibleDetection.js +96 -100
  575. package/dist/classes/features/callbackLogic/PlayerCollectibleDetection.lua +2 -2
  576. package/dist/classes/features/callbackLogic/PlayerReorderedCallbacks.d.ts +9 -9
  577. package/dist/classes/features/callbackLogic/PlayerReorderedCallbacks.d.ts.map +1 -1
  578. package/dist/classes/features/callbackLogic/PlayerReorderedCallbacks.js +42 -43
  579. package/dist/classes/features/callbackLogic/PlayerReorderedCallbacks.lua +1 -1
  580. package/dist/classes/features/callbackLogic/SlotDestroyedDetection.d.ts +4 -4
  581. package/dist/classes/features/callbackLogic/SlotDestroyedDetection.d.ts.map +1 -1
  582. package/dist/classes/features/callbackLogic/SlotDestroyedDetection.js +43 -46
  583. package/dist/classes/features/callbackLogic/SlotDestroyedDetection.lua +7 -6
  584. package/dist/classes/features/callbackLogic/SlotRenderDetection.d.ts +3 -3
  585. package/dist/classes/features/callbackLogic/SlotRenderDetection.d.ts.map +1 -1
  586. package/dist/classes/features/callbackLogic/SlotRenderDetection.js +15 -19
  587. package/dist/classes/features/callbackLogic/SlotRenderDetection.lua +1 -1
  588. package/dist/classes/features/callbackLogic/SlotUpdateDetection.d.ts +4 -4
  589. package/dist/classes/features/callbackLogic/SlotUpdateDetection.d.ts.map +1 -1
  590. package/dist/classes/features/callbackLogic/SlotUpdateDetection.js +21 -25
  591. package/dist/classes/features/callbackLogic/SlotUpdateDetection.lua +1 -1
  592. package/dist/classes/features/other/CharacterHealthConversion.d.ts.map +1 -1
  593. package/dist/classes/features/other/CharacterHealthConversion.js +30 -34
  594. package/dist/classes/features/other/CharacterHealthConversion.lua +2 -2
  595. package/dist/classes/features/other/CharacterStats.d.ts.map +1 -1
  596. package/dist/classes/features/other/CharacterStats.js +16 -20
  597. package/dist/classes/features/other/CollectibleItemPoolType.d.ts.map +1 -1
  598. package/dist/classes/features/other/CollectibleItemPoolType.js +27 -31
  599. package/dist/classes/features/other/CollectibleItemPoolType.lua +1 -1
  600. package/dist/classes/features/other/CustomHotkeys.d.ts.map +1 -1
  601. package/dist/classes/features/other/CustomHotkeys.js +22 -26
  602. package/dist/classes/features/other/CustomItemPools.d.ts.map +1 -1
  603. package/dist/classes/features/other/CustomItemPools.js +24 -28
  604. package/dist/classes/features/other/CustomItemPools.lua +1 -1
  605. package/dist/classes/features/other/CustomPickups.d.ts.map +1 -1
  606. package/dist/classes/features/other/CustomPickups.js +27 -31
  607. package/dist/classes/features/other/CustomStages.d.ts +3 -3
  608. package/dist/classes/features/other/CustomStages.d.ts.map +1 -1
  609. package/dist/classes/features/other/CustomStages.js +175 -207
  610. package/dist/classes/features/other/CustomStages.lua +1 -1
  611. package/dist/classes/features/other/CustomTrapdoors.d.ts +2 -2
  612. package/dist/classes/features/other/CustomTrapdoors.d.ts.map +1 -1
  613. package/dist/classes/features/other/CustomTrapdoors.js +152 -155
  614. package/dist/classes/features/other/CustomTrapdoors.lua +10 -9
  615. package/dist/classes/features/other/DebugDisplay.d.ts +1 -1
  616. package/dist/classes/features/other/DebugDisplay.d.ts.map +1 -1
  617. package/dist/classes/features/other/DebugDisplay.js +89 -96
  618. package/dist/classes/features/other/DebugDisplay.lua +13 -12
  619. package/dist/classes/features/other/DeployJSONRoom.d.ts.map +1 -1
  620. package/dist/classes/features/other/DeployJSONRoom.js +70 -70
  621. package/dist/classes/features/other/DisableAllSound.d.ts.map +1 -1
  622. package/dist/classes/features/other/DisableAllSound.js +21 -25
  623. package/dist/classes/features/other/DisableAllSound.lua +1 -1
  624. package/dist/classes/features/other/DisableInputs.d.ts.map +1 -1
  625. package/dist/classes/features/other/DisableInputs.js +30 -34
  626. package/dist/classes/features/other/DisableInputs.lua +1 -1
  627. package/dist/classes/features/other/EdenStartingStatsHealth.d.ts +2 -2
  628. package/dist/classes/features/other/EdenStartingStatsHealth.d.ts.map +1 -1
  629. package/dist/classes/features/other/EdenStartingStatsHealth.js +57 -61
  630. package/dist/classes/features/other/EdenStartingStatsHealth.lua +1 -1
  631. package/dist/classes/features/other/ExtraConsoleCommands.d.ts.map +1 -1
  632. package/dist/classes/features/other/ExtraConsoleCommands.js +107 -143
  633. package/dist/classes/features/other/ExtraConsoleCommands.lua +5 -4
  634. package/dist/classes/features/other/FadeInRemover.d.ts.map +1 -1
  635. package/dist/classes/features/other/FadeInRemover.js +14 -18
  636. package/dist/classes/features/other/FastReset.d.ts.map +1 -1
  637. package/dist/classes/features/other/FastReset.js +25 -29
  638. package/dist/classes/features/other/FlyingDetection.js +10 -14
  639. package/dist/classes/features/other/ForgottenSwitch.d.ts.map +1 -1
  640. package/dist/classes/features/other/ForgottenSwitch.js +9 -13
  641. package/dist/classes/features/other/ItemPoolDetection.js +45 -45
  642. package/dist/classes/features/other/ItemPoolDetection.lua +5 -1
  643. package/dist/classes/features/other/ModdedElementDetection.d.ts.map +1 -1
  644. package/dist/classes/features/other/ModdedElementDetection.js +47 -51
  645. package/dist/classes/features/other/ModdedElementSets.js +135 -139
  646. package/dist/classes/features/other/NoSirenSteal.d.ts.map +1 -1
  647. package/dist/classes/features/other/NoSirenSteal.js +12 -16
  648. package/dist/classes/features/other/NoSirenSteal.lua +1 -1
  649. package/dist/classes/features/other/Pause.d.ts +1 -1
  650. package/dist/classes/features/other/Pause.d.ts.map +1 -1
  651. package/dist/classes/features/other/Pause.js +71 -75
  652. package/dist/classes/features/other/Pause.lua +1 -1
  653. package/dist/classes/features/other/PersistentEntities.d.ts +5 -5
  654. package/dist/classes/features/other/PersistentEntities.d.ts.map +1 -1
  655. package/dist/classes/features/other/PersistentEntities.js +46 -47
  656. package/dist/classes/features/other/PersistentEntities.lua +6 -6
  657. package/dist/classes/features/other/PickupIndexCreation.d.ts +1 -1
  658. package/dist/classes/features/other/PickupIndexCreation.d.ts.map +1 -1
  659. package/dist/classes/features/other/PickupIndexCreation.js +42 -46
  660. package/dist/classes/features/other/PickupIndexCreation.lua +1 -1
  661. package/dist/classes/features/other/PlayerCollectibleTracking.d.ts.map +1 -1
  662. package/dist/classes/features/other/PlayerCollectibleTracking.js +25 -29
  663. package/dist/classes/features/other/PlayerCollectibleTracking.lua +1 -1
  664. package/dist/classes/features/other/PonyDetection.d.ts.map +1 -1
  665. package/dist/classes/features/other/PonyDetection.js +32 -36
  666. package/dist/classes/features/other/PonyDetection.lua +1 -1
  667. package/dist/classes/features/other/PressInput.d.ts.map +1 -1
  668. package/dist/classes/features/other/PressInput.js +26 -27
  669. package/dist/classes/features/other/PressInput.lua +1 -1
  670. package/dist/classes/features/other/PreventChildEntities.d.ts.map +1 -1
  671. package/dist/classes/features/other/PreventChildEntities.js +15 -19
  672. package/dist/classes/features/other/PreventChildEntities.lua +1 -1
  673. package/dist/classes/features/other/PreventGridEntityRespawn.d.ts.map +1 -1
  674. package/dist/classes/features/other/PreventGridEntityRespawn.js +49 -53
  675. package/dist/classes/features/other/PreventGridEntityRespawn.lua +1 -1
  676. package/dist/classes/features/other/RerunDetection.d.ts.map +1 -1
  677. package/dist/classes/features/other/RerunDetection.js +22 -26
  678. package/dist/classes/features/other/RerunDetection.lua +1 -1
  679. package/dist/classes/features/other/RoomClearFrame.d.ts.map +1 -1
  680. package/dist/classes/features/other/RoomClearFrame.js +20 -24
  681. package/dist/classes/features/other/RoomClearFrame.lua +1 -1
  682. package/dist/classes/features/other/RoomHistory.d.ts.map +1 -1
  683. package/dist/classes/features/other/RoomHistory.js +38 -42
  684. package/dist/classes/features/other/RoomHistory.lua +1 -1
  685. package/dist/classes/features/other/RunInNFrames.d.ts +1 -1
  686. package/dist/classes/features/other/RunInNFrames.d.ts.map +1 -1
  687. package/dist/classes/features/other/RunInNFrames.js +41 -46
  688. package/dist/classes/features/other/RunInNFrames.lua +10 -7
  689. package/dist/classes/features/other/RunNextRoom.d.ts +1 -1
  690. package/dist/classes/features/other/RunNextRoom.d.ts.map +1 -1
  691. package/dist/classes/features/other/RunNextRoom.js +14 -18
  692. package/dist/classes/features/other/RunNextRoom.lua +2 -2
  693. package/dist/classes/features/other/RunNextRun.d.ts +1 -1
  694. package/dist/classes/features/other/RunNextRun.d.ts.map +1 -1
  695. package/dist/classes/features/other/RunNextRun.js +15 -19
  696. package/dist/classes/features/other/RunNextRun.lua +2 -2
  697. package/dist/classes/features/other/SaveDataManager.d.ts +4 -4
  698. package/dist/classes/features/other/SaveDataManager.d.ts.map +1 -1
  699. package/dist/classes/features/other/SaveDataManager.js +93 -96
  700. package/dist/classes/features/other/SaveDataManager.lua +11 -11
  701. package/dist/classes/features/other/SpawnRockAltRewards.js +115 -119
  702. package/dist/classes/features/other/StageHistory.d.ts.map +1 -1
  703. package/dist/classes/features/other/StageHistory.js +85 -86
  704. package/dist/classes/features/other/StageHistory.lua +6 -6
  705. package/dist/classes/features/other/StartAmbush.js +12 -16
  706. package/dist/classes/features/other/TaintedLazarusPlayers.d.ts +1 -1
  707. package/dist/classes/features/other/TaintedLazarusPlayers.d.ts.map +1 -1
  708. package/dist/classes/features/other/TaintedLazarusPlayers.js +22 -24
  709. package/dist/classes/features/other/TaintedLazarusPlayers.lua +2 -2
  710. package/dist/classes/features/other/UnlockAchievementsDetection.d.ts.map +1 -1
  711. package/dist/classes/features/other/UnlockAchievementsDetection.js +15 -19
  712. package/dist/classes/features/other/UnlockAchievementsDetection.lua +1 -1
  713. package/dist/classes/features/other/customStages/backdrop.d.ts.map +1 -1
  714. package/dist/classes/features/other/customStages/backdrop.js +69 -72
  715. package/dist/classes/features/other/customStages/backdrop.lua +2 -2
  716. package/dist/classes/features/other/customStages/constants.js +7 -10
  717. package/dist/classes/features/other/customStages/gridEntities.d.ts.map +1 -1
  718. package/dist/classes/features/other/customStages/gridEntities.js +24 -30
  719. package/dist/classes/features/other/customStages/shadows.js +27 -30
  720. package/dist/classes/features/other/customStages/streakText.js +55 -60
  721. package/dist/classes/features/other/customStages/utils.js +13 -17
  722. package/dist/classes/features/other/customStages/v.js +4 -7
  723. package/dist/classes/features/other/customStages/versusScreen.d.ts.map +1 -1
  724. package/dist/classes/features/other/customStages/versusScreen.js +59 -54
  725. package/dist/classes/features/other/customStages/versusScreen.lua +2 -2
  726. package/dist/classes/features/other/debugDisplay/DebugDisplayBomb.d.ts +1 -1
  727. package/dist/classes/features/other/debugDisplay/DebugDisplayBomb.d.ts.map +1 -1
  728. package/dist/classes/features/other/debugDisplay/DebugDisplayBomb.js +12 -16
  729. package/dist/classes/features/other/debugDisplay/DebugDisplayBomb.lua +1 -1
  730. package/dist/classes/features/other/debugDisplay/DebugDisplayDoor.d.ts +1 -1
  731. package/dist/classes/features/other/debugDisplay/DebugDisplayDoor.d.ts.map +1 -1
  732. package/dist/classes/features/other/debugDisplay/DebugDisplayDoor.js +12 -16
  733. package/dist/classes/features/other/debugDisplay/DebugDisplayDoor.lua +1 -1
  734. package/dist/classes/features/other/debugDisplay/DebugDisplayEffect.d.ts +1 -1
  735. package/dist/classes/features/other/debugDisplay/DebugDisplayEffect.d.ts.map +1 -1
  736. package/dist/classes/features/other/debugDisplay/DebugDisplayEffect.js +12 -16
  737. package/dist/classes/features/other/debugDisplay/DebugDisplayEffect.lua +1 -1
  738. package/dist/classes/features/other/debugDisplay/DebugDisplayFamiliar.d.ts +1 -1
  739. package/dist/classes/features/other/debugDisplay/DebugDisplayFamiliar.d.ts.map +1 -1
  740. package/dist/classes/features/other/debugDisplay/DebugDisplayFamiliar.js +12 -16
  741. package/dist/classes/features/other/debugDisplay/DebugDisplayFamiliar.lua +1 -1
  742. package/dist/classes/features/other/debugDisplay/DebugDisplayKnife.d.ts +1 -1
  743. package/dist/classes/features/other/debugDisplay/DebugDisplayKnife.d.ts.map +1 -1
  744. package/dist/classes/features/other/debugDisplay/DebugDisplayKnife.js +12 -16
  745. package/dist/classes/features/other/debugDisplay/DebugDisplayKnife.lua +1 -1
  746. package/dist/classes/features/other/debugDisplay/DebugDisplayLaser.d.ts +1 -1
  747. package/dist/classes/features/other/debugDisplay/DebugDisplayLaser.d.ts.map +1 -1
  748. package/dist/classes/features/other/debugDisplay/DebugDisplayLaser.js +12 -16
  749. package/dist/classes/features/other/debugDisplay/DebugDisplayLaser.lua +1 -1
  750. package/dist/classes/features/other/debugDisplay/DebugDisplayNPC.d.ts +1 -1
  751. package/dist/classes/features/other/debugDisplay/DebugDisplayNPC.d.ts.map +1 -1
  752. package/dist/classes/features/other/debugDisplay/DebugDisplayNPC.js +12 -16
  753. package/dist/classes/features/other/debugDisplay/DebugDisplayNPC.lua +1 -1
  754. package/dist/classes/features/other/debugDisplay/DebugDisplayPickup.d.ts +1 -1
  755. package/dist/classes/features/other/debugDisplay/DebugDisplayPickup.d.ts.map +1 -1
  756. package/dist/classes/features/other/debugDisplay/DebugDisplayPickup.js +12 -16
  757. package/dist/classes/features/other/debugDisplay/DebugDisplayPickup.lua +1 -1
  758. package/dist/classes/features/other/debugDisplay/DebugDisplayPit.d.ts +1 -1
  759. package/dist/classes/features/other/debugDisplay/DebugDisplayPit.d.ts.map +1 -1
  760. package/dist/classes/features/other/debugDisplay/DebugDisplayPit.js +12 -16
  761. package/dist/classes/features/other/debugDisplay/DebugDisplayPit.lua +1 -1
  762. package/dist/classes/features/other/debugDisplay/DebugDisplayPlayer.d.ts +1 -1
  763. package/dist/classes/features/other/debugDisplay/DebugDisplayPlayer.d.ts.map +1 -1
  764. package/dist/classes/features/other/debugDisplay/DebugDisplayPlayer.js +12 -16
  765. package/dist/classes/features/other/debugDisplay/DebugDisplayPlayer.lua +1 -1
  766. package/dist/classes/features/other/debugDisplay/DebugDisplayPoop.d.ts +1 -1
  767. package/dist/classes/features/other/debugDisplay/DebugDisplayPoop.d.ts.map +1 -1
  768. package/dist/classes/features/other/debugDisplay/DebugDisplayPoop.js +12 -16
  769. package/dist/classes/features/other/debugDisplay/DebugDisplayPoop.lua +1 -1
  770. package/dist/classes/features/other/debugDisplay/DebugDisplayPressurePlate.d.ts +1 -1
  771. package/dist/classes/features/other/debugDisplay/DebugDisplayPressurePlate.d.ts.map +1 -1
  772. package/dist/classes/features/other/debugDisplay/DebugDisplayPressurePlate.js +12 -16
  773. package/dist/classes/features/other/debugDisplay/DebugDisplayPressurePlate.lua +1 -1
  774. package/dist/classes/features/other/debugDisplay/DebugDisplayProjectile.d.ts +1 -1
  775. package/dist/classes/features/other/debugDisplay/DebugDisplayProjectile.d.ts.map +1 -1
  776. package/dist/classes/features/other/debugDisplay/DebugDisplayProjectile.js +12 -16
  777. package/dist/classes/features/other/debugDisplay/DebugDisplayProjectile.lua +1 -1
  778. package/dist/classes/features/other/debugDisplay/DebugDisplayRock.d.ts +1 -1
  779. package/dist/classes/features/other/debugDisplay/DebugDisplayRock.d.ts.map +1 -1
  780. package/dist/classes/features/other/debugDisplay/DebugDisplayRock.js +12 -16
  781. package/dist/classes/features/other/debugDisplay/DebugDisplayRock.lua +1 -1
  782. package/dist/classes/features/other/debugDisplay/DebugDisplaySlot.d.ts +1 -1
  783. package/dist/classes/features/other/debugDisplay/DebugDisplaySlot.d.ts.map +1 -1
  784. package/dist/classes/features/other/debugDisplay/DebugDisplaySlot.js +12 -16
  785. package/dist/classes/features/other/debugDisplay/DebugDisplaySlot.lua +1 -1
  786. package/dist/classes/features/other/debugDisplay/DebugDisplaySpikes.d.ts +1 -1
  787. package/dist/classes/features/other/debugDisplay/DebugDisplaySpikes.d.ts.map +1 -1
  788. package/dist/classes/features/other/debugDisplay/DebugDisplaySpikes.js +12 -16
  789. package/dist/classes/features/other/debugDisplay/DebugDisplaySpikes.lua +1 -1
  790. package/dist/classes/features/other/debugDisplay/DebugDisplayTNT.d.ts +1 -1
  791. package/dist/classes/features/other/debugDisplay/DebugDisplayTNT.d.ts.map +1 -1
  792. package/dist/classes/features/other/debugDisplay/DebugDisplayTNT.js +12 -16
  793. package/dist/classes/features/other/debugDisplay/DebugDisplayTNT.lua +1 -1
  794. package/dist/classes/features/other/debugDisplay/DebugDisplayTear.d.ts +1 -1
  795. package/dist/classes/features/other/debugDisplay/DebugDisplayTear.d.ts.map +1 -1
  796. package/dist/classes/features/other/debugDisplay/DebugDisplayTear.js +12 -16
  797. package/dist/classes/features/other/debugDisplay/DebugDisplayTear.lua +1 -1
  798. package/dist/classes/features/other/debugDisplay/utils.js +6 -10
  799. package/dist/classes/features/other/extraConsoleCommands/commands.d.ts +14 -14
  800. package/dist/classes/features/other/extraConsoleCommands/commands.d.ts.map +1 -1
  801. package/dist/classes/features/other/extraConsoleCommands/commands.js +433 -580
  802. package/dist/classes/features/other/extraConsoleCommands/commands.lua +33 -30
  803. package/dist/classes/features/other/extraConsoleCommands/subroutines.js +47 -57
  804. package/dist/classes/features/other/extraConsoleCommands/v.js +1 -4
  805. package/dist/classes/features/other/saveDataManager/constants.js +1 -4
  806. package/dist/classes/features/other/saveDataManager/glowingHourGlass.js +17 -21
  807. package/dist/classes/features/other/saveDataManager/loadFromDisk.js +19 -22
  808. package/dist/classes/features/other/saveDataManager/restoreDefaults.js +20 -25
  809. package/dist/classes/features/other/saveDataManager/saveToDisk.js +13 -16
  810. package/dist/classes/private/CustomCallback.d.ts +6 -6
  811. package/dist/classes/private/CustomCallback.d.ts.map +1 -1
  812. package/dist/classes/private/CustomCallback.js +25 -29
  813. package/dist/classes/private/Feature.js +1 -5
  814. package/dist/core/cachedClasses.d.ts.map +1 -1
  815. package/dist/core/cachedClasses.js +13 -15
  816. package/dist/core/constants.d.ts +1 -1
  817. package/dist/core/constants.d.ts.map +1 -1
  818. package/dist/core/constants.js +127 -131
  819. package/dist/core/constants.lua +1 -1
  820. package/dist/core/constantsFirstLast.js +22 -25
  821. package/dist/core/constantsVanilla.js +25 -28
  822. package/dist/core/upgradeMod.js +7 -10
  823. package/dist/decorators.d.ts.map +1 -1
  824. package/dist/decorators.js +6 -10
  825. package/dist/enums/AmbushType.js +2 -5
  826. package/dist/enums/CornerType.js +2 -5
  827. package/dist/enums/HealthType.js +2 -5
  828. package/dist/enums/ISCFeature.js +2 -5
  829. package/dist/enums/LadderSubTypeCustom.js +2 -5
  830. package/dist/enums/ModCallbackCustom.js +2 -5
  831. package/dist/enums/MysteriousPaperEffect.js +2 -5
  832. package/dist/enums/PlayerStat.js +2 -5
  833. package/dist/enums/PocketItemType.js +2 -5
  834. package/dist/enums/RockAltType.js +2 -5
  835. package/dist/enums/SaveDataKey.js +2 -5
  836. package/dist/enums/SerializationType.js +2 -5
  837. package/dist/enums/SlotDestructionType.js +2 -5
  838. package/dist/enums/private/GridEntityTypeCustom.js +1 -4
  839. package/dist/enums/private/SerializationBrand.js +2 -5
  840. package/dist/enums/private/StageTravelState.js +2 -5
  841. package/dist/enums/private/TrapdoorAnimation.js +2 -5
  842. package/dist/enums/private/UIStreakAnimation.js +2 -5
  843. package/dist/features.d.ts +57 -57
  844. package/dist/features.d.ts.map +1 -1
  845. package/dist/features.js +139 -141
  846. package/dist/functions/ambush.js +9 -12
  847. package/dist/functions/array.d.ts +13 -13
  848. package/dist/functions/array.d.ts.map +1 -1
  849. package/dist/functions/array.js +90 -119
  850. package/dist/functions/array.lua +58 -53
  851. package/dist/functions/arrayLua.js +8 -17
  852. package/dist/functions/benchmark.js +4 -7
  853. package/dist/functions/bitSet128.d.ts +1 -1
  854. package/dist/functions/bitSet128.d.ts.map +1 -1
  855. package/dist/functions/bitSet128.js +19 -26
  856. package/dist/functions/bitwise.d.ts.map +1 -1
  857. package/dist/functions/bitwise.js +15 -23
  858. package/dist/functions/bitwise.lua +2 -2
  859. package/dist/functions/bombs.js +1 -4
  860. package/dist/functions/bosses.d.ts +12 -12
  861. package/dist/functions/bosses.d.ts.map +1 -1
  862. package/dist/functions/bosses.js +102 -119
  863. package/dist/functions/bosses.lua +58 -57
  864. package/dist/functions/cards.js +44 -62
  865. package/dist/functions/challenges.d.ts.map +1 -1
  866. package/dist/functions/challenges.js +35 -44
  867. package/dist/functions/challenges.lua +10 -8
  868. package/dist/functions/characters.js +68 -87
  869. package/dist/functions/characters.lua +1 -1
  870. package/dist/functions/charge.d.ts +11 -11
  871. package/dist/functions/charge.d.ts.map +1 -1
  872. package/dist/functions/charge.js +69 -80
  873. package/dist/functions/charge.lua +9 -9
  874. package/dist/functions/chargeBar.js +2 -6
  875. package/dist/functions/collectibleTag.js +9 -13
  876. package/dist/functions/collectibles.d.ts +5 -5
  877. package/dist/functions/collectibles.d.ts.map +1 -1
  878. package/dist/functions/collectibles.js +143 -182
  879. package/dist/functions/collectibles.lua +1 -1
  880. package/dist/functions/color.d.ts +1 -1
  881. package/dist/functions/color.d.ts.map +1 -1
  882. package/dist/functions/color.js +29 -38
  883. package/dist/functions/console.js +4 -8
  884. package/dist/functions/curses.js +6 -10
  885. package/dist/functions/debugFunctions.js +7 -14
  886. package/dist/functions/decorators.d.ts.map +1 -1
  887. package/dist/functions/decorators.js +36 -20
  888. package/dist/functions/deepCopy.js +173 -175
  889. package/dist/functions/deepCopy.lua +170 -173
  890. package/dist/functions/deepCopyTests.js +232 -241
  891. package/dist/functions/deepCopyTests.lua +217 -217
  892. package/dist/functions/dimensions.js +10 -14
  893. package/dist/functions/direction.js +22 -30
  894. package/dist/functions/doors.d.ts +12 -12
  895. package/dist/functions/doors.d.ts.map +1 -1
  896. package/dist/functions/doors.js +135 -184
  897. package/dist/functions/doors.lua +30 -26
  898. package/dist/functions/easing.d.ts +58 -58
  899. package/dist/functions/easing.d.ts.map +1 -1
  900. package/dist/functions/easing.js +139 -172
  901. package/dist/functions/easing.lua +93 -93
  902. package/dist/functions/effects.js +6 -10
  903. package/dist/functions/emptyRoom.d.ts.map +1 -1
  904. package/dist/functions/emptyRoom.js +45 -49
  905. package/dist/functions/emptyRoom.lua +23 -23
  906. package/dist/functions/entities.d.ts.map +1 -1
  907. package/dist/functions/entities.js +102 -128
  908. package/dist/functions/entities.lua +30 -30
  909. package/dist/functions/entitiesSpecific.js +83 -125
  910. package/dist/functions/entityTypes.js +3 -6
  911. package/dist/functions/enums.js +27 -41
  912. package/dist/functions/external.js +4 -8
  913. package/dist/functions/familiars.js +17 -25
  914. package/dist/functions/flag.js +11 -20
  915. package/dist/functions/flag.lua +1 -1
  916. package/dist/functions/frames.js +31 -51
  917. package/dist/functions/globals.d.ts.map +1 -1
  918. package/dist/functions/globals.js +33 -72
  919. package/dist/functions/globals.lua +5 -1
  920. package/dist/functions/gridEntities.d.ts +10 -10
  921. package/dist/functions/gridEntities.d.ts.map +1 -1
  922. package/dist/functions/gridEntities.js +395 -430
  923. package/dist/functions/gridEntities.lua +225 -225
  924. package/dist/functions/gridEntitiesSpecific.d.ts +18 -18
  925. package/dist/functions/gridEntitiesSpecific.d.ts.map +1 -1
  926. package/dist/functions/gridEntitiesSpecific.js +114 -154
  927. package/dist/functions/gridEntitiesSpecific.lua +41 -41
  928. package/dist/functions/gridIndex.js +8 -11
  929. package/dist/functions/hash.js +1 -4
  930. package/dist/functions/hash.lua +1 -1
  931. package/dist/functions/hex.js +32 -16
  932. package/dist/functions/input.js +65 -88
  933. package/dist/functions/isaacAPIClass.d.ts +7 -7
  934. package/dist/functions/isaacAPIClass.d.ts.map +1 -1
  935. package/dist/functions/isaacAPIClass.js +38 -63
  936. package/dist/functions/isaacAPIClass.lua +13 -13
  937. package/dist/functions/itemPool.js +39 -48
  938. package/dist/functions/jsonHelpers.d.ts.map +1 -1
  939. package/dist/functions/jsonHelpers.js +11 -48
  940. package/dist/functions/jsonHelpers.lua +3 -2
  941. package/dist/functions/jsonRoom.js +46 -53
  942. package/dist/functions/jsonRoom.lua +17 -17
  943. package/dist/functions/kColor.d.ts +1 -1
  944. package/dist/functions/kColor.d.ts.map +1 -1
  945. package/dist/functions/kColor.js +30 -39
  946. package/dist/functions/language.js +3 -6
  947. package/dist/functions/level.js +20 -26
  948. package/dist/functions/levelGrid.d.ts.map +1 -1
  949. package/dist/functions/levelGrid.js +82 -112
  950. package/dist/functions/levelGrid.lua +1 -3
  951. package/dist/functions/log.js +6 -12
  952. package/dist/functions/logEntities.d.ts.map +1 -1
  953. package/dist/functions/logEntities.js +107 -117
  954. package/dist/functions/logEntities.lua +41 -41
  955. package/dist/functions/logMisc.d.ts.map +1 -1
  956. package/dist/functions/logMisc.js +191 -220
  957. package/dist/functions/logMisc.lua +13 -5
  958. package/dist/functions/map.d.ts +1 -1
  959. package/dist/functions/map.d.ts.map +1 -1
  960. package/dist/functions/map.js +11 -26
  961. package/dist/functions/map.lua +1 -7
  962. package/dist/functions/math.d.ts +1 -1
  963. package/dist/functions/math.js +17 -32
  964. package/dist/functions/math.lua +1 -1
  965. package/dist/functions/merge.js +72 -75
  966. package/dist/functions/merge.lua +38 -38
  967. package/dist/functions/mergeTests.js +127 -172
  968. package/dist/functions/mergeTests.lua +99 -99
  969. package/dist/functions/minimap.js +34 -46
  970. package/dist/functions/modFeatures.js +1 -4
  971. package/dist/functions/newArray.js +5 -8
  972. package/dist/functions/nextStage.d.ts.map +1 -1
  973. package/dist/functions/nextStage.js +64 -68
  974. package/dist/functions/nextStage.lua +3 -3
  975. package/dist/functions/npcDataStructures.js +9 -20
  976. package/dist/functions/npcs.js +37 -45
  977. package/dist/functions/pickupVariants.js +27 -40
  978. package/dist/functions/pickups.js +43 -59
  979. package/dist/functions/pickupsSpecific.js +76 -118
  980. package/dist/functions/pills.js +52 -72
  981. package/dist/functions/playerCenter.js +13 -16
  982. package/dist/functions/playerCollectibles.js +59 -79
  983. package/dist/functions/playerDataStructures.js +18 -29
  984. package/dist/functions/playerEffects.js +12 -19
  985. package/dist/functions/playerHealth.d.ts.map +1 -1
  986. package/dist/functions/playerHealth.js +110 -131
  987. package/dist/functions/playerHealth.lua +26 -26
  988. package/dist/functions/playerIndex.d.ts.map +1 -1
  989. package/dist/functions/playerIndex.js +29 -40
  990. package/dist/functions/playerIndex.lua +7 -7
  991. package/dist/functions/playerTrinkets.d.ts +5 -5
  992. package/dist/functions/playerTrinkets.d.ts.map +1 -1
  993. package/dist/functions/playerTrinkets.js +39 -51
  994. package/dist/functions/playerTrinkets.lua +13 -13
  995. package/dist/functions/players.d.ts.map +1 -1
  996. package/dist/functions/players.js +93 -131
  997. package/dist/functions/players.lua +5 -1
  998. package/dist/functions/pocketItems.js +33 -43
  999. package/dist/functions/positionVelocity.js +23 -32
  1000. package/dist/functions/pressurePlate.js +7 -10
  1001. package/dist/functions/projectiles.js +11 -15
  1002. package/dist/functions/random.js +8 -13
  1003. package/dist/functions/readOnly.js +3 -8
  1004. package/dist/functions/render.js +7 -12
  1005. package/dist/functions/revive.d.ts.map +1 -1
  1006. package/dist/functions/revive.js +41 -51
  1007. package/dist/functions/revive.lua +3 -6
  1008. package/dist/functions/rng.d.ts +1 -1
  1009. package/dist/functions/rng.d.ts.map +1 -1
  1010. package/dist/functions/rng.js +37 -49
  1011. package/dist/functions/rng.lua +8 -4
  1012. package/dist/functions/rockAlt.js +18 -22
  1013. package/dist/functions/roomData.d.ts.map +1 -1
  1014. package/dist/functions/roomData.js +26 -41
  1015. package/dist/functions/roomData.lua +5 -1
  1016. package/dist/functions/roomGrid.d.ts.map +1 -1
  1017. package/dist/functions/roomGrid.js +25 -33
  1018. package/dist/functions/roomGrid.lua +6 -6
  1019. package/dist/functions/roomShape.js +39 -55
  1020. package/dist/functions/roomShapeWalls.d.ts.map +1 -1
  1021. package/dist/functions/roomShapeWalls.js +80 -84
  1022. package/dist/functions/roomTransition.js +13 -17
  1023. package/dist/functions/rooms.d.ts +6 -6
  1024. package/dist/functions/rooms.d.ts.map +1 -1
  1025. package/dist/functions/rooms.js +187 -250
  1026. package/dist/functions/rooms.lua +6 -6
  1027. package/dist/functions/run.js +29 -39
  1028. package/dist/functions/seeds.js +6 -10
  1029. package/dist/functions/serialization.d.ts.map +1 -1
  1030. package/dist/functions/serialization.js +38 -45
  1031. package/dist/functions/serialization.lua +1 -1
  1032. package/dist/functions/set.d.ts +1 -1
  1033. package/dist/functions/set.d.ts.map +1 -1
  1034. package/dist/functions/set.js +25 -46
  1035. package/dist/functions/set.lua +1 -5
  1036. package/dist/functions/slots.js +18 -22
  1037. package/dist/functions/sort.js +9 -15
  1038. package/dist/functions/sound.js +12 -16
  1039. package/dist/functions/spawnCollectible.js +22 -27
  1040. package/dist/functions/spawnCollectible.lua +1 -1
  1041. package/dist/functions/sprites.js +16 -24
  1042. package/dist/functions/stage.js +122 -164
  1043. package/dist/functions/stats.js +37 -43
  1044. package/dist/functions/storyBosses.js +36 -40
  1045. package/dist/functions/string.d.ts.map +1 -1
  1046. package/dist/functions/string.js +24 -34
  1047. package/dist/functions/table.js +21 -31
  1048. package/dist/functions/tears.js +6 -14
  1049. package/dist/functions/transformations.js +35 -42
  1050. package/dist/functions/trinketGive.js +29 -36
  1051. package/dist/functions/trinkets.d.ts.map +1 -1
  1052. package/dist/functions/trinkets.js +45 -60
  1053. package/dist/functions/tstlClass.js +11 -20
  1054. package/dist/functions/types.d.ts.map +1 -1
  1055. package/dist/functions/types.js +24 -46
  1056. package/dist/functions/ui.d.ts +11 -11
  1057. package/dist/functions/ui.d.ts.map +1 -1
  1058. package/dist/functions/ui.js +50 -65
  1059. package/dist/functions/ui.lua +23 -23
  1060. package/dist/functions/utils.d.ts +11 -11
  1061. package/dist/functions/utils.d.ts.map +1 -1
  1062. package/dist/functions/utils.js +36 -48
  1063. package/dist/functions/utils.lua +11 -11
  1064. package/dist/functions/vector.d.ts +1 -1
  1065. package/dist/functions/vector.d.ts.map +1 -1
  1066. package/dist/functions/vector.js +34 -47
  1067. package/dist/functions/versusScreen.js +12 -18
  1068. package/dist/functions/weighted.js +8 -12
  1069. package/dist/index.js +150 -166
  1070. package/dist/index.rollup.d.ts +538 -527
  1071. package/dist/indexLua.js +151 -167
  1072. package/dist/interfaces/ChargeBarSprites.d.ts +5 -5
  1073. package/dist/interfaces/ChargeBarSprites.d.ts.map +1 -1
  1074. package/dist/interfaces/ChargeBarSprites.js +1 -2
  1075. package/dist/interfaces/Corner.js +1 -2
  1076. package/dist/interfaces/CustomStageTSConfig.d.ts +63 -63
  1077. package/dist/interfaces/CustomStageTSConfig.d.ts.map +1 -1
  1078. package/dist/interfaces/CustomStageTSConfig.js +1 -2
  1079. package/dist/interfaces/GridEntityCustomData.d.ts +6 -6
  1080. package/dist/interfaces/GridEntityCustomData.d.ts.map +1 -1
  1081. package/dist/interfaces/GridEntityCustomData.js +1 -2
  1082. package/dist/interfaces/JSONRoomsFile.d.ts +27 -27
  1083. package/dist/interfaces/JSONRoomsFile.d.ts.map +1 -1
  1084. package/dist/interfaces/JSONRoomsFile.js +1 -2
  1085. package/dist/interfaces/PlayerHealth.d.ts +11 -11
  1086. package/dist/interfaces/PlayerHealth.d.ts.map +1 -1
  1087. package/dist/interfaces/PlayerHealth.js +1 -2
  1088. package/dist/interfaces/PlayerStats.d.ts +13 -13
  1089. package/dist/interfaces/PlayerStats.d.ts.map +1 -1
  1090. package/dist/interfaces/PlayerStats.js +2 -4
  1091. package/dist/interfaces/PocketItemDescription.d.ts +3 -3
  1092. package/dist/interfaces/PocketItemDescription.d.ts.map +1 -1
  1093. package/dist/interfaces/PocketItemDescription.js +1 -2
  1094. package/dist/interfaces/RoomDescription.d.ts +12 -12
  1095. package/dist/interfaces/RoomDescription.d.ts.map +1 -1
  1096. package/dist/interfaces/RoomDescription.js +1 -2
  1097. package/dist/interfaces/SaveData.d.ts.map +1 -1
  1098. package/dist/interfaces/SaveData.js +1 -2
  1099. package/dist/interfaces/StageHistoryEntry.js +1 -2
  1100. package/dist/interfaces/TSTLClassMetatable.d.ts +5 -5
  1101. package/dist/interfaces/TSTLClassMetatable.d.ts.map +1 -1
  1102. package/dist/interfaces/TSTLClassMetatable.js +1 -2
  1103. package/dist/interfaces/TrinketSituation.d.ts +4 -4
  1104. package/dist/interfaces/TrinketSituation.d.ts.map +1 -1
  1105. package/dist/interfaces/TrinketSituation.js +1 -2
  1106. package/dist/interfaces/private/AddCallbackParametersCustom.d.ts +153 -145
  1107. package/dist/interfaces/private/AddCallbackParametersCustom.d.ts.map +1 -1
  1108. package/dist/interfaces/private/AddCallbackParametersCustom.js +2 -4
  1109. package/dist/interfaces/private/CustomStage.d.ts +1 -1
  1110. package/dist/interfaces/private/CustomStage.d.ts.map +1 -1
  1111. package/dist/interfaces/private/CustomStage.js +1 -2
  1112. package/dist/interfaces/private/CustomTrapdoorDescription.d.ts +4 -4
  1113. package/dist/interfaces/private/CustomTrapdoorDescription.d.ts.map +1 -1
  1114. package/dist/interfaces/private/CustomTrapdoorDescription.js +1 -2
  1115. package/dist/interfaces/private/ModUpgradedInterface.d.ts +2 -2
  1116. package/dist/interfaces/private/ModUpgradedInterface.d.ts.map +1 -1
  1117. package/dist/interfaces/private/ModUpgradedInterface.js +1 -2
  1118. package/dist/isaacscript-common.lua +1947 -1838
  1119. package/dist/lib/jsonLua.js +11 -11
  1120. package/dist/lualib_bundle.lua +117 -46
  1121. package/dist/maps/PHDPillConversionsMap.js +19 -22
  1122. package/dist/maps/cardNameToTypeMap.js +205 -208
  1123. package/dist/maps/characterNameToTypeMap.js +85 -88
  1124. package/dist/maps/collectibleNameToTypeMap.js +5 -8
  1125. package/dist/maps/defaultPlayerStatMap.js +10 -13
  1126. package/dist/maps/entityTypeVariantToBossIDMap.js +3 -6
  1127. package/dist/maps/falsePHDPillConversionsMap.js +33 -36
  1128. package/dist/maps/gridEntityTypeToBrokenStateMap.js +15 -18
  1129. package/dist/maps/gridEntityXMLMap.js +52 -55
  1130. package/dist/maps/itemPoolTypeToItemPoolName.js +33 -36
  1131. package/dist/maps/keyboardToStringMap.js +66 -69
  1132. package/dist/maps/pillNameToEffectMap.js +83 -86
  1133. package/dist/maps/roomNameToTypeMap.js +38 -41
  1134. package/dist/maps/roomShapeToTopLeftWallGridIndexMap.js +9 -12
  1135. package/dist/maps/transformationNameToPlayerFormMap.js +30 -33
  1136. package/dist/maps/trinketNameToTypeMap.js +5 -8
  1137. package/dist/objects/LRoomShapeToRectangles.js +22 -25
  1138. package/dist/objects/backdropTypeToRockAltType.js +65 -68
  1139. package/dist/objects/batteryNames.js +8 -11
  1140. package/dist/objects/bombNames.js +11 -14
  1141. package/dist/objects/bossIDToEntityTypeVariant.js +116 -119
  1142. package/dist/objects/bossNamePNGFileNames.js +104 -107
  1143. package/dist/objects/bossNames.js +105 -108
  1144. package/dist/objects/bossPortraitPNGFileNames.js +104 -107
  1145. package/dist/objects/cardDescriptions.js +101 -104
  1146. package/dist/objects/cardNames.js +101 -104
  1147. package/dist/objects/challengeBosses.js +49 -52
  1148. package/dist/objects/challengeCharacters.js +49 -52
  1149. package/dist/objects/challengeCollectibleTypes.js +160 -163
  1150. package/dist/objects/challengeNames.js +49 -52
  1151. package/dist/objects/challengeTrinketType.js +48 -51
  1152. package/dist/objects/characterDamageMultipliers.js +44 -47
  1153. package/dist/objects/characterNames.js +44 -47
  1154. package/dist/objects/characterSpritePNGFileNames.js +44 -47
  1155. package/dist/objects/characterStartingCollectibleTypes.js +49 -52
  1156. package/dist/objects/characterStartingTrinketTypes.js +44 -47
  1157. package/dist/objects/chestNames.js +15 -18
  1158. package/dist/objects/coinNames.js +11 -14
  1159. package/dist/objects/coinSubTypeToValue.js +11 -14
  1160. package/dist/objects/collectibleDescriptions.js +725 -728
  1161. package/dist/objects/collectibleNames.js +725 -728
  1162. package/dist/objects/colors.js +1 -4
  1163. package/dist/objects/directionNames.js +7 -10
  1164. package/dist/objects/directionToDegrees.js +7 -10
  1165. package/dist/objects/directionToMoveAction.js +7 -10
  1166. package/dist/objects/directionToShootAction.js +7 -10
  1167. package/dist/objects/directionToVector.js +9 -12
  1168. package/dist/objects/doorSlotFlagToDoorSlot.js +11 -14
  1169. package/dist/objects/doorSlotToDirection.js +11 -14
  1170. package/dist/objects/doorSlotToDoorSlotFlag.js +11 -14
  1171. package/dist/objects/gridEntityTypeToANM2Name.js +30 -33
  1172. package/dist/objects/heartNames.js +16 -19
  1173. package/dist/objects/isaacAPIClassTypeToBrand.js +8 -11
  1174. package/dist/objects/isaacAPIClassTypeToFunctions.d.ts +15 -15
  1175. package/dist/objects/isaacAPIClassTypeToFunctions.d.ts.map +1 -1
  1176. package/dist/objects/isaacAPIClassTypeToFunctions.js +37 -40
  1177. package/dist/objects/itemPoolTypeToCollectibleTypesSet.js +9 -45
  1178. package/dist/objects/kColors.js +1 -4
  1179. package/dist/objects/keyNames.js +8 -11
  1180. package/dist/objects/languageNames.js +9 -12
  1181. package/dist/objects/oppositeDoorSlots.js +11 -14
  1182. package/dist/objects/pillEffectClasses.js +53 -56
  1183. package/dist/objects/pillEffectNames.js +53 -56
  1184. package/dist/objects/pillEffectTypeToPillEffects.js +11 -14
  1185. package/dist/objects/pillEffectTypes.js +53 -56
  1186. package/dist/objects/playerNamePNGFileNames.js +44 -47
  1187. package/dist/objects/playerPortraitPNGFileNames.js +44 -47
  1188. package/dist/objects/roomShapeBounds.js +23 -26
  1189. package/dist/objects/roomShapeCorners.js +128 -131
  1190. package/dist/objects/roomShapeLayoutSizes.js +23 -26
  1191. package/dist/objects/roomShapeToBottomRightPosition.js +17 -20
  1192. package/dist/objects/roomShapeToDoorSlotCoordinates.js +78 -81
  1193. package/dist/objects/roomShapeToDoorSlots.js +48 -51
  1194. package/dist/objects/roomShapeToDoorSlotsToGridIndexDelta.js +82 -85
  1195. package/dist/objects/roomShapeToGridWidth.js +14 -17
  1196. package/dist/objects/roomShapeToTopLeftPosition.js +18 -21
  1197. package/dist/objects/roomShapeVolumes.js +21 -24
  1198. package/dist/objects/roomTypeNames.js +32 -35
  1199. package/dist/objects/roomTypeSpecialGotoPrefixes.js +32 -35
  1200. package/dist/objects/sackNames.js +6 -9
  1201. package/dist/objects/slotNames.js +21 -24
  1202. package/dist/objects/stageIDNames.js +33 -36
  1203. package/dist/objects/stageToMusic.js +69 -72
  1204. package/dist/objects/stageToStageID.js +90 -93
  1205. package/dist/objects/stageTypeSuffixes.js +8 -11
  1206. package/dist/objects/transformationNames.js +16 -19
  1207. package/dist/objects/trinketDescriptions.js +192 -195
  1208. package/dist/objects/trinketNames.js +192 -195
  1209. package/dist/objects/versusScreenBackgroundColors.js +39 -42
  1210. package/dist/objects/versusScreenDirtSpotColors.js +39 -42
  1211. package/dist/patchErrorFunctions.d.ts.map +1 -1
  1212. package/dist/patchErrorFunctions.js +7 -7
  1213. package/dist/serialization.js +6 -9
  1214. package/dist/sets/LRoomShapesSet.js +7 -10
  1215. package/dist/sets/bigRoomShapesSet.js +10 -13
  1216. package/dist/sets/bossSets.js +261 -264
  1217. package/dist/sets/charactersThatStartWithAnActiveItemSet.js +14 -17
  1218. package/dist/sets/charactersWithBlackHeartFromEternalHeartSet.js +5 -8
  1219. package/dist/sets/charactersWithFreeDevilDealsSet.js +3 -6
  1220. package/dist/sets/charactersWithNoRedHeartsSet.js +11 -14
  1221. package/dist/sets/charactersWithNoSoulHeartsSet.js +8 -11
  1222. package/dist/sets/consoleCommandsSet.js +2 -5
  1223. package/dist/sets/entitiesWithArmorSet.d.ts.map +1 -1
  1224. package/dist/sets/entitiesWithArmorSet.js +44 -47
  1225. package/dist/sets/entitiesWithArmorSet.lua +2 -1
  1226. package/dist/sets/familiarsThatShootPlayerTearsSet.js +11 -14
  1227. package/dist/sets/itemConfigCardTypesForCards.js +7 -10
  1228. package/dist/sets/lostStyleCharactersSet.js +8 -11
  1229. package/dist/sets/mineShaftRoomSubTypesSet.js +8 -11
  1230. package/dist/sets/narrowRoomShapesSet.js +7 -10
  1231. package/dist/sets/poopGridEntityXMLTypesSet.js +12 -15
  1232. package/dist/sets/redHeartSubTypesSet.js +6 -9
  1233. package/dist/sets/repentanceBossIDsSet.js +26 -29
  1234. package/dist/sets/sinEntityTypesSet.js +10 -13
  1235. package/dist/sets/singleUseActiveCollectibleTypesSet.js +11 -14
  1236. package/dist/shaderCrashFix.js +4 -7
  1237. package/dist/shouldFire.d.ts +1 -1
  1238. package/dist/shouldFire.d.ts.map +1 -1
  1239. package/dist/shouldFire.js +34 -71
  1240. package/dist/shouldFire.lua +5 -5
  1241. package/dist/tsdoc-metadata.json +1 -1
  1242. package/dist/types/AddSubtract.js +1 -2
  1243. package/dist/types/AllButFirst.d.ts +1 -1
  1244. package/dist/types/AllButFirst.d.ts.map +1 -1
  1245. package/dist/types/AllButFirst.js +1 -2
  1246. package/dist/types/AllButLast.d.ts +4 -1
  1247. package/dist/types/AllButLast.d.ts.map +1 -1
  1248. package/dist/types/AllButLast.js +1 -2
  1249. package/dist/types/AnyClass.js +1 -2
  1250. package/dist/types/AnyEntity.js +1 -2
  1251. package/dist/types/AnyFunction.js +1 -2
  1252. package/dist/types/AnyGridEntity.js +1 -2
  1253. package/dist/types/CompositionTypeSatisfiesEnum.js +1 -2
  1254. package/dist/types/ConversionHeartSubType.js +1 -2
  1255. package/dist/types/Decrement.js +1 -2
  1256. package/dist/types/ERange.js +1 -2
  1257. package/dist/types/EntityID.js +1 -2
  1258. package/dist/types/FunctionTuple.js +1 -2
  1259. package/dist/types/GridEntityID.js +1 -2
  1260. package/dist/types/HasFunction.js +1 -2
  1261. package/dist/types/IRange.js +1 -2
  1262. package/dist/types/Immutable.d.ts.map +1 -1
  1263. package/dist/types/Immutable.js +1 -2
  1264. package/dist/types/Increment.js +1 -2
  1265. package/dist/types/LowercaseKeys.js +1 -2
  1266. package/dist/types/NaturalNumbersLessThan.js +1 -2
  1267. package/dist/types/NaturalNumbersLessThanOrEqualTo.js +1 -2
  1268. package/dist/types/ObjectValues.js +1 -2
  1269. package/dist/types/PickingUpItem.d.ts.map +1 -1
  1270. package/dist/types/PickingUpItem.js +16 -27
  1271. package/dist/types/PickupIndex.js +1 -2
  1272. package/dist/types/PlayerIndex.js +1 -2
  1273. package/dist/types/PossibleStatType.d.ts.map +1 -1
  1274. package/dist/types/PossibleStatType.js +1 -2
  1275. package/dist/types/PublicInterface.js +1 -2
  1276. package/dist/types/ReadonlyMap.js +1 -4
  1277. package/dist/types/ReadonlyRecord.js +1 -2
  1278. package/dist/types/ReadonlySet.js +1 -4
  1279. package/dist/types/StartsWithLowercase.js +1 -2
  1280. package/dist/types/StartsWithUppercase.js +1 -2
  1281. package/dist/types/TSTLClass.js +1 -2
  1282. package/dist/types/Tuple.js +1 -2
  1283. package/dist/types/TupleKeys.js +1 -2
  1284. package/dist/types/TupleToIntersection.js +1 -2
  1285. package/dist/types/TupleToUnion.js +1 -2
  1286. package/dist/types/TupleWithLengthBetween.js +1 -2
  1287. package/dist/types/TupleWithMaxLength.js +1 -2
  1288. package/dist/types/UnionToIntersection.js +1 -2
  1289. package/dist/types/UppercaseKeys.js +1 -2
  1290. package/dist/types/WeightedArray.js +1 -2
  1291. package/dist/types/WidenLiteral.js +1 -2
  1292. package/dist/types/Writable.js +1 -2
  1293. package/dist/types/private/CallbackTuple.js +1 -2
  1294. package/dist/types/private/ModUpgradedWithFeatures.js +1 -2
  1295. package/package.json +6 -7
  1296. package/src/classes/DefaultMap.ts +1 -2
  1297. package/src/classes/ModFeature.ts +2 -4
  1298. package/src/classes/ModUpgraded.ts +149 -150
  1299. package/src/classes/callbacks/EntityTakeDmgFilter.ts +11 -11
  1300. package/src/classes/callbacks/EntityTakeDmgPlayer.ts +15 -15
  1301. package/src/classes/callbacks/InputActionFilter.ts +14 -14
  1302. package/src/classes/callbacks/InputActionPlayer.ts +23 -23
  1303. package/src/classes/callbacks/PostAmbushFinished.ts +13 -13
  1304. package/src/classes/callbacks/PostAmbushStarted.ts +13 -13
  1305. package/src/classes/callbacks/PostBombExploded.ts +9 -9
  1306. package/src/classes/callbacks/PostBombInitFilter.ts +7 -7
  1307. package/src/classes/callbacks/PostBombInitLate.ts +11 -11
  1308. package/src/classes/callbacks/PostBombRenderFilter.ts +10 -10
  1309. package/src/classes/callbacks/PostBombUpdateFilter.ts +7 -7
  1310. package/src/classes/callbacks/PostBoneSwing.ts +9 -9
  1311. package/src/classes/callbacks/PostCollectibleEmpty.ts +27 -27
  1312. package/src/classes/callbacks/PostCursedTeleport.ts +47 -49
  1313. package/src/classes/callbacks/PostCustomRevive.ts +6 -6
  1314. package/src/classes/callbacks/PostDiceRoomActivated.ts +31 -29
  1315. package/src/classes/callbacks/PostDoorRender.ts +9 -9
  1316. package/src/classes/callbacks/PostDoorUpdate.ts +9 -9
  1317. package/src/classes/callbacks/PostEffectInitFilter.ts +7 -7
  1318. package/src/classes/callbacks/PostEffectInitLate.ts +11 -11
  1319. package/src/classes/callbacks/PostEffectRenderFilter.ts +10 -10
  1320. package/src/classes/callbacks/PostEffectStateChanged.ts +13 -13
  1321. package/src/classes/callbacks/PostEffectUpdateFilter.ts +7 -7
  1322. package/src/classes/callbacks/PostEntityKillFilter.ts +7 -7
  1323. package/src/classes/callbacks/PostEntityRemoveFilter.ts +7 -7
  1324. package/src/classes/callbacks/PostFamiliarInitFilter.ts +7 -7
  1325. package/src/classes/callbacks/PostFamiliarInitLate.ts +11 -11
  1326. package/src/classes/callbacks/PostFamiliarRenderFilter.ts +10 -10
  1327. package/src/classes/callbacks/PostFamiliarStateChanged.ts +13 -13
  1328. package/src/classes/callbacks/PostFamiliarUpdateFilter.ts +7 -7
  1329. package/src/classes/callbacks/PostGameEndFilter.ts +7 -7
  1330. package/src/classes/callbacks/PostGameStartedReordered.ts +1 -2
  1331. package/src/classes/callbacks/PostGameStartedReorderedLast.ts +1 -2
  1332. package/src/classes/callbacks/PostGreedModeWave.ts +11 -11
  1333. package/src/classes/callbacks/PostGridEntityBroken.ts +1 -2
  1334. package/src/classes/callbacks/PostGridEntityCollision.ts +6 -6
  1335. package/src/classes/callbacks/PostGridEntityCustomBroken.ts +1 -2
  1336. package/src/classes/callbacks/PostGridEntityCustomCollision.ts +6 -6
  1337. package/src/classes/callbacks/PostGridEntityCustomInit.ts +1 -2
  1338. package/src/classes/callbacks/PostGridEntityCustomRemove.ts +6 -6
  1339. package/src/classes/callbacks/PostGridEntityCustomRender.ts +1 -2
  1340. package/src/classes/callbacks/PostGridEntityCustomStateChanged.ts +1 -2
  1341. package/src/classes/callbacks/PostGridEntityCustomUpdate.ts +1 -2
  1342. package/src/classes/callbacks/PostGridEntityInit.ts +1 -2
  1343. package/src/classes/callbacks/PostGridEntityRemove.ts +6 -6
  1344. package/src/classes/callbacks/PostGridEntityRender.ts +1 -2
  1345. package/src/classes/callbacks/PostGridEntityStateChanged.ts +1 -2
  1346. package/src/classes/callbacks/PostGridEntityUpdate.ts +1 -2
  1347. package/src/classes/callbacks/PostHolyMantleRemoved.ts +15 -15
  1348. package/src/classes/callbacks/PostItemDischarge.ts +63 -63
  1349. package/src/classes/callbacks/PostItemPickup.ts +1 -2
  1350. package/src/classes/callbacks/PostKeyboardChanged.ts +28 -26
  1351. package/src/classes/callbacks/PostKnifeInitFilter.ts +7 -7
  1352. package/src/classes/callbacks/PostKnifeInitLate.ts +11 -11
  1353. package/src/classes/callbacks/PostKnifeRenderFilter.ts +10 -10
  1354. package/src/classes/callbacks/PostKnifeUpdateFilter.ts +7 -7
  1355. package/src/classes/callbacks/PostLaserInitFilter.ts +7 -7
  1356. package/src/classes/callbacks/PostLaserInitLate.ts +11 -11
  1357. package/src/classes/callbacks/PostLaserRenderFilter.ts +10 -10
  1358. package/src/classes/callbacks/PostLaserUpdateFilter.ts +7 -7
  1359. package/src/classes/callbacks/PostNPCDeathFilter.ts +7 -7
  1360. package/src/classes/callbacks/PostNPCInitFilter.ts +7 -7
  1361. package/src/classes/callbacks/PostNPCInitLate.ts +11 -11
  1362. package/src/classes/callbacks/PostNPCRenderFilter.ts +7 -7
  1363. package/src/classes/callbacks/PostNPCStateChanged.ts +13 -13
  1364. package/src/classes/callbacks/PostNPCUpdateFilter.ts +7 -7
  1365. package/src/classes/callbacks/PostNewLevelReordered.ts +1 -2
  1366. package/src/classes/callbacks/PostNewRoomEarly.ts +22 -20
  1367. package/src/classes/callbacks/PostNewRoomReordered.ts +1 -2
  1368. package/src/classes/callbacks/PostPEffectUpdateReordered.ts +1 -2
  1369. package/src/classes/callbacks/PostPickupChanged.ts +1 -2
  1370. package/src/classes/callbacks/PostPickupCollect.ts +13 -13
  1371. package/src/classes/callbacks/PostPickupInitFilter.ts +7 -7
  1372. package/src/classes/callbacks/PostPickupInitFirst.ts +13 -13
  1373. package/src/classes/callbacks/PostPickupInitLate.ts +11 -11
  1374. package/src/classes/callbacks/PostPickupRenderFilter.ts +10 -10
  1375. package/src/classes/callbacks/PostPickupSelectionFilter.ts +14 -14
  1376. package/src/classes/callbacks/PostPickupStateChanged.ts +13 -13
  1377. package/src/classes/callbacks/PostPickupUpdateFilter.ts +7 -7
  1378. package/src/classes/callbacks/PostPitRender.ts +9 -9
  1379. package/src/classes/callbacks/PostPitUpdate.ts +9 -9
  1380. package/src/classes/callbacks/PostPlayerChangeHealth.ts +15 -15
  1381. package/src/classes/callbacks/PostPlayerChangeStat.ts +15 -15
  1382. package/src/classes/callbacks/PostPlayerChangeType.ts +15 -15
  1383. package/src/classes/callbacks/PostPlayerCollectibleAdded.ts +1 -2
  1384. package/src/classes/callbacks/PostPlayerCollectibleRemoved.ts +1 -2
  1385. package/src/classes/callbacks/PostPlayerFatalDamage.ts +17 -17
  1386. package/src/classes/callbacks/PostPlayerInitFirst.ts +11 -11
  1387. package/src/classes/callbacks/PostPlayerInitLate.ts +12 -10
  1388. package/src/classes/callbacks/PostPlayerRenderReordered.ts +1 -2
  1389. package/src/classes/callbacks/PostPlayerUpdateReordered.ts +1 -2
  1390. package/src/classes/callbacks/PostPoopRender.ts +9 -9
  1391. package/src/classes/callbacks/PostPoopUpdate.ts +9 -9
  1392. package/src/classes/callbacks/PostPressurePlateRender.ts +9 -9
  1393. package/src/classes/callbacks/PostPressurePlateUpdate.ts +9 -9
  1394. package/src/classes/callbacks/PostProjectileInitFilter.ts +7 -7
  1395. package/src/classes/callbacks/PostProjectileInitLate.ts +13 -13
  1396. package/src/classes/callbacks/PostProjectileKill.ts +19 -19
  1397. package/src/classes/callbacks/PostProjectileRenderFilter.ts +10 -10
  1398. package/src/classes/callbacks/PostProjectileUpdateFilter.ts +7 -7
  1399. package/src/classes/callbacks/PostPurchase.ts +39 -39
  1400. package/src/classes/callbacks/PostRockRender.ts +9 -9
  1401. package/src/classes/callbacks/PostRockUpdate.ts +9 -9
  1402. package/src/classes/callbacks/PostRoomClearChanged.ts +25 -25
  1403. package/src/classes/callbacks/PostSacrifice.ts +13 -13
  1404. package/src/classes/callbacks/PostSlotAnimationChanged.ts +1 -2
  1405. package/src/classes/callbacks/PostSlotCollision.ts +11 -11
  1406. package/src/classes/callbacks/PostSlotDestroyed.ts +1 -2
  1407. package/src/classes/callbacks/PostSlotInit.ts +1 -2
  1408. package/src/classes/callbacks/PostSlotRender.ts +1 -2
  1409. package/src/classes/callbacks/PostSlotUpdate.ts +1 -2
  1410. package/src/classes/callbacks/PostSpikesRender.ts +9 -9
  1411. package/src/classes/callbacks/PostSpikesUpdate.ts +9 -9
  1412. package/src/classes/callbacks/PostTNTRender.ts +9 -9
  1413. package/src/classes/callbacks/PostTNTUpdate.ts +9 -9
  1414. package/src/classes/callbacks/PostTearInitFilter.ts +7 -7
  1415. package/src/classes/callbacks/PostTearInitLate.ts +11 -11
  1416. package/src/classes/callbacks/PostTearInitVeryLate.ts +13 -13
  1417. package/src/classes/callbacks/PostTearKill.ts +19 -19
  1418. package/src/classes/callbacks/PostTearRenderFilter.ts +10 -10
  1419. package/src/classes/callbacks/PostTearUpdateFilter.ts +7 -7
  1420. package/src/classes/callbacks/PostTransformation.ts +25 -25
  1421. package/src/classes/callbacks/PostTrinketBreak.ts +16 -16
  1422. package/src/classes/callbacks/PostUsePillFilter.ts +15 -15
  1423. package/src/classes/callbacks/PreBerserkDeath.ts +15 -15
  1424. package/src/classes/callbacks/PreBombCollisionFilter.ts +9 -9
  1425. package/src/classes/callbacks/PreCustomRevive.ts +1 -2
  1426. package/src/classes/callbacks/PreEntitySpawnFilter.ts +23 -23
  1427. package/src/classes/callbacks/PreFamiliarCollisionFilter.ts +9 -9
  1428. package/src/classes/callbacks/PreGetPedestal.ts +15 -15
  1429. package/src/classes/callbacks/PreItemPickup.ts +1 -2
  1430. package/src/classes/callbacks/PreKnifeCollisionFilter.ts +9 -9
  1431. package/src/classes/callbacks/PreNPCCollisionFilter.ts +9 -9
  1432. package/src/classes/callbacks/PreNPCUpdateFilter.ts +4 -5
  1433. package/src/classes/callbacks/PreNewLevel.ts +13 -13
  1434. package/src/classes/callbacks/PreProjectileCollisionFilter.ts +9 -9
  1435. package/src/classes/callbacks/PreRoomEntitySpawnFilter.ts +23 -23
  1436. package/src/classes/callbacks/PreTearCollisionFilter.ts +9 -9
  1437. package/src/classes/features/callbackLogic/CustomGridEntities.ts +29 -26
  1438. package/src/classes/features/callbackLogic/CustomRevive.ts +51 -51
  1439. package/src/classes/features/callbackLogic/EsauJrDetection.ts +21 -21
  1440. package/src/classes/features/callbackLogic/FlipDetection.ts +14 -14
  1441. package/src/classes/features/callbackLogic/GameReorderedCallbacks.ts +48 -48
  1442. package/src/classes/features/callbackLogic/GridEntityCollisionDetection.ts +19 -19
  1443. package/src/classes/features/callbackLogic/GridEntityRenderDetection.ts +14 -14
  1444. package/src/classes/features/callbackLogic/GridEntityUpdateDetection.ts +33 -33
  1445. package/src/classes/features/callbackLogic/ItemPickupDetection.ts +16 -16
  1446. package/src/classes/features/callbackLogic/PickupChangeDetection.ts +19 -19
  1447. package/src/classes/features/callbackLogic/PlayerCollectibleDetection.ts +88 -88
  1448. package/src/classes/features/callbackLogic/PlayerReorderedCallbacks.ts +41 -38
  1449. package/src/classes/features/callbackLogic/SlotDestroyedDetection.ts +38 -36
  1450. package/src/classes/features/callbackLogic/SlotRenderDetection.ts +10 -10
  1451. package/src/classes/features/callbackLogic/SlotUpdateDetection.ts +17 -17
  1452. package/src/classes/features/other/CharacterHealthConversion.ts +23 -23
  1453. package/src/classes/features/other/CharacterStats.ts +10 -10
  1454. package/src/classes/features/other/CollectibleItemPoolType.ts +15 -15
  1455. package/src/classes/features/other/CustomHotkeys.ts +10 -10
  1456. package/src/classes/features/other/CustomItemPools.ts +6 -6
  1457. package/src/classes/features/other/CustomPickups.ts +23 -19
  1458. package/src/classes/features/other/CustomStages.ts +106 -102
  1459. package/src/classes/features/other/CustomTrapdoors.ts +48 -46
  1460. package/src/classes/features/other/DebugDisplay.ts +20 -23
  1461. package/src/classes/features/other/DeployJSONRoom.ts +3 -0
  1462. package/src/classes/features/other/DisableAllSound.ts +11 -11
  1463. package/src/classes/features/other/DisableInputs.ts +21 -21
  1464. package/src/classes/features/other/EdenStartingStatsHealth.ts +34 -34
  1465. package/src/classes/features/other/ExtraConsoleCommands.ts +74 -73
  1466. package/src/classes/features/other/FadeInRemover.ts +7 -7
  1467. package/src/classes/features/other/FastReset.ts +9 -9
  1468. package/src/classes/features/other/ForgottenSwitch.ts +2 -2
  1469. package/src/classes/features/other/ItemPoolDetection.ts +12 -7
  1470. package/src/classes/features/other/ModdedElementDetection.ts +5 -5
  1471. package/src/classes/features/other/NoSirenSteal.ts +6 -6
  1472. package/src/classes/features/other/Pause.ts +45 -45
  1473. package/src/classes/features/other/PersistentEntities.ts +57 -54
  1474. package/src/classes/features/other/PickupIndexCreation.ts +17 -18
  1475. package/src/classes/features/other/PlayerCollectibleTracking.ts +19 -19
  1476. package/src/classes/features/other/PonyDetection.ts +15 -15
  1477. package/src/classes/features/other/PressInput.ts +21 -18
  1478. package/src/classes/features/other/PreventChildEntities.ts +13 -13
  1479. package/src/classes/features/other/PreventGridEntityRespawn.ts +25 -25
  1480. package/src/classes/features/other/RerunDetection.ts +16 -16
  1481. package/src/classes/features/other/RoomClearFrame.ts +13 -13
  1482. package/src/classes/features/other/RoomHistory.ts +12 -12
  1483. package/src/classes/features/other/RunInNFrames.ts +34 -34
  1484. package/src/classes/features/other/RunNextRoom.ts +9 -9
  1485. package/src/classes/features/other/RunNextRun.ts +10 -10
  1486. package/src/classes/features/other/SaveDataManager.ts +51 -50
  1487. package/src/classes/features/other/StageHistory.ts +17 -14
  1488. package/src/classes/features/other/TaintedLazarusPlayers.ts +17 -15
  1489. package/src/classes/features/other/UnlockAchievementsDetection.ts +11 -11
  1490. package/src/classes/features/other/customStages/backdrop.ts +3 -2
  1491. package/src/classes/features/other/customStages/gridEntities.ts +1 -0
  1492. package/src/classes/features/other/customStages/versusScreen.ts +15 -5
  1493. package/src/classes/features/other/debugDisplay/DebugDisplayBomb.ts +6 -6
  1494. package/src/classes/features/other/debugDisplay/DebugDisplayDoor.ts +6 -6
  1495. package/src/classes/features/other/debugDisplay/DebugDisplayEffect.ts +6 -6
  1496. package/src/classes/features/other/debugDisplay/DebugDisplayFamiliar.ts +6 -6
  1497. package/src/classes/features/other/debugDisplay/DebugDisplayKnife.ts +6 -6
  1498. package/src/classes/features/other/debugDisplay/DebugDisplayLaser.ts +6 -6
  1499. package/src/classes/features/other/debugDisplay/DebugDisplayNPC.ts +6 -6
  1500. package/src/classes/features/other/debugDisplay/DebugDisplayPickup.ts +6 -6
  1501. package/src/classes/features/other/debugDisplay/DebugDisplayPit.ts +6 -6
  1502. package/src/classes/features/other/debugDisplay/DebugDisplayPlayer.ts +6 -6
  1503. package/src/classes/features/other/debugDisplay/DebugDisplayPoop.ts +6 -6
  1504. package/src/classes/features/other/debugDisplay/DebugDisplayPressurePlate.ts +8 -8
  1505. package/src/classes/features/other/debugDisplay/DebugDisplayProjectile.ts +6 -6
  1506. package/src/classes/features/other/debugDisplay/DebugDisplayRock.ts +6 -6
  1507. package/src/classes/features/other/debugDisplay/DebugDisplaySlot.ts +6 -6
  1508. package/src/classes/features/other/debugDisplay/DebugDisplaySpikes.ts +6 -6
  1509. package/src/classes/features/other/debugDisplay/DebugDisplayTNT.ts +6 -6
  1510. package/src/classes/features/other/debugDisplay/DebugDisplayTear.ts +6 -6
  1511. package/src/classes/features/other/extraConsoleCommands/commands.ts +44 -54
  1512. package/src/classes/private/CustomCallback.ts +40 -40
  1513. package/src/core/cachedClasses.ts +2 -0
  1514. package/src/core/constants.ts +2 -4
  1515. package/src/decorators.ts +3 -5
  1516. package/src/features.ts +59 -57
  1517. package/src/functions/array.ts +58 -55
  1518. package/src/functions/arrayLua.ts +1 -1
  1519. package/src/functions/bitSet128.ts +1 -1
  1520. package/src/functions/bitwise.ts +1 -0
  1521. package/src/functions/bosses.ts +55 -55
  1522. package/src/functions/challenges.ts +16 -12
  1523. package/src/functions/characters.ts +1 -1
  1524. package/src/functions/charge.ts +38 -38
  1525. package/src/functions/collectibles.ts +14 -16
  1526. package/src/functions/color.ts +1 -1
  1527. package/src/functions/decorators.ts +4 -6
  1528. package/src/functions/deepCopy.ts +207 -210
  1529. package/src/functions/deepCopyTests.ts +307 -314
  1530. package/src/functions/doors.ts +57 -55
  1531. package/src/functions/easing.ts +150 -145
  1532. package/src/functions/emptyRoom.ts +28 -28
  1533. package/src/functions/entities.ts +30 -40
  1534. package/src/functions/flag.ts +1 -1
  1535. package/src/functions/globals.ts +10 -8
  1536. package/src/functions/gridEntities.ts +372 -369
  1537. package/src/functions/gridEntitiesSpecific.ts +54 -54
  1538. package/src/functions/hex.ts +25 -5
  1539. package/src/functions/isaacAPIClass.ts +19 -20
  1540. package/src/functions/jsonHelpers.ts +8 -8
  1541. package/src/functions/jsonRoom.ts +18 -18
  1542. package/src/functions/kColor.ts +1 -1
  1543. package/src/functions/levelGrid.ts +3 -8
  1544. package/src/functions/logEntities.ts +87 -87
  1545. package/src/functions/logMisc.ts +15 -11
  1546. package/src/functions/map.ts +2 -8
  1547. package/src/functions/math.ts +1 -1
  1548. package/src/functions/merge.ts +53 -53
  1549. package/src/functions/mergeTests.ts +152 -176
  1550. package/src/functions/nextStage.ts +4 -3
  1551. package/src/functions/pickupVariants.ts +1 -1
  1552. package/src/functions/playerHealth.ts +28 -26
  1553. package/src/functions/playerIndex.ts +15 -15
  1554. package/src/functions/playerTrinkets.ts +17 -17
  1555. package/src/functions/players.ts +7 -5
  1556. package/src/functions/revive.ts +5 -8
  1557. package/src/functions/rng.ts +8 -6
  1558. package/src/functions/roomData.ts +5 -17
  1559. package/src/functions/roomGrid.ts +24 -24
  1560. package/src/functions/roomShapeWalls.ts +29 -29
  1561. package/src/functions/rooms.ts +9 -9
  1562. package/src/functions/serialization.ts +18 -18
  1563. package/src/functions/set.ts +2 -8
  1564. package/src/functions/spawnCollectible.ts +2 -2
  1565. package/src/functions/string.ts +5 -1
  1566. package/src/functions/trinkets.ts +1 -2
  1567. package/src/functions/types.ts +2 -0
  1568. package/src/functions/ui.ts +31 -31
  1569. package/src/functions/utils.ts +18 -18
  1570. package/src/functions/vector.ts +2 -2
  1571. package/src/interfaces/ChargeBarSprites.ts +6 -5
  1572. package/src/interfaces/CustomStageTSConfig.ts +63 -63
  1573. package/src/interfaces/GridEntityCustomData.ts +6 -6
  1574. package/src/interfaces/JSONRoomsFile.ts +27 -27
  1575. package/src/interfaces/PlayerHealth.ts +11 -11
  1576. package/src/interfaces/PlayerStats.ts +13 -13
  1577. package/src/interfaces/PocketItemDescription.ts +3 -3
  1578. package/src/interfaces/RoomDescription.ts +12 -12
  1579. package/src/interfaces/SaveData.ts +1 -0
  1580. package/src/interfaces/TSTLClassMetatable.ts +5 -5
  1581. package/src/interfaces/TrinketSituation.ts +4 -4
  1582. package/src/interfaces/private/AddCallbackParametersCustom.ts +156 -148
  1583. package/src/interfaces/private/CustomStage.ts +4 -1
  1584. package/src/interfaces/private/CustomTrapdoorDescription.ts +5 -4
  1585. package/src/interfaces/private/ModUpgradedInterface.ts +3 -2
  1586. package/src/lib/jsonLua.js +11 -11
  1587. package/src/objects/isaacAPIClassTypeToFunctions.ts +15 -15
  1588. package/src/patchErrorFunctions.ts +3 -0
  1589. package/src/sets/entitiesWithArmorSet.ts +2 -1
  1590. package/src/shouldFire.ts +13 -20
  1591. package/src/types/AllButFirst.ts +1 -1
  1592. package/src/types/AllButLast.ts +4 -1
  1593. package/src/types/CompositionTypeSatisfiesEnum.ts +6 -6
  1594. package/src/types/Immutable.ts +1 -6
  1595. package/src/types/PickingUpItem.ts +3 -3
  1596. package/src/types/PossibleStatType.ts +1 -5
@@ -1,92 +1,54 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.convertXMLGridEntityType = convertXMLGridEntityType;
4
- exports.doesGridEntityExist = doesGridEntityExist;
5
- exports.getAllGridIndexes = getAllGridIndexes;
6
- exports.getCollidingEntitiesWithGridEntity = getCollidingEntitiesWithGridEntity;
7
- exports.getConstituentsFromGridEntityID = getConstituentsFromGridEntityID;
8
- exports.getGridEntities = getGridEntities;
9
- exports.getGridEntitiesExcept = getGridEntitiesExcept;
10
- exports.getGridEntitiesInRadius = getGridEntitiesInRadius;
11
- exports.getGridEntitiesMap = getGridEntitiesMap;
12
- exports.getGridEntityANM2Path = getGridEntityANM2Path;
13
- exports.getGridEntityCollisionPoints = getGridEntityCollisionPoints;
14
- exports.getGridEntityID = getGridEntityID;
15
- exports.getGridEntityIDFromConstituents = getGridEntityIDFromConstituents;
16
- exports.getMatchingGridEntities = getMatchingGridEntities;
17
- exports.getRockPNGPath = getRockPNGPath;
18
- exports.getSurroundingGridEntities = getSurroundingGridEntities;
19
- exports.getSurroundingGridIndexes = getSurroundingGridIndexes;
20
- exports.getTopLeftWall = getTopLeftWall;
21
- exports.getTopLeftWallGridIndex = getTopLeftWallGridIndex;
22
- exports.isGridEntityBreakableByExplosion = isGridEntityBreakableByExplosion;
23
- exports.isGridEntityBroken = isGridEntityBroken;
24
- exports.isGridEntityXMLType = isGridEntityXMLType;
25
- exports.isGridIndexAdjacentToDoor = isGridIndexAdjacentToDoor;
26
- exports.isPoopGridEntityXMLType = isPoopGridEntityXMLType;
27
- exports.isPostBossVoidPortal = isPostBossVoidPortal;
28
- exports.removeAllGridEntitiesExcept = removeAllGridEntitiesExcept;
29
- exports.removeAllMatchingGridEntities = removeAllMatchingGridEntities;
30
- exports.removeEntitiesSpawnedFromGridEntity = removeEntitiesSpawnedFromGridEntity;
31
- exports.removeGridEntities = removeGridEntities;
32
- exports.removeGridEntity = removeGridEntity;
33
- exports.setGridEntityInvisible = setGridEntityInvisible;
34
- exports.setGridEntityType = setGridEntityType;
35
- exports.spawnGiantPoop = spawnGiantPoop;
36
- exports.spawnGridEntity = spawnGridEntity;
37
- exports.spawnGridEntityWithVariant = spawnGridEntityWithVariant;
38
- exports.spawnVoidPortal = spawnVoidPortal;
39
- const isaac_typescript_definitions_1 = require("isaac-typescript-definitions");
40
- const cachedEnumValues_1 = require("../cachedEnumValues");
41
- const cachedClasses_1 = require("../core/cachedClasses");
42
- const constants_1 = require("../core/constants");
43
- const gridEntityTypeToBrokenStateMap_1 = require("../maps/gridEntityTypeToBrokenStateMap");
44
- const gridEntityXMLMap_1 = require("../maps/gridEntityXMLMap");
45
- const roomShapeToTopLeftWallGridIndexMap_1 = require("../maps/roomShapeToTopLeftWallGridIndexMap");
46
- const gridEntityTypeToANM2Name_1 = require("../objects/gridEntityTypeToANM2Name");
47
- const poopGridEntityXMLTypesSet_1 = require("../sets/poopGridEntityXMLTypesSet");
48
- const ReadonlySet_1 = require("../types/ReadonlySet");
49
- const entities_1 = require("./entities");
50
- const entitiesSpecific_1 = require("./entitiesSpecific");
51
- const math_1 = require("./math");
52
- const rooms_1 = require("./rooms");
53
- const types_1 = require("./types");
54
- const utils_1 = require("./utils");
55
- const vector_1 = require("./vector");
1
+ import { BackdropType, EffectVariant, GridCollisionClass, GridEntityType, PoopGridEntityVariant, StatueVariant, TrapdoorVariant, } from "isaac-typescript-definitions";
2
+ import { GRID_ENTITY_XML_TYPE_VALUES } from "../cachedEnumValues";
3
+ import { game } from "../core/cachedClasses";
4
+ import { DISTANCE_OF_GRID_TILE, VectorOne } from "../core/constants";
5
+ import { GRID_ENTITY_TYPE_TO_BROKEN_STATE_MAP } from "../maps/gridEntityTypeToBrokenStateMap";
6
+ import { GRID_ENTITY_XML_MAP } from "../maps/gridEntityXMLMap";
7
+ import { DEFAULT_TOP_LEFT_WALL_GRID_INDEX, ROOM_SHAPE_TO_TOP_LEFT_WALL_GRID_INDEX_MAP, } from "../maps/roomShapeToTopLeftWallGridIndexMap";
8
+ import { GRID_ENTITY_TYPE_TO_ANM2_NAME } from "../objects/gridEntityTypeToANM2Name";
9
+ import { POOP_GRID_ENTITY_XML_TYPES_SET } from "../sets/poopGridEntityXMLTypesSet";
10
+ import { ReadonlySet } from "../types/ReadonlySet";
11
+ import { removeEntities } from "./entities";
12
+ import { getEffects } from "./entitiesSpecific";
13
+ import { isCircleIntersectingRectangle } from "./math";
14
+ import { roomUpdateSafe } from "./rooms";
15
+ import { isInteger, parseIntSafe } from "./types";
16
+ import { assertDefined, eRange, iRange } from "./utils";
17
+ import { isVector, vectorEquals } from "./vector";
56
18
  /**
57
19
  * For some specific grid entities, the variant defined in the XML is what is used by the actual
58
20
  * game (which is not the case for e.g. poops).
59
21
  */
60
- const GRID_ENTITY_TYPES_THAT_KEEP_GRID_ENTITY_XML_VARIANT = new ReadonlySet_1.ReadonlySet([
61
- isaac_typescript_definitions_1.GridEntityType.SPIKES_ON_OFF, // 9
62
- isaac_typescript_definitions_1.GridEntityType.PRESSURE_PLATE, // 20
63
- isaac_typescript_definitions_1.GridEntityType.TELEPORTER, // 23
22
+ const GRID_ENTITY_TYPES_THAT_KEEP_GRID_ENTITY_XML_VARIANT = new ReadonlySet([
23
+ GridEntityType.SPIKES_ON_OFF, // 9
24
+ GridEntityType.PRESSURE_PLATE, // 20
25
+ GridEntityType.TELEPORTER, // 23
64
26
  ]);
65
- const BREAKABLE_GRID_ENTITY_TYPES_BY_EXPLOSIONS = new ReadonlySet_1.ReadonlySet([
66
- isaac_typescript_definitions_1.GridEntityType.ROCK, // 2
67
- isaac_typescript_definitions_1.GridEntityType.ROCK_TINTED, // 4
68
- isaac_typescript_definitions_1.GridEntityType.ROCK_BOMB, // 5
69
- isaac_typescript_definitions_1.GridEntityType.ROCK_ALT, // 6
70
- isaac_typescript_definitions_1.GridEntityType.SPIDER_WEB, // 10
71
- isaac_typescript_definitions_1.GridEntityType.TNT, // 12
27
+ const BREAKABLE_GRID_ENTITY_TYPES_BY_EXPLOSIONS = new ReadonlySet([
28
+ GridEntityType.ROCK, // 2
29
+ GridEntityType.ROCK_TINTED, // 4
30
+ GridEntityType.ROCK_BOMB, // 5
31
+ GridEntityType.ROCK_ALT, // 6
32
+ GridEntityType.SPIDER_WEB, // 10
33
+ GridEntityType.TNT, // 12
72
34
  // GridEntityType.FIREPLACE (13) does not count since it is turned into a non-grid entity upon
73
35
  // spawning.
74
- isaac_typescript_definitions_1.GridEntityType.POOP, // 14
75
- isaac_typescript_definitions_1.GridEntityType.ROCK_SUPER_SPECIAL, // 22
76
- isaac_typescript_definitions_1.GridEntityType.ROCK_SPIKED, // 25
77
- isaac_typescript_definitions_1.GridEntityType.ROCK_ALT_2, // 26
78
- isaac_typescript_definitions_1.GridEntityType.ROCK_GOLD, // 27
36
+ GridEntityType.POOP, // 14
37
+ GridEntityType.ROCK_SUPER_SPECIAL, // 22
38
+ GridEntityType.ROCK_SPIKED, // 25
39
+ GridEntityType.ROCK_ALT_2, // 26
40
+ GridEntityType.ROCK_GOLD, // 27
79
41
  ]);
80
- const BREAKABLE_GRID_ENTITY_TYPES_VARIANTS_BY_EXPLOSIONS = new ReadonlySet_1.ReadonlySet([`${isaac_typescript_definitions_1.GridEntityType.STATUE}.${isaac_typescript_definitions_1.StatueVariant.ANGEL}`]);
81
- const GRID_ENTITY_XML_TYPES_SET = new ReadonlySet_1.ReadonlySet(cachedEnumValues_1.GRID_ENTITY_XML_TYPE_VALUES);
42
+ const BREAKABLE_GRID_ENTITY_TYPES_VARIANTS_BY_EXPLOSIONS = new ReadonlySet([`${GridEntityType.STATUE}.${StatueVariant.ANGEL}`]);
43
+ const GRID_ENTITY_XML_TYPES_SET = new ReadonlySet(GRID_ENTITY_XML_TYPE_VALUES);
82
44
  /**
83
45
  * Helper function to convert the grid entity type found in a room XML file to the corresponding
84
46
  * grid entity type and variant normally used by the game. For example, `GridEntityXMLType.ROCK` is
85
47
  * 1000 (in a room XML file), but `GridEntityType.ROCK` is equal to 2 (in-game).
86
48
  */
87
- function convertXMLGridEntityType(gridEntityXMLType, gridEntityXMLVariant) {
88
- const gridEntityArray = gridEntityXMLMap_1.GRID_ENTITY_XML_MAP.get(gridEntityXMLType);
89
- (0, utils_1.assertDefined)(gridEntityArray, `Failed to find an entry in the grid entity map for XML entity type: ${gridEntityXMLType}`);
49
+ export function convertXMLGridEntityType(gridEntityXMLType, gridEntityXMLVariant) {
50
+ const gridEntityArray = GRID_ENTITY_XML_MAP.get(gridEntityXMLType);
51
+ assertDefined(gridEntityArray, `Failed to find an entry in the grid entity map for XML entity type: ${gridEntityXMLType}`);
90
52
  const gridEntityType = gridEntityArray[0];
91
53
  const variant = GRID_ENTITY_TYPES_THAT_KEEP_GRID_ENTITY_XML_VARIANT.has(gridEntityType)
92
54
  ? gridEntityXMLVariant
@@ -100,8 +62,8 @@ function convertXMLGridEntityType(gridEntityXMLType, gridEntityXMLVariant) {
100
62
  * @param gridEntityType The grid entity type to match.
101
63
  * @param variant Optional. Default is -1, which matches every variant.
102
64
  */
103
- function doesGridEntityExist(gridEntityType, variant = -1) {
104
- const room = cachedClasses_1.game.GetRoom();
65
+ export function doesGridEntityExist(gridEntityType, variant = -1) {
66
+ const room = game.GetRoom();
105
67
  const gridIndexes = getAllGridIndexes();
106
68
  return gridIndexes.some((gridIndex) => {
107
69
  const gridEntity = room.GetGridEntity(gridIndex);
@@ -119,10 +81,10 @@ function doesGridEntityExist(gridEntityType, variant = -1) {
119
81
  *
120
82
  * Under the hood, this uses the `Room.GetGridSize` method.
121
83
  */
122
- function getAllGridIndexes() {
123
- const room = cachedClasses_1.game.GetRoom();
84
+ export function getAllGridIndexes() {
85
+ const room = game.GetRoom();
124
86
  const gridSize = room.GetGridSize();
125
- return (0, utils_1.eRange)(gridSize);
87
+ return eRange(gridSize);
126
88
  }
127
89
  /**
128
90
  * Gets the entities that have a hitbox that overlaps with any part of the square that the grid
@@ -134,28 +96,28 @@ function getAllGridIndexes() {
134
96
  * Note that this function will not work properly in the `POST_NEW_ROOM` callback since entities do
135
97
  * not have collision yet in that callback.
136
98
  */
137
- function getCollidingEntitiesWithGridEntity(gridEntity) {
99
+ export function getCollidingEntitiesWithGridEntity(gridEntity) {
138
100
  const { topLeft, bottomRight } = getGridEntityCollisionPoints(gridEntity);
139
- const closeEntities = Isaac.FindInRadius(gridEntity.Position, constants_1.DISTANCE_OF_GRID_TILE * 2);
101
+ const closeEntities = Isaac.FindInRadius(gridEntity.Position, DISTANCE_OF_GRID_TILE * 2);
140
102
  return closeEntities.filter((entity) => entity.CollidesWithGrid()
141
- && (0, math_1.isCircleIntersectingRectangle)(entity.Position,
103
+ && isCircleIntersectingRectangle(entity.Position,
142
104
  // We arbitrarily add 0.1 to account for entities that are already pushed back by the time
143
105
  // the `POST_UPDATE` callback fires.
144
106
  entity.Size + 0.1, topLeft, bottomRight));
145
107
  }
146
108
  /** Helper function to get the grid entity type and variant from a `GridEntityID`. */
147
- function getConstituentsFromGridEntityID(gridEntityID) {
109
+ export function getConstituentsFromGridEntityID(gridEntityID) {
148
110
  const parts = gridEntityID.split(".");
149
111
  if (parts.length !== 2) {
150
112
  error(`Failed to get the constituents from a grid entity ID: ${gridEntityID}`);
151
113
  }
152
114
  const [gridEntityTypeString, variantString] = parts;
153
- (0, utils_1.assertDefined)(gridEntityTypeString, `Failed to get the first constituent from a grid entity ID: ${gridEntityID}`);
154
- (0, utils_1.assertDefined)(variantString, `Failed to get the second constituent from a grid entity ID: ${gridEntityID}`);
155
- const gridEntityType = (0, types_1.parseIntSafe)(gridEntityTypeString);
156
- (0, utils_1.assertDefined)(gridEntityType, `Failed to convert the grid entity type to a number: ${gridEntityTypeString}`);
157
- const variant = (0, types_1.parseIntSafe)(variantString);
158
- (0, utils_1.assertDefined)(variant, `Failed to convert the grid entity variant to an integer: ${variantString}`);
115
+ assertDefined(gridEntityTypeString, `Failed to get the first constituent from a grid entity ID: ${gridEntityID}`);
116
+ assertDefined(variantString, `Failed to get the second constituent from a grid entity ID: ${gridEntityID}`);
117
+ const gridEntityType = parseIntSafe(gridEntityTypeString);
118
+ assertDefined(gridEntityType, `Failed to convert the grid entity type to a number: ${gridEntityTypeString}`);
119
+ const variant = parseIntSafe(variantString);
120
+ assertDefined(variant, `Failed to convert the grid entity variant to an integer: ${variantString}`);
159
121
  return [gridEntityType, variant];
160
122
  }
161
123
  /**
@@ -184,12 +146,12 @@ function getConstituentsFromGridEntityID(gridEntityID) {
184
146
  *
185
147
  * @allowEmptyVariadic
186
148
  */
187
- function getGridEntities(...gridEntityTypes) {
149
+ export function getGridEntities(...gridEntityTypes) {
188
150
  const gridEntities = getAllGridEntities();
189
151
  if (gridEntityTypes.length === 0) {
190
152
  return gridEntities;
191
153
  }
192
- const gridEntityTypesSet = new ReadonlySet_1.ReadonlySet(gridEntityTypes);
154
+ const gridEntityTypesSet = new ReadonlySet(gridEntityTypes);
193
155
  return gridEntities.filter((gridEntity) => {
194
156
  const gridEntityType = gridEntity.GetType();
195
157
  return gridEntityTypesSet.has(gridEntityType);
@@ -201,41 +163,30 @@ function getGridEntities(...gridEntityTypes) {
201
163
  * This function is variadic, meaning that you can specify as many grid entity types as you want to
202
164
  * exclude.
203
165
  */
204
- function getGridEntitiesExcept(...gridEntityTypes) {
166
+ export function getGridEntitiesExcept(...gridEntityTypes) {
205
167
  const gridEntities = getAllGridEntities();
206
168
  if (gridEntityTypes.length === 0) {
207
169
  return gridEntities;
208
170
  }
209
- const gridEntityTypesSet = new ReadonlySet_1.ReadonlySet(gridEntityTypes);
171
+ const gridEntityTypesSet = new ReadonlySet(gridEntityTypes);
210
172
  return gridEntities.filter((gridEntity) => {
211
173
  const gridEntityType = gridEntity.GetType();
212
174
  return !gridEntityTypesSet.has(gridEntityType);
213
175
  });
214
176
  }
215
- function getAllGridEntities() {
216
- const room = cachedClasses_1.game.GetRoom();
217
- const gridEntities = [];
218
- for (const gridIndex of getAllGridIndexes()) {
219
- const gridEntity = room.GetGridEntity(gridIndex);
220
- if (gridEntity !== undefined) {
221
- gridEntities.push(gridEntity);
222
- }
223
- }
224
- return gridEntities;
225
- }
226
177
  /** Helper function to get all grid entities in a given radius around a given point. */
227
- function getGridEntitiesInRadius(targetPosition, radius) {
178
+ export function getGridEntitiesInRadius(targetPosition, radius) {
228
179
  radius = Math.abs(radius);
229
- const topLeftOffset = constants_1.VectorOne.mul(-radius);
180
+ const topLeftOffset = VectorOne.mul(-radius);
230
181
  const mostTopLeftPosition = targetPosition.add(topLeftOffset);
231
- const room = cachedClasses_1.game.GetRoom();
182
+ const room = game.GetRoom();
232
183
  const diameter = radius * 2;
233
- const iterations = Math.ceil(diameter / constants_1.DISTANCE_OF_GRID_TILE);
184
+ const iterations = Math.ceil(diameter / DISTANCE_OF_GRID_TILE);
234
185
  const separation = diameter / iterations;
235
186
  const gridEntities = [];
236
187
  const registeredGridIndexes = new Set();
237
- for (const x of (0, utils_1.iRange)(iterations)) {
238
- for (const y of (0, utils_1.iRange)(iterations)) {
188
+ for (const x of iRange(iterations)) {
189
+ for (const y of iRange(iterations)) {
239
190
  const position = mostTopLeftPosition.add(Vector(x * separation, y * separation));
240
191
  const gridIndex = room.GetGridIndex(position);
241
192
  const gridEntity = room.GetGridEntityFromPos(position);
@@ -244,7 +195,7 @@ function getGridEntitiesInRadius(targetPosition, radius) {
244
195
  }
245
196
  registeredGridIndexes.add(gridIndex);
246
197
  const { topLeft, bottomRight } = getGridEntityCollisionPoints(gridEntity);
247
- if ((0, math_1.isCircleIntersectingRectangle)(targetPosition, radius, topLeft, bottomRight)) {
198
+ if (isCircleIntersectingRectangle(targetPosition, radius, topLeft, bottomRight)) {
248
199
  gridEntities.push(gridEntity);
249
200
  }
250
201
  }
@@ -260,7 +211,7 @@ function getGridEntitiesInRadius(targetPosition, radius) {
260
211
  *
261
212
  * @allowEmptyVariadic
262
213
  */
263
- function getGridEntitiesMap(...gridEntityTypes) {
214
+ export function getGridEntitiesMap(...gridEntityTypes) {
264
215
  const gridEntities = getGridEntities(...gridEntityTypes);
265
216
  const gridEntityMap = new Map();
266
217
  for (const gridEntity of gridEntities) {
@@ -270,126 +221,21 @@ function getGridEntitiesMap(...gridEntityTypes) {
270
221
  return gridEntityMap;
271
222
  }
272
223
  /** Helper function to get the ANM2 path for a grid entity type. */
273
- function getGridEntityANM2Path(gridEntityType) {
224
+ export function getGridEntityANM2Path(gridEntityType) {
274
225
  const gridEntityANM2Name = getGridEntityANM2Name(gridEntityType);
275
226
  return `gfx/grid/${gridEntityANM2Name}`;
276
227
  }
277
- function getGridEntityANM2Name(gridEntityType) {
278
- switch (gridEntityType) {
279
- // 1
280
- case isaac_typescript_definitions_1.GridEntityType.DECORATION: {
281
- return getGridEntityANM2NameDecoration();
282
- }
283
- default: {
284
- return gridEntityTypeToANM2Name_1.GRID_ENTITY_TYPE_TO_ANM2_NAME[gridEntityType];
285
- }
286
- }
287
- }
288
- /**
289
- * Helper function to get the ANM2 path for a decoration. This depends on the current room's
290
- * backdrop. The values are taken from the "backdrops.xml" file.
291
- */
292
- function getGridEntityANM2NameDecoration() {
293
- const room = cachedClasses_1.game.GetRoom();
294
- const backdropType = room.GetBackdropType();
295
- switch (backdropType) {
296
- // 1, 2, 3, 36, 49, 52
297
- case isaac_typescript_definitions_1.BackdropType.BASEMENT:
298
- case isaac_typescript_definitions_1.BackdropType.CELLAR:
299
- case isaac_typescript_definitions_1.BackdropType.BURNING_BASEMENT:
300
- case isaac_typescript_definitions_1.BackdropType.DOWNPOUR_ENTRANCE:
301
- case isaac_typescript_definitions_1.BackdropType.ISAACS_BEDROOM:
302
- case isaac_typescript_definitions_1.BackdropType.CLOSET: {
303
- return "Props_01_Basement.anm2";
304
- }
305
- // 4, 5, 6, 37
306
- case isaac_typescript_definitions_1.BackdropType.CAVES:
307
- case isaac_typescript_definitions_1.BackdropType.CATACOMBS:
308
- case isaac_typescript_definitions_1.BackdropType.FLOODED_CAVES:
309
- case isaac_typescript_definitions_1.BackdropType.MINES_ENTRANCE: {
310
- return "Props_03_Caves.anm2";
311
- }
312
- // 7, 8, 9, 30, 33, 38, 39, 40, 41, 42, 53, 60
313
- case isaac_typescript_definitions_1.BackdropType.DEPTHS:
314
- case isaac_typescript_definitions_1.BackdropType.NECROPOLIS:
315
- case isaac_typescript_definitions_1.BackdropType.DANK_DEPTHS:
316
- case isaac_typescript_definitions_1.BackdropType.SACRIFICE:
317
- case isaac_typescript_definitions_1.BackdropType.MAUSOLEUM:
318
- case isaac_typescript_definitions_1.BackdropType.MAUSOLEUM_ENTRANCE:
319
- case isaac_typescript_definitions_1.BackdropType.CORPSE_ENTRANCE:
320
- case isaac_typescript_definitions_1.BackdropType.MAUSOLEUM_2:
321
- case isaac_typescript_definitions_1.BackdropType.MAUSOLEUM_3:
322
- case isaac_typescript_definitions_1.BackdropType.MAUSOLEUM_4:
323
- case isaac_typescript_definitions_1.BackdropType.CLOSET_B:
324
- case isaac_typescript_definitions_1.BackdropType.DARK_CLOSET: {
325
- return "Props_05_Depths.anm2";
326
- }
327
- // 10, 12
328
- case isaac_typescript_definitions_1.BackdropType.WOMB:
329
- case isaac_typescript_definitions_1.BackdropType.SCARRED_WOMB: {
330
- return "Props_07_The Womb.anm2";
331
- }
332
- // 11
333
- case isaac_typescript_definitions_1.BackdropType.UTERO: {
334
- return "Props_07_Utero.anm2";
335
- }
336
- // 13, 27
337
- case isaac_typescript_definitions_1.BackdropType.BLUE_WOMB:
338
- case isaac_typescript_definitions_1.BackdropType.BLUE_WOMB_PASS: {
339
- return "Props_07_The Womb_blue.anm2";
340
- }
341
- // 14, 47
342
- case isaac_typescript_definitions_1.BackdropType.SHEOL:
343
- case isaac_typescript_definitions_1.BackdropType.GEHENNA: {
344
- return "Props_09_Sheol.anm2";
345
- }
346
- // 15
347
- case isaac_typescript_definitions_1.BackdropType.CATHEDRAL: {
348
- return "Props_10_Cathedral.anm2";
349
- }
350
- // 17
351
- case isaac_typescript_definitions_1.BackdropType.CHEST: {
352
- return "Props_11_The Chest.anm2";
353
- }
354
- // 28
355
- case isaac_typescript_definitions_1.BackdropType.GREED_SHOP: {
356
- return "Props_12_Greed.anm2";
357
- }
358
- // 31
359
- case isaac_typescript_definitions_1.BackdropType.DOWNPOUR: {
360
- return "props_01x_downpour.anm2";
361
- }
362
- // 32, 46, 58, 59
363
- case isaac_typescript_definitions_1.BackdropType.MINES:
364
- case isaac_typescript_definitions_1.BackdropType.ASHPIT:
365
- case isaac_typescript_definitions_1.BackdropType.MINES_SHAFT:
366
- case isaac_typescript_definitions_1.BackdropType.ASHPIT_SHAFT: {
367
- return "props_03x_mines.anm2";
368
- }
369
- // 34, 43, 44, 48
370
- case isaac_typescript_definitions_1.BackdropType.CORPSE:
371
- case isaac_typescript_definitions_1.BackdropType.CORPSE_2:
372
- case isaac_typescript_definitions_1.BackdropType.CORPSE_3:
373
- case isaac_typescript_definitions_1.BackdropType.MORTIS: {
374
- return "props_07_the corpse.anm2";
375
- }
376
- // 45
377
- case isaac_typescript_definitions_1.BackdropType.DROSS: {
378
- return "props_02x_dross.anm2";
379
- }
380
- default: {
381
- return "Props_01_Basement.anm2";
382
- }
383
- }
384
- }
385
228
  /** Helper function to get the top left and bottom right corners of a given grid entity. */
386
- function getGridEntityCollisionPoints(gridEntity) {
387
- const topLeft = Vector(gridEntity.Position.X - constants_1.DISTANCE_OF_GRID_TILE / 2, gridEntity.Position.Y - constants_1.DISTANCE_OF_GRID_TILE / 2);
388
- const bottomRight = Vector(gridEntity.Position.X + constants_1.DISTANCE_OF_GRID_TILE / 2, gridEntity.Position.Y + constants_1.DISTANCE_OF_GRID_TILE / 2);
389
- return { topLeft, bottomRight };
229
+ export function getGridEntityCollisionPoints(gridEntity) {
230
+ const topLeft = Vector(gridEntity.Position.X - DISTANCE_OF_GRID_TILE / 2, gridEntity.Position.Y - DISTANCE_OF_GRID_TILE / 2);
231
+ const bottomRight = Vector(gridEntity.Position.X + DISTANCE_OF_GRID_TILE / 2, gridEntity.Position.Y + DISTANCE_OF_GRID_TILE / 2);
232
+ return {
233
+ topLeft,
234
+ bottomRight,
235
+ };
390
236
  }
391
237
  /** Helper function to get a string containing the grid entity's type and variant. */
392
- function getGridEntityID(gridEntity) {
238
+ export function getGridEntityID(gridEntity) {
393
239
  const gridEntityType = gridEntity.GetType();
394
240
  const variant = gridEntity.GetVariant();
395
241
  return `${gridEntityType}.${variant}`;
@@ -398,7 +244,7 @@ function getGridEntityID(gridEntity) {
398
244
  * Helper function to get a formatted string in the format returned by the `getGridEntityID`
399
245
  * function.
400
246
  */
401
- function getGridEntityIDFromConstituents(gridEntityType, variant) {
247
+ export function getGridEntityIDFromConstituents(gridEntityType, variant) {
402
248
  return `${gridEntityType}.${variant}`;
403
249
  }
404
250
  /**
@@ -407,7 +253,7 @@ function getGridEntityIDFromConstituents(gridEntityType, variant) {
407
253
  *
408
254
  * If you want to match every variant, use the `getGridEntities` function instead.
409
255
  */
410
- function getMatchingGridEntities(gridEntityType, variant) {
256
+ export function getMatchingGridEntities(gridEntityType, variant) {
411
257
  const gridEntities = getGridEntities(gridEntityType);
412
258
  return gridEntities.filter((gridEntity) => gridEntity.GetVariant() === variant);
413
259
  }
@@ -417,137 +263,18 @@ function getMatchingGridEntities(gridEntityType, variant) {
417
263
  *
418
264
  * All of the rock PNGs are in the "gfx/grid" directory.
419
265
  */
420
- function getRockPNGPath() {
266
+ export function getRockPNGPath() {
421
267
  const rockPNGName = getRockPNGName();
422
268
  return `gfx/grid/${rockPNGName}`;
423
269
  }
424
- function getRockPNGName() {
425
- const room = cachedClasses_1.game.GetRoom();
426
- const backdropType = room.GetBackdropType();
427
- switch (backdropType) {
428
- // 1, 17
429
- case isaac_typescript_definitions_1.BackdropType.BASEMENT:
430
- case isaac_typescript_definitions_1.BackdropType.CHEST: {
431
- return "rocks_basement.png";
432
- }
433
- // 2
434
- case isaac_typescript_definitions_1.BackdropType.CELLAR: {
435
- return "rocks_cellar.png";
436
- }
437
- // 3
438
- case isaac_typescript_definitions_1.BackdropType.BURNING_BASEMENT: {
439
- return "rocks_burningbasement.png"; // cspell:ignore burningbasement
440
- }
441
- // 4
442
- case isaac_typescript_definitions_1.BackdropType.CAVES: {
443
- return "rocks_caves.png";
444
- }
445
- // 5
446
- case isaac_typescript_definitions_1.BackdropType.CATACOMBS: {
447
- return "rocks_catacombs.png";
448
- }
449
- // 6
450
- case isaac_typescript_definitions_1.BackdropType.FLOODED_CAVES: {
451
- return "rocks_drownedcaves.png"; // cspell:ignore drownedcaves
452
- }
453
- // 7, 8, 9, 30, 60
454
- case isaac_typescript_definitions_1.BackdropType.DEPTHS:
455
- case isaac_typescript_definitions_1.BackdropType.NECROPOLIS:
456
- case isaac_typescript_definitions_1.BackdropType.DANK_DEPTHS:
457
- case isaac_typescript_definitions_1.BackdropType.SACRIFICE:
458
- case isaac_typescript_definitions_1.BackdropType.DARK_CLOSET: {
459
- return "rocks_depths.png";
460
- }
461
- // 10
462
- case isaac_typescript_definitions_1.BackdropType.WOMB: {
463
- return "rocks_womb.png";
464
- }
465
- // 11
466
- case isaac_typescript_definitions_1.BackdropType.UTERO: {
467
- return "rocks_utero.png";
468
- }
469
- // 12
470
- case isaac_typescript_definitions_1.BackdropType.SCARRED_WOMB: {
471
- return "rocks_scarredwomb.png"; // cspell:ignore scarredwomb
472
- }
473
- // 13, 27
474
- case isaac_typescript_definitions_1.BackdropType.BLUE_WOMB:
475
- case isaac_typescript_definitions_1.BackdropType.BLUE_WOMB_PASS: {
476
- return "rocks_bluewomb.png"; // cspell:ignore bluewomb
477
- }
478
- // 14, 16
479
- case isaac_typescript_definitions_1.BackdropType.SHEOL:
480
- case isaac_typescript_definitions_1.BackdropType.DARK_ROOM: {
481
- return "rocks_sheol.png";
482
- }
483
- // 15, 35
484
- case isaac_typescript_definitions_1.BackdropType.CATHEDRAL:
485
- case isaac_typescript_definitions_1.BackdropType.PLANETARIUM: {
486
- return "rocks_cathedral.png";
487
- }
488
- // 23, 32, 37, 58
489
- case isaac_typescript_definitions_1.BackdropType.SECRET:
490
- case isaac_typescript_definitions_1.BackdropType.MINES:
491
- case isaac_typescript_definitions_1.BackdropType.MINES_ENTRANCE:
492
- case isaac_typescript_definitions_1.BackdropType.MINES_SHAFT: {
493
- return "rocks_secretroom.png"; // cspell:ignore secretroom
494
- }
495
- // 31, 36
496
- case isaac_typescript_definitions_1.BackdropType.DOWNPOUR:
497
- case isaac_typescript_definitions_1.BackdropType.DOWNPOUR_ENTRANCE: {
498
- return "rocks_downpour.png";
499
- }
500
- // 33, 38, 40, 41, 42
501
- case isaac_typescript_definitions_1.BackdropType.MAUSOLEUM:
502
- case isaac_typescript_definitions_1.BackdropType.MAUSOLEUM_ENTRANCE:
503
- case isaac_typescript_definitions_1.BackdropType.MAUSOLEUM_2:
504
- case isaac_typescript_definitions_1.BackdropType.MAUSOLEUM_3:
505
- case isaac_typescript_definitions_1.BackdropType.MAUSOLEUM_4: {
506
- return "rocks_mausoleum.png";
507
- }
508
- // 34, 48
509
- case isaac_typescript_definitions_1.BackdropType.CORPSE:
510
- case isaac_typescript_definitions_1.BackdropType.MORTIS: {
511
- return "rocks_corpse.png";
512
- }
513
- // 39
514
- case isaac_typescript_definitions_1.BackdropType.CORPSE_ENTRANCE: {
515
- return "rocks_corpseentrance.png"; // cspell:ignore corpseentrance
516
- }
517
- // 43
518
- case isaac_typescript_definitions_1.BackdropType.CORPSE_2: {
519
- return "rocks_corpse2.png";
520
- }
521
- // 44
522
- case isaac_typescript_definitions_1.BackdropType.CORPSE_3: {
523
- return "rocks_corpse3.png";
524
- }
525
- // 45
526
- case isaac_typescript_definitions_1.BackdropType.DROSS: {
527
- return "rocks_dross.png";
528
- }
529
- // 46, 59
530
- case isaac_typescript_definitions_1.BackdropType.ASHPIT:
531
- case isaac_typescript_definitions_1.BackdropType.ASHPIT_SHAFT: {
532
- return "rocks_ashpit.png";
533
- }
534
- // 47
535
- case isaac_typescript_definitions_1.BackdropType.GEHENNA: {
536
- return "rocks_gehenna.png";
537
- }
538
- default: {
539
- return "rocks_basement.png";
540
- }
541
- }
542
- }
543
270
  /**
544
271
  * Helper function to get the grid entities on the surrounding tiles from the provided grid entity.
545
272
  *
546
273
  * For example, if a rock was surrounded by rocks on all sides, this would return an array of 8
547
274
  * rocks (e.g. top-left + top + top-right + left + right + bottom-left + bottom + right).
548
275
  */
549
- function getSurroundingGridEntities(gridEntity) {
550
- const room = cachedClasses_1.game.GetRoom();
276
+ export function getSurroundingGridEntities(gridEntity) {
277
+ const room = game.GetRoom();
551
278
  const gridIndex = gridEntity.GetGridIndex();
552
279
  const surroundingGridIndexes = getSurroundingGridIndexes(gridIndex);
553
280
  const surroundingGridEntities = [];
@@ -566,8 +293,8 @@ function getSurroundingGridEntities(gridEntity) {
566
293
  * bottom-left + bottom + right), even if the computed values would be negative or otherwise
567
294
  * invalid.
568
295
  */
569
- function getSurroundingGridIndexes(gridIndex) {
570
- const room = cachedClasses_1.game.GetRoom();
296
+ export function getSurroundingGridIndexes(gridIndex) {
297
+ const room = game.GetRoom();
571
298
  const gridWidth = room.GetGridWidth();
572
299
  return [
573
300
  gridIndex - gridWidth - 1, // Top-left
@@ -585,8 +312,8 @@ function getSurroundingGridIndexes(gridIndex) {
585
312
  *
586
313
  * This function can be useful in certain situations to determine if the room is currently loaded.
587
314
  */
588
- function getTopLeftWall() {
589
- const room = cachedClasses_1.game.GetRoom();
315
+ export function getTopLeftWall() {
316
+ const room = game.GetRoom();
590
317
  const topLeftWallGridIndex = getTopLeftWallGridIndex();
591
318
  return room.GetGridEntity(topLeftWallGridIndex);
592
319
  }
@@ -596,11 +323,11 @@ function getTopLeftWall() {
596
323
  *
597
324
  * This function can be useful in certain situations to determine if the room is currently loaded.
598
325
  */
599
- function getTopLeftWallGridIndex() {
600
- const room = cachedClasses_1.game.GetRoom();
326
+ export function getTopLeftWallGridIndex() {
327
+ const room = game.GetRoom();
601
328
  const roomShape = room.GetRoomShape();
602
- const topLeftWallGridIndex = roomShapeToTopLeftWallGridIndexMap_1.ROOM_SHAPE_TO_TOP_LEFT_WALL_GRID_INDEX_MAP.get(roomShape);
603
- return topLeftWallGridIndex ?? roomShapeToTopLeftWallGridIndexMap_1.DEFAULT_TOP_LEFT_WALL_GRID_INDEX;
329
+ const topLeftWallGridIndex = ROOM_SHAPE_TO_TOP_LEFT_WALL_GRID_INDEX_MAP.get(roomShape);
330
+ return topLeftWallGridIndex ?? DEFAULT_TOP_LEFT_WALL_GRID_INDEX;
604
331
  }
605
332
  /**
606
333
  * Helper function to detect if a particular grid entity would "break" if it was touched by an
@@ -608,7 +335,7 @@ function getTopLeftWallGridIndex() {
608
335
  *
609
336
  * For example, rocks and pots are breakable by explosions, but blocks are not.
610
337
  */
611
- function isGridEntityBreakableByExplosion(gridEntity) {
338
+ export function isGridEntityBreakableByExplosion(gridEntity) {
612
339
  const gridEntityType = gridEntity.GetType();
613
340
  const variant = gridEntity.GetVariant();
614
341
  const gridEntityTypeVariant = `${gridEntityType}.${variant}`;
@@ -622,24 +349,24 @@ function isGridEntityBreakableByExplosion(gridEntity) {
622
349
  * Note that in the case of `GridEntityType.LOCK` (11), the state will turn to being broken before
623
350
  * the actual collision for the entity is removed.
624
351
  */
625
- function isGridEntityBroken(gridEntity) {
352
+ export function isGridEntityBroken(gridEntity) {
626
353
  const gridEntityType = gridEntity.GetType();
627
- const brokenState = gridEntityTypeToBrokenStateMap_1.GRID_ENTITY_TYPE_TO_BROKEN_STATE_MAP.get(gridEntityType);
354
+ const brokenState = GRID_ENTITY_TYPE_TO_BROKEN_STATE_MAP.get(gridEntityType);
628
355
  return gridEntity.State === brokenState;
629
356
  }
630
357
  /**
631
358
  * Helper function to see if an arbitrary number is a valid `GridEntityXMLType`. This is useful in
632
359
  * the `PRE_ROOM_ENTITY_SPAWN` callback for narrowing the type of the first argument.
633
360
  */
634
- function isGridEntityXMLType(num) {
361
+ export function isGridEntityXMLType(num) {
635
362
  return GRID_ENTITY_XML_TYPES_SET.has(num); // eslint-disable-line complete/strict-enums
636
363
  }
637
364
  /**
638
365
  * Helper function to check if the provided grid index has a door on it or if the surrounding 8 grid
639
366
  * indexes have a door on it.
640
367
  */
641
- function isGridIndexAdjacentToDoor(gridIndex) {
642
- const room = cachedClasses_1.game.GetRoom();
368
+ export function isGridIndexAdjacentToDoor(gridIndex) {
369
+ const room = game.GetRoom();
643
370
  const surroundingGridIndexes = getSurroundingGridIndexes(gridIndex);
644
371
  const gridIndexes = [gridIndex, ...surroundingGridIndexes];
645
372
  for (const gridIndexToInspect of gridIndexes) {
@@ -654,8 +381,8 @@ function isGridIndexAdjacentToDoor(gridIndex) {
654
381
  return false;
655
382
  }
656
383
  /** Helper function to see if a `GridEntityXMLType` is some kind of poop. */
657
- function isPoopGridEntityXMLType(gridEntityXMLType) {
658
- return poopGridEntityXMLTypesSet_1.POOP_GRID_ENTITY_XML_TYPES_SET.has(gridEntityXMLType);
384
+ export function isPoopGridEntityXMLType(gridEntityXMLType) {
385
+ return POOP_GRID_ENTITY_XML_TYPES_SET.has(gridEntityXMLType);
659
386
  }
660
387
  /**
661
388
  * Helper function to detect whether a given Void Portal is one that randomly spawns after a boss is
@@ -665,11 +392,11 @@ function isPoopGridEntityXMLType(gridEntityXMLType) {
665
392
  * - The `VarData` of Void Portals that are spawned after bosses will be equal to 1.
666
393
  * - The `VarData` of the Void Portal in the room after Hush is equal to 0.
667
394
  */
668
- function isPostBossVoidPortal(gridEntity) {
395
+ export function isPostBossVoidPortal(gridEntity) {
669
396
  const saveState = gridEntity.GetSaveState();
670
- return (saveState.Type === isaac_typescript_definitions_1.GridEntityType.TRAPDOOR
397
+ return (saveState.Type === GridEntityType.TRAPDOOR
671
398
  // eslint-disable-next-line @typescript-eslint/no-unsafe-enum-comparison
672
- && saveState.Variant === isaac_typescript_definitions_1.TrapdoorVariant.VOID_PORTAL
399
+ && saveState.Variant === TrapdoorVariant.VOID_PORTAL
673
400
  && saveState.VarData === 1);
674
401
  }
675
402
  /**
@@ -690,8 +417,8 @@ function isPostBossVoidPortal(gridEntity) {
690
417
  *
691
418
  * @returns The grid entities that were removed.
692
419
  */
693
- function removeAllGridEntitiesExcept(...gridEntityTypes) {
694
- const gridEntityTypeExceptions = new ReadonlySet_1.ReadonlySet(gridEntityTypes);
420
+ export function removeAllGridEntitiesExcept(...gridEntityTypes) {
421
+ const gridEntityTypeExceptions = new ReadonlySet(gridEntityTypes);
695
422
  const gridEntities = getGridEntities();
696
423
  const removedGridEntities = [];
697
424
  for (const gridEntity of gridEntities) {
@@ -702,7 +429,7 @@ function removeAllGridEntitiesExcept(...gridEntityTypes) {
702
429
  }
703
430
  }
704
431
  if (removedGridEntities.length > 0) {
705
- (0, rooms_1.roomUpdateSafe)();
432
+ roomUpdateSafe();
706
433
  }
707
434
  return removedGridEntities;
708
435
  }
@@ -725,7 +452,7 @@ function removeAllGridEntitiesExcept(...gridEntityTypes) {
725
452
  *
726
453
  * @returns An array of the grid entities removed.
727
454
  */
728
- function removeAllMatchingGridEntities(...gridEntityType) {
455
+ export function removeAllMatchingGridEntities(...gridEntityType) {
729
456
  const gridEntities = getGridEntities(...gridEntityType);
730
457
  if (gridEntities.length === 0) {
731
458
  return [];
@@ -733,7 +460,7 @@ function removeAllMatchingGridEntities(...gridEntityType) {
733
460
  for (const gridEntity of gridEntities) {
734
461
  removeGridEntity(gridEntity, false);
735
462
  }
736
- (0, rooms_1.roomUpdateSafe)();
463
+ roomUpdateSafe();
737
464
  return gridEntities;
738
465
  }
739
466
  /**
@@ -743,10 +470,10 @@ function removeAllMatchingGridEntities(...gridEntityType) {
743
470
  *
744
471
  * You must specify an array of entities to look through.
745
472
  */
746
- function removeEntitiesSpawnedFromGridEntity(entities, gridEntity) {
473
+ export function removeEntitiesSpawnedFromGridEntity(entities, gridEntity) {
747
474
  const entitiesFromGridEntity = entities.filter((entity) => entity.FrameCount === 0
748
- && (0, vector_1.vectorEquals)(entity.Position, gridEntity.Position));
749
- (0, entities_1.removeEntities)(entitiesFromGridEntity);
475
+ && vectorEquals(entity.Position, gridEntity.Position));
476
+ removeEntities(entitiesFromGridEntity);
750
477
  }
751
478
  /**
752
479
  * Helper function to remove all of the grid entities in the supplied array.
@@ -760,7 +487,7 @@ function removeEntitiesSpawnedFromGridEntity(entities, gridEntity) {
760
487
  * @param cap Optional. If specified, will only remove the given amount of entities.
761
488
  * @returns An array of the entities that were removed.
762
489
  */
763
- function removeGridEntities(gridEntities, updateRoom, cap) {
490
+ export function removeGridEntities(gridEntities, updateRoom, cap) {
764
491
  if (gridEntities.length === 0) {
765
492
  return [];
766
493
  }
@@ -773,7 +500,7 @@ function removeGridEntities(gridEntities, updateRoom, cap) {
773
500
  }
774
501
  }
775
502
  if (updateRoom) {
776
- (0, rooms_1.roomUpdateSafe)();
503
+ roomUpdateSafe();
777
504
  }
778
505
  return gridEntitiesRemoved;
779
506
  }
@@ -791,9 +518,9 @@ function removeGridEntities(gridEntities, updateRoom, cap) {
791
518
  * this is expensive, since it involves a call to `Isaac.GetRoomEntities`, so set
792
519
  * this to false if you need to run this function multiple times.
793
520
  */
794
- function removeGridEntity(gridEntityOrGridIndex, updateRoom) {
795
- const room = cachedClasses_1.game.GetRoom();
796
- const gridEntity = (0, types_1.isInteger)(gridEntityOrGridIndex)
521
+ export function removeGridEntity(gridEntityOrGridIndex, updateRoom) {
522
+ const room = game.GetRoom();
523
+ const gridEntity = isInteger(gridEntityOrGridIndex)
797
524
  ? room.GetGridEntity(gridEntityOrGridIndex)
798
525
  : gridEntityOrGridIndex;
799
526
  if (gridEntity === undefined) {
@@ -803,24 +530,24 @@ function removeGridEntity(gridEntityOrGridIndex, updateRoom) {
803
530
  const gridEntityType = gridEntity.GetType();
804
531
  const variant = gridEntity.GetVariant();
805
532
  const position = gridEntity.Position;
806
- const gridIndex = (0, types_1.isInteger)(gridEntityOrGridIndex)
533
+ const gridIndex = isInteger(gridEntityOrGridIndex)
807
534
  ? gridEntityOrGridIndex
808
535
  : gridEntityOrGridIndex.GetGridIndex();
809
536
  room.RemoveGridEntity(gridIndex, 0, false);
810
537
  if (updateRoom) {
811
- (0, rooms_1.roomUpdateSafe)();
538
+ roomUpdateSafe();
812
539
  }
813
540
  // In the special case of removing a Devil Statue or Angel Statue, we also need to delete the
814
541
  // corresponding effect.
815
- if (gridEntityType === isaac_typescript_definitions_1.GridEntityType.STATUE) {
542
+ if (gridEntityType === GridEntityType.STATUE) {
816
543
  const effectVariant =
817
544
  // eslint-disable-next-line @typescript-eslint/no-unsafe-enum-comparison
818
- variant === isaac_typescript_definitions_1.StatueVariant.DEVIL
819
- ? isaac_typescript_definitions_1.EffectVariant.DEVIL
820
- : isaac_typescript_definitions_1.EffectVariant.ANGEL;
821
- const effects = (0, entitiesSpecific_1.getEffects)(effectVariant);
822
- const effectsOnTile = effects.filter((effect) => (0, vector_1.vectorEquals)(effect.Position, position));
823
- (0, entities_1.removeEntities)(effectsOnTile);
545
+ variant === StatueVariant.DEVIL
546
+ ? EffectVariant.DEVIL
547
+ : EffectVariant.ANGEL;
548
+ const effects = getEffects(effectVariant);
549
+ const effectsOnTile = effects.filter((effect) => vectorEquals(effect.Position, position));
550
+ removeEntities(effectsOnTile);
824
551
  }
825
552
  }
826
553
  /**
@@ -830,7 +557,7 @@ function removeGridEntity(gridEntityOrGridIndex, updateRoom) {
830
557
  * longer become visible. (This is because the information about the sprite is lost when it is
831
558
  * reset.)
832
559
  */
833
- function setGridEntityInvisible(gridEntity) {
560
+ export function setGridEntityInvisible(gridEntity) {
834
561
  const sprite = gridEntity.GetSprite();
835
562
  sprite.Reset();
836
563
  }
@@ -841,7 +568,7 @@ function setGridEntityInvisible(gridEntity) {
841
568
  *
842
569
  * Setting the new type to `GridEntityType.NULL` (0) will have no effect.
843
570
  */
844
- function setGridEntityType(gridEntity, gridEntityType) {
571
+ export function setGridEntityType(gridEntity, gridEntityType) {
845
572
  gridEntity.SetType(gridEntityType);
846
573
  const sprite = gridEntity.GetSprite();
847
574
  const anm2Path = getGridEntityANM2Path(gridEntityType);
@@ -849,7 +576,7 @@ function setGridEntityType(gridEntity, gridEntityType) {
849
576
  return;
850
577
  }
851
578
  sprite.Load(anm2Path, false);
852
- if (gridEntityType === isaac_typescript_definitions_1.GridEntityType.ROCK) {
579
+ if (gridEntityType === GridEntityType.ROCK) {
853
580
  const pngPath = getRockPNGPath();
854
581
  sprite.ReplaceSpritesheet(0, pngPath);
855
582
  }
@@ -863,8 +590,8 @@ function setGridEntityType(gridEntity, gridEntityType) {
863
590
  *
864
591
  * @returns Whether spawning the four quadrants was successful.
865
592
  */
866
- function spawnGiantPoop(topLeftGridIndex) {
867
- const room = cachedClasses_1.game.GetRoom();
593
+ export function spawnGiantPoop(topLeftGridIndex) {
594
+ const room = game.GetRoom();
868
595
  const gridWidth = room.GetGridWidth();
869
596
  const topRightGridIndex = topLeftGridIndex + 1;
870
597
  const bottomLeftGridIndex = topLeftGridIndex + gridWidth;
@@ -881,26 +608,26 @@ function spawnGiantPoop(topLeftGridIndex) {
881
608
  return false;
882
609
  }
883
610
  }
884
- const topLeft = spawnGridEntityWithVariant(isaac_typescript_definitions_1.GridEntityType.POOP, isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_TOP_LEFT, topLeftGridIndex);
885
- const topRight = spawnGridEntityWithVariant(isaac_typescript_definitions_1.GridEntityType.POOP, isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_TOP_RIGHT, topRightGridIndex);
886
- const bottomLeft = spawnGridEntityWithVariant(isaac_typescript_definitions_1.GridEntityType.POOP, isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_BOTTOM_LEFT, bottomLeftGridIndex);
887
- const bottomRight = spawnGridEntityWithVariant(isaac_typescript_definitions_1.GridEntityType.POOP, isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_BOTTOM_RIGHT, bottomRightGridIndex);
611
+ const topLeft = spawnGridEntityWithVariant(GridEntityType.POOP, PoopGridEntityVariant.GIANT_TOP_LEFT, topLeftGridIndex);
612
+ const topRight = spawnGridEntityWithVariant(GridEntityType.POOP, PoopGridEntityVariant.GIANT_TOP_RIGHT, topRightGridIndex);
613
+ const bottomLeft = spawnGridEntityWithVariant(GridEntityType.POOP, PoopGridEntityVariant.GIANT_BOTTOM_LEFT, bottomLeftGridIndex);
614
+ const bottomRight = spawnGridEntityWithVariant(GridEntityType.POOP, PoopGridEntityVariant.GIANT_BOTTOM_RIGHT, bottomRightGridIndex);
888
615
  return (topLeft !== undefined
889
- && topLeft.GetType() === isaac_typescript_definitions_1.GridEntityType.POOP
616
+ && topLeft.GetType() === GridEntityType.POOP
890
617
  // eslint-disable-next-line @typescript-eslint/no-unsafe-enum-comparison
891
- && topLeft.GetVariant() === isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_TOP_LEFT
618
+ && topLeft.GetVariant() === PoopGridEntityVariant.GIANT_TOP_LEFT
892
619
  && topRight !== undefined
893
- && topRight.GetType() === isaac_typescript_definitions_1.GridEntityType.POOP
620
+ && topRight.GetType() === GridEntityType.POOP
894
621
  // eslint-disable-next-line @typescript-eslint/no-unsafe-enum-comparison
895
- && topRight.GetVariant() === isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_TOP_RIGHT
622
+ && topRight.GetVariant() === PoopGridEntityVariant.GIANT_TOP_RIGHT
896
623
  && bottomLeft !== undefined
897
- && bottomLeft.GetType() === isaac_typescript_definitions_1.GridEntityType.POOP
624
+ && bottomLeft.GetType() === GridEntityType.POOP
898
625
  // eslint-disable-next-line @typescript-eslint/no-unsafe-enum-comparison
899
- && bottomLeft.GetVariant() === isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_BOTTOM_LEFT
626
+ && bottomLeft.GetVariant() === PoopGridEntityVariant.GIANT_BOTTOM_LEFT
900
627
  && bottomRight !== undefined
901
- && bottomRight.GetType() === isaac_typescript_definitions_1.GridEntityType.POOP
628
+ && bottomRight.GetType() === GridEntityType.POOP
902
629
  // eslint-disable-next-line @typescript-eslint/no-unsafe-enum-comparison
903
- && bottomRight.GetVariant() === isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_BOTTOM_RIGHT);
630
+ && bottomRight.GetVariant() === PoopGridEntityVariant.GIANT_BOTTOM_RIGHT);
904
631
  }
905
632
  /**
906
633
  * Helper function to spawn a grid entity with a specific type.
@@ -917,13 +644,13 @@ function spawnGiantPoop(topLeftGridIndex) {
917
644
  * @param gridIndexOrPosition The grid index or position in the room that you want to spawn the grid
918
645
  * entity at. If a position is specified, the closest grid index will be
919
646
  * used.
920
- * @param removeExistingGridEntity Optional. Whether to remove the existing grid entity on the same
921
- * tile, if it exists. Defaults to true. If false, this function
922
- * will do nothing, since spawning a grid entity on top of another
923
- * grid entity will not replace it.
647
+ * @param shouldRemoveExistingGridEntity Optional. Whether to remove the existing grid entity on the
648
+ * same tile, if it exists. Defaults to true. If false, this
649
+ * function will do nothing, since spawning a grid entity on top of
650
+ * another grid entity will not replace it.
924
651
  */
925
- function spawnGridEntity(gridEntityType, gridIndexOrPosition, removeExistingGridEntity = true) {
926
- return spawnGridEntityWithVariant(gridEntityType, 0, gridIndexOrPosition, removeExistingGridEntity);
652
+ export function spawnGridEntity(gridEntityType, gridIndexOrPosition, shouldRemoveExistingGridEntity = true) {
653
+ return spawnGridEntityWithVariant(gridEntityType, 0, gridIndexOrPosition, shouldRemoveExistingGridEntity);
927
654
  }
928
655
  /**
929
656
  * Helper function to spawn a grid entity with a specific variant.
@@ -938,38 +665,38 @@ function spawnGridEntity(gridEntityType, gridIndexOrPosition, removeExistingGrid
938
665
  * @param gridIndexOrPosition The grid index or position in the room that you want to spawn the grid
939
666
  * entity at. If a position is specified, the closest grid index will be
940
667
  * used.
941
- * @param removeExistingGridEntity Optional. Whether to remove the existing grid entity on the same
942
- * tile, if it exists. Defaults to true. If false, this function
943
- * will do nothing, since spawning a grid entity on top of another
944
- * grid entity will not replace it.
668
+ * @param shouldRemoveExistingGridEntity Optional. Whether to remove the existing grid entity on the
669
+ * same tile, if it exists. Defaults to true. If false, this
670
+ * function will do nothing, since spawning a grid entity on top of
671
+ * another grid entity will not replace it.
945
672
  */
946
- function spawnGridEntityWithVariant(gridEntityType, variant, gridIndexOrPosition, removeExistingGridEntity = true) {
947
- const room = cachedClasses_1.game.GetRoom();
673
+ export function spawnGridEntityWithVariant(gridEntityType, variant, gridIndexOrPosition, shouldRemoveExistingGridEntity = true) {
674
+ const room = game.GetRoom();
948
675
  // We do an explicit check to prevent run-time errors in Lua environments.
949
676
  // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
950
677
  if (gridIndexOrPosition === undefined) {
951
678
  const gridEntityID = getGridEntityIDFromConstituents(gridEntityType, variant);
952
679
  error(`Failed to spawn grid entity ${gridEntityID} since an undefined position was passed to the "spawnGridEntityWithVariant" function.`);
953
680
  }
954
- const existingGridEntity = (0, vector_1.isVector)(gridIndexOrPosition)
681
+ const existingGridEntity = isVector(gridIndexOrPosition)
955
682
  ? room.GetGridEntityFromPos(gridIndexOrPosition)
956
683
  : room.GetGridEntity(gridIndexOrPosition);
957
684
  if (existingGridEntity !== undefined) {
958
- if (removeExistingGridEntity) {
685
+ if (shouldRemoveExistingGridEntity) {
959
686
  removeGridEntity(existingGridEntity, true);
960
687
  }
961
688
  else {
962
689
  return undefined;
963
690
  }
964
691
  }
965
- const position = (0, vector_1.isVector)(gridIndexOrPosition)
692
+ const position = isVector(gridIndexOrPosition)
966
693
  ? gridIndexOrPosition
967
694
  : room.GetGridPosition(gridIndexOrPosition);
968
695
  const gridEntity = Isaac.GridSpawn(gridEntityType, variant, position);
969
696
  if (gridEntity === undefined) {
970
697
  return gridEntity;
971
698
  }
972
- if (gridEntityType === isaac_typescript_definitions_1.GridEntityType.PIT) {
699
+ if (gridEntityType === GridEntityType.PIT) {
973
700
  // For some reason, spawned pits start with a collision class of `NONE`, so we have to manually
974
701
  // set it.
975
702
  const pit = gridEntity.ToPit();
@@ -977,10 +704,10 @@ function spawnGridEntityWithVariant(gridEntityType, variant, gridIndexOrPosition
977
704
  pit.UpdateCollision();
978
705
  }
979
706
  }
980
- else if (gridEntityType === isaac_typescript_definitions_1.GridEntityType.WALL) {
707
+ else if (gridEntityType === GridEntityType.WALL) {
981
708
  // For some reason, spawned walls start with a collision class of `NONE`, so we have to manually
982
709
  // set it.
983
- gridEntity.CollisionClass = isaac_typescript_definitions_1.GridCollisionClass.WALL;
710
+ gridEntity.CollisionClass = GridCollisionClass.WALL;
984
711
  }
985
712
  return gridEntity;
986
713
  }
@@ -988,8 +715,8 @@ function spawnGridEntityWithVariant(gridEntityType, variant, gridIndexOrPosition
988
715
  * Helper function to spawn a Void Portal. This is more complicated than simply spawning a trapdoor
989
716
  * with the appropriate variant, as the game does not give it the correct sprite automatically.
990
717
  */
991
- function spawnVoidPortal(gridIndex) {
992
- const voidPortal = spawnGridEntityWithVariant(isaac_typescript_definitions_1.GridEntityType.TRAPDOOR, isaac_typescript_definitions_1.TrapdoorVariant.VOID_PORTAL, gridIndex);
718
+ export function spawnVoidPortal(gridIndex) {
719
+ const voidPortal = spawnGridEntityWithVariant(GridEntityType.TRAPDOOR, TrapdoorVariant.VOID_PORTAL, gridIndex);
993
720
  if (voidPortal === undefined) {
994
721
  return voidPortal;
995
722
  }
@@ -1000,3 +727,241 @@ function spawnVoidPortal(gridIndex) {
1000
727
  sprite.Load("gfx/grid/voidtrapdoor.anm2", true);
1001
728
  return voidPortal;
1002
729
  }
730
+ function getAllGridEntities() {
731
+ const room = game.GetRoom();
732
+ const gridEntities = [];
733
+ for (const gridIndex of getAllGridIndexes()) {
734
+ const gridEntity = room.GetGridEntity(gridIndex);
735
+ if (gridEntity !== undefined) {
736
+ gridEntities.push(gridEntity);
737
+ }
738
+ }
739
+ return gridEntities;
740
+ }
741
+ function getGridEntityANM2Name(gridEntityType) {
742
+ switch (gridEntityType) {
743
+ // 1
744
+ case GridEntityType.DECORATION: {
745
+ return getGridEntityANM2NameDecoration();
746
+ }
747
+ default: {
748
+ return GRID_ENTITY_TYPE_TO_ANM2_NAME[gridEntityType];
749
+ }
750
+ }
751
+ }
752
+ /**
753
+ * Helper function to get the ANM2 path for a decoration. This depends on the current room's
754
+ * backdrop. The values are taken from the "backdrops.xml" file.
755
+ */
756
+ function getGridEntityANM2NameDecoration() {
757
+ const room = game.GetRoom();
758
+ const backdropType = room.GetBackdropType();
759
+ switch (backdropType) {
760
+ // 1, 2, 3, 36, 49, 52
761
+ case BackdropType.BASEMENT:
762
+ case BackdropType.CELLAR:
763
+ case BackdropType.BURNING_BASEMENT:
764
+ case BackdropType.DOWNPOUR_ENTRANCE:
765
+ case BackdropType.ISAACS_BEDROOM:
766
+ case BackdropType.CLOSET: {
767
+ return "Props_01_Basement.anm2";
768
+ }
769
+ // 4, 5, 6, 37
770
+ case BackdropType.CAVES:
771
+ case BackdropType.CATACOMBS:
772
+ case BackdropType.FLOODED_CAVES:
773
+ case BackdropType.MINES_ENTRANCE: {
774
+ return "Props_03_Caves.anm2";
775
+ }
776
+ // 7, 8, 9, 30, 33, 38, 39, 40, 41, 42, 53, 60
777
+ case BackdropType.DEPTHS:
778
+ case BackdropType.NECROPOLIS:
779
+ case BackdropType.DANK_DEPTHS:
780
+ case BackdropType.SACRIFICE:
781
+ case BackdropType.MAUSOLEUM:
782
+ case BackdropType.MAUSOLEUM_ENTRANCE:
783
+ case BackdropType.CORPSE_ENTRANCE:
784
+ case BackdropType.MAUSOLEUM_2:
785
+ case BackdropType.MAUSOLEUM_3:
786
+ case BackdropType.MAUSOLEUM_4:
787
+ case BackdropType.CLOSET_B:
788
+ case BackdropType.DARK_CLOSET: {
789
+ return "Props_05_Depths.anm2";
790
+ }
791
+ // 10, 12
792
+ case BackdropType.WOMB:
793
+ case BackdropType.SCARRED_WOMB: {
794
+ return "Props_07_The Womb.anm2";
795
+ }
796
+ // 11
797
+ case BackdropType.UTERO: {
798
+ return "Props_07_Utero.anm2";
799
+ }
800
+ // 13, 27
801
+ case BackdropType.BLUE_WOMB:
802
+ case BackdropType.BLUE_WOMB_PASS: {
803
+ return "Props_07_The Womb_blue.anm2";
804
+ }
805
+ // 14, 47
806
+ case BackdropType.SHEOL:
807
+ case BackdropType.GEHENNA: {
808
+ return "Props_09_Sheol.anm2";
809
+ }
810
+ // 15
811
+ case BackdropType.CATHEDRAL: {
812
+ return "Props_10_Cathedral.anm2";
813
+ }
814
+ // 17
815
+ case BackdropType.CHEST: {
816
+ return "Props_11_The Chest.anm2";
817
+ }
818
+ // 28
819
+ case BackdropType.GREED_SHOP: {
820
+ return "Props_12_Greed.anm2";
821
+ }
822
+ // 31
823
+ case BackdropType.DOWNPOUR: {
824
+ return "props_01x_downpour.anm2";
825
+ }
826
+ // 32, 46, 58, 59
827
+ case BackdropType.MINES:
828
+ case BackdropType.ASHPIT:
829
+ case BackdropType.MINES_SHAFT:
830
+ case BackdropType.ASHPIT_SHAFT: {
831
+ return "props_03x_mines.anm2";
832
+ }
833
+ // 34, 43, 44, 48
834
+ case BackdropType.CORPSE:
835
+ case BackdropType.CORPSE_2:
836
+ case BackdropType.CORPSE_3:
837
+ case BackdropType.MORTIS: {
838
+ return "props_07_the corpse.anm2";
839
+ }
840
+ // 45
841
+ case BackdropType.DROSS: {
842
+ return "props_02x_dross.anm2";
843
+ }
844
+ default: {
845
+ return "Props_01_Basement.anm2";
846
+ }
847
+ }
848
+ }
849
+ function getRockPNGName() {
850
+ const room = game.GetRoom();
851
+ const backdropType = room.GetBackdropType();
852
+ switch (backdropType) {
853
+ // 1, 17
854
+ case BackdropType.BASEMENT:
855
+ case BackdropType.CHEST: {
856
+ return "rocks_basement.png";
857
+ }
858
+ // 2
859
+ case BackdropType.CELLAR: {
860
+ return "rocks_cellar.png";
861
+ }
862
+ // 3
863
+ case BackdropType.BURNING_BASEMENT: {
864
+ return "rocks_burningbasement.png"; // cspell:ignore burningbasement
865
+ }
866
+ // 4
867
+ case BackdropType.CAVES: {
868
+ return "rocks_caves.png";
869
+ }
870
+ // 5
871
+ case BackdropType.CATACOMBS: {
872
+ return "rocks_catacombs.png";
873
+ }
874
+ // 6
875
+ case BackdropType.FLOODED_CAVES: {
876
+ return "rocks_drownedcaves.png"; // cspell:ignore drownedcaves
877
+ }
878
+ // 7, 8, 9, 30, 60
879
+ case BackdropType.DEPTHS:
880
+ case BackdropType.NECROPOLIS:
881
+ case BackdropType.DANK_DEPTHS:
882
+ case BackdropType.SACRIFICE:
883
+ case BackdropType.DARK_CLOSET: {
884
+ return "rocks_depths.png";
885
+ }
886
+ // 10
887
+ case BackdropType.WOMB: {
888
+ return "rocks_womb.png";
889
+ }
890
+ // 11
891
+ case BackdropType.UTERO: {
892
+ return "rocks_utero.png";
893
+ }
894
+ // 12
895
+ case BackdropType.SCARRED_WOMB: {
896
+ return "rocks_scarredwomb.png"; // cspell:ignore scarredwomb
897
+ }
898
+ // 13, 27
899
+ case BackdropType.BLUE_WOMB:
900
+ case BackdropType.BLUE_WOMB_PASS: {
901
+ return "rocks_bluewomb.png"; // cspell:ignore bluewomb
902
+ }
903
+ // 14, 16
904
+ case BackdropType.SHEOL:
905
+ case BackdropType.DARK_ROOM: {
906
+ return "rocks_sheol.png";
907
+ }
908
+ // 15, 35
909
+ case BackdropType.CATHEDRAL:
910
+ case BackdropType.PLANETARIUM: {
911
+ return "rocks_cathedral.png";
912
+ }
913
+ // 23, 32, 37, 58
914
+ case BackdropType.SECRET:
915
+ case BackdropType.MINES:
916
+ case BackdropType.MINES_ENTRANCE:
917
+ case BackdropType.MINES_SHAFT: {
918
+ return "rocks_secretroom.png"; // cspell:ignore secretroom
919
+ }
920
+ // 31, 36
921
+ case BackdropType.DOWNPOUR:
922
+ case BackdropType.DOWNPOUR_ENTRANCE: {
923
+ return "rocks_downpour.png";
924
+ }
925
+ // 33, 38, 40, 41, 42
926
+ case BackdropType.MAUSOLEUM:
927
+ case BackdropType.MAUSOLEUM_ENTRANCE:
928
+ case BackdropType.MAUSOLEUM_2:
929
+ case BackdropType.MAUSOLEUM_3:
930
+ case BackdropType.MAUSOLEUM_4: {
931
+ return "rocks_mausoleum.png";
932
+ }
933
+ // 34, 48
934
+ case BackdropType.CORPSE:
935
+ case BackdropType.MORTIS: {
936
+ return "rocks_corpse.png";
937
+ }
938
+ // 39
939
+ case BackdropType.CORPSE_ENTRANCE: {
940
+ return "rocks_corpseentrance.png"; // cspell:ignore corpseentrance
941
+ }
942
+ // 43
943
+ case BackdropType.CORPSE_2: {
944
+ return "rocks_corpse2.png";
945
+ }
946
+ // 44
947
+ case BackdropType.CORPSE_3: {
948
+ return "rocks_corpse3.png";
949
+ }
950
+ // 45
951
+ case BackdropType.DROSS: {
952
+ return "rocks_dross.png";
953
+ }
954
+ // 46, 59
955
+ case BackdropType.ASHPIT:
956
+ case BackdropType.ASHPIT_SHAFT: {
957
+ return "rocks_ashpit.png";
958
+ }
959
+ // 47
960
+ case BackdropType.GEHENNA: {
961
+ return "rocks_gehenna.png";
962
+ }
963
+ default: {
964
+ return "rocks_basement.png";
965
+ }
966
+ }
967
+ }