isaacscript-common 87.9.7 → 87.10.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 (567) hide show
  1. package/dist/cachedEnumValues.js +29 -32
  2. package/dist/callbackClasses.js +142 -289
  3. package/dist/callbacks.js +147 -183
  4. package/dist/classes/DefaultMap.js +4 -8
  5. package/dist/classes/ModFeature.js +21 -25
  6. package/dist/classes/ModUpgraded.js +43 -47
  7. package/dist/classes/callbacks/EntityTakeDmgFilter.js +6 -10
  8. package/dist/classes/callbacks/EntityTakeDmgPlayer.js +7 -11
  9. package/dist/classes/callbacks/InputActionFilter.js +4 -8
  10. package/dist/classes/callbacks/InputActionPlayer.js +4 -8
  11. package/dist/classes/callbacks/PostAmbushFinished.js +10 -14
  12. package/dist/classes/callbacks/PostAmbushStarted.js +10 -14
  13. package/dist/classes/callbacks/PostBombExploded.js +8 -12
  14. package/dist/classes/callbacks/PostBombInitFilter.js +6 -10
  15. package/dist/classes/callbacks/PostBombInitLate.js +6 -10
  16. package/dist/classes/callbacks/PostBombRenderFilter.js +6 -10
  17. package/dist/classes/callbacks/PostBombUpdateFilter.js +6 -10
  18. package/dist/classes/callbacks/PostBoneSwing.js +7 -11
  19. package/dist/classes/callbacks/PostCollectibleEmpty.js +6 -10
  20. package/dist/classes/callbacks/PostCursedTeleport.js +30 -34
  21. package/dist/classes/callbacks/PostCustomRevive.js +4 -8
  22. package/dist/classes/callbacks/PostDiceRoomActivated.js +9 -13
  23. package/dist/classes/callbacks/PostDoorRender.js +8 -12
  24. package/dist/classes/callbacks/PostDoorUpdate.js +8 -12
  25. package/dist/classes/callbacks/PostEffectInitFilter.js +6 -10
  26. package/dist/classes/callbacks/PostEffectInitLate.js +6 -10
  27. package/dist/classes/callbacks/PostEffectRenderFilter.js +6 -10
  28. package/dist/classes/callbacks/PostEffectStateChanged.js +8 -12
  29. package/dist/classes/callbacks/PostEffectUpdateFilter.js +6 -10
  30. package/dist/classes/callbacks/PostEntityKillFilter.js +6 -10
  31. package/dist/classes/callbacks/PostEntityRemoveFilter.js +6 -10
  32. package/dist/classes/callbacks/PostEsauJr.js +4 -8
  33. package/dist/classes/callbacks/PostFamiliarInitFilter.js +6 -10
  34. package/dist/classes/callbacks/PostFamiliarInitLate.js +6 -10
  35. package/dist/classes/callbacks/PostFamiliarRenderFilter.js +6 -10
  36. package/dist/classes/callbacks/PostFamiliarStateChanged.js +8 -12
  37. package/dist/classes/callbacks/PostFamiliarUpdateFilter.js +6 -10
  38. package/dist/classes/callbacks/PostFirstEsauJr.js +4 -8
  39. package/dist/classes/callbacks/PostFirstFlip.js +4 -8
  40. package/dist/classes/callbacks/PostFlip.js +4 -8
  41. package/dist/classes/callbacks/PostGameEndFilter.js +6 -10
  42. package/dist/classes/callbacks/PostGameStartedReordered.js +6 -10
  43. package/dist/classes/callbacks/PostGameStartedReorderedLast.js +6 -10
  44. package/dist/classes/callbacks/PostGreedModeWave.js +7 -11
  45. package/dist/classes/callbacks/PostGridEntityBroken.js +6 -10
  46. package/dist/classes/callbacks/PostGridEntityCollision.js +4 -8
  47. package/dist/classes/callbacks/PostGridEntityCustomBroken.js +6 -10
  48. package/dist/classes/callbacks/PostGridEntityCustomCollision.js +4 -8
  49. package/dist/classes/callbacks/PostGridEntityCustomInit.js +6 -10
  50. package/dist/classes/callbacks/PostGridEntityCustomRemove.js +4 -8
  51. package/dist/classes/callbacks/PostGridEntityCustomRender.js +6 -10
  52. package/dist/classes/callbacks/PostGridEntityCustomStateChanged.js +6 -10
  53. package/dist/classes/callbacks/PostGridEntityCustomUpdate.js +6 -10
  54. package/dist/classes/callbacks/PostGridEntityInit.js +6 -10
  55. package/dist/classes/callbacks/PostGridEntityRemove.js +4 -8
  56. package/dist/classes/callbacks/PostGridEntityRender.js +6 -10
  57. package/dist/classes/callbacks/PostGridEntityStateChanged.js +6 -10
  58. package/dist/classes/callbacks/PostGridEntityUpdate.js +6 -10
  59. package/dist/classes/callbacks/PostHolyMantleRemoved.js +15 -19
  60. package/dist/classes/callbacks/PostItemDischarge.js +23 -27
  61. package/dist/classes/callbacks/PostItemPickup.js +6 -10
  62. package/dist/classes/callbacks/PostKeyboardChanged.js +9 -13
  63. package/dist/classes/callbacks/PostKnifeInitFilter.js +6 -10
  64. package/dist/classes/callbacks/PostKnifeInitLate.js +6 -10
  65. package/dist/classes/callbacks/PostKnifeRenderFilter.js +6 -10
  66. package/dist/classes/callbacks/PostKnifeUpdateFilter.js +6 -10
  67. package/dist/classes/callbacks/PostLaserInitFilter.js +6 -10
  68. package/dist/classes/callbacks/PostLaserInitLate.js +6 -10
  69. package/dist/classes/callbacks/PostLaserRenderFilter.js +6 -10
  70. package/dist/classes/callbacks/PostLaserUpdateFilter.js +6 -10
  71. package/dist/classes/callbacks/PostNPCDeathFilter.js +6 -10
  72. package/dist/classes/callbacks/PostNPCInitFilter.js +6 -10
  73. package/dist/classes/callbacks/PostNPCInitLate.js +6 -10
  74. package/dist/classes/callbacks/PostNPCRenderFilter.js +6 -10
  75. package/dist/classes/callbacks/PostNPCStateChanged.js +8 -12
  76. package/dist/classes/callbacks/PostNPCUpdateFilter.js +6 -10
  77. package/dist/classes/callbacks/PostNewLevelReordered.js +6 -10
  78. package/dist/classes/callbacks/PostNewRoomEarly.js +17 -21
  79. package/dist/classes/callbacks/PostNewRoomReordered.js +6 -10
  80. package/dist/classes/callbacks/PostPEffectUpdateReordered.js +6 -10
  81. package/dist/classes/callbacks/PostPickupChanged.js +6 -10
  82. package/dist/classes/callbacks/PostPickupCollect.js +8 -12
  83. package/dist/classes/callbacks/PostPickupInitFilter.js +6 -10
  84. package/dist/classes/callbacks/PostPickupInitFirst.js +10 -14
  85. package/dist/classes/callbacks/PostPickupInitLate.js +6 -10
  86. package/dist/classes/callbacks/PostPickupRenderFilter.js +6 -10
  87. package/dist/classes/callbacks/PostPickupSelectionFilter.js +4 -8
  88. package/dist/classes/callbacks/PostPickupStateChanged.js +8 -12
  89. package/dist/classes/callbacks/PostPickupUpdateFilter.js +6 -10
  90. package/dist/classes/callbacks/PostPitRender.js +8 -12
  91. package/dist/classes/callbacks/PostPitUpdate.js +8 -12
  92. package/dist/classes/callbacks/PostPlayerChangeHealth.js +14 -18
  93. package/dist/classes/callbacks/PostPlayerChangeStat.js +26 -30
  94. package/dist/classes/callbacks/PostPlayerChangeType.js +11 -15
  95. package/dist/classes/callbacks/PostPlayerCollectibleAdded.js +6 -10
  96. package/dist/classes/callbacks/PostPlayerCollectibleRemoved.js +6 -10
  97. package/dist/classes/callbacks/PostPlayerFatalDamage.js +24 -28
  98. package/dist/classes/callbacks/PostPlayerInitFirst.js +12 -16
  99. package/dist/classes/callbacks/PostPlayerInitLate.js +9 -13
  100. package/dist/classes/callbacks/PostPlayerRenderReordered.js +6 -10
  101. package/dist/classes/callbacks/PostPlayerUpdateReordered.js +6 -10
  102. package/dist/classes/callbacks/PostPoopRender.js +8 -12
  103. package/dist/classes/callbacks/PostPoopUpdate.js +8 -12
  104. package/dist/classes/callbacks/PostPressurePlateRender.js +8 -12
  105. package/dist/classes/callbacks/PostPressurePlateUpdate.js +8 -12
  106. package/dist/classes/callbacks/PostProjectileInitFilter.js +6 -10
  107. package/dist/classes/callbacks/PostProjectileInitLate.js +6 -10
  108. package/dist/classes/callbacks/PostProjectileKill.js +8 -12
  109. package/dist/classes/callbacks/PostProjectileRenderFilter.js +6 -10
  110. package/dist/classes/callbacks/PostProjectileUpdateFilter.js +6 -10
  111. package/dist/classes/callbacks/PostPurchase.js +21 -25
  112. package/dist/classes/callbacks/PostRockRender.js +8 -12
  113. package/dist/classes/callbacks/PostRockUpdate.js +8 -12
  114. package/dist/classes/callbacks/PostRoomClearChanged.js +9 -13
  115. package/dist/classes/callbacks/PostSacrifice.js +12 -16
  116. package/dist/classes/callbacks/PostSlotAnimationChanged.js +6 -10
  117. package/dist/classes/callbacks/PostSlotCollision.js +8 -12
  118. package/dist/classes/callbacks/PostSlotDestroyed.js +6 -10
  119. package/dist/classes/callbacks/PostSlotInit.js +6 -10
  120. package/dist/classes/callbacks/PostSlotRender.js +6 -10
  121. package/dist/classes/callbacks/PostSlotUpdate.js +6 -10
  122. package/dist/classes/callbacks/PostSpikesRender.js +8 -12
  123. package/dist/classes/callbacks/PostSpikesUpdate.js +8 -12
  124. package/dist/classes/callbacks/PostTNTRender.js +8 -12
  125. package/dist/classes/callbacks/PostTNTUpdate.js +8 -12
  126. package/dist/classes/callbacks/PostTearInitFilter.js +6 -10
  127. package/dist/classes/callbacks/PostTearInitLate.js +6 -10
  128. package/dist/classes/callbacks/PostTearInitVeryLate.js +6 -10
  129. package/dist/classes/callbacks/PostTearKill.js +8 -12
  130. package/dist/classes/callbacks/PostTearRenderFilter.js +6 -10
  131. package/dist/classes/callbacks/PostTearUpdateFilter.js +6 -10
  132. package/dist/classes/callbacks/PostTransformation.js +10 -14
  133. package/dist/classes/callbacks/PostTrinketBreak.js +16 -20
  134. package/dist/classes/callbacks/PostUsePillFilter.js +18 -22
  135. package/dist/classes/callbacks/PreBerserkDeath.js +14 -18
  136. package/dist/classes/callbacks/PreBombCollisionFilter.js +6 -10
  137. package/dist/classes/callbacks/PreCustomRevive.js +6 -10
  138. package/dist/classes/callbacks/PreEntitySpawnFilter.js +4 -8
  139. package/dist/classes/callbacks/PreFamiliarCollisionFilter.js +6 -10
  140. package/dist/classes/callbacks/PreGetPedestal.js +8 -12
  141. package/dist/classes/callbacks/PreItemPickup.js +6 -10
  142. package/dist/classes/callbacks/PreKnifeCollisionFilter.js +6 -10
  143. package/dist/classes/callbacks/PreNPCCollisionFilter.js +6 -10
  144. package/dist/classes/callbacks/PreNPCUpdateFilter.js +6 -10
  145. package/dist/classes/callbacks/PreNewLevel.js +10 -14
  146. package/dist/classes/callbacks/PreProjectileCollisionFilter.js +6 -10
  147. package/dist/classes/callbacks/PreRoomEntitySpawnFilter.js +4 -8
  148. package/dist/classes/callbacks/PreTearCollisionFilter.js +6 -10
  149. package/dist/classes/features/callbackLogic/CustomGridEntities.js +46 -50
  150. package/dist/classes/features/callbackLogic/CustomRevive.js +28 -32
  151. package/dist/classes/features/callbackLogic/EsauJrDetection.js +11 -15
  152. package/dist/classes/features/callbackLogic/FlipDetection.js +11 -15
  153. package/dist/classes/features/callbackLogic/GameReorderedCallbacks.js +26 -30
  154. package/dist/classes/features/callbackLogic/GridEntityCollisionDetection.js +10 -14
  155. package/dist/classes/features/callbackLogic/GridEntityRenderDetection.js +6 -10
  156. package/dist/classes/features/callbackLogic/GridEntityUpdateDetection.js +12 -16
  157. package/dist/classes/features/callbackLogic/ItemPickupDetection.js +17 -21
  158. package/dist/classes/features/callbackLogic/PickupChangeDetection.js +6 -10
  159. package/dist/classes/features/callbackLogic/PlayerCollectibleDetection.js +39 -43
  160. package/dist/classes/features/callbackLogic/PlayerReorderedCallbacks.js +18 -22
  161. package/dist/classes/features/callbackLogic/SlotDestroyedDetection.js +17 -21
  162. package/dist/classes/features/callbackLogic/SlotRenderDetection.js +8 -12
  163. package/dist/classes/features/callbackLogic/SlotUpdateDetection.js +9 -13
  164. package/dist/classes/features/other/CharacterHealthConversion.js +13 -17
  165. package/dist/classes/features/other/CharacterStats.js +9 -13
  166. package/dist/classes/features/other/CollectibleItemPoolType.js +17 -21
  167. package/dist/classes/features/other/CustomHotkeys.js +15 -19
  168. package/dist/classes/features/other/CustomItemPools.js +20 -24
  169. package/dist/classes/features/other/CustomPickups.js +15 -19
  170. package/dist/classes/features/other/CustomStages.js +116 -153
  171. package/dist/classes/features/other/CustomTrapdoors.js +119 -123
  172. package/dist/classes/features/other/DebugDisplay.js +77 -81
  173. package/dist/classes/features/other/DeployJSONRoom.js +65 -69
  174. package/dist/classes/features/other/DisableAllSound.js +14 -18
  175. package/dist/classes/features/other/DisableInputs.js +24 -28
  176. package/dist/classes/features/other/EdenStartingStatsHealth.js +36 -40
  177. package/dist/classes/features/other/ExtraConsoleCommands.js +65 -102
  178. package/dist/classes/features/other/FadeInRemover.js +9 -13
  179. package/dist/classes/features/other/FastReset.js +18 -22
  180. package/dist/classes/features/other/FlyingDetection.js +10 -14
  181. package/dist/classes/features/other/ForgottenSwitch.js +8 -12
  182. package/dist/classes/features/other/ItemPoolDetection.js +35 -39
  183. package/dist/classes/features/other/ModdedElementDetection.js +43 -47
  184. package/dist/classes/features/other/ModdedElementSets.js +135 -139
  185. package/dist/classes/features/other/NoSirenSteal.js +7 -11
  186. package/dist/classes/features/other/Pause.js +48 -52
  187. package/dist/classes/features/other/PersistentEntities.js +16 -20
  188. package/dist/classes/features/other/PickupIndexCreation.js +31 -35
  189. package/dist/classes/features/other/PlayerCollectibleTracking.js +18 -22
  190. package/dist/classes/features/other/PonyDetection.js +22 -26
  191. package/dist/classes/features/other/PressInput.js +10 -14
  192. package/dist/classes/features/other/PreventChildEntities.js +6 -10
  193. package/dist/classes/features/other/PreventGridEntityRespawn.js +34 -38
  194. package/dist/classes/features/other/RerunDetection.js +11 -15
  195. package/dist/classes/features/other/RoomClearFrame.js +11 -15
  196. package/dist/classes/features/other/RoomHistory.js +30 -34
  197. package/dist/classes/features/other/RunInNFrames.js +24 -28
  198. package/dist/classes/features/other/RunNextRoom.js +8 -12
  199. package/dist/classes/features/other/RunNextRun.js +8 -12
  200. package/dist/classes/features/other/SaveDataManager.js +61 -65
  201. package/dist/classes/features/other/SpawnRockAltRewards.js +115 -119
  202. package/dist/classes/features/other/StageHistory.js +76 -80
  203. package/dist/classes/features/other/StartAmbush.js +12 -16
  204. package/dist/classes/features/other/TaintedLazarusPlayers.js +10 -14
  205. package/dist/classes/features/other/UnlockAchievementsDetection.js +10 -14
  206. package/dist/classes/features/other/customStages/backdrop.js +68 -71
  207. package/dist/classes/features/other/customStages/constants.js +7 -10
  208. package/dist/classes/features/other/customStages/gridEntities.js +23 -30
  209. package/dist/classes/features/other/customStages/shadows.js +27 -30
  210. package/dist/classes/features/other/customStages/streakText.js +55 -60
  211. package/dist/classes/features/other/customStages/utils.js +13 -17
  212. package/dist/classes/features/other/customStages/v.js +4 -7
  213. package/dist/classes/features/other/customStages/versusScreen.js +46 -50
  214. package/dist/classes/features/other/debugDisplay/DebugDisplayBomb.js +8 -12
  215. package/dist/classes/features/other/debugDisplay/DebugDisplayDoor.js +8 -12
  216. package/dist/classes/features/other/debugDisplay/DebugDisplayEffect.js +8 -12
  217. package/dist/classes/features/other/debugDisplay/DebugDisplayFamiliar.js +8 -12
  218. package/dist/classes/features/other/debugDisplay/DebugDisplayKnife.js +8 -12
  219. package/dist/classes/features/other/debugDisplay/DebugDisplayLaser.js +8 -12
  220. package/dist/classes/features/other/debugDisplay/DebugDisplayNPC.js +8 -12
  221. package/dist/classes/features/other/debugDisplay/DebugDisplayPickup.js +8 -12
  222. package/dist/classes/features/other/debugDisplay/DebugDisplayPit.js +8 -12
  223. package/dist/classes/features/other/debugDisplay/DebugDisplayPlayer.js +8 -12
  224. package/dist/classes/features/other/debugDisplay/DebugDisplayPoop.js +8 -12
  225. package/dist/classes/features/other/debugDisplay/DebugDisplayPressurePlate.js +8 -12
  226. package/dist/classes/features/other/debugDisplay/DebugDisplayProjectile.js +8 -12
  227. package/dist/classes/features/other/debugDisplay/DebugDisplayRock.js +8 -12
  228. package/dist/classes/features/other/debugDisplay/DebugDisplaySlot.js +8 -12
  229. package/dist/classes/features/other/debugDisplay/DebugDisplaySpikes.js +8 -12
  230. package/dist/classes/features/other/debugDisplay/DebugDisplayTNT.js +8 -12
  231. package/dist/classes/features/other/debugDisplay/DebugDisplayTear.js +8 -12
  232. package/dist/classes/features/other/debugDisplay/utils.js +6 -10
  233. package/dist/classes/features/other/extraConsoleCommands/commands.js +411 -557
  234. package/dist/classes/features/other/extraConsoleCommands/subroutines.js +47 -57
  235. package/dist/classes/features/other/extraConsoleCommands/v.js +1 -4
  236. package/dist/classes/features/other/saveDataManager/constants.js +1 -4
  237. package/dist/classes/features/other/saveDataManager/glowingHourGlass.js +17 -21
  238. package/dist/classes/features/other/saveDataManager/loadFromDisk.js +19 -22
  239. package/dist/classes/features/other/saveDataManager/restoreDefaults.js +20 -25
  240. package/dist/classes/features/other/saveDataManager/saveToDisk.js +13 -16
  241. package/dist/classes/private/CustomCallback.js +4 -8
  242. package/dist/classes/private/Feature.js +1 -5
  243. package/dist/core/cachedClasses.js +12 -15
  244. package/dist/core/constants.js +126 -130
  245. package/dist/core/constantsFirstLast.js +22 -25
  246. package/dist/core/constantsVanilla.js +25 -28
  247. package/dist/core/upgradeMod.js +7 -10
  248. package/dist/decorators.js +6 -10
  249. package/dist/enums/AmbushType.js +2 -5
  250. package/dist/enums/CornerType.js +2 -5
  251. package/dist/enums/HealthType.js +2 -5
  252. package/dist/enums/ISCFeature.js +2 -5
  253. package/dist/enums/LadderSubTypeCustom.js +2 -5
  254. package/dist/enums/ModCallbackCustom.js +2 -5
  255. package/dist/enums/MysteriousPaperEffect.js +2 -5
  256. package/dist/enums/PlayerStat.js +2 -5
  257. package/dist/enums/PocketItemType.js +2 -5
  258. package/dist/enums/RockAltType.js +2 -5
  259. package/dist/enums/SaveDataKey.js +2 -5
  260. package/dist/enums/SerializationType.js +2 -5
  261. package/dist/enums/SlotDestructionType.js +2 -5
  262. package/dist/enums/private/GridEntityTypeCustom.js +1 -4
  263. package/dist/enums/private/SerializationBrand.js +2 -5
  264. package/dist/enums/private/StageTravelState.js +2 -5
  265. package/dist/enums/private/TrapdoorAnimation.js +2 -5
  266. package/dist/enums/private/UIStreakAnimation.js +2 -5
  267. package/dist/features.js +138 -141
  268. package/dist/functions/ambush.js +9 -12
  269. package/dist/functions/array.js +45 -76
  270. package/dist/functions/arrayLua.js +7 -16
  271. package/dist/functions/benchmark.js +4 -7
  272. package/dist/functions/bitSet128.js +19 -26
  273. package/dist/functions/bitwise.js +14 -23
  274. package/dist/functions/bombs.js +1 -4
  275. package/dist/functions/bosses.js +68 -85
  276. package/dist/functions/cards.js +44 -62
  277. package/dist/functions/challenges.js +28 -39
  278. package/dist/functions/characters.js +68 -87
  279. package/dist/functions/charge.js +41 -52
  280. package/dist/functions/chargeBar.js +2 -6
  281. package/dist/functions/collectibleTag.js +9 -13
  282. package/dist/functions/collectibles.js +133 -172
  283. package/dist/functions/color.js +29 -38
  284. package/dist/functions/console.js +4 -8
  285. package/dist/functions/curses.js +6 -10
  286. package/dist/functions/debugFunctions.js +7 -14
  287. package/dist/functions/decorators.js +13 -19
  288. package/dist/functions/deepCopy.js +96 -99
  289. package/dist/functions/deepCopyTests.js +56 -59
  290. package/dist/functions/dimensions.js +10 -14
  291. package/dist/functions/direction.js +22 -30
  292. package/dist/functions/doors.js +104 -154
  293. package/dist/functions/easing.js +30 -62
  294. package/dist/functions/effects.js +6 -10
  295. package/dist/functions/emptyRoom.js +30 -34
  296. package/dist/functions/entities.js +88 -115
  297. package/dist/functions/entitiesSpecific.js +83 -125
  298. package/dist/functions/entityTypes.js +3 -6
  299. package/dist/functions/enums.js +27 -41
  300. package/dist/functions/external.js +4 -8
  301. package/dist/functions/familiars.js +17 -25
  302. package/dist/functions/flag.js +10 -19
  303. package/dist/functions/frames.js +31 -51
  304. package/dist/functions/globals.js +26 -66
  305. package/dist/functions/gridEntities.js +231 -269
  306. package/dist/functions/gridEntitiesSpecific.js +86 -126
  307. package/dist/functions/gridIndex.js +8 -11
  308. package/dist/functions/hash.js +1 -4
  309. package/dist/functions/hex.js +7 -11
  310. package/dist/functions/input.js +65 -88
  311. package/dist/functions/isaacAPIClass.js +28 -53
  312. package/dist/functions/itemPool.js +39 -48
  313. package/dist/functions/jsonHelpers.js +5 -42
  314. package/dist/functions/jsonRoom.js +39 -46
  315. package/dist/functions/kColor.js +30 -39
  316. package/dist/functions/language.js +3 -6
  317. package/dist/functions/level.js +20 -26
  318. package/dist/functions/levelGrid.js +81 -108
  319. package/dist/functions/log.js +6 -12
  320. package/dist/functions/logEntities.js +49 -59
  321. package/dist/functions/logMisc.js +183 -214
  322. package/dist/functions/map.js +10 -20
  323. package/dist/functions/math.js +16 -31
  324. package/dist/functions/merge.js +48 -51
  325. package/dist/functions/mergeTests.js +34 -37
  326. package/dist/functions/minimap.js +34 -46
  327. package/dist/functions/modFeatures.js +1 -4
  328. package/dist/functions/newArray.js +5 -8
  329. package/dist/functions/nextStage.js +63 -67
  330. package/dist/functions/npcDataStructures.js +9 -20
  331. package/dist/functions/npcs.js +37 -45
  332. package/dist/functions/pickupVariants.js +26 -39
  333. package/dist/functions/pickups.js +43 -59
  334. package/dist/functions/pickupsSpecific.js +76 -118
  335. package/dist/functions/pills.js +52 -72
  336. package/dist/functions/playerCenter.js +13 -16
  337. package/dist/functions/playerCollectibles.js +59 -79
  338. package/dist/functions/playerDataStructures.js +18 -29
  339. package/dist/functions/playerEffects.js +12 -19
  340. package/dist/functions/playerHealth.js +91 -113
  341. package/dist/functions/playerIndex.js +22 -33
  342. package/dist/functions/playerTrinkets.js +31 -43
  343. package/dist/functions/players.js +87 -126
  344. package/dist/functions/pocketItems.js +33 -43
  345. package/dist/functions/positionVelocity.js +23 -32
  346. package/dist/functions/pressurePlate.js +7 -10
  347. package/dist/functions/projectiles.js +11 -15
  348. package/dist/functions/random.js +8 -13
  349. package/dist/functions/readOnly.js +3 -8
  350. package/dist/functions/render.js +7 -12
  351. package/dist/functions/revive.js +38 -45
  352. package/dist/functions/rng.js +31 -44
  353. package/dist/functions/rockAlt.js +18 -22
  354. package/dist/functions/roomData.js +24 -40
  355. package/dist/functions/roomGrid.js +17 -25
  356. package/dist/functions/roomShape.js +39 -55
  357. package/dist/functions/roomShapeWalls.js +67 -71
  358. package/dist/functions/roomTransition.js +13 -17
  359. package/dist/functions/rooms.js +181 -244
  360. package/dist/functions/run.js +29 -39
  361. package/dist/functions/seeds.js +6 -10
  362. package/dist/functions/serialization.js +27 -34
  363. package/dist/functions/set.js +24 -40
  364. package/dist/functions/slots.js +18 -22
  365. package/dist/functions/sort.js +9 -15
  366. package/dist/functions/sound.js +12 -16
  367. package/dist/functions/spawnCollectible.js +21 -26
  368. package/dist/functions/sprites.js +16 -24
  369. package/dist/functions/stage.js +122 -164
  370. package/dist/functions/stats.js +37 -43
  371. package/dist/functions/storyBosses.js +36 -40
  372. package/dist/functions/string.js +19 -33
  373. package/dist/functions/table.js +21 -31
  374. package/dist/functions/tears.js +6 -14
  375. package/dist/functions/transformations.js +35 -42
  376. package/dist/functions/trinketGive.js +29 -36
  377. package/dist/functions/trinkets.js +45 -60
  378. package/dist/functions/tstlClass.js +11 -20
  379. package/dist/functions/types.js +22 -46
  380. package/dist/functions/ui.js +25 -40
  381. package/dist/functions/utils.js +22 -36
  382. package/dist/functions/vector.js +33 -46
  383. package/dist/functions/versusScreen.js +12 -18
  384. package/dist/functions/weighted.js +8 -12
  385. package/dist/index.js +150 -166
  386. package/dist/index.rollup.d.ts +11 -11
  387. package/dist/indexLua.js +151 -167
  388. package/dist/interfaces/ChargeBarSprites.js +1 -2
  389. package/dist/interfaces/Corner.js +1 -2
  390. package/dist/interfaces/CustomStageTSConfig.js +1 -2
  391. package/dist/interfaces/GridEntityCustomData.js +1 -2
  392. package/dist/interfaces/JSONRoomsFile.js +1 -2
  393. package/dist/interfaces/PlayerHealth.d.ts +11 -11
  394. package/dist/interfaces/PlayerHealth.d.ts.map +1 -1
  395. package/dist/interfaces/PlayerHealth.js +1 -2
  396. package/dist/interfaces/PlayerStats.js +2 -4
  397. package/dist/interfaces/PocketItemDescription.js +1 -2
  398. package/dist/interfaces/RoomDescription.js +1 -2
  399. package/dist/interfaces/SaveData.js +1 -2
  400. package/dist/interfaces/StageHistoryEntry.js +1 -2
  401. package/dist/interfaces/TSTLClassMetatable.js +1 -2
  402. package/dist/interfaces/TrinketSituation.js +1 -2
  403. package/dist/interfaces/private/AddCallbackParametersCustom.js +2 -4
  404. package/dist/interfaces/private/CustomStage.js +1 -2
  405. package/dist/interfaces/private/CustomTrapdoorDescription.js +1 -2
  406. package/dist/interfaces/private/ModUpgradedInterface.js +1 -2
  407. package/dist/isaacscript-common.lua +1 -1
  408. package/dist/maps/PHDPillConversionsMap.js +19 -22
  409. package/dist/maps/cardNameToTypeMap.js +205 -208
  410. package/dist/maps/characterNameToTypeMap.js +85 -88
  411. package/dist/maps/collectibleNameToTypeMap.js +5 -8
  412. package/dist/maps/defaultPlayerStatMap.js +10 -13
  413. package/dist/maps/entityTypeVariantToBossIDMap.js +3 -6
  414. package/dist/maps/falsePHDPillConversionsMap.js +33 -36
  415. package/dist/maps/gridEntityTypeToBrokenStateMap.js +15 -18
  416. package/dist/maps/gridEntityXMLMap.js +52 -55
  417. package/dist/maps/itemPoolTypeToItemPoolName.js +33 -36
  418. package/dist/maps/keyboardToStringMap.js +66 -69
  419. package/dist/maps/pillNameToEffectMap.js +83 -86
  420. package/dist/maps/roomNameToTypeMap.js +38 -41
  421. package/dist/maps/roomShapeToTopLeftWallGridIndexMap.js +9 -12
  422. package/dist/maps/transformationNameToPlayerFormMap.js +30 -33
  423. package/dist/maps/trinketNameToTypeMap.js +5 -8
  424. package/dist/objects/LRoomShapeToRectangles.js +22 -25
  425. package/dist/objects/backdropTypeToRockAltType.js +65 -68
  426. package/dist/objects/batteryNames.js +8 -11
  427. package/dist/objects/bombNames.js +11 -14
  428. package/dist/objects/bossIDToEntityTypeVariant.js +116 -119
  429. package/dist/objects/bossNamePNGFileNames.js +104 -107
  430. package/dist/objects/bossNames.js +105 -108
  431. package/dist/objects/bossPortraitPNGFileNames.js +104 -107
  432. package/dist/objects/cardDescriptions.js +101 -104
  433. package/dist/objects/cardNames.js +101 -104
  434. package/dist/objects/challengeBosses.js +49 -52
  435. package/dist/objects/challengeCharacters.js +49 -52
  436. package/dist/objects/challengeCollectibleTypes.js +160 -163
  437. package/dist/objects/challengeNames.js +49 -52
  438. package/dist/objects/challengeTrinketType.js +48 -51
  439. package/dist/objects/characterDamageMultipliers.js +44 -47
  440. package/dist/objects/characterNames.js +44 -47
  441. package/dist/objects/characterSpritePNGFileNames.js +44 -47
  442. package/dist/objects/characterStartingCollectibleTypes.js +49 -52
  443. package/dist/objects/characterStartingTrinketTypes.js +44 -47
  444. package/dist/objects/chestNames.js +15 -18
  445. package/dist/objects/coinNames.js +11 -14
  446. package/dist/objects/coinSubTypeToValue.js +11 -14
  447. package/dist/objects/collectibleDescriptions.js +725 -728
  448. package/dist/objects/collectibleNames.js +725 -728
  449. package/dist/objects/colors.js +1 -4
  450. package/dist/objects/directionNames.js +7 -10
  451. package/dist/objects/directionToDegrees.js +7 -10
  452. package/dist/objects/directionToMoveAction.js +7 -10
  453. package/dist/objects/directionToShootAction.js +7 -10
  454. package/dist/objects/directionToVector.js +9 -12
  455. package/dist/objects/doorSlotFlagToDoorSlot.js +11 -14
  456. package/dist/objects/doorSlotToDirection.js +11 -14
  457. package/dist/objects/doorSlotToDoorSlotFlag.js +11 -14
  458. package/dist/objects/gridEntityTypeToANM2Name.js +30 -33
  459. package/dist/objects/heartNames.js +16 -19
  460. package/dist/objects/isaacAPIClassTypeToBrand.js +8 -11
  461. package/dist/objects/isaacAPIClassTypeToFunctions.js +37 -40
  462. package/dist/objects/itemPoolTypeToCollectibleTypesSet.js +9 -45
  463. package/dist/objects/kColors.js +1 -4
  464. package/dist/objects/keyNames.js +8 -11
  465. package/dist/objects/languageNames.js +9 -12
  466. package/dist/objects/oppositeDoorSlots.js +11 -14
  467. package/dist/objects/pillEffectClasses.js +53 -56
  468. package/dist/objects/pillEffectNames.js +53 -56
  469. package/dist/objects/pillEffectTypeToPillEffects.js +11 -14
  470. package/dist/objects/pillEffectTypes.js +53 -56
  471. package/dist/objects/playerNamePNGFileNames.js +44 -47
  472. package/dist/objects/playerPortraitPNGFileNames.js +44 -47
  473. package/dist/objects/roomShapeBounds.js +23 -26
  474. package/dist/objects/roomShapeCorners.js +128 -131
  475. package/dist/objects/roomShapeLayoutSizes.js +23 -26
  476. package/dist/objects/roomShapeToBottomRightPosition.js +17 -20
  477. package/dist/objects/roomShapeToDoorSlotCoordinates.js +78 -81
  478. package/dist/objects/roomShapeToDoorSlots.js +48 -51
  479. package/dist/objects/roomShapeToDoorSlotsToGridIndexDelta.js +82 -85
  480. package/dist/objects/roomShapeToGridWidth.js +14 -17
  481. package/dist/objects/roomShapeToTopLeftPosition.js +18 -21
  482. package/dist/objects/roomShapeVolumes.js +21 -24
  483. package/dist/objects/roomTypeNames.js +32 -35
  484. package/dist/objects/roomTypeSpecialGotoPrefixes.js +32 -35
  485. package/dist/objects/sackNames.js +6 -9
  486. package/dist/objects/slotNames.js +21 -24
  487. package/dist/objects/stageIDNames.js +33 -36
  488. package/dist/objects/stageToMusic.js +69 -72
  489. package/dist/objects/stageToStageID.js +90 -93
  490. package/dist/objects/stageTypeSuffixes.js +8 -11
  491. package/dist/objects/transformationNames.js +16 -19
  492. package/dist/objects/trinketDescriptions.js +192 -195
  493. package/dist/objects/trinketNames.js +192 -195
  494. package/dist/objects/versusScreenBackgroundColors.js +39 -42
  495. package/dist/objects/versusScreenDirtSpotColors.js +39 -42
  496. package/dist/patchErrorFunctions.js +4 -7
  497. package/dist/serialization.js +6 -9
  498. package/dist/sets/LRoomShapesSet.js +7 -10
  499. package/dist/sets/bigRoomShapesSet.js +10 -13
  500. package/dist/sets/bossSets.js +261 -264
  501. package/dist/sets/charactersThatStartWithAnActiveItemSet.js +14 -17
  502. package/dist/sets/charactersWithBlackHeartFromEternalHeartSet.js +5 -8
  503. package/dist/sets/charactersWithFreeDevilDealsSet.js +3 -6
  504. package/dist/sets/charactersWithNoRedHeartsSet.js +11 -14
  505. package/dist/sets/charactersWithNoSoulHeartsSet.js +8 -11
  506. package/dist/sets/consoleCommandsSet.js +2 -5
  507. package/dist/sets/entitiesWithArmorSet.js +44 -47
  508. package/dist/sets/familiarsThatShootPlayerTearsSet.js +11 -14
  509. package/dist/sets/itemConfigCardTypesForCards.js +7 -10
  510. package/dist/sets/lostStyleCharactersSet.js +8 -11
  511. package/dist/sets/mineShaftRoomSubTypesSet.js +8 -11
  512. package/dist/sets/narrowRoomShapesSet.js +7 -10
  513. package/dist/sets/poopGridEntityXMLTypesSet.js +12 -15
  514. package/dist/sets/redHeartSubTypesSet.js +6 -9
  515. package/dist/sets/repentanceBossIDsSet.js +26 -29
  516. package/dist/sets/sinEntityTypesSet.js +10 -13
  517. package/dist/sets/singleUseActiveCollectibleTypesSet.js +11 -14
  518. package/dist/shaderCrashFix.js +4 -7
  519. package/dist/shouldFire.js +28 -58
  520. package/dist/types/AddSubtract.js +1 -2
  521. package/dist/types/AllButFirst.js +1 -2
  522. package/dist/types/AllButLast.js +1 -2
  523. package/dist/types/AnyClass.js +1 -2
  524. package/dist/types/AnyEntity.js +1 -2
  525. package/dist/types/AnyFunction.js +1 -2
  526. package/dist/types/AnyGridEntity.js +1 -2
  527. package/dist/types/CompositionTypeSatisfiesEnum.js +1 -2
  528. package/dist/types/ConversionHeartSubType.js +1 -2
  529. package/dist/types/Decrement.js +1 -2
  530. package/dist/types/ERange.js +1 -2
  531. package/dist/types/EntityID.js +1 -2
  532. package/dist/types/FunctionTuple.js +1 -2
  533. package/dist/types/GridEntityID.js +1 -2
  534. package/dist/types/HasFunction.js +1 -2
  535. package/dist/types/IRange.js +1 -2
  536. package/dist/types/Immutable.js +1 -2
  537. package/dist/types/Increment.js +1 -2
  538. package/dist/types/LowercaseKeys.js +1 -2
  539. package/dist/types/NaturalNumbersLessThan.js +1 -2
  540. package/dist/types/NaturalNumbersLessThanOrEqualTo.js +1 -2
  541. package/dist/types/ObjectValues.js +1 -2
  542. package/dist/types/PickingUpItem.js +15 -22
  543. package/dist/types/PickupIndex.js +1 -2
  544. package/dist/types/PlayerIndex.js +1 -2
  545. package/dist/types/PossibleStatType.js +1 -2
  546. package/dist/types/PublicInterface.js +1 -2
  547. package/dist/types/ReadonlyMap.js +1 -4
  548. package/dist/types/ReadonlyRecord.js +1 -2
  549. package/dist/types/ReadonlySet.js +1 -4
  550. package/dist/types/StartsWithLowercase.js +1 -2
  551. package/dist/types/StartsWithUppercase.js +1 -2
  552. package/dist/types/TSTLClass.js +1 -2
  553. package/dist/types/Tuple.js +1 -2
  554. package/dist/types/TupleKeys.js +1 -2
  555. package/dist/types/TupleToIntersection.js +1 -2
  556. package/dist/types/TupleToUnion.js +1 -2
  557. package/dist/types/TupleWithLengthBetween.js +1 -2
  558. package/dist/types/TupleWithMaxLength.js +1 -2
  559. package/dist/types/UnionToIntersection.js +1 -2
  560. package/dist/types/UppercaseKeys.js +1 -2
  561. package/dist/types/WeightedArray.js +1 -2
  562. package/dist/types/WidenLiteral.js +1 -2
  563. package/dist/types/Writable.js +1 -2
  564. package/dist/types/private/CallbackTuple.js +1 -2
  565. package/dist/types/private/ModUpgradedWithFeatures.js +1 -2
  566. package/package.json +3 -3
  567. package/src/interfaces/PlayerHealth.ts +12 -11
