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,42 +1,10 @@
1
- "use strict";
2
1
  /* eslint-disable no-nested-ternary */
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.easeInBack = easeInBack;
5
- exports.easeInBounce = easeInBounce;
6
- exports.easeInCirc = easeInCirc;
7
- exports.easeInCubic = easeInCubic;
8
- exports.easeInElastic = easeInElastic;
9
- exports.easeInExpo = easeInExpo;
10
- exports.easeInOutBack = easeInOutBack;
11
- exports.easeInOutBounce = easeInOutBounce;
12
- exports.easeInOutCirc = easeInOutCirc;
13
- exports.easeInOutCubic = easeInOutCubic;
14
- exports.easeInOutElastic = easeInOutElastic;
15
- exports.easeInOutExpo = easeInOutExpo;
16
- exports.easeInOutQuad = easeInOutQuad;
17
- exports.easeInOutQuart = easeInOutQuart;
18
- exports.easeInOutQuint = easeInOutQuint;
19
- exports.easeInOutSine = easeInOutSine;
20
- exports.easeInQuad = easeInQuad;
21
- exports.easeInQuart = easeInQuart;
22
- exports.easeInQuint = easeInQuint;
23
- exports.easeInSine = easeInSine;
24
- exports.easeOutBack = easeOutBack;
25
- exports.easeOutBounce = easeOutBounce;
26
- exports.easeOutCirc = easeOutCirc;
27
- exports.easeOutCubic = easeOutCubic;
28
- exports.easeOutElastic = easeOutElastic;
29
- exports.easeOutExpo = easeOutExpo;
30
- exports.easeOutQuad = easeOutQuad;
31
- exports.easeOutQuart = easeOutQuart;
32
- exports.easeOutQuint = easeOutQuint;
33
- exports.easeOutSine = easeOutSine;
34
2
  /**
35
3
  * From: https://easings.net/#easeInBack
36
4
  *
37
5
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
38
6
  */
