isaacscript-common 87.5.0 → 87.6.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 (684) hide show
  1. package/README.md +1 -1
  2. package/dist/callbackClasses.d.ts +7 -6
  3. package/dist/callbackClasses.d.ts.map +1 -1
  4. package/dist/callbackClasses.js +17 -15
  5. package/dist/callbackClasses.lua +163 -300
  6. package/dist/callbacks.d.ts +118 -117
  7. package/dist/callbacks.d.ts.map +1 -1
  8. package/dist/callbacks.js +19 -9
  9. package/dist/callbacks.lua +1 -0
  10. package/dist/classes/DefaultMap.d.ts +5 -1
  11. package/dist/classes/DefaultMap.d.ts.map +1 -1
  12. package/dist/classes/ModFeature.js +3 -3
  13. package/dist/classes/ModUpgraded.d.ts.map +1 -1
  14. package/dist/classes/ModUpgraded.js +4 -6
  15. package/dist/classes/callbacks/InputActionFilter.d.ts +2 -2
  16. package/dist/classes/callbacks/InputActionFilter.d.ts.map +1 -1
  17. package/dist/classes/callbacks/InputActionFilter.js +3 -3
  18. package/dist/classes/callbacks/InputActionPlayer.d.ts +2 -2
  19. package/dist/classes/callbacks/InputActionPlayer.d.ts.map +1 -1
  20. package/dist/classes/callbacks/InputActionPlayer.js +6 -6
  21. package/dist/classes/callbacks/PostBoneSwing.js +2 -2
  22. package/dist/classes/callbacks/PostCollectibleEmpty.d.ts +2 -2
  23. package/dist/classes/callbacks/PostCollectibleEmpty.d.ts.map +1 -1
  24. package/dist/classes/callbacks/PostCollectibleEmpty.js +3 -5
  25. package/dist/classes/callbacks/PostCursedTeleport.js +5 -5
  26. package/dist/classes/callbacks/PostCustomRevive.d.ts +2 -4
  27. package/dist/classes/callbacks/PostCustomRevive.d.ts.map +1 -1
  28. package/dist/classes/callbacks/PostDiceRoomActivated.d.ts +2 -3
  29. package/dist/classes/callbacks/PostDiceRoomActivated.d.ts.map +1 -1
  30. package/dist/classes/callbacks/PostDiceRoomActivated.js +2 -2
  31. package/dist/classes/callbacks/PostEntityRemoveFilter.d.ts +9 -0
  32. package/dist/classes/callbacks/PostEntityRemoveFilter.d.ts.map +1 -0
  33. package/dist/classes/callbacks/PostEntityRemoveFilter.js +21 -0
  34. package/dist/classes/callbacks/PostEntityRemoveFilter.lua +23 -0
  35. package/dist/classes/callbacks/PostGridEntityCollision.d.ts +2 -4
  36. package/dist/classes/callbacks/PostGridEntityCollision.d.ts.map +1 -1
  37. package/dist/classes/callbacks/PostGridEntityCollision.js +10 -10
  38. package/dist/classes/callbacks/PostGridEntityCustomCollision.d.ts +2 -4
  39. package/dist/classes/callbacks/PostGridEntityCustomCollision.d.ts.map +1 -1
  40. package/dist/classes/callbacks/PostGridEntityCustomCollision.js +8 -8
  41. package/dist/classes/callbacks/PostGridEntityCustomRemove.d.ts +2 -3
  42. package/dist/classes/callbacks/PostGridEntityCustomRemove.d.ts.map +1 -1
  43. package/dist/classes/callbacks/PostGridEntityCustomRemove.js +2 -2
  44. package/dist/classes/callbacks/PostGridEntityRemove.d.ts +2 -2
  45. package/dist/classes/callbacks/PostGridEntityRemove.d.ts.map +1 -1
  46. package/dist/classes/callbacks/PostGridEntityRemove.js +3 -3
  47. package/dist/classes/callbacks/PostItemDischarge.d.ts +2 -2
  48. package/dist/classes/callbacks/PostItemDischarge.d.ts.map +1 -1
  49. package/dist/classes/callbacks/PostItemDischarge.js +5 -8
  50. package/dist/classes/callbacks/PostKeyboardChanged.d.ts +2 -1
  51. package/dist/classes/callbacks/PostKeyboardChanged.d.ts.map +1 -1
  52. package/dist/classes/callbacks/PostKeyboardChanged.js +2 -2
  53. package/dist/classes/callbacks/PostNewRoomEarly.js +3 -3
  54. package/dist/classes/callbacks/PostPickupSelectionFilter.d.ts +2 -2
  55. package/dist/classes/callbacks/PostPickupSelectionFilter.d.ts.map +1 -1
  56. package/dist/classes/callbacks/PostPickupSelectionFilter.js +4 -3
  57. package/dist/classes/callbacks/PostPlayerChangeHealth.js +2 -2
  58. package/dist/classes/callbacks/PostPlayerChangeType.js +1 -1
  59. package/dist/classes/callbacks/PostPurchase.d.ts +2 -4
  60. package/dist/classes/callbacks/PostPurchase.d.ts.map +1 -1
  61. package/dist/classes/callbacks/PostPurchase.js +9 -9
  62. package/dist/classes/callbacks/PostRoomClearChanged.d.ts.map +1 -1
  63. package/dist/classes/callbacks/PostTransformation.d.ts +2 -2
  64. package/dist/classes/callbacks/PostTransformation.d.ts.map +1 -1
  65. package/dist/classes/callbacks/PostTransformation.js +1 -3
  66. package/dist/classes/callbacks/PostTrinketBreak.d.ts.map +1 -1
  67. package/dist/classes/callbacks/PostTrinketBreak.js +1 -3
  68. package/dist/classes/callbacks/PostUsePillFilter.js +2 -2
  69. package/dist/classes/callbacks/PreBerserkDeath.js +4 -4
  70. package/dist/classes/callbacks/PreEntitySpawnFilter.d.ts +2 -2
  71. package/dist/classes/callbacks/PreEntitySpawnFilter.d.ts.map +1 -1
  72. package/dist/classes/callbacks/PreEntitySpawnFilter.js +3 -3
  73. package/dist/classes/callbacks/PreNewLevel.d.ts.map +1 -1
  74. package/dist/classes/callbacks/PreRoomEntitySpawnFilter.d.ts +2 -2
  75. package/dist/classes/callbacks/PreRoomEntitySpawnFilter.d.ts.map +1 -1
  76. package/dist/classes/callbacks/PreRoomEntitySpawnFilter.js +5 -5
  77. package/dist/classes/features/callbackLogic/CustomGridEntities.d.ts +1 -1
  78. package/dist/classes/features/callbackLogic/CustomGridEntities.d.ts.map +1 -1
  79. package/dist/classes/features/callbackLogic/CustomRevive.d.ts.map +1 -1
  80. package/dist/classes/features/callbackLogic/EsauJrDetection.d.ts.map +1 -1
  81. package/dist/classes/features/callbackLogic/EsauJrDetection.js +2 -2
  82. package/dist/classes/features/callbackLogic/GameReorderedCallbacks.d.ts.map +1 -1
  83. package/dist/classes/features/callbackLogic/GameReorderedCallbacks.js +9 -11
  84. package/dist/classes/features/callbackLogic/GridEntityUpdateDetection.js +4 -4
  85. package/dist/classes/features/callbackLogic/ItemPickupDetection.js +4 -4
  86. package/dist/classes/features/callbackLogic/PlayerCollectibleDetection.js +2 -2
  87. package/dist/classes/features/callbackLogic/PlayerReorderedCallbacks.d.ts +0 -1
  88. package/dist/classes/features/callbackLogic/PlayerReorderedCallbacks.d.ts.map +1 -1
  89. package/dist/classes/features/callbackLogic/PlayerReorderedCallbacks.js +4 -4
  90. package/dist/classes/features/other/CustomPickups.d.ts.map +1 -1
  91. package/dist/classes/features/other/CustomPickups.js +1 -0
  92. package/dist/classes/features/other/CustomStages.js +19 -9
  93. package/dist/classes/features/other/CustomTrapdoors.d.ts.map +1 -1
  94. package/dist/classes/features/other/CustomTrapdoors.js +44 -38
  95. package/dist/classes/features/other/CustomTrapdoors.lua +14 -7
  96. package/dist/classes/features/other/DebugDisplay.d.ts +0 -18
  97. package/dist/classes/features/other/DebugDisplay.d.ts.map +1 -1
  98. package/dist/classes/features/other/DeployJSONRoom.d.ts +0 -2
  99. package/dist/classes/features/other/DeployJSONRoom.d.ts.map +1 -1
  100. package/dist/classes/features/other/DeployJSONRoom.js +6 -4
  101. package/dist/classes/features/other/DisableInputs.js +3 -3
  102. package/dist/classes/features/other/EdenStartingStatsHealth.d.ts +1 -1
  103. package/dist/classes/features/other/EdenStartingStatsHealth.d.ts.map +1 -1
  104. package/dist/classes/features/other/ExtraConsoleCommands.d.ts +14 -10
  105. package/dist/classes/features/other/ExtraConsoleCommands.d.ts.map +1 -1
  106. package/dist/classes/features/other/ExtraConsoleCommands.js +31 -17
  107. package/dist/classes/features/other/ExtraConsoleCommands.lua +2 -1
  108. package/dist/classes/features/other/FlyingDetection.d.ts +0 -1
  109. package/dist/classes/features/other/FlyingDetection.d.ts.map +1 -1
  110. package/dist/classes/features/other/ForgottenSwitch.d.ts +0 -1
  111. package/dist/classes/features/other/ForgottenSwitch.d.ts.map +1 -1
  112. package/dist/classes/features/other/ModdedElementDetection.js +4 -4
  113. package/dist/classes/features/other/ModdedElementSets.d.ts +2 -2
  114. package/dist/classes/features/other/ModdedElementSets.d.ts.map +1 -1
  115. package/dist/classes/features/other/ModdedElementSets.js +3 -3
  116. package/dist/classes/features/other/NoSirenSteal.js +4 -4
  117. package/dist/classes/features/other/PickupIndexCreation.d.ts +0 -1
  118. package/dist/classes/features/other/PickupIndexCreation.d.ts.map +1 -1
  119. package/dist/classes/features/other/PickupIndexCreation.js +7 -8
  120. package/dist/classes/features/other/PickupIndexCreation.lua +10 -10
  121. package/dist/classes/features/other/PonyDetection.d.ts +0 -1
  122. package/dist/classes/features/other/PonyDetection.d.ts.map +1 -1
  123. package/dist/classes/features/other/PonyDetection.js +2 -2
  124. package/dist/classes/features/other/PressInput.js +2 -2
  125. package/dist/classes/features/other/PreventChildEntities.d.ts +0 -1
  126. package/dist/classes/features/other/PreventChildEntities.d.ts.map +1 -1
  127. package/dist/classes/features/other/PreventChildEntities.js +4 -4
  128. package/dist/classes/features/other/RoomClearFrame.d.ts +0 -1
  129. package/dist/classes/features/other/RoomClearFrame.d.ts.map +1 -1
  130. package/dist/classes/features/other/RoomHistory.d.ts +0 -1
  131. package/dist/classes/features/other/RoomHistory.d.ts.map +1 -1
  132. package/dist/classes/features/other/RoomHistory.js +5 -5
  133. package/dist/classes/features/other/RunInNFrames.js +2 -2
  134. package/dist/classes/features/other/SaveDataManager.js +3 -3
  135. package/dist/classes/features/other/SpawnRockAltRewards.d.ts +0 -4
  136. package/dist/classes/features/other/SpawnRockAltRewards.d.ts.map +1 -1
  137. package/dist/classes/features/other/StageHistory.js +2 -2
  138. package/dist/classes/features/other/StartAmbush.js +2 -2
  139. package/dist/classes/features/other/TaintedLazarusPlayers.d.ts +0 -1
  140. package/dist/classes/features/other/TaintedLazarusPlayers.d.ts.map +1 -1
  141. package/dist/classes/features/other/TaintedLazarusPlayers.js +2 -2
  142. package/dist/classes/features/other/customStages/backdrop.js +2 -3
  143. package/dist/classes/features/other/customStages/constants.d.ts.map +1 -1
  144. package/dist/classes/features/other/customStages/gridEntities.d.ts +0 -1
  145. package/dist/classes/features/other/customStages/gridEntities.d.ts.map +1 -1
  146. package/dist/classes/features/other/customStages/gridEntities.js +9 -10
  147. package/dist/classes/features/other/customStages/shadows.js +1 -2
  148. package/dist/classes/features/other/customStages/streakText.js +7 -8
  149. package/dist/classes/features/other/customStages/utils.d.ts +0 -2
  150. package/dist/classes/features/other/customStages/utils.d.ts.map +1 -1
  151. package/dist/classes/features/other/customStages/utils.js +2 -3
  152. package/dist/classes/features/other/customStages/v.d.ts.map +1 -1
  153. package/dist/classes/features/other/customStages/versusScreen.js +2 -3
  154. package/dist/classes/features/other/debugDisplay/DebugDisplayBomb.d.ts +0 -1
  155. package/dist/classes/features/other/debugDisplay/DebugDisplayBomb.d.ts.map +1 -1
  156. package/dist/classes/features/other/debugDisplay/DebugDisplayDoor.d.ts +0 -1
  157. package/dist/classes/features/other/debugDisplay/DebugDisplayDoor.d.ts.map +1 -1
  158. package/dist/classes/features/other/debugDisplay/DebugDisplayEffect.d.ts +0 -1
  159. package/dist/classes/features/other/debugDisplay/DebugDisplayEffect.d.ts.map +1 -1
  160. package/dist/classes/features/other/debugDisplay/DebugDisplayFamiliar.d.ts +0 -1
  161. package/dist/classes/features/other/debugDisplay/DebugDisplayFamiliar.d.ts.map +1 -1
  162. package/dist/classes/features/other/debugDisplay/DebugDisplayKnife.d.ts +0 -1
  163. package/dist/classes/features/other/debugDisplay/DebugDisplayKnife.d.ts.map +1 -1
  164. package/dist/classes/features/other/debugDisplay/DebugDisplayLaser.d.ts +0 -1
  165. package/dist/classes/features/other/debugDisplay/DebugDisplayLaser.d.ts.map +1 -1
  166. package/dist/classes/features/other/debugDisplay/DebugDisplayNPC.d.ts +0 -1
  167. package/dist/classes/features/other/debugDisplay/DebugDisplayNPC.d.ts.map +1 -1
  168. package/dist/classes/features/other/debugDisplay/DebugDisplayPickup.d.ts +0 -1
  169. package/dist/classes/features/other/debugDisplay/DebugDisplayPickup.d.ts.map +1 -1
  170. package/dist/classes/features/other/debugDisplay/DebugDisplayPit.d.ts +0 -1
  171. package/dist/classes/features/other/debugDisplay/DebugDisplayPit.d.ts.map +1 -1
  172. package/dist/classes/features/other/debugDisplay/DebugDisplayPlayer.d.ts +0 -1
  173. package/dist/classes/features/other/debugDisplay/DebugDisplayPlayer.d.ts.map +1 -1
  174. package/dist/classes/features/other/debugDisplay/DebugDisplayPoop.d.ts +0 -1
  175. package/dist/classes/features/other/debugDisplay/DebugDisplayPoop.d.ts.map +1 -1
  176. package/dist/classes/features/other/debugDisplay/DebugDisplayPressurePlate.d.ts +0 -1
  177. package/dist/classes/features/other/debugDisplay/DebugDisplayPressurePlate.d.ts.map +1 -1
  178. package/dist/classes/features/other/debugDisplay/DebugDisplayProjectile.d.ts +0 -1
  179. package/dist/classes/features/other/debugDisplay/DebugDisplayProjectile.d.ts.map +1 -1
  180. package/dist/classes/features/other/debugDisplay/DebugDisplayRock.d.ts +0 -1
  181. package/dist/classes/features/other/debugDisplay/DebugDisplayRock.d.ts.map +1 -1
  182. package/dist/classes/features/other/debugDisplay/DebugDisplaySlot.d.ts +0 -1
  183. package/dist/classes/features/other/debugDisplay/DebugDisplaySlot.d.ts.map +1 -1
  184. package/dist/classes/features/other/debugDisplay/DebugDisplaySpikes.d.ts +0 -1
  185. package/dist/classes/features/other/debugDisplay/DebugDisplaySpikes.d.ts.map +1 -1
  186. package/dist/classes/features/other/debugDisplay/DebugDisplayTNT.d.ts +0 -1
  187. package/dist/classes/features/other/debugDisplay/DebugDisplayTNT.d.ts.map +1 -1
  188. package/dist/classes/features/other/debugDisplay/DebugDisplayTear.d.ts +0 -1
  189. package/dist/classes/features/other/debugDisplay/DebugDisplayTear.d.ts.map +1 -1
  190. package/dist/classes/features/other/debugDisplay/utils.d.ts +0 -2
  191. package/dist/classes/features/other/debugDisplay/utils.d.ts.map +1 -1
  192. package/dist/classes/features/other/debugDisplay/utils.js +2 -3
  193. package/dist/classes/features/other/extraConsoleCommands/commands.js +155 -158
  194. package/dist/classes/features/other/extraConsoleCommands/subroutines.js +8 -9
  195. package/dist/classes/features/other/saveDataManager/constants.d.ts.map +1 -1
  196. package/dist/classes/features/other/saveDataManager/glowingHourGlass.d.ts +0 -1
  197. package/dist/classes/features/other/saveDataManager/glowingHourGlass.d.ts.map +1 -1
  198. package/dist/classes/features/other/saveDataManager/glowingHourGlass.js +4 -5
  199. package/dist/classes/features/other/saveDataManager/loadFromDisk.d.ts +0 -2
  200. package/dist/classes/features/other/saveDataManager/loadFromDisk.d.ts.map +1 -1
  201. package/dist/classes/features/other/saveDataManager/loadFromDisk.js +5 -2
  202. package/dist/classes/features/other/saveDataManager/loadFromDisk.lua +3 -0
  203. package/dist/classes/features/other/saveDataManager/restoreDefaults.d.ts +0 -1
  204. package/dist/classes/features/other/saveDataManager/restoreDefaults.d.ts.map +1 -1
  205. package/dist/classes/features/other/saveDataManager/restoreDefaults.js +3 -4
  206. package/dist/classes/features/other/saveDataManager/saveToDisk.d.ts +0 -2
  207. package/dist/classes/features/other/saveDataManager/saveToDisk.d.ts.map +1 -1
  208. package/dist/classes/features/other/saveDataManager/saveToDisk.js +1 -2
  209. package/dist/classes/private/CustomCallback.d.ts.map +1 -1
  210. package/dist/core/cachedClasses.d.ts +0 -5
  211. package/dist/core/cachedClasses.d.ts.map +1 -1
  212. package/dist/core/constants.js +1 -1
  213. package/dist/core/constantsVanilla.js +4 -4
  214. package/dist/core/upgradeMod.d.ts +0 -2
  215. package/dist/core/upgradeMod.d.ts.map +1 -1
  216. package/dist/core/upgradeMod.js +1 -2
  217. package/dist/decorators.js +2 -2
  218. package/dist/enums/ModCallbackCustom.d.ts +134 -117
  219. package/dist/enums/ModCallbackCustom.d.ts.map +1 -1
  220. package/dist/enums/ModCallbackCustom.js +134 -117
  221. package/dist/enums/ModCallbackCustom.lua +119 -117
  222. package/dist/enums/private/GridEntityTypeCustom.d.ts.map +1 -1
  223. package/dist/features.js +1 -2
  224. package/dist/functions/ambush.js +1 -2
  225. package/dist/functions/array.d.ts +5 -8
  226. package/dist/functions/array.d.ts.map +1 -1
  227. package/dist/functions/array.js +55 -55
  228. package/dist/functions/array.lua +2 -2
  229. package/dist/functions/arrayLua.d.ts +1 -1
  230. package/dist/functions/arrayLua.d.ts.map +1 -1
  231. package/dist/functions/arrayLua.js +7 -8
  232. package/dist/functions/benchmark.d.ts +0 -1
  233. package/dist/functions/benchmark.d.ts.map +1 -1
  234. package/dist/functions/benchmark.js +1 -2
  235. package/dist/functions/bitSet128.d.ts +0 -1
  236. package/dist/functions/bitSet128.d.ts.map +1 -1
  237. package/dist/functions/bitSet128.js +5 -6
  238. package/dist/functions/bitwise.d.ts +0 -4
  239. package/dist/functions/bitwise.d.ts.map +1 -1
  240. package/dist/functions/bitwise.js +7 -8
  241. package/dist/functions/bitwise.lua +3 -3
  242. package/dist/functions/bombs.d.ts +0 -1
  243. package/dist/functions/bombs.d.ts.map +1 -1
  244. package/dist/functions/bombs.js +1 -2
  245. package/dist/functions/bosses.d.ts.map +1 -1
  246. package/dist/functions/bosses.js +19 -19
  247. package/dist/functions/cards.js +16 -17
  248. package/dist/functions/challenges.js +9 -10
  249. package/dist/functions/characters.js +17 -18
  250. package/dist/functions/charge.d.ts.map +1 -1
  251. package/dist/functions/charge.js +12 -13
  252. package/dist/functions/charge.lua +1 -1
  253. package/dist/functions/chargeBar.d.ts +0 -2
  254. package/dist/functions/chargeBar.d.ts.map +1 -1
  255. package/dist/functions/chargeBar.js +2 -3
  256. package/dist/functions/collectibleTag.js +2 -3
  257. package/dist/functions/collectibles.js +39 -40
  258. package/dist/functions/color.d.ts +0 -1
  259. package/dist/functions/color.d.ts.map +1 -1
  260. package/dist/functions/color.js +7 -8
  261. package/dist/functions/console.js +2 -3
  262. package/dist/functions/curses.js +2 -3
  263. package/dist/functions/debugFunctions.d.ts +0 -1
  264. package/dist/functions/debugFunctions.d.ts.map +1 -1
  265. package/dist/functions/debugFunctions.js +5 -6
  266. package/dist/functions/decorators.d.ts +4 -4
  267. package/dist/functions/decorators.d.ts.map +1 -1
  268. package/dist/functions/decorators.js +4 -5
  269. package/dist/functions/deepCopy.d.ts +0 -1
  270. package/dist/functions/deepCopy.d.ts.map +1 -1
  271. package/dist/functions/deepCopy.js +7 -10
  272. package/dist/functions/deepCopy.lua +0 -2
  273. package/dist/functions/deepCopyTests.js +5 -6
  274. package/dist/functions/dimensions.js +2 -3
  275. package/dist/functions/direction.js +6 -7
  276. package/dist/functions/doors.d.ts.map +1 -1
  277. package/dist/functions/doors.js +56 -52
  278. package/dist/functions/easing.js +32 -33
  279. package/dist/functions/effects.d.ts +0 -2
  280. package/dist/functions/effects.d.ts.map +1 -1
  281. package/dist/functions/effects.js +2 -2
  282. package/dist/functions/emptyRoom.js +7 -8
  283. package/dist/functions/entities.d.ts +0 -1
  284. package/dist/functions/entities.d.ts.map +1 -1
  285. package/dist/functions/entities.js +36 -38
  286. package/dist/functions/entitiesSpecific.js +40 -41
  287. package/dist/functions/entityTypes.d.ts +0 -1
  288. package/dist/functions/entityTypes.d.ts.map +1 -1
  289. package/dist/functions/entityTypes.js +1 -2
  290. package/dist/functions/enums.d.ts +1 -6
  291. package/dist/functions/enums.d.ts.map +1 -1
  292. package/dist/functions/enums.js +12 -13
  293. package/dist/functions/external.js +2 -3
  294. package/dist/functions/familiars.js +8 -9
  295. package/dist/functions/flag.d.ts +1 -1
  296. package/dist/functions/flag.d.ts.map +1 -1
  297. package/dist/functions/flag.js +9 -10
  298. package/dist/functions/frames.d.ts +0 -1
  299. package/dist/functions/frames.d.ts.map +1 -1
  300. package/dist/functions/frames.js +18 -19
  301. package/dist/functions/globals.d.ts +0 -1
  302. package/dist/functions/globals.d.ts.map +1 -1
  303. package/dist/functions/globals.js +23 -15
  304. package/dist/functions/gridEntities.d.ts.map +1 -1
  305. package/dist/functions/gridEntities.js +68 -62
  306. package/dist/functions/gridEntitiesSpecific.js +40 -41
  307. package/dist/functions/gridIndex.js +1 -2
  308. package/dist/functions/hash.js +1 -2
  309. package/dist/functions/hex.d.ts +0 -2
  310. package/dist/functions/hex.d.ts.map +1 -1
  311. package/dist/functions/hex.js +2 -3
  312. package/dist/functions/input.js +21 -21
  313. package/dist/functions/isaacAPIClass.d.ts +0 -20
  314. package/dist/functions/isaacAPIClass.d.ts.map +1 -1
  315. package/dist/functions/isaacAPIClass.js +25 -26
  316. package/dist/functions/itemPool.js +7 -8
  317. package/dist/functions/jsonHelpers.d.ts +4 -5
  318. package/dist/functions/jsonHelpers.d.ts.map +1 -1
  319. package/dist/functions/jsonHelpers.js +23 -14
  320. package/dist/functions/jsonHelpers.lua +4 -4
  321. package/dist/functions/jsonRoom.js +5 -6
  322. package/dist/functions/kColor.d.ts +0 -1
  323. package/dist/functions/kColor.d.ts.map +1 -1
  324. package/dist/functions/kColor.js +7 -8
  325. package/dist/functions/language.js +1 -2
  326. package/dist/functions/level.js +7 -8
  327. package/dist/functions/levelGrid.d.ts.map +1 -1
  328. package/dist/functions/levelGrid.js +33 -38
  329. package/dist/functions/log.js +4 -5
  330. package/dist/functions/logEntities.d.ts.map +1 -1
  331. package/dist/functions/logEntities.js +19 -17
  332. package/dist/functions/logMisc.d.ts +1 -2
  333. package/dist/functions/logMisc.d.ts.map +1 -1
  334. package/dist/functions/logMisc.js +35 -48
  335. package/dist/functions/logMisc.lua +3 -3
  336. package/dist/functions/map.d.ts +0 -2
  337. package/dist/functions/map.d.ts.map +1 -1
  338. package/dist/functions/map.js +12 -13
  339. package/dist/functions/math.js +17 -18
  340. package/dist/functions/merge.d.ts +0 -1
  341. package/dist/functions/merge.d.ts.map +1 -1
  342. package/dist/functions/merge.js +2 -3
  343. package/dist/functions/mergeTests.js +1 -2
  344. package/dist/functions/minimap.d.ts.map +1 -1
  345. package/dist/functions/minimap.js +12 -17
  346. package/dist/functions/modFeatures.js +1 -2
  347. package/dist/functions/newArray.d.ts +0 -1
  348. package/dist/functions/newArray.d.ts.map +1 -1
  349. package/dist/functions/newArray.js +2 -3
  350. package/dist/functions/nextStage.d.ts.map +1 -1
  351. package/dist/functions/nextStage.js +16 -13
  352. package/dist/functions/npcDataStructures.d.ts +0 -2
  353. package/dist/functions/npcDataStructures.d.ts.map +1 -1
  354. package/dist/functions/npcDataStructures.js +14 -15
  355. package/dist/functions/npcs.d.ts.map +1 -1
  356. package/dist/functions/npcs.js +19 -17
  357. package/dist/functions/pickupVariants.d.ts +0 -1
  358. package/dist/functions/pickupVariants.d.ts.map +1 -1
  359. package/dist/functions/pickupVariants.js +17 -18
  360. package/dist/functions/pickups.js +14 -15
  361. package/dist/functions/pickupsSpecific.js +40 -41
  362. package/dist/functions/pills.js +18 -19
  363. package/dist/functions/playerCenter.d.ts +0 -1
  364. package/dist/functions/playerCenter.d.ts.map +1 -1
  365. package/dist/functions/playerCenter.js +1 -2
  366. package/dist/functions/playerCollectibles.d.ts.map +1 -1
  367. package/dist/functions/playerCollectibles.js +21 -24
  368. package/dist/functions/playerCollectibles.lua +9 -9
  369. package/dist/functions/playerDataStructures.d.ts +0 -1
  370. package/dist/functions/playerDataStructures.d.ts.map +1 -1
  371. package/dist/functions/playerDataStructures.js +14 -15
  372. package/dist/functions/playerEffects.js +5 -6
  373. package/dist/functions/playerHealth.d.ts +0 -2
  374. package/dist/functions/playerHealth.d.ts.map +1 -1
  375. package/dist/functions/playerHealth.js +28 -29
  376. package/dist/functions/playerHealth.lua +26 -26
  377. package/dist/functions/playerIndex.d.ts +0 -3
  378. package/dist/functions/playerIndex.d.ts.map +1 -1
  379. package/dist/functions/playerIndex.js +12 -13
  380. package/dist/functions/playerTrinkets.js +10 -11
  381. package/dist/functions/players.js +41 -42
  382. package/dist/functions/pocketItems.js +10 -11
  383. package/dist/functions/positionVelocity.d.ts +0 -4
  384. package/dist/functions/positionVelocity.d.ts.map +1 -1
  385. package/dist/functions/positionVelocity.js +11 -20
  386. package/dist/functions/positionVelocity.lua +4 -4
  387. package/dist/functions/pressurePlate.js +1 -2
  388. package/dist/functions/projectiles.js +2 -3
  389. package/dist/functions/random.d.ts +0 -3
  390. package/dist/functions/random.d.ts.map +1 -1
  391. package/dist/functions/random.js +3 -4
  392. package/dist/functions/readOnly.d.ts +0 -4
  393. package/dist/functions/readOnly.d.ts.map +1 -1
  394. package/dist/functions/readOnly.js +3 -4
  395. package/dist/functions/render.d.ts +0 -3
  396. package/dist/functions/render.d.ts.map +1 -1
  397. package/dist/functions/render.js +3 -4
  398. package/dist/functions/revive.d.ts +0 -3
  399. package/dist/functions/revive.d.ts.map +1 -1
  400. package/dist/functions/revive.js +20 -21
  401. package/dist/functions/rng.d.ts +0 -1
  402. package/dist/functions/rng.d.ts.map +1 -1
  403. package/dist/functions/rng.js +15 -15
  404. package/dist/functions/rockAlt.d.ts +0 -1
  405. package/dist/functions/rockAlt.d.ts.map +1 -1
  406. package/dist/functions/rockAlt.js +2 -3
  407. package/dist/functions/roomData.d.ts.map +1 -1
  408. package/dist/functions/roomData.js +15 -18
  409. package/dist/functions/roomGrid.js +8 -9
  410. package/dist/functions/roomShape.js +14 -15
  411. package/dist/functions/roomShapeWalls.js +2 -3
  412. package/dist/functions/roomTransition.js +2 -3
  413. package/dist/functions/rooms.d.ts +1 -2
  414. package/dist/functions/rooms.d.ts.map +1 -1
  415. package/dist/functions/rooms.js +116 -105
  416. package/dist/functions/rooms.lua +3 -4
  417. package/dist/functions/run.js +8 -9
  418. package/dist/functions/seeds.d.ts +0 -1
  419. package/dist/functions/seeds.d.ts.map +1 -1
  420. package/dist/functions/seeds.js +2 -3
  421. package/dist/functions/serialization.js +5 -6
  422. package/dist/functions/set.d.ts +0 -2
  423. package/dist/functions/set.d.ts.map +1 -1
  424. package/dist/functions/set.js +22 -23
  425. package/dist/functions/slots.js +2 -3
  426. package/dist/functions/sort.d.ts.map +1 -1
  427. package/dist/functions/sort.js +8 -9
  428. package/dist/functions/sound.d.ts.map +1 -1
  429. package/dist/functions/sound.js +4 -9
  430. package/dist/functions/spawnCollectible.d.ts.map +1 -1
  431. package/dist/functions/spawnCollectible.js +7 -10
  432. package/dist/functions/sprites.d.ts +0 -3
  433. package/dist/functions/sprites.d.ts.map +1 -1
  434. package/dist/functions/sprites.js +6 -7
  435. package/dist/functions/stage.d.ts.map +1 -1
  436. package/dist/functions/stage.js +60 -69
  437. package/dist/functions/stage.lua +5 -5
  438. package/dist/functions/stats.js +4 -5
  439. package/dist/functions/storyBosses.js +2 -3
  440. package/dist/functions/string.d.ts +0 -1
  441. package/dist/functions/string.d.ts.map +1 -1
  442. package/dist/functions/string.js +18 -19
  443. package/dist/functions/table.d.ts +0 -1
  444. package/dist/functions/table.d.ts.map +1 -1
  445. package/dist/functions/table.js +8 -9
  446. package/dist/functions/tears.js +8 -9
  447. package/dist/functions/transformations.js +5 -6
  448. package/dist/functions/trinketGive.js +9 -10
  449. package/dist/functions/trinkets.d.ts.map +1 -1
  450. package/dist/functions/trinkets.js +14 -17
  451. package/dist/functions/tstlClass.d.ts +2 -3
  452. package/dist/functions/tstlClass.d.ts.map +1 -1
  453. package/dist/functions/tstlClass.js +9 -10
  454. package/dist/functions/tstlClass.lua +2 -2
  455. package/dist/functions/types.d.ts +15 -17
  456. package/dist/functions/types.d.ts.map +1 -1
  457. package/dist/functions/types.js +41 -42
  458. package/dist/functions/types.lua +14 -14
  459. package/dist/functions/ui.d.ts +0 -3
  460. package/dist/functions/ui.d.ts.map +1 -1
  461. package/dist/functions/ui.js +13 -14
  462. package/dist/functions/utils.d.ts +0 -1
  463. package/dist/functions/utils.d.ts.map +1 -1
  464. package/dist/functions/utils.js +11 -12
  465. package/dist/functions/vector.d.ts +0 -1
  466. package/dist/functions/vector.d.ts.map +1 -1
  467. package/dist/functions/vector.js +11 -12
  468. package/dist/functions/versusScreen.js +4 -5
  469. package/dist/functions/weighted.d.ts +0 -3
  470. package/dist/functions/weighted.d.ts.map +1 -1
  471. package/dist/functions/weighted.js +2 -3
  472. package/dist/index.d.ts +58 -58
  473. package/dist/index.d.ts.map +1 -1
  474. package/dist/index.js +4 -58
  475. package/dist/index.lua +18 -18
  476. package/dist/index.rollup.d.ts +222 -181
  477. package/dist/indexLua.d.ts +58 -58
  478. package/dist/indexLua.d.ts.map +1 -1
  479. package/dist/indexLua.js +4 -58
  480. package/dist/indexLua.lua +18 -18
  481. package/dist/interfaces/ChargeBarSprites.d.ts +0 -2
  482. package/dist/interfaces/ChargeBarSprites.d.ts.map +1 -1
  483. package/dist/interfaces/Corner.d.ts +0 -2
  484. package/dist/interfaces/Corner.d.ts.map +1 -1
  485. package/dist/interfaces/SaveData.d.ts +0 -1
  486. package/dist/interfaces/SaveData.d.ts.map +1 -1
  487. package/dist/interfaces/TSTLClassMetatable.d.ts +0 -4
  488. package/dist/interfaces/TSTLClassMetatable.d.ts.map +1 -1
  489. package/dist/interfaces/private/AddCallbackParametersCustom.d.ts +6 -0
  490. package/dist/interfaces/private/AddCallbackParametersCustom.d.ts.map +1 -1
  491. package/dist/interfaces/private/ModUpgradedInterface.d.ts +0 -1
  492. package/dist/interfaces/private/ModUpgradedInterface.d.ts.map +1 -1
  493. package/dist/isaacscript-common.lua +786 -871
  494. package/dist/lib/jsonLua.js +34 -34
  495. package/dist/lualib_bundle.lua +49 -38
  496. package/dist/objects/LRoomShapeToRectangles.js +1 -1
  497. package/dist/objects/colors.d.ts +0 -1
  498. package/dist/objects/colors.d.ts.map +1 -1
  499. package/dist/objects/directionToVector.d.ts +0 -1
  500. package/dist/objects/directionToVector.d.ts.map +1 -1
  501. package/dist/objects/doorSlotFlagToDoorSlot.d.ts +9 -2
  502. package/dist/objects/doorSlotFlagToDoorSlot.d.ts.map +1 -1
  503. package/dist/objects/doorSlotToDoorSlotFlag.d.ts +0 -1
  504. package/dist/objects/doorSlotToDoorSlotFlag.d.ts.map +1 -1
  505. package/dist/objects/itemPoolTypeToCollectibleTypesSet.js +17 -7
  506. package/dist/objects/kColors.d.ts +0 -1
  507. package/dist/objects/kColors.d.ts.map +1 -1
  508. package/dist/objects/roomShapeToBottomRightPosition.d.ts +0 -1
  509. package/dist/objects/roomShapeToBottomRightPosition.d.ts.map +1 -1
  510. package/dist/objects/roomShapeToDoorSlotsToGridIndexDelta.js +1 -1
  511. package/dist/objects/roomShapeToTopLeftPosition.d.ts +0 -1
  512. package/dist/objects/roomShapeToTopLeftPosition.d.ts.map +1 -1
  513. package/dist/objects/versusScreenBackgroundColors.d.ts +0 -1
  514. package/dist/objects/versusScreenBackgroundColors.d.ts.map +1 -1
  515. package/dist/objects/versusScreenDirtSpotColors.d.ts +0 -1
  516. package/dist/objects/versusScreenDirtSpotColors.d.ts.map +1 -1
  517. package/dist/patchErrorFunctions.js +1 -2
  518. package/dist/serialization.js +1 -2
  519. package/dist/shaderCrashFix.d.ts +0 -1
  520. package/dist/shaderCrashFix.d.ts.map +1 -1
  521. package/dist/shaderCrashFix.js +1 -2
  522. package/dist/shouldFire.d.ts.map +1 -1
  523. package/dist/shouldFire.js +83 -86
  524. package/dist/tsdoc-metadata.json +1 -1
  525. package/dist/types/AddSubtract.d.ts +10 -2
  526. package/dist/types/AddSubtract.d.ts.map +1 -1
  527. package/dist/types/AnyEntity.d.ts +0 -11
  528. package/dist/types/AnyEntity.d.ts.map +1 -1
  529. package/dist/types/AnyGridEntity.d.ts +0 -8
  530. package/dist/types/AnyGridEntity.d.ts.map +1 -1
  531. package/dist/types/Increment.d.ts.map +1 -1
  532. package/dist/types/PickingUpItem.d.ts +10 -3
  533. package/dist/types/PickingUpItem.d.ts.map +1 -1
  534. package/dist/types/PickingUpItem.js +15 -9
  535. package/dist/types/PickingUpItem.lua +8 -3
  536. package/dist/types/PickupIndex.d.ts +0 -1
  537. package/dist/types/PickupIndex.d.ts.map +1 -1
  538. package/dist/types/PlayerIndex.d.ts +0 -1
  539. package/dist/types/PlayerIndex.d.ts.map +1 -1
  540. package/dist/types/ReadonlyMap.d.ts.map +1 -1
  541. package/dist/types/ReadonlySet.d.ts.map +1 -1
  542. package/dist/types/TSTLClass.d.ts +0 -1
  543. package/dist/types/TSTLClass.d.ts.map +1 -1
  544. package/dist/types/TupleWithLengthBetween.js +2 -2
  545. package/dist/types/TupleWithMaxLength.js +2 -2
  546. package/dist/types/WeightedArray.d.ts +0 -1
  547. package/dist/types/WeightedArray.d.ts.map +1 -1
  548. package/package.json +9 -2
  549. package/src/callbackClasses.ts +7 -6
  550. package/src/callbacks.ts +1 -0
  551. package/src/classes/DefaultMap.ts +5 -2
  552. package/src/classes/ModFeature.ts +3 -3
  553. package/src/classes/ModUpgraded.ts +4 -6
  554. package/src/classes/callbacks/InputActionFilter.ts +3 -3
  555. package/src/classes/callbacks/InputActionPlayer.ts +6 -6
  556. package/src/classes/callbacks/PostBoneSwing.ts +2 -2
  557. package/src/classes/callbacks/PostCollectibleEmpty.ts +3 -5
  558. package/src/classes/callbacks/PostCursedTeleport.ts +5 -5
  559. package/src/classes/callbacks/PostDiceRoomActivated.ts +2 -2
  560. package/src/classes/callbacks/PostEntityRemoveFilter.ts +22 -0
  561. package/src/classes/callbacks/PostGridEntityCollision.ts +10 -10
  562. package/src/classes/callbacks/PostGridEntityCustomCollision.ts +8 -8
  563. package/src/classes/callbacks/PostGridEntityCustomRemove.ts +2 -2
  564. package/src/classes/callbacks/PostGridEntityRemove.ts +3 -3
  565. package/src/classes/callbacks/PostItemDischarge.ts +5 -8
  566. package/src/classes/callbacks/PostKeyboardChanged.ts +2 -2
  567. package/src/classes/callbacks/PostNPCStateChanged.ts +1 -1
  568. package/src/classes/callbacks/PostNewRoomEarly.ts +3 -3
  569. package/src/classes/callbacks/PostPickupSelectionFilter.ts +4 -3
  570. package/src/classes/callbacks/PostPlayerChangeHealth.ts +2 -2
  571. package/src/classes/callbacks/PostPlayerChangeType.ts +1 -1
  572. package/src/classes/callbacks/PostPurchase.ts +9 -9
  573. package/src/classes/callbacks/PostTransformation.ts +1 -3
  574. package/src/classes/callbacks/PostTrinketBreak.ts +1 -3
  575. package/src/classes/callbacks/PostUsePillFilter.ts +2 -2
  576. package/src/classes/callbacks/PreBerserkDeath.ts +4 -4
  577. package/src/classes/callbacks/PreEntitySpawnFilter.ts +3 -3
  578. package/src/classes/callbacks/PreRoomEntitySpawnFilter.ts +5 -5
  579. package/src/classes/features/callbackLogic/CustomGridEntities.ts +1 -1
  580. package/src/classes/features/callbackLogic/EsauJrDetection.ts +2 -2
  581. package/src/classes/features/callbackLogic/GameReorderedCallbacks.ts +9 -11
  582. package/src/classes/features/callbackLogic/GridEntityUpdateDetection.ts +4 -4
  583. package/src/classes/features/callbackLogic/ItemPickupDetection.ts +4 -4
  584. package/src/classes/features/callbackLogic/PlayerCollectibleDetection.ts +2 -2
  585. package/src/classes/features/callbackLogic/PlayerReorderedCallbacks.ts +4 -4
  586. package/src/classes/features/other/CustomPickups.ts +1 -0
  587. package/src/classes/features/other/CustomStages.ts +2 -2
  588. package/src/classes/features/other/CustomTrapdoors.ts +46 -39
  589. package/src/classes/features/other/DeployJSONRoom.ts +6 -4
  590. package/src/classes/features/other/DisableInputs.ts +3 -3
  591. package/src/classes/features/other/EdenStartingStatsHealth.ts +3 -1
  592. package/src/classes/features/other/ExtraConsoleCommands.ts +14 -10
  593. package/src/classes/features/other/ModdedElementDetection.ts +4 -4
  594. package/src/classes/features/other/ModdedElementSets.ts +5 -5
  595. package/src/classes/features/other/NoSirenSteal.ts +4 -4
  596. package/src/classes/features/other/PickupIndexCreation.ts +7 -8
  597. package/src/classes/features/other/PonyDetection.ts +2 -2
  598. package/src/classes/features/other/PressInput.ts +2 -2
  599. package/src/classes/features/other/PreventChildEntities.ts +4 -4
  600. package/src/classes/features/other/RoomHistory.ts +5 -5
  601. package/src/classes/features/other/RunInNFrames.ts +2 -2
  602. package/src/classes/features/other/SaveDataManager.ts +3 -3
  603. package/src/classes/features/other/StageHistory.ts +2 -2
  604. package/src/classes/features/other/StartAmbush.ts +2 -2
  605. package/src/classes/features/other/TaintedLazarusPlayers.ts +2 -2
  606. package/src/classes/features/other/customStages/backdrop.ts +1 -1
  607. package/src/classes/features/other/customStages/gridEntities.ts +4 -4
  608. package/src/classes/features/other/customStages/streakText.ts +4 -4
  609. package/src/classes/features/other/extraConsoleCommands/commands.ts +15 -15
  610. package/src/classes/features/other/saveDataManager/glowingHourGlass.ts +4 -2
  611. package/src/classes/features/other/saveDataManager/loadFromDisk.ts +5 -0
  612. package/src/core/constants.ts +1 -1
  613. package/src/core/constantsVanilla.ts +4 -4
  614. package/src/enums/ModCallbackCustom.ts +18 -0
  615. package/src/functions/array.ts +33 -29
  616. package/src/functions/arrayLua.ts +1 -1
  617. package/src/functions/bosses.ts +4 -3
  618. package/src/functions/charge.ts +3 -4
  619. package/src/functions/collectibles.ts +2 -2
  620. package/src/functions/decorators.ts +6 -9
  621. package/src/functions/deepCopy.ts +6 -10
  622. package/src/functions/deepCopyTests.ts +4 -4
  623. package/src/functions/doors.ts +8 -3
  624. package/src/functions/easing.ts +2 -2
  625. package/src/functions/emptyRoom.ts +5 -5
  626. package/src/functions/entities.ts +11 -12
  627. package/src/functions/enums.ts +4 -4
  628. package/src/functions/familiars.ts +2 -2
  629. package/src/functions/flag.ts +3 -3
  630. package/src/functions/globals.ts +2 -3
  631. package/src/functions/gridEntities.ts +30 -24
  632. package/src/functions/gridEntitiesSpecific.ts +2 -2
  633. package/src/functions/isaacAPIClass.ts +2 -2
  634. package/src/functions/jsonHelpers.ts +7 -5
  635. package/src/functions/level.ts +3 -3
  636. package/src/functions/levelGrid.ts +9 -12
  637. package/src/functions/logEntities.ts +11 -8
  638. package/src/functions/logMisc.ts +9 -20
  639. package/src/functions/map.ts +4 -4
  640. package/src/functions/math.ts +4 -4
  641. package/src/functions/merge.ts +1 -1
  642. package/src/functions/minimap.ts +2 -6
  643. package/src/functions/newArray.ts +1 -1
  644. package/src/functions/nextStage.ts +14 -10
  645. package/src/functions/npcDataStructures.ts +5 -5
  646. package/src/functions/npcs.ts +13 -10
  647. package/src/functions/pickupVariants.ts +6 -6
  648. package/src/functions/playerCollectibles.ts +3 -5
  649. package/src/functions/playerDataStructures.ts +5 -5
  650. package/src/functions/playerHealth.ts +8 -8
  651. package/src/functions/playerIndex.ts +3 -3
  652. package/src/functions/players.ts +4 -4
  653. package/src/functions/pocketItems.ts +2 -2
  654. package/src/functions/positionVelocity.ts +4 -12
  655. package/src/functions/revive.ts +15 -15
  656. package/src/functions/rng.ts +4 -3
  657. package/src/functions/roomData.ts +1 -3
  658. package/src/functions/roomGrid.ts +2 -2
  659. package/src/functions/rooms.ts +55 -42
  660. package/src/functions/set.ts +8 -8
  661. package/src/functions/sort.ts +4 -4
  662. package/src/functions/sound.ts +2 -7
  663. package/src/functions/spawnCollectible.ts +4 -6
  664. package/src/functions/stage.ts +20 -30
  665. package/src/functions/string.ts +6 -6
  666. package/src/functions/tears.ts +2 -2
  667. package/src/functions/trinketGive.ts +4 -4
  668. package/src/functions/trinkets.ts +1 -3
  669. package/src/functions/tstlClass.ts +2 -2
  670. package/src/functions/types.ts +19 -19
  671. package/src/index.ts +58 -58
  672. package/src/interfaces/SaveData.ts +2 -1
  673. package/src/interfaces/private/AddCallbackParametersCustom.ts +7 -0
  674. package/src/lib/jsonLua.js +34 -34
  675. package/src/objects/LRoomShapeToRectangles.ts +1 -1
  676. package/src/objects/roomShapeToDoorSlotsToGridIndexDelta.ts +1 -1
  677. package/src/shouldFire.ts +55 -57
  678. package/src/types/AddSubtract.ts +10 -2
  679. package/src/types/HasFunction.ts +1 -1
  680. package/src/types/Immutable.ts +1 -1
  681. package/src/types/Increment.ts +2 -2
  682. package/src/types/PickingUpItem.ts +10 -3
  683. package/src/types/TupleWithLengthBetween.ts +2 -2
  684. package/src/types/TupleWithMaxLength.ts +2 -2