@@ -1,30 +1,20 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addHeart = addHeart;
4
- exports.devilAngel = devilAngel;
5
- exports.listEntities = listEntities;
6
- exports.listGridEntities = listGridEntities;
7
- exports.movePlayer = movePlayer;
8
- exports.spawnTrapdoorOrCrawlSpace = spawnTrapdoorOrCrawlSpace;
9
- exports.warpToRoomType = warpToRoomType;
10
- exports.warpNextToRoomType = warpNextToRoomType;
11
- const isaac_typescript_definitions_1 = require("isaac-typescript-definitions");
12
- const cachedClasses_1 = require("../../../../core/cachedClasses");
13
- const HealthType_1 = require("../../../../enums/HealthType");
14
- const direction_1 = require("../../../../functions/direction");
15
- const gridEntities_1 = require("../../../../functions/gridEntities");
16
- const levelGrid_1 = require("../../../../functions/levelGrid");
17
- const logEntities_1 = require("../../../../functions/logEntities");
18
- const playerHealth_1 = require("../../../../functions/playerHealth");
19
- const roomData_1 = require("../../../../functions/roomData");
20
- const rooms_1 = require("../../../../functions/rooms");
21
- const types_1 = require("../../../../functions/types");
22
- const roomTypeNames_1 = require("../../../../objects/roomTypeNames");
1
+ import { GridEntityType, GridRoom, RoomType, } from "isaac-typescript-definitions";
2
+ import { game } from "../../../../core/cachedClasses";
3
+ import { HealthType } from "../../../../enums/HealthType";
4
+ import { directionToVector } from "../../../../functions/direction";
5
+ import { spawnGridEntity } from "../../../../functions/gridEntities";
6
+ import { getRoomAdjacentGridIndexes, getRoomGridIndexesForType, } from "../../../../functions/levelGrid";
7
+ import { logAllEntities, logAllGridEntities, } from "../../../../functions/logEntities";
8
+ import { addPlayerHealthType } from "../../../../functions/playerHealth";
9
+ import { getRoomData, getRoomDescriptor } from "../../../../functions/roomData";
10
+ import { changeRoom } from "../../../../functions/rooms";
11
+ import { parseIntSafe } from "../../../../functions/types";
12
+ import { ROOM_TYPE_NAMES } from "../../../../objects/roomTypeNames";
23
13
  const DEFAULT_MOVE_UNITS = 0.5;
