isaacscript-common 3.16.1 → 4.0.1-dev.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 (417) hide show
  1. package/cachedClasses.ts +39 -0
  2. package/callbacks/customRevive.lua +2 -1
  3. package/callbacks/customRevive.ts +215 -0
  4. package/callbacks/itemPickup.ts +101 -0
  5. package/callbacks/postAmbush.ts +73 -0
  6. package/callbacks/postBombExploded.ts +26 -0
  7. package/callbacks/postBombInitLate.ts +36 -0
  8. package/callbacks/postBoneSwing.ts +64 -0
  9. package/callbacks/postCollectibleInitFirst.ts +40 -0
  10. package/callbacks/postCursedTeleport.ts +183 -0
  11. package/callbacks/postCustomDoorEnter.lua +0 -7
  12. package/callbacks/postCustomDoorEnter.ts +292 -0
  13. package/callbacks/postDiceRoomActivated.ts +60 -0
  14. package/callbacks/postDoorRender.ts +26 -0
  15. package/callbacks/postDoorUpdate.ts +26 -0
  16. package/callbacks/postEffectInitLate.ts +36 -0
  17. package/callbacks/postEffectStateChanged.ts +43 -0
  18. package/callbacks/postEsauJr.ts +107 -0
  19. package/callbacks/postFamiliarInitLate.ts +36 -0
  20. package/callbacks/postFamiliarStateChanged.ts +43 -0
  21. package/callbacks/postFlip.ts +88 -0
  22. package/callbacks/postGreedModeWave.ts +41 -0
  23. package/callbacks/postGridEntity.ts +164 -0
  24. package/callbacks/postGridEntityCollision.ts +69 -0
  25. package/callbacks/postGridEntityRender.ts +26 -0
  26. package/callbacks/postHolyMantleRemoved.ts +55 -0
  27. package/callbacks/postItemDischarged.ts +149 -0
  28. package/callbacks/postKnifeInitLate.ts +36 -0
  29. package/callbacks/postLaserInitLate.ts +36 -0
  30. package/callbacks/postNPCInitLate.ts +36 -0
  31. package/callbacks/postNPCStateChanged.ts +42 -0
  32. package/callbacks/postNewRoomEarly.ts +90 -0
  33. package/callbacks/postPickupCollect.ts +48 -0
  34. package/callbacks/postPickupInitFirst.ts +70 -0
  35. package/callbacks/postPickupInitLate.ts +36 -0
  36. package/callbacks/postPickupStateChanged.ts +43 -0
  37. package/callbacks/postPitRender.ts +26 -0
  38. package/callbacks/postPitUpdate.ts +26 -0
  39. package/callbacks/postPlayerChangeHealth.ts +62 -0
  40. package/callbacks/postPlayerChangeType.ts +56 -0
  41. package/callbacks/postPlayerCollectible.ts +113 -0
  42. package/callbacks/postPlayerFatalDamage.ts +141 -0
  43. package/callbacks/postPlayerInitLate.ts +37 -0
  44. package/callbacks/postPlayerReordered.ts +142 -0
  45. package/callbacks/postPoopRender.ts +26 -0
  46. package/callbacks/postPoopUpdate.ts +26 -0
  47. package/callbacks/postPressurePlateRender.ts +26 -0
  48. package/callbacks/postPressurePlateUpdate.ts +26 -0
  49. package/callbacks/postProjectileInitLate.ts +36 -0
  50. package/callbacks/postPurchase.ts +64 -0
  51. package/callbacks/postRockRender.ts +26 -0
  52. package/callbacks/postRockUpdate.ts +26 -0
  53. package/callbacks/postRoomClearChanged.ts +57 -0
  54. package/callbacks/postSacrifice.ts +62 -0
  55. package/callbacks/postSlotDestroyed.ts +92 -0
  56. package/callbacks/postSlotInitUpdate.ts +68 -0
  57. package/callbacks/postSlotRender.ts +69 -0
  58. package/callbacks/postSpikesRender.ts +26 -0
  59. package/callbacks/postSpikesUpdate.ts +26 -0
  60. package/callbacks/postTNTRender.ts +26 -0
  61. package/callbacks/postTNTUpdate.ts +26 -0
  62. package/callbacks/postTearInitLate.ts +36 -0
  63. package/callbacks/postTearInitVeryLate.ts +41 -0
  64. package/callbacks/postTransformation.ts +59 -0
  65. package/callbacks/postTrinketBreak.ts +110 -0
  66. package/callbacks/preBerserkDeath.ts +49 -0
  67. package/callbacks/preNewLevel.ts +55 -0
  68. package/callbacks/reorderedCallbacks.ts +166 -0
  69. package/callbacks/subscriptions/postAmbushFinished.ts +32 -0
  70. package/callbacks/subscriptions/postAmbushStarted.ts +32 -0
  71. package/callbacks/subscriptions/postBombInitLate.ts +32 -0
  72. package/callbacks/subscriptions/postBoneExploded.ts +32 -0
  73. package/callbacks/subscriptions/postBoneSwing.ts +24 -0
  74. package/callbacks/subscriptions/postCollectibleInitFirst.ts +37 -0
  75. package/callbacks/subscriptions/postCursedTeleport.ts +24 -0
  76. package/callbacks/subscriptions/postCustomDoorEnter.ts +45 -0
  77. package/callbacks/subscriptions/postCustomRevive.ts +36 -0
  78. package/callbacks/subscriptions/postDiceRoomActivated.ts +38 -0
  79. package/callbacks/subscriptions/postDoorRender.ts +35 -0
  80. package/callbacks/subscriptions/postDoorUpdate.ts +35 -0
  81. package/callbacks/subscriptions/postEffectInitLate.ts +32 -0
  82. package/callbacks/subscriptions/postEffectStateChanged.ts +40 -0
  83. package/callbacks/subscriptions/postEsauJr.ts +24 -0
  84. package/callbacks/subscriptions/postFamiliarInitLate.ts +32 -0
  85. package/callbacks/subscriptions/postFamiliarStateChanged.ts +40 -0
  86. package/callbacks/subscriptions/postFirstEsauJr.ts +24 -0
  87. package/callbacks/subscriptions/postFirstFlip.ts +24 -0
  88. package/callbacks/subscriptions/postFlip.ts +22 -0
  89. package/callbacks/subscriptions/postGameStartedReordered.ts +24 -0
  90. package/callbacks/subscriptions/postGreedModeWave.ts +24 -0
  91. package/callbacks/subscriptions/postGridEntityBroken.ts +51 -0
  92. package/callbacks/subscriptions/postGridEntityCollision.ts +54 -0
  93. package/callbacks/subscriptions/postGridEntityInit.ts +51 -0
  94. package/callbacks/subscriptions/postGridEntityRemove.ts +52 -0
  95. package/callbacks/subscriptions/postGridEntityRender.ts +51 -0
  96. package/callbacks/subscriptions/postGridEntityStateChanged.ts +55 -0
  97. package/callbacks/subscriptions/postGridEntityUpdate.ts +51 -0
  98. package/callbacks/subscriptions/postHolyMantleRemoved.ts +48 -0
  99. package/callbacks/subscriptions/postItemDischarged.ts +43 -0
  100. package/callbacks/subscriptions/postItemPickup.ts +64 -0
  101. package/callbacks/subscriptions/postKnifeInitLate.ts +32 -0
  102. package/callbacks/subscriptions/postLaserInitLate.ts +32 -0
  103. package/callbacks/subscriptions/postNPCInitLate.ts +32 -0
  104. package/callbacks/subscriptions/postNPCStateChanged.ts +42 -0
  105. package/callbacks/subscriptions/postNewLevelReordered.ts +22 -0
  106. package/callbacks/subscriptions/postNewRoomEarly.ts +22 -0
  107. package/callbacks/subscriptions/postNewRoomReordered.ts +22 -0
  108. package/callbacks/subscriptions/postPEffectUpdateReordered.ts +40 -0
  109. package/callbacks/subscriptions/postPickupCollect.ts +35 -0
  110. package/callbacks/subscriptions/postPickupInitFirst.ts +32 -0
  111. package/callbacks/subscriptions/postPickupInitLate.ts +32 -0
  112. package/callbacks/subscriptions/postPickupStateChanged.ts +40 -0
  113. package/callbacks/subscriptions/postPitRender.ts +35 -0
  114. package/callbacks/subscriptions/postPitUpdate.ts +35 -0
  115. package/callbacks/subscriptions/postPlayerChangeHealth.ts +49 -0
  116. package/callbacks/subscriptions/postPlayerChangeType.ts +40 -0
  117. package/callbacks/subscriptions/postPlayerCollectibleAdded.d.ts +2 -3
  118. package/callbacks/subscriptions/postPlayerCollectibleAdded.lua +2 -7
  119. package/callbacks/subscriptions/postPlayerCollectibleAdded.ts +38 -0
  120. package/callbacks/subscriptions/postPlayerCollectibleRemoved.d.ts +2 -3
  121. package/callbacks/subscriptions/postPlayerCollectibleRemoved.lua +2 -7
  122. package/callbacks/subscriptions/postPlayerCollectibleRemoved.ts +38 -0
  123. package/callbacks/subscriptions/postPlayerFatalDamage.d.ts +1 -1
  124. package/callbacks/subscriptions/postPlayerFatalDamage.ts +68 -0
  125. package/callbacks/subscriptions/postPlayerInitLate.ts +40 -0
  126. package/callbacks/subscriptions/postPlayerInitReordered.ts +40 -0
  127. package/callbacks/subscriptions/postPlayerRenderReordered.ts +40 -0
  128. package/callbacks/subscriptions/postPlayerUpdateReordered.ts +40 -0
  129. package/callbacks/subscriptions/postPoopRender.ts +35 -0
  130. package/callbacks/subscriptions/postPoopUpdate.ts +35 -0
  131. package/callbacks/subscriptions/postPressurePlateRender.ts +37 -0
  132. package/callbacks/subscriptions/postPressurePlateUpdate.ts +37 -0
  133. package/callbacks/subscriptions/postProjectileInitLate.ts +35 -0
  134. package/callbacks/subscriptions/postPurchase.ts +31 -0
  135. package/callbacks/subscriptions/postRockRender.ts +35 -0
  136. package/callbacks/subscriptions/postRockUpdate.ts +35 -0
  137. package/callbacks/subscriptions/postRoomClearChanged.ts +30 -0
  138. package/callbacks/subscriptions/postSacrifice.ts +43 -0
  139. package/callbacks/subscriptions/postSlotAnimationChanged.ts +40 -0
  140. package/callbacks/subscriptions/postSlotDestroyed.ts +55 -0
  141. package/callbacks/subscriptions/postSlotInit.ts +32 -0
  142. package/callbacks/subscriptions/postSlotRender.ts +32 -0
  143. package/callbacks/subscriptions/postSlotUpdate.ts +32 -0
  144. package/callbacks/subscriptions/postSpikesRender.ts +35 -0
  145. package/callbacks/subscriptions/postSpikesUpdate.ts +35 -0
  146. package/callbacks/subscriptions/postTNTRender.ts +35 -0
  147. package/callbacks/subscriptions/postTNTUpdate.ts +35 -0
  148. package/callbacks/subscriptions/postTearInitLate.ts +32 -0
  149. package/callbacks/subscriptions/postTearInitVeryLate.ts +32 -0
  150. package/callbacks/subscriptions/postTransformation.ts +40 -0
  151. package/callbacks/subscriptions/postTrinketBreak.ts +38 -0
  152. package/callbacks/subscriptions/preBerserkDeath.d.ts +1 -1
  153. package/callbacks/subscriptions/preBerserkDeath.ts +42 -0
  154. package/callbacks/subscriptions/preCustomRevive.d.ts +1 -1
  155. package/callbacks/subscriptions/preCustomRevive.ts +46 -0
  156. package/callbacks/subscriptions/preItemPickup.ts +64 -0
  157. package/callbacks/subscriptions/preNewLevel.ts +24 -0
  158. package/classes/DefaultMap.ts +174 -0
  159. package/classes/ModUpgraded.d.ts +3 -3
  160. package/classes/ModUpgraded.lua +3 -6
  161. package/classes/ModUpgraded.ts +77 -0
  162. package/constants.ts +162 -0
  163. package/constantsFirstLast.ts +217 -0
  164. package/enums/AmbushType.ts +4 -0
  165. package/enums/HealthType.ts +16 -0
  166. package/enums/ModCallbackCustom.d.ts +20 -18
  167. package/enums/ModCallbackCustom.ts +1278 -0
  168. package/enums/PocketItemType.ts +8 -0
  169. package/enums/SerializationType.ts +5 -0
  170. package/enums/SlotDestructionType.ts +4 -0
  171. package/enums/private/CopyableIsaacAPIClassType.ts +7 -0
  172. package/enums/private/SaveDataKey.ts +14 -0
  173. package/enums/private/SerializationBrand.ts +42 -0
  174. package/features/characterHealthConversion.lua +2 -9
  175. package/features/characterHealthConversion.ts +111 -0
  176. package/features/characterStats.ts +61 -0
  177. package/features/debugDisplay/debugDisplay.ts +221 -0
  178. package/features/debugDisplay/exports.ts +368 -0
  179. package/features/debugDisplay/v.ts +65 -0
  180. package/features/deployJSONRoom.ts +743 -0
  181. package/features/disableInputs.ts +193 -0
  182. package/features/disableSound.ts +77 -0
  183. package/features/extraConsoleCommands/commandsDisplay.ts +290 -0
  184. package/features/extraConsoleCommands/commandsSubroutines.lua +1 -1
  185. package/features/extraConsoleCommands/commandsSubroutines.ts +139 -0
  186. package/features/extraConsoleCommands/init.ts +334 -0
  187. package/features/extraConsoleCommands/listCommands.ts +1299 -0
  188. package/features/extraConsoleCommands/v.ts +14 -0
  189. package/features/fadeInRemover.ts +60 -0
  190. package/features/fastReset.ts +75 -0
  191. package/features/forgottenSwitch.ts +50 -0
  192. package/features/getCollectibleItemPoolType.ts +66 -0
  193. package/features/persistentEntities.ts +183 -0
  194. package/features/playerInventory.ts +133 -0
  195. package/features/ponyDetection.ts +74 -0
  196. package/features/preventCollectibleRotation.ts +115 -0
  197. package/features/runInNFrames.ts +148 -0
  198. package/features/saveDataManager/constants.ts +4 -0
  199. package/features/saveDataManager/exports.ts +229 -0
  200. package/features/saveDataManager/load.ts +99 -0
  201. package/features/saveDataManager/main.ts +195 -0
  202. package/features/saveDataManager/maps.ts +13 -0
  203. package/features/saveDataManager/merge.ts +194 -0
  204. package/features/saveDataManager/save.ts +74 -0
  205. package/features/saveDataManager/serializationBrand.ts +16 -0
  206. package/features/sirenHelpers.ts +129 -0
  207. package/features/taintedLazarusPlayers.ts +113 -0
  208. package/featuresInitialized.ts +20 -0
  209. package/functions/ambush.ts +47 -0
  210. package/functions/array.ts +410 -0
  211. package/functions/benchmark.ts +36 -0
  212. package/functions/bitwise.ts +24 -0
  213. package/functions/bombs.ts +12 -0
  214. package/functions/boss.ts +227 -0
  215. package/functions/cacheFlag.ts +12 -0
  216. package/functions/cards.lua +1 -1
  217. package/functions/cards.ts +271 -0
  218. package/functions/challenges.ts +13 -0
  219. package/functions/character.ts +126 -0
  220. package/functions/charge.ts +237 -0
  221. package/functions/chargeBar.ts +67 -0
  222. package/functions/collectibleCacheFlag.ts +90 -0
  223. package/functions/collectibleSet.ts +56 -0
  224. package/functions/collectibleTag.ts +89 -0
  225. package/functions/collectibles.ts +659 -0
  226. package/functions/color.d.ts +1 -1
  227. package/functions/color.lua +0 -7
  228. package/functions/color.ts +128 -0
  229. package/functions/debug.lua +2 -2
  230. package/functions/debug.ts +68 -0
  231. package/functions/deepCopy.lua +46 -51
  232. package/functions/deepCopy.ts +535 -0
  233. package/functions/deepCopyTests.ts +386 -0
  234. package/functions/direction.ts +49 -0
  235. package/functions/doors.lua +1 -2
  236. package/functions/doors.ts +347 -0
  237. package/functions/easing.ts +182 -0
  238. package/functions/eden.ts +47 -0
  239. package/functions/effects.ts +20 -0
  240. package/functions/entity.ts +439 -0
  241. package/functions/entitySpecific.ts +889 -0
  242. package/functions/entityTypes.ts +6 -0
  243. package/functions/enums.ts +146 -0
  244. package/functions/familiars.ts +106 -0
  245. package/functions/flag.ts +165 -0
  246. package/functions/flying.ts +117 -0
  247. package/functions/globals.d.ts +3 -3
  248. package/functions/globals.lua +8 -2
  249. package/functions/globals.ts +242 -0
  250. package/functions/gridEntity.ts +511 -0
  251. package/functions/gridEntitySpecific.ts +112 -0
  252. package/functions/input.ts +139 -0
  253. package/functions/isaacAPIClass.ts +67 -0
  254. package/functions/jsonHelpers.ts +45 -0
  255. package/functions/jsonRoom.ts +100 -0
  256. package/functions/kColor.d.ts +1 -1
  257. package/functions/kColor.lua +0 -7
  258. package/functions/kColor.ts +129 -0
  259. package/functions/language.ts +13 -0
  260. package/functions/level.ts +31 -0
  261. package/functions/log.ts +720 -0
  262. package/functions/map.ts +56 -0
  263. package/functions/math.ts +149 -0
  264. package/functions/mergeTests.ts +288 -0
  265. package/functions/npc.ts +148 -0
  266. package/functions/pickupVariants.ts +60 -0
  267. package/functions/pickups.ts +499 -0
  268. package/functions/pills.lua +1 -1
  269. package/functions/pills.ts +205 -0
  270. package/functions/player.lua +0 -6
  271. package/functions/player.ts +1060 -0
  272. package/functions/playerDataStructures.ts +150 -0
  273. package/functions/playerHealth.d.ts +2 -0
  274. package/functions/playerHealth.lua +73 -39
  275. package/functions/playerHealth.ts +382 -0
  276. package/functions/playerIndex.ts +195 -0
  277. package/functions/pocketItems.ts +149 -0
  278. package/functions/positionVelocity.ts +188 -0
  279. package/functions/random.ts +77 -0
  280. package/functions/revive.ts +201 -0
  281. package/functions/rng.d.ts +1 -1
  282. package/functions/rng.lua +0 -7
  283. package/functions/rng.ts +172 -0
  284. package/functions/roomData.ts +199 -0
  285. package/functions/roomGrid.ts +109 -0
  286. package/functions/roomShape.ts +80 -0
  287. package/functions/rooms.lua +1 -3
  288. package/functions/rooms.ts +648 -0
  289. package/functions/run.ts +36 -0
  290. package/functions/saveFile.ts +128 -0
  291. package/functions/seeds.ts +19 -0
  292. package/functions/serialization.lua +0 -3
  293. package/functions/serialization.ts +91 -0
  294. package/functions/set.ts +95 -0
  295. package/functions/sound.ts +9 -0
  296. package/functions/spawnCollectible.ts +104 -0
  297. package/functions/sprite.ts +107 -0
  298. package/functions/stage.ts +125 -0
  299. package/functions/string.ts +47 -0
  300. package/functions/table.ts +189 -0
  301. package/functions/tears.ts +32 -0
  302. package/functions/transformations.lua +1 -3
  303. package/functions/transformations.ts +131 -0
  304. package/functions/trinketCacheFlag.ts +60 -0
  305. package/functions/trinketGive.ts +157 -0
  306. package/functions/trinkets.ts +215 -0
  307. package/functions/tstlClass.ts +157 -0
  308. package/functions/types.ts +36 -0
  309. package/functions/ui.ts +138 -0
  310. package/functions/utils.d.ts +0 -37
  311. package/functions/utils.lua +0 -35
  312. package/functions/utils.ts +189 -0
  313. package/functions/vector.d.ts +1 -1
  314. package/functions/vector.lua +0 -7
  315. package/functions/vector.ts +126 -0
  316. package/index.ts +172 -0
  317. package/initCustomCallbacks.ts +132 -0
  318. package/initFeatures.ts +39 -0
  319. package/interfaces/AddCallbackParameterCustom.ts +188 -0
  320. package/interfaces/ChargeBarSprites.ts +12 -0
  321. package/interfaces/JSONDoor.d.ts +4 -4
  322. package/interfaces/JSONDoor.ts +13 -0
  323. package/interfaces/JSONEntity.d.ts +5 -5
  324. package/interfaces/JSONEntity.ts +16 -0
  325. package/interfaces/JSONRoom.d.ts +9 -9
  326. package/interfaces/JSONRoom.ts +36 -0
  327. package/interfaces/JSONRooms.ts +12 -0
  328. package/interfaces/JSONSpawn.d.ts +3 -3
  329. package/interfaces/JSONSpawn.ts +14 -0
  330. package/interfaces/PlayerHealth.ts +16 -0
  331. package/interfaces/PocketItemDescription.ts +9 -0
  332. package/interfaces/SaveData.ts +29 -0
  333. package/interfaces/TrinketSituation.ts +9 -0
  334. package/interfaces/private/TSTLClassMetatable.ts +8 -0
  335. package/maps/PHDPillConversions.ts +21 -0
  336. package/maps/cardMap.ts +209 -0
  337. package/maps/characterMap.ts +87 -0
  338. package/maps/collectibleDescriptionMap.ts +732 -0
  339. package/maps/collectibleNameMap.ts +731 -0
  340. package/maps/defaultPlayerStatMap.ts +17 -0
  341. package/maps/falsePHDPillConversions.ts +35 -0
  342. package/maps/gridEntityTypeToBrokenStateMap.ts +50 -0
  343. package/maps/gridEntityXMLMap.ts +176 -0
  344. package/maps/pillEffectMap.ts +88 -0
  345. package/maps/roomShapeToTopLeftWallGridIndexMap.ts +18 -0
  346. package/maps/roomTypeMap.ts +40 -0
  347. package/maps/trinketDescriptionMap.ts +200 -0
  348. package/maps/trinketNameMap.ts +198 -0
  349. package/objects/LRoomShapeToRectangles.ts +44 -0
  350. package/objects/callbackRegisterFunctions.ts +187 -0
  351. package/objects/cardDescriptions.ts +105 -0
  352. package/objects/cardNames.ts +105 -0
  353. package/objects/cardTypes.ts +104 -0
  354. package/objects/challengeNames.ts +52 -0
  355. package/objects/characterNames.ts +48 -0
  356. package/objects/coinSubTypeToValue.ts +14 -0
  357. package/objects/colors.ts +16 -0
  358. package/objects/directionNames.ts +11 -0
  359. package/objects/directionToDegrees.ts +11 -0
  360. package/objects/directionToVector.ts +12 -0
  361. package/objects/doorSlotFlagToDoorSlot.ts +16 -0
  362. package/objects/doorSlotToDirection.ts +14 -0
  363. package/objects/isaacAPIClassTypeToBrand.ts +11 -0
  364. package/objects/isaacAPIClassTypeToCopyFunction.ts +18 -0
  365. package/objects/languageNames.ts +13 -0
  366. package/objects/oppositeDoorSlots.ts +15 -0
  367. package/objects/pillEffectClasses.ts +63 -0
  368. package/objects/pillEffectNames.ts +57 -0
  369. package/objects/pillEffectTypes.ts +62 -0
  370. package/objects/roomShapeBounds.ts +71 -0
  371. package/objects/roomShapeLayoutSizes.ts +45 -0
  372. package/objects/roomShapeToBottomRightPosition.ts +25 -0
  373. package/objects/roomShapeToDoorSlots.ts +83 -0
  374. package/objects/roomShapeToDoorSlotsToGridIndexDelta.ts +127 -0
  375. package/objects/roomShapeToGridWidth.ts +21 -0
  376. package/objects/roomShapeToTopLeftPosition.ts +26 -0
  377. package/objects/roomShapeVolumes.ts +38 -0
  378. package/objects/roomTypeNames.ts +36 -0
  379. package/objects/serializedIsaacAPIClassTypeToIdentityFunction.ts +14 -0
  380. package/objects/stageTypeToLetter.ts +15 -0
  381. package/objects/transformationNames.d.ts +0 -1
  382. package/objects/transformationNames.lua +0 -1
  383. package/objects/transformationNames.ts +18 -0
  384. package/package.json +2 -2
  385. package/patchErrorFunctions.ts +92 -0
  386. package/sets/LRoomShapesSet.ts +8 -0
  387. package/sets/bossSets.ts +470 -0
  388. package/sets/charactersThatStartWithAnActiveItemSet.ts +16 -0
  389. package/sets/charactersWithBlackHeartFromEternalHeartSet.ts +7 -0
  390. package/sets/charactersWithFreeDevilDealsSet.ts +4 -0
  391. package/sets/charactersWithNoRedHeartsSet.ts +17 -0
  392. package/sets/charactersWithNoSoulHeartsSet.ts +14 -0
  393. package/sets/chestPickupVariantsSet.ts +16 -0
  394. package/sets/familiarsThatShootPlayerTearsSet.ts +13 -0
  395. package/sets/lostStyleCharactersSet.ts +13 -0
  396. package/sets/mineShaftRoomSubTypesSet.ts +10 -0
  397. package/sets/redHeartSubTypesSet.ts +7 -0
  398. package/sets/sinEntityTypesSet.ts +11 -0
  399. package/sets/singleUseActiveCollectibleTypesSet.ts +13 -0
  400. package/sets/storyBossesSet.ts +17 -0
  401. package/types/AnyEntity.ts +12 -0
  402. package/types/AwaitingTextInput.d.ts +2 -0
  403. package/types/CollectibleIndex.d.ts +1 -1
  404. package/types/CollectibleIndex.ts +16 -0
  405. package/types/PickingUpItem.d.ts +3 -3
  406. package/types/PickingUpItem.ts +89 -0
  407. package/types/PlayerIndex.d.ts +1 -1
  408. package/types/PlayerIndex.ts +13 -0
  409. package/types/private/IsaacAPIClass.d.ts +1 -1
  410. package/types/private/IsaacAPIClass.ts +3 -0
  411. package/types/private/SerializedIsaacAPIClass.d.ts +1 -1
  412. package/types/private/SerializedIsaacAPIClass.ts +3 -0
  413. package/types/private/TSTLClass.d.ts +1 -1
  414. package/types/private/TSTLClass.ts +3 -0
  415. package/upgradeMod.d.ts +2 -2
  416. package/upgradeMod.lua +2 -2
  417. package/upgradeMod.ts +55 -0