@@ -132,25 +132,25 @@ function ____exports.setPlayerHealth(self, player, playerHealth)
132
132
  addAmount = 1
133
133
  end
134
134
  repeat
135
- local ____switch70 = soulHeartType
136
- local ____cond70 = ____switch70 == HeartSubType.SOUL
137
- if ____cond70 then
135
+ local ____switch71 = soulHeartType
136
+ local ____cond71 = ____switch71 == HeartSubType.SOUL
137
+ if ____cond71 then
138
138
  do
139
139
  player:AddSoulHearts(addAmount)
140
140
  soulHeartsRemaining = soulHeartsRemaining - addAmount
141
141
  break
142
142
  end
143
143
  end
144
- ____cond70 = ____cond70 or ____switch70 == HeartSubType.BLACK
145
- if ____cond70 then
144
+ ____cond71 = ____cond71 or ____switch71 == HeartSubType.BLACK
145
+ if ____cond71 then
146
146
  do
147
147
  player:AddBlackHearts(addAmount)
148
148
  soulHeartsRemaining = soulHeartsRemaining - addAmount
149
149
  break
150
150
  end
151
151
  end
152
- ____cond70 = ____cond70 or ____switch70 == HeartSubType.BONE
153
- if ____cond70 then
152
+ ____cond71 = ____cond71 or ____switch71 == HeartSubType.BONE
153
+ if ____cond71 then
154
154
  do
