isaacscript-common 2.0.34 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1034) hide show
  1. package/.eslintrc.js +70 -0
  2. package/README.md +1 -1
  3. package/build.sh +27 -0
  4. package/docs.sh +21 -0
  5. package/lint.sh +34 -0
  6. package/package.json +5 -4
  7. package/project.json +37 -0
  8. package/release.sh +16 -0
  9. package/scripts/.eslintrc.js +21 -0
  10. package/scripts/docsEntryPointLint.ts +135 -0
  11. package/scripts/tsconfig.json +5 -0
  12. package/src/cachedClasses.ts +39 -0
  13. package/src/callbacks/customRevive.ts +206 -0
  14. package/src/callbacks/itemPickup.ts +101 -0
  15. package/src/callbacks/postBombInitLate.ts +36 -0
  16. package/src/callbacks/postBoneSwing.ts +64 -0
  17. package/src/callbacks/postCollectibleInitFirst.ts +39 -0
  18. package/src/callbacks/postCursedTeleport.ts +183 -0
  19. package/src/callbacks/postCustomDoorEnter.ts +297 -0
  20. package/src/callbacks/postDoorRender.ts +26 -0
  21. package/src/callbacks/postDoorUpdate.ts +26 -0
  22. package/src/callbacks/postEffectInitLate.ts +36 -0
  23. package/src/callbacks/postEffectStateChanged.ts +43 -0
  24. package/src/callbacks/postEsauJr.ts +107 -0
  25. package/src/callbacks/postFamiliarInitLate.ts +36 -0
  26. package/src/callbacks/postFamiliarStateChanged.ts +43 -0
  27. package/src/callbacks/postFlip.ts +88 -0
  28. package/src/callbacks/postGreedModeWave.ts +41 -0
  29. package/src/callbacks/postGridEntity.ts +159 -0
  30. package/src/callbacks/postGridEntityCollision.ts +69 -0
  31. package/src/callbacks/postGridEntityRender.ts +26 -0
  32. package/src/callbacks/postHolyMantleRemoved.ts +55 -0
  33. package/src/callbacks/postItemDischarged.ts +149 -0
  34. package/src/callbacks/postKnifeInitLate.ts +36 -0
  35. package/src/callbacks/postLaserInitLate.ts +36 -0
  36. package/src/callbacks/postNPCInitLate.ts +36 -0
  37. package/src/callbacks/postNPCStateChanged.ts +42 -0
  38. package/src/callbacks/postNewRoomEarly.ts +90 -0
  39. package/src/callbacks/postPickupCollect.ts +48 -0
  40. package/src/callbacks/postPickupInitLate.ts +36 -0
  41. package/src/callbacks/postPickupStateChanged.ts +43 -0
  42. package/src/callbacks/postPitRender.ts +26 -0
  43. package/src/callbacks/postPitUpdate.ts +26 -0
  44. package/src/callbacks/postPlayerChangeHealth.ts +62 -0
  45. package/src/callbacks/postPlayerChangeType.ts +56 -0
  46. package/src/callbacks/postPlayerFatalDamage.ts +98 -0
  47. package/src/callbacks/postPlayerInitLate.ts +37 -0
  48. package/src/callbacks/postPlayerReordered.ts +142 -0
  49. package/src/callbacks/postPoopRender.ts +26 -0
  50. package/src/callbacks/postPoopUpdate.ts +26 -0
  51. package/src/callbacks/postPressurePlateRender.ts +26 -0
  52. package/src/callbacks/postPressurePlateUpdate.ts +26 -0
  53. package/src/callbacks/postProjectileInitLate.ts +36 -0
  54. package/src/callbacks/postPurchase.ts +64 -0
  55. package/src/callbacks/postRockRender.ts +26 -0
  56. package/src/callbacks/postRockUpdate.ts +26 -0
  57. package/src/callbacks/postRoomClearChanged.ts +52 -0
  58. package/src/callbacks/postSacrifice.ts +62 -0
  59. package/src/callbacks/postSlotInitUpdate.ts +63 -0
  60. package/src/callbacks/postSlotRender.ts +96 -0
  61. package/src/callbacks/postSpikesRender.ts +26 -0
  62. package/src/callbacks/postSpikesUpdate.ts +26 -0
  63. package/src/callbacks/postTNTRender.ts +26 -0
  64. package/src/callbacks/postTNTUpdate.ts +26 -0
  65. package/src/callbacks/postTearInitLate.ts +36 -0
  66. package/src/callbacks/postTearInitVeryLate.ts +41 -0
  67. package/src/callbacks/postTransformation.ts +59 -0
  68. package/src/callbacks/postTrinketBreak.ts +110 -0
  69. package/src/callbacks/preBerserkDeath.ts +49 -0
  70. package/src/callbacks/preNewLevel.ts +55 -0
  71. package/src/callbacks/reorderedCallbacks.ts +166 -0
  72. package/src/callbacks/subscriptions/postBombInitLate.ts +32 -0
  73. package/src/callbacks/subscriptions/postBoneSwing.ts +24 -0
  74. package/src/callbacks/subscriptions/postCollectibleInitFirst.ts +37 -0
  75. package/src/callbacks/subscriptions/postCursedTeleport.ts +24 -0
  76. package/src/callbacks/subscriptions/postCustomDoorEnter.ts +45 -0
  77. package/src/callbacks/subscriptions/postCustomRevive.ts +36 -0
  78. package/src/callbacks/subscriptions/postDoorRender.ts +35 -0
  79. package/src/callbacks/subscriptions/postDoorUpdate.ts +35 -0
  80. package/src/callbacks/subscriptions/postEffectInitLate.ts +32 -0
  81. package/src/callbacks/subscriptions/postEffectStateChanged.ts +40 -0
  82. package/src/callbacks/subscriptions/postEsauJr.ts +24 -0
  83. package/src/callbacks/subscriptions/postFamiliarInitLate.ts +32 -0
  84. package/src/callbacks/subscriptions/postFamiliarStateChanged.ts +40 -0
  85. package/src/callbacks/subscriptions/postFirstEsauJr.ts +24 -0
  86. package/src/callbacks/subscriptions/postFirstFlip.ts +24 -0
  87. package/src/callbacks/subscriptions/postFlip.ts +22 -0
  88. package/src/callbacks/subscriptions/postGameStartedReordered.ts +24 -0
  89. package/src/callbacks/subscriptions/postGreedModeWave.ts +24 -0
  90. package/src/callbacks/subscriptions/postGridEntityBroken.ts +51 -0
  91. package/src/callbacks/subscriptions/postGridEntityCollision.ts +54 -0
  92. package/src/callbacks/subscriptions/postGridEntityInit.ts +51 -0
  93. package/src/callbacks/subscriptions/postGridEntityRemove.ts +52 -0
  94. package/src/callbacks/subscriptions/postGridEntityRender.ts +51 -0
  95. package/src/callbacks/subscriptions/postGridEntityStateChanged.ts +55 -0
  96. package/src/callbacks/subscriptions/postGridEntityUpdate.ts +51 -0
  97. package/src/callbacks/subscriptions/postHolyMantleRemoved.ts +48 -0
  98. package/src/callbacks/subscriptions/postItemDischarged.ts +43 -0
  99. package/src/callbacks/subscriptions/postItemPickup.ts +64 -0
  100. package/src/callbacks/subscriptions/postKnifeInitLate.ts +32 -0
  101. package/src/callbacks/subscriptions/postLaserInitLate.ts +32 -0
  102. package/src/callbacks/subscriptions/postNPCInitLate.ts +32 -0
  103. package/src/callbacks/subscriptions/postNPCStateChanged.ts +42 -0
  104. package/src/callbacks/subscriptions/postNewLevelReordered.ts +22 -0
  105. package/src/callbacks/subscriptions/postNewRoomEarly.ts +22 -0
  106. package/src/callbacks/subscriptions/postNewRoomReordered.ts +22 -0
  107. package/src/callbacks/subscriptions/postPEffectUpdateReordered.ts +40 -0
  108. package/src/callbacks/subscriptions/postPickupCollect.ts +34 -0
  109. package/src/callbacks/subscriptions/postPickupInitLate.ts +31 -0
  110. package/src/callbacks/subscriptions/postPickupStateChanged.ts +35 -0
  111. package/src/callbacks/subscriptions/postPitRender.ts +35 -0
  112. package/src/callbacks/subscriptions/postPitUpdate.ts +35 -0
  113. package/src/callbacks/subscriptions/postPlayerChangeHealth.ts +45 -0
  114. package/src/callbacks/subscriptions/postPlayerChangeType.ts +40 -0
  115. package/src/callbacks/subscriptions/postPlayerFatalDamage.ts +67 -0
  116. package/src/callbacks/subscriptions/postPlayerInitLate.ts +40 -0
  117. package/src/callbacks/subscriptions/postPlayerInitReordered.ts +40 -0
  118. package/src/callbacks/subscriptions/postPlayerRenderReordered.ts +40 -0
  119. package/src/callbacks/subscriptions/postPlayerUpdateReordered.ts +40 -0
  120. package/src/callbacks/subscriptions/postPoopRender.ts +35 -0
  121. package/src/callbacks/subscriptions/postPoopUpdate.ts +35 -0
  122. package/src/callbacks/subscriptions/postPressurePlateRender.ts +37 -0
  123. package/src/callbacks/subscriptions/postPressurePlateUpdate.ts +37 -0
  124. package/src/callbacks/subscriptions/postProjectileInitLate.ts +35 -0
  125. package/src/callbacks/subscriptions/postPurchase.ts +31 -0
  126. package/src/callbacks/subscriptions/postRockRender.ts +35 -0
  127. package/src/callbacks/subscriptions/postRockUpdate.ts +35 -0
  128. package/src/callbacks/subscriptions/postRoomClearChanged.ts +24 -0
  129. package/src/callbacks/subscriptions/postSacrifice.ts +43 -0
  130. package/src/callbacks/subscriptions/postSlotAnimationChanged.ts +40 -0
  131. package/src/callbacks/subscriptions/postSlotDestroyed.ts +32 -0
  132. package/src/callbacks/subscriptions/postSlotInit.ts +32 -0
  133. package/src/callbacks/subscriptions/postSlotRender.ts +32 -0
  134. package/src/callbacks/subscriptions/postSlotUpdate.ts +32 -0
  135. package/src/callbacks/subscriptions/postSpikesRender.ts +35 -0
  136. package/src/callbacks/subscriptions/postSpikesUpdate.ts +35 -0
  137. package/src/callbacks/subscriptions/postTNTRender.ts +35 -0
  138. package/src/callbacks/subscriptions/postTNTUpdate.ts +35 -0
  139. package/src/callbacks/subscriptions/postTearInitLate.ts +32 -0
  140. package/src/callbacks/subscriptions/postTearInitVeryLate.ts +32 -0
  141. package/src/callbacks/subscriptions/postTransformation.ts +40 -0
  142. package/src/callbacks/subscriptions/postTrinketBreak.ts +38 -0
  143. package/src/callbacks/subscriptions/preBerserkDeath.ts +42 -0
  144. package/src/callbacks/subscriptions/preCustomRevive.ts +45 -0
  145. package/src/callbacks/subscriptions/preItemPickup.ts +64 -0
  146. package/src/callbacks/subscriptions/preNewLevel.ts +24 -0
  147. package/src/classes/DefaultMap.ts +220 -0
  148. package/src/classes/ModUpgraded.ts +83 -0
  149. package/src/constants.ts +140 -0
  150. package/src/constantsFirstLast.ts +212 -0
  151. package/src/enums/HealthType.ts +16 -0
  152. package/src/enums/ModCallbackCustom.ts +943 -0
  153. package/src/enums/PocketItemType.ts +8 -0
  154. package/src/enums/SerializationType.ts +5 -0
  155. package/src/enums/private/CopyableIsaacAPIClassType.ts +7 -0
  156. package/src/enums/private/SaveDataKey.ts +14 -0
  157. package/src/enums/private/SerializationBrand.ts +42 -0
  158. package/src/features/characterHealthConversion.ts +116 -0
  159. package/src/features/characterStats.ts +61 -0
  160. package/src/features/debugDisplay/debugDisplay.ts +221 -0
  161. package/src/features/debugDisplay/exports.ts +368 -0
  162. package/src/features/debugDisplay/v.ts +65 -0
  163. package/src/features/deployJSONRoom.ts +672 -0
  164. package/src/features/disableInputs.ts +193 -0
  165. package/src/features/disableSound.ts +77 -0
  166. package/src/features/extraConsoleCommands/commandsDisplay.ts +290 -0
  167. package/src/features/extraConsoleCommands/commandsSubroutines.ts +139 -0
  168. package/src/features/extraConsoleCommands/init.ts +334 -0
  169. package/src/features/extraConsoleCommands/listCommands.ts +1298 -0
  170. package/src/features/extraConsoleCommands/v.ts +14 -0
  171. package/src/features/fadeInRemover.ts +60 -0
  172. package/src/features/fastReset.ts +75 -0
  173. package/src/features/forgottenSwitch.ts +50 -0
  174. package/src/features/getCollectibleItemPoolType.ts +66 -0
  175. package/src/features/playerInventory.ts +187 -0
  176. package/src/features/ponyDetection.ts +74 -0
  177. package/src/features/preventCollectibleRotation.ts +113 -0
  178. package/src/features/runInNFrames.ts +148 -0
  179. package/src/features/saveDataManager/constants.ts +4 -0
  180. package/src/features/saveDataManager/exports.ts +230 -0
  181. package/src/features/saveDataManager/load.ts +90 -0
  182. package/src/features/saveDataManager/main.ts +187 -0
  183. package/src/features/saveDataManager/maps.ts +13 -0
  184. package/src/features/saveDataManager/merge.ts +182 -0
  185. package/src/features/saveDataManager/save.ts +66 -0
  186. package/src/features/saveDataManager/serializationBrand.ts +15 -0
  187. package/src/features/sirenHelpers.ts +129 -0
  188. package/src/features/taintedLazarusPlayers.ts +113 -0
  189. package/src/featuresInitialized.ts +20 -0
  190. package/src/functions/array.ts +412 -0
  191. package/src/functions/benchmark.ts +36 -0
  192. package/src/functions/bitwise.ts +24 -0
  193. package/src/functions/boss.ts +227 -0
  194. package/src/functions/cacheFlag.ts +12 -0
  195. package/src/functions/cards.ts +267 -0
  196. package/src/functions/challenges.ts +11 -0
  197. package/src/functions/character.ts +124 -0
  198. package/src/functions/charge.ts +237 -0
  199. package/src/functions/chargeBar.ts +67 -0
  200. package/src/functions/collectibleCacheFlag.ts +90 -0
  201. package/src/functions/collectibleSet.ts +57 -0
  202. package/src/functions/collectibleTag.ts +89 -0
  203. package/src/functions/collectibles.ts +610 -0
  204. package/src/functions/color.ts +149 -0
  205. package/src/functions/debug.ts +65 -0
  206. package/src/functions/deepCopy.ts +508 -0
  207. package/src/functions/deepCopyTests.ts +390 -0
  208. package/src/functions/direction.ts +16 -0
  209. package/src/functions/doors.ts +343 -0
  210. package/src/functions/easing.ts +182 -0
  211. package/src/functions/eden.ts +47 -0
  212. package/src/functions/entity.ts +352 -0
  213. package/src/functions/entitySpecific.ts +889 -0
  214. package/src/functions/entityTypes.ts +6 -0
  215. package/src/functions/enums.ts +145 -0
  216. package/src/functions/familiars.ts +106 -0
  217. package/src/functions/flag.ts +165 -0
  218. package/src/functions/flying.ts +117 -0
  219. package/src/functions/globals.ts +249 -0
  220. package/src/functions/gridEntity.ts +511 -0
  221. package/src/functions/gridEntitySpecific.ts +112 -0
  222. package/src/functions/input.ts +139 -0
  223. package/src/functions/isaacAPIClass.ts +65 -0
  224. package/src/functions/jsonHelpers.ts +45 -0
  225. package/src/functions/jsonRoom.ts +100 -0
  226. package/src/functions/kColor.ts +130 -0
  227. package/src/functions/language.ts +13 -0
  228. package/src/functions/level.ts +31 -0
  229. package/src/functions/log.ts +660 -0
  230. package/src/functions/map.ts +56 -0
  231. package/src/functions/math.ts +149 -0
  232. package/src/functions/mergeTests.ts +288 -0
  233. package/src/functions/npc.ts +148 -0
  234. package/src/functions/pickupVariants.ts +60 -0
  235. package/src/functions/pickups.ts +449 -0
  236. package/src/functions/pills.ts +182 -0
  237. package/src/functions/player.ts +975 -0
  238. package/src/functions/playerDataStructures.ts +150 -0
  239. package/src/functions/playerHealth.ts +318 -0
  240. package/src/functions/playerIndex.ts +195 -0
  241. package/src/functions/pocketItems.ts +149 -0
  242. package/src/functions/positionVelocity.ts +188 -0
  243. package/src/functions/random.ts +77 -0
  244. package/src/functions/revive.ts +201 -0
  245. package/src/functions/rng.ts +177 -0
  246. package/src/functions/roomData.ts +199 -0
  247. package/src/functions/roomGrid.ts +109 -0
  248. package/src/functions/roomShape.ts +80 -0
  249. package/src/functions/rooms.ts +667 -0
  250. package/src/functions/run.ts +36 -0
  251. package/src/functions/seeds.ts +19 -0
  252. package/src/functions/serialization.ts +97 -0
  253. package/src/functions/set.ts +95 -0
  254. package/src/functions/sound.ts +9 -0
  255. package/src/functions/spawnCollectible.ts +104 -0
  256. package/src/functions/sprite.ts +107 -0
  257. package/src/functions/stage.ts +125 -0
  258. package/src/functions/string.ts +47 -0
  259. package/src/functions/table.ts +139 -0
  260. package/src/functions/tears.ts +32 -0
  261. package/src/functions/transformations.ts +137 -0
  262. package/src/functions/trinketCacheFlag.ts +60 -0
  263. package/src/functions/trinketGive.ts +157 -0
  264. package/src/functions/trinkets.ts +215 -0
  265. package/src/functions/tstlClass.ts +91 -0
  266. package/src/functions/ui.ts +138 -0
  267. package/src/functions/utils.ts +200 -0
  268. package/src/functions/vector.ts +145 -0
  269. package/src/index.ts +162 -0
  270. package/src/initCustomCallbacks.ts +120 -0
  271. package/src/initFeatures.ts +37 -0
  272. package/src/interfaces/AddCallbackParameterCustom.ts +174 -0
  273. package/src/interfaces/ChargeBarSprites.ts +12 -0
  274. package/src/interfaces/JSONDoor.ts +13 -0
  275. package/src/interfaces/JSONEntity.ts +16 -0
  276. package/src/interfaces/JSONRoom.ts +36 -0
  277. package/src/interfaces/JSONRooms.ts +12 -0
  278. package/src/interfaces/JSONSpawn.ts +14 -0
  279. package/src/interfaces/PlayerHealth.ts +16 -0
  280. package/src/interfaces/PocketItemDescription.ts +9 -0
  281. package/src/interfaces/SaveData.ts +29 -0
  282. package/src/interfaces/TrinketSituation.ts +9 -0
  283. package/src/interfaces/private/TSTLClassMetatable.ts +8 -0
  284. package/src/maps/cardMap.ts +209 -0
  285. package/src/maps/characterMap.ts +87 -0
  286. package/src/maps/collectibleDescriptionMap.ts +732 -0
  287. package/src/maps/collectibleNameMap.ts +731 -0
  288. package/src/maps/defaultPlayerStatMap.ts +17 -0
  289. package/src/maps/gridEntityTypeToBrokenStateMap.ts +50 -0
  290. package/src/maps/gridEntityXMLMap.ts +176 -0
  291. package/src/maps/pillEffectMap.ts +88 -0
  292. package/src/maps/roomShapeToTopLeftWallGridIndexMap.ts +18 -0
  293. package/src/maps/roomTypeMap.ts +40 -0
  294. package/src/maps/trinketDescriptionMap.ts +200 -0
  295. package/src/maps/trinketNameMap.ts +198 -0
  296. package/src/objects/LRoomShapeToRectangles.ts +44 -0
  297. package/src/objects/callbackRegisterFunctions.ts +171 -0
  298. package/src/objects/cardDescriptions.ts +105 -0
  299. package/src/objects/cardNames.ts +105 -0
  300. package/src/objects/cardTypes.ts +104 -0
  301. package/src/objects/challengeNames.ts +52 -0
  302. package/src/objects/characterNames.ts +48 -0
  303. package/src/objects/coinSubTypeToValue.ts +14 -0
  304. package/src/objects/colors.ts +16 -0
  305. package/src/objects/directionNames.ts +11 -0
  306. package/src/objects/directionToDegrees.ts +11 -0
  307. package/src/objects/directionToVector.ts +12 -0
  308. package/src/objects/doorSlotFlagToDoorSlot.ts +16 -0
  309. package/src/objects/doorSlotToDirection.ts +14 -0
  310. package/src/objects/isaacAPIClassTypeToBrand.ts +11 -0
  311. package/src/objects/isaacAPIClassTypeToCopyFunction.ts +18 -0
  312. package/src/objects/languageNames.ts +13 -0
  313. package/src/objects/pillEffectClasses.ts +63 -0
  314. package/src/objects/pillEffectNames.ts +57 -0
  315. package/src/objects/pillEffectTypes.ts +62 -0
  316. package/src/objects/roomShapeBounds.ts +71 -0
  317. package/src/objects/roomShapeLayoutSizes.ts +45 -0
  318. package/src/objects/roomShapeToBottomRightPosition.ts +25 -0
  319. package/src/objects/roomShapeToDoorSlots.ts +83 -0
  320. package/src/objects/roomShapeToDoorSlotsToGridIndexDelta.ts +127 -0
  321. package/src/objects/roomShapeToGridWidth.ts +21 -0
  322. package/src/objects/roomShapeToTopLeftPosition.ts +26 -0
  323. package/src/objects/roomShapeVolumes.ts +38 -0
  324. package/src/objects/roomTypeNames.ts +36 -0
  325. package/src/objects/serializedIsaacAPIClassTypeToIdentityFunction.ts +14 -0
  326. package/src/objects/stageTypeToLetter.ts +15 -0
  327. package/src/objects/transformationNames.ts +20 -0
  328. package/src/patchErrorFunctions.ts +92 -0
  329. package/src/sets/LRoomShapesSet.ts +8 -0
  330. package/src/sets/bossSets.ts +470 -0
  331. package/src/sets/charactersThatStartWithAnActiveItemSet.ts +16 -0
  332. package/src/sets/charactersWithBlackHeartFromEternalHeartSet.ts +7 -0
  333. package/src/sets/charactersWithFreeDevilDealsSet.ts +4 -0
  334. package/src/sets/charactersWithNoRedHeartsSet.ts +17 -0
  335. package/src/sets/charactersWithNoSoulHeartsSet.ts +14 -0
  336. package/src/sets/chestPickupVariantsSet.ts +16 -0
  337. package/src/sets/familiarsThatShootPlayerTearsSet.ts +13 -0
  338. package/src/sets/lostStyleCharactersSet.ts +13 -0
  339. package/src/sets/mineShaftRoomSubTypesSet.ts +10 -0
  340. package/src/sets/redHeartSubTypesSet.ts +7 -0
  341. package/src/sets/sinEntityTypesSet.ts +11 -0
  342. package/src/sets/singleUseActiveCollectibleTypesSet.ts +13 -0
  343. package/src/sets/storyBossesSet.ts +17 -0
  344. package/src/types/AnyEntity.ts +12 -0
  345. package/src/types/AwaitingTextInput.d.ts +2 -0
  346. package/src/types/CollectibleIndex.ts +14 -0
  347. package/src/types/PickingUpItem.ts +89 -0
  348. package/src/types/PlayerIndex.ts +13 -0
  349. package/src/types/private/IsaacAPIClass.ts +3 -0
  350. package/src/types/private/SerializedIsaacAPIClass.ts +3 -0
  351. package/src/types/private/TSTLClass.ts +3 -0
  352. package/src/upgradeMod.ts +55 -0
  353. package/tsconfig.json +42 -0
  354. package/typedoc.json +158 -0
  355. package/website-root.md +11 -0
  356. package/cachedClasses.d.ts +0 -37
  357. package/cachedClasses.lua +0 -6
  358. package/callbacks/customRevive.d.ts +0 -1
  359. package/callbacks/customRevive.lua +0 -145
  360. package/callbacks/itemPickup.d.ts +0 -1
  361. package/callbacks/itemPickup.lua +0 -64
  362. package/callbacks/postBombInitLate.d.ts +0 -1
  363. package/callbacks/postBombInitLate.lua +0 -31
  364. package/callbacks/postBoneSwing.d.ts +0 -1
  365. package/callbacks/postBoneSwing.lua +0 -48
  366. package/callbacks/postCollectibleInitFirst.d.ts +0 -1
  367. package/callbacks/postCollectibleInitFirst.lua +0 -32
  368. package/callbacks/postCursedTeleport.d.ts +0 -1
  369. package/callbacks/postCursedTeleport.lua +0 -119
  370. package/callbacks/postCustomDoorEnter.d.ts +0 -50
  371. package/callbacks/postCustomDoorEnter.lua +0 -203
  372. package/callbacks/postDoorRender.d.ts +0 -1
  373. package/callbacks/postDoorRender.lua +0 -24
  374. package/callbacks/postDoorUpdate.d.ts +0 -1
  375. package/callbacks/postDoorUpdate.lua +0 -24
  376. package/callbacks/postEffectInitLate.d.ts +0 -1
  377. package/callbacks/postEffectInitLate.lua +0 -31
  378. package/callbacks/postEffectStateChanged.d.ts +0 -1
  379. package/callbacks/postEffectStateChanged.lua +0 -37
  380. package/callbacks/postEsauJr.d.ts +0 -1
  381. package/callbacks/postEsauJr.lua +0 -67
  382. package/callbacks/postFamiliarInitLate.d.ts +0 -1
  383. package/callbacks/postFamiliarInitLate.lua +0 -31
  384. package/callbacks/postFamiliarStateChanged.d.ts +0 -1
  385. package/callbacks/postFamiliarStateChanged.lua +0 -37
  386. package/callbacks/postFlip.d.ts +0 -1
  387. package/callbacks/postFlip.lua +0 -61
  388. package/callbacks/postGreedModeWave.d.ts +0 -1
  389. package/callbacks/postGreedModeWave.lua +0 -32
  390. package/callbacks/postGridEntity.d.ts +0 -1
  391. package/callbacks/postGridEntity.lua +0 -105
  392. package/callbacks/postGridEntityCollision.d.ts +0 -1
  393. package/callbacks/postGridEntityCollision.lua +0 -65
  394. package/callbacks/postGridEntityRender.d.ts +0 -1
  395. package/callbacks/postGridEntityRender.lua +0 -24
  396. package/callbacks/postHolyMantleRemoved.d.ts +0 -1
  397. package/callbacks/postHolyMantleRemoved.lua +0 -39
  398. package/callbacks/postItemDischarged.d.ts +0 -2
  399. package/callbacks/postItemDischarged.lua +0 -104
  400. package/callbacks/postKnifeInitLate.d.ts +0 -1
  401. package/callbacks/postKnifeInitLate.lua +0 -31
  402. package/callbacks/postLaserInitLate.d.ts +0 -1
  403. package/callbacks/postLaserInitLate.lua +0 -31
  404. package/callbacks/postNPCInitLate.d.ts +0 -1
  405. package/callbacks/postNPCInitLate.lua +0 -31
  406. package/callbacks/postNPCStateChanged.d.ts +0 -1
  407. package/callbacks/postNPCStateChanged.lua +0 -37
  408. package/callbacks/postNewRoomEarly.d.ts +0 -1
  409. package/callbacks/postNewRoomEarly.lua +0 -65
  410. package/callbacks/postPickupCollect.d.ts +0 -1
  411. package/callbacks/postPickupCollect.lua +0 -39
  412. package/callbacks/postPickupInitLate.d.ts +0 -1
  413. package/callbacks/postPickupInitLate.lua +0 -31
  414. package/callbacks/postPickupStateChanged.d.ts +0 -1
  415. package/callbacks/postPickupStateChanged.lua +0 -37
  416. package/callbacks/postPitRender.d.ts +0 -1
  417. package/callbacks/postPitRender.lua +0 -24
  418. package/callbacks/postPitUpdate.d.ts +0 -1
  419. package/callbacks/postPitUpdate.lua +0 -24
  420. package/callbacks/postPlayerChangeHealth.d.ts +0 -1
  421. package/callbacks/postPlayerChangeHealth.lua +0 -50
  422. package/callbacks/postPlayerChangeType.d.ts +0 -1
  423. package/callbacks/postPlayerChangeType.lua +0 -39
  424. package/callbacks/postPlayerFatalDamage.d.ts +0 -1
  425. package/callbacks/postPlayerFatalDamage.lua +0 -71
  426. package/callbacks/postPlayerInitLate.d.ts +0 -1
  427. package/callbacks/postPlayerInitLate.lua +0 -33
  428. package/callbacks/postPlayerReordered.d.ts +0 -1
  429. package/callbacks/postPlayerReordered.lua +0 -112
  430. package/callbacks/postPoopRender.d.ts +0 -1
  431. package/callbacks/postPoopRender.lua +0 -24
  432. package/callbacks/postPoopUpdate.d.ts +0 -1
  433. package/callbacks/postPoopUpdate.lua +0 -24
  434. package/callbacks/postPressurePlateRender.d.ts +0 -1
  435. package/callbacks/postPressurePlateRender.lua +0 -24
  436. package/callbacks/postPressurePlateUpdate.d.ts +0 -1
  437. package/callbacks/postPressurePlateUpdate.lua +0 -24
  438. package/callbacks/postProjectileInitLate.d.ts +0 -1
  439. package/callbacks/postProjectileInitLate.lua +0 -31
  440. package/callbacks/postPurchase.d.ts +0 -1
  441. package/callbacks/postPurchase.lua +0 -49
  442. package/callbacks/postRockRender.d.ts +0 -1
  443. package/callbacks/postRockRender.lua +0 -24
  444. package/callbacks/postRockUpdate.d.ts +0 -1
  445. package/callbacks/postRockUpdate.lua +0 -24
  446. package/callbacks/postRoomClearChanged.d.ts +0 -1
  447. package/callbacks/postRoomClearChanged.lua +0 -40
  448. package/callbacks/postSacrifice.d.ts +0 -1
  449. package/callbacks/postSacrifice.lua +0 -42
  450. package/callbacks/postSlotInitUpdate.d.ts +0 -1
  451. package/callbacks/postSlotInitUpdate.lua +0 -51
  452. package/callbacks/postSlotRender.d.ts +0 -1
  453. package/callbacks/postSlotRender.lua +0 -74
  454. package/callbacks/postSpikesRender.d.ts +0 -1
  455. package/callbacks/postSpikesRender.lua +0 -24
  456. package/callbacks/postSpikesUpdate.d.ts +0 -1
  457. package/callbacks/postSpikesUpdate.lua +0 -24
  458. package/callbacks/postTNTRender.d.ts +0 -1
  459. package/callbacks/postTNTRender.lua +0 -24
  460. package/callbacks/postTNTUpdate.d.ts +0 -1
  461. package/callbacks/postTNTUpdate.lua +0 -24
  462. package/callbacks/postTearInitLate.d.ts +0 -1
  463. package/callbacks/postTearInitLate.lua +0 -31
  464. package/callbacks/postTearInitVeryLate.d.ts +0 -1
  465. package/callbacks/postTearInitVeryLate.lua +0 -34
  466. package/callbacks/postTransformation.d.ts +0 -1
  467. package/callbacks/postTransformation.lua +0 -46
  468. package/callbacks/postTrinketBreak.d.ts +0 -1
  469. package/callbacks/postTrinketBreak.lua +0 -70
  470. package/callbacks/preBerserkDeath.d.ts +0 -1
  471. package/callbacks/preBerserkDeath.lua +0 -36
  472. package/callbacks/preNewLevel.d.ts +0 -1
  473. package/callbacks/preNewLevel.lua +0 -43
  474. package/callbacks/reorderedCallbacks.d.ts +0 -20
  475. package/callbacks/reorderedCallbacks.lua +0 -92
  476. package/callbacks/subscriptions/postBombInitLate.d.ts +0 -5
  477. package/callbacks/subscriptions/postBombInitLate.lua +0 -23
  478. package/callbacks/subscriptions/postBoneSwing.d.ts +0 -4
  479. package/callbacks/subscriptions/postBoneSwing.lua +0 -16
  480. package/callbacks/subscriptions/postCollectibleInitFirst.d.ts +0 -5
  481. package/callbacks/subscriptions/postCollectibleInitFirst.lua +0 -23
  482. package/callbacks/subscriptions/postCursedTeleport.d.ts +0 -4
  483. package/callbacks/subscriptions/postCursedTeleport.lua +0 -16
  484. package/callbacks/subscriptions/postCustomDoorEnter.d.ts +0 -5
  485. package/callbacks/subscriptions/postCustomDoorEnter.lua +0 -29
  486. package/callbacks/subscriptions/postCustomRevive.d.ts +0 -5
  487. package/callbacks/subscriptions/postCustomRevive.lua +0 -23
  488. package/callbacks/subscriptions/postDoorRender.d.ts +0 -5
  489. package/callbacks/subscriptions/postDoorRender.lua +0 -24
  490. package/callbacks/subscriptions/postDoorUpdate.d.ts +0 -5
  491. package/callbacks/subscriptions/postDoorUpdate.lua +0 -24
  492. package/callbacks/subscriptions/postEffectInitLate.d.ts +0 -5
  493. package/callbacks/subscriptions/postEffectInitLate.lua +0 -23
  494. package/callbacks/subscriptions/postEffectStateChanged.d.ts +0 -5
  495. package/callbacks/subscriptions/postEffectStateChanged.lua +0 -23
  496. package/callbacks/subscriptions/postEsauJr.d.ts +0 -4
  497. package/callbacks/subscriptions/postEsauJr.lua +0 -16
  498. package/callbacks/subscriptions/postFamiliarInitLate.d.ts +0 -5
  499. package/callbacks/subscriptions/postFamiliarInitLate.lua +0 -23
  500. package/callbacks/subscriptions/postFamiliarStateChanged.d.ts +0 -5
  501. package/callbacks/subscriptions/postFamiliarStateChanged.lua +0 -23
  502. package/callbacks/subscriptions/postFirstEsauJr.d.ts +0 -4
  503. package/callbacks/subscriptions/postFirstEsauJr.lua +0 -16
  504. package/callbacks/subscriptions/postFirstFlip.d.ts +0 -4
  505. package/callbacks/subscriptions/postFirstFlip.lua +0 -16
  506. package/callbacks/subscriptions/postFlip.d.ts +0 -4
  507. package/callbacks/subscriptions/postFlip.lua +0 -16
  508. package/callbacks/subscriptions/postGameStartedReordered.d.ts +0 -3
  509. package/callbacks/subscriptions/postGameStartedReordered.lua +0 -16
  510. package/callbacks/subscriptions/postGreedModeWave.d.ts +0 -4
  511. package/callbacks/subscriptions/postGreedModeWave.lua +0 -16
  512. package/callbacks/subscriptions/postGridEntityBroken.d.ts +0 -6
  513. package/callbacks/subscriptions/postGridEntityBroken.lua +0 -29
  514. package/callbacks/subscriptions/postGridEntityCollision.d.ts +0 -6
  515. package/callbacks/subscriptions/postGridEntityCollision.lua +0 -29
  516. package/callbacks/subscriptions/postGridEntityInit.d.ts +0 -6
  517. package/callbacks/subscriptions/postGridEntityInit.lua +0 -29
  518. package/callbacks/subscriptions/postGridEntityRemove.d.ts +0 -6
  519. package/callbacks/subscriptions/postGridEntityRemove.lua +0 -27
  520. package/callbacks/subscriptions/postGridEntityRender.d.ts +0 -6
  521. package/callbacks/subscriptions/postGridEntityRender.lua +0 -29
  522. package/callbacks/subscriptions/postGridEntityStateChanged.d.ts +0 -6
  523. package/callbacks/subscriptions/postGridEntityStateChanged.lua +0 -29
  524. package/callbacks/subscriptions/postGridEntityUpdate.d.ts +0 -6
  525. package/callbacks/subscriptions/postGridEntityUpdate.lua +0 -29
  526. package/callbacks/subscriptions/postHolyMantleRemoved.d.ts +0 -6
  527. package/callbacks/subscriptions/postHolyMantleRemoved.lua +0 -28
  528. package/callbacks/subscriptions/postItemDischarged.d.ts +0 -5
  529. package/callbacks/subscriptions/postItemDischarged.lua +0 -23
  530. package/callbacks/subscriptions/postItemPickup.d.ts +0 -11
  531. package/callbacks/subscriptions/postItemPickup.lua +0 -27
  532. package/callbacks/subscriptions/postKnifeInitLate.d.ts +0 -5
  533. package/callbacks/subscriptions/postKnifeInitLate.lua +0 -23
  534. package/callbacks/subscriptions/postLaserInitLate.d.ts +0 -5
  535. package/callbacks/subscriptions/postLaserInitLate.lua +0 -23
  536. package/callbacks/subscriptions/postNPCInitLate.d.ts +0 -5
  537. package/callbacks/subscriptions/postNPCInitLate.lua +0 -23
  538. package/callbacks/subscriptions/postNPCStateChanged.d.ts +0 -6
  539. package/callbacks/subscriptions/postNPCStateChanged.lua +0 -27
  540. package/callbacks/subscriptions/postNewLevelReordered.d.ts +0 -1
  541. package/callbacks/subscriptions/postNewLevelReordered.lua +0 -16
  542. package/callbacks/subscriptions/postNewRoomEarly.d.ts +0 -1
  543. package/callbacks/subscriptions/postNewRoomEarly.lua +0 -16
  544. package/callbacks/subscriptions/postNewRoomReordered.d.ts +0 -1
  545. package/callbacks/subscriptions/postNewRoomReordered.lua +0 -16
  546. package/callbacks/subscriptions/postPEffectUpdateReordered.d.ts +0 -6
  547. package/callbacks/subscriptions/postPEffectUpdateReordered.lua +0 -28
  548. package/callbacks/subscriptions/postPickupCollect.d.ts +0 -4
  549. package/callbacks/subscriptions/postPickupCollect.lua +0 -23
  550. package/callbacks/subscriptions/postPickupInitLate.d.ts +0 -3
  551. package/callbacks/subscriptions/postPickupInitLate.lua +0 -23
  552. package/callbacks/subscriptions/postPickupStateChanged.d.ts +0 -5
  553. package/callbacks/subscriptions/postPickupStateChanged.lua +0 -23
  554. package/callbacks/subscriptions/postPitRender.d.ts +0 -5
  555. package/callbacks/subscriptions/postPitRender.lua +0 -24
  556. package/callbacks/subscriptions/postPitUpdate.d.ts +0 -5
  557. package/callbacks/subscriptions/postPitUpdate.lua +0 -24
  558. package/callbacks/subscriptions/postPlayerChangeHealth.d.ts +0 -7
  559. package/callbacks/subscriptions/postPlayerChangeHealth.lua +0 -28
  560. package/callbacks/subscriptions/postPlayerChangeType.d.ts +0 -5
  561. package/callbacks/subscriptions/postPlayerChangeType.lua +0 -23
  562. package/callbacks/subscriptions/postPlayerFatalDamage.d.ts +0 -6
  563. package/callbacks/subscriptions/postPlayerFatalDamage.lua +0 -39
  564. package/callbacks/subscriptions/postPlayerInitLate.d.ts +0 -6
  565. package/callbacks/subscriptions/postPlayerInitLate.lua +0 -28
  566. package/callbacks/subscriptions/postPlayerInitReordered.d.ts +0 -6
  567. package/callbacks/subscriptions/postPlayerInitReordered.lua +0 -28
  568. package/callbacks/subscriptions/postPlayerRenderReordered.d.ts +0 -6
  569. package/callbacks/subscriptions/postPlayerRenderReordered.lua +0 -28
  570. package/callbacks/subscriptions/postPlayerUpdateReordered.d.ts +0 -6
  571. package/callbacks/subscriptions/postPlayerUpdateReordered.lua +0 -28
  572. package/callbacks/subscriptions/postPoopRender.d.ts +0 -5
  573. package/callbacks/subscriptions/postPoopRender.lua +0 -24
  574. package/callbacks/subscriptions/postPoopUpdate.d.ts +0 -5
  575. package/callbacks/subscriptions/postPoopUpdate.lua +0 -24
  576. package/callbacks/subscriptions/postPressurePlateRender.d.ts +0 -5
  577. package/callbacks/subscriptions/postPressurePlateRender.lua +0 -24
  578. package/callbacks/subscriptions/postPressurePlateUpdate.d.ts +0 -5
  579. package/callbacks/subscriptions/postPressurePlateUpdate.lua +0 -24
  580. package/callbacks/subscriptions/postProjectileInitLate.d.ts +0 -5
  581. package/callbacks/subscriptions/postProjectileInitLate.lua +0 -23
  582. package/callbacks/subscriptions/postPurchase.d.ts +0 -6
  583. package/callbacks/subscriptions/postPurchase.lua +0 -16
  584. package/callbacks/subscriptions/postRockRender.d.ts +0 -5
  585. package/callbacks/subscriptions/postRockRender.lua +0 -24
  586. package/callbacks/subscriptions/postRockUpdate.d.ts +0 -5
  587. package/callbacks/subscriptions/postRockUpdate.lua +0 -24
  588. package/callbacks/subscriptions/postRoomClearChanged.d.ts +0 -3
  589. package/callbacks/subscriptions/postRoomClearChanged.lua +0 -16
  590. package/callbacks/subscriptions/postSacrifice.d.ts +0 -6
  591. package/callbacks/subscriptions/postSacrifice.lua +0 -28
  592. package/callbacks/subscriptions/postSlotAnimationChanged.d.ts +0 -5
  593. package/callbacks/subscriptions/postSlotAnimationChanged.lua +0 -23
  594. package/callbacks/subscriptions/postSlotDestroyed.d.ts +0 -5
  595. package/callbacks/subscriptions/postSlotDestroyed.lua +0 -23
  596. package/callbacks/subscriptions/postSlotInit.d.ts +0 -5
  597. package/callbacks/subscriptions/postSlotInit.lua +0 -23
  598. package/callbacks/subscriptions/postSlotRender.d.ts +0 -5
  599. package/callbacks/subscriptions/postSlotRender.lua +0 -23
  600. package/callbacks/subscriptions/postSlotUpdate.d.ts +0 -5
  601. package/callbacks/subscriptions/postSlotUpdate.lua +0 -23
  602. package/callbacks/subscriptions/postSpikesRender.d.ts +0 -5
  603. package/callbacks/subscriptions/postSpikesRender.lua +0 -24
  604. package/callbacks/subscriptions/postSpikesUpdate.d.ts +0 -5
  605. package/callbacks/subscriptions/postSpikesUpdate.lua +0 -24
  606. package/callbacks/subscriptions/postTNTRender.d.ts +0 -5
  607. package/callbacks/subscriptions/postTNTRender.lua +0 -24
  608. package/callbacks/subscriptions/postTNTUpdate.d.ts +0 -5
  609. package/callbacks/subscriptions/postTNTUpdate.lua +0 -24
  610. package/callbacks/subscriptions/postTearInitLate.d.ts +0 -5
  611. package/callbacks/subscriptions/postTearInitLate.lua +0 -23
  612. package/callbacks/subscriptions/postTearInitVeryLate.d.ts +0 -5
  613. package/callbacks/subscriptions/postTearInitVeryLate.lua +0 -23
  614. package/callbacks/subscriptions/postTransformation.d.ts +0 -5
  615. package/callbacks/subscriptions/postTransformation.lua +0 -23
  616. package/callbacks/subscriptions/postTrinketBreak.d.ts +0 -5
  617. package/callbacks/subscriptions/postTrinketBreak.lua +0 -23
  618. package/callbacks/subscriptions/preBerserkDeath.d.ts +0 -6
  619. package/callbacks/subscriptions/preBerserkDeath.lua +0 -29
  620. package/callbacks/subscriptions/preCustomRevive.d.ts +0 -6
  621. package/callbacks/subscriptions/preCustomRevive.lua +0 -32
  622. package/callbacks/subscriptions/preItemPickup.d.ts +0 -11
  623. package/callbacks/subscriptions/preItemPickup.lua +0 -27
  624. package/callbacks/subscriptions/preNewLevel.d.ts +0 -4
  625. package/callbacks/subscriptions/preNewLevel.lua +0 -16
  626. package/classes/DefaultMap.d.ts +0 -75
  627. package/classes/DefaultMap.lua +0 -84
  628. package/classes/ModUpgraded.d.ts +0 -17
  629. package/classes/ModUpgraded.lua +0 -38
  630. package/constants.d.ts +0 -104
  631. package/constants.lua +0 -45
  632. package/constantsMax.d.ts +0 -130
  633. package/constantsMax.lua +0 -50
  634. package/enums/HealthType.d.ts +0 -16
  635. package/enums/HealthType.lua +0 -21
  636. package/enums/ModCallbackCustom.d.ts +0 -109
  637. package/enums/ModCallbackCustom.lua +0 -153
  638. package/enums/PocketItemType.d.ts +0 -8
  639. package/enums/PocketItemType.lua +0 -15
  640. package/enums/SerializationType.d.ts +0 -5
  641. package/enums/SerializationType.lua +0 -9
  642. package/enums/private/CopyableIsaacAPIClassType.d.ts +0 -7
  643. package/enums/private/CopyableIsaacAPIClassType.lua +0 -7
  644. package/enums/private/SaveDataKey.d.ts +0 -7
  645. package/enums/private/SaveDataKey.lua +0 -11
  646. package/enums/private/SerializationBrand.d.ts +0 -37
  647. package/enums/private/SerializationBrand.lua +0 -12
  648. package/features/characterHealthConversion.d.ts +0 -10
  649. package/features/characterHealthConversion.lua +0 -85
  650. package/features/characterStats.d.ts +0 -19
  651. package/features/characterStats.lua +0 -37
  652. package/features/debugDisplay/debugDisplay.d.ts +0 -2
  653. package/features/debugDisplay/debugDisplay.lua +0 -181
  654. package/features/debugDisplay/exports.d.ts +0 -199
  655. package/features/debugDisplay/exports.lua +0 -133
  656. package/features/debugDisplay/v.d.ts +0 -44
  657. package/features/debugDisplay/v.lua +0 -54
  658. package/features/deployJSONRoom.d.ts +0 -65
  659. package/features/deployJSONRoom.lua +0 -463
  660. package/features/disableInputs.d.ts +0 -62
  661. package/features/disableInputs.lua +0 -89
  662. package/features/disableSound.d.ts +0 -18
  663. package/features/disableSound.lua +0 -48
  664. package/features/extraConsoleCommands/commands.d.ts +0 -349
  665. package/features/extraConsoleCommands/commands.lua +0 -922
  666. package/features/extraConsoleCommands/commandsDisplay.d.ts +0 -162
  667. package/features/extraConsoleCommands/commandsDisplay.lua +0 -129
  668. package/features/extraConsoleCommands/commandsSubroutines.d.ts +0 -9
  669. package/features/extraConsoleCommands/commandsSubroutines.lua +0 -129
  670. package/features/extraConsoleCommands/init.d.ts +0 -25
  671. package/features/extraConsoleCommands/init.lua +0 -249
  672. package/features/extraConsoleCommands/v.d.ts +0 -13
  673. package/features/extraConsoleCommands/v.lua +0 -10
  674. package/features/fadeInRemover.d.ts +0 -14
  675. package/features/fadeInRemover.lua +0 -45
  676. package/features/fastReset.d.ts +0 -14
  677. package/features/fastReset.lua +0 -49
  678. package/features/forgottenSwitch.d.ts +0 -5
  679. package/features/forgottenSwitch.lua +0 -28
  680. package/features/getCollectibleItemPoolType.d.ts +0 -7
  681. package/features/getCollectibleItemPoolType.lua +0 -43
  682. package/features/isPonyActive.d.ts +0 -6
  683. package/features/isPonyActive.lua +0 -49
  684. package/features/playerInventory.d.ts +0 -23
  685. package/features/playerInventory.lua +0 -129
  686. package/features/preventCollectibleRotate.d.ts +0 -11
  687. package/features/preventCollectibleRotate.lua +0 -58
  688. package/features/runInNFrames.d.ts +0 -61
  689. package/features/runInNFrames.lua +0 -78
  690. package/features/saveDataManager/constants.d.ts +0 -3
  691. package/features/saveDataManager/constants.lua +0 -4
  692. package/features/saveDataManager/exports.d.ts +0 -128
  693. package/features/saveDataManager/exports.lua +0 -66
  694. package/features/saveDataManager/load.d.ts +0 -4
  695. package/features/saveDataManager/load.lua +0 -66
  696. package/features/saveDataManager/main.d.ts +0 -3
  697. package/features/saveDataManager/main.lua +0 -119
  698. package/features/saveDataManager/maps.d.ts +0 -10
  699. package/features/saveDataManager/maps.lua +0 -8
  700. package/features/saveDataManager/merge.d.ts +0 -24
  701. package/features/saveDataManager/merge.lua +0 -124
  702. package/features/saveDataManager/save.d.ts +0 -4
  703. package/features/saveDataManager/save.lua +0 -44
  704. package/features/saveDataManager/serializationBrand.d.ts +0 -1
  705. package/features/saveDataManager/serializationBrand.lua +0 -17
  706. package/features/sirenHelpers.d.ts +0 -18
  707. package/features/sirenHelpers.lua +0 -69
  708. package/features/taintedLazarusPlayers.d.ts +0 -13
  709. package/features/taintedLazarusPlayers.lua +0 -74
  710. package/featuresInitialized.d.ts +0 -1
  711. package/featuresInitialized.lua +0 -14
  712. package/functions/array.d.ts +0 -141
  713. package/functions/array.lua +0 -269
  714. package/functions/benchmark.d.ts +0 -10
  715. package/functions/benchmark.lua +0 -32
  716. package/functions/bitwise.d.ts +0 -4
  717. package/functions/bitwise.lua +0 -21
  718. package/functions/boss.d.ts +0 -56
  719. package/functions/boss.lua +0 -183
  720. package/functions/cacheFlag.d.ts +0 -8
  721. package/functions/cacheFlag.lua +0 -7
  722. package/functions/cards.d.ts +0 -95
  723. package/functions/cards.lua +0 -174
  724. package/functions/challenges.d.ts +0 -3
  725. package/functions/challenges.lua +0 -9
  726. package/functions/character.d.ts +0 -48
  727. package/functions/character.lua +0 -73
  728. package/functions/charge.d.ts +0 -54
  729. package/functions/charge.lua +0 -123
  730. package/functions/chargeBar.d.ts +0 -19
  731. package/functions/chargeBar.lua +0 -43
  732. package/functions/collectibleCacheFlag.d.ts +0 -23
  733. package/functions/collectibleCacheFlag.lua +0 -65
  734. package/functions/collectibleSet.d.ts +0 -9
  735. package/functions/collectibleSet.lua +0 -51
  736. package/functions/collectibleTag.d.ts +0 -16
  737. package/functions/collectibleTag.lua +0 -74
  738. package/functions/collectibles.d.ts +0 -211
  739. package/functions/collectibles.lua +0 -281
  740. package/functions/color.d.ts +0 -31
  741. package/functions/color.lua +0 -122
  742. package/functions/debug.d.ts +0 -27
  743. package/functions/debug.lua +0 -31
  744. package/functions/deepCopy.d.ts +0 -29
  745. package/functions/deepCopy.lua +0 -357
  746. package/functions/deepCopyTests.d.ts +0 -1
  747. package/functions/deepCopyTests.lua +0 -316
  748. package/functions/direction.d.ts +0 -4
  749. package/functions/direction.lua +0 -17
  750. package/functions/doors.d.ts +0 -117
  751. package/functions/doors.lua +0 -231
  752. package/functions/easing.d.ts +0 -30
  753. package/functions/easing.lua +0 -115
  754. package/functions/eden.d.ts +0 -3
  755. package/functions/eden.lua +0 -47
  756. package/functions/entity.d.ts +0 -131
  757. package/functions/entity.lua +0 -233
  758. package/functions/entitySpecific.d.ts +0 -250
  759. package/functions/entitySpecific.lua +0 -642
  760. package/functions/entityTypes.d.ts +0 -3
  761. package/functions/entityTypes.lua +0 -7
  762. package/functions/enums.d.ts +0 -80
  763. package/functions/enums.lua +0 -85
  764. package/functions/familiars.d.ts +0 -60
  765. package/functions/familiars.lua +0 -33
  766. package/functions/flag.d.ts +0 -99
  767. package/functions/flag.lua +0 -47
  768. package/functions/flying.d.ts +0 -19
  769. package/functions/flying.lua +0 -67
  770. package/functions/globals.d.ts +0 -14
  771. package/functions/globals.lua +0 -230
  772. package/functions/gridEntity.d.ts +0 -155
  773. package/functions/gridEntity.lua +0 -263
  774. package/functions/gridEntitySpecific.d.ts +0 -18
  775. package/functions/gridEntitySpecific.lua +0 -88
  776. package/functions/input.d.ts +0 -32
  777. package/functions/input.lua +0 -106
  778. package/functions/isaacAPIClass.d.ts +0 -23
  779. package/functions/isaacAPIClass.lua +0 -35
  780. package/functions/jsonHelpers.d.ts +0 -18
  781. package/functions/jsonHelpers.lua +0 -26
  782. package/functions/jsonRoom.d.ts +0 -12
  783. package/functions/jsonRoom.lua +0 -86
  784. package/functions/kColor.d.ts +0 -31
  785. package/functions/kColor.lua +0 -101
  786. package/functions/language.d.ts +0 -2
  787. package/functions/language.lua +0 -17
  788. package/functions/level.d.ts +0 -1
  789. package/functions/level.lua +0 -29
  790. package/functions/log.d.ts +0 -78
  791. package/functions/log.lua +0 -519
  792. package/functions/map.d.ts +0 -22
  793. package/functions/map.lua +0 -43
  794. package/functions/math.d.ts +0 -50
  795. package/functions/math.lua +0 -92
  796. package/functions/mergeTests.d.ts +0 -1
  797. package/functions/mergeTests.lua +0 -182
  798. package/functions/npc.d.ts +0 -40
  799. package/functions/npc.lua +0 -104
  800. package/functions/pickupVariants.d.ts +0 -23
  801. package/functions/pickupVariants.lua +0 -37
  802. package/functions/pickups.d.ts +0 -132
  803. package/functions/pickups.lua +0 -407
  804. package/functions/pills.d.ts +0 -69
  805. package/functions/pills.lua +0 -83
  806. package/functions/player.d.ts +0 -296
  807. package/functions/player.lua +0 -611
  808. package/functions/playerDataStructures.d.ts +0 -41
  809. package/functions/playerDataStructures.lua +0 -34
  810. package/functions/playerHealth.d.ts +0 -22
  811. package/functions/playerHealth.lua +0 -286
  812. package/functions/playerIndex.d.ts +0 -68
  813. package/functions/playerIndex.lua +0 -127
  814. package/functions/pocketItems.d.ts +0 -33
  815. package/functions/pocketItems.lua +0 -86
  816. package/functions/positionVelocity.d.ts +0 -64
  817. package/functions/positionVelocity.lua +0 -108
  818. package/functions/random.d.ts +0 -42
  819. package/functions/random.lua +0 -38
  820. package/functions/revive.d.ts +0 -31
  821. package/functions/revive.lua +0 -102
  822. package/functions/rng.d.ts +0 -53
  823. package/functions/rng.lua +0 -129
  824. package/functions/roomData.d.ts +0 -108
  825. package/functions/roomData.lua +0 -92
  826. package/functions/roomGrid.d.ts +0 -40
  827. package/functions/roomGrid.lua +0 -59
  828. package/functions/roomShape.d.ts +0 -43
  829. package/functions/roomShape.lua +0 -45
  830. package/functions/rooms.d.ts +0 -194
  831. package/functions/rooms.lua +0 -382
  832. package/functions/run.d.ts +0 -12
  833. package/functions/run.lua +0 -28
  834. package/functions/seeds.d.ts +0 -9
  835. package/functions/seeds.lua +0 -15
  836. package/functions/serialization.d.ts +0 -11
  837. package/functions/serialization.lua +0 -65
  838. package/functions/set.d.ts +0 -39
  839. package/functions/set.lua +0 -61
  840. package/functions/sound.d.ts +0 -1
  841. package/functions/sound.lua +0 -13
  842. package/functions/spawnCollectible.d.ts +0 -31
  843. package/functions/spawnCollectible.lua +0 -70
  844. package/functions/sprite.d.ts +0 -36
  845. package/functions/sprite.lua +0 -64
  846. package/functions/stage.d.ts +0 -35
  847. package/functions/stage.lua +0 -70
  848. package/functions/string.d.ts +0 -13
  849. package/functions/string.lua +0 -36
  850. package/functions/table.d.ts +0 -36
  851. package/functions/table.lua +0 -79
  852. package/functions/tears.d.ts +0 -22
  853. package/functions/tears.lua +0 -14
  854. package/functions/transformations.d.ts +0 -30
  855. package/functions/transformations.lua +0 -96
  856. package/functions/trinketCacheFlag.d.ts +0 -10
  857. package/functions/trinketCacheFlag.lua +0 -50
  858. package/functions/trinketGive.d.ts +0 -38
  859. package/functions/trinketGive.lua +0 -90
  860. package/functions/trinkets.d.ts +0 -73
  861. package/functions/trinkets.lua +0 -115
  862. package/functions/tstlClass.d.ts +0 -20
  863. package/functions/tstlClass.lua +0 -56
  864. package/functions/ui.d.ts +0 -34
  865. package/functions/ui.lua +0 -95
  866. package/functions/utils.d.ts +0 -112
  867. package/functions/utils.lua +0 -94
  868. package/functions/vector.d.ts +0 -32
  869. package/functions/vector.lua +0 -118
  870. package/index.d.ts +0 -127
  871. package/index.lua +0 -900
  872. package/initCustomCallbacks.d.ts +0 -2
  873. package/initCustomCallbacks.lua +0 -178
  874. package/initFeatures.d.ts +0 -3
  875. package/initFeatures.lua +0 -51
  876. package/lualib_bundle.lua +0 -2488
  877. package/maps/cardMap.d.ts +0 -3
  878. package/maps/cardMap.lua +0 -211
  879. package/maps/characterMap.d.ts +0 -3
  880. package/maps/characterMap.lua +0 -89
  881. package/maps/collectibleDescriptionMap.d.ts +0 -3
  882. package/maps/collectibleDescriptionMap.lua +0 -728
  883. package/maps/collectibleNameMap.d.ts +0 -3
  884. package/maps/collectibleNameMap.lua +0 -728
  885. package/maps/defaultPlayerStatMap.d.ts +0 -3
  886. package/maps/defaultPlayerStatMap.lua +0 -24
  887. package/maps/gridEntityTypeToBrokenStateMap.d.ts +0 -2
  888. package/maps/gridEntityTypeToBrokenStateMap.lua +0 -26
  889. package/maps/gridEntityXMLMap.d.ts +0 -9
  890. package/maps/gridEntityXMLMap.lua +0 -51
  891. package/maps/pillEffectMap.d.ts +0 -3
  892. package/maps/pillEffectMap.lua +0 -89
  893. package/maps/roomShapeToTopLeftWallGridIndexMap.d.ts +0 -7
  894. package/maps/roomShapeToTopLeftWallGridIndexMap.lua +0 -15
  895. package/maps/roomTypeMap.d.ts +0 -3
  896. package/maps/roomTypeMap.lua +0 -44
  897. package/maps/trinketDescriptionMap.d.ts +0 -3
  898. package/maps/trinketDescriptionMap.lua +0 -196
  899. package/maps/trinketNameMap.d.ts +0 -3
  900. package/maps/trinketNameMap.lua +0 -196
  901. package/objects/LRoomShapeToRectangles.d.ts +0 -13
  902. package/objects/LRoomShapeToRectangles.lua +0 -33
  903. package/objects/callbackRegisterFunctions.d.ts +0 -5
  904. package/objects/callbackRegisterFunctions.lua +0 -231
  905. package/objects/cardDescriptions.d.ts +0 -5
  906. package/objects/cardDescriptions.lua +0 -105
  907. package/objects/cardNames.d.ts +0 -5
  908. package/objects/cardNames.lua +0 -105
  909. package/objects/cardTypes.d.ts +0 -5
  910. package/objects/cardTypes.lua +0 -106
  911. package/objects/challengeNames.d.ts +0 -5
  912. package/objects/challengeNames.lua +0 -53
  913. package/objects/characterNames.d.ts +0 -5
  914. package/objects/characterNames.lua +0 -49
  915. package/objects/coinSubTypeToValue.d.ts +0 -5
  916. package/objects/coinSubTypeToValue.lua +0 -15
  917. package/objects/colors.d.ts +0 -17
  918. package/objects/colors.lua +0 -12
  919. package/objects/directionNames.d.ts +0 -4
  920. package/objects/directionNames.lua +0 -11
  921. package/objects/directionToDegrees.d.ts +0 -4
  922. package/objects/directionToDegrees.lua +0 -11
  923. package/objects/directionToVector.d.ts +0 -4
  924. package/objects/directionToVector.lua +0 -13
  925. package/objects/doorSlotFlagToDoorSlot.d.ts +0 -5
  926. package/objects/doorSlotFlagToDoorSlot.lua +0 -16
  927. package/objects/doorSlotToDirection.d.ts +0 -4
  928. package/objects/doorSlotToDirection.lua +0 -16
  929. package/objects/isaacAPIClassTypeToBrand.d.ts +0 -5
  930. package/objects/isaacAPIClassTypeToBrand.lua +0 -7
  931. package/objects/isaacAPIClassTypeToCopyFunction.d.ts +0 -5
  932. package/objects/isaacAPIClassTypeToCopyFunction.lua +0 -13
  933. package/objects/pillEffectClasses.d.ts +0 -5
  934. package/objects/pillEffectClasses.lua +0 -59
  935. package/objects/pillEffectNames.d.ts +0 -5
  936. package/objects/pillEffectNames.lua +0 -57
  937. package/objects/pillEffectTypes.d.ts +0 -5
  938. package/objects/pillEffectTypes.lua +0 -58
  939. package/objects/roomShapeBounds.d.ts +0 -8
  940. package/objects/roomShapeBounds.lua +0 -24
  941. package/objects/roomShapeLayoutSizes.d.ts +0 -10
  942. package/objects/roomShapeLayoutSizes.lua +0 -25
  943. package/objects/roomShapeToBottomRightPosition.d.ts +0 -8
  944. package/objects/roomShapeToBottomRightPosition.lua +0 -20
  945. package/objects/roomShapeToDoorSlots.d.ts +0 -4
  946. package/objects/roomShapeToDoorSlots.lua +0 -46
  947. package/objects/roomShapeToDoorSlotsToGridIndexDelta.d.ts +0 -8
  948. package/objects/roomShapeToDoorSlotsToGridIndexDelta.lua +0 -87
  949. package/objects/roomShapeToGridWidth.d.ts +0 -4
  950. package/objects/roomShapeToGridWidth.lua +0 -20
  951. package/objects/roomShapeToTopLeftPosition.d.ts +0 -8
  952. package/objects/roomShapeToTopLeftPosition.lua +0 -22
  953. package/objects/roomShapeVolumes.d.ts +0 -13
  954. package/objects/roomShapeVolumes.lua +0 -27
  955. package/objects/roomTypeNames.d.ts +0 -5
  956. package/objects/roomTypeNames.lua +0 -37
  957. package/objects/serializedIsaacAPIClassTypeToIdentityFunction.d.ts +0 -4
  958. package/objects/serializedIsaacAPIClassTypeToIdentityFunction.lua +0 -13
  959. package/objects/stageTypeToLetter.d.ts +0 -4
  960. package/objects/stageTypeToLetter.lua +0 -12
  961. package/objects/transformationNames.d.ts +0 -5
  962. package/objects/transformationNames.lua +0 -21
  963. package/patchErrorFunctions.d.ts +0 -1
  964. package/patchErrorFunctions.lua +0 -50
  965. package/sets/LRoomShapesSet.d.ts +0 -2
  966. package/sets/LRoomShapesSet.lua +0 -8
  967. package/sets/bossSets.d.ts +0 -4
  968. package/sets/bossSets.lua +0 -531
  969. package/sets/charactersThatStartWithAnActiveItemSet.d.ts +0 -2
  970. package/sets/charactersThatStartWithAnActiveItemSet.lua +0 -20
  971. package/sets/charactersWithBlackHeartFromEternalHeartSet.d.ts +0 -2
  972. package/sets/charactersWithBlackHeartFromEternalHeartSet.lua +0 -8
  973. package/sets/charactersWithFreeDevilDealsSet.d.ts +0 -2
  974. package/sets/charactersWithFreeDevilDealsSet.lua +0 -8
  975. package/sets/charactersWithNoRedHeartsSet.d.ts +0 -6
  976. package/sets/charactersWithNoRedHeartsSet.lua +0 -17
  977. package/sets/charactersWithNoSoulHeartsSet.d.ts +0 -6
  978. package/sets/charactersWithNoSoulHeartsSet.lua +0 -14
  979. package/sets/chestPickupVariantsSet.d.ts +0 -2
  980. package/sets/chestPickupVariantsSet.lua +0 -21
  981. package/sets/familiarsThatShootPlayerTearsSet.d.ts +0 -2
  982. package/sets/familiarsThatShootPlayerTearsSet.lua +0 -17
  983. package/sets/lostStyleCharactersSet.d.ts +0 -6
  984. package/sets/lostStyleCharactersSet.lua +0 -14
  985. package/sets/mineShaftRoomSubTypesSet.d.ts +0 -2
  986. package/sets/mineShaftRoomSubTypesSet.lua +0 -14
  987. package/sets/redHeartSubTypesSet.d.ts +0 -2
  988. package/sets/redHeartSubTypesSet.lua +0 -8
  989. package/sets/sinEntityTypesSet.d.ts +0 -2
  990. package/sets/sinEntityTypesSet.lua +0 -16
  991. package/sets/singleUseActiveCollectibleTypesSet.d.ts +0 -2
  992. package/sets/singleUseActiveCollectibleTypesSet.lua +0 -17
  993. package/sets/storyBossesSet.d.ts +0 -2
  994. package/sets/storyBossesSet.lua +0 -22
  995. package/types/AddCallbackParameterCustom.d.ts +0 -153
  996. package/types/AddCallbackParameterCustom.lua +0 -4
  997. package/types/AnyEntity.d.ts +0 -2
  998. package/types/AnyEntity.lua +0 -2
  999. package/types/CollectibleIndex.d.ts +0 -16
  1000. package/types/CollectibleIndex.lua +0 -2
  1001. package/types/JSONDoor.d.ts +0 -10
  1002. package/types/JSONDoor.lua +0 -2
  1003. package/types/JSONEntity.d.ts +0 -12
  1004. package/types/JSONEntity.lua +0 -2
  1005. package/types/JSONRoom.d.ts +0 -30
  1006. package/types/JSONRoom.lua +0 -2
  1007. package/types/JSONRooms.d.ts +0 -11
  1008. package/types/JSONRooms.lua +0 -2
  1009. package/types/JSONSpawn.d.ts +0 -10
  1010. package/types/JSONSpawn.lua +0 -2
  1011. package/types/PickingUpItem.d.ts +0 -24
  1012. package/types/PickingUpItem.lua +0 -24
  1013. package/types/PlayerHealth.d.ts +0 -14
  1014. package/types/PlayerHealth.lua +0 -2
  1015. package/types/PlayerIndex.d.ts +0 -16
  1016. package/types/PlayerIndex.lua +0 -2
  1017. package/types/PocketItemDescription.d.ts +0 -7
  1018. package/types/PocketItemDescription.lua +0 -2
  1019. package/types/Primitive.d.ts +0 -1
  1020. package/types/Primitive.lua +0 -2
  1021. package/types/TrinketSituation.d.ts +0 -7
  1022. package/types/TrinketSituation.lua +0 -2
  1023. package/types/private/IsaacAPIClass.d.ts +0 -4
  1024. package/types/private/IsaacAPIClass.lua +0 -2
  1025. package/types/private/SaveData.d.ts +0 -22
  1026. package/types/private/SaveData.lua +0 -2
  1027. package/types/private/SerializedIsaacAPIClass.d.ts +0 -4
  1028. package/types/private/SerializedIsaacAPIClass.lua +0 -2
  1029. package/types/private/TSTLClass.d.ts +0 -4
  1030. package/types/private/TSTLClass.lua +0 -2
  1031. package/types/private/TSTLClassMetatable.d.ts +0 -10
  1032. package/types/private/TSTLClassMetatable.lua +0 -2
  1033. package/upgradeMod.d.ts +0 -22
  1034. package/upgradeMod.lua +0 -33
