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
@@ -1,6 +1,41 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.spawnVoidPortal = exports.spawnGridEntityWithVariant = exports.spawnGridEntity = exports.spawnGiantPoop = exports.setGridEntityType = exports.setGridEntityInvisible = exports.removeGridEntity = exports.removeGridEntities = exports.removeEntitiesSpawnedFromGridEntity = exports.removeAllMatchingGridEntities = exports.removeAllGridEntitiesExcept = exports.isPostBossVoidPortal = exports.isPoopGridEntityXMLType = exports.isGridIndexAdjacentToDoor = exports.isGridEntityXMLType = exports.isGridEntityBroken = exports.isGridEntityBreakableByExplosion = exports.getTopLeftWallGridIndex = exports.getTopLeftWall = exports.getSurroundingGridIndexes = exports.getSurroundingGridEntities = exports.getRockPNGPath = exports.getMatchingGridEntities = exports.getGridEntityIDFromConstituents = exports.getGridEntityID = exports.getGridEntityCollisionPoints = exports.getGridEntityANM2Path = exports.getGridEntitiesMap = exports.getGridEntitiesInRadius = exports.getGridEntitiesExcept = exports.getGridEntities = exports.getConstituentsFromGridEntityID = exports.getCollidingEntitiesWithGridEntity = exports.getAllGridIndexes = exports.doesGridEntityExist = exports.convertXMLGridEntityType = void 0;
3
+ exports.convertXMLGridEntityType = convertXMLGridEntityType;
4
+ exports.doesGridEntityExist = doesGridEntityExist;
5
+ exports.getAllGridIndexes = getAllGridIndexes;
6
+ exports.getCollidingEntitiesWithGridEntity = getCollidingEntitiesWithGridEntity;
7
+ exports.getConstituentsFromGridEntityID = getConstituentsFromGridEntityID;
8
+ exports.getGridEntities = getGridEntities;
9
+ exports.getGridEntitiesExcept = getGridEntitiesExcept;
10
+ exports.getGridEntitiesInRadius = getGridEntitiesInRadius;
11
+ exports.getGridEntitiesMap = getGridEntitiesMap;
12
+ exports.getGridEntityANM2Path = getGridEntityANM2Path;
13
+ exports.getGridEntityCollisionPoints = getGridEntityCollisionPoints;
14
+ exports.getGridEntityID = getGridEntityID;
15
+ exports.getGridEntityIDFromConstituents = getGridEntityIDFromConstituents;
16
+ exports.getMatchingGridEntities = getMatchingGridEntities;
17
+ exports.getRockPNGPath = getRockPNGPath;
18
+ exports.getSurroundingGridEntities = getSurroundingGridEntities;
19
+ exports.getSurroundingGridIndexes = getSurroundingGridIndexes;
20
+ exports.getTopLeftWall = getTopLeftWall;
21
+ exports.getTopLeftWallGridIndex = getTopLeftWallGridIndex;
22
+ exports.isGridEntityBreakableByExplosion = isGridEntityBreakableByExplosion;
23
+ exports.isGridEntityBroken = isGridEntityBroken;
24
+ exports.isGridEntityXMLType = isGridEntityXMLType;
25
+ exports.isGridIndexAdjacentToDoor = isGridIndexAdjacentToDoor;
26
+ exports.isPoopGridEntityXMLType = isPoopGridEntityXMLType;
27
+ exports.isPostBossVoidPortal = isPostBossVoidPortal;
28
+ exports.removeAllGridEntitiesExcept = removeAllGridEntitiesExcept;
29
+ exports.removeAllMatchingGridEntities = removeAllMatchingGridEntities;
30
+ exports.removeEntitiesSpawnedFromGridEntity = removeEntitiesSpawnedFromGridEntity;
31
+ exports.removeGridEntities = removeGridEntities;
32
+ exports.removeGridEntity = removeGridEntity;
33
+ exports.setGridEntityInvisible = setGridEntityInvisible;
34
+ exports.setGridEntityType = setGridEntityType;
35
+ exports.spawnGiantPoop = spawnGiantPoop;
36
+ exports.spawnGridEntity = spawnGridEntity;
37
+ exports.spawnGridEntityWithVariant = spawnGridEntityWithVariant;
38
+ exports.spawnVoidPortal = spawnVoidPortal;
4
39
  const isaac_typescript_definitions_1 = require("isaac-typescript-definitions");