155
155
  player:AddBoneHearts(addAmount)
156
156
  break
@@ -392,57 +392,57 @@ function ____exports.getPlayerHealth(self, player)
392
392
  end
393
393
  function ____exports.getPlayerHealthType(self, player, healthType)
394
394
  repeat
395
- local ____switch29 = healthType
396
- local ____cond29 = ____switch29 == HealthType.RED
397
- if ____cond29 then
395
+ local ____switch30 = healthType
396
+ local ____cond30 = ____switch30 == HealthType.RED
397
+ if ____cond30 then
398
398
  do
399
399
  return ____exports.getPlayerHearts(nil, player)
400
400
  end
401
401
  end
402
- ____cond29 = ____cond29 or ____switch29 == HealthType.SOUL
403
- if ____cond29 then
402
+ ____cond30 = ____cond30 or ____switch30 == HealthType.SOUL
403
+ if ____cond30 then
404
404
  do
405
405
  return ____exports.getPlayerSoulHearts(nil, player)
406
406
  end
407
407
  end
408
- ____cond29 = ____cond29 or ____switch29 == HealthType.ETERNAL
409
- if ____cond29 then
408
+ ____cond30 = ____cond30 or ____switch30 == HealthType.ETERNAL
409
+ if ____cond30 then
410
410
  do