39
- function easeInBack(time) {
7
+ export function easeInBack(time) {
40
8
  const c1 = 1.70158;
41
9
  const c3 = c1 + 1;
42
10
  return c3 * time * time * time - c1 * time * time;
@@ -46,7 +14,7 @@ function easeInBack(time) {
46
14
  *
47
15
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
48
16
  */
49
- function easeInBounce(time) {
17
+ export function easeInBounce(time) {
50
18
  return 1 - easeOutBounce(1 - time);
51
19
  }
52
20
  /**
@@ -54,7 +22,7 @@ function easeInBounce(time) {
54
22
  *
55
23
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
56
24
  */
57
- function easeInCirc(time) {
25
+ export function easeInCirc(time) {
58
26
  return 1 - Math.sqrt(1 - time ** 2);
59
27
  }
60
28
  /**
@@ -62,7 +30,7 @@ function easeInCirc(time) {
62
30
  *
63
31
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
64
32
  */
65
- function easeInCubic(time) {
33
+ export function easeInCubic(time) {
66
34
  return time * time * time;
67
35
  }
68
36
  /**
@@ -70,7 +38,7 @@ function easeInCubic(time) {
70
38
  *
71
39
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
72
40
  */
73
- function easeInElastic(time) {
41
+ export function easeInElastic(time) {
74
42
  const c4 = (2 * Math.PI) / 3;
75
43
  return time === 0
76
44
  ? 0
@@ -83,7 +51,7 @@ function easeInElastic(time) {
83
51
  *
84
52
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
85
53
  */
86
- function easeInExpo(time) {
54
+ export function easeInExpo(time) {
87
55
  return time === 0 ? 0 : 2 ** (10 * time - 10);
88
56
  }
89
57
  /**
@@ -91,7 +59,7 @@ function easeInExpo(time) {
91
59
  *
92
60
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
93
61
  */
94
- function easeInOutBack(time) {
62
+ export function easeInOutBack(time) {
95
63
  const c1 = 1.70158;
96
64
  const c2 = c1 * 1.525;
97
65
  return ((time < 0.5
@@ -103,7 +71,7 @@ function easeInOutBack(time) {
103
71
  *
104
72
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
105
73
  */
106
- function easeInOutBounce(time) {
74
+ export function easeInOutBounce(time) {
107
75
  return ((time < 0.5
108
76
  ? 1 - easeOutBounce(1 - 2 * time)
109
77
  : 1 + easeOutBounce(2 * time - 1)) / 2);
@@ -113,7 +81,7 @@ function easeInOutBounce(time) {
113
81
  *
114
82
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
115
83
  */
116
- function easeInOutCirc(time) {
84
+ export function easeInOutCirc(time) {
117
85
  return ((time < 0.5
118
86
  ? 1 - Math.sqrt(1 - (2 * time) ** 2)
119
87
  : Math.sqrt(1 - (-2 * time + 2) ** 2) + 1) / 2);
@@ -123,7 +91,7 @@ function easeInOutCirc(time) {
123
91
  *
124
92
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
125
93
  */
126
- function easeInOutCubic(time) {
94
+ export function easeInOutCubic(time) {
127
95
  return time < 0.5 ? 4 * time * time * time : 1 - (-2 * time + 2) ** 3 / 2;
128
96
  }
129
97
  /**
@@ -131,7 +99,7 @@ function easeInOutCubic(time) {
131
99
  *
132
100
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
133
101
  */
134
- function easeInOutElastic(time) {
102
+ export function easeInOutElastic(time) {
135
103
  const c5 = (2 * Math.PI) / 4.5;
136
104
  return time === 0
137
105
  ? 0
@@ -147,7 +115,7 @@ function easeInOutElastic(time) {
147
115
  *
148
116
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
149
117
  */
150
- function easeInOutExpo(time) {
118
+ export function easeInOutExpo(time) {
151
119
  return time === 0
152
120
  ? 0
153
121
  : time === 1
@@ -159,7 +127,7 @@ function easeInOutExpo(time) {
159
127
  *
160
128
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
161
129
  */
162
- function easeInOutQuad(time) {
130
+ export function easeInOutQuad(time) {
163
131
  return time < 0.5 ? 2 * time * time : 1 - (-2 * time + 2) ** 2 / 2;
164
132
  }
165
133
  /**
@@ -167,7 +135,7 @@ function easeInOutQuad(time) {
167
135
  *
168
136
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
169
137
  */
170
- function easeInOutQuart(time) {
138
+ export function easeInOutQuart(time) {
171
139
  return time < 0.5
172
140
  ? 8 * time * time * time * time
173
141
  : 1 - (-2 * time + 2) ** 4 / 2;
@@ -177,7 +145,7 @@ function easeInOutQuart(time) {
177
145
  *
178
146
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
179
147
  */
180
- function easeInOutQuint(time) {
148
+ export function easeInOutQuint(time) {
181
149
  return time < 0.5
182
150
  ? 16 * time * time * time * time * time
183
151
  : 1 - (-2 * time + 2) ** 5 / 2;
@@ -187,7 +155,7 @@ function easeInOutQuint(time) {
187
155
  *
188
156
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
189
157
  */
190
- function easeInOutSine(time) {
158
+ export function easeInOutSine(time) {
191
159
  return -(Math.cos(Math.PI * time) - 1) / 2;
192
160
  }
193
161
  /**
@@ -195,7 +163,7 @@ function easeInOutSine(time) {
195
163
  *
196
164
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
197
165
  */
198
- function easeInQuad(time) {
166
+ export function easeInQuad(time) {
199
167
  return time * time;
200
168
  }
201
169
  /**
@@ -203,7 +171,7 @@ function easeInQuad(time) {
203
171
  *
204
172
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
205
173
  */
206
- function easeInQuart(time) {
174
+ export function easeInQuart(time) {
207
175
  return time * time * time * time;
208
176
  }
209
177
  /**
@@ -211,7 +179,7 @@ function easeInQuart(time) {
211
179
  *
212
180
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
213
181
  */
214
- function easeInQuint(time) {
182
+ export function easeInQuint(time) {
215
183
  return time * time * time * time * time;
216
184
  }
217
185
  /**
@@ -219,7 +187,7 @@ function easeInQuint(time) {
219
187
  *
220
188
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
221
189
  */
222
- function easeInSine(time) {
190
+ export function easeInSine(time) {
223
191
  return 1 - Math.cos((time * Math.PI) / 2);
224
192
  }
225
193
  /**
@@ -227,7 +195,7 @@ function easeInSine(time) {
227
195
  *
228
196
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
229
197
  */
230
- function easeOutBack(time) {
198
+ export function easeOutBack(time) {
231
199
  const c1 = 1.70158;
232
200
  const c3 = c1 + 1;
233
201
  return 1 + c3 * (time - 1) ** 3 + c1 * (time - 1) ** 2;
@@ -237,7 +205,7 @@ function easeOutBack(time) {
237
205
  *
238
206
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
239
207
  */
240
- function easeOutBounce(time) {
208
+ export function easeOutBounce(time) {
241
209
  const n1 = 7.5625;
242
210
  const d1 = 2.75;
243
211
  if (time < 1 / d1) {
@@ -259,7 +227,7 @@ function easeOutBounce(time) {
259
227
  *
260
228
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
261
229
  */
262
- function easeOutCirc(time) {
230
+ export function easeOutCirc(time) {
263
231
  return Math.sqrt(1 - (time - 1) ** 2);
264
232
  }
265
233
  /**
@@ -267,7 +235,7 @@ function easeOutCirc(time) {
267
235
  *
268
236
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
269
237
  */
270
- function easeOutCubic(time) {
238
+ export function easeOutCubic(time) {
271
239
  return 1 - (1 - time) ** 3;
272
240
  }
273
241
  /**
@@ -275,7 +243,7 @@ function easeOutCubic(time) {
275
243
  *
276
244
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
277
245
  */
278
- function easeOutElastic(time) {
246
+ export function easeOutElastic(time) {
279
247
  const c4 = (2 * Math.PI) / 3;
280
248
  return time === 0
281
249
  ? 0
@@ -288,7 +256,7 @@ function easeOutElastic(time) {
288
256
  *
289
257
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
290
258
  */
291
- function easeOutExpo(time) {
259
+ export function easeOutExpo(time) {
292
260
  return time === 1 ? 1 : 1 - 2 ** (-10 * time);
293
261
  }
294
262
  /**
@@ -296,7 +264,7 @@ function easeOutExpo(time) {
296
264
  *
297
265
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
298
266
  */
299
- function easeOutQuad(time) {
267
+ export function easeOutQuad(time) {
300
268
  return 1 - (1 - time) * (1 - time);
301
269
  }
302
270
  /**
@@ -304,7 +272,7 @@ function easeOutQuad(time) {
304
272
  *
305
273
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
306
274
  */
307
- function easeOutQuart(time) {
275
+ export function easeOutQuart(time) {
308
276
  return 1 - (1 - time) ** 4;
309
277
  }
310
278
  /**
@@ -312,7 +280,7 @@ function easeOutQuart(time) {
312
280
  *
313
281
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
314
282
  */
315
- function easeOutQuint(time) {
283
+ export function easeOutQuint(time) {
316
284
  return 1 - (1 - time) ** 5;
317
285
  }
318
286
  /**
@@ -320,6 +288,6 @@ function easeOutQuint(time) {
320
288
  *
321
289
  * @param time A value between 0 and 1 that represents how far along you are in the transition.
322
290
  */
323
- function easeOutSine(time) {
291
+ export function easeOutSine(time) {
324
292
  return Math.sin((time * Math.PI) / 2);
325
293
  }
@@ -1,14 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DICE_FLOOR_TRIGGER_SQUARE_SIZE = void 0;
4
- exports.isCloseEnoughToTriggerDiceFloor = isCloseEnoughToTriggerDiceFloor;
5
- const math_1 = require("./math");
1
+ import { inRectangle } from "./math";
6
2
  /** For `EntityType.EFFECT` (1000), `EffectVariant.DICE_FLOOR` (76). */
7
- exports.DICE_FLOOR_TRIGGER_SQUARE_SIZE = 75;
3
+ export const DICE_FLOOR_TRIGGER_SQUARE_SIZE = 75;
8
4
  /** Helper function to see if a player is close enough to activate a Dice Room floor. */
9
- function isCloseEnoughToTriggerDiceFloor(player, diceFloor) {
5
+ export function isCloseEnoughToTriggerDiceFloor(player, diceFloor) {
10
6
  // Unlike other entities, the dice floor has a rectangular hit box, not a circular one.
11
- const topLeft = diceFloor.Position.add(Vector(-exports.DICE_FLOOR_TRIGGER_SQUARE_SIZE, -exports.DICE_FLOOR_TRIGGER_SQUARE_SIZE));
12
- const bottomRight = diceFloor.Position.add(Vector(exports.DICE_FLOOR_TRIGGER_SQUARE_SIZE, exports.DICE_FLOOR_TRIGGER_SQUARE_SIZE));
13
- return (0, math_1.inRectangle)(player.Position, topLeft, bottomRight);
7
+ const topLeft = diceFloor.Position.add(Vector(-DICE_FLOOR_TRIGGER_SQUARE_SIZE, -DICE_FLOOR_TRIGGER_SQUARE_SIZE));
8
+ const bottomRight = diceFloor.Position.add(Vector(DICE_FLOOR_TRIGGER_SQUARE_SIZE, DICE_FLOOR_TRIGGER_SQUARE_SIZE));
9
+ return inRectangle(player.Position, topLeft, bottomRight);
14
10
  }
@@ -1,22 +1,18 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.emptyRoom = emptyRoom;
4
- exports.emptyRoomGridEntities = emptyRoomGridEntities;
5
- const isaac_typescript_definitions_1 = require("isaac-typescript-definitions");
6
- const cachedClasses_1 = require("../core/cachedClasses");
7
- const ReadonlySet_1 = require("../types/ReadonlySet");
8
- const entities_1 = require("./entities");
9
- const gridEntities_1 = require("./gridEntities");
10
- const roomShapeWalls_1 = require("./roomShapeWalls");
11
- const rooms_1 = require("./rooms");
12
- const EMPTY_ROOM_BLACKLIST_ENTITY_SET = new ReadonlySet_1.ReadonlySet([
13
- isaac_typescript_definitions_1.EntityType.PLAYER, // 1
14
- isaac_typescript_definitions_1.EntityType.TEAR, // 2
15
- isaac_typescript_definitions_1.EntityType.FAMILIAR, // 3
16
- isaac_typescript_definitions_1.EntityType.LASER, // 7
17
- isaac_typescript_definitions_1.EntityType.KNIFE, // 8
18
- isaac_typescript_definitions_1.EntityType.PROJECTILE, // 9
19
- isaac_typescript_definitions_1.EntityType.DARK_ESAU, // 866
1
+ import { EntityFlag, EntityType, GridEntityType, } from "isaac-typescript-definitions";
2
+ import { game } from "../core/cachedClasses";
3
+ import { ReadonlySet } from "../types/ReadonlySet";
4
+ import { getEntities } from "./entities";
5
+ import { getGridEntities, removeGridEntity } from "./gridEntities";
6
+ import { isVanillaWallGridIndex } from "./roomShapeWalls";
7
+ import { roomUpdateSafe } from "./rooms";
8
+ const EMPTY_ROOM_BLACKLIST_ENTITY_SET = new ReadonlySet([
9
+ EntityType.PLAYER, // 1
10
+ EntityType.TEAR, // 2
11
+ EntityType.FAMILIAR, // 3
12
+ EntityType.LASER, // 7
13
+ EntityType.KNIFE, // 8
14
+ EntityType.PROJECTILE, // 9
15
+ EntityType.DARK_ESAU, // 866
20
16
  ]);
21
17
  /**
22
18
  * Helper function to remove all naturally spawning entities and grid entities from a room. Notably,
@@ -24,30 +20,30 @@ const EMPTY_ROOM_BLACKLIST_ENTITY_SET = new ReadonlySet_1.ReadonlySet([
24
20
  * (9), blacklisted NPCs such as Dark Esau, charmed NPCs, friendly NPCs, persistent NPCs, most
25
21
  * effects (1000), doors, and walls.
26
22
  */
27
- function emptyRoom() {
23
+ export function emptyRoom() {
28
24
  emptyRoomEntities();
29
25
  emptyRoomGridEntities();
30
26
  }
31
27
  /** Helper function to remove all grid entities from a room except for doors and walls. */
32
- function emptyRoomGridEntities() {
28
+ export function emptyRoomGridEntities() {
33
29
  let removedOneOrMoreGridEntities = false;
34
- for (const gridEntity of (0, gridEntities_1.getGridEntities)()) {
30
+ for (const gridEntity of getGridEntities()) {
35
31
  const gridEntityType = gridEntity.GetType();
36
32
  const gridIndex = gridEntity.GetGridIndex();
37
33
  // We cannot simply check if the grid entity type is equal to a wall because other mods use
38
34
  // walls as a base for custom grid entities.
39
- if (gridEntityType === isaac_typescript_definitions_1.GridEntityType.WALL
40
- && (0, roomShapeWalls_1.isVanillaWallGridIndex)(gridIndex)) {
35
+ if (gridEntityType === GridEntityType.WALL
36
+ && isVanillaWallGridIndex(gridIndex)) {
41
37
  continue;
42
38
  }
43
- if (gridEntityType === isaac_typescript_definitions_1.GridEntityType.DOOR) {
39
+ if (gridEntityType === GridEntityType.DOOR) {
44
40
  continue;
45
41
  }
46
- (0, gridEntities_1.removeGridEntity)(gridEntity, false);
42
+ removeGridEntity(gridEntity, false);
47
43
  removedOneOrMoreGridEntities = true;
48
44
  }
49
45
  if (removedOneOrMoreGridEntities) {
50
- (0, rooms_1.roomUpdateSafe)();
46
+ roomUpdateSafe();
51
47
  }
52
48
  }
53
49
  /**
@@ -55,22 +51,22 @@ function emptyRoomGridEntities() {
55
51
  * callback so that they will not re-appear when we re-enter the room.
56
52
  */
57
53
  function emptyRoomEntities() {
58
- const room = cachedClasses_1.game.GetRoom();
59
- for (const entity of (0, entities_1.getEntities)()) {
54
+ const room = game.GetRoom();
55
+ for (const entity of getEntities()) {
60
56
  if (EMPTY_ROOM_BLACKLIST_ENTITY_SET.has(entity.Type)) {
61
57
  continue;
62
58
  }
63
- if (entity.HasEntityFlags(isaac_typescript_definitions_1.EntityFlag.CHARM)
64
- || entity.HasEntityFlags(isaac_typescript_definitions_1.EntityFlag.FRIENDLY)
65
- || entity.HasEntityFlags(isaac_typescript_definitions_1.EntityFlag.PERSISTENT)) {
59
+ if (entity.HasEntityFlags(EntityFlag.CHARM)
60
+ || entity.HasEntityFlags(EntityFlag.FRIENDLY)
61
+ || entity.HasEntityFlags(EntityFlag.PERSISTENT)) {
66
62
  continue;
67
63
  }
68
- entity.ClearEntityFlags(isaac_typescript_definitions_1.EntityFlag.APPEAR);
64
+ entity.ClearEntityFlags(EntityFlag.APPEAR);
69
65
  entity.Remove();
70
66
  // When fire places are removed, they will leave behind a "path" that will prevent future grid
71
67
  // entities from being spawned on the same tile. Thus, reset the path for this tile if this is a
72
68
  // fire place.
73
- if (entity.Type === isaac_typescript_definitions_1.EntityType.FIREPLACE) {
69
+ if (entity.Type === EntityType.FIREPLACE) {
74
70
  const gridIndex = room.GetGridIndex(entity.Position);
75
71
  room.SetGridPath(gridIndex, 0);
76
72
  }