24
- function addHeart(params, healthType) {
25
- let numHearts = healthType === HealthType_1.HealthType.MAX_HEARTS ? 2 : 1;
14
+ export function addHeart(params, healthType) {
15
+ let numHearts = healthType === HealthType.MAX_HEARTS ? 2 : 1;
26
16
  if (params !== "") {
27
- const num = (0, types_1.parseIntSafe)(params);
17
+ const num = parseIntSafe(params);
28
18
  if (num === undefined) {
29
19
  print("That is an invalid amount of hearts to add.");
30
20
  return;
@@ -32,17 +22,17 @@ function addHeart(params, healthType) {
32
22
  numHearts = num;
33
23
  }
34
24
  const player = Isaac.GetPlayer();
35
- (0, playerHealth_1.addPlayerHealthType)(player, healthType, numHearts);
25
+ addPlayerHealthType(player, healthType, numHearts);
36
26
  }
37
- function devilAngel(useDevil) {
38
- const level = cachedClasses_1.game.GetLevel();
39
- const devilAngelRoomData = (0, roomData_1.getRoomData)(isaac_typescript_definitions_1.GridRoom.DEVIL);
27
+ export function devilAngel(useDevil) {
28
+ const level = game.GetLevel();
29
+ const devilAngelRoomData = getRoomData(GridRoom.DEVIL);
40
30
  if (devilAngelRoomData !== undefined) {
41
31
  const roomType = devilAngelRoomData.Type;
42
- const conflictingType = useDevil ? isaac_typescript_definitions_1.RoomType.ANGEL : isaac_typescript_definitions_1.RoomType.DEVIL;
32
+ const conflictingType = useDevil ? RoomType.ANGEL : RoomType.DEVIL;
43
33
  if (roomType === conflictingType) {
44
34
  // Delete the room data, which will allow the `Level.InitializeDevilAngelRoom` method to work.
45
- const roomDescriptor = (0, roomData_1.getRoomDescriptor)(isaac_typescript_definitions_1.GridRoom.DEVIL);
35
+ const roomDescriptor = getRoomDescriptor(GridRoom.DEVIL);
46
36
  roomDescriptor.Data = undefined;
47
37
  }
48
38
  }
@@ -52,36 +42,36 @@ function devilAngel(useDevil) {
52
42
  else {
53
43
  level.InitializeDevilAngelRoom(true, false);
54
44
  }
55
- (0, rooms_1.changeRoom)(isaac_typescript_definitions_1.GridRoom.DEVIL);
45
+ changeRoom(GridRoom.DEVIL);
56
46
  }
57
- function listEntities(params, includeBackgroundEffects) {
47
+ export function listEntities(params, includeBackgroundEffects) {
58
48
  let entityTypeFilter;
59
49
  if (params !== "") {
60
- entityTypeFilter = (0, types_1.parseIntSafe)(params);
50
+ entityTypeFilter = parseIntSafe(params);
61
51
  if (entityTypeFilter === undefined) {
62
52
  print("That is an invalid entity type to filter by.");
63
53
  return;
64
54
  }
65
55
  }
66
- (0, logEntities_1.logAllEntities)(includeBackgroundEffects, entityTypeFilter);
56
+ logAllEntities(includeBackgroundEffects, entityTypeFilter);
67
57
  print('Logged the entities in the room to the "log.txt" file.');
68
58
  }
69
- function listGridEntities(params, includeWalls) {
59
+ export function listGridEntities(params, includeWalls) {
70
60
  let gridEntityTypeFilter;
71
61
  if (params !== "") {
72
- gridEntityTypeFilter = (0, types_1.parseIntSafe)(params);
62
+ gridEntityTypeFilter = parseIntSafe(params);
73
63
  if (gridEntityTypeFilter === undefined) {
74
64
  print("That is an invalid grid entity type to filter by.");
75
65
  return;
76
66
  }
77
67
  }
78
- (0, logEntities_1.logAllGridEntities)(includeWalls, gridEntityTypeFilter);
68
+ logAllGridEntities(includeWalls, gridEntityTypeFilter);
79
69
  print('Logged the grid entities in the room to the "log.txt" file.');
80
70
  }
81
- function movePlayer(params, direction) {
71
+ export function movePlayer(params, direction) {
82
72
  let amount = DEFAULT_MOVE_UNITS;
83
73
  if (params !== "") {
84
- const num = (0, types_1.parseIntSafe)(params);
74
+ const num = parseIntSafe(params);
85
75
  if (num === undefined) {
86
76
  print("That is an invalid amount of units to move.");
87
77
  return;
@@ -89,43 +79,43 @@ function movePlayer(params, direction) {
89
79
  amount = num;
90
80
  }
91
81
  const player = Isaac.GetPlayer();
92
- const vector = (0, direction_1.directionToVector)(direction);
82
+ const vector = directionToVector(direction);
93
83
  const modifiedVector = vector.mul(amount);
94
84
  player.Position = player.Position.add(modifiedVector);
95
85
  }
96
- function spawnTrapdoorOrCrawlSpace(trapdoor) {
97
- const room = cachedClasses_1.game.GetRoom();
86
+ export function spawnTrapdoorOrCrawlSpace(trapdoor) {
87
+ const room = game.GetRoom();
98
88
  const player = Isaac.GetPlayer();
99
89
  const position = room.FindFreeTilePosition(player.Position, 0);
100
90
  const gridEntityType = trapdoor
101
- ? isaac_typescript_definitions_1.GridEntityType.TRAPDOOR
102
- : isaac_typescript_definitions_1.GridEntityType.CRAWL_SPACE;
103
- (0, gridEntities_1.spawnGridEntity)(gridEntityType, position);
91
+ ? GridEntityType.TRAPDOOR
92
+ : GridEntityType.CRAWL_SPACE;
93
+ spawnGridEntity(gridEntityType, position);
104
94
  }
105
- function warpToRoomType(roomType) {
106
- const roomTypeName = roomTypeNames_1.ROOM_TYPE_NAMES[roomType];
107
- const gridIndexes = (0, levelGrid_1.getRoomGridIndexesForType)(roomType);
95
+ export function warpToRoomType(roomType) {
96
+ const roomTypeName = ROOM_TYPE_NAMES[roomType];
97
+ const gridIndexes = getRoomGridIndexesForType(roomType);
108
98
  const firstGridIndex = gridIndexes[0];
109
99
  if (firstGridIndex === undefined) {
110
100
  print(`There are no ${roomTypeName}s on this floor.`);
111
101
  return;
112
102
  }
113
- (0, rooms_1.changeRoom)(firstGridIndex);
103
+ changeRoom(firstGridIndex);
114
104
  print(`Warped to room type: ${roomTypeName} (${roomType})`);
115
105
  }
116
- function warpNextToRoomType(roomType) {
117
- const roomTypeName = roomTypeNames_1.ROOM_TYPE_NAMES[roomType];
118
- const gridIndexes = (0, levelGrid_1.getRoomGridIndexesForType)(roomType);
106
+ export function warpNextToRoomType(roomType) {
107
+ const roomTypeName = ROOM_TYPE_NAMES[roomType];
108
+ const gridIndexes = getRoomGridIndexesForType(roomType);
119
109
  const firstGridIndex = gridIndexes[0];
120
110
  if (firstGridIndex === undefined) {
121
111
  print(`There are no ${roomTypeName}s on this floor.`);
122
112
  return;
123
113
  }
124
- const adjacentRoomGridIndexes = (0, levelGrid_1.getRoomAdjacentGridIndexes)(firstGridIndex);
114
+ const adjacentRoomGridIndexes = getRoomAdjacentGridIndexes(firstGridIndex);
125
115
  for (const [_doorSlot, roomGridIndex] of adjacentRoomGridIndexes) {
126
- const roomData = (0, roomData_1.getRoomData)(roomGridIndex);
127
- if (roomData !== undefined && roomData.Type === isaac_typescript_definitions_1.RoomType.DEFAULT) {
128
- (0, rooms_1.changeRoom)(roomGridIndex);
116
+ const roomData = getRoomData(roomGridIndex);
117
+ if (roomData !== undefined && roomData.Type === RoomType.DEFAULT) {
118
+ changeRoom(roomGridIndex);
129
119
  print(`Warped next to room type: ${roomTypeName} (${roomType})`);
130
120
  return;
131
121
  }
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.v = void 0;
4
1
  // This is registered in "ExtraConsoleCommands.ts".
5
2
  // eslint-disable-next-line isaacscript/require-v-registration
6
- exports.v = {
3
+ export const v = {
7
4
  persistent: {
8
5
  // Curses
9
6
  darkness: false, // 1
@@ -1,4 +1 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SAVE_DATA_MANAGER_DEBUG = void 0;
4
- exports.SAVE_DATA_MANAGER_DEBUG = false;
1
+ export const SAVE_DATA_MANAGER_DEBUG = false;
@@ -1,27 +1,23 @@
1
- "use strict";
2
1
  // The save data manager has a feature where certain variables will automatically be rolled back
3
2
  // when the Glowing Hourglass is used.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.makeGlowingHourGlassBackup = makeGlowingHourGlassBackup;
6
- exports.restoreGlowingHourGlassBackup = restoreGlowingHourGlassBackup;
7
- const SaveDataKey_1 = require("../../../../enums/SaveDataKey");
8
- const SerializationType_1 = require("../../../../enums/SerializationType");
9
- const deepCopy_1 = require("../../../../functions/deepCopy");
10
- const merge_1 = require("../../../../functions/merge");
11
- const table_1 = require("../../../../functions/table");
12
- const constants_1 = require("./constants");
3
+ import { SaveDataKey } from "../../../../enums/SaveDataKey";
4
+ import { SerializationType } from "../../../../enums/SerializationType";
5
+ import { deepCopy } from "../../../../functions/deepCopy";
6
+ import { merge } from "../../../../functions/merge";
7
+ import { iterateTableInOrder } from "../../../../functions/table";
8
+ import { SAVE_DATA_MANAGER_DEBUG } from "./constants";
13
9
  /**
14
10
  * When the Glowing Hourglass is used, certain save data keys will automatically be restored to a
15
11
  * backup.
16
12
  */
17
13
  const GLOWING_HOUR_GLASS_BACKUP_KEYS = [
18
- SaveDataKey_1.SaveDataKey.RUN,
19
- SaveDataKey_1.SaveDataKey.LEVEL,
14
+ SaveDataKey.RUN,
15
+ SaveDataKey.LEVEL,
20
16
  ];
21
17
  const IGNORE_GLOWING_HOUR_GLASS_KEY = "__ignoreGlowingHourGlass";
22
18
  const REWIND_WITH_GLOWING_HOUR_GLASS_KEY = "__rewindWithGlowingHourGlass";
23
- function makeGlowingHourGlassBackup(saveDataMap, saveDataConditionalFuncMap, saveDataGlowingHourGlassMap) {
24
- (0, table_1.iterateTableInOrder)(saveDataMap, (subscriberName, saveData) => {
19
+ export function makeGlowingHourGlassBackup(saveDataMap, saveDataConditionalFuncMap, saveDataGlowingHourGlassMap) {
20
+ iterateTableInOrder(saveDataMap, (subscriberName, saveData) => {
25
21
  // We make the Glowing Hourglass backup using `SerializationType.SERIALIZE`, which means that
26
22
  // we cannot operate on unserializable data, such as functions. Save data that utilizes
27
23
  // unserializable data will typically be marked using a conditional function that evaluates to
@@ -51,13 +47,13 @@ function makeGlowingHourGlassBackup(saveDataMap, saveDataConditionalFuncMap, sav
51
47
  }
52
48
  // We serialize the table so that we can use the `merge` function later on with no other
53
49
  // modifications.
54
- const copiedChildTable = (0, deepCopy_1.deepCopy)(childTable, SerializationType_1.SerializationType.SERIALIZE);
50
+ const copiedChildTable = deepCopy(childTable, SerializationType.SERIALIZE);
55
51
  saveDataGlowingHourGlass[saveDataKey] = copiedChildTable;
56
52
  }
57
- }, constants_1.SAVE_DATA_MANAGER_DEBUG);
53
+ }, SAVE_DATA_MANAGER_DEBUG);
58
54
  }
59
- function restoreGlowingHourGlassBackup(saveDataMap, saveDataConditionalFuncMap, saveDataGlowingHourGlassMap, classConstructors) {
60
- (0, table_1.iterateTableInOrder)(saveDataMap, (subscriberName, saveData) => {
55
+ export function restoreGlowingHourGlassBackup(saveDataMap, saveDataConditionalFuncMap, saveDataGlowingHourGlassMap, classConstructors) {
56
+ iterateTableInOrder(saveDataMap, (subscriberName, saveData) => {
61
57
  // We make the Glowing Hourglass backup using `SerializationType.SERIALIZE`, which means that
62
58
  // we cannot operate on unserializable data, such as functions. Save data that utilizes
63
59
  // unserializable data will typically be marked using a conditional function that evaluates to
@@ -90,16 +86,16 @@ function restoreGlowingHourGlassBackup(saveDataMap, saveDataConditionalFuncMap,
90
86
  // This should never happen.
91
87
  continue;
92
88
  }
93
- (0, merge_1.merge)(childTable, childTableBackup,
89
+ merge(childTable, childTableBackup,
94
90
  // Append an arbitrary suffix for better error messages.
95
91
  `${subscriberName}__glowingHourGlass`, classConstructors);
96
92
  }
97
- }, constants_1.SAVE_DATA_MANAGER_DEBUG);
93
+ }, SAVE_DATA_MANAGER_DEBUG);
98
94
  }
99
95
  function getKeysToBackup(saveData) {
100
96
  const shouldBackupPersistentObject = saveData.persistent !== undefined
101
97
  && saveData.persistent.has(REWIND_WITH_GLOWING_HOUR_GLASS_KEY);
102
98
  return shouldBackupPersistentObject
103
- ? [...GLOWING_HOUR_GLASS_BACKUP_KEYS, SaveDataKey_1.SaveDataKey.PERSISTENT]
99
+ ? [...GLOWING_HOUR_GLASS_BACKUP_KEYS, SaveDataKey.PERSISTENT]
104
100
  : GLOWING_HOUR_GLASS_BACKUP_KEYS;
105
101
  }
@@ -1,38 +1,35 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.loadFromDisk = loadFromDisk;
4
- const jsonHelpers_1 = require("../../../../functions/jsonHelpers");
5
- const log_1 = require("../../../../functions/log");
6
- const merge_1 = require("../../../../functions/merge");
7
- const table_1 = require("../../../../functions/table");
8
- const types_1 = require("../../../../functions/types");
9
- const constants_1 = require("./constants");
1
+ import { jsonDecode } from "../../../../functions/jsonHelpers";
2
+ import { log, logError } from "../../../../functions/log";
3
+ import { merge } from "../../../../functions/merge";
4
+ import { iterateTableInOrder } from "../../../../functions/table";
5
+ import { isString, isTable } from "../../../../functions/types";
6
+ import { SAVE_DATA_MANAGER_DEBUG } from "./constants";
10
7
  const DEFAULT_MOD_DATA = "{}";
11
- function loadFromDisk(mod, oldSaveData, classConstructors) {
8
+ export function loadFromDisk(mod, oldSaveData, classConstructors) {
12
9
  if (!mod.HasData()) {
13
10
  // There is no "save#.dat" file for this save slot.
14
11
  return;
15
12
  }
16
13
  // First, read the "save#.dat" file into a Lua table.
17
14
  const jsonString = readSaveDatFile(mod);
18
- const newSaveData = (0, jsonHelpers_1.jsonDecode)(jsonString);
15
+ const newSaveData = jsonDecode(jsonString);
19
16
  if (newSaveData === undefined) {
20
17
  // Reading the save data failed.
21
18
  return;
22
19
  }
23
- if (constants_1.SAVE_DATA_MANAGER_DEBUG) {
24
- (0, log_1.log)('Converted data from the "save#.dat" to a Lua table.');
20
+ if (SAVE_DATA_MANAGER_DEBUG) {
21
+ log('Converted data from the "save#.dat" to a Lua table.');
25
22
  }
26
23
  // Second, iterate over all the fields of the new table.)
27
- (0, table_1.iterateTableInOrder)(newSaveData, (subscriberName, saveData) => {
24
+ iterateTableInOrder(newSaveData, (subscriberName, saveData) => {
28
25
  // All elements of loaded save data should have keys that are strings equal to the name of the
29
26
  // subscriber/feature. Ignore elements with other types of keys.
30
- if (!(0, types_1.isString)(subscriberName)) {
27
+ if (!isString(subscriberName)) {
31
28
  return;
32
29
  }
33
30
  // All elements of loaded save data should be tables that contain fields corresponding to the
34
31
  // `SaveData` interface. Ignore elements that are not tables.
35
- if (!(0, types_1.isTable)(saveData)) {
32
+ if (!isTable(saveData)) {
36
33
  return;
37
34
  }
38
35
  // Ignore elements that represent subscriptions that no longer exist in the current save data.
@@ -40,21 +37,21 @@ function loadFromDisk(mod, oldSaveData, classConstructors) {
40
37
  if (oldSaveDataForSubscriber === undefined) {
41
38
  return;
42
39
  }
43
- if (constants_1.SAVE_DATA_MANAGER_DEBUG) {
44
- (0, log_1.log)(`Merging in stored data for feature: ${subscriberName}`);
40
+ if (SAVE_DATA_MANAGER_DEBUG) {
41
+ log(`Merging in stored data for feature: ${subscriberName}`);
45
42
  }
46
43
  // We do not want to blow away the child tables of the existing map, because save data could
47
44
  // contain out-of-date fields. Instead, merge it one field at a time in a recursive way (and
48
45
  // convert Lua tables back to TypeScriptToLua Maps, if necessary).
49
- (0, merge_1.merge)(oldSaveDataForSubscriber, saveData, subscriberName, classConstructors);
50
- }, constants_1.SAVE_DATA_MANAGER_DEBUG);
51
- (0, log_1.log)(`The save data manager loaded data from the "save#.dat" file for mod: ${mod.Name}`);
46
+ merge(oldSaveDataForSubscriber, saveData, subscriberName, classConstructors);
47
+ }, SAVE_DATA_MANAGER_DEBUG);
48
+ log(`The save data manager loaded data from the "save#.dat" file for mod: ${mod.Name}`);
52
49
  }
53
50
  function readSaveDatFile(mod) {
54
51
  const renderFrameCount = Isaac.GetFrameCount();
55
52
  const [ok, jsonStringOrErrMsg] = pcall(tryLoadModData, mod);
56
53
  if (!ok) {
57
- (0, log_1.logError)(`Failed to read from the "save#.dat" file on render frame ${renderFrameCount}: ${jsonStringOrErrMsg}`);
54
+ logError(`Failed to read from the "save#.dat" file on render frame ${renderFrameCount}: ${jsonStringOrErrMsg}`);
58
55
  return DEFAULT_MOD_DATA;
59
56
  }
60
57
  // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
@@ -1,33 +1,28 @@
1
- "use strict";
2
1
  // The save data manager has a feature where certain variables are automatically restored to default
3
2
  // values at certain times.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.restoreDefaultsForAllFeaturesAndKeys = restoreDefaultsForAllFeaturesAndKeys;
6
- exports.restoreDefaultsForAllFeaturesKey = restoreDefaultsForAllFeaturesKey;
7
- exports.restoreDefaultForFeatureKey = restoreDefaultForFeatureKey;
8
- const SaveDataKey_1 = require("../../../../enums/SaveDataKey");
9
- const SerializationType_1 = require("../../../../enums/SerializationType");
10
- const deepCopy_1 = require("../../../../functions/deepCopy");
11
- const log_1 = require("../../../../functions/log");
12
- const table_1 = require("../../../../functions/table");
13
- const ReadonlySet_1 = require("../../../../types/ReadonlySet");
14
- const constants_1 = require("./constants");
15
- const RESETTABLE_SAVE_DATA_KEYS = new ReadonlySet_1.ReadonlySet([
16
- SaveDataKey_1.SaveDataKey.RUN,
17
- SaveDataKey_1.SaveDataKey.LEVEL,
18
- SaveDataKey_1.SaveDataKey.ROOM,
3
+ import { SaveDataKey } from "../../../../enums/SaveDataKey";
4
+ import { SerializationType } from "../../../../enums/SerializationType";
5
+ import { deepCopy } from "../../../../functions/deepCopy";
6
+ import { logError } from "../../../../functions/log";
7
+ import { clearTable, iterateTableInOrder } from "../../../../functions/table";
8
+ import { ReadonlySet } from "../../../../types/ReadonlySet";
9
+ import { SAVE_DATA_MANAGER_DEBUG } from "./constants";
10
+ const RESETTABLE_SAVE_DATA_KEYS = new ReadonlySet([
11
+ SaveDataKey.RUN,
12
+ SaveDataKey.LEVEL,
13
+ SaveDataKey.ROOM,
19
14
  ]);
20
- function restoreDefaultsForAllFeaturesAndKeys(saveDataMap, saveDataDefaultsMap) {
15
+ export function restoreDefaultsForAllFeaturesAndKeys(saveDataMap, saveDataDefaultsMap) {
21
16
  for (const saveDataKey of RESETTABLE_SAVE_DATA_KEYS) {
22
17
  restoreDefaultsForAllFeaturesKey(saveDataMap, saveDataDefaultsMap, saveDataKey);
23
18
  }
24
19
  }
25
- function restoreDefaultsForAllFeaturesKey(saveDataMap, saveDataDefaultsMap, saveDataKey) {
26
- (0, table_1.iterateTableInOrder)(saveDataMap, (subscriberName, saveData) => {
20
+ export function restoreDefaultsForAllFeaturesKey(saveDataMap, saveDataDefaultsMap, saveDataKey) {
21
+ iterateTableInOrder(saveDataMap, (subscriberName, saveData) => {
27
22
  restoreDefaultForFeatureKey(saveDataDefaultsMap, subscriberName, saveData, saveDataKey);
28
- }, constants_1.SAVE_DATA_MANAGER_DEBUG);
23
+ }, SAVE_DATA_MANAGER_DEBUG);
29
24
  }
30
- function restoreDefaultForFeatureKey(saveDataDefaultsMap, subscriberName, saveData, saveDataKey) {
25
+ export function restoreDefaultForFeatureKey(saveDataDefaultsMap, subscriberName, saveData, saveDataKey) {
31
26
  // Only allow certain save data keys to be reset.
32
27
  if (!RESETTABLE_SAVE_DATA_KEYS.has(saveDataKey)) {
33
28
  error(`Failed to restore default values for a save data key of "${saveDataKey}", since it is not on the allowed list of resettable save data keys.`);
@@ -40,17 +35,17 @@ function restoreDefaultForFeatureKey(saveDataDefaultsMap, subscriberName, saveDa
40
35
  // Get the default values for this feature.
41
36
  const saveDataDefaults = saveDataDefaultsMap.get(subscriberName);
42
37
  if (saveDataDefaults === undefined) {
43
- (0, log_1.logError)(`Failed to find the default copy of the save data for subscriber: ${subscriberName}`);
38
+ logError(`Failed to find the default copy of the save data for subscriber: ${subscriberName}`);
44
39
  return;
45
40
  }
46
41
  // Get the default values for the specific sub-table of this feature.
47
42
  const childTableDefaults = saveDataDefaults[saveDataKey];
48
43
  if (childTableDefaults === undefined) {
49
- (0, log_1.logError)(String.raw `Failed to find the default copy of the child table "${saveDataKey}" for subscriber "${subscriberName}". This error usually means that your mod-specific save data is out of date. You can try purging all of your mod-specific save data by deleting the following directory: C:\Program Files (x86)\Steam\steamapps\common\The Binding of Isaac Rebirth\data`);
44
+ logError(String.raw `Failed to find the default copy of the child table "${saveDataKey}" for subscriber "${subscriberName}". This error usually means that your mod-specific save data is out of date. You can try purging all of your mod-specific save data by deleting the following directory: C:\Program Files (x86)\Steam\steamapps\common\The Binding of Isaac Rebirth\data`);
50
45
  return;
51
46
  }
52
47
  // Make a new copy of the default child table.
53
- const childTableDefaultsCopy = (0, deepCopy_1.deepCopy)(childTableDefaults, SerializationType_1.SerializationType.NONE, `${subscriberName} --> ${saveDataKey}`);
48
+ const childTableDefaultsCopy = deepCopy(childTableDefaults, SerializationType.NONE, `${subscriberName} --> ${saveDataKey}`);
54
49
  // We do not want to blow away the existing child table because we do not want to break any
55
50
  // existing references. Instead, empty the table and copy all of the elements from the copy of the
56
51
  // defaults table.
@@ -61,7 +56,7 @@ function restoreDefaultForFeatureKey(saveDataDefaultsMap, subscriberName, saveDa
61
56
  * table to the old table.
62
57
  */
63
58
  function clearAndCopyAllElements(oldTable, newTable) {
64
- (0, table_1.clearTable)(oldTable);
59
+ clearTable(oldTable);
65
60
  for (const [key, value] of newTable) {
66
61
  oldTable.set(key, value);
67
62
  }
@@ -1,21 +1,18 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.saveToDisk = saveToDisk;
4
- const SerializationType_1 = require("../../../../enums/SerializationType");
5
- const deepCopy_1 = require("../../../../functions/deepCopy");
6
- const jsonHelpers_1 = require("../../../../functions/jsonHelpers");
7
- const log_1 = require("../../../../functions/log");
8
- const table_1 = require("../../../../functions/table");
9
- const constants_1 = require("./constants");
10
- function saveToDisk(mod, saveDataMap, saveDataConditionalFuncMap) {
1
+ import { SerializationType } from "../../../../enums/SerializationType";
2
+ import { deepCopy } from "../../../../functions/deepCopy";
3
+ import { jsonEncode } from "../../../../functions/jsonHelpers";
4
+ import { log } from "../../../../functions/log";
5
+ import { isTableEmpty, iterateTableInOrder } from "../../../../functions/table";
6
+ import { SAVE_DATA_MANAGER_DEBUG } from "./constants";
7
+ export function saveToDisk(mod, saveDataMap, saveDataConditionalFuncMap) {
11
8
  const allSaveData = getAllSaveDataToWriteToDisk(saveDataMap, saveDataConditionalFuncMap);
12
- const jsonString = (0, jsonHelpers_1.jsonEncode)(allSaveData);
9
+ const jsonString = jsonEncode(allSaveData);
13
10
  mod.SaveData(jsonString);
14
- (0, log_1.log)(`The save data manager wrote data to the "save#.dat" file for mod: ${mod.Name}`);
11
+ log(`The save data manager wrote data to the "save#.dat" file for mod: ${mod.Name}`);
15
12
  }
16
13
  function getAllSaveDataToWriteToDisk(saveDataMap, saveDataConditionalFuncMap) {
17
14
  const allSaveData = new LuaMap();
18
- (0, table_1.iterateTableInOrder)(saveDataMap, (subscriberName, saveData) => {
15
+ iterateTableInOrder(saveDataMap, (subscriberName, saveData) => {
19
16
  // Handle the feature of the save data manager where certain mod features can conditionally
20
17
  // write their data to disk.
21
18
  const conditionalFunc = saveDataConditionalFuncMap.get(subscriberName);
@@ -33,13 +30,13 @@ function getAllSaveDataToWriteToDisk(saveDataMap, saveDataConditionalFuncMap) {
33
30
  level: saveData.level,
34
31
  };
35
32
  // If there is no data, then we can move on to the next feature.
36
- if ((0, table_1.isTableEmpty)(saveDataWithoutRoom)) {
33
+ if (isTableEmpty(saveDataWithoutRoom)) {
37
34
  return;
38
35
  }
39
36
  // We need to serialize TypeScriptToLua maps and Isaac API objects such as `Color`.
40
37
  // Recursively convert all such objects to Lua tables.
41
- const saveDataCopy = (0, deepCopy_1.deepCopy)(saveDataWithoutRoom, SerializationType_1.SerializationType.SERIALIZE, subscriberName);
38
+ const saveDataCopy = deepCopy(saveDataWithoutRoom, SerializationType.SERIALIZE, subscriberName);
42
39
  allSaveData.set(subscriberName, saveDataCopy);
43
- }, constants_1.SAVE_DATA_MANAGER_DEBUG);
40
+ }, SAVE_DATA_MANAGER_DEBUG);
44
41
  return allSaveData;
45
42
  }
@@ -1,13 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CustomCallback = void 0;
4
- const sort_1 = require("../../functions/sort");
5
- const Feature_1 = require("./Feature");
1
+ import { sortObjectArrayByKey, stableSort } from "../../functions/sort";
2
+ import { Feature } from "./Feature";
6
3
  /**
7
4
  * The base class for a custom callback. Individual custom callbacks (and validation callbacks) will
8
5
  * extend from this class.
9
6
  */
10
- class CustomCallback extends Feature_1.Feature {
7
+ export class CustomCallback extends Feature {
11
8
  subscriptions = [];
12
9
  fire = (...fireArgs) => {
13
10
  for (const subscription of this.subscriptions) {
@@ -40,7 +37,7 @@ class CustomCallback extends Feature_1.Feature {
40
37
  // Sort the subscriptions by priority so that the callbacks with the lowest priority are first.
41
38
  // By default, the `Array.sort` method is transpiled to using Lua's sort, which is not stable.
42
39
  // We need to do a stable sort so that we preserve the subscription order.
43
- this.subscriptions = (0, sort_1.stableSort)(this.subscriptions, (0, sort_1.sortObjectArrayByKey)("priority"));
40
+ this.subscriptions = stableSort(this.subscriptions, sortObjectArrayByKey("priority"));
44
41
  }
45
42
  /**
46
43
  * If the submitted function does not match any of the existing subscriptions, this method will do
@@ -56,4 +53,3 @@ class CustomCallback extends Feature_1.Feature {
56
53
  }
57
54
  }
58
55
  }
59
- exports.CustomCallback = CustomCallback;
@@ -1,6 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Feature = void 0;
4
1
  /**
5
2
  * The IsaacScript standard library contains many optional features, such as the ability to create
6
3
  * custom pickups. All features are optional and are only initialized when needed. This class
@@ -8,7 +5,7 @@ exports.Feature = void 0;
8
5
  *
9
6
  * Additionally, all custom callbacks extend from this class.
10
7
  */
11
- class Feature {
8
+ export class Feature {
12
9
  /**
13
10
  * All features should only be instantiated once and are passed around to other features using
14
11
  * dependency injection. We provide a run-time check in order to prevent the bug of any feature
@@ -36,4 +33,3 @@ class Feature {
36
33
  Feature.constructedClassNames.add(this.constructor.name);
37
34
  }
38
35
  }
39
- exports.Feature = Feature;
@@ -1,7 +1,4 @@
1
- "use strict";
2
1
  /* eslint-disable unicorn/no-top-level-side-effects */
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.fonts = exports.sfxManager = exports.musicManager = exports.itemConfig = exports.game = void 0;
5
2
  /**
6
3
  * A cached version of the class returned from the `Game()` constructor.
7
4
  *
@@ -10,7 +7,7 @@ exports.fonts = exports.sfxManager = exports.musicManager = exports.itemConfig =
10
7
  * Caching the results of this constructor is safe, but caching other classes (like `Level` or
11
8
  * `Room`) is not safe and can lead to the game crashing in certain situations.
12
9
  */
13
- exports.game = Game();
10
+ export const game = Game();
14
11
  /**
15
12
  * A cached version of the class returned from the `Isaac.GetItemConfig()` constructor.
16
13
  *
@@ -19,7 +16,7 @@ exports.game = Game();
19
16
  * Caching the results of this constructor is safe, but caching other classes (like `Level` or
20
17
  * `Room`) is not safe and can lead to the game crashing in certain situations.
21
18
  */
22
- exports.itemConfig = Isaac.GetItemConfig();
19
+ export const itemConfig = Isaac.GetItemConfig();
23
20
  /**
24
21
  * A cached version of the class returned from the `MusicManager()` constructor.
25
22
  *
@@ -28,7 +25,7 @@ exports.itemConfig = Isaac.GetItemConfig();
28
25
  * Caching the results of this constructor is safe, but caching other classes (like `Level` or
29
26
  * `Room`) is not safe and can lead to the game crashing in certain situations.
30
27
  */
31
- exports.musicManager = MusicManager();
28
+ export const musicManager = MusicManager();
32
29
  /**
33
30
  * A cached version of the class returned from the `SFXManager()` constructor.
34
31
  *
@@ -37,14 +34,14 @@ exports.musicManager = MusicManager();
37
34
  * Caching the results of this constructor is safe, but caching other classes (like `Level` or
38
35
  * `Room`) is not safe and can lead to the game crashing in certain situations.
39
36
  */
40
- exports.sfxManager = SFXManager();
37
+ export const sfxManager = SFXManager();
41
38
  /**
42
39
  * An object containing all 7 vanilla fonts that are pre-loaded and ready to use.
43
40
  *
44
41
  * For more information on the vanilla fonts and to see what they look like, see:
45
42
  * https://wofsauge.github.io/IsaacDocs/rep/tutorials/Tutorial-Rendertext.html
46
43
  */
47
- exports.fonts = {
44
+ export const fonts = {
48
45
  droid: Font(),
49
46
  pfTempestaSevenCondensed: Font(),
50
47
  teamMeatFont10: Font(),
@@ -53,10 +50,10 @@ exports.fonts = {
53
50
  terminus: Font(),
54
51
  upheaval: Font(),
55
52
  };
56
- exports.fonts.droid.Load("font/droid.fnt");
57
- exports.fonts.pfTempestaSevenCondensed.Load("font/pftempestasevencondensed.fnt");
58
- exports.fonts.teamMeatFont10.Load("font/teammeatfont10.fnt");
59
- exports.fonts.teamMeatFont12.Load("font/teammeatfont12.fnt");
60
- exports.fonts.teamMeatFont16Bold.Load("font/teammeatfont16bold.fnt");
61
- exports.fonts.terminus.Load("font/terminus.fnt");
62
- exports.fonts.upheaval.Load("font/upheaval.fnt");
53
+ fonts.droid.Load("font/droid.fnt");
54
+ fonts.pfTempestaSevenCondensed.Load("font/pftempestasevencondensed.fnt");
55
+ fonts.teamMeatFont10.Load("font/teammeatfont10.fnt");
56
+ fonts.teamMeatFont12.Load("font/teammeatfont12.fnt");
57
+ fonts.teamMeatFont16Bold.Load("font/teammeatfont16bold.fnt");
58
+ fonts.terminus.Load("font/terminus.fnt");
59
+ fonts.upheaval.Load("font/upheaval.fnt");