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,368 @@
1
+ /* eslint-disable sort-exports/sort-exports */
2
+
3
+ import { printEnabled } from "../../functions/utils";
4
+ import v, { debugDisplayTextCallbacks } from "./v";
5
+
6
+ // -------------
7
+ // Set Functions
8
+ // -------------
9
+
10
+ /**
11
+ * After using the "playerDisplay" console command, text will be drawn on each player for debugging
12
+ * purposes. Use this function to specify a callback function that will returns the string that
13
+ * should be drawn.
14
+ */
15
+ export function setPlayerDisplay(
16
+ textCallback: (player: EntityPlayer) => string,
17
+ ): void {
18
+ debugDisplayTextCallbacks.player = textCallback;
19
+ }
20
+
21
+ /**
22
+ * After using the "tearDisplay" console command, text will be drawn on each tear for debugging
23
+ * purposes. Use this function to specify a callback function that will returns the string that
24
+ * should be drawn.
25
+ */
26
+ export function setTearDisplay(
27
+ textCallback: (tear: EntityTear) => string,
28
+ ): void {
29
+ debugDisplayTextCallbacks.tear = textCallback;
30
+ }
31
+
32
+ /**
33
+ * After using the "familiarDisplay" console command, text will be drawn on each familiar for
34
+ * debugging purposes. Use this function to specify a callback function that will returns the string
35
+ * that should be drawn.
36
+ */
37
+ export function setFamiliarDisplay(
38
+ textCallback: (familiar: EntityFamiliar) => string,
39
+ ): void {
40
+ debugDisplayTextCallbacks.familiar = textCallback;
41
+ }
42
+
43
+ /**
44
+ * After using the "bombDisplay" console command, text will be drawn on each bomb for debugging
45
+ * purposes. Use this function to specify a callback function that will returns the string that
46
+ * should be drawn.
47
+ */
48
+ export function setBombDisplay(
49
+ textCallback: (bomb: EntityBomb) => string,
50
+ ): void {
51
+ debugDisplayTextCallbacks.bomb = textCallback;
52
+ }
53
+
54
+ /**
55
+ * After using the "pickupDisplay" console command, text will be drawn on each pickup for debugging
56
+ * purposes. Use this function to specify a callback function that will returns the string that
57
+ * should be drawn.
58
+ */
59
+ export function setPickupDisplay(
60
+ textCallback: (pickup: EntityPickup) => string,
61
+ ): void {
62
+ debugDisplayTextCallbacks.pickup = textCallback;
63
+ }
64
+
65
+ /**
66
+ * After using the "slotDisplay" console command, text will be drawn on each slot for debugging
67
+ * purposes. Use this function to specify a callback function that will returns the string that
68
+ * should be drawn.
69
+ */
70
+ export function setSlotDisplay(textCallback: (slot: Entity) => string): void {
71
+ debugDisplayTextCallbacks.slot = textCallback;
72
+ }
73
+
74
+ /**
75
+ * After using the "laserDisplay" console command, text will be drawn on each laser for debugging
76
+ * purposes. Use this function to specify a callback function that will returns the string that
77
+ * should be drawn.
78
+ */
79
+ export function setLaserDisplay(
80
+ textCallback: (laser: EntityLaser) => string,
81
+ ): void {
82
+ debugDisplayTextCallbacks.laser = textCallback;
83
+ }
84
+
85
+ /**
86
+ * After using the "knifeDisplay" console command, text will be drawn on each knife for debugging
87
+ * purposes. Use this function to specify a callback function that will returns the string that
88
+ * should be drawn.
89
+ */
90
+ export function setKnifeDisplay(
91
+ textCallback: (knife: EntityKnife) => string,
92
+ ): void {
93
+ debugDisplayTextCallbacks.knife = textCallback;
94
+ }
95
+
96
+ /**
97
+ * After using the "projectileDisplay" console command, text will be drawn on each projectile for
98
+ * debugging purposes. Use this function to specify a callback function that will returns the string
99
+ * that should be drawn.
100
+ */
101
+ export function setProjectileDisplay(
102
+ textCallback: (projectile: EntityProjectile) => string,
103
+ ): void {
104
+ debugDisplayTextCallbacks.projectile = textCallback;
105
+ }
106
+
107
+ /**
108
+ * After using the "effectDisplay" console command, text will be drawn on each effect for debugging
109
+ * purposes. Use this function to specify a callback function that will returns the string that
110
+ * should be drawn.
111
+ */
112
+ export function setEffectDisplay(
113
+ textCallback: (effect: EntityEffect) => string,
114
+ ): void {
115
+ debugDisplayTextCallbacks.effect = textCallback;
116
+ }
117
+
118
+ /**
119
+ * After using the "npcDisplay" console command, text will be drawn on each NPC for debugging
120
+ * purposes. Use this function to specify a callback function that will returns the string that
121
+ * should be drawn.
122
+ */
123
+ export function setNPCDisplay(textCallback: (npc: EntityNPC) => string): void {
124
+ debugDisplayTextCallbacks.npc = textCallback;
125
+ }
126
+
127
+ /**
128
+ * After using the "rockDisplay" console command, text will be drawn on each rock for debugging
129
+ * purposes. Use this function to specify a callback function that will returns the string that
130
+ * should be drawn.
131
+ */
132
+ export function setRockDisplay(
133
+ textCallback: (rock: GridEntityRock) => string,
134
+ ): void {
135
+ debugDisplayTextCallbacks.rock = textCallback;
136
+ }
137
+
138
+ /**
139
+ * After using the "pitDisplay" console command, text will be drawn on each pit for debugging
140
+ * purposes. Use this function to specify a callback function that will returns the string that
141
+ * should be drawn.
142
+ */
143
+ export function setPitDisplay(
144
+ textCallback: (pit: GridEntityPit) => string,
145
+ ): void {
146
+ debugDisplayTextCallbacks.pit = textCallback;
147
+ }
148
+
149
+ /**
150
+ * After using the "spikesDisplay" console command, text will be drawn on each spikes for debugging
151
+ * purposes. Use this function to specify a callback function that will returns the string that
152
+ * should be drawn.
153
+ */
154
+ export function setSpikesDisplay(
155
+ textCallback: (spikes: GridEntitySpikes) => string,
156
+ ): void {
157
+ debugDisplayTextCallbacks.spikes = textCallback;
158
+ }
159
+
160
+ /**
161
+ * After using the "tntDisplay" console command, text will be drawn on each TNT for debugging
162
+ * purposes. Use this function to specify a callback function that will returns the string that
163
+ * should be drawn.
164
+ */
165
+ export function setTNTDisplay(
166
+ textCallback: (tnt: GridEntityTNT) => string,
167
+ ): void {
168
+ debugDisplayTextCallbacks.tnt = textCallback;
169
+ }
170
+
171
+ /**
172
+ * After using the "poopDisplay" console command, text will be drawn on each poop for debugging
173
+ * purposes. Use this function to specify a callback function that will returns the string that
174
+ * should be drawn.
175
+ */
176
+ export function setPoopDisplay(
177
+ textCallback: (poop: GridEntityPoop) => string,
178
+ ): void {
179
+ debugDisplayTextCallbacks.poop = textCallback;
180
+ }
181
+
182
+ /**
183
+ * After using the "poopDisplay" console command, text will be drawn on each poop for debugging
184
+ * purposes. Use this function to specify a callback function that will returns the string that
185
+ * should be drawn.
186
+ */
187
+ export function setDoorDisplay(
188
+ textCallback: (door: GridEntityDoor) => string,
189
+ ): void {
190
+ debugDisplayTextCallbacks.door = textCallback;
191
+ }
192
+
193
+ /**
194
+ * After using the "pressurePlateDisplay" console command, text will be drawn on each pressure plate
195
+ * for debugging purposes. Use this function to specify a callback function that will returns the
196
+ * string that should be drawn.
197
+ */
198
+ export function setPressurePlateDisplay(
199
+ textCallback: (pressurePlate: GridEntityPressurePlate) => string,
200
+ ): void {
201
+ debugDisplayTextCallbacks.pressurePlate = textCallback;
202
+ }
203
+
204
+ // ----------------
205
+ // Toggle Functions
206
+ // ----------------
207
+
208
+ /**
209
+ * Toggles the debug display for players. This is the function that runs when you use the
210
+ * "playerDisplay" custom console command.
211
+ */
212
+ export function togglePlayerDisplay(): void {
213
+ v.run.player = !v.run.player;
214
+ printEnabled(v.run.player, "player display");
215
+ }
216
+
217
+ /**
218
+ * Toggles the debug display for tears. This is the function that runs when you use the
219
+ * "tearDisplay" custom console command.
220
+ */
221
+ export function toggleTearDisplay(): void {
222
+ v.run.tear = !v.run.tear;
223
+ printEnabled(v.run.tear, "tear display");
224
+ }
225
+
226
+ /**
227
+ * Toggles the debug display for familiars. This is the function that runs when you use the
228
+ * "familiarDisplay" custom console command.
229
+ */
230
+ export function toggleFamiliarDisplay(): void {
231
+ v.run.familiar = !v.run.familiar;
232
+ printEnabled(v.run.familiar, "familiar display");
233
+ }
234
+
235
+ /**
236
+ * Toggles the debug display for bombs. This is the function that runs when you use the
237
+ * "bombDisplay" custom console command.
238
+ */
239
+ export function toggleBombDisplay(): void {
240
+ v.run.bomb = !v.run.bomb;
241
+ printEnabled(v.run.bomb, "bomb display");
242
+ }
243
+
244
+ /**
245
+ * Toggles the debug display for pickups. This is the function that runs when you use the
246
+ * "pickupDisplay" custom console command.
247
+ */
248
+ export function togglePickupDisplay(): void {
249
+ v.run.pickup = !v.run.pickup;
250
+ printEnabled(v.run.pickup, "pickup display");
251
+ }
252
+
253
+ /**
254
+ * Toggles the debug display for slots. This is the function that runs when you use the
255
+ * "slotDisplay" custom console command.
256
+ */
257
+ export function toggleSlotDisplay(): void {
258
+ v.run.slot = !v.run.slot;
259
+ printEnabled(v.run.slot, "slot display");
260
+ }
261
+
262
+ /**
263
+ * Toggles the debug display for lasers. This is the function that runs when you use the
264
+ * "laserDisplay" custom console command.
265
+ */
266
+ export function toggleLaserDisplay(): void {
267
+ v.run.laser = !v.run.laser;
268
+ printEnabled(v.run.laser, "laser display");
269
+ }
270
+
271
+ /**
272
+ * Toggles the debug display for knives. This is the function that runs when you use the
273
+ * "knifeDisplay" custom console command.
274
+ */
275
+ export function toggleKnifeDisplay(): void {
276
+ v.run.knife = !v.run.knife;
277
+ printEnabled(v.run.knife, "knife display");
278
+ }
279
+
280
+ /**
281
+ * Toggles the debug display for projectiles. This is the function that runs when you use the
282
+ * "projectileDisplay" custom console command.
283
+ */
284
+ export function toggleProjectileDisplay(): void {
285
+ v.run.projectile = !v.run.projectile;
286
+ printEnabled(v.run.projectile, "projectile display");
287
+ }
288
+
289
+ /**
290
+ * Toggles the debug display for effects. This is the function that runs when you use the
291
+ * "effectDisplay" custom console command.
292
+ */
293
+ export function toggleEffectDisplay(): void {
294
+ v.run.effect = !v.run.effect;
295
+ printEnabled(v.run.effect, "effect display");
296
+ }
297
+
298
+ /**
299
+ * Toggles the debug display for NPCs. This is the function that runs when you use the "npcDisplay"
300
+ * custom console command.
301
+ */
302
+ export function toggleNPCDisplay(): void {
303
+ v.run.npc = !v.run.npc;
304
+ printEnabled(v.run.npc, "NPC display");
305
+ }
306
+
307
+ /**
308
+ * Toggles the debug display for rocks. This is the function that runs when you use the
309
+ * "rockDisplay" custom console command.
310
+ */
311
+ export function toggleRockDisplay(): void {
312
+ v.run.rock = !v.run.rock;
313
+ printEnabled(v.run.rock, "rock display");
314
+ }
315
+
316
+ /**
317
+ * Toggles the debug display for pits. This is the function that runs when you use the "pitDisplay"
318
+ * custom console command.
319
+ */
320
+ export function togglePitDisplay(): void {
321
+ v.run.pit = !v.run.pit;
322
+ printEnabled(v.run.pit, "pit display");
323
+ }
324
+
325
+ /**
326
+ * Toggles the debug display for spikes. This is the function that runs when you use the
327
+ * "spikesDisplay" custom console command.
328
+ */
329
+ export function toggleSpikesDisplay(): void {
330
+ v.run.spikes = !v.run.spikes;
331
+ printEnabled(v.run.spikes, "spikes display");
332
+ }
333
+
334
+ /**
335
+ * Toggles the debug display for TNT. This is the function that runs when you use the "tntDisplay"
336
+ * custom console command.
337
+ */
338
+ export function toggleTNTDisplay(): void {
339
+ v.run.tnt = !v.run.tnt;
340
+ printEnabled(v.run.tnt, "TNT display");
341
+ }
342
+
343
+ /**
344
+ * Toggles the debug display for poop. This is the function that runs when you use the "poopDisplay"
345
+ * custom console command.
346
+ */
347
+ export function togglePoopDisplay(): void {
348
+ v.run.poop = !v.run.poop;
349
+ printEnabled(v.run.poop, "poop display");
350
+ }
351
+
352
+ /**
353
+ * Toggles the debug display for doors. This is the function that runs when you use the
354
+ * "doorDisplay" custom console command.
355
+ */
356
+ export function toggleDoorDisplay(): void {
357
+ v.run.door = !v.run.door;
358
+ printEnabled(v.run.door, "door display");
359
+ }
360
+
361
+ /**
362
+ * Toggles the debug display for pressure plates. This is the function that runs when you use the
363
+ * "pressurePlateDisplay" custom console command.
364
+ */
365
+ export function togglePressurePlateDisplay(): void {
366
+ v.run.pressurePlate = !v.run.pressurePlate;
367
+ printEnabled(v.run.pressurePlate, "pressure plate display");
368
+ }
@@ -0,0 +1,65 @@
1
+ import { getEntityID } from "../../functions/entity";
2
+ import { getGridEntityID } from "../../functions/gridEntity";
3
+
4
+ const v = {
5
+ run: {
6
+ player: false, // 1
7
+ tear: false, // 2
8
+ familiar: false, // 3
9
+ bomb: false, // 4
10
+ pickup: false, // 5
11
+ slot: false, // 6
12
+ laser: false, // 7
13
+ knife: false, // 8
14
+ projectile: false, // 9
15
+ effect: false, // 1000
16
+ npc: false,
17
+
18
+ rock: false, // 2, 3, 4, 5, 6, 22, 24, 25, 26, 27
19
+ pit: false, // 7
20
+ spikes: false, // 8, 9
21
+ tnt: false, // 12
22
+ poop: false, // 14
23
+ door: false, // 16
24
+ pressurePlate: false, // 20
25
+ },
26
+ };
27
+ export default v;
28
+
29
+ export const debugDisplayTextCallbacks = {
30
+ player: defaultEntityDisplayCallback as (player: EntityPlayer) => string, // 1
31
+ tear: defaultEntityDisplayCallback as (tear: EntityTear) => string, // 2
32
+ familiar: defaultEntityDisplayCallback as (
33
+ familiar: EntityFamiliar,
34
+ ) => string, // 3
35
+ bomb: defaultEntityDisplayCallback as (bomb: EntityBomb) => string, // 4
36
+ pickup: defaultEntityDisplayCallback as (pickup: EntityPickup) => string, // 5
37
+ slot: defaultEntityDisplayCallback as (familiar: Entity) => string, // 6
38
+ laser: defaultEntityDisplayCallback as (laser: EntityLaser) => string, // 7
39
+ knife: defaultEntityDisplayCallback as (knife: EntityKnife) => string, // 8
40
+ projectile: defaultEntityDisplayCallback as (
41
+ projectile: EntityProjectile,
42
+ ) => string, // 9
43
+ effect: defaultEntityDisplayCallback as (effect: EntityEffect) => string, // 1000
44
+ npc: defaultEntityDisplayCallback as (effect: EntityNPC) => string,
45
+
46
+ rock: defaultGridEntityDisplayCallback as (rock: GridEntityRock) => string, // 2, 3, 4, 5, 6, 22, 24, 25, 26, 27
47
+ pit: defaultGridEntityDisplayCallback as (pit: GridEntityPit) => string, // 7
48
+ spikes: defaultGridEntityDisplayCallback as (
49
+ spikes: GridEntitySpikes,
50
+ ) => string, // 8, 9
51
+ tnt: defaultGridEntityDisplayCallback as (tnt: GridEntityTNT) => string, // 12
52
+ poop: defaultGridEntityDisplayCallback as (poop: GridEntityPoop) => string, // 14
53
+ door: defaultGridEntityDisplayCallback as (door: GridEntityDoor) => string, // 16
54
+ pressurePlate: defaultGridEntityDisplayCallback as (
55
+ pressurePlate: GridEntityPressurePlate,
56
+ ) => string, // 20
57
+ };
58
+
59
+ function defaultEntityDisplayCallback(entity: Entity) {
60
+ return getEntityID(entity);
61
+ }
62
+
63
+ function defaultGridEntityDisplayCallback(gridEntity: GridEntity) {
64
+ return getGridEntityID(gridEntity);
65
+ }