411
411
  return player:GetEternalHearts()
412
412
  end
413
413
  end
414
- ____cond29 = ____cond29 or ____switch29 == HealthType.BLACK
415
- if ____cond29 then
414
+ ____cond30 = ____cond30 or ____switch30 == HealthType.BLACK
415
+ if ____cond30 then
416
416
  do
417
417
  return ____exports.getPlayerBlackHearts(nil, player)
418
418
  end
419
419
  end
420
- ____cond29 = ____cond29 or ____switch29 == HealthType.GOLDEN
421
- if ____cond29 then
420
+ ____cond30 = ____cond30 or ____switch30 == HealthType.GOLDEN
421
+ if ____cond30 then
422
422
  do
423
423
  return player:GetGoldenHearts()
424
424
  end
425
425
  end
426
- ____cond29 = ____cond29 or ____switch29 == HealthType.BONE
427
- if ____cond29 then
426
+ ____cond30 = ____cond30 or ____switch30 == HealthType.BONE
427
+ if ____cond30 then
428
428
  do
429
429
  return player:GetBoneHearts()
430
430
  end
431
431
  end
432
- ____cond29 = ____cond29 or ____switch29 == HealthType.ROTTEN
433
- if ____cond29 then
432
+ ____cond30 = ____cond30 or ____switch30 == HealthType.ROTTEN
433
+ if ____cond30 then
434
434
  do
