isaacscript-common 6.20.2 → 6.22.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1073) hide show
  1. package/dist/callbacks/customRevive.d.ts +2 -1
  2. package/dist/callbacks/customRevive.d.ts.map +1 -1
  3. package/dist/callbacks/customRevive.lua +1 -3
  4. package/dist/callbacks/itemPickup.d.ts +2 -1
  5. package/dist/callbacks/itemPickup.d.ts.map +1 -1
  6. package/dist/callbacks/itemPickup.lua +0 -2
  7. package/dist/callbacks/postAmbush.d.ts +2 -1
  8. package/dist/callbacks/postAmbush.d.ts.map +1 -1
  9. package/dist/callbacks/postAmbush.lua +1 -3
  10. package/dist/callbacks/postBombExploded.d.ts +2 -1
  11. package/dist/callbacks/postBombExploded.d.ts.map +1 -1
  12. package/dist/callbacks/postBombExploded.lua +1 -3
  13. package/dist/callbacks/postBombInitLate.d.ts +2 -1
  14. package/dist/callbacks/postBombInitLate.d.ts.map +1 -1
  15. package/dist/callbacks/postBombInitLate.lua +0 -2
  16. package/dist/callbacks/postBoneSwing.d.ts +2 -1
  17. package/dist/callbacks/postBoneSwing.d.ts.map +1 -1
  18. package/dist/callbacks/postBoneSwing.lua +0 -2
  19. package/dist/callbacks/postCollectibleEmpty.d.ts +2 -1
  20. package/dist/callbacks/postCollectibleEmpty.d.ts.map +1 -1
  21. package/dist/callbacks/postCollectibleEmpty.lua +0 -2
  22. package/dist/callbacks/postCollectibleInitFirst.d.ts +2 -1
  23. package/dist/callbacks/postCollectibleInitFirst.d.ts.map +1 -1
  24. package/dist/callbacks/postCollectibleInitFirst.lua +0 -2
  25. package/dist/callbacks/postCursedTeleport.d.ts +2 -1
  26. package/dist/callbacks/postCursedTeleport.d.ts.map +1 -1
  27. package/dist/callbacks/postCursedTeleport.lua +1 -3
  28. package/dist/callbacks/postCustomDoorEnter.d.ts +3 -48
  29. package/dist/callbacks/postCustomDoorEnter.d.ts.map +1 -1
  30. package/dist/callbacks/postCustomDoorEnter.lua +3 -47
  31. package/dist/callbacks/postDiceRoomActivated.d.ts +2 -1
  32. package/dist/callbacks/postDiceRoomActivated.d.ts.map +1 -1
  33. package/dist/callbacks/postDiceRoomActivated.lua +0 -2
  34. package/dist/callbacks/postDoorRender.d.ts +2 -1
  35. package/dist/callbacks/postDoorRender.d.ts.map +1 -1
  36. package/dist/callbacks/postDoorRender.lua +0 -2
  37. package/dist/callbacks/postDoorUpdate.d.ts +2 -1
  38. package/dist/callbacks/postDoorUpdate.d.ts.map +1 -1
  39. package/dist/callbacks/postDoorUpdate.lua +0 -2
  40. package/dist/callbacks/postEffectInitLate.d.ts +2 -1
  41. package/dist/callbacks/postEffectInitLate.d.ts.map +1 -1
  42. package/dist/callbacks/postEffectInitLate.lua +0 -2
  43. package/dist/callbacks/postEffectStateChanged.d.ts +2 -1
  44. package/dist/callbacks/postEffectStateChanged.d.ts.map +1 -1
  45. package/dist/callbacks/postEffectStateChanged.lua +0 -2
  46. package/dist/callbacks/postEsauJr.d.ts +2 -1
  47. package/dist/callbacks/postEsauJr.d.ts.map +1 -1
  48. package/dist/callbacks/postEsauJr.lua +1 -3
  49. package/dist/callbacks/postFamiliarInitLate.d.ts +2 -1
  50. package/dist/callbacks/postFamiliarInitLate.d.ts.map +1 -1
  51. package/dist/callbacks/postFamiliarInitLate.lua +0 -2
  52. package/dist/callbacks/postFamiliarStateChanged.d.ts +2 -1
  53. package/dist/callbacks/postFamiliarStateChanged.d.ts.map +1 -1
  54. package/dist/callbacks/postFamiliarStateChanged.lua +0 -2
  55. package/dist/callbacks/postFlip.d.ts +2 -1
  56. package/dist/callbacks/postFlip.d.ts.map +1 -1
  57. package/dist/callbacks/postFlip.lua +0 -2
  58. package/dist/callbacks/postGreedModeWave.d.ts +2 -1
  59. package/dist/callbacks/postGreedModeWave.d.ts.map +1 -1
  60. package/dist/callbacks/postGreedModeWave.lua +1 -3
  61. package/dist/callbacks/postGridEntity.d.ts +2 -1
  62. package/dist/callbacks/postGridEntity.d.ts.map +1 -1
  63. package/dist/callbacks/postGridEntity.lua +0 -2
  64. package/dist/callbacks/postGridEntityCollision.d.ts +2 -1
  65. package/dist/callbacks/postGridEntityCollision.d.ts.map +1 -1
  66. package/dist/callbacks/postGridEntityCollision.lua +0 -2
  67. package/dist/callbacks/postGridEntityCustomCollision.d.ts +2 -1
  68. package/dist/callbacks/postGridEntityCustomCollision.d.ts.map +1 -1
  69. package/dist/callbacks/postGridEntityCustomCollision.lua +0 -2
  70. package/dist/callbacks/postGridEntityCustomRender.d.ts +2 -1
  71. package/dist/callbacks/postGridEntityCustomRender.d.ts.map +1 -1
  72. package/dist/callbacks/postGridEntityCustomRender.lua +0 -2
  73. package/dist/callbacks/postGridEntityCustomUpdate.d.ts +2 -1
  74. package/dist/callbacks/postGridEntityCustomUpdate.d.ts.map +1 -1
  75. package/dist/callbacks/postGridEntityCustomUpdate.lua +0 -2
  76. package/dist/callbacks/postGridEntityRender.d.ts +2 -1
  77. package/dist/callbacks/postGridEntityRender.d.ts.map +1 -1
  78. package/dist/callbacks/postGridEntityRender.lua +0 -2
  79. package/dist/callbacks/postHolyMantleRemoved.d.ts +2 -1
  80. package/dist/callbacks/postHolyMantleRemoved.d.ts.map +1 -1
  81. package/dist/callbacks/postHolyMantleRemoved.lua +0 -2
  82. package/dist/callbacks/postItemDischarged.d.ts.map +1 -1
  83. package/dist/callbacks/postItemDischarged.lua +16 -16
  84. package/dist/callbacks/postKnifeInitLate.d.ts +2 -1
  85. package/dist/callbacks/postKnifeInitLate.d.ts.map +1 -1
  86. package/dist/callbacks/postKnifeInitLate.lua +0 -2
  87. package/dist/callbacks/postLaserInitLate.d.ts +2 -1
  88. package/dist/callbacks/postLaserInitLate.d.ts.map +1 -1
  89. package/dist/callbacks/postLaserInitLate.lua +0 -2
  90. package/dist/callbacks/postNPCInitLate.d.ts +2 -1
  91. package/dist/callbacks/postNPCInitLate.d.ts.map +1 -1
  92. package/dist/callbacks/postNPCInitLate.lua +0 -2
  93. package/dist/callbacks/postNPCStateChanged.d.ts +2 -1
  94. package/dist/callbacks/postNPCStateChanged.d.ts.map +1 -1
  95. package/dist/callbacks/postNPCStateChanged.lua +0 -2
  96. package/dist/callbacks/postNewRoomEarly.d.ts +2 -1
  97. package/dist/callbacks/postNewRoomEarly.d.ts.map +1 -1
  98. package/dist/callbacks/postNewRoomEarly.lua +1 -3
  99. package/dist/callbacks/postPickupCollect.d.ts +2 -1
  100. package/dist/callbacks/postPickupCollect.d.ts.map +1 -1
  101. package/dist/callbacks/postPickupCollect.lua +0 -2
  102. package/dist/callbacks/postPickupInitFirst.d.ts +2 -1
  103. package/dist/callbacks/postPickupInitFirst.d.ts.map +1 -1
  104. package/dist/callbacks/postPickupInitFirst.lua +1 -3
  105. package/dist/callbacks/postPickupInitLate.d.ts +2 -1
  106. package/dist/callbacks/postPickupInitLate.d.ts.map +1 -1
  107. package/dist/callbacks/postPickupInitLate.lua +0 -2
  108. package/dist/callbacks/postPickupStateChanged.d.ts +2 -1
  109. package/dist/callbacks/postPickupStateChanged.d.ts.map +1 -1
  110. package/dist/callbacks/postPickupStateChanged.lua +0 -2
  111. package/dist/callbacks/postPitRender.d.ts +2 -1
  112. package/dist/callbacks/postPitRender.d.ts.map +1 -1
  113. package/dist/callbacks/postPitRender.lua +0 -2
  114. package/dist/callbacks/postPitUpdate.d.ts +2 -1
  115. package/dist/callbacks/postPitUpdate.d.ts.map +1 -1
  116. package/dist/callbacks/postPitUpdate.lua +0 -2
  117. package/dist/callbacks/postPlayerChangeHealth.d.ts +2 -1
  118. package/dist/callbacks/postPlayerChangeHealth.d.ts.map +1 -1
  119. package/dist/callbacks/postPlayerChangeHealth.lua +0 -2
  120. package/dist/callbacks/postPlayerChangeType.d.ts +2 -1
  121. package/dist/callbacks/postPlayerChangeType.d.ts.map +1 -1
  122. package/dist/callbacks/postPlayerChangeType.lua +0 -2
  123. package/dist/callbacks/postPlayerCollectible.d.ts +2 -1
  124. package/dist/callbacks/postPlayerCollectible.d.ts.map +1 -1
  125. package/dist/callbacks/postPlayerCollectible.lua +0 -2
  126. package/dist/callbacks/postPlayerFatalDamage.d.ts +2 -1
  127. package/dist/callbacks/postPlayerFatalDamage.d.ts.map +1 -1
  128. package/dist/callbacks/postPlayerFatalDamage.lua +1 -3
  129. package/dist/callbacks/postPlayerInitFirst.d.ts +2 -1
  130. package/dist/callbacks/postPlayerInitFirst.d.ts.map +1 -1
  131. package/dist/callbacks/postPlayerInitFirst.lua +0 -2
  132. package/dist/callbacks/postPlayerInitLate.d.ts +2 -1
  133. package/dist/callbacks/postPlayerInitLate.d.ts.map +1 -1
  134. package/dist/callbacks/postPlayerInitLate.lua +0 -2
  135. package/dist/callbacks/postPlayerReorderedCallbacks.d.ts +2 -1
  136. package/dist/callbacks/postPlayerReorderedCallbacks.d.ts.map +1 -1
  137. package/dist/callbacks/postPlayerReorderedCallbacks.lua +0 -2
  138. package/dist/callbacks/postPoopRender.d.ts +2 -1
  139. package/dist/callbacks/postPoopRender.d.ts.map +1 -1
  140. package/dist/callbacks/postPoopRender.lua +0 -2
  141. package/dist/callbacks/postPoopUpdate.d.ts +2 -1
  142. package/dist/callbacks/postPoopUpdate.d.ts.map +1 -1
  143. package/dist/callbacks/postPoopUpdate.lua +0 -2
  144. package/dist/callbacks/postPressurePlateRender.d.ts +2 -1
  145. package/dist/callbacks/postPressurePlateRender.d.ts.map +1 -1
  146. package/dist/callbacks/postPressurePlateRender.lua +0 -2
  147. package/dist/callbacks/postPressurePlateUpdate.d.ts +2 -1
  148. package/dist/callbacks/postPressurePlateUpdate.d.ts.map +1 -1
  149. package/dist/callbacks/postPressurePlateUpdate.lua +0 -2
  150. package/dist/callbacks/postProjectileInitLate.d.ts +2 -1
  151. package/dist/callbacks/postProjectileInitLate.d.ts.map +1 -1
  152. package/dist/callbacks/postProjectileInitLate.lua +0 -2
  153. package/dist/callbacks/postPurchase.d.ts +2 -1
  154. package/dist/callbacks/postPurchase.d.ts.map +1 -1
  155. package/dist/callbacks/postPurchase.lua +0 -2
  156. package/dist/callbacks/postRockRender.d.ts +2 -1
  157. package/dist/callbacks/postRockRender.d.ts.map +1 -1
  158. package/dist/callbacks/postRockRender.lua +0 -2
  159. package/dist/callbacks/postRockUpdate.d.ts +2 -1
  160. package/dist/callbacks/postRockUpdate.d.ts.map +1 -1
  161. package/dist/callbacks/postRockUpdate.lua +0 -2
  162. package/dist/callbacks/postRoomClearChanged.d.ts +2 -1
  163. package/dist/callbacks/postRoomClearChanged.d.ts.map +1 -1
  164. package/dist/callbacks/postRoomClearChanged.lua +1 -3
  165. package/dist/callbacks/postSacrifice.d.ts +2 -1
  166. package/dist/callbacks/postSacrifice.d.ts.map +1 -1
  167. package/dist/callbacks/postSacrifice.lua +1 -3
  168. package/dist/callbacks/postSlotDestroyed.d.ts +2 -1
  169. package/dist/callbacks/postSlotDestroyed.d.ts.map +1 -1
  170. package/dist/callbacks/postSlotDestroyed.lua +1 -3
  171. package/dist/callbacks/postSlotInitUpdate.d.ts +2 -1
  172. package/dist/callbacks/postSlotInitUpdate.d.ts.map +1 -1
  173. package/dist/callbacks/postSlotInitUpdate.lua +0 -2
  174. package/dist/callbacks/postSlotRender.d.ts +2 -1
  175. package/dist/callbacks/postSlotRender.d.ts.map +1 -1
  176. package/dist/callbacks/postSlotRender.lua +0 -2
  177. package/dist/callbacks/postSpikesRender.d.ts +2 -1
  178. package/dist/callbacks/postSpikesRender.d.ts.map +1 -1
  179. package/dist/callbacks/postSpikesRender.lua +0 -2
  180. package/dist/callbacks/postSpikesUpdate.d.ts +2 -1
  181. package/dist/callbacks/postSpikesUpdate.d.ts.map +1 -1
  182. package/dist/callbacks/postSpikesUpdate.lua +0 -2
  183. package/dist/callbacks/postTNTRender.d.ts +2 -1
  184. package/dist/callbacks/postTNTRender.d.ts.map +1 -1
  185. package/dist/callbacks/postTNTRender.lua +0 -2
  186. package/dist/callbacks/postTNTUpdate.d.ts +2 -1
  187. package/dist/callbacks/postTNTUpdate.d.ts.map +1 -1
  188. package/dist/callbacks/postTNTUpdate.lua +0 -2
  189. package/dist/callbacks/postTearInitLate.d.ts +2 -1
  190. package/dist/callbacks/postTearInitLate.d.ts.map +1 -1
  191. package/dist/callbacks/postTearInitLate.lua +0 -2
  192. package/dist/callbacks/postTearInitVeryLate.d.ts +2 -1
  193. package/dist/callbacks/postTearInitVeryLate.d.ts.map +1 -1
  194. package/dist/callbacks/postTearInitVeryLate.lua +0 -2
  195. package/dist/callbacks/postTransformation.d.ts +2 -1
  196. package/dist/callbacks/postTransformation.d.ts.map +1 -1
  197. package/dist/callbacks/postTransformation.lua +0 -2
  198. package/dist/callbacks/postTrinketBreak.d.ts +2 -1
  199. package/dist/callbacks/postTrinketBreak.d.ts.map +1 -1
  200. package/dist/callbacks/postTrinketBreak.lua +0 -2
  201. package/dist/callbacks/preBerserkDeath.d.ts +2 -1
  202. package/dist/callbacks/preBerserkDeath.d.ts.map +1 -1
  203. package/dist/callbacks/preBerserkDeath.lua +0 -2
  204. package/dist/callbacks/preNewLevel.d.ts +2 -1
  205. package/dist/callbacks/preNewLevel.d.ts.map +1 -1
  206. package/dist/callbacks/preNewLevel.lua +0 -2
  207. package/dist/callbacks/reorderedCallbacks.d.ts +4 -28
  208. package/dist/callbacks/reorderedCallbacks.d.ts.map +1 -1
  209. package/dist/callbacks/reorderedCallbacks.lua +4 -25
  210. package/dist/callbacks/subscriptions/postAmbushFinished.d.ts +3 -0
  211. package/dist/callbacks/subscriptions/postAmbushFinished.d.ts.map +1 -1
  212. package/dist/callbacks/subscriptions/postAmbushFinished.lua +0 -6
  213. package/dist/callbacks/subscriptions/postAmbushStarted.d.ts +3 -0
  214. package/dist/callbacks/subscriptions/postAmbushStarted.d.ts.map +1 -1
  215. package/dist/callbacks/subscriptions/postAmbushStarted.lua +0 -6
  216. package/dist/callbacks/subscriptions/postBombInitLate.d.ts +3 -0
  217. package/dist/callbacks/subscriptions/postBombInitLate.d.ts.map +1 -1
  218. package/dist/callbacks/subscriptions/postBombInitLate.lua +0 -6
  219. package/dist/callbacks/subscriptions/postBoneExploded.d.ts +3 -0
  220. package/dist/callbacks/subscriptions/postBoneExploded.d.ts.map +1 -1
  221. package/dist/callbacks/subscriptions/postBoneExploded.lua +0 -6
  222. package/dist/callbacks/subscriptions/postBoneSwing.d.ts +3 -0
  223. package/dist/callbacks/subscriptions/postBoneSwing.d.ts.map +1 -1
  224. package/dist/callbacks/subscriptions/postBoneSwing.lua +0 -6
  225. package/dist/callbacks/subscriptions/postCollectibleEmpty.d.ts +3 -0
  226. package/dist/callbacks/subscriptions/postCollectibleEmpty.d.ts.map +1 -1
  227. package/dist/callbacks/subscriptions/postCollectibleEmpty.lua +0 -6
  228. package/dist/callbacks/subscriptions/postCollectibleInitFirst.d.ts +3 -0
  229. package/dist/callbacks/subscriptions/postCollectibleInitFirst.d.ts.map +1 -1
  230. package/dist/callbacks/subscriptions/postCollectibleInitFirst.lua +0 -6
  231. package/dist/callbacks/subscriptions/postCursedTeleport.d.ts +3 -0
  232. package/dist/callbacks/subscriptions/postCursedTeleport.d.ts.map +1 -1
  233. package/dist/callbacks/subscriptions/postCursedTeleport.lua +0 -6
  234. package/dist/callbacks/subscriptions/postCustomDoorEnter.d.ts +3 -0
  235. package/dist/callbacks/subscriptions/postCustomDoorEnter.d.ts.map +1 -1
  236. package/dist/callbacks/subscriptions/postCustomDoorEnter.lua +0 -6
  237. package/dist/callbacks/subscriptions/postCustomRevive.d.ts +3 -0
  238. package/dist/callbacks/subscriptions/postCustomRevive.d.ts.map +1 -1
  239. package/dist/callbacks/subscriptions/postCustomRevive.lua +0 -6
  240. package/dist/callbacks/subscriptions/postDiceRoomActivated.d.ts +3 -0
  241. package/dist/callbacks/subscriptions/postDiceRoomActivated.d.ts.map +1 -1
  242. package/dist/callbacks/subscriptions/postDiceRoomActivated.lua +0 -6
  243. package/dist/callbacks/subscriptions/postDoorRender.d.ts +3 -0
  244. package/dist/callbacks/subscriptions/postDoorRender.d.ts.map +1 -1
  245. package/dist/callbacks/subscriptions/postDoorRender.lua +0 -6
  246. package/dist/callbacks/subscriptions/postDoorUpdate.d.ts +3 -0
  247. package/dist/callbacks/subscriptions/postDoorUpdate.d.ts.map +1 -1
  248. package/dist/callbacks/subscriptions/postDoorUpdate.lua +0 -6
  249. package/dist/callbacks/subscriptions/postEffectInitLate.d.ts +3 -0
  250. package/dist/callbacks/subscriptions/postEffectInitLate.d.ts.map +1 -1
  251. package/dist/callbacks/subscriptions/postEffectInitLate.lua +0 -6
  252. package/dist/callbacks/subscriptions/postEffectStateChanged.d.ts +3 -0
  253. package/dist/callbacks/subscriptions/postEffectStateChanged.d.ts.map +1 -1
  254. package/dist/callbacks/subscriptions/postEffectStateChanged.lua +0 -6
  255. package/dist/callbacks/subscriptions/postEsauJr.d.ts +3 -0
  256. package/dist/callbacks/subscriptions/postEsauJr.d.ts.map +1 -1
  257. package/dist/callbacks/subscriptions/postEsauJr.lua +0 -6
  258. package/dist/callbacks/subscriptions/postFamiliarInitLate.d.ts +3 -0
  259. package/dist/callbacks/subscriptions/postFamiliarInitLate.d.ts.map +1 -1
  260. package/dist/callbacks/subscriptions/postFamiliarInitLate.lua +0 -6
  261. package/dist/callbacks/subscriptions/postFamiliarStateChanged.d.ts +3 -0
  262. package/dist/callbacks/subscriptions/postFamiliarStateChanged.d.ts.map +1 -1
  263. package/dist/callbacks/subscriptions/postFamiliarStateChanged.lua +0 -6
  264. package/dist/callbacks/subscriptions/postFirstEsauJr.d.ts +3 -0
  265. package/dist/callbacks/subscriptions/postFirstEsauJr.d.ts.map +1 -1
  266. package/dist/callbacks/subscriptions/postFirstEsauJr.lua +0 -6
  267. package/dist/callbacks/subscriptions/postFirstFlip.d.ts +3 -0
  268. package/dist/callbacks/subscriptions/postFirstFlip.d.ts.map +1 -1
  269. package/dist/callbacks/subscriptions/postFirstFlip.lua +0 -6
  270. package/dist/callbacks/subscriptions/postFlip.d.ts +3 -0
  271. package/dist/callbacks/subscriptions/postFlip.d.ts.map +1 -1
  272. package/dist/callbacks/subscriptions/postFlip.lua +0 -6
  273. package/dist/callbacks/subscriptions/postGameStartedReordered.d.ts +3 -0
  274. package/dist/callbacks/subscriptions/postGameStartedReordered.d.ts.map +1 -1
  275. package/dist/callbacks/subscriptions/postGameStartedReordered.lua +0 -6
  276. package/dist/callbacks/subscriptions/postGreedModeWave.d.ts +3 -0
  277. package/dist/callbacks/subscriptions/postGreedModeWave.d.ts.map +1 -1
  278. package/dist/callbacks/subscriptions/postGreedModeWave.lua +0 -6
  279. package/dist/callbacks/subscriptions/postGridEntityBroken.d.ts +3 -0
  280. package/dist/callbacks/subscriptions/postGridEntityBroken.d.ts.map +1 -1
  281. package/dist/callbacks/subscriptions/postGridEntityBroken.lua +0 -6
  282. package/dist/callbacks/subscriptions/postGridEntityCollision.d.ts +3 -0
  283. package/dist/callbacks/subscriptions/postGridEntityCollision.d.ts.map +1 -1
  284. package/dist/callbacks/subscriptions/postGridEntityCollision.lua +0 -6
  285. package/dist/callbacks/subscriptions/postGridEntityCustomBroken.d.ts +2 -0
  286. package/dist/callbacks/subscriptions/postGridEntityCustomBroken.d.ts.map +1 -1
  287. package/dist/callbacks/subscriptions/postGridEntityCustomBroken.lua +0 -4
  288. package/dist/callbacks/subscriptions/postGridEntityCustomCollision.d.ts +3 -0
  289. package/dist/callbacks/subscriptions/postGridEntityCustomCollision.d.ts.map +1 -1
  290. package/dist/callbacks/subscriptions/postGridEntityCustomCollision.lua +0 -6
  291. package/dist/callbacks/subscriptions/postGridEntityCustomRender.d.ts +3 -0
  292. package/dist/callbacks/subscriptions/postGridEntityCustomRender.d.ts.map +1 -1
  293. package/dist/callbacks/subscriptions/postGridEntityCustomRender.lua +0 -6
  294. package/dist/callbacks/subscriptions/postGridEntityCustomUpdate.d.ts +3 -0
  295. package/dist/callbacks/subscriptions/postGridEntityCustomUpdate.d.ts.map +1 -1
  296. package/dist/callbacks/subscriptions/postGridEntityCustomUpdate.lua +0 -6
  297. package/dist/callbacks/subscriptions/postGridEntityInit.d.ts +3 -0
  298. package/dist/callbacks/subscriptions/postGridEntityInit.d.ts.map +1 -1
  299. package/dist/callbacks/subscriptions/postGridEntityInit.lua +0 -6
  300. package/dist/callbacks/subscriptions/postGridEntityRemove.d.ts +3 -0
  301. package/dist/callbacks/subscriptions/postGridEntityRemove.d.ts.map +1 -1
  302. package/dist/callbacks/subscriptions/postGridEntityRemove.lua +0 -6
  303. package/dist/callbacks/subscriptions/postGridEntityRender.d.ts +3 -0
  304. package/dist/callbacks/subscriptions/postGridEntityRender.d.ts.map +1 -1
  305. package/dist/callbacks/subscriptions/postGridEntityRender.lua +0 -6
  306. package/dist/callbacks/subscriptions/postGridEntityStateChanged.d.ts +3 -0
  307. package/dist/callbacks/subscriptions/postGridEntityStateChanged.d.ts.map +1 -1
  308. package/dist/callbacks/subscriptions/postGridEntityStateChanged.lua +0 -6
  309. package/dist/callbacks/subscriptions/postGridEntityUpdate.d.ts +3 -0
  310. package/dist/callbacks/subscriptions/postGridEntityUpdate.d.ts.map +1 -1
  311. package/dist/callbacks/subscriptions/postGridEntityUpdate.lua +0 -6
  312. package/dist/callbacks/subscriptions/postHolyMantleRemoved.d.ts +3 -0
  313. package/dist/callbacks/subscriptions/postHolyMantleRemoved.d.ts.map +1 -1
  314. package/dist/callbacks/subscriptions/postHolyMantleRemoved.lua +0 -6
  315. package/dist/callbacks/subscriptions/postItemDischarged.d.ts +3 -0
  316. package/dist/callbacks/subscriptions/postItemDischarged.d.ts.map +1 -1
  317. package/dist/callbacks/subscriptions/postItemDischarged.lua +0 -6
  318. package/dist/callbacks/subscriptions/postItemPickup.d.ts +3 -0
  319. package/dist/callbacks/subscriptions/postItemPickup.d.ts.map +1 -1
  320. package/dist/callbacks/subscriptions/postItemPickup.lua +0 -6
  321. package/dist/callbacks/subscriptions/postKnifeInitLate.d.ts +3 -0
  322. package/dist/callbacks/subscriptions/postKnifeInitLate.d.ts.map +1 -1
  323. package/dist/callbacks/subscriptions/postKnifeInitLate.lua +0 -6
  324. package/dist/callbacks/subscriptions/postLaserInitLate.d.ts +3 -0
  325. package/dist/callbacks/subscriptions/postLaserInitLate.d.ts.map +1 -1
  326. package/dist/callbacks/subscriptions/postLaserInitLate.lua +0 -6
  327. package/dist/callbacks/subscriptions/postNPCInitLate.d.ts +3 -0
  328. package/dist/callbacks/subscriptions/postNPCInitLate.d.ts.map +1 -1
  329. package/dist/callbacks/subscriptions/postNPCInitLate.lua +0 -6
  330. package/dist/callbacks/subscriptions/postNPCStateChanged.d.ts +3 -0
  331. package/dist/callbacks/subscriptions/postNPCStateChanged.d.ts.map +1 -1
  332. package/dist/callbacks/subscriptions/postNPCStateChanged.lua +0 -6
  333. package/dist/callbacks/subscriptions/postNewLevelReordered.d.ts +3 -0
  334. package/dist/callbacks/subscriptions/postNewLevelReordered.d.ts.map +1 -1
  335. package/dist/callbacks/subscriptions/postNewLevelReordered.lua +0 -6
  336. package/dist/callbacks/subscriptions/postNewRoomEarly.d.ts +3 -0
  337. package/dist/callbacks/subscriptions/postNewRoomEarly.d.ts.map +1 -1
  338. package/dist/callbacks/subscriptions/postNewRoomEarly.lua +0 -6
  339. package/dist/callbacks/subscriptions/postNewRoomReordered.d.ts +3 -0
  340. package/dist/callbacks/subscriptions/postNewRoomReordered.d.ts.map +1 -1
  341. package/dist/callbacks/subscriptions/postNewRoomReordered.lua +0 -6
  342. package/dist/callbacks/subscriptions/postPEffectUpdateReordered.d.ts +3 -0
  343. package/dist/callbacks/subscriptions/postPEffectUpdateReordered.d.ts.map +1 -1
  344. package/dist/callbacks/subscriptions/postPEffectUpdateReordered.lua +0 -6
  345. package/dist/callbacks/subscriptions/postPickupCollect.d.ts +3 -0
  346. package/dist/callbacks/subscriptions/postPickupCollect.d.ts.map +1 -1
  347. package/dist/callbacks/subscriptions/postPickupCollect.lua +0 -6
  348. package/dist/callbacks/subscriptions/postPickupInitFirst.d.ts +3 -0
  349. package/dist/callbacks/subscriptions/postPickupInitFirst.d.ts.map +1 -1
  350. package/dist/callbacks/subscriptions/postPickupInitFirst.lua +0 -6
  351. package/dist/callbacks/subscriptions/postPickupInitLate.d.ts +3 -0
  352. package/dist/callbacks/subscriptions/postPickupInitLate.d.ts.map +1 -1
  353. package/dist/callbacks/subscriptions/postPickupInitLate.lua +0 -6
  354. package/dist/callbacks/subscriptions/postPickupStateChanged.d.ts +3 -0
  355. package/dist/callbacks/subscriptions/postPickupStateChanged.d.ts.map +1 -1
  356. package/dist/callbacks/subscriptions/postPickupStateChanged.lua +0 -6
  357. package/dist/callbacks/subscriptions/postPitRender.d.ts +3 -0
  358. package/dist/callbacks/subscriptions/postPitRender.d.ts.map +1 -1
  359. package/dist/callbacks/subscriptions/postPitRender.lua +0 -6
  360. package/dist/callbacks/subscriptions/postPitUpdate.d.ts +3 -0
  361. package/dist/callbacks/subscriptions/postPitUpdate.d.ts.map +1 -1
  362. package/dist/callbacks/subscriptions/postPitUpdate.lua +0 -6
  363. package/dist/callbacks/subscriptions/postPlayerChangeHealth.d.ts +3 -0
  364. package/dist/callbacks/subscriptions/postPlayerChangeHealth.d.ts.map +1 -1
  365. package/dist/callbacks/subscriptions/postPlayerChangeHealth.lua +0 -6
  366. package/dist/callbacks/subscriptions/postPlayerChangeType.d.ts +3 -0
  367. package/dist/callbacks/subscriptions/postPlayerChangeType.d.ts.map +1 -1
  368. package/dist/callbacks/subscriptions/postPlayerChangeType.lua +0 -6
  369. package/dist/callbacks/subscriptions/postPlayerCollectibleAdded.d.ts +3 -0
  370. package/dist/callbacks/subscriptions/postPlayerCollectibleAdded.d.ts.map +1 -1
  371. package/dist/callbacks/subscriptions/postPlayerCollectibleAdded.lua +0 -6
  372. package/dist/callbacks/subscriptions/postPlayerCollectibleRemoved.d.ts +3 -0
  373. package/dist/callbacks/subscriptions/postPlayerCollectibleRemoved.d.ts.map +1 -1
  374. package/dist/callbacks/subscriptions/postPlayerCollectibleRemoved.lua +0 -6
  375. package/dist/callbacks/subscriptions/postPlayerFatalDamage.d.ts +3 -0
  376. package/dist/callbacks/subscriptions/postPlayerFatalDamage.d.ts.map +1 -1
  377. package/dist/callbacks/subscriptions/postPlayerFatalDamage.lua +0 -6
  378. package/dist/callbacks/subscriptions/postPlayerInitFirst.d.ts +3 -0
  379. package/dist/callbacks/subscriptions/postPlayerInitFirst.d.ts.map +1 -1
  380. package/dist/callbacks/subscriptions/postPlayerInitFirst.lua +0 -6
  381. package/dist/callbacks/subscriptions/postPlayerInitLate.d.ts +3 -0
  382. package/dist/callbacks/subscriptions/postPlayerInitLate.d.ts.map +1 -1
  383. package/dist/callbacks/subscriptions/postPlayerInitLate.lua +0 -6
  384. package/dist/callbacks/subscriptions/postPlayerRenderReordered.d.ts +3 -0
  385. package/dist/callbacks/subscriptions/postPlayerRenderReordered.d.ts.map +1 -1
  386. package/dist/callbacks/subscriptions/postPlayerRenderReordered.lua +0 -6
  387. package/dist/callbacks/subscriptions/postPlayerUpdateReordered.d.ts +3 -0
  388. package/dist/callbacks/subscriptions/postPlayerUpdateReordered.d.ts.map +1 -1
  389. package/dist/callbacks/subscriptions/postPlayerUpdateReordered.lua +0 -6
  390. package/dist/callbacks/subscriptions/postPoopRender.d.ts +3 -0
  391. package/dist/callbacks/subscriptions/postPoopRender.d.ts.map +1 -1
  392. package/dist/callbacks/subscriptions/postPoopRender.lua +0 -6
  393. package/dist/callbacks/subscriptions/postPoopUpdate.d.ts +3 -0
  394. package/dist/callbacks/subscriptions/postPoopUpdate.d.ts.map +1 -1
  395. package/dist/callbacks/subscriptions/postPoopUpdate.lua +0 -6
  396. package/dist/callbacks/subscriptions/postPressurePlateRender.d.ts +3 -0
  397. package/dist/callbacks/subscriptions/postPressurePlateRender.d.ts.map +1 -1
  398. package/dist/callbacks/subscriptions/postPressurePlateRender.lua +0 -6
  399. package/dist/callbacks/subscriptions/postPressurePlateUpdate.d.ts +3 -0
  400. package/dist/callbacks/subscriptions/postPressurePlateUpdate.d.ts.map +1 -1
  401. package/dist/callbacks/subscriptions/postPressurePlateUpdate.lua +0 -6
  402. package/dist/callbacks/subscriptions/postProjectileInitLate.d.ts +3 -0
  403. package/dist/callbacks/subscriptions/postProjectileInitLate.d.ts.map +1 -1
  404. package/dist/callbacks/subscriptions/postProjectileInitLate.lua +0 -6
  405. package/dist/callbacks/subscriptions/postPurchase.d.ts +3 -0
  406. package/dist/callbacks/subscriptions/postPurchase.d.ts.map +1 -1
  407. package/dist/callbacks/subscriptions/postPurchase.lua +0 -6
  408. package/dist/callbacks/subscriptions/postRockRender.d.ts +3 -0
  409. package/dist/callbacks/subscriptions/postRockRender.d.ts.map +1 -1
  410. package/dist/callbacks/subscriptions/postRockRender.lua +0 -6
  411. package/dist/callbacks/subscriptions/postRockUpdate.d.ts +3 -0
  412. package/dist/callbacks/subscriptions/postRockUpdate.d.ts.map +1 -1
  413. package/dist/callbacks/subscriptions/postRockUpdate.lua +0 -6
  414. package/dist/callbacks/subscriptions/postRoomClearChanged.d.ts +3 -0
  415. package/dist/callbacks/subscriptions/postRoomClearChanged.d.ts.map +1 -1
  416. package/dist/callbacks/subscriptions/postRoomClearChanged.lua +0 -6
  417. package/dist/callbacks/subscriptions/postSacrifice.d.ts +3 -0
  418. package/dist/callbacks/subscriptions/postSacrifice.d.ts.map +1 -1
  419. package/dist/callbacks/subscriptions/postSacrifice.lua +0 -6
  420. package/dist/callbacks/subscriptions/postSlotAnimationChanged.d.ts +3 -0
  421. package/dist/callbacks/subscriptions/postSlotAnimationChanged.d.ts.map +1 -1
  422. package/dist/callbacks/subscriptions/postSlotAnimationChanged.lua +0 -6
  423. package/dist/callbacks/subscriptions/postSlotDestroyed.d.ts +3 -0
  424. package/dist/callbacks/subscriptions/postSlotDestroyed.d.ts.map +1 -1
  425. package/dist/callbacks/subscriptions/postSlotDestroyed.lua +0 -6
  426. package/dist/callbacks/subscriptions/postSlotInit.d.ts +3 -0
  427. package/dist/callbacks/subscriptions/postSlotInit.d.ts.map +1 -1
  428. package/dist/callbacks/subscriptions/postSlotInit.lua +0 -6
  429. package/dist/callbacks/subscriptions/postSlotRender.d.ts +3 -0
  430. package/dist/callbacks/subscriptions/postSlotRender.d.ts.map +1 -1
  431. package/dist/callbacks/subscriptions/postSlotRender.lua +0 -6
  432. package/dist/callbacks/subscriptions/postSlotUpdate.d.ts +3 -0
  433. package/dist/callbacks/subscriptions/postSlotUpdate.d.ts.map +1 -1
  434. package/dist/callbacks/subscriptions/postSlotUpdate.lua +0 -6
  435. package/dist/callbacks/subscriptions/postSpikesRender.d.ts +3 -0
  436. package/dist/callbacks/subscriptions/postSpikesRender.d.ts.map +1 -1
  437. package/dist/callbacks/subscriptions/postSpikesRender.lua +0 -6
  438. package/dist/callbacks/subscriptions/postSpikesUpdate.d.ts +3 -0
  439. package/dist/callbacks/subscriptions/postSpikesUpdate.d.ts.map +1 -1
  440. package/dist/callbacks/subscriptions/postSpikesUpdate.lua +0 -6
  441. package/dist/callbacks/subscriptions/postTNTRender.d.ts +3 -0
  442. package/dist/callbacks/subscriptions/postTNTRender.d.ts.map +1 -1
  443. package/dist/callbacks/subscriptions/postTNTRender.lua +0 -6
  444. package/dist/callbacks/subscriptions/postTNTUpdate.d.ts +3 -0
  445. package/dist/callbacks/subscriptions/postTNTUpdate.d.ts.map +1 -1
  446. package/dist/callbacks/subscriptions/postTNTUpdate.lua +0 -6
  447. package/dist/callbacks/subscriptions/postTearInitLate.d.ts +3 -0
  448. package/dist/callbacks/subscriptions/postTearInitLate.d.ts.map +1 -1
  449. package/dist/callbacks/subscriptions/postTearInitLate.lua +0 -6
  450. package/dist/callbacks/subscriptions/postTearInitVeryLate.d.ts +3 -0
  451. package/dist/callbacks/subscriptions/postTearInitVeryLate.d.ts.map +1 -1
  452. package/dist/callbacks/subscriptions/postTearInitVeryLate.lua +0 -6
  453. package/dist/callbacks/subscriptions/postTransformation.d.ts +3 -0
  454. package/dist/callbacks/subscriptions/postTransformation.d.ts.map +1 -1
  455. package/dist/callbacks/subscriptions/postTransformation.lua +0 -6
  456. package/dist/callbacks/subscriptions/postTrinketBreak.d.ts +3 -0
  457. package/dist/callbacks/subscriptions/postTrinketBreak.d.ts.map +1 -1
  458. package/dist/callbacks/subscriptions/postTrinketBreak.lua +0 -6
  459. package/dist/callbacks/subscriptions/preBerserkDeath.d.ts +3 -0
  460. package/dist/callbacks/subscriptions/preBerserkDeath.d.ts.map +1 -1
  461. package/dist/callbacks/subscriptions/preBerserkDeath.lua +0 -6
  462. package/dist/callbacks/subscriptions/preCustomRevive.d.ts +3 -0
  463. package/dist/callbacks/subscriptions/preCustomRevive.d.ts.map +1 -1
  464. package/dist/callbacks/subscriptions/preCustomRevive.lua +0 -6
  465. package/dist/callbacks/subscriptions/preItemPickup.d.ts +3 -0
  466. package/dist/callbacks/subscriptions/preItemPickup.d.ts.map +1 -1
  467. package/dist/callbacks/subscriptions/preItemPickup.lua +0 -6
  468. package/dist/callbacks/subscriptions/preNewLevel.d.ts +3 -0
  469. package/dist/callbacks/subscriptions/preNewLevel.d.ts.map +1 -1
  470. package/dist/callbacks/subscriptions/preNewLevel.lua +0 -6
  471. package/dist/classes/ModUpgraded.d.ts +1 -1
  472. package/dist/classes/ModUpgraded.d.ts.map +1 -1
  473. package/dist/classes/index.d.ts +3 -0
  474. package/dist/classes/index.d.ts.map +1 -0
  475. package/dist/classes/index.lua +18 -0
  476. package/dist/classes/indexTypeDoc.d.ts +3 -0
  477. package/dist/classes/indexTypeDoc.d.ts.map +1 -0
  478. package/dist/classes/indexTypeDoc.lua +4 -0
  479. package/dist/{cachedClasses.d.ts → core/cachedClasses.d.ts} +0 -0
  480. package/dist/core/cachedClasses.d.ts.map +1 -0
  481. package/dist/{cachedClasses.lua → core/cachedClasses.lua} +0 -0
  482. package/dist/{constants.d.ts → core/constants.d.ts} +6 -0
  483. package/dist/core/constants.d.ts.map +1 -0
  484. package/dist/{constants.lua → core/constants.lua} +6 -2
  485. package/dist/{constantsFirstLast.d.ts → core/constantsFirstLast.d.ts} +2 -2
  486. package/dist/core/constantsFirstLast.d.ts.map +1 -0
  487. package/dist/{constantsFirstLast.lua → core/constantsFirstLast.lua} +4 -4
  488. package/dist/core/index.d.ts +5 -0
  489. package/dist/core/index.d.ts.map +1 -0
  490. package/dist/core/index.lua +34 -0
  491. package/dist/core/indexTypeDoc.d.ts +5 -0
  492. package/dist/core/indexTypeDoc.d.ts.map +1 -0
  493. package/dist/core/indexTypeDoc.lua +6 -0
  494. package/dist/{upgradeMod.d.ts → core/upgradeMod.d.ts} +1 -1
  495. package/dist/core/upgradeMod.d.ts.map +1 -0
  496. package/dist/{upgradeMod.lua → core/upgradeMod.lua} +0 -0
  497. package/dist/enums/RockAltType.d.ts +12 -1
  498. package/dist/enums/RockAltType.d.ts.map +1 -1
  499. package/dist/enums/RockAltType.lua +4 -2
  500. package/dist/enums/index.d.ts +9 -0
  501. package/dist/enums/index.d.ts.map +1 -0
  502. package/dist/enums/index.lua +66 -0
  503. package/dist/enums/indexTypeDoc.d.ts +9 -0
  504. package/dist/enums/indexTypeDoc.d.ts.map +1 -0
  505. package/dist/enums/indexTypeDoc.lua +10 -0
  506. package/dist/enums/private/StageTravelState.d.ts +4 -3
  507. package/dist/enums/private/StageTravelState.d.ts.map +1 -1
  508. package/dist/enums/private/StageTravelState.lua +6 -4
  509. package/dist/features/characterHealthConversion.d.ts +1 -0
  510. package/dist/features/characterHealthConversion.d.ts.map +1 -1
  511. package/dist/features/characterHealthConversion.lua +0 -2
  512. package/dist/features/characterStats.d.ts +1 -0
  513. package/dist/features/characterStats.d.ts.map +1 -1
  514. package/dist/features/characterStats.lua +0 -2
  515. package/dist/features/collectibleItemPoolType.d.ts +1 -0
  516. package/dist/features/collectibleItemPoolType.d.ts.map +1 -1
  517. package/dist/features/collectibleItemPoolType.lua +1 -3
  518. package/dist/features/customDoor.d.ts +51 -0
  519. package/dist/features/customDoor.d.ts.map +1 -0
  520. package/dist/features/customDoor.lua +53 -0
  521. package/dist/features/customGridEntity.d.ts +2 -0
  522. package/dist/features/customGridEntity.d.ts.map +1 -1
  523. package/dist/features/customGridEntity.lua +2 -4
  524. package/dist/features/customStage/backdrop.d.ts +1 -1
  525. package/dist/features/customStage/backdrop.d.ts.map +1 -1
  526. package/dist/features/customStage/backdrop.lua +5 -4
  527. package/dist/features/customStage/customStageConstants.d.ts +11 -0
  528. package/dist/features/customStage/customStageConstants.d.ts.map +1 -1
  529. package/dist/features/customStage/customStageConstants.lua +10 -0
  530. package/dist/features/customStage/customStageGridEntities.d.ts +2 -1
  531. package/dist/features/customStage/customStageGridEntities.d.ts.map +1 -1
  532. package/dist/features/customStage/customStageGridEntities.lua +65 -23
  533. package/dist/features/customStage/exports.d.ts +22 -6
  534. package/dist/features/customStage/exports.d.ts.map +1 -1
  535. package/dist/features/customStage/exports.lua +66 -55
  536. package/dist/features/customStage/init.d.ts.map +1 -1
  537. package/dist/features/customStage/init.lua +7 -12
  538. package/dist/features/customStage/shadows.d.ts +1 -1
  539. package/dist/features/customStage/shadows.d.ts.map +1 -1
  540. package/dist/features/customStage/shadows.lua +3 -2
  541. package/dist/features/customStage/streakText.d.ts +1 -8
  542. package/dist/features/customStage/streakText.d.ts.map +1 -1
  543. package/dist/features/customStage/streakText.lua +54 -87
  544. package/dist/features/customStage/v.d.ts +14 -1
  545. package/dist/features/customStage/v.d.ts.map +1 -1
  546. package/dist/features/customStage/v.lua +6 -1
  547. package/dist/features/customStage/versusScreen.d.ts +1 -1
  548. package/dist/features/customStage/versusScreen.d.ts.map +1 -1
  549. package/dist/features/customStage/versusScreen.lua +33 -2
  550. package/dist/features/customTrapdoor/blackSprite.d.ts.map +1 -1
  551. package/dist/features/customTrapdoor/blackSprite.lua +2 -2
  552. package/dist/features/customTrapdoor/customTrapdoorConstants.d.ts +4 -0
  553. package/dist/features/customTrapdoor/customTrapdoorConstants.d.ts.map +1 -1
  554. package/dist/features/customTrapdoor/exports.d.ts +11 -7
  555. package/dist/features/customTrapdoor/exports.d.ts.map +1 -1
  556. package/dist/features/customTrapdoor/exports.lua +7 -6
  557. package/dist/features/customTrapdoor/init.d.ts.map +1 -1
  558. package/dist/features/customTrapdoor/init.lua +36 -21
  559. package/dist/features/customTrapdoor/openClose.lua +1 -1
  560. package/dist/features/customTrapdoor/touched.lua +2 -2
  561. package/dist/features/customTrapdoor/v.d.ts +2 -2
  562. package/dist/features/customTrapdoor/v.d.ts.map +1 -1
  563. package/dist/features/deployJSONRoom.d.ts +2 -0
  564. package/dist/features/deployJSONRoom.d.ts.map +1 -1
  565. package/dist/features/deployJSONRoom.lua +2 -4
  566. package/dist/features/disableAllSound.d.ts +2 -0
  567. package/dist/features/disableAllSound.d.ts.map +1 -1
  568. package/dist/features/disableAllSound.lua +1 -3
  569. package/dist/features/disableInputs.d.ts +1 -0
  570. package/dist/features/disableInputs.d.ts.map +1 -1
  571. package/dist/features/disableInputs.lua +0 -2
  572. package/dist/features/extraConsoleCommands/commandsSubroutines.d.ts.map +1 -1
  573. package/dist/features/extraConsoleCommands/commandsSubroutines.lua +4 -4
  574. package/dist/features/extraConsoleCommands/init.lua +1 -1
  575. package/dist/features/extraConsoleCommands/listCommands.lua +3 -3
  576. package/dist/features/fadeInRemover.d.ts +2 -0
  577. package/dist/features/fadeInRemover.d.ts.map +1 -1
  578. package/dist/features/fadeInRemover.lua +1 -3
  579. package/dist/features/fastReset.d.ts +2 -0
  580. package/dist/features/fastReset.d.ts.map +1 -1
  581. package/dist/features/fastReset.lua +1 -3
  582. package/dist/features/forgottenSwitch.d.ts +2 -0
  583. package/dist/features/forgottenSwitch.d.ts.map +1 -1
  584. package/dist/features/forgottenSwitch.lua +0 -2
  585. package/dist/features/index.d.ts +30 -0
  586. package/dist/features/index.d.ts.map +1 -0
  587. package/dist/features/index.lua +216 -0
  588. package/dist/features/indexTypeDoc.d.ts +30 -0
  589. package/dist/features/indexTypeDoc.d.ts.map +1 -0
  590. package/dist/features/indexTypeDoc.lua +31 -0
  591. package/dist/features/pause.d.ts +2 -0
  592. package/dist/features/pause.d.ts.map +1 -1
  593. package/dist/features/pause.lua +1 -3
  594. package/dist/features/persistentEntities.d.ts +2 -0
  595. package/dist/features/persistentEntities.d.ts.map +1 -1
  596. package/dist/features/persistentEntities.lua +0 -2
  597. package/dist/features/pickupIndex.d.ts.map +1 -1
  598. package/dist/features/pickupIndex.lua +2 -2
  599. package/dist/features/playerInventory.d.ts +9 -0
  600. package/dist/features/playerInventory.d.ts.map +1 -1
  601. package/dist/features/playerInventory.lua +7 -2
  602. package/dist/features/ponyDetection.d.ts +2 -0
  603. package/dist/features/ponyDetection.d.ts.map +1 -1
  604. package/dist/features/ponyDetection.lua +0 -2
  605. package/dist/features/preventCollectibleRotation.d.ts +1 -0
  606. package/dist/features/preventCollectibleRotation.d.ts.map +1 -1
  607. package/dist/features/preventCollectibleRotation.lua +1 -3
  608. package/dist/features/registerHotkey.d.ts +1 -0
  609. package/dist/features/registerHotkey.d.ts.map +1 -1
  610. package/dist/features/registerHotkey.lua +0 -2
  611. package/dist/features/roomClearFrame.d.ts +2 -0
  612. package/dist/features/roomClearFrame.d.ts.map +1 -1
  613. package/dist/features/roomClearFrame.lua +1 -3
  614. package/dist/features/roomHistory.d.ts +2 -0
  615. package/dist/features/roomHistory.d.ts.map +1 -1
  616. package/dist/features/roomHistory.lua +1 -3
  617. package/dist/features/runInNFrames.d.ts +2 -0
  618. package/dist/features/runInNFrames.d.ts.map +1 -1
  619. package/dist/features/runInNFrames.lua +1 -3
  620. package/dist/features/runNextRoom.d.ts +2 -0
  621. package/dist/features/runNextRoom.d.ts.map +1 -1
  622. package/dist/features/runNextRoom.lua +0 -2
  623. package/dist/features/saveDataManager/exports.d.ts +3 -0
  624. package/dist/features/saveDataManager/exports.d.ts.map +1 -1
  625. package/dist/features/saveDataManager/exports.lua +3 -0
  626. package/dist/features/saveDataManager/main.d.ts +4 -0
  627. package/dist/features/saveDataManager/main.d.ts.map +1 -1
  628. package/dist/features/saveDataManager/main.lua +1 -7
  629. package/dist/features/sirenHelpers.d.ts +1 -0
  630. package/dist/features/sirenHelpers.d.ts.map +1 -1
  631. package/dist/features/sirenHelpers.lua +0 -2
  632. package/dist/features/stageHistory.d.ts +2 -0
  633. package/dist/features/stageHistory.d.ts.map +1 -1
  634. package/dist/features/stageHistory.lua +1 -3
  635. package/dist/features/taintedLazarusPlayers.d.ts +2 -0
  636. package/dist/features/taintedLazarusPlayers.d.ts.map +1 -1
  637. package/dist/features/taintedLazarusPlayers.lua +0 -2
  638. package/dist/featuresInitialized.d.ts +3 -1
  639. package/dist/featuresInitialized.d.ts.map +1 -1
  640. package/dist/featuresInitialized.lua +0 -6
  641. package/dist/functions/bosses.lua +1 -1
  642. package/dist/functions/cards.lua +2 -2
  643. package/dist/functions/characters.lua +1 -1
  644. package/dist/functions/charge.lua +1 -1
  645. package/dist/functions/collectibleCacheFlag.lua +1 -1
  646. package/dist/functions/collectibleSet.d.ts +1 -1
  647. package/dist/functions/collectibleSet.lua +3 -3
  648. package/dist/functions/collectibleTag.lua +1 -1
  649. package/dist/functions/collectibles.lua +3 -3
  650. package/dist/functions/curses.lua +1 -1
  651. package/dist/functions/deepCopyTests.d.ts.map +1 -1
  652. package/dist/functions/deepCopyTests.lua +5 -1
  653. package/dist/functions/dimensions.lua +2 -2
  654. package/dist/functions/doors.d.ts +10 -0
  655. package/dist/functions/doors.d.ts.map +1 -1
  656. package/dist/functions/doors.lua +7 -1
  657. package/dist/functions/entities.lua +2 -2
  658. package/dist/functions/entitiesSpecific.lua +1 -1
  659. package/dist/functions/familiars.lua +1 -1
  660. package/dist/functions/gridEntities.lua +2 -2
  661. package/dist/functions/index.d.ts +98 -0
  662. package/dist/functions/index.d.ts.map +1 -0
  663. package/dist/functions/index.lua +778 -0
  664. package/dist/functions/indexTypeDoc.d.ts +98 -0
  665. package/dist/functions/indexTypeDoc.d.ts.map +1 -0
  666. package/dist/functions/indexTypeDoc.lua +99 -0
  667. package/dist/functions/itemPool.lua +1 -1
  668. package/dist/functions/level.lua +1 -1
  669. package/dist/functions/levelGrid.lua +2 -2
  670. package/dist/functions/log.d.ts +1 -15
  671. package/dist/functions/log.d.ts.map +1 -1
  672. package/dist/functions/log.lua +4 -219
  673. package/dist/functions/logEntities.d.ts +16 -0
  674. package/dist/functions/logEntities.d.ts.map +1 -0
  675. package/dist/functions/logEntities.lua +220 -0
  676. package/dist/functions/mergeTests.d.ts.map +1 -1
  677. package/dist/functions/mergeTests.lua +5 -1
  678. package/dist/functions/minimap.lua +1 -1
  679. package/dist/functions/nextStage.lua +1 -1
  680. package/dist/functions/npcs.lua +1 -1
  681. package/dist/functions/pickupsSpecific.lua +1 -1
  682. package/dist/functions/pills.lua +2 -2
  683. package/dist/functions/playerCenter.lua +2 -2
  684. package/dist/functions/playerHealth.lua +1 -1
  685. package/dist/functions/playerIndex.lua +1 -1
  686. package/dist/functions/players.lua +1 -1
  687. package/dist/functions/positionVelocity.lua +2 -2
  688. package/dist/functions/pressurePlate.lua +1 -1
  689. package/dist/functions/reorderedCallbacks.d.ts +30 -0
  690. package/dist/functions/reorderedCallbacks.d.ts.map +1 -0
  691. package/dist/functions/reorderedCallbacks.lua +34 -0
  692. package/dist/functions/revive.lua +2 -2
  693. package/dist/functions/rng.lua +1 -1
  694. package/dist/functions/rockAlt.d.ts +6 -5
  695. package/dist/functions/rockAlt.d.ts.map +1 -1
  696. package/dist/functions/rockAlt.lua +149 -20
  697. package/dist/functions/roomData.lua +1 -1
  698. package/dist/functions/roomTransition.d.ts +26 -0
  699. package/dist/functions/roomTransition.d.ts.map +1 -0
  700. package/dist/functions/roomTransition.lua +75 -0
  701. package/dist/functions/rooms.d.ts +1 -18
  702. package/dist/functions/rooms.d.ts.map +1 -1
  703. package/dist/functions/rooms.lua +5 -54
  704. package/dist/functions/run.lua +2 -2
  705. package/dist/functions/seeds.lua +1 -1
  706. package/dist/functions/sound.lua +1 -1
  707. package/dist/functions/spawnCollectible.lua +1 -1
  708. package/dist/functions/sprites.lua +1 -1
  709. package/dist/functions/stage.lua +1 -1
  710. package/dist/functions/trinkets.lua +2 -2
  711. package/dist/functions/ui.lua +2 -2
  712. package/dist/functions/utils.lua +1 -1
  713. package/dist/index.d.ts +9 -151
  714. package/dist/index.d.ts.map +1 -1
  715. package/dist/index.lua +8 -1055
  716. package/dist/indexTypeDoc.d.ts +10 -0
  717. package/dist/indexTypeDoc.d.ts.map +1 -0
  718. package/dist/indexTypeDoc.lua +11 -0
  719. package/dist/interfaces/CustomStageLua.d.ts +22 -3
  720. package/dist/interfaces/CustomStageLua.d.ts.map +1 -1
  721. package/dist/interfaces/index.d.ts +11 -0
  722. package/dist/interfaces/index.d.ts.map +1 -0
  723. package/dist/interfaces/{CustomStage.lua → index.lua} +0 -0
  724. package/dist/interfaces/indexTypeDoc.d.ts +11 -0
  725. package/dist/interfaces/indexTypeDoc.d.ts.map +1 -0
  726. package/dist/interfaces/indexTypeDoc.lua +2 -0
  727. package/dist/interfaces/private/AddCallbackParameterCustom.d.ts +178 -0
  728. package/dist/interfaces/private/AddCallbackParameterCustom.d.ts.map +1 -0
  729. package/dist/interfaces/{AddCallbackParameterCustom.lua → private/AddCallbackParameterCustom.lua} +0 -0
  730. package/dist/interfaces/{CustomStage.d.ts → private/CustomStage.d.ts} +1 -1
  731. package/dist/interfaces/private/CustomStage.d.ts.map +1 -0
  732. package/dist/interfaces/private/CustomStage.lua +2 -0
  733. package/dist/interfaces/private/CustomTrapdoorDescription.d.ts +2 -2
  734. package/dist/interfaces/private/CustomTrapdoorDescription.d.ts.map +1 -1
  735. package/dist/maps/index.d.ts +5 -0
  736. package/dist/maps/index.d.ts.map +1 -0
  737. package/dist/maps/index.lua +34 -0
  738. package/dist/maps/indexTypeDoc.d.ts +5 -0
  739. package/dist/maps/indexTypeDoc.d.ts.map +1 -0
  740. package/dist/maps/indexTypeDoc.lua +6 -0
  741. package/dist/objects/LRoomShapeToRectangles.lua +1 -1
  742. package/dist/objects/backdropTypeToRockAltType.lua +3 -3
  743. package/dist/objects/callbackRegisterFunctions.d.ts +1 -1
  744. package/dist/objects/callbackRegisterFunctions.d.ts.map +1 -1
  745. package/dist/objects/directionToVector.lua +1 -1
  746. package/dist/objects/index.d.ts +2 -0
  747. package/dist/objects/index.d.ts.map +1 -0
  748. package/dist/objects/index.lua +10 -0
  749. package/dist/objects/indexTypeDoc.d.ts +2 -0
  750. package/dist/objects/indexTypeDoc.d.ts.map +1 -0
  751. package/dist/objects/indexTypeDoc.lua +3 -0
  752. package/dist/objects/roomShapeToDoorSlotsToGridIndexDelta.lua +1 -1
  753. package/dist/objects/roomShapeToTopLeftPosition.lua +1 -1
  754. package/dist/patchErrorFunctions.d.ts +9 -1
  755. package/dist/patchErrorFunctions.d.ts.map +1 -1
  756. package/dist/patchErrorFunctions.lua +0 -2
  757. package/dist/types/Immutable.d.ts +15 -0
  758. package/dist/types/Immutable.d.ts.map +1 -0
  759. package/dist/types/Immutable.lua +2 -0
  760. package/dist/types/PickingUpItem.d.ts +2 -0
  761. package/dist/types/PickingUpItem.d.ts.map +1 -1
  762. package/dist/types/PickingUpItem.lua +0 -4
  763. package/dist/types/TrapdoorDestination.d.ts +3 -0
  764. package/dist/types/TrapdoorDestination.d.ts.map +1 -0
  765. package/dist/types/TrapdoorDestination.lua +2 -0
  766. package/dist/types/index.d.ts +12 -0
  767. package/dist/types/index.d.ts.map +1 -0
  768. package/dist/types/index.lua +10 -0
  769. package/dist/types/indexTypeDoc.d.ts +12 -0
  770. package/dist/types/indexTypeDoc.d.ts.map +1 -0
  771. package/dist/types/indexTypeDoc.lua +3 -0
  772. package/package.json +2 -2
  773. package/src/callbacks/customRevive.ts +1 -2
  774. package/src/callbacks/itemPickup.ts +0 -1
  775. package/src/callbacks/postAmbush.ts +1 -2
  776. package/src/callbacks/postBombExploded.ts +1 -2
  777. package/src/callbacks/postBombInitLate.ts +0 -1
  778. package/src/callbacks/postBoneSwing.ts +0 -1
  779. package/src/callbacks/postCollectibleEmpty.ts +0 -1
  780. package/src/callbacks/postCollectibleInitFirst.ts +0 -1
  781. package/src/callbacks/postCursedTeleport.ts +1 -2
  782. package/src/callbacks/postCustomDoorEnter.ts +3 -50
  783. package/src/callbacks/postDiceRoomActivated.ts +0 -1
  784. package/src/callbacks/postDoorRender.ts +0 -1
  785. package/src/callbacks/postDoorUpdate.ts +0 -1
  786. package/src/callbacks/postEffectInitLate.ts +0 -1
  787. package/src/callbacks/postEffectStateChanged.ts +0 -1
  788. package/src/callbacks/postEsauJr.ts +1 -2
  789. package/src/callbacks/postFamiliarInitLate.ts +0 -1
  790. package/src/callbacks/postFamiliarStateChanged.ts +0 -1
  791. package/src/callbacks/postFlip.ts +0 -1
  792. package/src/callbacks/postGreedModeWave.ts +1 -2
  793. package/src/callbacks/postGridEntity.ts +0 -1
  794. package/src/callbacks/postGridEntityCollision.ts +0 -1
  795. package/src/callbacks/postGridEntityCustomCollision.ts +0 -1
  796. package/src/callbacks/postGridEntityCustomRender.ts +0 -1
  797. package/src/callbacks/postGridEntityCustomUpdate.ts +0 -1
  798. package/src/callbacks/postGridEntityRender.ts +0 -1
  799. package/src/callbacks/postHolyMantleRemoved.ts +0 -1
  800. package/src/callbacks/postItemDischarged.ts +14 -17
  801. package/src/callbacks/postKnifeInitLate.ts +0 -1
  802. package/src/callbacks/postLaserInitLate.ts +0 -1
  803. package/src/callbacks/postNPCInitLate.ts +0 -1
  804. package/src/callbacks/postNPCStateChanged.ts +0 -1
  805. package/src/callbacks/postNewRoomEarly.ts +1 -2
  806. package/src/callbacks/postPickupCollect.ts +0 -1
  807. package/src/callbacks/postPickupInitFirst.ts +1 -2
  808. package/src/callbacks/postPickupInitLate.ts +0 -1
  809. package/src/callbacks/postPickupStateChanged.ts +0 -1
  810. package/src/callbacks/postPitRender.ts +0 -1
  811. package/src/callbacks/postPitUpdate.ts +0 -1
  812. package/src/callbacks/postPlayerChangeHealth.ts +0 -1
  813. package/src/callbacks/postPlayerChangeType.ts +0 -1
  814. package/src/callbacks/postPlayerCollectible.ts +0 -1
  815. package/src/callbacks/postPlayerFatalDamage.ts +1 -2
  816. package/src/callbacks/postPlayerInitFirst.ts +0 -1
  817. package/src/callbacks/postPlayerInitLate.ts +0 -1
  818. package/src/callbacks/postPlayerReorderedCallbacks.ts +0 -1
  819. package/src/callbacks/postPoopRender.ts +0 -1
  820. package/src/callbacks/postPoopUpdate.ts +0 -1
  821. package/src/callbacks/postPressurePlateRender.ts +0 -1
  822. package/src/callbacks/postPressurePlateUpdate.ts +0 -1
  823. package/src/callbacks/postProjectileInitLate.ts +0 -1
  824. package/src/callbacks/postPurchase.ts +0 -1
  825. package/src/callbacks/postRockRender.ts +0 -1
  826. package/src/callbacks/postRockUpdate.ts +0 -1
  827. package/src/callbacks/postRoomClearChanged.ts +1 -2
  828. package/src/callbacks/postSacrifice.ts +1 -2
  829. package/src/callbacks/postSlotDestroyed.ts +1 -2
  830. package/src/callbacks/postSlotInitUpdate.ts +0 -1
  831. package/src/callbacks/postSlotRender.ts +0 -1
  832. package/src/callbacks/postSpikesRender.ts +0 -1
  833. package/src/callbacks/postSpikesUpdate.ts +0 -1
  834. package/src/callbacks/postTNTRender.ts +0 -1
  835. package/src/callbacks/postTNTUpdate.ts +0 -1
  836. package/src/callbacks/postTearInitLate.ts +0 -1
  837. package/src/callbacks/postTearInitVeryLate.ts +0 -1
  838. package/src/callbacks/postTransformation.ts +0 -1
  839. package/src/callbacks/postTrinketBreak.ts +0 -1
  840. package/src/callbacks/preBerserkDeath.ts +0 -1
  841. package/src/callbacks/preNewLevel.ts +0 -1
  842. package/src/callbacks/reorderedCallbacks.ts +4 -30
  843. package/src/callbacks/subscriptions/postAmbushFinished.ts +0 -3
  844. package/src/callbacks/subscriptions/postAmbushStarted.ts +0 -3
  845. package/src/callbacks/subscriptions/postBombInitLate.ts +0 -3
  846. package/src/callbacks/subscriptions/postBoneExploded.ts +0 -3
  847. package/src/callbacks/subscriptions/postBoneSwing.ts +0 -3
  848. package/src/callbacks/subscriptions/postCollectibleEmpty.ts +0 -3
  849. package/src/callbacks/subscriptions/postCollectibleInitFirst.ts +0 -3
  850. package/src/callbacks/subscriptions/postCursedTeleport.ts +0 -3
  851. package/src/callbacks/subscriptions/postCustomDoorEnter.ts +0 -3
  852. package/src/callbacks/subscriptions/postCustomRevive.ts +0 -3
  853. package/src/callbacks/subscriptions/postDiceRoomActivated.ts +0 -3
  854. package/src/callbacks/subscriptions/postDoorRender.ts +0 -3
  855. package/src/callbacks/subscriptions/postDoorUpdate.ts +0 -3
  856. package/src/callbacks/subscriptions/postEffectInitLate.ts +0 -3
  857. package/src/callbacks/subscriptions/postEffectStateChanged.ts +0 -3
  858. package/src/callbacks/subscriptions/postEsauJr.ts +0 -3
  859. package/src/callbacks/subscriptions/postFamiliarInitLate.ts +0 -3
  860. package/src/callbacks/subscriptions/postFamiliarStateChanged.ts +0 -3
  861. package/src/callbacks/subscriptions/postFirstEsauJr.ts +0 -3
  862. package/src/callbacks/subscriptions/postFirstFlip.ts +0 -3
  863. package/src/callbacks/subscriptions/postFlip.ts +0 -3
  864. package/src/callbacks/subscriptions/postGameStartedReordered.ts +0 -3
  865. package/src/callbacks/subscriptions/postGreedModeWave.ts +0 -3
  866. package/src/callbacks/subscriptions/postGridEntityBroken.ts +0 -3
  867. package/src/callbacks/subscriptions/postGridEntityCollision.ts +0 -3
  868. package/src/callbacks/subscriptions/postGridEntityCustomBroken.ts +0 -2
  869. package/src/callbacks/subscriptions/postGridEntityCustomCollision.ts +0 -3
  870. package/src/callbacks/subscriptions/postGridEntityCustomRender.ts +0 -3
  871. package/src/callbacks/subscriptions/postGridEntityCustomUpdate.ts +0 -3
  872. package/src/callbacks/subscriptions/postGridEntityInit.ts +0 -3
  873. package/src/callbacks/subscriptions/postGridEntityRemove.ts +0 -3
  874. package/src/callbacks/subscriptions/postGridEntityRender.ts +0 -3
  875. package/src/callbacks/subscriptions/postGridEntityStateChanged.ts +0 -3
  876. package/src/callbacks/subscriptions/postGridEntityUpdate.ts +0 -3
  877. package/src/callbacks/subscriptions/postHolyMantleRemoved.ts +0 -3
  878. package/src/callbacks/subscriptions/postItemDischarged.ts +0 -3
  879. package/src/callbacks/subscriptions/postItemPickup.ts +0 -3
  880. package/src/callbacks/subscriptions/postKnifeInitLate.ts +0 -3
  881. package/src/callbacks/subscriptions/postLaserInitLate.ts +0 -3
  882. package/src/callbacks/subscriptions/postNPCInitLate.ts +0 -3
  883. package/src/callbacks/subscriptions/postNPCStateChanged.ts +0 -3
  884. package/src/callbacks/subscriptions/postNewLevelReordered.ts +0 -3
  885. package/src/callbacks/subscriptions/postNewRoomEarly.ts +0 -3
  886. package/src/callbacks/subscriptions/postNewRoomReordered.ts +0 -3
  887. package/src/callbacks/subscriptions/postPEffectUpdateReordered.ts +0 -3
  888. package/src/callbacks/subscriptions/postPickupCollect.ts +0 -3
  889. package/src/callbacks/subscriptions/postPickupInitFirst.ts +0 -3
  890. package/src/callbacks/subscriptions/postPickupInitLate.ts +0 -3
  891. package/src/callbacks/subscriptions/postPickupStateChanged.ts +0 -3
  892. package/src/callbacks/subscriptions/postPitRender.ts +0 -3
  893. package/src/callbacks/subscriptions/postPitUpdate.ts +0 -3
  894. package/src/callbacks/subscriptions/postPlayerChangeHealth.ts +0 -3
  895. package/src/callbacks/subscriptions/postPlayerChangeType.ts +0 -3
  896. package/src/callbacks/subscriptions/postPlayerCollectibleAdded.ts +0 -3
  897. package/src/callbacks/subscriptions/postPlayerCollectibleRemoved.ts +0 -3
  898. package/src/callbacks/subscriptions/postPlayerFatalDamage.ts +0 -3
  899. package/src/callbacks/subscriptions/postPlayerInitFirst.ts +0 -3
  900. package/src/callbacks/subscriptions/postPlayerInitLate.ts +0 -3
  901. package/src/callbacks/subscriptions/postPlayerRenderReordered.ts +0 -3
  902. package/src/callbacks/subscriptions/postPlayerUpdateReordered.ts +0 -3
  903. package/src/callbacks/subscriptions/postPoopRender.ts +0 -3
  904. package/src/callbacks/subscriptions/postPoopUpdate.ts +0 -3
  905. package/src/callbacks/subscriptions/postPressurePlateRender.ts +0 -3
  906. package/src/callbacks/subscriptions/postPressurePlateUpdate.ts +0 -3
  907. package/src/callbacks/subscriptions/postProjectileInitLate.ts +0 -3
  908. package/src/callbacks/subscriptions/postPurchase.ts +0 -3
  909. package/src/callbacks/subscriptions/postRockRender.ts +0 -3
  910. package/src/callbacks/subscriptions/postRockUpdate.ts +0 -3
  911. package/src/callbacks/subscriptions/postRoomClearChanged.ts +0 -3
  912. package/src/callbacks/subscriptions/postSacrifice.ts +0 -3
  913. package/src/callbacks/subscriptions/postSlotAnimationChanged.ts +0 -3
  914. package/src/callbacks/subscriptions/postSlotDestroyed.ts +0 -3
  915. package/src/callbacks/subscriptions/postSlotInit.ts +0 -3
  916. package/src/callbacks/subscriptions/postSlotRender.ts +0 -3
  917. package/src/callbacks/subscriptions/postSlotUpdate.ts +0 -3
  918. package/src/callbacks/subscriptions/postSpikesRender.ts +0 -3
  919. package/src/callbacks/subscriptions/postSpikesUpdate.ts +0 -3
  920. package/src/callbacks/subscriptions/postTNTRender.ts +0 -3
  921. package/src/callbacks/subscriptions/postTNTUpdate.ts +0 -3
  922. package/src/callbacks/subscriptions/postTearInitLate.ts +0 -3
  923. package/src/callbacks/subscriptions/postTearInitVeryLate.ts +0 -3
  924. package/src/callbacks/subscriptions/postTransformation.ts +0 -3
  925. package/src/callbacks/subscriptions/postTrinketBreak.ts +0 -3
  926. package/src/callbacks/subscriptions/preBerserkDeath.ts +0 -3
  927. package/src/callbacks/subscriptions/preCustomRevive.ts +0 -3
  928. package/src/callbacks/subscriptions/preItemPickup.ts +0 -3
  929. package/src/callbacks/subscriptions/preNewLevel.ts +0 -3
  930. package/src/classes/ModUpgraded.ts +1 -1
  931. package/src/classes/index.ts +2 -0
  932. package/src/classes/indexTypeDoc.ts +2 -0
  933. package/src/{cachedClasses.ts → core/cachedClasses.ts} +0 -0
  934. package/src/{constants.ts → core/constants.ts} +8 -2
  935. package/src/{constantsFirstLast.ts → core/constantsFirstLast.ts} +3 -3
  936. package/src/core/index.ts +4 -0
  937. package/src/core/indexTypeDoc.ts +4 -0
  938. package/src/{upgradeMod.ts → core/upgradeMod.ts} +8 -8
  939. package/src/enums/RockAltType.ts +14 -1
  940. package/src/enums/index.ts +8 -0
  941. package/src/enums/indexTypeDoc.ts +8 -0
  942. package/src/enums/private/StageTravelState.ts +2 -1
  943. package/src/features/characterHealthConversion.ts +0 -1
  944. package/src/features/characterStats.ts +0 -1
  945. package/src/features/collectibleItemPoolType.ts +1 -2
  946. package/src/features/customDoor.ts +66 -0
  947. package/src/features/customGridEntity.ts +1 -2
  948. package/src/features/customStage/backdrop.ts +5 -4
  949. package/src/features/customStage/customStageConstants.ts +16 -0
  950. package/src/features/customStage/customStageGridEntities.ts +62 -1
  951. package/src/features/customStage/exports.ts +80 -44
  952. package/src/features/customStage/init.ts +8 -19
  953. package/src/features/customStage/shadows.ts +4 -3
  954. package/src/features/customStage/streakText.ts +62 -99
  955. package/src/features/customStage/v.ts +18 -1
  956. package/src/features/customStage/versusScreen.ts +31 -2
  957. package/src/features/customTrapdoor/blackSprite.ts +6 -2
  958. package/src/features/customTrapdoor/customTrapdoorConstants.ts +4 -0
  959. package/src/features/customTrapdoor/exports.ts +9 -7
  960. package/src/features/customTrapdoor/init.ts +56 -24
  961. package/src/features/customTrapdoor/openClose.ts +1 -1
  962. package/src/features/customTrapdoor/touched.ts +5 -2
  963. package/src/features/customTrapdoor/v.ts +2 -5
  964. package/src/features/deployJSONRoom.ts +1 -2
  965. package/src/features/disableAllSound.ts +1 -2
  966. package/src/features/disableInputs.ts +0 -1
  967. package/src/features/extraConsoleCommands/commandsSubroutines.ts +5 -2
  968. package/src/features/extraConsoleCommands/init.ts +1 -1
  969. package/src/features/extraConsoleCommands/listCommands.ts +3 -3
  970. package/src/features/fadeInRemover.ts +1 -2
  971. package/src/features/fastReset.ts +1 -2
  972. package/src/features/forgottenSwitch.ts +0 -1
  973. package/src/features/index.ts +59 -0
  974. package/src/features/indexTypeDoc.ts +29 -0
  975. package/src/features/pause.ts +1 -2
  976. package/src/features/persistentEntities.ts +0 -1
  977. package/src/features/pickupIndex.ts +1 -1
  978. package/src/features/playerInventory.ts +7 -1
  979. package/src/features/ponyDetection.ts +0 -1
  980. package/src/features/preventCollectibleRotation.ts +1 -2
  981. package/src/features/registerHotkey.ts +0 -1
  982. package/src/features/roomClearFrame.ts +1 -2
  983. package/src/features/roomHistory.ts +1 -2
  984. package/src/features/runInNFrames.ts +1 -2
  985. package/src/features/runNextRoom.ts +0 -1
  986. package/src/features/saveDataManager/exports.ts +3 -0
  987. package/src/features/saveDataManager/main.ts +1 -4
  988. package/src/features/sirenHelpers.ts +0 -1
  989. package/src/features/stageHistory.ts +1 -2
  990. package/src/features/taintedLazarusPlayers.ts +0 -1
  991. package/src/featuresInitialized.ts +0 -3
  992. package/src/functions/bosses.ts +1 -1
  993. package/src/functions/cards.ts +2 -2
  994. package/src/functions/characters.ts +1 -1
  995. package/src/functions/charge.ts +1 -1
  996. package/src/functions/collectibleCacheFlag.ts +1 -1
  997. package/src/functions/collectibleSet.ts +3 -3
  998. package/src/functions/collectibleTag.ts +1 -1
  999. package/src/functions/collectibles.ts +3 -3
  1000. package/src/functions/curses.ts +1 -1
  1001. package/src/functions/deepCopyTests.ts +4 -1
  1002. package/src/functions/dimensions.ts +2 -2
  1003. package/src/functions/doors.ts +11 -1
  1004. package/src/functions/entities.ts +2 -2
  1005. package/src/functions/entitiesSpecific.ts +1 -1
  1006. package/src/functions/familiars.ts +1 -1
  1007. package/src/functions/gridEntities.ts +2 -2
  1008. package/src/functions/index.ts +99 -0
  1009. package/src/functions/indexTypeDoc.ts +99 -0
  1010. package/src/functions/itemPool.ts +1 -1
  1011. package/src/functions/level.ts +1 -1
  1012. package/src/functions/levelGrid.ts +2 -2
  1013. package/src/functions/log.ts +2 -280
  1014. package/src/functions/logEntities.ts +276 -0
  1015. package/src/functions/mergeTests.ts +4 -1
  1016. package/src/functions/minimap.ts +1 -1
  1017. package/src/functions/nextStage.ts +1 -1
  1018. package/src/functions/npcs.ts +1 -1
  1019. package/src/functions/pickupsSpecific.ts +1 -1
  1020. package/src/functions/pills.ts +2 -2
  1021. package/src/functions/playerCenter.ts +2 -2
  1022. package/src/functions/playerHealth.ts +1 -1
  1023. package/src/functions/playerIndex.ts +1 -1
  1024. package/src/functions/players.ts +1 -1
  1025. package/src/functions/positionVelocity.ts +2 -2
  1026. package/src/functions/pressurePlate.ts +1 -1
  1027. package/src/functions/reorderedCallbacks.ts +46 -0
  1028. package/src/functions/revive.ts +2 -2
  1029. package/src/functions/rng.ts +1 -1
  1030. package/src/functions/rockAlt.ts +149 -21
  1031. package/src/functions/roomData.ts +1 -1
  1032. package/src/functions/roomTransition.ts +78 -0
  1033. package/src/functions/rooms.ts +4 -62
  1034. package/src/functions/run.ts +2 -2
  1035. package/src/functions/seeds.ts +1 -1
  1036. package/src/functions/sound.ts +1 -1
  1037. package/src/functions/spawnCollectible.ts +1 -1
  1038. package/src/functions/sprites.ts +1 -1
  1039. package/src/functions/stage.ts +1 -1
  1040. package/src/functions/trinkets.ts +2 -2
  1041. package/src/functions/ui.ts +2 -2
  1042. package/src/functions/utils.ts +1 -1
  1043. package/src/index.ts +9 -194
  1044. package/src/indexTypeDoc.ts +13 -0
  1045. package/src/interfaces/CustomStageLua.ts +26 -3
  1046. package/src/interfaces/index.ts +10 -0
  1047. package/src/interfaces/indexTypeDoc.ts +10 -0
  1048. package/src/interfaces/{AddCallbackParameterCustom.ts → private/AddCallbackParameterCustom.ts} +88 -88
  1049. package/src/interfaces/{CustomStage.ts → private/CustomStage.ts} +1 -1
  1050. package/src/interfaces/private/CustomTrapdoorDescription.ts +2 -2
  1051. package/src/maps/index.ts +4 -0
  1052. package/src/maps/indexTypeDoc.ts +4 -0
  1053. package/src/objects/LRoomShapeToRectangles.ts +1 -1
  1054. package/src/objects/backdropTypeToRockAltType.ts +3 -3
  1055. package/src/objects/callbackRegisterFunctions.ts +1 -1
  1056. package/src/objects/directionToVector.ts +1 -1
  1057. package/src/objects/index.ts +1 -0
  1058. package/src/objects/indexTypeDoc.ts +1 -0
  1059. package/src/objects/roomShapeToDoorSlotsToGridIndexDelta.ts +1 -1
  1060. package/src/objects/roomShapeToTopLeftPosition.ts +1 -1
  1061. package/src/patchErrorFunctions.ts +0 -2
  1062. package/src/types/Immutable.ts +26 -0
  1063. package/src/types/PickingUpItem.ts +0 -2
  1064. package/src/types/TrapdoorDestination.ts +5 -0
  1065. package/src/types/index.ts +11 -0
  1066. package/src/types/indexTypeDoc.ts +11 -0
  1067. package/dist/cachedClasses.d.ts.map +0 -1
  1068. package/dist/constants.d.ts.map +0 -1
  1069. package/dist/constantsFirstLast.d.ts.map +0 -1
  1070. package/dist/interfaces/AddCallbackParameterCustom.d.ts +0 -178
  1071. package/dist/interfaces/AddCallbackParameterCustom.d.ts.map +0 -1
  1072. package/dist/interfaces/CustomStage.d.ts.map +0 -1
  1073. package/dist/upgradeMod.d.ts.map +0 -1