@@ -0,0 +1,198 @@
1
+ /* eslint-disable isaacscript/strict-enums */
2
+
3
+ import { TrinketType } from "isaac-typescript-definitions";
4
+
5
+ export const DEFAULT_TRINKET_NAME = "Unknown";
6
+
7
+ // This is a temporary map due to missing features in the vanilla API. (Otherwise, this would be
8
+ // converted to a type-safe object.)
9
+ export const TRINKET_NAME_MAP: ReadonlyMap<TrinketType, string> = new Map([
10
+ [1, "Swallowed Penny"],
11
+ [2, "Petrified Poop"],
12
+ [3, "AAA Battery"],
13
+ [4, "Broken Remote"],
14
+ [5, "Purple Heart"],
15
+ [6, "Broken Magnet"],
16
+ [7, "Rosary Bead"],
17
+ [8, "Cartridge"],
18
+ [9, "Pulse Worm"],
19
+ [10, "Wiggle Worm"],
20
+ [11, "Ring Worm"],
21
+ [12, "Flat Worm"],
22
+ [13, "Store Credit"],
23
+ [14, "Callus"],
24
+ [15, "Lucky Rock"],
25
+ [16, "Mom's Toenail"],
26
+ [17, "Black Lipstick"],
27
+ [18, "Bible Tract"],
28
+ [19, "Paper Clip"],
29
+ [20, "Monkey Paw"],
30
+ [21, "Mysterious Paper"],
31
+ [22, "Daemon's Tail"],
32
+ [23, "Missing Poster"],
33
+ [24, "Butt Penny"],
34
+ [25, "Mysterious Candy"],
35
+ [26, "Hook Worm"],
36
+ [27, "Whip Worm"],
37
+ [28, "Broken Ankh"],
38
+ [29, "Fish Head"],
39
+ [30, "Pinky Eye"],
40
+ [31, "Push Pin"],
41
+ [32, "Liberty Cap"],
42
+ [33, "Umbilical Cord"],
43
+ [34, "Child's Heart"],
44
+ [35, "Curved Horn"],
45
+ [36, "Rusted Key"],
46
+ [37, "Goat Hoof"],
47
+ [38, "Mom's Pearl"],
48
+ [39, "Cancer"],
49
+ [40, "Red Patch"],
50
+ [41, "Match Stick"],
51
+ [42, "Lucky Toe"],
52
+ [43, "Cursed Skull"],
53
+ [44, "Safety Cap"],
54
+ [45, "Ace of Spades"],
55
+ [46, "Isaac's Fork"],
56
+ [48, "A Missing Page"],
57
+ [49, "Bloody Penny"],
58
+ [50, "Burnt Penny"],
59
+ [51, "Flat Penny"],
60
+ [52, "Counterfeit Penny"],
61
+ [53, "Tick"],
62
+ [54, "Isaac's Head"],
63
+ [55, "Maggy's Faith"],
64
+ [56, "Judas' Tongue"],
65
+ [57, "???'s Soul"],
66
+ [58, "Samson's Lock"],
67
+ [59, "Cain's Eye"],
68
+ [60, "Eve's Bird Foot"],
69
+ [61, "The Left Hand"],
70
+ [62, "Shiny Rock"],
71
+ [63, "Safety Scissors"],
72
+ [64, "Rainbow Worm"],
73
+ [65, "Tape Worm"],
74
+ [66, "Lazy Worm"],
75
+ [67, "Cracked Dice"],
76
+ [68, "Super Magnet"],
77
+ [69, "Faded Polaroid"],
78
+ [70, "Louse"],
79
+ [71, "Bob's Bladder"],
80
+ [72, "Watch Battery"],
81
+ [73, "Blasting Cap"],
82
+ [74, "Stud Finder"],
83
+ [75, "Error"],
84
+ [76, "Poker Chip"],
85
+ [77, "Blister"],
86
+ [78, "Second Hand"],
87
+ [79, "Endless Nameless"],
88
+ [80, "Black Feather"],
89
+ [81, "Blind Rage"],
90
+ [82, "Golden Horse Shoe"],
91
+ [83, "Store Key"],
92
+ [84, "Rib of Greed"],
93
+ [85, "Karma"],
94
+ [86, "Lil Larva"],
95
+ [87, "Mom's Locket"],
96
+ [88, "NO!"],
97
+ [89, "Child Leash"],
98
+ [90, "Brown Cap"],
99
+ [91, "Meconium"],
100
+ [92, "Cracked Crown"],
101
+ [93, "Used Diaper"],
102
+ [94, "Fish Tail"],
103
+ [95, "Black Tooth"],
104
+ [96, "Ouroboros Worm"],
105
+ [97, "Tonsil"],
106
+ [98, "Nose Goblin"],
107
+ [99, "Super Ball"],
108
+ [100, "Vibrant Bulb"],
109
+ [101, "Dim Bulb"],
110
+ [102, "Fragmented Card"],
111
+ [103, "Equality!"],
112
+ [104, "Wish Bone"],
113
+ [105, "Bag Lunch"],
114
+ [106, "Lost Cork"],
115
+ [107, "Crow Heart"],
116
+ [108, "Walnut"],
117
+ [109, "Duct Tape"],
118
+ [110, "Silver Dollar"],
119
+ [111, "Bloody Crown"],
120
+ [112, "Pay To Win"],
121
+ [113, "Locust of War"],
122
+ [114, "Locust of Pestilence"],
123
+ [115, "Locust of Famine"],
124
+ [116, "Locust of Death"],
125
+ [117, "Locust of Conquest"],
126
+ [118, "Bat Wing"],
127
+ [119, "Stem Cell"],
128
+ [120, "Hairpin"],
129
+ [121, "Wooden Cross"],
130
+ [122, "Butter!"],
131
+ [123, "Filigree Feather"],
132
+ [124, "Door Stop"],
133
+ [125, "Extension Cord"],
134
+ [126, "Rotten Penny"],
135
+ [127, "Baby-Bender"],
136
+ [128, "Finger Bone"],
137
+ [129, "Jawbreaker"],
138
+ [130, "Chewed Pen"],
139
+ [131, "Blessed Penny"],
140
+ [132, "Broken Syringe"],
141
+ [133, "Short Fuse"],
142
+ [134, "Gigante Bean"],
143
+ [135, "A Lighter"],
144
+ [136, "Broken Padlock"],
145
+ [137, "Myosotis"],
146
+ [138, " 'M"],
147
+ [139, "Teardrop Charm"],
148
+ [140, "Apple of Sodom"],
149
+ [141, "Forgotten Lullaby"],
150
+ [142, "Beth's Faith"],
151
+ [143, "Old Capacitor"],
152
+ [144, "Brain Worm"],
153
+ [145, "Perfection"],
154
+ [146, "Devil's Crown"],
155
+ [147, "Charged Penny"],
156
+ [148, "Friendship Necklace"],
157
+ [149, "Panic Button"],
158
+ [150, "Blue Key"],
159
+ [151, "Flat File"],
160
+ [152, "Telescope Lens"],
161
+ [153, "Mom's Lock"],
162
+ [154, "Dice Bag"],
163
+ [155, "Holy Crown"],
164
+ [156, "Mother's Kiss"],
165
+ [157, "Torn Card"],
166
+ [158, "Torn Pocket"],
167
+ [159, "Gilded Key"],
168
+ [160, "Lucky Sack"],
169
+ [161, "Wicked Crown"],
170
+ [162, "Azazel's Stump"],
171
+ [163, "Dingle Berry"],
172
+ [164, "Ring Cap"],
173
+ [165, "Nuh Uh!"],
174
+ [166, "Modeling Clay"],
175
+ [167, "Polished Bone"],
176
+ [168, "Hollow Heart"],
177
+ [169, "Kid's Drawing"],
178
+ [170, "Crystal Key"],
179
+ [171, "Keeper's Bargain"],
180
+ [172, "Cursed Penny"],
181
+ [173, "Your Soul"],
182
+ [174, "Number Magnet"],
183
+ [175, "Strange Key"],
184
+ [176, "Lil Clot"],
185
+ [177, "Temporary Tattoo"],
186
+ [178, "Swallowed M80"],
187
+ [179, "RC Remote"],
188
+ [180, "Found Soul"],
189
+ [181, "Expansion Pack"],
190
+ [182, "Beth's Essence"],
191
+ [183, "The Twins"],
192
+ [184, "Adoption Papers"],
193
+ [185, "Cricket Leg"],
194
+ [186, "Apollyon's Best Friend"],
195
+ [187, "Broken Glasses"],
196
+ [188, "Ice Cube"],
197
+ [189, "Sigil of Baphomet"],
198
+ ]);
@@ -0,0 +1,44 @@
1
+ import { RoomShape } from "isaac-typescript-definitions";
2
+ import { VectorZero } from "../constants";
3
+
4
+ const TWO_BY_TWO_BOTTOM_RIGHT = Vector(25, 13);
5
+
6
+ /**
7
+ * "Vector(0, 0)" corresponds to the top left tile of a room, not including the walls. (The top-left
8
+ * wall would be at "Vector(-1, -1)".)
9
+ */
10
+ export const L_ROOM_SHAPE_TO_RECTANGLES: {
11
+ readonly [key in RoomShape]?: readonly [
12
+ verticalTopLeft: Vector,
13
+ verticalBottomRight: Vector,
14
+ horizontalTopLeft: Vector,
15
+ horizontalBottomRight: Vector,
16
+ ];
17
+ } = {
18
+ // 9
19
+ [RoomShape.LTL]: [
20
+ Vector(13, 0),
21
+ Vector(25, 13),
22
+ Vector(0, 7),
23
+ TWO_BY_TWO_BOTTOM_RIGHT,
24
+ ],
25
+
26
+ // 10
27
+ [RoomShape.LTR]: [
28
+ VectorZero,
29
+ Vector(12, 13),
30
+ Vector(0, 7),
31
+ TWO_BY_TWO_BOTTOM_RIGHT,
32
+ ],
33
+
34
+ // 11
35
+ [RoomShape.LBL]: [
36
+ VectorZero,
37
+ Vector(25, 6),
38
+ Vector(13, 0),
39
+ TWO_BY_TWO_BOTTOM_RIGHT,
40
+ ],
41
+
42
+ // 12
43
+ [RoomShape.LBR]: [VectorZero, Vector(25, 6), VectorZero, Vector(12, 13)],
44
+ } as const;
@@ -0,0 +1,187 @@
1
+ import { postAmbushFinishedRegister } from "../callbacks/subscriptions/postAmbushFinished";
2
+ import { postAmbushStartedRegister } from "../callbacks/subscriptions/postAmbushStarted";
3
+ import { postBombInitLateRegister } from "../callbacks/subscriptions/postBombInitLate";
4
+ import { postBombExplodedRegister } from "../callbacks/subscriptions/postBoneExploded";
5
+ import { postBoneSwingRegister } from "../callbacks/subscriptions/postBoneSwing";
6
+ import { postCollectibleInitFirstRegister } from "../callbacks/subscriptions/postCollectibleInitFirst";
7
+ import { postCursedTeleportRegister } from "../callbacks/subscriptions/postCursedTeleport";
8
+ import { postCustomDoorEnterRegister } from "../callbacks/subscriptions/postCustomDoorEnter";
9
+ import { postCustomReviveRegister } from "../callbacks/subscriptions/postCustomRevive";
10
+ import { postDiceRoomActivatedRegister } from "../callbacks/subscriptions/postDiceRoomActivated";
11
+ import { postDoorRenderRegister } from "../callbacks/subscriptions/postDoorRender";
12
+ import { postDoorUpdateRegister } from "../callbacks/subscriptions/postDoorUpdate";
13
+ import { postEffectInitLateRegister } from "../callbacks/subscriptions/postEffectInitLate";
14
+ import { postEffectStateChangedRegister } from "../callbacks/subscriptions/postEffectStateChanged";
15
+ import { postEsauJrRegister } from "../callbacks/subscriptions/postEsauJr";
16
+ import { postFamiliarInitLateRegister } from "../callbacks/subscriptions/postFamiliarInitLate";
17
+ import { postFamiliarStateChangedRegister } from "../callbacks/subscriptions/postFamiliarStateChanged";
18
+ import { postFirstEsauJrRegister } from "../callbacks/subscriptions/postFirstEsauJr";
19
+ import { postFirstFlipRegister } from "../callbacks/subscriptions/postFirstFlip";
20
+ import { postFlipRegister } from "../callbacks/subscriptions/postFlip";
21
+ import { postGameStartedReorderedRegister } from "../callbacks/subscriptions/postGameStartedReordered";
22
+ import { postGreedModeWaveRegister } from "../callbacks/subscriptions/postGreedModeWave";
23
+ import { postGridEntityBrokenRegister } from "../callbacks/subscriptions/postGridEntityBroken";
24
+ import { postGridEntityCollisionRegister } from "../callbacks/subscriptions/postGridEntityCollision";
25
+ import { postGridEntityInitRegister } from "../callbacks/subscriptions/postGridEntityInit";
26
+ import { postGridEntityRemoveRegister } from "../callbacks/subscriptions/postGridEntityRemove";
27
+ import { postGridEntityRenderRegister } from "../callbacks/subscriptions/postGridEntityRender";
28
+ import { postGridEntityStateChangedRegister } from "../callbacks/subscriptions/postGridEntityStateChanged";
29
+ import { postGridEntityUpdateRegister } from "../callbacks/subscriptions/postGridEntityUpdate";
30
+ import { postHolyMantleRemovedRegister } from "../callbacks/subscriptions/postHolyMantleRemoved";
31
+ import { postItemDischargeRegister } from "../callbacks/subscriptions/postItemDischarged";
32
+ import { postItemPickupRegister } from "../callbacks/subscriptions/postItemPickup";
33
+ import { postKnifeInitLateRegister } from "../callbacks/subscriptions/postKnifeInitLate";
34
+ import { postLaserInitLateRegister } from "../callbacks/subscriptions/postLaserInitLate";
35
+ import { postNewLevelReorderedRegister } from "../callbacks/subscriptions/postNewLevelReordered";
36
+ import { postNewRoomEarlyRegister } from "../callbacks/subscriptions/postNewRoomEarly";
37
+ import { postNewRoomReorderedRegister } from "../callbacks/subscriptions/postNewRoomReordered";
38
+ import { postNPCInitLateRegister } from "../callbacks/subscriptions/postNPCInitLate";
39
+ import { postNPCStateChangedRegister } from "../callbacks/subscriptions/postNPCStateChanged";
40
+ import { postPEffectUpdateReorderedRegister } from "../callbacks/subscriptions/postPEffectUpdateReordered";
41
+ import { postPickupCollectRegister } from "../callbacks/subscriptions/postPickupCollect";
42
+ import { postPickupInitFirstRegister } from "../callbacks/subscriptions/postPickupInitFirst";
43
+ import { postPickupInitLateRegister } from "../callbacks/subscriptions/postPickupInitLate";
44
+ import { postPickupStateChangedRegister } from "../callbacks/subscriptions/postPickupStateChanged";
45
+ import { postPitRenderRegister } from "../callbacks/subscriptions/postPitRender";
46
+ import { postPitUpdateRegister } from "../callbacks/subscriptions/postPitUpdate";
47
+ import { postPlayerChangeHealthRegister } from "../callbacks/subscriptions/postPlayerChangeHealth";
48
+ import { postPlayerChangeTypeRegister } from "../callbacks/subscriptions/postPlayerChangeType";
49
+ import { postPlayerCollectibleAddedRegister } from "../callbacks/subscriptions/postPlayerCollectibleAdded";
50
+ import { postPlayerCollectibleRemovedRegister } from "../callbacks/subscriptions/postPlayerCollectibleRemoved";
51
+ import { postPlayerFatalDamageRegister } from "../callbacks/subscriptions/postPlayerFatalDamage";
52
+ import { postPlayerInitLateRegister } from "../callbacks/subscriptions/postPlayerInitLate";
53
+ import { postPlayerInitReorderedRegister } from "../callbacks/subscriptions/postPlayerInitReordered";
54
+ import { postPlayerRenderReorderedRegister } from "../callbacks/subscriptions/postPlayerRenderReordered";
55
+ import { postPlayerUpdateReorderedRegister } from "../callbacks/subscriptions/postPlayerUpdateReordered";
56
+ import { postPoopRenderRegister } from "../callbacks/subscriptions/postPoopRender";
57
+ import { postPoopUpdateRegister } from "../callbacks/subscriptions/postPoopUpdate";
58
+ import { postPressurePlateRenderRegister } from "../callbacks/subscriptions/postPressurePlateRender";
59
+ import { postPressurePlateUpdateRegister } from "../callbacks/subscriptions/postPressurePlateUpdate";
60
+ import { postProjectileInitLateRegister } from "../callbacks/subscriptions/postProjectileInitLate";
61
+ import { postPurchaseRegister } from "../callbacks/subscriptions/postPurchase";
62
+ import { postRockRenderRegister } from "../callbacks/subscriptions/postRockRender";
63
+ import { postRockUpdateRegister } from "../callbacks/subscriptions/postRockUpdate";
64
+ import { postRoomClearChangedRegister } from "../callbacks/subscriptions/postRoomClearChanged";
65
+ import { postSacrificeRegister } from "../callbacks/subscriptions/postSacrifice";
66
+ import { postSlotAnimationChangedRegister } from "../callbacks/subscriptions/postSlotAnimationChanged";
67
+ import { postSlotDestroyedRegister } from "../callbacks/subscriptions/postSlotDestroyed";
68
+ import { postSlotInitRegister } from "../callbacks/subscriptions/postSlotInit";
69
+ import { postSlotRenderRegister } from "../callbacks/subscriptions/postSlotRender";
70
+ import { postSlotUpdateRegister } from "../callbacks/subscriptions/postSlotUpdate";
71
+ import { postSpikesRenderRegister } from "../callbacks/subscriptions/postSpikesRender";
72
+ import { postSpikesUpdateRegister } from "../callbacks/subscriptions/postSpikesUpdate";
73
+ import { postTearInitLateRegister } from "../callbacks/subscriptions/postTearInitLate";
74
+ import { postTearInitVeryLateRegister } from "../callbacks/subscriptions/postTearInitVeryLate";
75
+ import { postTNTRenderRegister } from "../callbacks/subscriptions/postTNTRender";
76
+ import { postTNTUpdateRegister } from "../callbacks/subscriptions/postTNTUpdate";
77
+ import { postTransformationRegister } from "../callbacks/subscriptions/postTransformation";
78
+ import { postTrinketBreakRegister } from "../callbacks/subscriptions/postTrinketBreak";
79
+ import { preBerserkDeathRegister } from "../callbacks/subscriptions/preBerserkDeath";
80
+ import { preCustomReviveRegister } from "../callbacks/subscriptions/preCustomRevive";
81
+ import { preItemPickupRegister } from "../callbacks/subscriptions/preItemPickup";
82
+ import { preNewLevelRegister } from "../callbacks/subscriptions/preNewLevel";
83
+ import { ModCallbackCustom } from "../enums/ModCallbackCustom";
84
+ import { AddCallbackParameterCustom } from "../interfaces/AddCallbackParameterCustom";
85
+
86
+ export const CALLBACK_REGISTER_FUNCTIONS: {
87
+ readonly [key in ModCallbackCustom]: (
88
+ ...args: AddCallbackParameterCustom[key]
89
+ ) => void;
90
+ } = {
91
+ [ModCallbackCustom.POST_AMBUSH_FINISHED]: postAmbushFinishedRegister,
92
+ [ModCallbackCustom.POST_AMBUSH_STARTED]: postAmbushStartedRegister,
93
+ [ModCallbackCustom.POST_BOMB_EXPLODED]: postBombExplodedRegister,
94
+ [ModCallbackCustom.POST_BOMB_INIT_LATE]: postBombInitLateRegister,
95
+ [ModCallbackCustom.POST_BONE_SWING]: postBoneSwingRegister,
96
+ [ModCallbackCustom.POST_COLLECTIBLE_INIT_FIRST]:
97
+ postCollectibleInitFirstRegister,
98
+ [ModCallbackCustom.POST_CURSED_TELEPORT]: postCursedTeleportRegister,
99
+ [ModCallbackCustom.POST_CUSTOM_DOOR_ENTER]: postCustomDoorEnterRegister,
100
+ [ModCallbackCustom.POST_CUSTOM_REVIVE]: postCustomReviveRegister,
101
+ [ModCallbackCustom.POST_DICE_ROOM_ACTIVATED]: postDiceRoomActivatedRegister,
102
+ [ModCallbackCustom.POST_DOOR_RENDER]: postDoorRenderRegister,
103
+ [ModCallbackCustom.POST_DOOR_UPDATE]: postDoorUpdateRegister,
104
+ [ModCallbackCustom.POST_EFFECT_INIT_LATE]: postEffectInitLateRegister,
105
+ [ModCallbackCustom.POST_EFFECT_STATE_CHANGED]: postEffectStateChangedRegister,
106
+ [ModCallbackCustom.POST_ESAU_JR]: postEsauJrRegister,
107
+ [ModCallbackCustom.POST_FAMILIAR_INIT_LATE]: postFamiliarInitLateRegister,
108
+ [ModCallbackCustom.POST_FAMILIAR_STATE_CHANGED]:
109
+ postFamiliarStateChangedRegister,
110
+ [ModCallbackCustom.POST_FIRST_ESAU_JR]: postFirstEsauJrRegister,
111
+ [ModCallbackCustom.POST_FIRST_FLIP]: postFirstFlipRegister,
112
+ [ModCallbackCustom.POST_FLIP]: postFlipRegister,
113
+ [ModCallbackCustom.POST_GAME_STARTED_REORDERED]:
114
+ postGameStartedReorderedRegister,
115
+ [ModCallbackCustom.POST_GREED_MODE_WAVE]: postGreedModeWaveRegister,
116
+ [ModCallbackCustom.POST_GRID_ENTITY_BROKEN]: postGridEntityBrokenRegister,
117
+ [ModCallbackCustom.POST_GRID_ENTITY_COLLISION]:
118
+ postGridEntityCollisionRegister,
119
+ [ModCallbackCustom.POST_GRID_ENTITY_INIT]: postGridEntityInitRegister,
120
+ [ModCallbackCustom.POST_GRID_ENTITY_REMOVE]: postGridEntityRemoveRegister,
121
+ [ModCallbackCustom.POST_GRID_ENTITY_RENDER]: postGridEntityRenderRegister,
122
+ [ModCallbackCustom.POST_GRID_ENTITY_STATE_CHANGED]:
123
+ postGridEntityStateChangedRegister,
124
+ [ModCallbackCustom.POST_GRID_ENTITY_UPDATE]: postGridEntityUpdateRegister,
125
+ [ModCallbackCustom.POST_HOLY_MANTLE_REMOVED]: postHolyMantleRemovedRegister,
126
+ [ModCallbackCustom.POST_ITEM_DISCHARGE]: postItemDischargeRegister,
127
+ [ModCallbackCustom.POST_ITEM_PICKUP]: postItemPickupRegister,
128
+ [ModCallbackCustom.POST_KNIFE_INIT_LATE]: postKnifeInitLateRegister,
129
+ [ModCallbackCustom.POST_LASER_INIT_LATE]: postLaserInitLateRegister,
130
+ [ModCallbackCustom.POST_NEW_LEVEL_REORDERED]: postNewLevelReorderedRegister,
131
+ [ModCallbackCustom.POST_NEW_ROOM_EARLY]: postNewRoomEarlyRegister,
132
+ [ModCallbackCustom.POST_NEW_ROOM_REORDERED]: postNewRoomReorderedRegister,
133
+ [ModCallbackCustom.POST_NPC_INIT_LATE]: postNPCInitLateRegister,
134
+ [ModCallbackCustom.POST_NPC_STATE_CHANGED]: postNPCStateChangedRegister,
135
+ [ModCallbackCustom.POST_PEFFECT_UPDATE_REORDERED]:
136
+ postPEffectUpdateReorderedRegister,
137
+ [ModCallbackCustom.POST_PICKUP_COLLECT]: postPickupCollectRegister,
138
+ [ModCallbackCustom.POST_PICKUP_INIT_FIRST]: postPickupInitFirstRegister,
139
+ [ModCallbackCustom.POST_PICKUP_INIT_LATE]: postPickupInitLateRegister,
140
+ [ModCallbackCustom.POST_PICKUP_STATE_CHANGED]: postPickupStateChangedRegister,
141
+ [ModCallbackCustom.POST_PIT_RENDER]: postPitRenderRegister,
142
+ [ModCallbackCustom.POST_PIT_UPDATE]: postPitUpdateRegister,
143
+ [ModCallbackCustom.POST_PLAYER_CHANGE_HEALTH]: postPlayerChangeHealthRegister,
144
+ [ModCallbackCustom.POST_PLAYER_CHANGE_TYPE]: postPlayerChangeTypeRegister,
145
+ [ModCallbackCustom.POST_PLAYER_COLLECTIBLE_ADDED]:
146
+ postPlayerCollectibleAddedRegister,
147
+ [ModCallbackCustom.POST_PLAYER_COLLECTIBLE_REMOVED]:
148
+ postPlayerCollectibleRemovedRegister,
149
+ [ModCallbackCustom.POST_PLAYER_FATAL_DAMAGE]: postPlayerFatalDamageRegister,
150
+ [ModCallbackCustom.POST_PLAYER_INIT_LATE]: postPlayerInitLateRegister,
151
+ [ModCallbackCustom.POST_PLAYER_INIT_REORDERED]:
152
+ postPlayerInitReorderedRegister,
153
+ [ModCallbackCustom.POST_PLAYER_RENDER_REORDERED]:
154
+ postPlayerRenderReorderedRegister,
155
+ [ModCallbackCustom.POST_PLAYER_UPDATE_REORDERED]:
156
+ postPlayerUpdateReorderedRegister,
157
+ [ModCallbackCustom.POST_POOP_RENDER]: postPoopRenderRegister,
158
+ [ModCallbackCustom.POST_POOP_UPDATE]: postPoopUpdateRegister,
159
+ [ModCallbackCustom.POST_PRESSURE_PLATE_RENDER]:
160
+ postPressurePlateRenderRegister,
161
+ [ModCallbackCustom.POST_PRESSURE_PLATE_UPDATE]:
162
+ postPressurePlateUpdateRegister,
163
+ [ModCallbackCustom.POST_PROJECTILE_INIT_LATE]: postProjectileInitLateRegister,
164
+ [ModCallbackCustom.POST_PURCHASE]: postPurchaseRegister,
165
+ [ModCallbackCustom.POST_ROCK_RENDER]: postRockRenderRegister,
166
+ [ModCallbackCustom.POST_ROCK_UPDATE]: postRockUpdateRegister,
167
+ [ModCallbackCustom.POST_ROOM_CLEAR_CHANGED]: postRoomClearChangedRegister,
168
+ [ModCallbackCustom.POST_SACRIFICE]: postSacrificeRegister,
169
+ [ModCallbackCustom.POST_SLOT_ANIMATION_CHANGED]:
170
+ postSlotAnimationChangedRegister,
171
+ [ModCallbackCustom.POST_SLOT_DESTROYED]: postSlotDestroyedRegister,
172
+ [ModCallbackCustom.POST_SLOT_INIT]: postSlotInitRegister,
173
+ [ModCallbackCustom.POST_SLOT_RENDER]: postSlotRenderRegister,
174
+ [ModCallbackCustom.POST_SLOT_UPDATE]: postSlotUpdateRegister,
175
+ [ModCallbackCustom.POST_SPIKES_RENDER]: postSpikesRenderRegister,
176
+ [ModCallbackCustom.POST_SPIKES_UPDATE]: postSpikesUpdateRegister,
177
+ [ModCallbackCustom.POST_TEAR_INIT_LATE]: postTearInitLateRegister,
178
+ [ModCallbackCustom.POST_TEAR_INIT_VERY_LATE]: postTearInitVeryLateRegister,
179
+ [ModCallbackCustom.POST_TNT_RENDER]: postTNTRenderRegister,
180
+ [ModCallbackCustom.POST_TNT_UPDATE]: postTNTUpdateRegister,
181
+ [ModCallbackCustom.POST_TRANSFORMATION]: postTransformationRegister,
182
+ [ModCallbackCustom.POST_TRINKET_BREAK]: postTrinketBreakRegister,
183
+ [ModCallbackCustom.PRE_BERSERK_DEATH]: preBerserkDeathRegister,
184
+ [ModCallbackCustom.PRE_CUSTOM_REVIVE]: preCustomReviveRegister,
185
+ [ModCallbackCustom.PRE_ITEM_PICKUP]: preItemPickupRegister,
186
+ [ModCallbackCustom.PRE_NEW_LEVEL]: preNewLevelRegister,
187
+ } as const;
@@ -0,0 +1,105 @@
1
+ import { Card } from "isaac-typescript-definitions";
2
+
3
+ export const DEFAULT_CARD_DESCRIPTION = "Unknown";
4
+
5
+ // This is a temporary map due to missing features in the vanilla API.
6
+ export const CARD_DESCRIPTIONS: { readonly [key in Card]: string } = {
7
+ [Card.NULL]: DEFAULT_CARD_DESCRIPTION, // 0
8
+ [Card.FOOL]: "Where journey begins", // 1
9
+ [Card.MAGICIAN]: "May you never miss your goal", // 2
10
+ [Card.HIGH_PRIESTESS]: "Mother is watching you", // 3
11
+ [Card.EMPRESS]: "May your rage bring power", // 4
12
+ [Card.EMPEROR]: "Challenge me!", // 5
13
+ [Card.HIEROPHANT]: "Two prayers for the lost", // 6
14
+ [Card.LOVERS]: "May you prosper and be in good health", // 7
15
+ [Card.CHARIOT]: "May nothing stand before you", // 8
16
+ [Card.JUSTICE]: "May your future become balanced", // 9
17
+ [Card.HERMIT]: "May you see what life has to offer", // 10
18
+ [Card.WHEEL_OF_FORTUNE]: "Spin the wheel of destiny", // 11
19
+ [Card.STRENGTH]: "May your power bring rage", // 12
20
+ [Card.HANGED_MAN]: "May you find enlightenment ", // 13
21
+ [Card.DEATH]: "Lay waste to all that oppose you ", // 14
22
+ [Card.TEMPERANCE]: "May you be pure in heart", // 15
23
+ [Card.DEVIL]: "Revel in the power of darkness", // 16
24
+ [Card.TOWER]: "Destruction brings creation", // 17
25
+ [Card.STARS]: "May you find what you desire ", // 18
26
+ [Card.MOON]: "May you find all you have lost", // 19
27
+ [Card.SUN]: "May the light heal and enlighten you", // 20
28
+ [Card.JUDGEMENT]: "Judge lest ye be judged", // 21
29
+ [Card.WORLD]: "Open your eyes and see", // 22
30
+ [Card.CLUBS_2]: "Item multiplier", // 23
31
+ [Card.DIAMONDS_2]: "Item multiplier", // 24
32
+ [Card.SPADES_2]: "Item multiplier", // 25
33
+ [Card.HEARTS_2]: "Item multiplier", // 26
34
+ [Card.ACE_OF_CLUBS]: "Convert all", // 27
35
+ [Card.ACE_OF_DIAMONDS]: "Convert all", // 28
36
+ [Card.ACE_OF_SPADES]: "Convert all", // 29
37
+ [Card.ACE_OF_HEARTS]: "Convert all", // 30
38
+ [Card.JOKER]: "???", // 31
39
+ [Card.RUNE_HAGALAZ]: "Destruction", // 32
40
+ [Card.RUNE_JERA]: "Abundance", // 33
41
+ [Card.RUNE_EHWAZ]: "Passage", // 34
42
+ [Card.RUNE_DAGAZ]: "Purity", // 35
43
+ [Card.RUNE_ANSUZ]: "Vision", // 36
44
+ [Card.RUNE_PERTHRO]: "Change", // 37
45
+ [Card.RUNE_BERKANO]: "Companionship", // 38
46
+ [Card.RUNE_ALGIZ]: "Resistance", // 39
47
+ [Card.RUNE_BLANK]: "???", // 40
48
+ [Card.RUNE_BLACK]: "Void", // 41
49
+ [Card.CHAOS]: "???", // 42
50
+ [Card.CREDIT]: "Charge it!", // 43
51
+ [Card.RULES]: "???", // 44
52
+ [Card.AGAINST_HUMANITY]: "Something stinks...", // 45
53
+ [Card.SUICIDE_KING]: "A true ending?", // 46
54
+ [Card.GET_OUT_OF_JAIL_FREE]: "Open Sesame", // 47
55
+ [Card.QUESTION_MARK]: "Double active", // 48
56
+ [Card.DICE_SHARD]: "D6 + D20", // 49
57
+ [Card.EMERGENCY_CONTACT]: "Help from above", // 50
58
+ [Card.HOLY]: "You feel protected", // 51
59
+ [Card.HUGE_GROWTH]: "Become immense!", // 52
60
+ [Card.ANCIENT_RECALL]: "Draw 3 cards", // 53
61
+ [Card.ERA_WALK]: "Savor the moment", // 54
62
+ [Card.RUNE_SHARD]: "It still glows faintly", // 55
63
+ [Card.REVERSE_FOOL]: "Let go and move on", // 56
64
+ [Card.REVERSE_MAGICIAN]: "May no harm come to you", // 57
65
+ [Card.REVERSE_HIGH_PRIESTESS]: "Run", // 58
66
+ [Card.REVERSE_EMPRESS]: "May your love bring protection", // 59
67
+ [Card.REVERSE_EMPEROR]: "May you find a worthy opponent", // 60
68
+ [Card.REVERSE_HIEROPHANT]: "Two prayers for the forgotten", // 61
69
+ [Card.REVERSE_LOVERS]: "May your heart shatter into pieces", // 62
70
+ [Card.REVERSE_CHARIOT]: "May nothing walk past you", // 63
71
+ [Card.REVERSE_JUSTICE]: "May your sins come back to torment you", // 64
72
+ [Card.REVERSE_HERMIT]: "May you see the value of all things in life", // 65
73
+ [Card.REVERSE_WHEEL_OF_FORTUNE]: "Throw the dice of fate", // 66
74
+ [Card.REVERSE_STRENGTH]: "May you break their resolve", // 67
75
+ [Card.REVERSE_HANGED_MAN]: "May your greed know no bounds", // 68
76
+ [Card.REVERSE_DEATH]: "May life spring forth from the fallen", // 69
77
+ [Card.REVERSE_TEMPERANCE]: "May your hunger be satiated", // 70
78
+ [Card.REVERSE_DEVIL]: "Bask in the light of your mercy", // 71
79
+ [Card.REVERSE_TOWER]: "Creation brings destruction", // 72
80
+ [Card.REVERSE_STARS]: "May your loss bring fortune", // 73
81
+ [Card.REVERSE_MOON]: "May you remember lost memories", // 74
82
+ [Card.REVERSE_SUN]: "May the darkness swallow all around you", // 75
83
+ [Card.REVERSE_JUDGEMENT]: "May you redeem those found wanting", // 76
84
+ [Card.REVERSE_WORLD]: "Step into the abyss", // 77
85
+ [Card.CRACKED_KEY]: "???", // 78
86
+ [Card.QUEEN_OF_HEARTS]: "<3", // 79
87
+ [Card.WILD]: "Again", // 80
88
+ [Card.SOUL_ISAAC]: "Reroll... or not", // 81
89
+ [Card.SOUL_MAGDALENE]: "Give me your love!", // 82
90
+ [Card.SOUL_CAIN]: "Opens the unopenable", // 83
91
+ [Card.SOUL_JUDAS]: "Right behind you", // 84
92
+ [Card.SOUL_BLUE_BABY]: "Chemical warfare", // 85
93
+ [Card.SOUL_EVE]: "Your very own murder", // 86
94
+ [Card.SOUL_SAMSON]: "Slay a thousand", // 87
95
+ [Card.SOUL_AZAZEL]: "Demon rage!", // 88
96
+ [Card.SOUL_LAZARUS]: "Life after death", // 89
97
+ [Card.SOUL_EDEN]: "Embrace chaos", // 90
98
+ [Card.SOUL_LOST]: "Leave your body behind", // 91
99
+ [Card.SOUL_LILITH]: "Motherhood", // 92
100
+ [Card.SOUL_KEEPER]: "$$$", // 93
101
+ [Card.SOUL_APOLLYON]: "Bringer of calamity", // 94
102
+ [Card.SOUL_FORGOTTEN]: "Skeletal protector", // 95
103
+ [Card.SOUL_BETHANY]: "Friends from beyond", // 96
104
+ [Card.SOUL_JACOB]: "Bound by blood", // 97
105
+ } as const;
@@ -0,0 +1,105 @@
1
+ import { Card } from "isaac-typescript-definitions";
2
+
3
+ export const DEFAULT_CARD_NAME = "Unknown";
4
+
5
+ // This is a temporary map due to missing features in the vanilla API.
6
+ export const CARD_NAMES: { readonly [key in Card]: string } = {
7
+ [Card.NULL]: DEFAULT_CARD_NAME,
8
+ [Card.FOOL]: "0 - The Fool",
9
+ [Card.MAGICIAN]: "I - The Magician",
10
+ [Card.HIGH_PRIESTESS]: "II - The High Priestess",
11
+ [Card.EMPRESS]: "III - The Empress",
12
+ [Card.EMPEROR]: "IV - The Emperor",
13
+ [Card.HIEROPHANT]: "V - The Hierophant",
14
+ [Card.LOVERS]: "VI - The Lovers",
15
+ [Card.CHARIOT]: "VII - The Chariot",
16
+ [Card.JUSTICE]: "VIII - Justice",
17
+ [Card.HERMIT]: "IX - The Hermit",
18
+ [Card.WHEEL_OF_FORTUNE]: "X - Wheel of Fortune",
19
+ [Card.STRENGTH]: "XI - Strength",
20
+ [Card.HANGED_MAN]: "XII - The Hanged Man",
21
+ [Card.DEATH]: "XIII - Death",
22
+ [Card.TEMPERANCE]: "XIV - Temperance",
23
+ [Card.DEVIL]: "XV - The Devil",
24
+ [Card.TOWER]: "XVI - The Tower",
25
+ [Card.STARS]: "XVII - The Stars",
26
+ [Card.MOON]: "XVIII - The Moon",
27
+ [Card.SUN]: "XIX - The Sun",
28
+ [Card.JUDGEMENT]: "XX - Judgement",
29
+ [Card.WORLD]: "XXI - The World",
30
+ [Card.CLUBS_2]: "2 of Clubs",
31
+ [Card.DIAMONDS_2]: "2 of Diamonds",
32
+ [Card.SPADES_2]: "2 of Spades",
33
+ [Card.HEARTS_2]: "2 of Hearts",
34
+ [Card.ACE_OF_CLUBS]: "Ace of Clubs",
35
+ [Card.ACE_OF_DIAMONDS]: "Ace of Diamonds",
36
+ [Card.ACE_OF_SPADES]: "Ace of Spades",
37
+ [Card.ACE_OF_HEARTS]: "Ace of Hearts",
38
+ [Card.JOKER]: "Joker",
39
+ [Card.RUNE_HAGALAZ]: "Hagalaz",
40
+ [Card.RUNE_JERA]: "Jera",
41
+ [Card.RUNE_EHWAZ]: "Ehwaz",
42
+ [Card.RUNE_DAGAZ]: "Dagaz",
43
+ [Card.RUNE_ANSUZ]: "Ansuz",
44
+ [Card.RUNE_PERTHRO]: "Perthro",
45
+ [Card.RUNE_BERKANO]: "Berkano",
46
+ [Card.RUNE_ALGIZ]: "Algiz",
47
+ [Card.RUNE_BLANK]: "Blank Rune",
48
+ [Card.RUNE_BLACK]: "Black Rune",
49
+ [Card.CHAOS]: "Chaos Card",
50
+ [Card.CREDIT]: "Credit Card",
51
+ [Card.RULES]: "Rules Card",
52
+ [Card.AGAINST_HUMANITY]: "A Card Against Humanity",
53
+ [Card.SUICIDE_KING]: "Suicide King",
54
+ [Card.GET_OUT_OF_JAIL_FREE]: "Get Out Of Jail Free Card",
55
+ [Card.QUESTION_MARK]: "? Card",
56
+ [Card.DICE_SHARD]: "Dice Shard",
57
+ [Card.EMERGENCY_CONTACT]: "Emergency Contact",
58
+ [Card.HOLY]: "Holy Card",
59
+ [Card.HUGE_GROWTH]: "Huge Growth",
60
+ [Card.ANCIENT_RECALL]: "Ancient Recall",
61
+ [Card.ERA_WALK]: "Era Walk",
62
+ [Card.RUNE_SHARD]: "Rune Shard",
63
+ [Card.REVERSE_FOOL]: "0 - The Fool?",
64
+ [Card.REVERSE_MAGICIAN]: "I - The Magician?",
65
+ [Card.REVERSE_HIGH_PRIESTESS]: "II - The High Priestess?",
66
+ [Card.REVERSE_EMPRESS]: "III - The Empress?",
67
+ [Card.REVERSE_EMPEROR]: "IV - The Emperor?",
68
+ [Card.REVERSE_HIEROPHANT]: "V - The Hierophant?",
69
+ [Card.REVERSE_LOVERS]: "VI - The Lovers?",
70
+ [Card.REVERSE_CHARIOT]: "VII - The Chariot?",
71
+ [Card.REVERSE_JUSTICE]: "VIII - Justice?",
72
+ [Card.REVERSE_HERMIT]: "IX - The Hermit?",
73
+ [Card.REVERSE_WHEEL_OF_FORTUNE]: "X - Wheel of Fortune?",
74
+ [Card.REVERSE_STRENGTH]: "XI - Strength?",
75
+ [Card.REVERSE_HANGED_MAN]: "XII - The Hanged Man?",
76
+ [Card.REVERSE_DEATH]: "XIII - Death?",
77
+ [Card.REVERSE_TEMPERANCE]: "XIV - Temperance?",
78
+ [Card.REVERSE_DEVIL]: "XV - The Devil?",
79
+ [Card.REVERSE_TOWER]: "XVI - The Tower?",
80
+ [Card.REVERSE_STARS]: "XVII - The Stars?",
81
+ [Card.REVERSE_MOON]: "XVIII - The Moon?",
82
+ [Card.REVERSE_SUN]: "XIX - The Sun?",
83
+ [Card.REVERSE_JUDGEMENT]: "XX - Judgement?",
84
+ [Card.REVERSE_WORLD]: "XXI - The World?",
85
+ [Card.CRACKED_KEY]: "Cracked Key",
86
+ [Card.QUEEN_OF_HEARTS]: "Queen of Hearts",
87
+ [Card.WILD]: "Wild Card",
88
+ [Card.SOUL_ISAAC]: "Soul of Isaac",
89
+ [Card.SOUL_MAGDALENE]: "Soul of Magdalene",
90
+ [Card.SOUL_CAIN]: "Soul of Cain",
91
+ [Card.SOUL_JUDAS]: "Soul of Judas",
92
+ [Card.SOUL_BLUE_BABY]: "Soul of ???",
93
+ [Card.SOUL_EVE]: "Soul of Eve",
94
+ [Card.SOUL_SAMSON]: "Soul of Samson",
95
+ [Card.SOUL_AZAZEL]: "Soul of Azazel",
96
+ [Card.SOUL_LAZARUS]: "Soul of Lazarus",
97
+ [Card.SOUL_EDEN]: "Soul of Eden",
98
+ [Card.SOUL_LOST]: "Soul of the Lost",
99
+ [Card.SOUL_LILITH]: "Soul of Lilith",
100
+ [Card.SOUL_KEEPER]: "Soul of the Keeper",
101
+ [Card.SOUL_APOLLYON]: "Soul of Apollyon",
102
+ [Card.SOUL_FORGOTTEN]: "Soul of the Forgotten",
103
+ [Card.SOUL_BETHANY]: "Soul of Bethany",
104
+ [Card.SOUL_JACOB]: "Soul of Jacob and Esau",
105
+ } as const;