435
435
  return player:GetRottenHearts()
436
436
  end
437
437
  end
438
- ____cond29 = ____cond29 or ____switch29 == HealthType.BROKEN
439
- if ____cond29 then
438
+ ____cond30 = ____cond30 or ____switch30 == HealthType.BROKEN
439
+ if ____cond30 then
440
440
  do
441
441
  return player:GetBrokenHearts()
442
442
  end
443
443
  end
444
- ____cond29 = ____cond29 or ____switch29 == HealthType.MAX_HEARTS
445
- if ____cond29 then
444
+ ____cond30 = ____cond30 or ____switch30 == HealthType.MAX_HEARTS
445
+ if ____cond30 then
446
446
  do
447
447
  return player:GetMaxHearts()
448
448
  end
@@ -1,6 +1,3 @@
1
- /// <reference types="isaac-typescript-definitions" />
2
- /// <reference types="isaac-typescript-definitions" />
3
- /// <reference types="isaac-typescript-definitions" />
4
1
  import type { PlayerIndex } from "../types/PlayerIndex";
5
2
  /**
6
3
  * Helper function to get every player with no restrictions, by using `Game.GetNumPlayers` and
@@ -1 +1 @@
1
- {"version":3,"file":"playerIndex.d.ts","sourceRoot":"","sources":["../../src/functions/playerIndex.ts"],"names":[],"mappings":";;;AAOA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAUxD;;;;;;GAMG;AACH,wBAAgB,aAAa,IAAI,SAAS,YAAY,EAAE,CAUvD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,YAAY,EAAE,CAM7E;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,WAAW,GACvB,YAAY,GAAG,SAAS,CAG1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,YAAY,EACpB,6BAA6B,UAAQ,GACpC,WAAW,CA8Bb;AAiBD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,YAAY,GACzB,GAAG,GAAG,SAAS,CAajB;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CACxB,0BAA0B,UAAQ,GACjC,SAAS,YAAY,EAAE,CASzB;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,eAAe,GACzB,YAAY,GAAG,SAAS,CAa1B;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAE3D;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAMzD"}
1
+ {"version":3,"file":"playerIndex.d.ts","sourceRoot":"","sources":["../../src/functions/playerIndex.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAUxD;;;;;;GAMG;AACH,wBAAgB,aAAa,IAAI,SAAS,YAAY,EAAE,CAUvD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,YAAY,EAAE,CAM7E;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,WAAW,GACvB,YAAY,GAAG,SAAS,CAG1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,YAAY,EACpB,6BAA6B,UAAQ,GACpC,WAAW,CA8Bb;AAiBD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,YAAY,GACzB,GAAG,GAAG,SAAS,CAajB;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CACxB,0BAA0B,UAAQ,GACjC,SAAS,YAAY,EAAE,CASzB;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,eAAe,GACzB,YAAY,GAAG,SAAS,CAa1B;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAE3D;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAMzD"}
@@ -1,6 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isFoundSoul = exports.isChildPlayer = exports.getSubPlayerParent = exports.getPlayers = exports.getPlayerIndexVanilla = exports.getPlayerIndex = exports.getPlayerFromIndex = exports.getOtherPlayers = exports.getAllPlayers = void 0;
3
+ exports.getAllPlayers = getAllPlayers;
4
+ exports.getOtherPlayers = getOtherPlayers;
5
+ exports.getPlayerFromIndex = getPlayerFromIndex;
6
+ exports.getPlayerIndex = getPlayerIndex;
7
+ exports.getPlayerIndexVanilla = getPlayerIndexVanilla;
8
+ exports.getPlayers = getPlayers;
9
+ exports.getSubPlayerParent = getSubPlayerParent;
10
+ exports.isChildPlayer = isChildPlayer;
11
+ exports.isFoundSoul = isFoundSoul;
4
12
  const isaac_typescript_definitions_1 = require("isaac-typescript-definitions");
5
13
  const cachedClasses_1 = require("../core/cachedClasses");
6
14
  const ReadonlySet_1 = require("../types/ReadonlySet");
@@ -25,7 +33,6 @@ function getAllPlayers() {
25
33
  }
26
34
  return players;
27
35
  }
28
- exports.getAllPlayers = getAllPlayers;
29
36
  /**
30
37
  * Helper function to get all of the other players in the room besides the one provided. (This
31
38
  * includes "child" players.)
@@ -35,7 +42,6 @@ function getOtherPlayers(player) {
35
42
  const players = getAllPlayers();
36
43
  return players.filter((otherPlayer) => GetPtrHash(otherPlayer) !== playerPtrHash);
37
44
  }
38
- exports.getOtherPlayers = getOtherPlayers;
39
45
  /**
40
46
  * Helper function to get the corresponding `EntityPlayer` object that corresponds to a
41
47
  * `PlayerIndex`.
@@ -44,7 +50,6 @@ function getPlayerFromIndex(playerIndex) {
44
50
  const players = getAllPlayers();
45
51
  return players.find((player) => getPlayerIndex(player) === playerIndex);
46
52
  }
47
- exports.getPlayerFromIndex = getPlayerFromIndex;
48
53
  /**
49
54
  * Mods often have to track variables relating to the player. In naive mods, information will only
50
55
  * be stored about the first player. However, in order to be robust, mods must handle up to 4
@@ -99,7 +104,6 @@ function getPlayerIndex(player, differentiateForgottenAndSoul = false) {
99
104
  const seed = collectibleRNG.GetSeed();
100
105
  return seed;
101
106
  }
102
- exports.getPlayerIndex = getPlayerIndex;
103
107
  function getPlayerIndexCollectibleType(player, differentiateForgottenAndSoul) {
104
108
  const character = player.GetPlayerType();
105
109
  if (character === isaac_typescript_definitions_1.PlayerType.SOUL) {
@@ -128,7 +132,6 @@ function getPlayerIndexVanilla(playerToFind) {
128
132
  }
129
133
  return undefined;
130
134
  }
131
- exports.getPlayerIndexVanilla = getPlayerIndexVanilla;
132
135
  /**
133
136
  * This function always excludes players with a non-undefined parent, since they are not real
134
137
  * players (e.g. the Strawman Keeper).
@@ -147,7 +150,6 @@ function getPlayers(performCharacterExclusions = false) {
147
150
  });
148
151
  return performCharacterExclusions ? nonChildPlayersFiltered : nonChildPlayers;
149
152
  }
150
- exports.getPlayers = getPlayers;
151
153
  /**
152
154
  * Helper function to get a parent `EntityPlayer` object for a given `EntitySubPlayer` object. This
153
155
  * is useful because calling the `EntityPlayer.GetSubPlayer` method on a sub-player object will
@@ -165,7 +167,6 @@ function getSubPlayerParent(subPlayer) {
165
167
  return thisPlayerSubPlayerPtrHash === subPlayerPtrHash;
166
168
  });
167
169
  }
168
- exports.getSubPlayerParent = getSubPlayerParent;
169
170
  /**
170
171
  * Helper function to detect if a particular player is a "child" player, meaning that they have a
171
172
  * non-undefined `EntityPlayer.Parent` field. (For example, the Strawman Keeper.)
@@ -173,14 +174,12 @@ exports.getSubPlayerParent = getSubPlayerParent;
173
174
  function isChildPlayer(player) {
174
175
  return player.Parent !== undefined;
175
176
  }
176
- exports.isChildPlayer = isChildPlayer;
177
177
  /**
178
178
  * Helper function to detect if a particular player is the Found Soul player provided by the
179
179
  * trinket.
180
180
  */