5
40
  const cachedEnumValues_1 = require("../cachedEnumValues");
6
41
  const cachedClasses_1 = require("../core/cachedClasses");
@@ -58,7 +93,6 @@ function convertXMLGridEntityType(gridEntityXMLType, gridEntityXMLVariant) {
58
93
  : gridEntityArray[1];
59
94
  return [gridEntityType, variant];
60
95
  }
61
- exports.convertXMLGridEntityType = convertXMLGridEntityType;
62
96
  /**
63
97
  * Helper function to check if one or more of a specific kind of grid entity is present in the
64
98
  * current room.
@@ -76,11 +110,10 @@ function doesGridEntityExist(gridEntityType, variant = -1) {
76
110
  }
77
111
  const thisGridEntityType = gridEntity.GetType();
78
112
  const thisVariant = gridEntity.GetVariant();
79
- return (gridEntityType === thisGridEntityType &&
80
- (variant === -1 || variant === thisVariant));
113
+ return (gridEntityType === thisGridEntityType
114
+ && (variant === -1 || variant === thisVariant));
81
115
  });
82
116
  }
83
- exports.doesGridEntityExist = doesGridEntityExist;
84
117
  /**
85
118
  * Helper function to get every legal grid index for the current room.
86
119
  *
@@ -91,7 +124,6 @@ function getAllGridIndexes() {
91
124
  const gridSize = room.GetGridSize();
92
125
  return (0, utils_1.eRange)(gridSize);
93
126
  }
94
- exports.getAllGridIndexes = getAllGridIndexes;
95
127
  /**
96
128
  * Gets the entities that have a hitbox that overlaps with any part of the square that the grid
97
129
  * entity is on.
@@ -105,13 +137,12 @@ exports.getAllGridIndexes = getAllGridIndexes;
105
137
  function getCollidingEntitiesWithGridEntity(gridEntity) {
106
138
  const { topLeft, bottomRight } = getGridEntityCollisionPoints(gridEntity);
107
139
  const closeEntities = Isaac.FindInRadius(gridEntity.Position, constants_1.DISTANCE_OF_GRID_TILE * 2);
108
- return closeEntities.filter((entity) => entity.CollidesWithGrid() &&
109
- (0, math_1.isCircleIntersectingRectangle)(entity.Position,
140
+ return closeEntities.filter((entity) => entity.CollidesWithGrid()
141
+ && (0, math_1.isCircleIntersectingRectangle)(entity.Position,
110
142
  // We arbitrarily add 0.1 to account for entities that are already pushed back by the time
111
143
  // the `POST_UPDATE` callback fires.
112
144
  entity.Size + 0.1, topLeft, bottomRight));
113
145
  }
114
- exports.getCollidingEntitiesWithGridEntity = getCollidingEntitiesWithGridEntity;
115
146
  /** Helper function to get the grid entity type and variant from a `GridEntityID`. */