@@ -1,21 +1,18 @@
1
1
  import { ButtonAction, ControllerIndex } from "isaac-typescript-definitions";
2
- import { fonts, game } from "../../cachedClasses";
3
- import { KColorDefault, VectorOne } from "../../constants";
2
+ import { fonts, game } from "../../core/cachedClasses";
3
+ import { KColorDefault, VectorOne } from "../../core/constants";
4
4
  import { getEnumValues } from "../../functions/enums";
5
5
  import {
6
6
  getScreenBottomCenterPos,
7
7
  getScreenTopCenterPos,
8
8
  } from "../../functions/ui";
9
- import { CustomStage } from "../../interfaces/CustomStage";
9
+ import { CustomStage } from "../../interfaces/private/CustomStage";
10
+ import {
11
+ UIStreakAnimation,
12
+ UI_STREAK_ANIMATION_END_FRAMES,
13
+ } from "./customStageConstants";
10
14
  import v from "./v";
11
15
 
12
- enum UIStreakAnimation {
13
- TEXT = "Text",
14
- TEXT_IN = "TextIn",
15
- TEXT_OUT = "TextOut",
16
- TEXT_STAY = "TextStay",
17
- }
18
-
19
16
  /** This must match the name of the shader in "shaders.xml". */
20
17
  const EMPTY_SHADER_NAME = "IsaacScript-RenderAboveHUD";