181
181
  function isFoundSoul(player) {
182
- return (isChildPlayer(player) &&
183
- player.Variant === isaac_typescript_definitions_1.PlayerVariant.COOP_BABY &&
184
- player.SubType === isaac_typescript_definitions_1.BabySubType.FOUND_SOUL);
182
+ return (isChildPlayer(player)
183
+ && player.Variant === isaac_typescript_definitions_1.PlayerVariant.COOP_BABY
184
+ && player.SubType === isaac_typescript_definitions_1.BabySubType.FOUND_SOUL);
185
185
  }
186
- exports.isFoundSoul = isFoundSoul;
@@ -1,6 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.removeTrinketCostume = exports.removeAllPlayerTrinkets = exports.hasTrinket = exports.hasOpenTrinketSlot = exports.hasAnyTrinket = exports.getPlayersWithTrinket = exports.getPlayerTrinkets = exports.getOpenTrinketSlot = exports.anyPlayerHasTrinket = exports.addTrinketCostume = void 0;
3
+ exports.addTrinketCostume = addTrinketCostume;
4
+ exports.anyPlayerHasTrinket = anyPlayerHasTrinket;
5
+ exports.getOpenTrinketSlot = getOpenTrinketSlot;
6
+ exports.getPlayerTrinkets = getPlayerTrinkets;
7
+ exports.getPlayersWithTrinket = getPlayersWithTrinket;
8
+ exports.hasAnyTrinket = hasAnyTrinket;
9
+ exports.hasOpenTrinketSlot = hasOpenTrinketSlot;
10
+ exports.hasTrinket = hasTrinket;
11
+ exports.removeAllPlayerTrinkets = removeAllPlayerTrinkets;
12
+ exports.removeTrinketCostume = removeTrinketCostume;
4
13
  const isaac_typescript_definitions_1 = require("isaac-typescript-definitions");
5
14
  const cachedEnumValues_1 = require("../cachedEnumValues");
6
15
  const cachedClasses_1 = require("../core/cachedClasses");
@@ -13,7 +22,6 @@ function addTrinketCostume(player, trinketType) {
13
22
  }
14
23
  player.AddCostume(itemConfigTrinket, false);
15
24
  }
16
- exports.addTrinketCostume = addTrinketCostume;
17
25
  /**
18
26
  * Helper function to check to see if any player has a particular trinket.
19
27
  *
@@ -25,7 +33,6 @@ function anyPlayerHasTrinket(trinketType, ignoreModifiers) {
25
33
  const players = (0, playerIndex_1.getAllPlayers)();
26
34
  return players.some((player) => player.HasTrinket(trinketType, ignoreModifiers));
27
35
  }
28
- exports.anyPlayerHasTrinket = anyPlayerHasTrinket;
29
36
  /**
30
37
  * Returns the slot number corresponding to where a trinket can be safely inserted.
31
38
  *
@@ -55,7 +62,6 @@ function getOpenTrinketSlot(player) {
55
62
  }
56
63
  error(`The player has an unknown number of trinket slots: ${maxTrinkets}`);
57
64
  }
58
- exports.getOpenTrinketSlot = getOpenTrinketSlot;
59
65
  /**
60
66
  * Helper function to get all of the trinkets that the player is currently holding. This will not
61
67
  * include any smelted trinkets.
@@ -70,7 +76,6 @@ function getPlayerTrinkets(player) {
70
76
  }
71
77
  return trinketTypes;
72
78
  }
73
- exports.getPlayerTrinkets = getPlayerTrinkets;
74
79
  /**
75
80
  * Helper function to get only the players that have a certain trinket.
76
81
  *
@@ -81,13 +86,11 @@ function getPlayersWithTrinket(...trinketTypes) {
81
86
  const players = (0, playerIndex_1.getPlayers)();
82
87
  return players.filter((player) => trinketTypes.every((trinketType) => player.HasTrinket(trinketType)));
83
88
  }
84
- exports.getPlayersWithTrinket = getPlayersWithTrinket;
85
89
  /** Helper function to check to see if the player is holding one or more trinkets. */
86
90
  function hasAnyTrinket(player) {
87
91
  const playerTrinketTypes = cachedEnumValues_1.TRINKET_SLOT_VALUES.map((trinketSlot) => player.GetTrinket(trinketSlot));
88
92
  return playerTrinketTypes.some((trinketType) => trinketType !== isaac_typescript_definitions_1.TrinketType.NULL);
89
93
  }