116
147
  function getConstituentsFromGridEntityID(gridEntityID) {
117
148
  const parts = gridEntityID.split(".");
@@ -127,7 +158,6 @@ function getConstituentsFromGridEntityID(gridEntityID) {
127
158
  (0, utils_1.assertDefined)(variant, `Failed to convert the grid entity variant to an integer: ${variantString}`);
128
159
  return [gridEntityType, variant];
129
160
  }
130
- exports.getConstituentsFromGridEntityID = getConstituentsFromGridEntityID;
131
161
  /**
132
162
  * Helper function to get every grid entity in the current room.
133
163
  *
@@ -165,7 +195,6 @@ function getGridEntities(...gridEntityTypes) {
165
195
  return gridEntityTypesSet.has(gridEntityType);
166
196
  });
167
197
  }
168
- exports.getGridEntities = getGridEntities;
169
198
  /**
170
199
  * Helper function to get every grid entity in the current room except for certain specific types.
171
200
  *
@@ -183,7 +212,6 @@ function getGridEntitiesExcept(...gridEntityTypes) {
183
212
  return !gridEntityTypesSet.has(gridEntityType);
184
213
  });
185
214
  }
186
- exports.getGridEntitiesExcept = getGridEntitiesExcept;
187
215
  function getAllGridEntities() {
188
216
  const room = cachedClasses_1.game.GetRoom();
189
217
  const gridEntities = [];
@@ -223,7 +251,6 @@ function getGridEntitiesInRadius(targetPosition, radius) {
223
251
  }
224
252
  return gridEntities;
225
253
  }
226
- exports.getGridEntitiesInRadius = getGridEntitiesInRadius;
227
254
  /**
228
255
  * Helper function to get a map of every grid entity in the current room. The indexes of the map are
229
256
  * equal to the grid index. The values of the map are equal to the grid entities.
@@ -242,13 +269,11 @@ function getGridEntitiesMap(...gridEntityTypes) {
242
269
  }
243
270
  return gridEntityMap;
244
271
  }
245
- exports.getGridEntitiesMap = getGridEntitiesMap;
246
272
  /** Helper function to get the ANM2 path for a grid entity type. */
247
273
  function getGridEntityANM2Path(gridEntityType) {
248
274
  const gridEntityANM2Name = getGridEntityANM2Name(gridEntityType);
249
275
  return `gfx/grid/${gridEntityANM2Name}`;
250
276
  }
251
- exports.getGridEntityANM2Path = getGridEntityANM2Path;
252
277
  function getGridEntityANM2Name(gridEntityType) {
253
278
  switch (gridEntityType) {
254
279
  // 1
@@ -363,14 +388,12 @@ function getGridEntityCollisionPoints(gridEntity) {
363
388
  const bottomRight = Vector(gridEntity.Position.X + constants_1.DISTANCE_OF_GRID_TILE / 2, gridEntity.Position.Y + constants_1.DISTANCE_OF_GRID_TILE / 2);
364
389
  return { topLeft, bottomRight };
365
390
  }
366
- exports.getGridEntityCollisionPoints = getGridEntityCollisionPoints;
367
391
  /** Helper function to get a string containing the grid entity's type and variant. */
368
392
  function getGridEntityID(gridEntity) {
369
393
  const gridEntityType = gridEntity.GetType();
370
394
  const variant = gridEntity.GetVariant();
371
395
  return `${gridEntityType}.${variant}`;
372
396
  }
373
- exports.getGridEntityID = getGridEntityID;
374
397
  /**
375
398
  * Helper function to get a formatted string in the format returned by the `getGridEntityID`
376
399
  * function.
@@ -378,7 +401,6 @@ exports.getGridEntityID = getGridEntityID;
378
401
  function getGridEntityIDFromConstituents(gridEntityType, variant) {
379
402
  return `${gridEntityType}.${variant}`;
380
403
  }
381
- exports.getGridEntityIDFromConstituents = getGridEntityIDFromConstituents;
382
404
  /**
383
405
  * Helper function to get all of the grid entities in the room that specifically match the type and
384
406
  * variant provided.
@@ -389,7 +411,6 @@ function getMatchingGridEntities(gridEntityType, variant) {
389
411
  const gridEntities = getGridEntities(gridEntityType);
390
412
  return gridEntities.filter((gridEntity) => gridEntity.GetVariant() === variant);
391
413
  }
392
- exports.getMatchingGridEntities = getMatchingGridEntities;
393
414
  /**
394
415
  * Helper function to get the PNG path for a rock. This depends on the current room's backdrop. The
395
416
  * values are taken from the "backdrops.xml" file.
@@ -400,7 +421,6 @@ function getRockPNGPath() {
400
421
  const rockPNGName = getRockPNGName();
401
422
  return `gfx/grid/${rockPNGName}`;
402
423
  }
403
- exports.getRockPNGPath = getRockPNGPath;
404
424
  function getRockPNGName() {
405
425
  const room = cachedClasses_1.game.GetRoom();
406
426
  const backdropType = room.GetBackdropType();
@@ -539,7 +559,6 @@ function getSurroundingGridEntities(gridEntity) {
539
559
  }
540
560
  return surroundingGridEntities;
541
561
  }
542
- exports.getSurroundingGridEntities = getSurroundingGridEntities;
543
562
  /**
544
563
  * Helper function to get the grid indexes on the surrounding tiles from the provided grid index.
545
564
  *
@@ -561,7 +580,6 @@ function getSurroundingGridIndexes(gridIndex) {
561
580
  gridIndex + gridWidth + 1, // Bottom-right
562
581
  ];
563
582
  }
564
- exports.getSurroundingGridIndexes = getSurroundingGridIndexes;
565
583
  /**
566
584
  * Helper function to get the top left wall in the current room.
567
585
  *
@@ -572,7 +590,6 @@ function getTopLeftWall() {
572
590
  const topLeftWallGridIndex = getTopLeftWallGridIndex();
573
591
  return room.GetGridEntity(topLeftWallGridIndex);
574
592
  }
575
- exports.getTopLeftWall = getTopLeftWall;
576
593
  /**
577
594
  * Helper function to get the grid index of the top left wall. (This will depend on what the current
578
595
  * room shape is.)
@@ -585,7 +602,6 @@ function getTopLeftWallGridIndex() {
585
602
  const topLeftWallGridIndex = roomShapeToTopLeftWallGridIndexMap_1.ROOM_SHAPE_TO_TOP_LEFT_WALL_GRID_INDEX_MAP.get(roomShape);
586
603
  return topLeftWallGridIndex ?? roomShapeToTopLeftWallGridIndexMap_1.DEFAULT_TOP_LEFT_WALL_GRID_INDEX;
587
604
  }
588
- exports.getTopLeftWallGridIndex = getTopLeftWallGridIndex;
589
605
  /**
590
606
  * Helper function to detect if a particular grid entity would "break" if it was touched by an
591
607
  * explosion.
@@ -596,10 +612,9 @@ function isGridEntityBreakableByExplosion(gridEntity) {
596
612
  const gridEntityType = gridEntity.GetType();
597
613
  const variant = gridEntity.GetVariant();
598
614
  const gridEntityTypeVariant = `${gridEntityType}.${variant}`;
599
- return (BREAKABLE_GRID_ENTITY_TYPES_BY_EXPLOSIONS.has(gridEntityType) ||
600
- BREAKABLE_GRID_ENTITY_TYPES_VARIANTS_BY_EXPLOSIONS.has(gridEntityTypeVariant));
615
+ return (BREAKABLE_GRID_ENTITY_TYPES_BY_EXPLOSIONS.has(gridEntityType)
616
+ || BREAKABLE_GRID_ENTITY_TYPES_VARIANTS_BY_EXPLOSIONS.has(gridEntityTypeVariant));
601
617
  }
602
- exports.isGridEntityBreakableByExplosion = isGridEntityBreakableByExplosion;
603
618
  /**
604
619
  * Helper function to see if the provided grid entity is in its respective broken state. See the
605
620
  * `GRID_ENTITY_TYPE_TO_BROKEN_STATE_MAP` constant for more details.
@@ -612,15 +627,13 @@ function isGridEntityBroken(gridEntity) {
612
627
  const brokenState = gridEntityTypeToBrokenStateMap_1.GRID_ENTITY_TYPE_TO_BROKEN_STATE_MAP.get(gridEntityType);
613
628
  return gridEntity.State === brokenState;
614
629
  }
615
- exports.isGridEntityBroken = isGridEntityBroken;
616
630
  /**
617
631
  * Helper function to see if an arbitrary number is a valid `GridEntityXMLType`. This is useful in
618
632
  * the `PRE_ROOM_ENTITY_SPAWN` callback for narrowing the type of the first argument.
619
633
  */
620
634
  function isGridEntityXMLType(num) {
621
- return GRID_ENTITY_XML_TYPES_SET.has(num); // eslint-disable-line isaacscript/strict-enums
635
+ return GRID_ENTITY_XML_TYPES_SET.has(num); // eslint-disable-line complete/strict-enums
622
636
  }
623
- exports.isGridEntityXMLType = isGridEntityXMLType;
624
637
  /**
625
638
  * Helper function to check if the provided grid index has a door on it or if the surrounding 8 grid
626
639
  * indexes have a door on it.
@@ -640,12 +653,10 @@ function isGridIndexAdjacentToDoor(gridIndex) {
640
653
  }
641
654
  return false;
642
655
  }
643
- exports.isGridIndexAdjacentToDoor = isGridIndexAdjacentToDoor;
644
656
  /** Helper function to see if a `GridEntityXMLType` is some kind of poop. */
645
657
  function isPoopGridEntityXMLType(gridEntityXMLType) {
646
658
  return poopGridEntityXMLTypesSet_1.POOP_GRID_ENTITY_XML_TYPES_SET.has(gridEntityXMLType);
647
659
  }
648
- exports.isPoopGridEntityXMLType = isPoopGridEntityXMLType;
649
660
  /**
650
661
  * Helper function to detect whether a given Void Portal is one that randomly spawns after a boss is
651
662
  * defeated or is one that naturally spawns in the room after Hush.
@@ -656,11 +667,11 @@ exports.isPoopGridEntityXMLType = isPoopGridEntityXMLType;
656
667
  */
657
668
  function isPostBossVoidPortal(gridEntity) {
658
669
  const saveState = gridEntity.GetSaveState();
659
- return (saveState.Type === isaac_typescript_definitions_1.GridEntityType.TRAPDOOR &&
660
- saveState.Variant === isaac_typescript_definitions_1.TrapdoorVariant.VOID_PORTAL &&
661
- saveState.VarData === 1);
670
+ return (saveState.Type === isaac_typescript_definitions_1.GridEntityType.TRAPDOOR
671
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-enum-comparison
672
+ && saveState.Variant === isaac_typescript_definitions_1.TrapdoorVariant.VOID_PORTAL
673
+ && saveState.VarData === 1);
662
674
  }
663
- exports.isPostBossVoidPortal = isPostBossVoidPortal;
664
675
  /**
665
676
  * Helper function to all grid entities in the room except for ones matching the grid entity types
666
677
  * provided.
@@ -695,7 +706,6 @@ function removeAllGridEntitiesExcept(...gridEntityTypes) {
695
706
  }
696
707
  return removedGridEntities;
697
708
  }
698
- exports.removeAllGridEntitiesExcept = removeAllGridEntitiesExcept;
699
709
  /**
700
710
  * Helper function to remove all of the grid entities in the room that match the grid entity types
701
711
  * provided.
@@ -726,7 +736,6 @@ function removeAllMatchingGridEntities(...gridEntityType) {
726
736
  (0, rooms_1.roomUpdateSafe)();
727
737
  return gridEntities;
728
738
  }
729
- exports.removeAllMatchingGridEntities = removeAllMatchingGridEntities;
730
739
  /**
731
740
  * Helper function to remove all entities that just spawned from a grid entity breaking.
732
741
  * Specifically, this is any entities that overlap with the position of a grid entity and are on
@@ -735,11 +744,10 @@ exports.removeAllMatchingGridEntities = removeAllMatchingGridEntities;
735
744
  * You must specify an array of entities to look through.
736
745
  */
737
746
  function removeEntitiesSpawnedFromGridEntity(entities, gridEntity) {
738
- const entitiesFromGridEntity = entities.filter((entity) => entity.FrameCount === 0 &&
739
- (0, vector_1.vectorEquals)(entity.Position, gridEntity.Position));
747
+ const entitiesFromGridEntity = entities.filter((entity) => entity.FrameCount === 0
748
+ && (0, vector_1.vectorEquals)(entity.Position, gridEntity.Position));
740
749
  (0, entities_1.removeEntities)(entitiesFromGridEntity);
741
750
  }
742
- exports.removeEntitiesSpawnedFromGridEntity = removeEntitiesSpawnedFromGridEntity;
743
751
  /**
744
752
  * Helper function to remove all of the grid entities in the supplied array.
745
753
  *
@@ -769,7 +777,6 @@ function removeGridEntities(gridEntities, updateRoom, cap) {
769
777
  }
770
778
  return gridEntitiesRemoved;
771
779
  }
772
- exports.removeGridEntities = removeGridEntities;
773
780
  /**
774
781
  * Helper function to remove a grid entity by providing the grid entity object or the grid index
775
782
  * inside of the room.
@@ -806,7 +813,9 @@ function removeGridEntity(gridEntityOrGridIndex, updateRoom) {
806
813
  // In the special case of removing a Devil Statue or Angel Statue, we also need to delete the
807
814
  // corresponding effect.
808
815
  if (gridEntityType === isaac_typescript_definitions_1.GridEntityType.STATUE) {
809
- const effectVariant = variant === isaac_typescript_definitions_1.StatueVariant.DEVIL
816
+ const effectVariant =
817
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-enum-comparison
818
+ variant === isaac_typescript_definitions_1.StatueVariant.DEVIL
810
819
  ? isaac_typescript_definitions_1.EffectVariant.DEVIL
811
820
  : isaac_typescript_definitions_1.EffectVariant.ANGEL;
812
821
  const effects = (0, entitiesSpecific_1.getEffects)(effectVariant);
@@ -814,7 +823,6 @@ function removeGridEntity(gridEntityOrGridIndex, updateRoom) {
814
823
  (0, entities_1.removeEntities)(effectsOnTile);
815
824
  }
816
825
  }
817
- exports.removeGridEntity = removeGridEntity;
818
826
  /**
819
827
  * Helper function to make a grid entity invisible. This is accomplished by resetting the sprite.
820
828
  *
@@ -826,7 +834,6 @@ function setGridEntityInvisible(gridEntity) {
826
834
  const sprite = gridEntity.GetSprite();
827
835
  sprite.Reset();
828
836
  }
829
- exports.setGridEntityInvisible = setGridEntityInvisible;
830
837
  /**
831
838
  * Helper function to change the type of a grid entity to another type. Use this instead of the
832
839
  * `GridEntity.SetType` method since that does not properly handle updating the sprite of the grid
@@ -850,7 +857,6 @@ function setGridEntityType(gridEntity, gridEntityType) {
850
857
  const defaultAnimation = sprite.GetDefaultAnimation();
851
858
  sprite.Play(defaultAnimation, true);
852
859
  }
853
- exports.setGridEntityType = setGridEntityType;
854
860
  /**
855
861
  * Helper function to spawn a giant poop. This is performed by spawning each of the four quadrant
856
862
  * grid entities in the appropriate positions.
@@ -879,20 +885,23 @@ function spawnGiantPoop(topLeftGridIndex) {
879
885
  const topRight = spawnGridEntityWithVariant(isaac_typescript_definitions_1.GridEntityType.POOP, isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_TOP_RIGHT, topRightGridIndex);
880
886
  const bottomLeft = spawnGridEntityWithVariant(isaac_typescript_definitions_1.GridEntityType.POOP, isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_BOTTOM_LEFT, bottomLeftGridIndex);
881
887
  const bottomRight = spawnGridEntityWithVariant(isaac_typescript_definitions_1.GridEntityType.POOP, isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_BOTTOM_RIGHT, bottomRightGridIndex);
882
- return (topLeft !== undefined &&
883
- topLeft.GetType() === isaac_typescript_definitions_1.GridEntityType.POOP &&
884
- topLeft.GetVariant() === isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_TOP_LEFT &&
885
- topRight !== undefined &&
886
- topRight.GetType() === isaac_typescript_definitions_1.GridEntityType.POOP &&
887
- topRight.GetVariant() === isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_TOP_RIGHT &&
888
- bottomLeft !== undefined &&
889
- bottomLeft.GetType() === isaac_typescript_definitions_1.GridEntityType.POOP &&
890
- bottomLeft.GetVariant() === isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_BOTTOM_LEFT &&
891
- bottomRight !== undefined &&
892
- bottomRight.GetType() === isaac_typescript_definitions_1.GridEntityType.POOP &&
893
- bottomRight.GetVariant() === isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_BOTTOM_RIGHT);
888
+ return (topLeft !== undefined
889
+ && topLeft.GetType() === isaac_typescript_definitions_1.GridEntityType.POOP
890
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-enum-comparison
891
+ && topLeft.GetVariant() === isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_TOP_LEFT
892
+ && topRight !== undefined
893
+ && topRight.GetType() === isaac_typescript_definitions_1.GridEntityType.POOP
894
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-enum-comparison
895
+ && topRight.GetVariant() === isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_TOP_RIGHT
896
+ && bottomLeft !== undefined
897
+ && bottomLeft.GetType() === isaac_typescript_definitions_1.GridEntityType.POOP
898
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-enum-comparison
899
+ && bottomLeft.GetVariant() === isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_BOTTOM_LEFT
900
+ && bottomRight !== undefined
901
+ && bottomRight.GetType() === isaac_typescript_definitions_1.GridEntityType.POOP
902
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-enum-comparison
903
+ && bottomRight.GetVariant() === isaac_typescript_definitions_1.PoopGridEntityVariant.GIANT_BOTTOM_RIGHT);
894
904
  }
895
- exports.spawnGiantPoop = spawnGiantPoop;
896
905
  /**
897
906
  * Helper function to spawn a grid entity with a specific type.
898
907
  *
@@ -916,7 +925,6 @@ exports.spawnGiantPoop = spawnGiantPoop;
916
925
  function spawnGridEntity(gridEntityType, gridIndexOrPosition, removeExistingGridEntity = true) {
917
926
  return spawnGridEntityWithVariant(gridEntityType, 0, gridIndexOrPosition, removeExistingGridEntity);
918
927
  }
919
- exports.spawnGridEntity = spawnGridEntity;
920
928
  /**
921
929
  * Helper function to spawn a grid entity with a specific variant.
922
930
  *
@@ -976,7 +984,6 @@ function spawnGridEntityWithVariant(gridEntityType, variant, gridIndexOrPosition
976
984
  }
977
985
  return gridEntity;
978
986
  }
979
- exports.spawnGridEntityWithVariant = spawnGridEntityWithVariant;
980
987
  /**
981
988
  * Helper function to spawn a Void Portal. This is more complicated than simply spawning a trapdoor
982
989
  * with the appropriate variant, as the game does not give it the correct sprite automatically.
@@ -993,4 +1000,3 @@ function spawnVoidPortal(gridIndex) {
993
1000
  sprite.Load("gfx/grid/voidtrapdoor.anm2", true);
994
1001
  return voidPortal;
995
1002
  }
996
- exports.spawnVoidPortal = spawnVoidPortal;