@@ -0,0 +1,943 @@
1
+ /*
2
+ eslint isaacscript/member-ordering: ["warn", {
3
+ enums: {
4
+ memberTypes: ["method", "field"],
5
+ order: "alphabetically"
6
+ },
7
+ }]
8
+ */
9
+
10
+ /**
11
+ * - The Isaac API offers a lot of callbacks, but a lot of times there isn't one for the specific
12
+ * thing that you are looking to do. So, `isaacscript-common` adds a bunch of new callbacks that
13
+ * you can use.
14
+ * - The extra callbacks are efficient such that no code is ran until they have one or more
15
+ * subscriptions.
16
+ * - You must upgrade your mod with the `upgradeMod` helper function before using a custom callback.
17
+ */
18
+ export enum ModCallbackCustom {
19
+ /**
20
+ * Fires on the first `MC_POST_BOMB_UPDATE` frame for each bomb.
21
+ *
22
+ * This callback is useful because many attributes cannot be set or retrieved properly in the
23
+ * normal `MC_POST_BOMB_INIT` callback.
24
+ *
25
+ * When registering the callback, takes an optional second argument that will make the callback
26
+ * only fire if the bomb variant matches the `BombVariant` provided.
27
+ *
28
+ * ```ts
29
+ * function postBombInitLate(bomb: EntityBomb): void {}
30
+ * ```
31
+ */
32
+ POST_BOMB_INIT_LATE,
33
+
34
+ /**
35
+ * Fires from the `MC_POST_RENDER` callback when one of Forgotten's bone clubs is swung or thrown.
36
+ *
37
+ * ```ts
38
+ * function postBoneSwing(boneClub: EntityKnife): void {}
39
+ * ```
40
+ */
41
+ POST_BONE_SWING,
42
+
43
+ /**
44
+ * Fires from the `MC_POST_PICKUP_INIT` callback on the first time that a player has seen the
45
+ * respective collectible on the run. For more details on how this is calculated, see the
46
+ * documentation for the `getCollectibleIndex` helper function.
47
+ *
48
+ * This callback is useful because collectibles will despawn upon leaving the room and respawn
49
+ * upon re-entering the room. Additionally, when playing as Tainted Isaac, the
50
+ * `MC_POST_PICKUP_INIT` callback will fire every time the item shifts.
51
+ *
52
+ * When registering the callback, takes an optional second argument that will make the callback
53
+ * only fire if the collectible type matches the `CollectibleType` provided.
54
+ *
55
+ * ```ts
56
+ * function postCollectibleInitLate(collectible: EntityPickup): void {}
57
+ * ```
58
+ */
59
+ POST_COLLECTIBLE_INIT_FIRST,
60
+
61
+ /**
62
+ * Fires from the `MC_POST_PLAYER_RENDER` callback on the first frame that the "TeleportUp"
63
+ * animation begins playing after a player triggers a Cursed Eye teleport or a Cursed Skull
64
+ * teleport. (Both of these have the same effect in causing Isaac to be teleported to a random
65
+ * room.)
66
+ *
67
+ * ```ts
68
+ * function postCursedTeleport(player: EntityPlayer): void {}
69
+ * ```
70
+ */
71
+ POST_CURSED_TELEPORT,
72
+
73
+ /**
74
+ * Fires from the `MC_POST_PEFFECT_UPDATE` callback when a player enters the loading zone of a
75
+ * custom door created with the `spawnCustomDoor` helper function.
76
+ *
77
+ * When registering the callback, takes an optional second argument that will make the callback
78
+ * only fire if it matches the `DoorVariant` provided.
79
+ *
80
+ * ```ts
81
+ * function postCustomDoorEnter(
82
+ * player: EntityPlayer,
83
+ * effectVariant: int,
84
+ * doorSlot: DoorSlot,
85
+ * direction: Direction,
86
+ * ): void {}
87
+ * ```
88
+ */
89
+ POST_CUSTOM_DOOR_ENTER,
90
+
91
+ /**
92
+ * Fires from the `MC_POST_PLAYER_UPDATE` callback after the player has finished the death
93
+ * animation, has teleported to the previous room, and is ready to play the animation for the
94
+ * modded revival item. The `revivalType` will match the value returned from the
95
+ * `MC_PRE_CUSTOM_REVIVE` callback.
96
+ *
97
+ * In this callback, you must play an animation with something along the lines of
98
+ * `player.AnimateCollectible(CollectibleTypeCustom.COLLECTIBLE_MY_REVIVAL_ITEM);`, otherwise the
99
+ * animation for a 1-Up will play.
100
+ *
101
+ * When registering the callback, takes an optional second argument that will make the callback
102
+ * only fire if the revival type matches the one provided.
103
+ *
104
+ * ```ts
105
+ * function postCustomRevive(player: EntityPlayer, revivalType: int) {}
106
+ * ```
107
+ */
108
+ POST_CUSTOM_REVIVE,
109
+
110
+ POST_DOOR_RENDER,
111
+
112
+ POST_DOOR_UPDATE,
113
+
114
+ /**
115
+ * Fires on the first `MC_POST_EFFECT_UPDATE` frame for each effect.
116
+ *
117
+ * This callback is useful because many attributes cannot be set or retrieved properly in the
118
+ * normal `MC_POST_EFFECT_INIT` callback.
119
+ *
120
+ * When registering the callback, takes an optional second argument that will make the callback
121
+ * only fire if the effect variant matches the `EffectVariant` provided.
122
+ *
123
+ * ```ts
124
+ * function postEffectInitLate(effect: EntityEffect): void {}
125
+ * ```
126
+ */
127
+ POST_EFFECT_INIT_LATE,
128
+
129
+ /**
130
+ * Fires from the `MC_POST_EFFECT_UPDATE` callback when an effect's state has changed from what it
131
+ * was on the previous frame.
132
+ *
133
+ * When registering the callback, takes an optional second argument that will make the callback
134
+ * only fire if it matches the `EffectVariant` provided.
135
+ *
136
+ * ```ts
137
+ * function postEffectStateChanged(
138
+ * effect: EntityEffect,
139
+ * previousState: int,
140
+ * currentState: int,
141
+ * ): void {}
142
+ * ```
143
+ */
144
+ POST_EFFECT_STATE_CHANGED,
145
+
146
+ /**
147
+ * Fires one `MC_POST_UPDATE` frame after the player has used the Esau Jr. item. (The player is
148
+ * not updated to the new character until a game frame has passed.)
149
+ *
150
+ * ```ts
151
+ * function postEsauJr(player: EntityPlayer): void {}
152
+ * ```
153
+ */
154
+ POST_ESAU_JR,
155
+
156
+ /**
157
+ * Fires on the first `MC_FAMILIAR_UPDATE` frame for each familiar.
158
+ *
159
+ * This callback is useful because many attributes cannot be set or retrieved properly in the
160
+ * normal `MC_POST_TEAR_INIT` callback.
161
+ *
162
+ * When registering the callback, takes an optional second argument that will make the callback
163
+ * only fire if the familiar variant matches the `FamiliarVariant` provided.
164
+ *
165
+ * ```ts
166
+ * function postTearInitLate(familiar: EntityFamiliar): void {}
167
+ * ```
168
+ */
169
+ POST_FAMILIAR_INIT_LATE,
170
+
171
+ /**
172
+ * Fires from the `MC_POST_FAMILIAR_UPDATE` callback when a familiar's state has changed from what
173
+ * it was on the previous frame.
174
+ *
175
+ * When registering the callback, takes an optional second argument that will make the callback
176
+ * only fire if it matches the `FamiliarVariant` provided.
177
+ *
178
+ * ```ts
179
+ * function postFamiliarStateChanged(
180
+ * familiar: EntityFamiliar,
181
+ * previousState: int,
182
+ * currentState: int,
183
+ * ): void {}
184
+ * ```
185
+ */
186
+ POST_FAMILIAR_STATE_CHANGED,
187
+
188
+ /**
189
+ * Fires one `MC_POST_UPDATE` frame after the player has first used the Esau Jr. item. (The player
190
+ * is not updated to the new character until a game frame has passed.)
191
+ *
192
+ * This callback is useful because there is no way to get access to the Esau Jr. character entity
193
+ * before the player has actually used the Esau Jr. item.
194
+ *
195
+ * ```ts
196
+ * function postFirstEsauJr(player: EntityPlayer): void {}
197
+ * ```
198
+ */
199
+ POST_FIRST_ESAU_JR,
200
+
201
+ /**
202
+ * Fires after the player has used the Flip item for the first time. Unlike the vanilla
203
+ * `MC_USE_ITEM` callback, this callback will return the player object for the new Lazarus (not
204
+ * the one who used the Flip item).
205
+ *
206
+ * This callback is useful because there is no way to get access to the "flipped" character entity
207
+ * before the player has actually used the Flip item.
208
+ *
209
+ * ```ts
210
+ * function postFirstFlip(player: EntityPlayer): void {}
211
+ * ```
212
+ */
213
+ POST_FIRST_FLIP,
214
+
215
+ /**
216
+ * Fires after the player has used the Flip item. Unlike the vanilla `MC_USE_ITEM` callback, this
217
+ * callback will return the player object for the new Lazarus (not the one who used the Flip
218
+ * item).
219
+ *
220
+ * This callback is useful because there is no way to get access to the "flipped" character entity
221
+ * before the player has actually used the Flip item.
222
+ *
223
+ * ```ts
224
+ * function postFlip(player: EntityPlayer): void {}
225
+ * ```
226
+ */
227
+ POST_FLIP,
228
+
229
+ /**
230
+ * Similar to the vanilla callback of the same name, but fires in the correct order with respect
231
+ * to the `MC_POST_NEW_LEVEL` and the `MC_POST_NEW_ROOM` callbacks:
232
+ *
233
+ * `MC_POST_GAME_STARTED_REORDERED` --> `MC_POST_NEW_LEVEL_REORDERED` -->
234
+ * `MC_POST_NEW_ROOM_REORDERED`
235
+ *
236
+ * ```ts
237
+ * function postGameStartedReordered(isContinued: boolean): void {}
238
+ * ```
239
+ */
240
+ POST_GAME_STARTED_REORDERED,
241
+
242
+ /**
243
+ * Fires from the `POST_UPDATE` callback when the Greed Mode wave increases.
244
+ *
245
+ * ```ts
246
+ * function postGreedModeWave(oldWave: int, newWave: int) {}
247
+ * ```
248
+ */
249
+ POST_GREED_MODE_WAVE,
250
+
251
+ /**
252
+ * Fires from the `MC_POST_UPDATE` update when a grid entity changes to a state that corresponds
253
+ * to the broken state for the respective grid entity type.
254
+ *
255
+ * When registering the callback, takes an optional second argument that will make the callback
256
+ * only fire if it matches the `GridEntityType` provided.
257
+ *
258
+ * ```ts
259
+ * function postGridEntityBroken(gridEntity: GridEntity): void {}
260
+ * ```
261
+ */
262
+ POST_GRID_ENTITY_BROKEN,
263
+
264
+ /**
265
+ * Fires from the `MC_POST_UPDATE` callback when a new entity collides with a grid entity.
266
+ *
267
+ * When registering the callback, takes an optional second argument that will make the callback
268
+ * only fire if it matches the `GridEntityType` provided.
269
+ *
270
+ * ```ts
271
+ * function postGridEntityCollision(
272
+ * gridEntity: GridEntity,
273
+ * entity: Entity,
274
+ * ): void {}
275
+ * ```
276
+ */
277
+ POST_GRID_ENTITY_COLLISION,
278
+
279
+ /**
280
+ * Fires when a new grid entity is initialized. Specifically, this is either:
281
+ *
282
+ * - in the `MC_POST_NEW_ROOM` callback (firing every time a room is entered, even if the entity
283
+ * was previously there on a previous room entry)
284
+ * - in the `MC_POST_UPDATE` callback (if the entity appeared mid-way through the room, like when
285
+ * the trapdoor appears after defeating It Lives!)
286
+ *
287
+ * When registering the callback, takes an optional second argument that will make the callback
288
+ * only fire if it matches the `GridEntityType` provided.
289
+ *
290
+ * ```ts
291
+ * function postGridEntityInit(gridEntity: GridEntity): void {}
292
+ * ```
293
+ */
294
+ POST_GRID_ENTITY_INIT,
295
+
296
+ /**
297
+ * Fires from the `MC_POST_UPDATE` callback when a new grid entity is removed. Specifically, this
298
+ * on the frame after it no longer exists (where it did exist a frame ago).
299
+ *
300
+ * When registering the callback, takes an optional second argument that will make the callback
301
+ * only fire if it matches the `GridEntityType` provided.
302
+ *
303
+ * ```ts
304
+ * function postGridEntityRemove(
305
+ * gridIndex: int,
306
+ * gridEntityType: GridEntityType,
307
+ * ): void {}
308
+ * ```
309
+ */
310
+ POST_GRID_ENTITY_REMOVE,
311
+
312
+ POST_GRID_ENTITY_RENDER,
313
+
314
+ /**
315
+ * Fires from the `MC_POST_UPDATE` callback when a grid entity changes its state.
316
+ *
317
+ * When registering the callback, takes an optional second argument that will make the callback
318
+ * only fire if it matches the `GridEntityType` provided.
319
+ *
320
+ * ```ts
321
+ * function postGridEntityStateChanged(
322
+ * gridEntity: GridEntity,
323
+ * oldState: int,
324
+ * newState: int,
325
+ * ): void {}
326
+ * ```
327
+ */
328
+ POST_GRID_ENTITY_STATE_CHANGED,
329
+
330
+ /**
331
+ * Fires from the `MC_POST_UPDATE` callback on every frame that a grid entity exists.
332
+ *
333
+ * When registering the callback, takes an optional second argument that will make the callback
334
+ * only fire if it matches the `GridEntityType` provided.
335
+ *
336
+ * ```ts
337
+ * function postGridEntityUpdate(gridEntity: GridEntity): void {}
338
+ * ```
339
+ */
340
+ POST_GRID_ENTITY_UPDATE,
341
+
342
+ /**
343
+ * Fires from the `POST_PEFFECT_UPDATE` callback when the player loses a Holy Mantle temporary
344
+ * collectible effect.
345
+ *
346
+ * This callback is useful because you might want to have code that happens when the player is hit
347
+ * from an enemy. Normally, you would accomplish this via the `ENTITY_TAKE_DMG` callback, but that
348
+ * callback never fires if the player has a Holy Mantle shield.
349
+ *
350
+ * - When registering the callback, takes an optional second argument that will make the callback
351
+ * only fire if the player matches the `PlayerVariant` provided.
352
+ * - When registering the callback, takes an optional third argument that will make the callback
353
+ * only fire if the player matches the `PlayerType` provided.
354
+ *
355
+ * ```ts
356
+ * function postPlayerInitReordered(
357
+ * player: EntityPlayer,
358
+ * oldNumHolyMantles: int,
359
+ * newNumHolyMantles: int,
360
+ * ): void {}
361
+ * ```
362
+ */
363
+ POST_HOLY_MANTLE_REMOVED,
364
+
365
+ /**
366
+ * Fires from `MC_POST_PEFFECT_UPDATE` callback when the player loses charge on their active
367
+ * collectible item, implying that the item was just used.
368
+ *
369
+ * This callback is useful because the `MC_USE_ITEM` callback does not fire when The Candle, Red
370
+ * Candle, and Bob's Rotten Brain are discharged.
371
+ *
372
+ * Note that this callback will not fire if the active item is both discharged and swapped for
373
+ * another item / discharged on the same frame, like in the case of Alabaster Box.
374
+ *
375
+ * When registering the callback, takes an optional second argument that will make the callback
376
+ * only fire if it matches the `CollectibleType` provided.
377
+ *
378
+ * ```ts
379
+ * function postItemDischarge(
380
+ * player: EntityPlayer,
381
+ * collectibleType: CollectibleType | int,
382
+ * activeSlot: ActiveSlot,
383
+ * ): void {}
384
+ * ```
385
+ */
386
+ POST_ITEM_DISCHARGE,
387
+
388
+ /**
389
+ * Fires from the `MC_POST_PEFFECT_UPDATE` callback when an item is no longer queued (i.e. when
390
+ * the animation of the player holding the item above their head is finished and the item is
391
+ * actually added to the player's inventory).
392
+ *
393
+ * Note that this callback will only fire once per Forgotten/Soul pair.
394
+ *
395
+ * - When registering the callback, takes an optional second argument that will make the callback
396
+ * only fire if it matches the `ItemType` provided.
397
+ * - When registering the callback, takes an optional third argument that will make the callback
398
+ * only fire if the `CollectibleType` or the `TrinketType` matches the ID provided.
399
+ *
400
+ * ```ts
401
+ * function postItemPickup(
402
+ * player: EntityPlayer,
403
+ * pickingUpItem: PickingUpItem,
404
+ * ): void {}
405
+ * ```
406
+ */
407
+ POST_ITEM_PICKUP,
408
+
409
+ /**
410
+ * Fires on the first `MC_POST_KNIFE_UPDATE` frame for each knife.
411
+ *
412
+ * This callback is useful because many attributes cannot be set or retrieved properly in the
413
+ * normal `MC_POST_KNIFE_INIT` callback.
414
+ *
415
+ * When registering the callback, takes an optional second argument that will make the callback
416
+ * only fire if the knife variant matches the `KnifeVariant` provided.
417
+ *
418
+ * ```ts
419
+ * function postKnifeInitLate(knife: EntityKnife): void {}
420
+ * ```
421
+ */
422
+ POST_KNIFE_INIT_LATE,
423
+
424
+ /**
425
+ * Fires on the first `MC_POST_LASER_UPDATE` frame for each laser.
426
+ *
427
+ * This callback is useful because many attributes cannot be set or retrieved properly in the
428
+ * normal `MC_POST_LASER_INIT` callback.
429
+ *
430
+ * When registering the callback, takes an optional second argument that will make the callback
431
+ * only fire if the laser variant matches the `LaserVariant` provided.
432
+ *
433
+ * ```ts
434
+ * function postLaserInitLate(laser: EntityLaser): void {}
435
+ * ```
436
+ */
437
+ POST_LASER_INIT_LATE,
438
+
439
+ /**
440
+ * The same as the vanilla callback of the same name, but fires in the correct order with respect
441
+ * to the `MC_POST_GAME_STARTED` and the `MC_POST_NEW_ROOM` callbacks:
442
+ *
443
+ * `MC_POST_GAME_STARTED_REORDERED` --> `MC_POST_NEW_LEVEL_REORDERED` -->
444
+ * `MC_POST_NEW_ROOM_REORDERED`
445
+ *
446
+ * If some specific cases, mods can change the current level during run initialization (on the 0th
447
+ * frame). However, due to how the callback reordering works, the custom
448
+ * `MC_POST_NEW_LEVEL_REORDERED` callback will never fire on the 0th frame. To get around this,
449
+ * call the `forceNewLevelCallback()` function before changing levels to temporarily force the
450
+ * callback to fire.
451
+ *
452
+ * ```ts
453
+ * function postNewLevelReordered(): void {}
454
+ * ```
455
+ */
456
+ POST_NEW_LEVEL_REORDERED,
457
+
458
+ /**
459
+ * Fires on the first `MC_POST_NEW_ROOM` or `MC_PRE_ENTITY_SPAWN` callback where being in a new
460
+ * room is detected. This is useful because the vanilla `MC_POST_NEW_ROOM` callback fires only
461
+ * after entities in the room have been initialized and updated once, which means that it is
462
+ * possible for entity-related code to run before room-related-initialization has been performed.
463
+ *
464
+ * ```ts
465
+ * function postNewRoomEarly(): void {}
466
+ * ```
467
+ */
468
+ POST_NEW_ROOM_EARLY,
469
+
470
+ /**
471
+ * The same as the vanilla callback of the same name, but fires in the correct order with respect
472
+ * to the `MC_POST_GAME_STARTED` and the `MC_POST_NEW_LEVEL` callbacks:
473
+ *
474
+ * `MC_POST_GAME_STARTED_REORDERED` --> `MC_POST_NEW_LEVEL_REORDERED` -->
475
+ * `MC_POST_NEW_ROOM_REORDERED`
476
+ *
477
+ * If some specific cases, mods can change the current room during run initialization (on the 0th
478
+ * frame). However, due to how the callback reordering works, the custom
479
+ * `MC_POST_NEW_ROOM_REORDERED` callback will never fire on the 0th frame. To get around this,
480
+ * call the `forceNewRoomCallback()` function before changing levels to temporarily force the
481
+ * callback to fire.
482
+ *
483
+ * ```ts
484
+ * function postNewRoomReordered(): void {}
485
+ * ```
486
+ */
487
+ POST_NEW_ROOM_REORDERED,
488
+
489
+ /**
490
+ * Fires on the first `MC_NPC_UPDATE` frame for each NPC.
491
+ *
492
+ * This callback is useful because many attributes cannot be set or retrieved properly in the
493
+ * normal `MC_POST_NPC_INIT` callback.
494
+ *
495
+ * When registering the callback, takes an optional second argument that will make the callback
496
+ * only fire if the NPC's entity type matches the entity type provided.
497
+ *
498
+ * ```ts
499
+ * function postNPCInitLate(npc: EntityNPC): void {}
500
+ * ```
501
+ */
502
+ POST_NPC_INIT_LATE,
503
+
504
+ /**
505
+ * Fires from the `MC_POST_NPC_UPDATE` callback when an NPC's state has changed from what it was
506
+ * on the previous frame.
507
+ *
508
+ * - When registering the callback, takes an optional second argument that will make the callback
509
+ * only fire if it matches the `EntityType` provided.
510
+ * - When registering the callback, takes an optional third argument that will make the callback
511
+ * only fire if it matches the variant provided.
512
+ *
513
+ * ```ts
514
+ * function postNPCStateChanged(
515
+ * npc: EntityNPC,
516
+ * previousState: int,
517
+ * currentState: int,
518
+ * ): void {}
519
+ * ```
520
+ */
521
+ POST_NPC_STATE_CHANGED,
522
+
523
+ POST_PEFFECT_UPDATE_REORDERED,
524
+
525
+ /**
526
+ * Fires on the first `MC_POST_RENDER` frame that a pickup plays the "Collect" animation.
527
+ *
528
+ * Use this callback to know when a pickup is added to the player's inventory or health.
529
+ *
530
+ * When registering the callback, takes an optional second argument that will make the callback
531
+ * only fire if the pickup variant matches the `PickupVariant` provided.
532
+ *
533
+ * ```ts
534
+ * function postPickupCollect(pickup: EntityPickup, player: EntityPlayer): void {}
535
+ * ```
536
+ */
537
+ POST_PICKUP_COLLECT,
538
+
539
+ /**
540
+ * Fires on the first `MC_POST_PICKUP_UPDATE` frame for each pickup.
541
+ *
542
+ * This callback is useful because many attributes cannot be set or retrieved properly in the
543
+ * normal `MC_POST_PICKUP_INIT` callback.
544
+ *
545
+ * When registering the callback, takes an optional second argument that will make the callback
546
+ * only fire if the pickup variant matches the `PickupVariant` provided.
547
+ *
548
+ * ```ts
549
+ * function postPickupInitLate(pickup: EntityPickup): void {}
550
+ * ```
551
+ */
552
+ POST_PICKUP_INIT_LATE,
553
+
554
+ /**
555
+ * Fires from the `MC_POST_PICKUP_UPDATE` callback when a pickup's state has changed from what it
556
+ * was on the previous frame.
557
+ *
558
+ * When registering the callback, takes an optional second argument that will make the callback
559
+ * only fire if it matches the `PickupVariant` provided.
560
+ *
561
+ * ```ts
562
+ * function postPickupStateChanged(
563
+ * pickup: EntityPickup,
564
+ * previousState: int,
565
+ * currentState: int,
566
+ * ): void {}
567
+ * ```
568
+ */
569
+ POST_PICKUP_STATE_CHANGED,
570
+
571
+ POST_PIT_RENDER,
572
+
573
+ POST_PIT_UPDATE,
574
+
575
+ /**
576
+ * Fires from the `MC_POST_PEFFECT_UPDATE` callback when a player entity gains or loses any health
577
+ * (i.e. hearts). For more information, see the `PlayerHealth` enum.
578
+ *
579
+ * When registering the callback, takes an optional second argument that will make the callback
580
+ * only fire if it matches the `PlayerVariant` provided.
581
+ *
582
+ * ```ts
583
+ * function postPlayerChangeHealth(
584
+ * player: EntityPlayer,
585
+ * healthType: HealthType,
586
+ * amount: int,
587
+ * ) {}
588
+ * ```
589
+ */
590
+ POST_PLAYER_CHANGE_HEALTH,
591
+
592
+ /**
593
+ * Fires from the `MC_POST_PEFFECT_UPDATE` callback when a player entity changes its player type
594
+ * (i.e. character). For example, it will fire after using Clicker, after dying with the Judas'
595
+ * Shadow collectible, etc.
596
+ *
597
+ * Notably, it does not fire after the player uses the Flip item or the Esau Jr. item, because
598
+ * those items cause separate player entities to be created. Use the `MC_POST_FLIP` and
599
+ * `MC_POST_ESAU_JR` callbacks to handle those situations.
600
+ *
601
+ * ```ts
602
+ * function postPlayerChangeType(
603
+ * player: EntityPlayer,
604
+ * oldCharacter: PlayerType | int,
605
+ * newCharacter: PlayerType | int,
606
+ * ) {}
607
+ * ```
608
+ */
609
+ POST_PLAYER_CHANGE_TYPE,
610
+
611
+ /**
612
+ * Fires from the `MC_ENTITY_TAKE_DMG` callback when a player takes fatal damage. Return false to
613
+ * prevent the fatal damage.
614
+ *
615
+ * Note that:
616
+ *
617
+ * - This function does properly take into account Guppy's Collar, Broken Ankh, Spirit Shackles,
618
+ * and Mysterious Paper.
619
+ *
620
+ * When registering the callback, takes an optional second argument that will make the callback
621
+ * only fire if it matches the `PlayerVariant` provided.
622
+ *
623
+ * ```ts
624
+ * function postPlayerFatalDamage(player: EntityPlayer) {}
625
+ * ```
626
+ */
627
+ POST_PLAYER_FATAL_DAMAGE,
628
+
629
+ /**
630
+ * Fires on the first `MC_POST_PLAYER_UPDATE` frame for each player.
631
+ *
632
+ * This callback is useful because many attributes cannot be set or retrieved properly in the
633
+ * normal `MC_POST_PLAYER_INIT` callback.
634
+ *
635
+ * When registering the callback, takes an optional second argument that will make the callback
636
+ * only fire if the player variant matches the `PlayerVariant` provided.
637
+ *
638
+ * ```ts
639
+ * function postPlayerInitLate(pickup: EntityPickup): void {}
640
+ * ```
641
+ */
642
+ POST_PLAYER_INIT_LATE,
643
+
644
+ /**
645
+ * Similar to the vanilla callback of the same name, but fires after the `MC_POST_GAME_STARTED`
646
+ * callback fires (if the player is spawning on the 0th game frame of the run).
647
+ *
648
+ * This callback is useful for two reasons:
649
+ *
650
+ * 1. Normally, `MC_POST_PLAYER_UPDATE` fires before `MC_POST_GAME_STARTED`. Since mod variables
651
+ * are often initialized at the beginning of the `MC_POST_GAME_STARTED` callback, this can
652
+ * cause problems.
653
+ * 1. Some functions do not work (or crash the game) when called before the `MC_POST_NEW_ROOM`
654
+ * callback. For example, since the level is not generated yet, you will not be able to access
655
+ * any rooms.
656
+ *
657
+ * When registering the callback, takes an optional second argument that will make the callback
658
+ * only fire if the player matches the `PlayerVariant` provided.
659
+ *
660
+ * ```ts
661
+ * function postPlayerInitReordered(player: EntityPlayer): void {}
662
+ * ```
663
+ */
664
+ POST_PLAYER_INIT_REORDERED,
665
+
666
+ POST_PLAYER_RENDER_REORDERED,
667
+
668
+ /**
669
+ * Similar to the vanilla callback of the same name, but fires after the `MC_POST_GAME_STARTED`
670
+ * callback fires (if the player is being updated on the 0th game frame of the run).
671
+ *
672
+ * This callback is useful for two reasons:
673
+ *
674
+ * 1. Normally, PostPlayerUpdate fires before `MC_POST_GAME_STARTED`. Since mod variables are
675
+ * often initialized at the beginning of the `MC_POST_GAME_STARTED` callback, this can cause
676
+ * problems.
677
+ * 1. Some functions do not work (or crash the game) when called before the `MC_POST_NEW_ROOM`
678
+ * callback. For example, since the level is not generated yet, you will not be able to access
679
+ * any rooms.
680
+ *
681
+ * When registering the callback, takes an optional second argument that will make the callback
682
+ * only fire if the player matches the `PlayerVariant` provided.
683
+ *
684
+ * ```ts
685
+ * function postPlayerUpdateReordered(player: EntityPlayer): void {}
686
+ * ```
687
+ */
688
+ POST_PLAYER_UPDATE_REORDERED,
689
+
690
+ POST_POOP_RENDER,
691
+
692
+ POST_POOP_UPDATE,
693
+
694
+ POST_PRESSURE_PLATE_RENDER,
695
+
696
+ POST_PRESSURE_PLATE_UPDATE,
697
+
698
+ /**
699
+ * Fires on the first `MC_POST_PROJECTILE_UPDATE` frame for each projectile.
700
+ *
701
+ * This callback is useful because many attributes cannot be set or retrieved properly in the
702
+ * normal `MC_POST_PROJECTILE_INIT` callback.
703
+ *
704
+ * When registering the callback, takes an optional second argument that will make the callback
705
+ * only fire if the projectile variant matches the `ProjectileVariant` provided.
706
+ *
707
+ * ```ts
708
+ * function postProjectileInitLate(projectile: EntityProjectile): void {}
709
+ * ```
710
+ */
711
+ POST_PROJECTILE_INIT_LATE,
712
+
713
+ /**
714
+ * Fires from the `MC_POST_PEFFECT_UPDATE` callback when a player first picks up a new item. The
715
+ * pickup returned in the callback is assumed to be the first pickup that no longer exists.
716
+ *
717
+ * - When registering the callback, takes an optional second argument that will make the callback
718
+ * only fire if it matches the `PickupVariant` provided.
719
+ * - When registering the callback, takes an optional third argument that will make the callback
720
+ * only fire if it matches the sub-type provided.
721
+ *
722
+ * ```ts
723
+ * function postPurchase(player: EntityPlayer, pickup: EntityPickup): void {}
724
+ * ```
725
+ */
726
+ POST_PURCHASE,
727
+
728
+ POST_ROCK_RENDER,
729
+
730
+ POST_ROCK_UPDATE,
731
+
732
+ POST_ROOM_CLEAR_CHANGED,
733
+
734
+ /**
735
+ * Fires from the `MC_ENTITY_TAKE_DMG` callback when a player takes damage from spikes in a
736
+ * Sacrifice Room.
737
+ *
738
+ * ```ts
739
+ * function postSacrifice(player: EntityPlayer, numSacrifices: int): void {}
740
+ * ```
741
+ */
742
+ POST_SACRIFICE,
743
+
744
+ /**
745
+ * Fires from the `MC_POST_RENDER` callback when a slot entity's animation changes.
746
+ *
747
+ * When registering the callback, takes an optional second argument that will make the callback
748
+ * only fire if it matches the `SlotVariant` provided.
749
+ *
750
+ * ```ts
751
+ * function postSlotAnimationChanged(slot: Entity): void {}
752
+ * ```
753
+ */
754
+ POST_SLOT_ANIMATION_CHANGED,
755
+
756
+ /**
757
+ * Fires from the `MC_POST_RENDER` callback when a slot plays the animation that indicates that it
758
+ * has broken.
759
+ *
760
+ * When registering the callback, takes an optional second argument that will make the callback
761
+ * only fire if it matches the `SlotVariant` provided.
762
+ *
763
+ * ```ts
764
+ * function postSlotDestroyed(slot: Entity): void {}
765
+ * ```
766
+ */
767
+ POST_SLOT_DESTROYED,
768
+
769
+ /**
770
+ * Fires when a new slot entity is initialized. Specifically, this is either:
771
+ *
772
+ * - in the `MC_POST_NEW_ROOM` callback (firing every time a room is entered, even if the entity
773
+ * was previously there on a previous room entry)
774
+ * - in the `MC_POST_UPDATE` callback (if the entity appeared mid-way through the room, like when
775
+ * a Wheel of Fortune card is used)
776
+ *
777
+ * When registering the callback, takes an optional second argument that will make the callback
778
+ * only fire if it matches the `SlotVariant` provided.
779
+ *
780
+ * ```ts
781
+ * function postSlotInit(slot: Entity): void {}
782
+ * ```
783
+ */
784
+ POST_SLOT_INIT,
785
+
786
+ /**
787
+ * Fires from the `MC_POST_RENDER` callback on every frame that a slot entity exists.
788
+ *
789
+ * When registering the callback, takes an optional second argument that will make the callback
790
+ * only fire if it matches the `SlotVariant` provided.
791
+ *
792
+ * ```ts
793
+ * function postSlotRender(slot: Entity): void {}
794
+ * ```
795
+ */
796
+ POST_SLOT_RENDER,
797
+
798
+ /**
799
+ * Fires from the `MC_POST_UPDATE` callback on every frame that a slot entity exists.
800
+ *
801
+ * When registering the callback, takes an optional second argument that will make the callback
802
+ * only fire if it matches the `SlotVariant` provided.
803
+ *
804
+ * ```ts
805
+ * function postSlotUpdate(slot: Entity): void {}
806
+ * ```
807
+ */
808
+ POST_SLOT_UPDATE,
809
+
810
+ POST_SPIKES_RENDER,
811
+
812
+ POST_SPIKES_UPDATE,
813
+
814
+ /**
815
+ * Fires on the first `MC_POST_TEAR_UPDATE` frame for each tear.
816
+ *
817
+ * This callback is useful because many attributes cannot be set or retrieved properly in the
818
+ * normal `MC_POST_TEAR_INIT` callback.
819
+ *
820
+ * When registering the callback, takes an optional second argument that will make the callback
821
+ * only fire if the tear variant matches the `TearVariant` provided.
822
+ *
823
+ * ```ts
824
+ * function postTearInitLate(tear: EntityTear): void {}
825
+ * ```
826
+ */
827
+ POST_TEAR_INIT_LATE,
828
+
829
+ /**
830
+ * Fires on the second `MC_POST_TEAR_UPDATE` frame for each tear (i.e. frame 1).
831
+ *
832
+ * This callback is useful because Incubus tears are not distinguishable until the second frame.
833
+ *
834
+ * When registering the callback, takes an optional second argument that will make the callback
835
+ * only fire if the tear variant matches the `TearVariant` provided.
836
+ *
837
+ * ```ts
838
+ * function postTearInitVeryLate(tear: EntityTear): void {}
839
+ * ```
840
+ */
841
+ POST_TEAR_INIT_VERY_LATE,
842
+
843
+ POST_TNT_RENDER,
844
+
845
+ POST_TNT_UPDATE,
846
+
847
+ /**
848
+ * Fires from the `MC_POST_PEFFECT_UPDATE` callback when a player gains or loses a new
849
+ * transformation.
850
+ *
851
+ * Note that this callback will only fire once per Forgotten/Soul pair.
852
+ *
853
+ * When registering the callback, takes an optional second argument that will make the callback
854
+ * only fire if it matches the `PlayerForm` provided.
855
+ *
856
+ * ```ts
857
+ * function postTransformation(
858
+ * player: EntityPlayer,
859
+ * playerForm: PlayerForm,
860
+ * hasForm: boolean,
861
+ * ): void {}
862
+ * ```
863
+ */
864
+ POST_TRANSFORMATION,
865
+
866
+ /**
867
+ * Fires from `MC_ENTITY_TAKE_DMG` callback when a Wishbone or a Walnut breaks.
868
+ *
869
+ * When registering the callback, takes an optional second argument that will make the callback
870
+ * only fire if it matches the `TrinketType` provided.
871
+ *
872
+ * ```ts
873
+ * function postTrinketBreak(
874
+ * player: EntityPlayer,
875
+ * trinketType: TrinketType | int,
876
+ * ): void {}
877
+ * ```
878
+ */
879
+ POST_TRINKET_BREAK,
880
+
881
+ /**
882
+ * Fires from the `MC_POST_PEFFECT_UPDATE` callback on the frame before a Berserk! effect ends
883
+ * when the player is predicted to die (e.g. they currently have no health left or they took
884
+ * damage in a "Lost" form).
885
+ *
886
+ * When registering the callback, takes an optional second argument that will make the callback
887
+ * only fire if it matches the `PlayerVariant` provided.
888
+ *
889
+ * ```ts
890
+ * function preBerserkDeath(player: EntityPlayer) {}
891
+ * ```
892
+ */
893
+ PRE_BERSERK_DEATH,
894
+
895
+ /**
896
+ * Fires from the `MC_POST_PLAYER_FATAL_DAMAGE` callback when a player is about to die. If you
897
+ * want to initiate a custom revival, return an integer that corresponds to the item or type of
898
+ * revival that you are doing. Otherwise, return undefined to continue the fatal damage.
899
+ *
900
+ * This callback is useful because reviving the player after the game things that player should
901
+ * have died will result in the save data for the run getting deleted.
902
+ *
903
+ * ```ts
904
+ * function preCustomRevive(player: EntityPlayer) {}
905
+ * ```
906
+ */
907
+ PRE_CUSTOM_REVIVE,
908
+
909
+ /**
910
+ * Fires from the `MC_POST_PEFFECT_UPDATE` callback when an item becomes queued (i.e. when the
911
+ * player begins to hold the item above their head).
912
+ *
913
+ * Note that this callback will only fire once per Forgotten/Soul pair.
914
+ *
915
+ * - When registering the callback, takes an optional second argument that will make the callback
916
+ * only fire if it matches the `ItemType` provided.
917
+ * - When registering the callback, takes an optional third argument that will make the callback
918
+ * only fire if the `CollectibleType` or the `TrinketType` matches the ID provided.
919
+ *
920
+ * ```ts
921
+ * function preItemPickup(
922
+ * player: EntityPlayer,
923
+ * pickingUpItem: PickingUpItem,
924
+ * ): void {}
925
+ * ```
926
+ */
927
+ PRE_ITEM_PICKUP,
928
+
929
+ /**
930
+ * Fires on the `MC_POST_RENDER` frame before the player is taken to a new floor. Only fires when
931
+ * a player jumps into a trapdoor or enters a heaven door (beam of light). Does not fire on the
932
+ * first floor of the run. Does not fire when the player reloads/reseeds the current floor (i.e.
933
+ * Forget Me Now, 5-pip dice room).
934
+ *
935
+ * This callback passes the `EntityPlayer` object for the player who jumped into the trapdoor or
936
+ * entered the heaven door, if needed.
937
+ *
938
+ * ```ts
939
+ * function preNewLevel(player: EntityPlayer): void {}
940
+ * ```
941
+ */
942
+ PRE_NEW_LEVEL,
943
+ }