90
- exports.hasAnyTrinket = hasAnyTrinket;
91
94
  /**
92
95
  * Returns whether the player can hold an additional trinket, beyond what they are currently
93
96
  * carrying. This takes into account items that modify the max number of trinkets, like Mom's Purse.
@@ -102,7 +105,6 @@ function hasOpenTrinketSlot(player) {
102
105
  const openTrinketSlot = getOpenTrinketSlot(player);
103
106
  return openTrinketSlot !== undefined;
104
107
  }
105
- exports.hasOpenTrinketSlot = hasOpenTrinketSlot;
106
108
  /**
107
109
  * Helper function to check to see if a player has one or more trinkets.
108
110
  *
@@ -114,7 +116,6 @@ exports.hasOpenTrinketSlot = hasOpenTrinketSlot;
114
116
  function hasTrinket(player, ...trinketTypes) {
115
117
  return trinketTypes.some((trinketType) => player.HasTrinket(trinketType));
116
118
  }
117
- exports.hasTrinket = hasTrinket;
118
119
  /**
119
120
  * Helper function to remove all of the held trinkets from a player.
120
121
  *
@@ -134,7 +135,6 @@ function removeAllPlayerTrinkets(player) {
134
135
  } while (alreadyHasTrinket);
135
136
  }
136
137
  }
137
- exports.removeAllPlayerTrinkets = removeAllPlayerTrinkets;
138
138
  /**
139
139
  * Helper function to remove a trinket costume from a player. Use this helper function to avoid
140
140
  * having to request the trinket from the item config.
@@ -146,4 +146,3 @@ function removeTrinketCostume(player, trinketType) {
146
146
  }
147
147
  player.RemoveCostume(itemConfigTrinket);
148
148
  }
149
- exports.removeTrinketCostume = removeTrinketCostume;
@@ -1,6 +1,42 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setBlindfold = exports.removeDeadEyeMultiplier = exports.isVanillaPlayer = exports.isTaintedLazarus = exports.isTainted = exports.isPlayerAbleToAim = exports.isModdedPlayer = exports.isLost = exports.isKeeper = exports.isJacobOrEsau = exports.isFirstPlayer = exports.isEden = exports.isDamageFromPlayer = exports.isCharacter = exports.isBethany = exports.hasSpectral = exports.hasPiercing = exports.hasLostCurse = exports.hasHoming = exports.hasForm = exports.getPlayersWithControllerIndex = exports.getPlayersOnKeyboard = exports.getPlayersOfType = exports.getPlayerNumHitsRemaining = exports.getPlayerName = exports.getPlayerFromPtr = exports.getPlayerFromEntity = exports.getPlayerCloserThan = exports.getNewestPlayer = exports.getFinalPlayer = exports.getClosestPlayer = exports.getCharacters = exports.getAzazelBrimstoneDistance = exports.dequeueItem = exports.canPlayerCrushRocks = exports.anyPlayerIs = exports.anyPlayerHoldingItem = void 0;
3
+ exports.anyPlayerHoldingItem = anyPlayerHoldingItem;
4
+ exports.anyPlayerIs = anyPlayerIs;
5
+ exports.canPlayerCrushRocks = canPlayerCrushRocks;
6
+ exports.dequeueItem = dequeueItem;
7
+ exports.getAzazelBrimstoneDistance = getAzazelBrimstoneDistance;
8
+ exports.getCharacters = getCharacters;
9
+ exports.getClosestPlayer = getClosestPlayer;
10
+ exports.getFinalPlayer = getFinalPlayer;
11
+ exports.getNewestPlayer = getNewestPlayer;
12
+ exports.getPlayerCloserThan = getPlayerCloserThan;
13
+ exports.getPlayerFromEntity = getPlayerFromEntity;
14
+ exports.getPlayerFromPtr = getPlayerFromPtr;
15
+ exports.getPlayerName = getPlayerName;
16
+ exports.getPlayerNumHitsRemaining = getPlayerNumHitsRemaining;
17
+ exports.getPlayersOfType = getPlayersOfType;
18
+ exports.getPlayersOnKeyboard = getPlayersOnKeyboard;
19
+ exports.getPlayersWithControllerIndex = getPlayersWithControllerIndex;
20
+ exports.hasForm = hasForm;
21
+ exports.hasHoming = hasHoming;
22
+ exports.hasLostCurse = hasLostCurse;
23
+ exports.hasPiercing = hasPiercing;
24
+ exports.hasSpectral = hasSpectral;
25
+ exports.isBethany = isBethany;
26
+ exports.isCharacter = isCharacter;
27
+ exports.isDamageFromPlayer = isDamageFromPlayer;
28
+ exports.isEden = isEden;
29
+ exports.isFirstPlayer = isFirstPlayer;
30
+ exports.isJacobOrEsau = isJacobOrEsau;
31
+ exports.isKeeper = isKeeper;
32
+ exports.isLost = isLost;
33
+ exports.isModdedPlayer = isModdedPlayer;
34
+ exports.isPlayerAbleToAim = isPlayerAbleToAim;
35
+ exports.isTainted = isTainted;
36
+ exports.isTaintedLazarus = isTaintedLazarus;
37
+ exports.isVanillaPlayer = isVanillaPlayer;
38
+ exports.removeDeadEyeMultiplier = removeDeadEyeMultiplier;
39
+ exports.setBlindfold = setBlindfold;
4
40
  const isaac_typescript_definitions_1 = require("isaac-typescript-definitions");
5
41
  const cachedClasses_1 = require("../core/cachedClasses");
6
42
  const ReadonlySet_1 = require("../types/ReadonlySet");
@@ -17,7 +53,6 @@ function anyPlayerHoldingItem() {
17
53
  const players = (0, playerIndex_1.getAllPlayers)();
18
54
  return players.some((player) => player.IsHoldingItem());
19
55
  }
20
- exports.anyPlayerHoldingItem = anyPlayerHoldingItem;
21
56
  /**
22
57
  * Helper function to determine if the given character is present.
23
58
  *
@@ -29,7 +64,6 @@ function anyPlayerIs(...matchingCharacters) {
29
64
  const characters = getCharacters();
30
65
  return characters.some((character) => matchingCharacterSet.has(character));
31
66
  }
32
- exports.anyPlayerIs = anyPlayerIs;
33
67
  /**
34
68
  * Helper function to determine if a player will destroy a rock/pot/skull if they walk over it.
35
69
  *
@@ -41,12 +75,11 @@ exports.anyPlayerIs = anyPlayerIs;
41
75
  */
42
76
  function canPlayerCrushRocks(player) {
43
77
  const effects = player.GetEffects();
44
- return (player.HasCollectible(isaac_typescript_definitions_1.CollectibleType.LEO) ||
45
- player.HasCollectible(isaac_typescript_definitions_1.CollectibleType.THUNDER_THIGHS) ||
46
- effects.HasCollectibleEffect(isaac_typescript_definitions_1.CollectibleType.MEGA_MUSH) ||
47
- player.HasPlayerForm(isaac_typescript_definitions_1.PlayerForm.STOMPY));
78
+ return (player.HasCollectible(isaac_typescript_definitions_1.CollectibleType.LEO)
79
+ || player.HasCollectible(isaac_typescript_definitions_1.CollectibleType.THUNDER_THIGHS)
80
+ || effects.HasCollectibleEffect(isaac_typescript_definitions_1.CollectibleType.MEGA_MUSH)
81
+ || player.HasPlayerForm(isaac_typescript_definitions_1.PlayerForm.STOMPY));
48
82
  }
49
- exports.canPlayerCrushRocks = canPlayerCrushRocks;
50
83
  /**
51
84
  * Helper function to remove a collectible or trinket that is currently queued to go into a player's
52
85
  * inventory (i.e. the item is being held over their head).
@@ -70,7 +103,6 @@ function dequeueItem(player) {
70
103
  player.QueuedItem = queue;
71
104
  return true;
72
105
  }
73
- exports.dequeueItem = dequeueItem;
74
106
  /**
75
107
  * Helper function to get how long Azazel's Brimstone laser should be. You can pass either an
76
108
  * `EntityPlayer` object or a tear height stat.
@@ -83,13 +115,11 @@ function getAzazelBrimstoneDistance(playerOrTearHeight) {
83
115
  : playerOrTearHeight.TearHeight;
84
116
  return 32 - 2.5 * tearHeight;
85
117
  }
86
- exports.getAzazelBrimstoneDistance = getAzazelBrimstoneDistance;
87
118
  /** Helper function to get an array containing the characters of all of the current players. */
88
119
  function getCharacters() {
89
120
  const players = (0, playerIndex_1.getPlayers)();
90
121
  return players.map((player) => player.GetPlayerType());
91
122
  }