21
18
 
@@ -29,7 +26,7 @@ const TEXT_STAY_FRAME = 8;
29
26
  const TEXT_OUT_FRAME = 60;
30
27
 
31
28
  /** This matches the offset that the vanilla game uses; determined via trial and error. */
32
- const STREAK_SPRITE_TOP_OFFSET = Vector(0, 48.25);
29
+ const STREAK_SPRITE_TOP_OFFSET = Vector(0, 47);
33
30
 
34
31
  /** This matches the offset that the vanilla game uses; determined via trial and error. */
35
32
  const STREAK_SPRITE_BOTTOM_OFFSET = Vector(0, -48.25);
@@ -47,9 +44,6 @@ const STREAK_TEXT_BOTTOM_Y_OFFSET = -9;
47
44
  */
48
45
  const NUM_RENDER_FRAMES_MAP_HELD_BEFORE_STREAK_TEXT = 11;
49
46
 
50
- /** Corresponds to the vanilla value; determined through trial and error. */
51
- const TEXT_PLAYBACK_SPEED = 0.5;
52
-
53
47
  /** Taken from StageAPI. */
54
48
  const TEXT_IN_ADJUSTMENTS = [-800, -639, -450, -250, -70, 10, 6, 3];
55
49
 
@@ -82,33 +76,6 @@ const TEXT_OUT_SCALES = [
82
76
  Vector(3, 0.2),
83
77
  ];
84
78
 
85
- /**
86
- * We do not actually need to render this sprite at all. It's only purpose is to be an invisible
87
- * reference for when and where we need to render the stage's name. Thus, we specify "false" for
88
- * "loadGraphics", but still manage playing its animations in the code below.
89
- */
90
- const topStreakSprite = Sprite();
91
-
92
- /**
93
- * We do not actually need to render this sprite at all. It's only purpose is to be an invisible
94
- * reference for when and where we need to render the stage's name. Thus, we specify "false" for
95
- * "loadGraphics", but still manage playing its animations in the code below.
96
- */
97
- const bottomStreakSprite = Sprite();
98
-
99
- /**
100
- * We must load the sprites in an init function to prevent issues with mods that replace the vanilla
101
- * files. (For some reason, loading the sprites will cause the overwrite to no longer apply on the
102
- * second and subsequent runs.)
103
- */
104
- export function streakTextInit(): void {
105
- topStreakSprite.Load("resources/gfx/ui/ui_streak.anm2", false);
106
- topStreakSprite.PlaybackSpeed = TEXT_PLAYBACK_SPEED;
107
-
108
- bottomStreakSprite.Load("resources/gfx/ui/ui_streak.anm2", false);
109
- bottomStreakSprite.PlaybackSpeed = TEXT_PLAYBACK_SPEED;
110
- }
111
-
112
79
  // ModCallback.POST_RENDER (2)