92
- exports.getCharacters = getCharacters;
93
123
  /**
94
124
  * Helper function to get the closest player to a certain position. Note that this will never
95
125
  * include players with a non-undefined parent, since they are not real players (e.g. the Strawman
@@ -108,7 +138,6 @@ function getClosestPlayer(position) {
108
138
  (0, utils_1.assertDefined)(closestPlayer, "Failed to find the closest player.");
109
139
  return closestPlayer;
110
140
  }
111
- exports.getClosestPlayer = getClosestPlayer;
112
141
  /**
113
142
  * Helper function to return the player with the highest ID, according to the `Isaac.GetPlayer`
114
143
  * method.
@@ -119,7 +148,6 @@ function getFinalPlayer() {
119
148
  (0, utils_1.assertDefined)(lastPlayer, "Failed to get the final player since there were 0 players.");
120
149
  return lastPlayer;
121
150
  }
122
- exports.getFinalPlayer = getFinalPlayer;
123
151
  /**
124
152
  * Helper function to get the first player with the lowest frame count. Useful to find a freshly
125
153
  * spawned player after using items like Esau Jr. Don't use this function if two or more players
@@ -137,7 +165,6 @@ function getNewestPlayer() {
137
165
  (0, utils_1.assertDefined)(newestPlayer, "Failed to find the newest player.");
138
166
  return newestPlayer;
139
167
  }
140
- exports.getNewestPlayer = getNewestPlayer;
141
168
  /**
142
169
  * Iterates over all players and checks if any are close enough to the specified position.
143
170
  *
@@ -147,7 +174,6 @@ function getPlayerCloserThan(position, distance) {
147
174
  const players = (0, playerIndex_1.getPlayers)();
148
175
  return players.find((player) => player.Position.Distance(position) <= distance);
149
176
  }
150
- exports.getPlayerCloserThan = getPlayerCloserThan;
151
177
  /**
152
178
  * Helper function to get the player from a tear, laser, bomb, etc. Returns undefined if the entity
153
179
  * does not correspond to any particular player.
@@ -178,7 +204,6 @@ function getPlayerFromEntity(entity) {
178
204
  }
179
205
  return entity.ToPlayer();
180
206
  }
181
- exports.getPlayerFromEntity = getPlayerFromEntity;
182
207
  /**
183
208
  * Helper function to get an `EntityPlayer` object from an `EntityPtr`. Returns undefined if the
184
209
  * entity has gone out of scope or if the associated entity is not a player.
@@ -190,7 +215,6 @@ function getPlayerFromPtr(entityPtr) {
190
215
  }
191
216
  return entity.ToPlayer();
192
217
  }
193
- exports.getPlayerFromPtr = getPlayerFromPtr;
194
218
  /**
195
219
  * Helper function to get the proper name of the player. Use this instead of the
196
220
  * `EntityPlayer.GetName` method because it accounts for Blue Baby, Lazarus II, and Tainted
@@ -203,7 +227,6 @@ function getPlayerName(player) {
203
227
  ? player.GetName()
204
228
  : (0, characters_1.getCharacterName)(character);
205
229
  }
206
- exports.getPlayerName = getPlayerName;
207
230
  /**
208
231
  * Returns the combined value of all of the player's red hearts, soul/black hearts, and bone hearts,
209
232
  * minus the value of the player's rotten hearts.
@@ -221,7 +244,6 @@ function getPlayerNumHitsRemaining(player) {
221
244
  const rottenHearts = player.GetRottenHearts();
222
245
  return hearts + soulHearts + boneHearts + eternalHearts - rottenHearts;
223
246
  }
224
- exports.getPlayerNumHitsRemaining = getPlayerNumHitsRemaining;
225
247
  /**
226
248
  * Helper function to get all of the players that are a certain character.
227
249
  *
@@ -236,7 +258,6 @@ function getPlayersOfType(...characters) {
236
258
  return charactersSet.has(character);
237
259
  });
238
260
  }
239
- exports.getPlayersOfType = getPlayersOfType;
240
261
  /**
241
262
  * Helper function to get all of the players that are using keyboard (i.e.
242
263
  * `ControllerIndex.KEYBOARD`). This function returns an array of players because it is possible
@@ -249,7 +270,6 @@ function getPlayersOnKeyboard() {
249
270
  const players = (0, playerIndex_1.getAllPlayers)();
250
271
  return players.filter((player) => player.ControllerIndex === isaac_typescript_definitions_1.ControllerIndex.KEYBOARD);
251
272
  }
252
- exports.getPlayersOnKeyboard = getPlayersOnKeyboard;
253
273
  /**
254
274
  * Helper function to get all of the players that match the provided controller index. This function
255
275
  * returns an array of players because it is possible that there is more than one player with the
@@ -262,7 +282,6 @@ function getPlayersWithControllerIndex(controllerIndex) {
262
282
  const players = (0, playerIndex_1.getAllPlayers)();
263
283
  return players.filter((player) => player.ControllerIndex === controllerIndex);
264
284
  }
265
- exports.getPlayersWithControllerIndex = getPlayersWithControllerIndex;
266
285
  /**
267
286
  * Helper function to check to see if a player has one or more transformations.
268
287
  *
@@ -272,7 +291,6 @@ exports.getPlayersWithControllerIndex = getPlayersWithControllerIndex;
272
291
  function hasForm(player, ...playerForms) {
273
292
  return playerForms.some((playerForm) => player.HasPlayerForm(playerForm));
274
293
  }
275
- exports.hasForm = hasForm;
276
294
  /**
277
295
  * Helper function to check if a player has homing tears.
278
296
  *
@@ -281,13 +299,11 @@ exports.hasForm = hasForm;
281
299
  function hasHoming(player) {
282
300
  return (0, flag_1.hasFlag)(player.TearFlags, isaac_typescript_definitions_1.TearFlag.HOMING);
283
301
  }
284
- exports.hasHoming = hasHoming;
285
302
  /** After touching a white fire, a player will turn into The Lost until they clear a room. */
286
303
  function hasLostCurse(player) {
287
304
  const effects = player.GetEffects();
288
305
  return effects.HasNullEffect(isaac_typescript_definitions_1.NullItemID.LOST_CURSE);
289
306
  }
290
- exports.hasLostCurse = hasLostCurse;
291
307
  /**
292
308
  * Helper function to check if a player has piercing tears.
293
309
  *
@@ -297,7 +313,6 @@ exports.hasLostCurse = hasLostCurse;
297
313
  function hasPiercing(player) {
298
314
  return (0, flag_1.hasFlag)(player.TearFlags, isaac_typescript_definitions_1.TearFlag.PIERCING);
299
315
  }
300
- exports.hasPiercing = hasPiercing;
301
316
  /**
302
317
  * Helper function to check if a player has spectral tears.
303
318
  *
@@ -307,7 +322,6 @@ exports.hasPiercing = hasPiercing;
307
322
  function hasSpectral(player) {
308
323
  return (0, flag_1.hasFlag)(player.TearFlags, isaac_typescript_definitions_1.TearFlag.SPECTRAL);
309
324
  }
310
- exports.hasSpectral = hasSpectral;
311
325
  /**
312
326
  * Helper function for detecting when a player is Bethany or Tainted Bethany. This is useful if you
313
327
  * need to adjust UI elements to account for Bethany's soul charges or Tainted Bethany's blood
@@ -317,7 +331,6 @@ function isBethany(player) {
317
331
  const character = player.GetPlayerType();
318
332
  return character === isaac_typescript_definitions_1.PlayerType.BETHANY || character === isaac_typescript_definitions_1.PlayerType.BETHANY_B;
319
333
  }
320
- exports.isBethany = isBethany;
321
334
  /**
322
335
  * Helper function to check if a player is a specific character (i.e. `PlayerType`).
323
336
  *
@@ -329,7 +342,6 @@ function isCharacter(player, ...characters) {
329
342
  const character = player.GetPlayerType();
330
343
  return characterSet.has(character);
331
344
  }
332
- exports.isCharacter = isCharacter;
333
345
  /**
334
346
  * Helper function to see if a damage source is from a player. Use this instead of comparing to the
335
347
  * entity directly because it takes familiars into account.
@@ -342,7 +354,6 @@ function isDamageFromPlayer(damageSource) {
342
354
  const indirectPlayer = getPlayerFromEntity(damageSource);
343
355
  return indirectPlayer !== undefined;
344
356
  }
345
- exports.isDamageFromPlayer = isDamageFromPlayer;
346
357
  /**
347
358
  * Helper function for detecting when a player is Eden or Tainted Eden. Useful for situations where
348
359
  * you want to know if the starting stats were randomized, for example.
@@ -351,11 +362,9 @@ function isEden(player) {
351
362
  const character = player.GetPlayerType();
352
363
  return character === isaac_typescript_definitions_1.PlayerType.EDEN || character === isaac_typescript_definitions_1.PlayerType.EDEN_B;
353
364
  }
354
- exports.isEden = isEden;
355
365
  function isFirstPlayer(player) {
356
366
  return (0, playerIndex_1.getPlayerIndexVanilla)(player) === 0;
357
367
  }
358
- exports.isFirstPlayer = isFirstPlayer;
359
368
  /**
360
369
  * Helper function for detecting when a player is Jacob or Esau. This will only match the
361
370
  * non-tainted versions of these characters.
@@ -364,7 +373,6 @@ function isJacobOrEsau(player) {
364
373
  const character = player.GetPlayerType();
365
374
  return character === isaac_typescript_definitions_1.PlayerType.JACOB || character === isaac_typescript_definitions_1.PlayerType.ESAU;
366
375
  }
367
- exports.isJacobOrEsau = isJacobOrEsau;
368
376
  /**
369
377
  * Helper function for detecting when a player is Keeper or Tainted Keeper. Useful for situations
370
378
  * where you want to know if the health is coin hearts, for example.
@@ -373,17 +381,14 @@ function isKeeper(player) {
373
381
  const character = player.GetPlayerType();
374
382
  return character === isaac_typescript_definitions_1.PlayerType.KEEPER || character === isaac_typescript_definitions_1.PlayerType.KEEPER_B;
375
383
  }
376
- exports.isKeeper = isKeeper;
377
384
  /** Helper function for detecting when a player is The Lost or Tainted Lost. */
378
385
  function isLost(player) {
379
386
  const character = player.GetPlayerType();
380
387
  return character === isaac_typescript_definitions_1.PlayerType.LOST || character === isaac_typescript_definitions_1.PlayerType.LOST_B;
381
388
  }
382
- exports.isLost = isLost;
383
389
  function isModdedPlayer(player) {
384
390
  return !isVanillaPlayer(player);
385
391
  }
386
- exports.isModdedPlayer = isModdedPlayer;
387
392
  /**
388
393
  * Helper function for determining if a player is able to turn their head by pressing the shooting
389
394
  * buttons.
@@ -393,7 +398,6 @@ exports.isModdedPlayer = isModdedPlayer;
393
398
  function isPlayerAbleToAim(player) {
394
399
  return player.IsExtraAnimationFinished();
395
400
  }
396
- exports.isPlayerAbleToAim = isPlayerAbleToAim;
397
401
  /** Helper function for detecting if a player is one of the Tainted characters. */
398
402
  function isTainted(player) {
399
403
  const character = player.GetPlayerType();
@@ -401,18 +405,15 @@ function isTainted(player) {
401
405
  ? character >= isaac_typescript_definitions_1.PlayerType.ISAAC_B
402
406
  : isTaintedModded(player);
403
407
  }
404
- exports.isTainted = isTainted;
405
408
  /** Helper function for detecting when a player is Tainted Lazarus or Dead Tainted Lazarus. */
406
409
  function isTaintedLazarus(player) {
407
410
  const character = player.GetPlayerType();
408
411
  return (character === isaac_typescript_definitions_1.PlayerType.LAZARUS_B || character === isaac_typescript_definitions_1.PlayerType.LAZARUS_2_B);
409
412
  }
410
- exports.isTaintedLazarus = isTaintedLazarus;
411
413
  function isVanillaPlayer(player) {
412
414
  const character = player.GetPlayerType();
413
415
  return (0, characters_1.isVanillaCharacter)(character);
414
416
  }
415
- exports.isVanillaPlayer = isVanillaPlayer;
416
417
  /**
417
418
  * Helper function to remove the Dead Eye multiplier from a player.
418
419
  *
@@ -424,7 +425,6 @@ function removeDeadEyeMultiplier(player) {
424
425
  player.ClearDeadEyeCharge();
425
426
  });
426
427
  }
427
- exports.removeDeadEyeMultiplier = removeDeadEyeMultiplier;
428
428
  /**
429
429
  * Helper function to blindfold the player by using a hack with the challenge variable.
430
430
  *
@@ -460,7 +460,6 @@ function setBlindfold(player, enabled, modifyCostume = true) {
460
460
  }
461
461
  }
462
462
  }
463
- exports.setBlindfold = setBlindfold;
464
463
  /** Not exported since end-users should use the `isTainted` helper function directly. */
465
464
  function isTaintedModded(player) {
466
465
  // This algorithm only works for modded characters because the `Isaac.GetPlayerTypeByName` method