113
80
  export function streakTextPostRender(): void {
114
81
  // The top streak only plays when the player arrives on the floor (or continues a game from the
@@ -124,7 +91,7 @@ export function streakTextPostRender(): void {
124
91
  function checkEndTopStreakText() {
125
92
  if (
126
93
  v.run.topStreakTextStartedRenderFrame === null ||
127
- !topStreakSprite.IsPlaying(UIStreakAnimation.TEXT_STAY)
94
+ v.run.topStreakText.animation !== UIStreakAnimation.TEXT_STAY
128
95
  ) {
129
96
  return;
130
97
  }
@@ -133,7 +100,10 @@ function checkEndTopStreakText() {
133
100
  const elapsedFrames =
134
101
  renderFrameCount - v.run.topStreakTextStartedRenderFrame;
135
102
  if (elapsedFrames >= 115) {
136
- playTextOut(topStreakSprite);
103
+ v.run.topStreakText.animation = UIStreakAnimation.TEXT;
104
+ // We adjust by the frame backwards by an arbitrary amount to roughly align with the speed of
105
+ // the vanilla animation.
106
+ v.run.topStreakText.frame = TEXT_OUT_FRAME - 2;
137
107
  }
138
108
  }
139
109
 
@@ -165,7 +135,7 @@ function trackMapInputPressed() {
165
135
  * slides in from the left.
166
136
  */
167
137
  function checkStartBottomStreakText() {
168
- if (bottomStreakSprite.IsPlaying()) {
138
+ if (v.run.bottomStreakText.animation !== UIStreakAnimation.NONE) {
169
139
  return;
170
140
  }
171
141
 
@@ -180,7 +150,8 @@ function checkStartBottomStreakText() {
180
150
  const gameFrameCount = game.GetFrameCount();
181
151
  const elapsedFrames = gameFrameCount - earliestFrame;
182
152
  if (elapsedFrames >= NUM_RENDER_FRAMES_MAP_HELD_BEFORE_STREAK_TEXT) {
183
- bottomStreakSprite.Play(UIStreakAnimation.TEXT, true);
153
+ v.run.bottomStreakText.animation = UIStreakAnimation.TEXT;
154
+ v.run.bottomStreakText.frame = 0;
184
155
  }
185
156
  }
186
157
 
@@ -189,7 +160,7 @@ function checkStartBottomStreakText() {
189
160
  * right.
190
161
  */
191
162
  function checkEndBottomStreakText() {
192
- if (!bottomStreakSprite.IsPlaying(UIStreakAnimation.TEXT_STAY)) {
163
+ if (v.run.bottomStreakText.animation !== UIStreakAnimation.TEXT_STAY) {
193
164
  return;
194
165
  }
195
166
 
@@ -197,16 +168,13 @@ function checkEndBottomStreakText() {
197
168
  ...v.run.controllerIndexPushingMapRenderFrame.values(),
198
169
  ];
199
170
  if (pushedMapFrames.length === 0) {
200
- playTextOut(bottomStreakSprite);
171
+ v.run.bottomStreakText.animation = UIStreakAnimation.TEXT;
172
+ // We adjust by the frame backwards by an arbitrary amount to roughly align with the speed of
173
+ // the vanilla animation.
174
+ v.run.bottomStreakText.frame = TEXT_OUT_FRAME - 2;
201
175
  }
202
176
  }
203
177
 
204
- // ModCallback.POST_GAME_STARTED (15)
205
- export function streakTextPostGameStarted(): void {
206
- topStreakSprite.Stop();
207
- bottomStreakSprite.Stop();
208
- }
209
-
210
178
  // ModCallback.GET_SHADER_PARAMS (22)
211
179
  export function streakTextGetShaderParams(
212
180
  customStage: CustomStage,
@@ -218,27 +186,44 @@ export function streakTextGetShaderParams(
218
186
 
219
187
  const topCenterPos = getScreenTopCenterPos();
220
188
  const topStreakPosition = topCenterPos.add(STREAK_SPRITE_TOP_OFFSET);
221
- renderSprite(customStage, topStreakSprite, topStreakPosition);
189
+ renderStreakText(customStage, v.run.topStreakText, topStreakPosition);
222
190
 
223
191
  const bottomCenterPos = getScreenBottomCenterPos();
224
192
  const bottomStreakPosition = bottomCenterPos.add(STREAK_SPRITE_BOTTOM_OFFSET);
225
- renderSprite(customStage, bottomStreakSprite, bottomStreakPosition);
193
+ renderStreakText(customStage, v.run.bottomStreakText, bottomStreakPosition);
226
194
  }
227
195
 
228
- function renderSprite(
196
+ function renderStreakText(
229
197
  customStage: CustomStage,
230
- sprite: Sprite,
198
+ streakText: { animation: UIStreakAnimation; frame: int; pauseFrame: boolean },
231
199
  position: Vector,
232
200
  ) {
233
- sprite.Update();
234
- if (!sprite.IsPlaying()) {
201
+ if (streakText.animation === UIStreakAnimation.NONE) {
202
+ return;
203
+ }
204
+
205
+ if (streakText.animation !== UIStreakAnimation.TEXT_STAY) {
206
+ const { pauseFrame } = streakText;
207
+ streakText.pauseFrame = !streakText.pauseFrame;
208
+
209
+ if (!pauseFrame) {
210
+ streakText.frame++;
211
+ }
212
+ }
213
+
214
+ const endFrame = UI_STREAK_ANIMATION_END_FRAMES[streakText.animation];
215
+ if (streakText.frame > endFrame) {
216
+ streakText.animation = UIStreakAnimation.NONE;
217
+ streakText.frame = 0;
235
218
  return;
236
219
  }
237
220
 
238
- const animation = sprite.GetAnimation() as UIStreakAnimation;
239
- const frame = sprite.GetFrame();
240
- if (animation === UIStreakAnimation.TEXT && frame === TEXT_STAY_FRAME) {
241
- sprite.Play(UIStreakAnimation.TEXT_STAY, true);
221
+ if (
222
+ streakText.animation === UIStreakAnimation.TEXT &&
223
+ streakText.frame === TEXT_STAY_FRAME
224
+ ) {
225
+ streakText.animation = UIStreakAnimation.TEXT_STAY;
226
+ streakText.frame = 0;
242
227
  }
243
228
 
244
229
  const isPaused = game.IsPaused();
@@ -248,39 +233,22 @@ function renderSprite(
248
233
 
249
234
  const font = fonts.upheaval;
250
235
  const { name } = customStage;
251
- const length = font.GetStringWidthUTF8(name);
236
+ const numberSuffix = v.run.firstFloor ? "I" : "II";
237
+ const nameWithNumberSuffix = `${name} ${numberSuffix}`;
238
+ const length = font.GetStringWidthUTF8(nameWithNumberSuffix);
252
239
  const centeredX = position.X - length / 2;
253
240
 
254
241
  let adjustment = 0;
255
242
  let scale = VectorOne;
256
- switch (animation) {
257
- case UIStreakAnimation.TEXT: {
258
- if (frame < TEXT_STAY_FRAME) {
259
- adjustment = TEXT_IN_ADJUSTMENTS[frame] ?? 0;
260
- scale = TEXT_IN_SCALES[frame] ?? VectorOne;
261
- } else {
262
- const adjustedFrame = frame - TEXT_OUT_FRAME;
263
- adjustment = TEXT_OUT_ADJUSTMENTS[adjustedFrame] ?? 0;
264
- scale = TEXT_OUT_SCALES[adjustedFrame] ?? VectorOne;
265
- }
266
243
 
267
- break;
268
- }
269
-
270
- case UIStreakAnimation.TEXT_IN: {
271
- adjustment = TEXT_IN_ADJUSTMENTS[frame] ?? 0;
272
- scale = TEXT_IN_SCALES[frame] ?? VectorOne;
273
- break;
274
- }
275
-
276
- case UIStreakAnimation.TEXT_OUT: {
277
- adjustment = TEXT_OUT_ADJUSTMENTS[frame] ?? 0;
278
- scale = TEXT_OUT_SCALES[frame] ?? VectorOne;
279
- break;
280
- }
281
-
282
- default: {
283
- break;
244
+ if (streakText.animation === UIStreakAnimation.TEXT) {
245
+ if (streakText.frame < TEXT_STAY_FRAME) {
246
+ adjustment = TEXT_IN_ADJUSTMENTS[streakText.frame] ?? 0;
247
+ scale = TEXT_IN_SCALES[streakText.frame] ?? VectorOne;
248
+ } else {
249
+ const adjustedFrame = streakText.frame - TEXT_OUT_FRAME;
250
+ adjustment = TEXT_OUT_ADJUSTMENTS[adjustedFrame] ?? 0;
251
+ scale = TEXT_OUT_SCALES[adjustedFrame] ?? VectorOne;
284
252
  }
285
253
  }
286
254
 
@@ -288,7 +256,7 @@ function renderSprite(
288
256
  const adjustedY = position.Y + STREAK_TEXT_BOTTOM_Y_OFFSET;
289
257
 
290
258
  font.DrawStringScaled(
291
- name,
259
+ nameWithNumberSuffix,
292
260
  adjustedX,
293
261
  adjustedY,
294
262
  scale.X,
@@ -297,12 +265,6 @@ function renderSprite(
297
265
  );
298
266
  }
299
267
 
300
- function playTextOut(sprite: Sprite) {
301
- sprite.Play(UIStreakAnimation.TEXT, true);
302
- // We adjust by 2 to roughly align with the speed of the vanilla animation.
303
- sprite.SetFrame(TEXT_OUT_FRAME - 2);
304
- }
305
-
306
268
  export function topStreakTextStart(): void {
307
269
  const level = game.GetLevel();
308
270
  const renderFrameCount = Isaac.GetFrameCount();
@@ -311,6 +273,7 @@ export function topStreakTextStart(): void {
311
273
  level.ShowName(false);
312
274
 
313
275
  // Initiate the animation for the custom text.
276
+ v.run.topStreakText.animation = UIStreakAnimation.TEXT;
277
+ v.run.topStreakText.frame = 0;
314
278
  v.run.topStreakTextStartedRenderFrame = renderFrameCount;
315
- topStreakSprite.Play(UIStreakAnimation.TEXT, true);
316
279
  }
@@ -1,15 +1,32 @@
1
1
  import { ControllerIndex } from "isaac-typescript-definitions";
2
- import { CustomStage } from "../../interfaces/CustomStage";
2
+ import { CustomStage } from "../../interfaces/private/CustomStage";
3
+ import { UIStreakAnimation } from "./customStageConstants";
3
4
 
4
5
  const v = {
5
6
  run: {
6
7
  currentCustomStage: null as CustomStage | null,
8
+
9
+ /** Whether we are on e.g. Caves 1 or Caves 2. */
10
+ firstFloor: true,
11
+
7
12
  showingBossVersusScreen: false,
8
13
 
9
14
  /** Values are the render frame that the controller first pressed the map button. */
10
15
  controllerIndexPushingMapRenderFrame: new Map<ControllerIndex, int>(),
11
16
 
12
17
  topStreakTextStartedRenderFrame: null as int | null,
18
+
19
+ topStreakText: {
20
+ animation: UIStreakAnimation.NONE,
21
+ frame: 0,
22
+ pauseFrame: false,
23
+ },
24
+
25
+ bottomStreakText: {
26
+ animation: UIStreakAnimation.NONE,
27
+ frame: 0,
28
+ pauseFrame: false,
29
+ },
13
30
  },
14
31
 
15
32
  room: {
@@ -4,13 +4,14 @@ import {
4
4
  RoomType,
5
5
  SoundEffect,
6
6
  StageID,
7
+ StageType,
7
8
  } from "isaac-typescript-definitions";
8
- import { game, sfxManager } from "../../cachedClasses";
9
+ import { game, sfxManager } from "../../core/cachedClasses";
9
10
  import { arrayRemove } from "../../functions/array";
10
11
  import { getBosses } from "../../functions/bosses";
11
12
  import { getEntityID } from "../../functions/entities";
12
13
  import { erange } from "../../functions/utils";
13
- import { CustomStage } from "../../interfaces/CustomStage";
14
+ import { CustomStage } from "../../interfaces/private/CustomStage";
14
15
  import { BOSS_NAME_PNG_FILE_NAMES } from "../../objects/bossNamePNGFileNames";
15
16
  import { BOSS_PORTRAIT_PNG_FILE_NAMES } from "../../objects/bossPortraitPNGFileNames";
16
17
  import { PLAYER_NAME_PNG_FILE_NAMES } from "../../objects/playerNamePNGFileNames";
@@ -18,7 +19,13 @@ import { PLAYER_PORTRAIT_PNG_FILE_NAMES } from "../../objects/playerPortraitPNGF
18
19
  import { VERSUS_SCREEN_BACKGROUND_COLORS } from "../../objects/versusScreenBackgroundColors";
19
20
  import { VERSUS_SCREEN_DIRT_SPOT_COLORS } from "../../objects/versusScreenDirtSpotColors";
20
21
  import { pause, unpause } from "../pause";
22
+ import { runNextGameFrame } from "../runInNFrames";
21
23
  import { ISAACSCRIPT_CUSTOM_STAGE_GFX_PATH } from "./customStageConstants";
24
+ import {
25
+ DEFAULT_BASE_STAGE,
26
+ DEFAULT_BASE_STAGE_TYPE,
27
+ INVALID_STAGE_VALUE,
28
+ } from "./exports";
22
29
  import v, { customBossPNGPaths } from "./v";
23
30
 
24
31
  const DEFAULT_CHARACTER = PlayerType.ISAAC;
@@ -102,12 +109,29 @@ export function versusScreenInit(): void {
102
109
  export function playVersusScreenAnimation(customStage: CustomStage): void {
103
110
  const room = game.GetRoom();
104
111
  const roomType = room.GetType();
112
+ const roomCleared = room.IsClear();
105
113
  const hud = game.GetHUD();
106
114
 
107
115
  if (roomType !== RoomType.BOSS) {
108
116
  return;
109
117
  }
110
118
 
119
+ if (roomCleared) {
120
+ return;
121
+ }
122
+
123
+ if (willVanillaVersusScreenPlay()) {
124
+ // Since we are on an invalid stage, the versus screen will have a completely black background.
125
+ // Revert to using the background from the default stage.
126
+ const level = game.GetLevel();
127
+ level.SetStage(DEFAULT_BASE_STAGE, DEFAULT_BASE_STAGE_TYPE);
128
+ runNextGameFrame(() => {
129
+ const futureLevel = game.GetLevel();
130
+ futureLevel.SetStage(INVALID_STAGE_VALUE, StageType.ORIGINAL);
131
+ });
132
+ return;
133
+ }
134
+
111
135
  v.run.showingBossVersusScreen = true;
112
136
 
113
137
  pause();
@@ -156,6 +180,11 @@ export function playVersusScreenAnimation(customStage: CustomStage): void {
156
180
  }
157
181
  }
158
182
 
183
+ function willVanillaVersusScreenPlay() {
184
+ const bosses = getBosses();
185
+ return bosses.some((boss) => boss.GetBossID() !== 0);
186
+ }
187
+
159
188
  /** Use the character of the 0th player. */
160
189
  function getPlayerPNGPaths(): [
161
190
  playerNamePNGPath: string,
@@ -1,4 +1,4 @@
1
- import { VectorZero } from "../../constants";
1
+ import { VectorZero } from "../../core/constants";
2
2
  import { StageTravelState } from "../../enums/private/StageTravelState";
3
3
  import v from "./v";
4
4
 
@@ -9,7 +9,11 @@ import v from "./v";
9
9
  const blackSprite = Sprite();
10
10
 
11
11
  export function drawBlackSprite(): void {
12
- if (v.run.state !== StageTravelState.PAUSING_ON_BLACK) {
12
+ if (
13
+ v.run.state !== StageTravelState.WAITING_FOR_FIRST_PIXELATION_TO_END &&
14
+ v.run.state !==
15
+ StageTravelState.WAITING_FOR_SECOND_PIXELATION_TO_GET_HALF_WAY
16
+ ) {
13
17
  return;
14
18
  }
15
19
 
@@ -3,6 +3,10 @@ import { GridEntityType } from "isaac-typescript-definitions";
3
3
  export const CUSTOM_TRAPDOOR_FEATURE_NAME = "customTrapdoor";
4
4
 
5
5
  export const GridEntityTypeCustom = {
6
+ /**
7
+ * We arbitrarily choose 1000 as to not conflict with end-user mods. (The expectation is that
8
+ * end-user mods will begin their enums with values of 1 and increment upwards.)
9
+ */
6
10
  TRAPDOOR_CUSTOM: 1000 as GridEntityType,
7
11
  } as const;
8
12
 
@@ -3,13 +3,14 @@ import {
3
3
  LevelStage,
4
4
  StageType,
5
5
  } from "isaac-typescript-definitions";
6
- import { game } from "../../cachedClasses";
6
+ import { game } from "../../core/cachedClasses";
7
7
  import { TrapdoorAnimation } from "../../enums/private/TrapdoorAnimation";
8
8
  import { errorIfFeaturesNotInitialized } from "../../featuresInitialized";
9
9
  import { getNextStage, getNextStageType } from "../../functions/nextStage";
10
10
  import { getRoomListIndex } from "../../functions/roomData";
11
11
  import { isVector } from "../../functions/vector";
12
12
  import { CustomTrapdoorDescription } from "../../interfaces/private/CustomTrapdoorDescription";
13
+ import { TrapdoorDestination } from "../../types/TrapdoorDestination";
13
14
  import { spawnCustomGridEntity } from "../customGridEntity";
14
15
  import {
15
16
  CUSTOM_TRAPDOOR_FEATURE_NAME,
@@ -25,7 +26,6 @@ import v from "./v";
25
26
  * - custom destination (or custom logic for after the player enters)
26
27
  * - custom graphics
27
28
  * - custom logic for opening/closing
28
- * - TODO: player jumping animation?
29
29
  *
30
30
  * You can use this function to take the player to your custom stage.
31
31
  *
@@ -34,10 +34,12 @@ import v from "./v";
34
34
  *
35
35
  * @param gridIndexOrPosition The location in the room to spawn the trapdoor.
36
36
  * @param destination Optional. Used to specify where the player will go after jumping into the
37
- * trapdoor. Can either be a tuple containing the stage and stage type, or a
38
- * string containing the name of a custom stage. If not specified at all, then
39
- * the "normal" destination corresponding to the current stage and room will be
40
- * used (e.g. the next floor).
37
+ * trapdoor. Can either be a vanilla stage tuple, a custom stage tuple, or
38
+ * undefined. For example, a destination of `[LevelStage.CAVES_1,
39
+ * StageType.ORIGINAL]` corresponds to Caves 1, and a destination of
40
+ * `["Slaughterhouse", 1]` corresponds to a custom stage of Slaughterhouse 1. If
41
+ * the destination is undefined, then the "normal" destination corresponding to
42
+ * the current stage and room will be used (e.g. the next floor, in most cases).
41
43
  * @param anm2Path Optional. The path to the anm2 file to use. By default, the vanilla trapdoor anm2
42
44
  * of "gfx/grid/door_11_trapdoor.anm2" will be used. The specified anm2 file must
43
45
  * have animations called "Opened", "Closed", and "Open Animation".
@@ -46,7 +48,7 @@ import v from "./v";
46
48
  */
47
49
  export function spawnCustomTrapdoor(
48
50
  gridIndexOrPosition: int | Vector,
49
- destination?: [stage: LevelStage, stageType: StageType] | string,
51
+ destination?: TrapdoorDestination,
50
52
  anm2Path = "gfx/grid/door_11_trapdoor.anm2",
51
53
  spawnOpen?: boolean,
52
54
  ): GridEntity {
@@ -1,19 +1,22 @@
1
1
  import {
2
2
  Direction,
3
+ EntityCollisionClass,
4
+ EntityGridCollisionClass,
3
5
  ModCallback,
4
6
  RoomTransitionAnim,
7
+ StageType,
5
8
  } from "isaac-typescript-definitions";
6
- import { game } from "../../cachedClasses";
7
9
  import { ModUpgraded } from "../../classes/ModUpgraded";
10
+ import { game } from "../../core/cachedClasses";
8
11
  import { ModCallbackCustom } from "../../enums/ModCallbackCustom";
9
12
  import { StageTravelState } from "../../enums/private/StageTravelState";
10
13
  import { movePlayersToCenter } from "../../functions/playerCenter";
11
14
  import { getAllPlayers } from "../../functions/playerIndex";
12
15
  import { getRoomGridIndex, getRoomListIndex } from "../../functions/roomData";
13
- import { teleport } from "../../functions/rooms";
16
+ import { teleport } from "../../functions/roomTransition";
14
17
  import { setStage } from "../../functions/stage";
15
18
  import { isString } from "../../functions/types";
16
- import { setCustomStage } from "../customStage/exports";
19
+ import { disableCustomStage, setCustomStage } from "../customStage/exports";
17
20
  import { topStreakTextStart } from "../customStage/streakText";
18
21
  import { enableAllInputs } from "../disableInputs";
19
22
  import { runNextGameFrame } from "../runInNFrames";
@@ -45,7 +48,7 @@ export function customTrapdoorInit(mod: ModUpgraded): void {
45
48
  function postRender() {
46
49
  checkAllPlayersJumpComplete();
47
50
  checkPixelationToBlackComplete();
48
- checkPausingOnBlackComplete();
51
+ checkSecondPixelationHalfWay();
49
52
  checkAllPlayersLayingDownComplete();
50
53
  drawBlackSprite();
51
54
  }
@@ -74,6 +77,8 @@ function checkAllPlayersJumpComplete() {
74
77
  Direction.NO_DIRECTION,
75
78
  RoomTransitionAnim.PIXELATION,
76
79
  );
80
+
81
+ // Next, we wait a certain amount of render frames for the pixelation to fade the screen to black.
77
82
  }
78
83
 
79
84
  function checkPixelationToBlackComplete() {
@@ -86,7 +91,6 @@ function checkPixelationToBlackComplete() {
86
91
 
87
92
  const hud = game.GetHUD();
88
93
  const renderFrameCount = Isaac.GetFrameCount();
89
- const roomGridIndex = getRoomGridIndex();
90
94
 
91
95
  const renderFrameScreenBlack =
92
96
  v.run.stateRenderFrame + PIXELATION_TO_BLACK_FRAMES;
@@ -94,25 +98,44 @@ function checkPixelationToBlackComplete() {
94
98
  return;
95
99
  }
96
100
 
97
- v.run.state = StageTravelState.PAUSING_ON_BLACK;
98
- v.run.stateRenderFrame = renderFrameCount;
101
+ v.run.state = StageTravelState.WAITING_FOR_FIRST_PIXELATION_TO_END;
99
102
 
103
+ // Now, we display a black sprite on top of the pixelation effect, to prevent showing the rest of
104
+ // the animation.
100
105
  hud.SetVisible(false);
101
- goToCustomDestination();
102
106
 
103
- // Start another pixelation effect. This time, we will keep the screen black with the sprite, and
104
- // then remove the black sprite once the pixelation effect is halfway complete.
105
- teleport(
106
- roomGridIndex,
107
- Direction.NO_DIRECTION,
108
- RoomTransitionAnim.PIXELATION,
109
- true,
110
- );
107
+ // If the pixelation effect is not fully allowed to complete, the game's internal buffer will not
108
+ // be flushed. The consequence of this is that after 11 custom stage transitions, the "log.txt"
109
+ // starts to become become spammed with: [ASSERT] - PushRenderTarget: stack overflow!
110
+
111
+ // In order to work around this, we fully let the animation complete by only continuing the stage
112
+ // transition on the next game frame.
113
+ runNextGameFrame(() => {
114
+ const level = game.GetLevel();
115
+ const startingRoomIndex = level.GetStartingRoomIndex();
116
+ const futureRenderFrameCount = Isaac.GetFrameCount();
117
+
118
+ v.run.state =
119
+ StageTravelState.WAITING_FOR_SECOND_PIXELATION_TO_GET_HALF_WAY;
120
+ v.run.stateRenderFrame = futureRenderFrameCount;
121
+
122
+ goToCustomDestination();
123
+
124
+ // Start another pixelation effect. This time, we will keep the screen black with the sprite,
125
+ // and then remove the black sprite once the pixelation effect is halfway complete.
126
+ teleport(
127
+ startingRoomIndex,
128
+ Direction.NO_DIRECTION,
129
+ RoomTransitionAnim.PIXELATION,
130
+ true,
131
+ );
132
+ });
111
133
  }
112
134
 
113
- function checkPausingOnBlackComplete() {
135
+ function checkSecondPixelationHalfWay() {
114
136
  if (
115
- v.run.state !== StageTravelState.PAUSING_ON_BLACK ||
137
+ v.run.state !==
138
+ StageTravelState.WAITING_FOR_SECOND_PIXELATION_TO_GET_HALF_WAY ||
116
139
  v.run.stateRenderFrame === null
117
140
  ) {
118
141
  return;
@@ -132,14 +155,18 @@ function checkPausingOnBlackComplete() {
132
155
  hud.SetVisible(true);
133
156
 
134
157
  runNextRoom(() => {
158
+ v.run.state = StageTravelState.PLAYERS_LAYING_DOWN;
159
+
135
160
  // After the room transition, the players will be placed next to a door, but they should be in
136
161
  // the center of the room to emulate what happens on a vanilla stage.
137
162
  movePlayersToCenter();
138
163
 
139
- v.run.state = StageTravelState.PLAYERS_LAYING_DOWN;
140
-
141
164
  for (const player of getAllPlayers()) {
142
165
  player.AnimateAppear();
166
+
167
+ // We need to restore the original collision classes.
168
+ player.EntityCollisionClass = EntityCollisionClass.ALL;
169
+ player.GridCollisionClass = EntityGridCollisionClass.GROUND;
143
170
  }
144
171
  });
145
172
 
@@ -171,11 +198,16 @@ function goToCustomDestination() {
171
198
  return;
172
199
  }
173
200
 
174
- if (isString(v.run.destination)) {
175
- setCustomStage("Slaughterhouse");
201
+ const [arg1, arg2] = v.run.destination;
202
+
203
+ if (isString(arg1)) {
204
+ // A string represents a custom stage.
205
+ const firstFloor = arg2 === 1;
206
+ setCustomStage("Slaughterhouse", firstFloor);
176
207
  } else {
177
- const [stage, stageType] = v.run.destination;
178
- setStage(stage, stageType);
208
+ // A number represents a vanilla `LevelStage`.
209
+ disableCustomStage();
210
+ setStage(arg1, arg2 as StageType);
179
211
  }
180
212
  }
181
213
 
@@ -1,5 +1,5 @@
1
1
  import { RoomType } from "isaac-typescript-definitions";
2
- import { game } from "../../cachedClasses";
2
+ import { game } from "../../core/cachedClasses";
3
3
  import { TrapdoorAnimation } from "../../enums/private/TrapdoorAnimation";
4
4
  import { anyPlayerCloserThan } from "../../functions/positionVelocity";
5
5
  import { CustomTrapdoorDescription } from "../../interfaces/private/CustomTrapdoorDescription";
@@ -5,7 +5,7 @@ import {
5
5
  EntityPartition,
6
6
  PlayerType,
7
7
  } from "isaac-typescript-definitions";
8
- import { VectorZero } from "../../constants";
8
+ import { VectorZero } from "../../core/constants";
9
9
  import { StageTravelState } from "../../enums/private/StageTravelState";
10
10
  import { easeOutSine } from "../../functions/easing";
11
11
  import {
@@ -81,6 +81,9 @@ function playerTouchedCustomTrapdoor(
81
81
  v.run.state = StageTravelState.PLAYERS_JUMPING_DOWN;
82
82
  v.run.destination = trapdoorDescription.destination;
83
83
 
84
+ // We don't want to allow pausing, since that will allow render frames to pass without advancing
85
+ // the stage traveling logic. (We track how many render frames have passed to know when to move to
86
+ // the next step.)
84
87
  const whitelist = new Set([ButtonAction.CONSOLE]);
85
88
  disableAllInputsExceptFor(CUSTOM_TRAPDOOR_FEATURE_NAME, whitelist);
86
89
  setPlayerAttributes(player, gridEntity.Position);
@@ -115,7 +118,7 @@ function setPlayerAttributes(trapdoorPlayer: EntityPlayer, position: Vector) {
115
118
  player.EntityCollisionClass = EntityCollisionClass.NONE;
116
119
  player.GridCollisionClass = EntityGridCollisionClass.NONE;
117
120
 
118
- player.SubType = -1;
121
+ player.StopExtraAnimation();
119
122
  }
120
123
  }
121
124