isaacscript-common 6.6.0 → 6.6.1-dev.2

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 (820) hide show
  1. package/cachedClasses.d.ts +1 -0
  2. package/cachedClasses.js +59 -0
  3. package/cachedClasses.lua +2 -0
  4. package/callbacks/customRevive.js +153 -0
  5. package/callbacks/customRevive.lua +2 -0
  6. package/callbacks/itemPickup.js +64 -0
  7. package/callbacks/itemPickup.lua +2 -0
  8. package/callbacks/postAmbush.js +54 -0
  9. package/callbacks/postAmbush.lua +2 -0
  10. package/callbacks/postBombExploded.js +20 -0
  11. package/callbacks/postBombExploded.lua +2 -0
  12. package/callbacks/postBombInitLate.js +28 -0
  13. package/callbacks/postBombInitLate.lua +2 -0
  14. package/callbacks/postBoneSwing.js +49 -0
  15. package/callbacks/postBoneSwing.lua +2 -0
  16. package/callbacks/postCollectibleEmpty.js +32 -0
  17. package/callbacks/postCollectibleEmpty.lua +2 -0
  18. package/callbacks/postCollectibleInitFirst.js +27 -0
  19. package/callbacks/postCollectibleInitFirst.lua +2 -0
  20. package/callbacks/postCursedTeleport.js +120 -0
  21. package/callbacks/postCursedTeleport.lua +2 -0
  22. package/callbacks/postCustomDoorEnter.js +205 -0
  23. package/callbacks/postCustomDoorEnter.lua +2 -0
  24. package/callbacks/postDiceRoomActivated.js +39 -0
  25. package/callbacks/postDiceRoomActivated.lua +2 -0
  26. package/callbacks/postDoorRender.js +20 -0
  27. package/callbacks/postDoorRender.lua +2 -0
  28. package/callbacks/postDoorUpdate.js +20 -0
  29. package/callbacks/postDoorUpdate.lua +2 -0
  30. package/callbacks/postEffectInitLate.js +28 -0
  31. package/callbacks/postEffectInitLate.lua +2 -0
  32. package/callbacks/postEffectStateChanged.js +31 -0
  33. package/callbacks/postEffectStateChanged.lua +2 -0
  34. package/callbacks/postEsauJr.js +70 -0
  35. package/callbacks/postEsauJr.lua +2 -0
  36. package/callbacks/postFamiliarInitLate.js +28 -0
  37. package/callbacks/postFamiliarInitLate.lua +2 -0
  38. package/callbacks/postFamiliarStateChanged.js +31 -0
  39. package/callbacks/postFamiliarStateChanged.lua +2 -0
  40. package/callbacks/postFlip.js +59 -0
  41. package/callbacks/postFlip.lua +2 -0
  42. package/callbacks/postGreedModeWave.js +31 -0
  43. package/callbacks/postGreedModeWave.lua +2 -0
  44. package/callbacks/postGridEntity.js +107 -0
  45. package/callbacks/postGridEntity.lua +2 -0
  46. package/callbacks/postGridEntityCollision.js +49 -0
  47. package/callbacks/postGridEntityCollision.lua +2 -0
  48. package/callbacks/postGridEntityRender.js +20 -0
  49. package/callbacks/postGridEntityRender.lua +2 -0
  50. package/callbacks/postHolyMantleRemoved.js +33 -0
  51. package/callbacks/postHolyMantleRemoved.lua +2 -0
  52. package/callbacks/postItemDischarged.js +94 -0
  53. package/callbacks/postItemDischarged.lua +2 -0
  54. package/callbacks/postKnifeInitLate.js +28 -0
  55. package/callbacks/postKnifeInitLate.lua +2 -0
  56. package/callbacks/postLaserInitLate.js +28 -0
  57. package/callbacks/postLaserInitLate.lua +2 -0
  58. package/callbacks/postNPCInitLate.js +28 -0
  59. package/callbacks/postNPCInitLate.lua +2 -0
  60. package/callbacks/postNPCStateChanged.js +31 -0
  61. package/callbacks/postNPCStateChanged.lua +2 -0
  62. package/callbacks/postNewRoomEarly.js +69 -0
  63. package/callbacks/postNewRoomEarly.lua +2 -0
  64. package/callbacks/postPickupCollect.js +37 -0
  65. package/callbacks/postPickupCollect.lua +2 -0
  66. package/callbacks/postPickupInitFirst.js +52 -0
  67. package/callbacks/postPickupInitFirst.lua +2 -0
  68. package/callbacks/postPickupInitLate.js +28 -0
  69. package/callbacks/postPickupInitLate.lua +2 -0
  70. package/callbacks/postPickupStateChanged.js +31 -0
  71. package/callbacks/postPickupStateChanged.lua +2 -0
  72. package/callbacks/postPitRender.js +20 -0
  73. package/callbacks/postPitRender.lua +2 -0
  74. package/callbacks/postPitUpdate.js +20 -0
  75. package/callbacks/postPitUpdate.lua +2 -0
  76. package/callbacks/postPlayerChangeHealth.js +43 -0
  77. package/callbacks/postPlayerChangeHealth.lua +2 -0
  78. package/callbacks/postPlayerChangeType.js +31 -0
  79. package/callbacks/postPlayerChangeType.lua +2 -0
  80. package/callbacks/postPlayerCollectible.js +74 -0
  81. package/callbacks/postPlayerCollectible.lua +2 -0
  82. package/callbacks/postPlayerFatalDamage.js +74 -0
  83. package/callbacks/postPlayerFatalDamage.lua +2 -0
  84. package/callbacks/postPlayerInitLate.js +28 -0
  85. package/callbacks/postPlayerInitLate.lua +2 -0
  86. package/callbacks/postPlayerReordered.js +109 -0
  87. package/callbacks/postPlayerReordered.lua +2 -0
  88. package/callbacks/postPoopRender.js +20 -0
  89. package/callbacks/postPoopRender.lua +2 -0
  90. package/callbacks/postPoopUpdate.js +20 -0
  91. package/callbacks/postPoopUpdate.lua +2 -0
  92. package/callbacks/postPressurePlateRender.js +20 -0
  93. package/callbacks/postPressurePlateRender.lua +2 -0
  94. package/callbacks/postPressurePlateUpdate.js +20 -0
  95. package/callbacks/postPressurePlateUpdate.lua +2 -0
  96. package/callbacks/postProjectileInitLate.js +28 -0
  97. package/callbacks/postProjectileInitLate.lua +2 -0
  98. package/callbacks/postPurchase.js +39 -0
  99. package/callbacks/postPurchase.lua +2 -0
  100. package/callbacks/postRockRender.js +20 -0
  101. package/callbacks/postRockRender.lua +2 -0
  102. package/callbacks/postRockUpdate.js +20 -0
  103. package/callbacks/postRockUpdate.lua +2 -0
  104. package/callbacks/postRoomClearChanged.js +41 -0
  105. package/callbacks/postRoomClearChanged.lua +2 -0
  106. package/callbacks/postSacrifice.js +38 -0
  107. package/callbacks/postSacrifice.lua +2 -0
  108. package/callbacks/postSlotDestroyed.js +64 -0
  109. package/callbacks/postSlotDestroyed.lua +2 -0
  110. package/callbacks/postSlotInitUpdate.js +49 -0
  111. package/callbacks/postSlotInitUpdate.lua +2 -0
  112. package/callbacks/postSlotRender.js +48 -0
  113. package/callbacks/postSlotRender.lua +2 -0
  114. package/callbacks/postSpikesRender.js +20 -0
  115. package/callbacks/postSpikesRender.lua +2 -0
  116. package/callbacks/postSpikesUpdate.js +20 -0
  117. package/callbacks/postSpikesUpdate.lua +2 -0
  118. package/callbacks/postTNTRender.js +20 -0
  119. package/callbacks/postTNTRender.lua +2 -0
  120. package/callbacks/postTNTUpdate.js +20 -0
  121. package/callbacks/postTNTUpdate.lua +2 -0
  122. package/callbacks/postTearInitLate.js +28 -0
  123. package/callbacks/postTearInitLate.lua +2 -0
  124. package/callbacks/postTearInitVeryLate.js +32 -0
  125. package/callbacks/postTearInitVeryLate.lua +2 -0
  126. package/callbacks/postTransformation.js +37 -0
  127. package/callbacks/postTransformation.lua +2 -0
  128. package/callbacks/postTrinketBreak.js +64 -0
  129. package/callbacks/postTrinketBreak.lua +2 -0
  130. package/callbacks/preBerserkDeath.js +35 -0
  131. package/callbacks/preBerserkDeath.lua +2 -0
  132. package/callbacks/preNewLevel.js +45 -0
  133. package/callbacks/preNewLevel.lua +2 -0
  134. package/callbacks/reorderedCallbacks.js +136 -0
  135. package/callbacks/reorderedCallbacks.lua +2 -0
  136. package/callbacks/subscriptions/postAmbushFinished.js +20 -0
  137. package/callbacks/subscriptions/postAmbushFinished.lua +2 -0
  138. package/callbacks/subscriptions/postAmbushStarted.js +20 -0
  139. package/callbacks/subscriptions/postAmbushStarted.lua +2 -0
  140. package/callbacks/subscriptions/postBombInitLate.js +20 -0
  141. package/callbacks/subscriptions/postBombInitLate.lua +2 -0
  142. package/callbacks/subscriptions/postBoneExploded.js +20 -0
  143. package/callbacks/subscriptions/postBoneExploded.lua +2 -0
  144. package/callbacks/subscriptions/postBoneSwing.js +16 -0
  145. package/callbacks/subscriptions/postBoneSwing.lua +2 -0
  146. package/callbacks/subscriptions/postCollectibleEmpty.js +21 -0
  147. package/callbacks/subscriptions/postCollectibleEmpty.lua +2 -0
  148. package/callbacks/subscriptions/postCollectibleInitFirst.js +21 -0
  149. package/callbacks/subscriptions/postCollectibleInitFirst.lua +2 -0
  150. package/callbacks/subscriptions/postCursedTeleport.js +16 -0
  151. package/callbacks/subscriptions/postCursedTeleport.lua +2 -0
  152. package/callbacks/subscriptions/postCustomDoorEnter.js +21 -0
  153. package/callbacks/subscriptions/postCustomDoorEnter.lua +2 -0
  154. package/callbacks/subscriptions/postCustomRevive.js +21 -0
  155. package/callbacks/subscriptions/postCustomRevive.lua +2 -0
  156. package/callbacks/subscriptions/postDiceRoomActivated.js +21 -0
  157. package/callbacks/subscriptions/postDiceRoomActivated.lua +2 -0
  158. package/callbacks/subscriptions/postDoorRender.js +22 -0
  159. package/callbacks/subscriptions/postDoorRender.lua +2 -0
  160. package/callbacks/subscriptions/postDoorUpdate.js +22 -0
  161. package/callbacks/subscriptions/postDoorUpdate.lua +2 -0
  162. package/callbacks/subscriptions/postEffectInitLate.js +20 -0
  163. package/callbacks/subscriptions/postEffectInitLate.lua +2 -0
  164. package/callbacks/subscriptions/postEffectStateChanged.js +20 -0
  165. package/callbacks/subscriptions/postEffectStateChanged.lua +2 -0
  166. package/callbacks/subscriptions/postEsauJr.js +16 -0
  167. package/callbacks/subscriptions/postEsauJr.lua +2 -0
  168. package/callbacks/subscriptions/postFamiliarInitLate.js +20 -0
  169. package/callbacks/subscriptions/postFamiliarInitLate.lua +2 -0
  170. package/callbacks/subscriptions/postFamiliarStateChanged.js +20 -0
  171. package/callbacks/subscriptions/postFamiliarStateChanged.lua +2 -0
  172. package/callbacks/subscriptions/postFirstEsauJr.js +16 -0
  173. package/callbacks/subscriptions/postFirstEsauJr.lua +2 -0
  174. package/callbacks/subscriptions/postFirstFlip.js +16 -0
  175. package/callbacks/subscriptions/postFirstFlip.lua +2 -0
  176. package/callbacks/subscriptions/postFlip.js +16 -0
  177. package/callbacks/subscriptions/postFlip.lua +2 -0
  178. package/callbacks/subscriptions/postGameStartedReordered.js +16 -0
  179. package/callbacks/subscriptions/postGameStartedReordered.lua +2 -0
  180. package/callbacks/subscriptions/postGreedModeWave.js +16 -0
  181. package/callbacks/subscriptions/postGreedModeWave.lua +2 -0
  182. package/callbacks/subscriptions/postGridEntityBroken.js +28 -0
  183. package/callbacks/subscriptions/postGridEntityBroken.lua +2 -0
  184. package/callbacks/subscriptions/postGridEntityCollision.js +28 -0
  185. package/callbacks/subscriptions/postGridEntityCollision.lua +2 -0
  186. package/callbacks/subscriptions/postGridEntityInit.js +28 -0
  187. package/callbacks/subscriptions/postGridEntityInit.lua +2 -0
  188. package/callbacks/subscriptions/postGridEntityRemove.js +26 -0
  189. package/callbacks/subscriptions/postGridEntityRemove.lua +2 -0
  190. package/callbacks/subscriptions/postGridEntityRender.js +28 -0
  191. package/callbacks/subscriptions/postGridEntityRender.lua +2 -0
  192. package/callbacks/subscriptions/postGridEntityStateChanged.js +28 -0
  193. package/callbacks/subscriptions/postGridEntityStateChanged.lua +2 -0
  194. package/callbacks/subscriptions/postGridEntityUpdate.js +28 -0
  195. package/callbacks/subscriptions/postGridEntityUpdate.lua +2 -0
  196. package/callbacks/subscriptions/postHolyMantleRemoved.js +25 -0
  197. package/callbacks/subscriptions/postHolyMantleRemoved.lua +2 -0
  198. package/callbacks/subscriptions/postItemDischarged.js +21 -0
  199. package/callbacks/subscriptions/postItemDischarged.lua +2 -0
  200. package/callbacks/subscriptions/postItemPickup.js +25 -0
  201. package/callbacks/subscriptions/postItemPickup.lua +2 -0
  202. package/callbacks/subscriptions/postKnifeInitLate.js +20 -0
  203. package/callbacks/subscriptions/postKnifeInitLate.lua +2 -0
  204. package/callbacks/subscriptions/postLaserInitLate.js +20 -0
  205. package/callbacks/subscriptions/postLaserInitLate.lua +2 -0
  206. package/callbacks/subscriptions/postNPCInitLate.js +20 -0
  207. package/callbacks/subscriptions/postNPCInitLate.lua +2 -0
  208. package/callbacks/subscriptions/postNPCStateChanged.js +24 -0
  209. package/callbacks/subscriptions/postNPCStateChanged.lua +2 -0
  210. package/callbacks/subscriptions/postNewLevelReordered.js +16 -0
  211. package/callbacks/subscriptions/postNewLevelReordered.lua +2 -0
  212. package/callbacks/subscriptions/postNewRoomEarly.js +16 -0
  213. package/callbacks/subscriptions/postNewRoomEarly.lua +2 -0
  214. package/callbacks/subscriptions/postNewRoomReordered.js +16 -0
  215. package/callbacks/subscriptions/postNewRoomReordered.lua +2 -0
  216. package/callbacks/subscriptions/postPEffectUpdateReordered.js +25 -0
  217. package/callbacks/subscriptions/postPEffectUpdateReordered.lua +2 -0
  218. package/callbacks/subscriptions/postPickupCollect.js +20 -0
  219. package/callbacks/subscriptions/postPickupCollect.lua +2 -0
  220. package/callbacks/subscriptions/postPickupInitFirst.js +20 -0
  221. package/callbacks/subscriptions/postPickupInitFirst.lua +2 -0
  222. package/callbacks/subscriptions/postPickupInitLate.js +20 -0
  223. package/callbacks/subscriptions/postPickupInitLate.lua +2 -0
  224. package/callbacks/subscriptions/postPickupStateChanged.js +20 -0
  225. package/callbacks/subscriptions/postPickupStateChanged.lua +2 -0
  226. package/callbacks/subscriptions/postPitRender.js +22 -0
  227. package/callbacks/subscriptions/postPitRender.lua +2 -0
  228. package/callbacks/subscriptions/postPitUpdate.js +22 -0
  229. package/callbacks/subscriptions/postPitUpdate.lua +2 -0
  230. package/callbacks/subscriptions/postPlayerChangeHealth.js +25 -0
  231. package/callbacks/subscriptions/postPlayerChangeHealth.lua +2 -0
  232. package/callbacks/subscriptions/postPlayerChangeType.js +20 -0
  233. package/callbacks/subscriptions/postPlayerChangeType.lua +2 -0
  234. package/callbacks/subscriptions/postPlayerCollectibleAdded.js +21 -0
  235. package/callbacks/subscriptions/postPlayerCollectibleAdded.lua +2 -0
  236. package/callbacks/subscriptions/postPlayerCollectibleRemoved.js +21 -0
  237. package/callbacks/subscriptions/postPlayerCollectibleRemoved.lua +2 -0
  238. package/callbacks/subscriptions/postPlayerFatalDamage.js +29 -0
  239. package/callbacks/subscriptions/postPlayerFatalDamage.lua +2 -0
  240. package/callbacks/subscriptions/postPlayerInitLate.js +25 -0
  241. package/callbacks/subscriptions/postPlayerInitLate.lua +2 -0
  242. package/callbacks/subscriptions/postPlayerInitReordered.js +25 -0
  243. package/callbacks/subscriptions/postPlayerInitReordered.lua +2 -0
  244. package/callbacks/subscriptions/postPlayerRenderReordered.js +25 -0
  245. package/callbacks/subscriptions/postPlayerRenderReordered.lua +2 -0
  246. package/callbacks/subscriptions/postPlayerUpdateReordered.js +25 -0
  247. package/callbacks/subscriptions/postPlayerUpdateReordered.lua +2 -0
  248. package/callbacks/subscriptions/postPoopRender.js +22 -0
  249. package/callbacks/subscriptions/postPoopRender.lua +2 -0
  250. package/callbacks/subscriptions/postPoopUpdate.js +22 -0
  251. package/callbacks/subscriptions/postPoopUpdate.lua +2 -0
  252. package/callbacks/subscriptions/postPressurePlateRender.js +22 -0
  253. package/callbacks/subscriptions/postPressurePlateRender.lua +2 -0
  254. package/callbacks/subscriptions/postPressurePlateUpdate.js +22 -0
  255. package/callbacks/subscriptions/postPressurePlateUpdate.lua +2 -0
  256. package/callbacks/subscriptions/postProjectileInitLate.js +21 -0
  257. package/callbacks/subscriptions/postProjectileInitLate.lua +2 -0
  258. package/callbacks/subscriptions/postPurchase.js +16 -0
  259. package/callbacks/subscriptions/postPurchase.lua +2 -0
  260. package/callbacks/subscriptions/postRockRender.js +22 -0
  261. package/callbacks/subscriptions/postRockRender.lua +2 -0
  262. package/callbacks/subscriptions/postRockUpdate.js +22 -0
  263. package/callbacks/subscriptions/postRockUpdate.lua +2 -0
  264. package/callbacks/subscriptions/postRoomClearChanged.js +20 -0
  265. package/callbacks/subscriptions/postRoomClearChanged.lua +2 -0
  266. package/callbacks/subscriptions/postSacrifice.js +25 -0
  267. package/callbacks/subscriptions/postSacrifice.lua +2 -0
  268. package/callbacks/subscriptions/postSlotAnimationChanged.js +20 -0
  269. package/callbacks/subscriptions/postSlotAnimationChanged.lua +2 -0
  270. package/callbacks/subscriptions/postSlotDestroyed.js +26 -0
  271. package/callbacks/subscriptions/postSlotDestroyed.lua +2 -0
  272. package/callbacks/subscriptions/postSlotInit.js +20 -0
  273. package/callbacks/subscriptions/postSlotInit.lua +2 -0
  274. package/callbacks/subscriptions/postSlotRender.js +20 -0
  275. package/callbacks/subscriptions/postSlotRender.lua +2 -0
  276. package/callbacks/subscriptions/postSlotUpdate.js +20 -0
  277. package/callbacks/subscriptions/postSlotUpdate.lua +2 -0
  278. package/callbacks/subscriptions/postSpikesRender.js +22 -0
  279. package/callbacks/subscriptions/postSpikesRender.lua +2 -0
  280. package/callbacks/subscriptions/postSpikesUpdate.js +22 -0
  281. package/callbacks/subscriptions/postSpikesUpdate.lua +2 -0
  282. package/callbacks/subscriptions/postTNTRender.js +22 -0
  283. package/callbacks/subscriptions/postTNTRender.lua +2 -0
  284. package/callbacks/subscriptions/postTNTUpdate.js +22 -0
  285. package/callbacks/subscriptions/postTNTUpdate.lua +2 -0
  286. package/callbacks/subscriptions/postTearInitLate.js +20 -0
  287. package/callbacks/subscriptions/postTearInitLate.lua +2 -0
  288. package/callbacks/subscriptions/postTearInitVeryLate.js +20 -0
  289. package/callbacks/subscriptions/postTearInitVeryLate.lua +2 -0
  290. package/callbacks/subscriptions/postTransformation.js +20 -0
  291. package/callbacks/subscriptions/postTransformation.lua +2 -0
  292. package/callbacks/subscriptions/postTrinketBreak.js +21 -0
  293. package/callbacks/subscriptions/postTrinketBreak.lua +2 -0
  294. package/callbacks/subscriptions/preBerserkDeath.js +26 -0
  295. package/callbacks/subscriptions/preBerserkDeath.lua +2 -0
  296. package/callbacks/subscriptions/preCustomRevive.js +29 -0
  297. package/callbacks/subscriptions/preCustomRevive.lua +2 -0
  298. package/callbacks/subscriptions/preItemPickup.js +25 -0
  299. package/callbacks/subscriptions/preItemPickup.lua +2 -0
  300. package/callbacks/subscriptions/preNewLevel.js +16 -0
  301. package/callbacks/subscriptions/preNewLevel.lua +2 -0
  302. package/classes/DefaultMap.js +145 -0
  303. package/classes/DefaultMap.lua +2 -0
  304. package/classes/ModUpgraded.js +57 -0
  305. package/classes/ModUpgraded.lua +2 -0
  306. package/constants.js +143 -0
  307. package/constants.lua +2 -0
  308. package/constantsFirstLast.js +156 -0
  309. package/constantsFirstLast.lua +2 -0
  310. package/enums/AmbushType.js +6 -0
  311. package/enums/AmbushType.lua +2 -0
  312. package/enums/CornerType.js +8 -0
  313. package/enums/CornerType.lua +2 -0
  314. package/enums/DecorationVariant.js +11 -0
  315. package/enums/DecorationVariant.lua +2 -0
  316. package/enums/HealthType.js +18 -0
  317. package/enums/HealthType.lua +2 -0
  318. package/enums/ModCallbackCustom.js +1213 -0
  319. package/enums/ModCallbackCustom.lua +2 -0
  320. package/enums/PocketItemType.js +10 -0
  321. package/enums/PocketItemType.lua +2 -0
  322. package/enums/RockAltType.js +9 -0
  323. package/enums/RockAltType.lua +2 -0
  324. package/enums/SerializationType.js +7 -0
  325. package/enums/SerializationType.lua +2 -0
  326. package/enums/SlotDestructionType.js +6 -0
  327. package/enums/SlotDestructionType.lua +2 -0
  328. package/enums/private/CopyableIsaacAPIClassType.js +9 -0
  329. package/enums/private/CopyableIsaacAPIClassType.lua +2 -0
  330. package/enums/private/SaveDataKey.js +8 -0
  331. package/enums/private/SaveDataKey.lua +2 -0
  332. package/enums/private/SerializationBrand.js +41 -0
  333. package/enums/private/SerializationBrand.lua +2 -0
  334. package/features/characterHealthConversion.js +86 -0
  335. package/features/characterHealthConversion.lua +2 -0
  336. package/features/characterStats.js +52 -0
  337. package/features/characterStats.lua +2 -0
  338. package/features/collectibleItemPoolType.js +45 -0
  339. package/features/collectibleItemPoolType.lua +2 -0
  340. package/features/customGridEntity.js +148 -0
  341. package/features/customGridEntity.lua +2 -0
  342. package/features/customStage/backdrop.js +191 -0
  343. package/features/customStage/backdrop.lua +9 -7
  344. package/features/customStage/customStageConstants.js +2 -0
  345. package/features/customStage/customStageConstants.lua +2 -0
  346. package/features/customStage/exports.js +147 -0
  347. package/features/customStage/exports.lua +8 -1
  348. package/features/customStage/gridEntities.js +138 -0
  349. package/features/customStage/gridEntities.lua +2 -0
  350. package/features/customStage/init.js +104 -0
  351. package/features/customStage/init.lua +4 -9
  352. package/features/customStage/metadata.json +1 -0
  353. package/features/customStage/metadata.lua +2 -0
  354. package/features/customStage/shadows.d.ts +0 -1
  355. package/features/customStage/shadows.js +63 -0
  356. package/features/customStage/shadows.lua +31 -19
  357. package/features/customStage/streakText.d.ts +1 -1
  358. package/features/customStage/streakText.js +35 -0
  359. package/features/customStage/streakText.lua +14 -3
  360. package/features/customStage/util.js +36 -0
  361. package/features/customStage/util.lua +2 -0
  362. package/features/customStage/v.js +18 -0
  363. package/features/customStage/v.lua +2 -0
  364. package/features/customStage/versusScreen.js +184 -0
  365. package/features/customStage/versusScreen.lua +8 -1
  366. package/features/debugDisplay/debugDisplay.js +183 -0
  367. package/features/debugDisplay/debugDisplay.lua +2 -0
  368. package/features/debugDisplay/exports.js +441 -0
  369. package/features/debugDisplay/exports.lua +2 -0
  370. package/features/debugDisplay/v.d.ts +18 -0
  371. package/features/debugDisplay/v.js +61 -0
  372. package/features/debugDisplay/v.lua +2 -0
  373. package/features/deployJSONRoom.js +532 -0
  374. package/features/deployJSONRoom.lua +2 -0
  375. package/features/disableAllSound.js +63 -0
  376. package/features/disableAllSound.lua +2 -0
  377. package/features/disableInputs.js +130 -0
  378. package/features/disableInputs.lua +2 -0
  379. package/features/extraConsoleCommands/commandsDisplay.js +236 -0
  380. package/features/extraConsoleCommands/commandsDisplay.lua +2 -0
  381. package/features/extraConsoleCommands/commandsSubroutines.js +109 -0
  382. package/features/extraConsoleCommands/commandsSubroutines.lua +2 -0
  383. package/features/extraConsoleCommands/exports.js +53 -0
  384. package/features/extraConsoleCommands/exports.lua +2 -0
  385. package/features/extraConsoleCommands/init.js +239 -0
  386. package/features/extraConsoleCommands/init.lua +2 -0
  387. package/features/extraConsoleCommands/listCommands.js +1081 -0
  388. package/features/extraConsoleCommands/listCommands.lua +2 -0
  389. package/features/extraConsoleCommands/v.js +25 -0
  390. package/features/extraConsoleCommands/v.lua +2 -0
  391. package/features/fadeInRemover.js +51 -0
  392. package/features/fadeInRemover.lua +2 -0
  393. package/features/fastReset.js +61 -0
  394. package/features/fastReset.lua +2 -0
  395. package/features/forgottenSwitch.js +33 -0
  396. package/features/forgottenSwitch.lua +2 -0
  397. package/features/pause.js +68 -0
  398. package/features/pause.lua +2 -0
  399. package/features/persistentEntities.js +120 -0
  400. package/features/persistentEntities.lua +2 -0
  401. package/features/playerInventory.js +89 -0
  402. package/features/playerInventory.lua +2 -0
  403. package/features/ponyDetection.js +63 -0
  404. package/features/ponyDetection.lua +2 -0
  405. package/features/preventCollectibleRotation.js +81 -0
  406. package/features/preventCollectibleRotation.lua +2 -0
  407. package/features/registerHotkey.js +91 -0
  408. package/features/registerHotkey.lua +2 -0
  409. package/features/roomClearFrame.js +42 -0
  410. package/features/roomClearFrame.lua +2 -0
  411. package/features/runInNFrames.js +189 -0
  412. package/features/runInNFrames.lua +2 -0
  413. package/features/runNextRoom.js +34 -0
  414. package/features/runNextRoom.lua +2 -0
  415. package/features/saveDataManager/exports.js +183 -0
  416. package/features/saveDataManager/exports.lua +2 -0
  417. package/features/saveDataManager/load.js +69 -0
  418. package/features/saveDataManager/load.lua +2 -0
  419. package/features/saveDataManager/main.js +131 -0
  420. package/features/saveDataManager/main.lua +2 -0
  421. package/features/saveDataManager/maps.js +9 -0
  422. package/features/saveDataManager/maps.lua +2 -0
  423. package/features/saveDataManager/merge.js +139 -0
  424. package/features/saveDataManager/merge.lua +2 -0
  425. package/features/saveDataManager/save.js +43 -0
  426. package/features/saveDataManager/save.lua +2 -0
  427. package/features/saveDataManager/saveDataManagerConstants.js +4 -0
  428. package/features/saveDataManager/saveDataManagerConstants.lua +2 -0
  429. package/features/saveDataManager/serializationBrand.js +12 -0
  430. package/features/saveDataManager/serializationBrand.lua +2 -0
  431. package/features/sirenHelpers.js +90 -0
  432. package/features/sirenHelpers.lua +2 -0
  433. package/features/stageHistory.js +43 -0
  434. package/features/stageHistory.lua +2 -0
  435. package/features/taintedLazarusPlayers.js +92 -0
  436. package/features/taintedLazarusPlayers.lua +2 -0
  437. package/featuresInitialized.js +16 -0
  438. package/featuresInitialized.lua +2 -0
  439. package/functions/ambush.js +35 -0
  440. package/functions/ambush.lua +2 -0
  441. package/functions/array.js +423 -0
  442. package/functions/array.lua +2 -0
  443. package/functions/benchmark.js +28 -0
  444. package/functions/benchmark.lua +2 -0
  445. package/functions/bitwise.js +74 -0
  446. package/functions/bitwise.lua +2 -0
  447. package/functions/bombs.js +11 -0
  448. package/functions/bombs.lua +2 -0
  449. package/functions/boss.js +137 -0
  450. package/functions/boss.lua +2 -0
  451. package/functions/cacheFlag.js +11 -0
  452. package/functions/cacheFlag.lua +2 -0
  453. package/functions/cards.js +217 -0
  454. package/functions/cards.lua +2 -0
  455. package/functions/challenges.js +9 -0
  456. package/functions/challenges.lua +2 -0
  457. package/functions/character.js +102 -0
  458. package/functions/character.lua +2 -0
  459. package/functions/charge.js +202 -0
  460. package/functions/charge.lua +2 -0
  461. package/functions/chargeBar.js +44 -0
  462. package/functions/chargeBar.lua +2 -0
  463. package/functions/collectibleCacheFlag.js +68 -0
  464. package/functions/collectibleCacheFlag.lua +2 -0
  465. package/functions/collectibleSet.js +108 -0
  466. package/functions/collectibleSet.lua +2 -0
  467. package/functions/collectibleTag.js +65 -0
  468. package/functions/collectibleTag.lua +2 -0
  469. package/functions/collectibles.js +469 -0
  470. package/functions/collectibles.lua +2 -0
  471. package/functions/color.d.ts +1 -1
  472. package/functions/color.js +60 -0
  473. package/functions/color.lua +2 -0
  474. package/functions/debug.js +60 -0
  475. package/functions/debug.lua +2 -0
  476. package/functions/deepCopy.js +361 -0
  477. package/functions/deepCopy.lua +2 -0
  478. package/functions/deepCopyTests.js +308 -0
  479. package/functions/deepCopyTests.lua +2 -0
  480. package/functions/direction.js +41 -0
  481. package/functions/direction.lua +2 -0
  482. package/functions/doors.js +326 -0
  483. package/functions/doors.lua +2 -0
  484. package/functions/easing.js +142 -0
  485. package/functions/easing.lua +2 -0
  486. package/functions/eden.js +32 -0
  487. package/functions/eden.lua +2 -0
  488. package/functions/effects.js +11 -0
  489. package/functions/effects.lua +2 -0
  490. package/functions/entity.js +324 -0
  491. package/functions/entity.lua +2 -0
  492. package/functions/entitySpecific.js +481 -0
  493. package/functions/entitySpecific.lua +2 -0
  494. package/functions/entityTypes.js +6 -0
  495. package/functions/entityTypes.lua +2 -0
  496. package/functions/enums.js +151 -0
  497. package/functions/enums.lua +2 -0
  498. package/functions/familiars.js +85 -0
  499. package/functions/familiars.lua +2 -0
  500. package/functions/flag.js +137 -0
  501. package/functions/flag.lua +2 -0
  502. package/functions/flying.js +88 -0
  503. package/functions/flying.lua +2 -0
  504. package/functions/globals.js +230 -0
  505. package/functions/globals.lua +2 -0
  506. package/functions/gridEntity.js +488 -0
  507. package/functions/gridEntity.lua +2 -0
  508. package/functions/gridEntitySpecific.js +109 -0
  509. package/functions/gridEntitySpecific.lua +2 -0
  510. package/functions/input.js +95 -0
  511. package/functions/input.lua +2 -0
  512. package/functions/isaacAPIClass.js +48 -0
  513. package/functions/isaacAPIClass.lua +2 -0
  514. package/functions/jsonHelpers.js +40 -0
  515. package/functions/jsonHelpers.lua +2 -0
  516. package/functions/jsonRoom.js +132 -0
  517. package/functions/jsonRoom.lua +2 -0
  518. package/functions/kColor.d.ts +1 -1
  519. package/functions/kColor.js +63 -0
  520. package/functions/kColor.lua +2 -0
  521. package/functions/language.js +13 -0
  522. package/functions/language.lua +2 -0
  523. package/functions/level.js +20 -0
  524. package/functions/level.lua +2 -0
  525. package/functions/log.js +567 -0
  526. package/functions/log.lua +2 -0
  527. package/functions/map.js +45 -0
  528. package/functions/map.lua +2 -0
  529. package/functions/math.js +103 -0
  530. package/functions/math.lua +2 -0
  531. package/functions/mergeTests.js +213 -0
  532. package/functions/mergeTests.lua +2 -0
  533. package/functions/minimap.js +80 -0
  534. package/functions/minimap.lua +2 -0
  535. package/functions/nextStage.js +290 -0
  536. package/functions/nextStage.lua +2 -0
  537. package/functions/npc.js +101 -0
  538. package/functions/npc.lua +2 -0
  539. package/functions/pickupVariants.js +47 -0
  540. package/functions/pickupVariants.lua +2 -0
  541. package/functions/pickups.js +219 -0
  542. package/functions/pickups.lua +2 -0
  543. package/functions/pills.js +160 -0
  544. package/functions/pills.lua +2 -0
  545. package/functions/player.js +808 -0
  546. package/functions/player.lua +2 -0
  547. package/functions/playerCenter.js +50 -0
  548. package/functions/playerCenter.lua +2 -0
  549. package/functions/playerDataStructures.js +114 -0
  550. package/functions/playerDataStructures.lua +2 -0
  551. package/functions/playerHealth.js +321 -0
  552. package/functions/playerHealth.lua +2 -0
  553. package/functions/playerIndex.js +160 -0
  554. package/functions/playerIndex.lua +2 -0
  555. package/functions/pocketItems.js +124 -0
  556. package/functions/pocketItems.lua +2 -0
  557. package/functions/positionVelocity.js +136 -0
  558. package/functions/positionVelocity.lua +2 -0
  559. package/functions/random.js +73 -0
  560. package/functions/random.lua +2 -0
  561. package/functions/revive.js +140 -0
  562. package/functions/revive.lua +2 -0
  563. package/functions/rng.d.ts +1 -1
  564. package/functions/rng.js +117 -0
  565. package/functions/rng.lua +2 -0
  566. package/functions/roomData.js +174 -0
  567. package/functions/roomData.lua +2 -0
  568. package/functions/roomGrid.js +81 -0
  569. package/functions/roomGrid.lua +2 -0
  570. package/functions/roomShape.js +99 -0
  571. package/functions/roomShape.lua +2 -0
  572. package/functions/rooms.js +487 -0
  573. package/functions/rooms.lua +2 -0
  574. package/functions/run.js +53 -0
  575. package/functions/run.lua +2 -0
  576. package/functions/saveFile.js +104 -0
  577. package/functions/saveFile.lua +2 -0
  578. package/functions/seeds.js +18 -0
  579. package/functions/seeds.lua +2 -0
  580. package/functions/serialization.js +52 -0
  581. package/functions/serialization.lua +2 -0
  582. package/functions/set.js +99 -0
  583. package/functions/set.lua +2 -0
  584. package/functions/sound.js +9 -0
  585. package/functions/sound.lua +2 -0
  586. package/functions/spawnCollectible.js +66 -0
  587. package/functions/spawnCollectible.lua +2 -0
  588. package/functions/sprite.js +80 -0
  589. package/functions/sprite.lua +2 -0
  590. package/functions/stage.js +172 -0
  591. package/functions/stage.lua +2 -0
  592. package/functions/string.js +37 -0
  593. package/functions/string.lua +2 -0
  594. package/functions/table.js +143 -0
  595. package/functions/table.lua +2 -0
  596. package/functions/tears.js +31 -0
  597. package/functions/tears.lua +2 -0
  598. package/functions/transformations.js +101 -0
  599. package/functions/transformations.lua +2 -0
  600. package/functions/trinketCacheFlag.js +46 -0
  601. package/functions/trinketCacheFlag.lua +2 -0
  602. package/functions/trinketGive.js +121 -0
  603. package/functions/trinketGive.lua +2 -0
  604. package/functions/trinkets.js +169 -0
  605. package/functions/trinkets.lua +2 -0
  606. package/functions/tstlClass.js +125 -0
  607. package/functions/tstlClass.lua +2 -0
  608. package/functions/types.js +27 -0
  609. package/functions/types.lua +2 -0
  610. package/functions/ui.js +124 -0
  611. package/functions/ui.lua +2 -0
  612. package/functions/utils.js +172 -0
  613. package/functions/utils.lua +2 -0
  614. package/functions/vector.js +68 -0
  615. package/functions/vector.lua +2 -0
  616. package/index.js +140 -0
  617. package/index.lua +2 -0
  618. package/initCustomCallbacks.js +133 -0
  619. package/initCustomCallbacks.lua +2 -0
  620. package/initFeatures.js +51 -0
  621. package/initFeatures.lua +2 -0
  622. package/interfaces/AddCallbackParameterCustom.js +2 -0
  623. package/interfaces/AddCallbackParameterCustom.lua +2 -0
  624. package/interfaces/ChargeBarSprites.js +2 -0
  625. package/interfaces/ChargeBarSprites.lua +2 -0
  626. package/interfaces/Corner.js +2 -0
  627. package/interfaces/Corner.lua +2 -0
  628. package/interfaces/CustomGridEntityData.js +2 -0
  629. package/interfaces/CustomGridEntityData.lua +2 -0
  630. package/interfaces/CustomStage.js +2 -0
  631. package/interfaces/CustomStage.lua +2 -0
  632. package/interfaces/CustomStageLua.d.ts +64 -24
  633. package/interfaces/CustomStageLua.js +13 -0
  634. package/interfaces/CustomStageLua.lua +2 -0
  635. package/interfaces/JSONRoomsFile.js +2 -0
  636. package/interfaces/JSONRoomsFile.lua +2 -0
  637. package/interfaces/PlayerHealth.js +2 -0
  638. package/interfaces/PlayerHealth.lua +2 -0
  639. package/interfaces/PocketItemDescription.js +2 -0
  640. package/interfaces/PocketItemDescription.lua +2 -0
  641. package/interfaces/SaveData.js +2 -0
  642. package/interfaces/SaveData.lua +2 -0
  643. package/interfaces/TrinketSituation.js +2 -0
  644. package/interfaces/TrinketSituation.lua +2 -0
  645. package/interfaces/private/TSTLClassMetatable.js +2 -0
  646. package/interfaces/private/TSTLClassMetatable.lua +2 -0
  647. package/maps/PHDPillConversions.js +20 -0
  648. package/maps/PHDPillConversions.lua +2 -0
  649. package/maps/cardMap.js +208 -0
  650. package/maps/cardMap.lua +2 -0
  651. package/maps/characterMap.js +86 -0
  652. package/maps/characterMap.lua +2 -0
  653. package/maps/collectibleDescriptionMap.js +728 -0
  654. package/maps/collectibleDescriptionMap.lua +2 -0
  655. package/maps/collectibleNameMap.js +727 -0
  656. package/maps/collectibleNameMap.lua +2 -0
  657. package/maps/defaultPlayerStatMap.js +14 -0
  658. package/maps/defaultPlayerStatMap.lua +2 -0
  659. package/maps/falsePHDPillConversions.js +34 -0
  660. package/maps/falsePHDPillConversions.lua +2 -0
  661. package/maps/gridEntityTypeToBrokenStateMap.js +29 -0
  662. package/maps/gridEntityTypeToBrokenStateMap.lua +2 -0
  663. package/maps/gridEntityXMLMap.js +128 -0
  664. package/maps/gridEntityXMLMap.lua +2 -0
  665. package/maps/pillEffectMap.js +88 -0
  666. package/maps/pillEffectMap.lua +2 -0
  667. package/maps/roomShapeToTopLeftWallGridIndexMap.js +14 -0
  668. package/maps/roomShapeToTopLeftWallGridIndexMap.lua +2 -0
  669. package/maps/roomTypeMap.js +39 -0
  670. package/maps/roomTypeMap.lua +2 -0
  671. package/maps/trinketDescriptionMap.js +196 -0
  672. package/maps/trinketDescriptionMap.lua +2 -0
  673. package/maps/trinketNameMap.js +195 -0
  674. package/maps/trinketNameMap.lua +2 -0
  675. package/objects/LRoomShapeToRectangles.js +33 -0
  676. package/objects/LRoomShapeToRectangles.lua +2 -0
  677. package/objects/backdropTypeToRockAltType.js +66 -0
  678. package/objects/backdropTypeToRockAltType.lua +2 -0
  679. package/objects/bossNamePNGFileNames.js +112 -0
  680. package/objects/bossNamePNGFileNames.lua +2 -0
  681. package/objects/bossPortraitPNGFileNames.js +115 -0
  682. package/objects/bossPortraitPNGFileNames.lua +2 -0
  683. package/objects/callbackRegisterFunctions.js +170 -0
  684. package/objects/callbackRegisterFunctions.lua +2 -0
  685. package/objects/cardDescriptions.js +104 -0
  686. package/objects/cardDescriptions.lua +2 -0
  687. package/objects/cardNames.js +104 -0
  688. package/objects/cardNames.lua +2 -0
  689. package/objects/cardTypes.js +103 -0
  690. package/objects/cardTypes.lua +2 -0
  691. package/objects/challengeNames.js +51 -0
  692. package/objects/challengeNames.lua +2 -0
  693. package/objects/characterNames.js +46 -0
  694. package/objects/characterNames.lua +2 -0
  695. package/objects/coinSubTypeToValue.js +13 -0
  696. package/objects/coinSubTypeToValue.lua +2 -0
  697. package/objects/colors.d.ts +1 -0
  698. package/objects/colors.js +24 -0
  699. package/objects/colors.lua +2 -0
  700. package/objects/directionNames.js +9 -0
  701. package/objects/directionNames.lua +2 -0
  702. package/objects/directionToDegrees.js +9 -0
  703. package/objects/directionToDegrees.lua +2 -0
  704. package/objects/directionToVector.js +10 -0
  705. package/objects/directionToVector.lua +2 -0
  706. package/objects/doorSlotFlagToDoorSlot.js +13 -0
  707. package/objects/doorSlotFlagToDoorSlot.lua +2 -0
  708. package/objects/doorSlotToDirection.js +13 -0
  709. package/objects/doorSlotToDirection.lua +2 -0
  710. package/objects/doorSlotToDoorSlotFlag.js +13 -0
  711. package/objects/doorSlotToDoorSlotFlag.lua +2 -0
  712. package/objects/isaacAPIClassTypeToBrand.js +9 -0
  713. package/objects/isaacAPIClassTypeToBrand.lua +2 -0
  714. package/objects/isaacAPIClassTypeToCopyFunction.js +12 -0
  715. package/objects/isaacAPIClassTypeToCopyFunction.lua +2 -0
  716. package/objects/languageNames.js +11 -0
  717. package/objects/languageNames.lua +2 -0
  718. package/objects/oppositeDoorSlots.js +13 -0
  719. package/objects/oppositeDoorSlots.lua +2 -0
  720. package/objects/pillEffectClasses.js +56 -0
  721. package/objects/pillEffectClasses.lua +2 -0
  722. package/objects/pillEffectNames.js +55 -0
  723. package/objects/pillEffectNames.lua +2 -0
  724. package/objects/pillEffectTypes.js +55 -0
  725. package/objects/pillEffectTypes.lua +2 -0
  726. package/objects/playerNamePNGFileNames.js +55 -0
  727. package/objects/playerNamePNGFileNames.lua +2 -0
  728. package/objects/playerPortraitPNGFileNames.js +52 -0
  729. package/objects/playerPortraitPNGFileNames.lua +2 -0
  730. package/objects/roomShapeBounds.js +46 -0
  731. package/objects/roomShapeBounds.lua +2 -0
  732. package/objects/roomShapeCorners.js +268 -0
  733. package/objects/roomShapeCorners.lua +2 -0
  734. package/objects/roomShapeLayoutSizes.js +39 -0
  735. package/objects/roomShapeLayoutSizes.lua +2 -0
  736. package/objects/roomShapeToBottomRightPosition.js +22 -0
  737. package/objects/roomShapeToBottomRightPosition.lua +2 -0
  738. package/objects/roomShapeToDoorSlotCoordinates.js +109 -0
  739. package/objects/roomShapeToDoorSlotCoordinates.lua +2 -0
  740. package/objects/roomShapeToDoorSlots.js +69 -0
  741. package/objects/roomShapeToDoorSlots.lua +2 -0
  742. package/objects/roomShapeToDoorSlotsToGridIndexDelta.js +113 -0
  743. package/objects/roomShapeToDoorSlotsToGridIndexDelta.lua +2 -0
  744. package/objects/roomShapeToGridWidth.js +18 -0
  745. package/objects/roomShapeToGridWidth.lua +2 -0
  746. package/objects/roomShapeToTopLeftPosition.js +23 -0
  747. package/objects/roomShapeToTopLeftPosition.lua +2 -0
  748. package/objects/roomShapeVolumes.js +30 -0
  749. package/objects/roomShapeVolumes.lua +2 -0
  750. package/objects/roomTypeGotoPrefixes.js +33 -0
  751. package/objects/roomTypeGotoPrefixes.lua +2 -0
  752. package/objects/roomTypeNames.js +34 -0
  753. package/objects/roomTypeNames.lua +2 -0
  754. package/objects/serializedIsaacAPIClassTypeToIdentityFunction.js +12 -0
  755. package/objects/serializedIsaacAPIClassTypeToIdentityFunction.lua +2 -0
  756. package/objects/stageTypeSuffixes.js +10 -0
  757. package/objects/stageTypeSuffixes.lua +2 -0
  758. package/objects/stageTypeToLetter.js +12 -0
  759. package/objects/stageTypeToLetter.lua +2 -0
  760. package/objects/transformationNames.js +18 -0
  761. package/objects/transformationNames.lua +2 -0
  762. package/objects/versusScreenBackgroundColors.js +36 -0
  763. package/objects/versusScreenBackgroundColors.lua +2 -0
  764. package/objects/versusScreenDirtSpotColors.js +36 -0
  765. package/objects/versusScreenDirtSpotColors.lua +2 -0
  766. package/package.json +1 -1
  767. package/patchErrorFunctions.js +67 -0
  768. package/patchErrorFunctions.lua +2 -0
  769. package/sets/LRoomShapesSet.js +8 -0
  770. package/sets/LRoomShapesSet.lua +2 -0
  771. package/sets/bossSets.js +374 -0
  772. package/sets/bossSets.lua +2 -0
  773. package/sets/charactersThatStartWithAnActiveItemSet.js +15 -0
  774. package/sets/charactersThatStartWithAnActiveItemSet.lua +2 -0
  775. package/sets/charactersWithBlackHeartFromEternalHeartSet.js +6 -0
  776. package/sets/charactersWithBlackHeartFromEternalHeartSet.lua +2 -0
  777. package/sets/charactersWithFreeDevilDealsSet.js +3 -0
  778. package/sets/charactersWithFreeDevilDealsSet.lua +2 -0
  779. package/sets/charactersWithNoRedHeartsSet.js +16 -0
  780. package/sets/charactersWithNoRedHeartsSet.lua +2 -0
  781. package/sets/charactersWithNoSoulHeartsSet.js +13 -0
  782. package/sets/charactersWithNoSoulHeartsSet.lua +2 -0
  783. package/sets/chestPickupVariantsSet.js +16 -0
  784. package/sets/chestPickupVariantsSet.lua +2 -0
  785. package/sets/consoleCommandsSet.js +61 -0
  786. package/sets/consoleCommandsSet.lua +2 -0
  787. package/sets/familiarsThatShootPlayerTearsSet.js +12 -0
  788. package/sets/familiarsThatShootPlayerTearsSet.lua +2 -0
  789. package/sets/lostStyleCharactersSet.js +13 -0
  790. package/sets/lostStyleCharactersSet.lua +2 -0
  791. package/sets/mineShaftRoomSubTypesSet.js +9 -0
  792. package/sets/mineShaftRoomSubTypesSet.lua +2 -0
  793. package/sets/narrowRoomShapesSet.js +8 -0
  794. package/sets/narrowRoomShapesSet.lua +2 -0
  795. package/sets/redHeartSubTypesSet.js +7 -0
  796. package/sets/redHeartSubTypesSet.lua +2 -0
  797. package/sets/sinEntityTypesSet.js +11 -0
  798. package/sets/sinEntityTypesSet.lua +2 -0
  799. package/sets/singleUseActiveCollectibleTypesSet.js +12 -0
  800. package/sets/singleUseActiveCollectibleTypesSet.lua +2 -0
  801. package/sets/storyBossesSet.js +17 -0
  802. package/sets/storyBossesSet.lua +2 -0
  803. package/shaderCrashFix.js +17 -0
  804. package/shaderCrashFix.lua +2 -0
  805. package/types/AnyEntity.js +2 -0
  806. package/types/AnyEntity.lua +2 -0
  807. package/types/CollectibleIndex.js +2 -0
  808. package/types/CollectibleIndex.lua +2 -0
  809. package/types/PickingUpItem.js +38 -0
  810. package/types/PickingUpItem.lua +2 -0
  811. package/types/PlayerIndex.js +2 -0
  812. package/types/PlayerIndex.lua +2 -0
  813. package/types/private/IsaacAPIClass.js +2 -0
  814. package/types/private/IsaacAPIClass.lua +2 -0
  815. package/types/private/SerializedIsaacAPIClass.js +2 -0
  816. package/types/private/SerializedIsaacAPIClass.lua +2 -0
  817. package/types/private/TSTLClass.js +2 -0
  818. package/types/private/TSTLClass.lua +2 -0
  819. package/upgradeMod.js +47 -0
  820. package/upgradeMod.lua +2 -0
@@ -0,0 +1,113 @@
1
+ import { DoorSlot, RoomShape } from "isaac-typescript-definitions";
2
+ import { LEVEL_GRID_ROW_WIDTH } from "../constants";
3
+ const LEFT = -1;
4
+ const UP = -LEVEL_GRID_ROW_WIDTH;
5
+ const RIGHT = 1;
6
+ const DOWN = LEVEL_GRID_ROW_WIDTH;
7
+ /**
8
+ * Deltas are considered to be from the safe grid index of the room (i.e. the top left corner, or
9
+ * top right corner in the case of `RoomShape.LTL`).
10
+ */
11
+ export const ROOM_SHAPE_TO_DOOR_SLOTS_TO_GRID_INDEX_DELTA = {
12
+ // 1
13
+ [RoomShape.SHAPE_1x1]: new Map([
14
+ [DoorSlot.LEFT_0, LEFT],
15
+ [DoorSlot.UP_0, UP],
16
+ [DoorSlot.RIGHT_0, RIGHT],
17
+ [DoorSlot.DOWN_0, DOWN], // 3
18
+ ]),
19
+ // 2
20
+ [RoomShape.IH]: new Map([
21
+ [DoorSlot.LEFT_0, LEFT],
22
+ [DoorSlot.RIGHT_0, RIGHT], // 2
23
+ ]),
24
+ // 3
25
+ [RoomShape.IV]: new Map([
26
+ [DoorSlot.UP_0, UP],
27
+ [DoorSlot.DOWN_0, DOWN], // 3
28
+ ]),
29
+ // 4
30
+ [RoomShape.SHAPE_1x2]: new Map([
31
+ [DoorSlot.LEFT_0, LEFT],
32
+ [DoorSlot.UP_0, UP],
33
+ [DoorSlot.RIGHT_0, RIGHT],
34
+ [DoorSlot.DOWN_0, DOWN + DOWN],
35
+ [DoorSlot.LEFT_1, DOWN + LEFT],
36
+ [DoorSlot.RIGHT_1, DOWN + RIGHT], // 6
37
+ ]),
38
+ // 5
39
+ [RoomShape.IIV]: new Map([
40
+ [DoorSlot.UP_0, UP],
41
+ [DoorSlot.DOWN_0, DOWN + DOWN], // 3
42
+ ]),
43
+ // 6
44
+ [RoomShape.SHAPE_2x1]: new Map([
45
+ [DoorSlot.LEFT_0, LEFT],
46
+ [DoorSlot.UP_0, UP],
47
+ [DoorSlot.RIGHT_0, RIGHT + RIGHT],
48
+ [DoorSlot.DOWN_0, DOWN],
49
+ [DoorSlot.UP_1, RIGHT + UP],
50
+ [DoorSlot.DOWN_1, RIGHT + DOWN], // 7
51
+ ]),
52
+ // 7
53
+ [RoomShape.IIH]: new Map([
54
+ [DoorSlot.LEFT_0, LEFT],
55
+ [DoorSlot.RIGHT_0, RIGHT + RIGHT], // 2
56
+ ]),
57
+ // 8
58
+ [RoomShape.SHAPE_2x2]: new Map([
59
+ [DoorSlot.LEFT_0, LEFT],
60
+ [DoorSlot.UP_0, UP],
61
+ [DoorSlot.RIGHT_0, RIGHT + RIGHT],
62
+ [DoorSlot.DOWN_0, DOWN + DOWN],
63
+ [DoorSlot.LEFT_1, DOWN + LEFT],
64
+ [DoorSlot.UP_1, RIGHT + UP],
65
+ [DoorSlot.RIGHT_1, RIGHT + DOWN + RIGHT],
66
+ [DoorSlot.DOWN_1, RIGHT + DOWN + DOWN], // 7
67
+ ]),
68
+ // 9
69
+ [RoomShape.LTL]: new Map([
70
+ [DoorSlot.LEFT_0, LEFT],
71
+ [DoorSlot.UP_0, DOWN + LEFT + UP],
72
+ [DoorSlot.RIGHT_0, RIGHT],
73
+ [DoorSlot.DOWN_0, DOWN + LEFT + DOWN],
74
+ [DoorSlot.LEFT_1, DOWN + LEFT + LEFT],
75
+ [DoorSlot.UP_1, UP],
76
+ [DoorSlot.RIGHT_1, DOWN + RIGHT],
77
+ [DoorSlot.DOWN_1, DOWN + DOWN], // 7
78
+ ]),
79
+ // 10
80
+ [RoomShape.LTR]: new Map([
81
+ [DoorSlot.LEFT_0, LEFT],
82
+ [DoorSlot.UP_0, UP],
83
+ [DoorSlot.RIGHT_0, RIGHT],
84
+ [DoorSlot.DOWN_0, DOWN + DOWN],
85
+ [DoorSlot.LEFT_1, DOWN + LEFT],
86
+ [DoorSlot.UP_1, DOWN + RIGHT + UP],
87
+ [DoorSlot.RIGHT_1, DOWN + RIGHT + RIGHT],
88
+ [DoorSlot.DOWN_1, DOWN + RIGHT + DOWN], // 7
89
+ ]),
90
+ // 11
91
+ [RoomShape.LBL]: new Map([
92
+ [DoorSlot.LEFT_0, LEFT],
93
+ [DoorSlot.UP_0, UP],
94
+ [DoorSlot.RIGHT_0, RIGHT + RIGHT],
95
+ [DoorSlot.DOWN_0, DOWN],
96
+ [DoorSlot.LEFT_1, RIGHT + DOWN + LEFT],
97
+ [DoorSlot.UP_1, RIGHT + UP],
98
+ [DoorSlot.RIGHT_1, RIGHT + DOWN + RIGHT],
99
+ [DoorSlot.DOWN_1, RIGHT + DOWN + DOWN], // 7
100
+ ]),
101
+ // 12
102
+ [RoomShape.LBR]: new Map([
103
+ [DoorSlot.LEFT_0, LEFT],
104
+ [DoorSlot.UP_0, UP],
105
+ [DoorSlot.RIGHT_0, RIGHT + RIGHT],
106
+ [DoorSlot.DOWN_0, DOWN + DOWN],
107
+ [DoorSlot.LEFT_1, DOWN + LEFT],
108
+ [DoorSlot.UP_1, RIGHT + UP],
109
+ [DoorSlot.RIGHT_1, DOWN + RIGHT],
110
+ [DoorSlot.DOWN_1, RIGHT + DOWN], // 7
111
+ ]),
112
+ };
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vbVNoYXBlVG9Eb29yU2xvdHNUb0dyaWRJbmRleERlbHRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvaXNhYWNzY3JpcHQtY29tbW9uL3NyYy9vYmplY3RzL3Jvb21TaGFwZVRvRG9vclNsb3RzVG9HcmlkSW5kZXhEZWx0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUVwRCxNQUFNLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQztBQUNoQixNQUFNLEVBQUUsR0FBRyxDQUFDLG9CQUFvQixDQUFDO0FBQ2pDLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQztBQUNoQixNQUFNLElBQUksR0FBRyxvQkFBb0IsQ0FBQztBQUVsQzs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSw0Q0FBNEMsR0FFckQ7SUFDRixJQUFJO0lBQ0osQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSSxHQUFHLENBQUM7UUFDN0IsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQztRQUN2QixDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDO1FBQ25CLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUM7UUFDekIsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxFQUFFLElBQUk7S0FDOUIsQ0FBQztJQUVGLElBQUk7SUFDSixDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxJQUFJLEdBQUcsQ0FBQztRQUN0QixDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDO1FBQ3ZCLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRSxJQUFJO0tBQ2hDLENBQUM7SUFFRixJ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
@@ -87,3 +87,5 @@ ____exports.ROOM_SHAPE_TO_DOOR_SLOTS_TO_GRID_INDEX_DELTA = {
87
87
  })
88
88
  }
89
89
  return ____exports
90
+
91
+ --# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvb2JqZWN0cy9yb29tU2hhcGVUb0Rvb3JTbG90c1RvR3JpZEluZGV4RGVsdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLDZDQUFvQztBQUEzQjtBQUFVO0FBQ25CLHNCQUFxQztBQUE1QjtBQUVILGNBQVE7QUFDUixZQUFNO0FBQ04sY0FBUTtBQUNSLGFBQU87OztBQU1BLDJEQUVUO0lBRUYsQ0FBQyx1QkFBc0IsVUFBSSxLQUFJLENBQzdCLENBQUMsaUJBQWlCLE9BQ2xCLENBQUMsZUFBZSxLQUNoQixDQUFDLGtCQUFrQixRQUNuQixDQUFDLGlCQUFpQjtJQUlwQixDQUFDLGdCQUFlLFVBQUksS0FBSSxDQUN0QixDQUFDLGlCQUFpQixPQUNsQixDQUFDLGtCQUFrQjtJQUlyQixDQUFDLGdCQUFlLFVBQUksS0FBSSxDQUN0QixDQUFDLGVBQWUsS0FDaEIsQ0FBQyxpQkFBaUI7SUFJcEIsQ0FBQyx1QkFBc0IsVUFBSSxLQUFJO1FBQzdCLENBQUMsaUJBQWlCO1FBQ2xCLENBQUMsZUFBZTtRQUNoQixDQUFDLGtCQUFrQjtRQUNuQixDQUFDLGlCQUFpQixPQUFPO1FBQ3pCLENBQUMsaUJBQWlCLE9BQU87UUFDekIsQ0FBQyxrQkFBa0IsT0FBTzs7SUFJNUIsQ0FBQyxpQkFBZ0IsVUFBSSxLQUFJLENBQ3ZCLENBQUMsZUFBZSxLQUNoQixDQUFDLGlCQUFpQixPQUFPO0lBSTNCLENBQUMsdUJBQXNCLFVBQUksS0FBSTtRQUM3QixDQUFDLGlCQUFpQjtRQUNsQixDQUFDLGVBQWU7UUFDaEIsQ0FBQyxrQkFBa0IsUUFBUTtRQUMzQixDQUFDLGlCQUFpQjtRQUNsQixDQUFDLGVBQWUsUUFBUTtRQUN4QixDQUFDLGlCQUFpQixRQUFROztJQUk1QixDQUFDLGlCQUFnQixVQUFJLEtBQUksQ0FDdkIsQ0FBQyxpQkFBaUIsT0FDbEIsQ0FBQyxrQkFBa0IsUUFBUTtJQUk3QixDQUFDLHVCQUFzQixVQUFJLEtBQUk7UUFDN0IsQ0FBQyxpQkFBaUI7UUFDbEIsQ0FBQyxlQUFlO1FBQ2hCLENBQUMsa0JBQWtCLFFBQVE7UUFDM0IsQ0FBQyxpQkFBaUIsT0FBTztRQUN6QixDQUFDLGlCQUFpQixPQUFPO1FBQ3pCLENBQUMsZUFBZSxRQUFRO1FBQ3hCLENBQUMsa0JBQWtCLFFBQVEsT0FBTztRQUNsQyxDQUFDLGlCQUFpQixRQUFRLE9BQU87O0lBSW5DLENBQUMsaUJBQWdCLFVBQUksS0FBSTtRQUN2QixDQUFDLGlCQUFpQjtRQUNsQixDQUFDLGVBQWUsT0FBTyxPQUFPO1FBQzlCLENBQUMsa0JBQWtCO1FBQ25CLENBQUMsaUJBQWlCLE9BQU8sT0FBTztRQUNoQyxDQUFDLGlCQUFpQixPQUFPLE9BQU87UUFDaEMsQ0FBQyxlQUFlO1FBQ2hCLENBQUMsa0JBQWtCLE9BQU87UUFDMUIsQ0FBQyxpQkFBaUIsT0FBTzs7SUFJM0IsQ0FBQyxpQkFBZ0IsVUFBSSxLQUFJO1FBQ3ZCLENBQUMsaUJBQWlCO1FBQ2xCLENBQUMsZUFBZTtRQUNoQixDQUFDLGtCQUFrQjtRQUNuQixDQUFDLGlCQUFpQixPQUFPO1FBQ3pCLENBQUMsaUJBQWlCLE9BQU87UUFDekIsQ0FBQyxlQUFlLE9BQU8sUUFBUTtRQUMvQixDQUFDLGtCQUFrQixPQUFPLFFBQVE7UUFDbEMsQ0FBQyxpQkFBaUIsT0FBTyxRQUFROztJQUluQyxDQUFDLGlCQUFnQixVQUFJLEtBQUk7UUFDdkIsQ0FBQyxpQkFBaUI7UUFDbEIsQ0FBQyxlQUFlO1FBQ2hCLENBQUMsa0JBQWtCLFFBQVE7UUFDM0IsQ0FBQyxpQkFBaUI7UUFDbEIsQ0FBQyxpQkFBaUIsUUFBUSxPQUFPO1FBQ2pDLENBQUMsZUFBZSxRQUFRO1FBQ3hCLENBQUMsa0JBQWtCLFFBQVEsT0FBTztRQUNsQyxDQUFDLGlCQUFpQixRQUFRLE9BQU87O0lBSW5DLENBQUMsaUJBQWdCLFVBQUksS0FBSTtRQUN2QixDQUFDLGlCQUFpQjtRQUNsQixDQUFDLGVBQWU7UUFDaEIsQ0FBQyxrQkFBa0IsUUFBUTtRQUMzQixDQUFDLGlCQUFpQixPQUFPO1FBQ3pCLENBQUMsaUJBQWlCLE9BQU87UUFDekIsQ0FBQyxlQUFlLFFBQVE7UUFDeEIsQ0FBQyxrQkFBa0IsT0FBTztRQUMxQixDQUFDLGlCQUFpQixRQUFRIiwiZmlsZSI6InJvb21TaGFwZVRvRG9vclNsb3RzVG9HcmlkSW5kZXhEZWx0YS5sdWEiLCJzb3VyY2VSb290IjoiIn0=
@@ -0,0 +1,18 @@
1
+ import { RoomShape } from "isaac-typescript-definitions";
2
+ const ONE_BY_ONE_WIDTH = 15;
3
+ const TWO_BY_ONE_WIDTH = 28;
4
+ export const ROOM_SHAPE_TO_GRID_WIDTH = {
5
+ [RoomShape.SHAPE_1x1]: ONE_BY_ONE_WIDTH,
6
+ [RoomShape.IH]: ONE_BY_ONE_WIDTH,
7
+ [RoomShape.IV]: ONE_BY_ONE_WIDTH,
8
+ [RoomShape.SHAPE_1x2]: ONE_BY_ONE_WIDTH,
9
+ [RoomShape.IIV]: ONE_BY_ONE_WIDTH,
10
+ [RoomShape.SHAPE_2x1]: TWO_BY_ONE_WIDTH,
11
+ [RoomShape.IIH]: TWO_BY_ONE_WIDTH,
12
+ [RoomShape.SHAPE_2x2]: TWO_BY_ONE_WIDTH,
13
+ [RoomShape.LTL]: TWO_BY_ONE_WIDTH,
14
+ [RoomShape.LTR]: TWO_BY_ONE_WIDTH,
15
+ [RoomShape.LBL]: TWO_BY_ONE_WIDTH,
16
+ [RoomShape.LBR]: TWO_BY_ONE_WIDTH, // 12
17
+ };
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vbVNoYXBlVG9HcmlkV2lkdGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9pc2FhY3NjcmlwdC1jb21tb24vc3JjL29iamVjdHMvcm9vbVNoYXBlVG9HcmlkV2lkdGgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXpELE1BQU0sZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO0FBQzVCLE1BQU0sZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO0FBRTVCLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUVqQztJQUNGLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxFQUFFLGdCQUFnQjtJQUN2QyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7SUFDaEMsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO0lBQ2hDLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxFQUFFLGdCQUFnQjtJQUN2QyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxnQkFBZ0I7SUFDakMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUUsZ0JBQWdCO0lBQ3ZDLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLGdCQUFnQjtJQUNqQyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBRSxnQkFBZ0I7SUFDdkMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsZ0JBQWdCO0lBQ2pDLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLGdCQUFnQjtJQUNqQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxnQkFBZ0I7SUFDakMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSztDQUNoQyxDQUFDIn0=
@@ -18,3 +18,5 @@ ____exports.ROOM_SHAPE_TO_GRID_WIDTH = {
18
18
  [RoomShape.LBR] = TWO_BY_ONE_WIDTH
19
19
  }
20
20
  return ____exports
21
+
22
+ --# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvb2JqZWN0cy9yb29tU2hhcGVUb0dyaWRXaWR0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsNkNBQTBCO0FBQWpCO0FBRUgseUJBQW1CO0FBQ25CLHlCQUFtQjtBQUVaLHVDQUVUO0lBQ0YsQ0FBQyx1QkFBc0I7SUFDdkIsQ0FBQyxnQkFBZTtJQUNoQixDQUFDLGdCQUFlO0lBQ2hCLENBQUMsdUJBQXNCO0lBQ3ZCLENBQUMsaUJBQWdCO0lBQ2pCLENBQUMsdUJBQXNCO0lBQ3ZCLENBQUMsaUJBQWdCO0lBQ2pCLENBQUMsdUJBQXNCO0lBQ3ZCLENBQUMsaUJBQWdCO0lBQ2pCLENBQUMsaUJBQWdCO0lBQ2pCLENBQUMsaUJBQWdCO0lBQ2pCLENBQUMsaUJBQWdCIiwiZmlsZSI6InJvb21TaGFwZVRvR3JpZFdpZHRoLmx1YSIsInNvdXJjZVJvb3QiOiIifQ==
@@ -0,0 +1,23 @@
1
+ import { RoomShape } from "isaac-typescript-definitions";
2
+ import { VectorZero } from "../constants";
3
+ const NARROW_HORIZONTAL_TOP_LEFT_POSITION = Vector(0, 2);
4
+ const NARROW_VERTICAL_TOP_LEFT_POSITION = Vector(4, 0);
5
+ /**
6
+ * "Vector(0, 0)" corresponds to the top left tile of a room, not including the walls. (The top-left
7
+ * wall would be at "Vector(-1, -1)".)
8
+ */
9
+ export const ROOM_SHAPE_TO_TOP_LEFT_POSITION = {
10
+ [RoomShape.SHAPE_1x1]: VectorZero,
11
+ [RoomShape.IH]: NARROW_HORIZONTAL_TOP_LEFT_POSITION,
12
+ [RoomShape.IV]: NARROW_VERTICAL_TOP_LEFT_POSITION,
13
+ [RoomShape.SHAPE_1x2]: VectorZero,
14
+ [RoomShape.IIV]: NARROW_VERTICAL_TOP_LEFT_POSITION,
15
+ [RoomShape.SHAPE_2x1]: VectorZero,
16
+ [RoomShape.IIH]: NARROW_HORIZONTAL_TOP_LEFT_POSITION,
17
+ [RoomShape.SHAPE_2x2]: VectorZero,
18
+ [RoomShape.LTL]: Vector(13, 0),
19
+ [RoomShape.LTR]: VectorZero,
20
+ [RoomShape.LBL]: VectorZero,
21
+ [RoomShape.LBR]: VectorZero, // 12
22
+ };
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vbVNoYXBlVG9Ub3BMZWZ0UG9zaXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9pc2FhY3NjcmlwdC1jb21tb24vc3JjL29iamVjdHMvcm9vbVNoYXBlVG9Ub3BMZWZ0UG9zaXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFMUMsTUFBTSxtQ0FBbUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQ3pELE1BQU0saUNBQWlDLEdBQUcsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUV2RDs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSwrQkFBK0IsR0FFeEM7SUFDRixDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBRSxVQUFVO0lBQ2pDLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLG1DQUFtQztJQUNuRCxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQ0FBaUM7SUFDakQsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUUsVUFBVTtJQUNqQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxpQ0FBaUM7SUFDbEQsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUUsVUFBVTtJQUNqQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxtQ0FBbUM7SUFDcEQsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUUsVUFBVTtJQUNqQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUM5QixDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxVQUFVO0lBQzNCLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLFVBQVU7SUFDM0IsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsVUFBVSxFQUFFLEtBQUs7Q0FDMUIsQ0FBQyJ9
@@ -22,3 +22,5 @@ ____exports.ROOM_SHAPE_TO_TOP_LEFT_POSITION = {
22
22
  [RoomShape.LBR] = VectorZero
23
23
  }
24
24
  return ____exports
25
+
26
+ --# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvb2JqZWN0cy9yb29tU2hhcGVUb1RvcExlZnRQb3NpdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsNkNBQTBCO0FBQWpCO0FBQ1Qsc0JBQTJCO0FBQWxCO0FBRUgsNENBQXNDLE9BQU8sR0FBRztBQUNoRCwwQ0FBb0MsT0FBTyxHQUFHOzs7QUFNdkMsOENBRVQ7SUFDRixDQUFDLHVCQUFzQjtJQUN2QixDQUFDLGdCQUFlO0lBQ2hCLENBQUMsZ0JBQWU7SUFDaEIsQ0FBQyx1QkFBc0I7SUFDdkIsQ0FBQyxpQkFBZ0I7SUFDakIsQ0FBQyx1QkFBc0I7SUFDdkIsQ0FBQyxpQkFBZ0I7SUFDakIsQ0FBQyx1QkFBc0I7SUFDdkIsQ0FBQyxpQkFBZ0IsT0FBTyxJQUFJO0lBQzVCLENBQUMsaUJBQWdCO0lBQ2pCLENBQUMsaUJBQWdCO0lBQ2pCLENBQUMsaUJBQWdCIiwiZmlsZSI6InJvb21TaGFwZVRvVG9wTGVmdFBvc2l0aW9uLmx1YSIsInNvdXJjZVJvb3QiOiIifQ==
@@ -0,0 +1,30 @@
1
+ import { RoomShape } from "isaac-typescript-definitions";
2
+ export const ONE_BY_ONE_CONTENTS_WIDTH = 13;
3
+ export const ONE_BY_ONE_CONTENTS_HEIGHT = 7;
4
+ const ONE_BY_ONE_VOLUME = ONE_BY_ONE_CONTENTS_HEIGHT * ONE_BY_ONE_CONTENTS_WIDTH;
5
+ export const NARROW_CONTENTS_WIDTH = 5;
6
+ export const NARROW_CONTENTS_HEIGHT = 3;
7
+ const NARROW_HORIZONTAL_VOLUME = ONE_BY_ONE_CONTENTS_WIDTH * NARROW_CONTENTS_HEIGHT;
8
+ const NARROW_VERTICAL_VOLUME = NARROW_CONTENTS_WIDTH * ONE_BY_ONE_CONTENTS_HEIGHT;
9
+ const ONE_BY_TWO_VOLUME = ONE_BY_ONE_VOLUME * 2;
10
+ const L_ROOM_VOLUME = ONE_BY_ONE_VOLUME * 3;
11
+ /**
12
+ * Volume is the amount of tiles that are inside the room shape.
13
+ *
14
+ * (This cannot be directly calculated from the bounds since L rooms are a special case.)
15
+ */
16
+ export const ROOM_SHAPE_VOLUMES = {
17
+ [RoomShape.SHAPE_1x1]: ONE_BY_ONE_VOLUME,
18
+ [RoomShape.IH]: NARROW_HORIZONTAL_VOLUME,
19
+ [RoomShape.IV]: NARROW_VERTICAL_VOLUME,
20
+ [RoomShape.SHAPE_1x2]: ONE_BY_TWO_VOLUME,
21
+ [RoomShape.IIV]: NARROW_VERTICAL_VOLUME * 2,
22
+ [RoomShape.SHAPE_2x1]: ONE_BY_TWO_VOLUME,
23
+ [RoomShape.IIH]: NARROW_HORIZONTAL_VOLUME * 2,
24
+ [RoomShape.SHAPE_2x2]: ONE_BY_ONE_VOLUME * 4,
25
+ [RoomShape.LTL]: L_ROOM_VOLUME,
26
+ [RoomShape.LTR]: L_ROOM_VOLUME,
27
+ [RoomShape.LBL]: L_ROOM_VOLUME,
28
+ [RoomShape.LBR]: L_ROOM_VOLUME, // 12
29
+ };
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vbVNoYXBlVm9sdW1lcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvb2JqZWN0cy9yb29tU2hhcGVWb2x1bWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUV6RCxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxFQUFFLENBQUM7QUFDNUMsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsQ0FBQyxDQUFDO0FBQzVDLE1BQU0saUJBQWlCLEdBQ3JCLDBCQUEwQixHQUFHLHlCQUF5QixDQUFDO0FBRXpELE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLENBQUMsQ0FBQztBQUN2QyxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxDQUFDLENBQUM7QUFDeEMsTUFBTSx3QkFBd0IsR0FDNUIseUJBQXlCLEdBQUcsc0JBQXNCLENBQUM7QUFDckQsTUFBTSxzQkFBc0IsR0FDMUIscUJBQXFCLEdBQUcsMEJBQTBCLENBQUM7QUFFckQsTUFBTSxpQkFBaUIsR0FBRyxpQkFBaUIsR0FBRyxDQUFDLENBQUM7QUFDaEQsTUFBTSxhQUFhLEdBQUcsaUJBQWlCLEdBQUcsQ0FBQyxDQUFDO0FBRTVDOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FFM0I7SUFDRixDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBRSxpQkFBaUI7SUFDeEMsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsd0JBQXdCO0lBQ3hDLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLHNCQUFzQjtJQUN0QyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBRSxpQkFBaUI7SUFDeEMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsc0JBQXNCLEdBQUcsQ0FBQztJQUMzQyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBRSxpQkFBaUI7SUFDeEMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsd0JBQXdCLEdBQUcsQ0FBQztJQUM3QyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBRSxpQkFBaUIsR0FBRyxDQUFDO0lBQzVDLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLGFBQWE7SUFDOUIsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsYUFBYTtJQUM5QixDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxhQUFhO0lBQzlCLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLGFBQWEsRUFBRSxLQUFLO0NBQzdCLENBQUMifQ==
@@ -28,3 +28,5 @@ ____exports.ROOM_SHAPE_VOLUMES = {
28
28
  [RoomShape.LBR] = L_ROOM_VOLUME
29
29
  }
30
30
  return ____exports
31
+
32
+ --# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvb2JqZWN0cy9yb29tU2hhcGVWb2x1bWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw2Q0FBMEI7QUFBakI7QUFFSSx3Q0FBNEI7QUFDNUIseUNBQTZCO0FBQ3BDLDBCQUNKO0FBRVcsb0NBQXdCO0FBQ3hCLHFDQUF5QjtBQUNoQyxpQ0FDSjtBQUNJLCtCQUNKO0FBRUksMEJBQW9CLG9CQUFvQjtBQUN4QyxzQkFBZ0Isb0JBQW9COzs7O0FBTzdCLGlDQUVUO0lBQ0YsQ0FBQyx1QkFBc0I7SUFDdkIsQ0FBQyxnQkFBZTtJQUNoQixDQUFDLGdCQUFlO0lBQ2hCLENBQUMsdUJBQXNCO0lBQ3ZCLENBQUMsaUJBQWdCLHlCQUF5QjtJQUMxQyxDQUFDLHVCQUFzQjtJQUN2QixDQUFDLGlCQUFnQiwyQkFBMkI7SUFDNUMsQ0FBQyx1QkFBc0Isb0JBQW9CO0lBQzNDLENBQUMsaUJBQWdCO0lBQ2pCLENBQUMsaUJBQWdCO0lBQ2pCLENBQUMsaUJBQWdCO0lBQ2pCLENBQUMsaUJBQWdCIiwiZmlsZSI6InJvb21TaGFwZVZvbHVtZXMubHVhIiwic291cmNlUm9vdCI6IiJ9
@@ -0,0 +1,33 @@
1
+ import { RoomType } from "isaac-typescript-definitions";
2
+ export const ROOM_TYPE_GOTO_PREFIXES = {
3
+ [RoomType.DEFAULT]: "s.default",
4
+ [RoomType.SHOP]: "s.shop",
5
+ [RoomType.ERROR]: "s.error",
6
+ [RoomType.TREASURE]: "s.treasure",
7
+ [RoomType.BOSS]: "s.boss",
8
+ [RoomType.MINI_BOSS]: "s.miniboss",
9
+ [RoomType.SECRET]: "s.secret",
10
+ [RoomType.SUPER_SECRET]: "s.supersecret",
11
+ [RoomType.ARCADE]: "s.arcade",
12
+ [RoomType.CURSE]: "s.curse",
13
+ [RoomType.CHALLENGE]: "s.challenge",
14
+ [RoomType.LIBRARY]: "s.library",
15
+ [RoomType.SACRIFICE]: "s.sacrifice",
16
+ [RoomType.DEVIL]: "s.devil",
17
+ [RoomType.ANGEL]: "s.angel",
18
+ [RoomType.DUNGEON]: "s.itemdungeon",
19
+ [RoomType.BOSS_RUSH]: "s.bossrush",
20
+ [RoomType.CLEAN_BEDROOM]: "s.isaacs",
21
+ [RoomType.DIRTY_BEDROOM]: "s.barren",
22
+ [RoomType.CHEST]: "s.chest",
23
+ [RoomType.DICE]: "s.dice",
24
+ [RoomType.BLACK_MARKET]: "s.blackmarket",
25
+ [RoomType.GREED_EXIT]: "s.greedexit",
26
+ [RoomType.PLANETARIUM]: "s.planetarium",
27
+ [RoomType.TELEPORTER]: "s.teleporter",
28
+ [RoomType.TELEPORTER_EXIT]: "s.teleporterexit",
29
+ [RoomType.SECRET_EXIT]: "s.secretexit",
30
+ [RoomType.BLUE]: "s.blue",
31
+ [RoomType.ULTRA_SECRET]: "s.ultrasecret", // 29
32
+ };
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vbVR5cGVHb3RvUHJlZml4ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9pc2FhY3NjcmlwdC1jb21tb24vc3JjL29iamVjdHMvcm9vbVR5cGVHb3RvUHJlZml4ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXhELE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUVoQztJQUNGLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFdBQVc7SUFDL0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsUUFBUTtJQUN6QixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxTQUFTO0lBQzNCLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFlBQVk7SUFDakMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsUUFBUTtJQUN6QixDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRSxZQUFZO0lBQ2xDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFVBQVU7SUFDN0IsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEVBQUUsZUFBZTtJQUN4QyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxVQUFVO0lBQzdCLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLFNBQVM7SUFDM0IsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsYUFBYTtJQUNuQyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxXQUFXO0lBQy9CLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLGFBQWE7SUFDbkMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUztJQUMzQixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxTQUFTO0lBQzNCLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLGVBQWU7SUFDbkMsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsWUFBWTtJQUNsQyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRSxVQUFVO0lBQ3BDLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFLFVBQVU7SUFDcEMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUztJQUMzQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRO0lBQ3pCLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxFQUFFLGVBQWU7SUFDeEMsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUUsYUFBYTtJQUNwQyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRSxlQUFlO0lBQ3ZDLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFFLGNBQWM7SUFDckMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLEVBQUUsa0JBQWtCO0lBQzlDLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxFQUFFLGNBQWM7SUFDdEMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsUUFBUTtJQUN6QixDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsRUFBRSxlQUFlLEVBQUUsS0FBSztDQUN2QyxDQUFDIn0=
@@ -33,3 +33,5 @@ ____exports.ROOM_TYPE_GOTO_PREFIXES = {
33
33
  [RoomType.ULTRA_SECRET] = "s.ultrasecret"
34
34
  }
35
35
  return ____exports
36
+
37
+ --# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvb2JqZWN0cy9yb29tVHlwZUdvdG9QcmVmaXhlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsNkNBQXlCO0FBQWhCO0FBRUksc0NBRVQ7SUFDRixDQUFDLG9CQUFtQjtJQUNwQixDQUFDLGlCQUFnQjtJQUNqQixDQUFDLGtCQUFpQjtJQUNsQixDQUFDLHFCQUFvQjtJQUNyQixDQUFDLGlCQUFnQjtJQUNqQixDQUFDLHNCQUFxQjtJQUN0QixDQUFDLG1CQUFrQjtJQUNuQixDQUFDLHlCQUF3QjtJQUN6QixDQUFDLG1CQUFrQjtJQUNuQixDQUFDLGtCQUFpQjtJQUNsQixDQUFDLHNCQUFxQjtJQUN0QixDQUFDLG9CQUFtQjtJQUNwQixDQUFDLHNCQUFxQjtJQUN0QixDQUFDLGtCQUFpQjtJQUNsQixDQUFDLGtCQUFpQjtJQUNsQixDQUFDLG9CQUFtQjtJQUNwQixDQUFDLHNCQUFxQjtJQUN0QixDQUFDLDBCQUF5QjtJQUMxQixDQUFDLDBCQUF5QjtJQUMxQixDQUFDLGtCQUFpQjtJQUNsQixDQUFDLGlCQUFnQjtJQUNqQixDQUFDLHlCQUF3QjtJQUN6QixDQUFDLHVCQUFzQjtJQUN2QixDQUFDLHdCQUF1QjtJQUN4QixDQUFDLHVCQUFzQjtJQUN2QixDQUFDLDRCQUEyQjtJQUM1QixDQUFDLHdCQUF1QjtJQUN4QixDQUFDLGlCQUFnQjtJQUNqQixDQUFDLHlCQUF3QiIsImZpbGUiOiJyb29tVHlwZUdvdG9QcmVmaXhlcy5sdWEiLCJzb3VyY2VSb290IjoiIn0=
@@ -0,0 +1,34 @@
1
+ import { RoomType } from "isaac-typescript-definitions";
2
+ export const DEFAULT_ROOM_TYPE_NAME = "Unknown";
3
+ export const ROOM_TYPE_NAMES = {
4
+ [RoomType.DEFAULT]: "default room",
5
+ [RoomType.SHOP]: "shop",
6
+ [RoomType.ERROR]: "I AM ERROR Room",
7
+ [RoomType.TREASURE]: "Treasure Room",
8
+ [RoomType.BOSS]: "Boss Room",
9
+ [RoomType.MINI_BOSS]: "Miniboss Room",
10
+ [RoomType.SECRET]: "Secret Room",
11
+ [RoomType.SUPER_SECRET]: "Super Secret Room",
12
+ [RoomType.ARCADE]: "Arcade",
13
+ [RoomType.CURSE]: "Curse Room",
14
+ [RoomType.CHALLENGE]: "Challenge Room",
15
+ [RoomType.LIBRARY]: "Library",
16
+ [RoomType.SACRIFICE]: "Sacrifice Room",
17
+ [RoomType.DEVIL]: "Devil Room",
18
+ [RoomType.ANGEL]: "Angel Room",
19
+ [RoomType.DUNGEON]: "Crawl Space",
20
+ [RoomType.BOSS_RUSH]: "Boss Rush",
21
+ [RoomType.CLEAN_BEDROOM]: "Clean Bedroom",
22
+ [RoomType.DIRTY_BEDROOM]: "Dirty Bedroom",
23
+ [RoomType.CHEST]: "Chest Room",
24
+ [RoomType.DICE]: "Dice Room",
25
+ [RoomType.BLACK_MARKET]: "Black Market",
26
+ [RoomType.GREED_EXIT]: "Greed Exit Room",
27
+ [RoomType.PLANETARIUM]: "Planetarium",
28
+ [RoomType.TELEPORTER]: "Teleporter Room",
29
+ [RoomType.TELEPORTER_EXIT]: "Teleporter Exit Room",
30
+ [RoomType.SECRET_EXIT]: "Secret Exit",
31
+ [RoomType.BLUE]: "Blue Room",
32
+ [RoomType.ULTRA_SECRET]: "Ultra Secret Room", // 29
33
+ };
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vbVR5cGVOYW1lcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvb2JqZWN0cy9yb29tVHlwZU5hbWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUV4RCxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxTQUFTLENBQUM7QUFFaEQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUEyQztJQUNyRSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxjQUFjO0lBQ2xDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU07SUFDdkIsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsaUJBQWlCO0lBQ25DLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFLGVBQWU7SUFDcEMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsV0FBVztJQUM1QixDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRSxlQUFlO0lBQ3JDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLGFBQWE7SUFDaEMsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEVBQUUsbUJBQW1CO0lBQzVDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVE7SUFDM0IsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsWUFBWTtJQUM5QixDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRSxnQkFBZ0I7SUFDdEMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsU0FBUztJQUM3QixDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRSxnQkFBZ0I7SUFDdEMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsWUFBWTtJQUM5QixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxZQUFZO0lBQzlCLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLGFBQWE7SUFDakMsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsV0FBVztJQUNqQyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRSxlQUFlO0lBQ3pDLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFLGVBQWU7SUFDekMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsWUFBWTtJQUM5QixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxXQUFXO0lBQzVCLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxFQUFFLGNBQWM7SUFDdkMsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUUsaUJBQWlCO0lBQ3hDLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxFQUFFLGFBQWE7SUFDckMsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUUsaUJBQWlCO0lBQ3hDLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxFQUFFLHNCQUFzQjtJQUNsRCxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRSxhQUFhO0lBQ3JDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLFdBQVc7SUFDNUIsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEVBQUUsbUJBQW1CLEVBQUUsS0FBSztDQUMzQyxDQUFDIn0=
@@ -34,3 +34,5 @@ ____exports.ROOM_TYPE_NAMES = {
34
34
  [RoomType.ULTRA_SECRET] = "Ultra Secret Room"
35
35
  }
36
36
  return ____exports
37
+
38
+ --# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvb2JqZWN0cy9yb29tVHlwZU5hbWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw2Q0FBeUI7QUFBaEI7QUFFSSxxQ0FBeUI7QUFFekIsOEJBQTBEO0lBQ3JFLENBQUMsb0JBQW1CO0lBQ3BCLENBQUMsaUJBQWdCO0lBQ2pCLENBQUMsa0JBQWlCO0lBQ2xCLENBQUMscUJBQW9CO0lBQ3JCLENBQUMsaUJBQWdCO0lBQ2pCLENBQUMsc0JBQXFCO0lBQ3RCLENBQUMsbUJBQWtCO0lBQ25CLENBQUMseUJBQXdCO0lBQ3pCLENBQUMsbUJBQWtCO0lBQ25CLENBQUMsa0JBQWlCO0lBQ2xCLENBQUMsc0JBQXFCO0lBQ3RCLENBQUMsb0JBQW1CO0lBQ3BCLENBQUMsc0JBQXFCO0lBQ3RCLENBQUMsa0JBQWlCO0lBQ2xCLENBQUMsa0JBQWlCO0lBQ2xCLENBQUMsb0JBQW1CO0lBQ3BCLENBQUMsc0JBQXFCO0lBQ3RCLENBQUMsMEJBQXlCO0lBQzFCLENBQUMsMEJBQXlCO0lBQzFCLENBQUMsa0JBQWlCO0lBQ2xCLENBQUMsaUJBQWdCO0lBQ2pCLENBQUMseUJBQXdCO0lBQ3pCLENBQUMsdUJBQXNCO0lBQ3ZCLENBQUMsd0JBQXVCO0lBQ3hCLENBQUMsdUJBQXNCO0lBQ3ZCLENBQUMsNEJBQTJCO0lBQzVCLENBQUMsd0JBQXVCO0lBQ3hCLENBQUMsaUJBQWdCO0lBQ2pCLENBQUMseUJBQXdCIiwiZmlsZSI6InJvb21UeXBlTmFtZXMubHVhIiwic291cmNlUm9vdCI6IiJ9
@@ -0,0 +1,12 @@
1
+ import { CopyableIsaacAPIClassType } from "../enums/private/CopyableIsaacAPIClassType";
2
+ import { isSerializedColor } from "../functions/color";
3
+ import { isSerializedKColor } from "../functions/kColor";
4
+ import { isSerializedRNG } from "../functions/rng";
5
+ import { isSerializedVector } from "../functions/vector";
6
+ export const SERIALIZED_ISAAC_API_CLASS_TYPE_TO_IDENTITY_FUNCTION = {
7
+ [CopyableIsaacAPIClassType.COLOR]: isSerializedColor,
8
+ [CopyableIsaacAPIClassType.K_COLOR]: isSerializedKColor,
9
+ [CopyableIsaacAPIClassType.RNG]: isSerializedRNG,
10
+ [CopyableIsaacAPIClassType.VECTOR]: isSerializedVector,
11
+ };
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VyaWFsaXplZElzYWFjQVBJQ2xhc3NUeXBlVG9JZGVudGl0eUZ1bmN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvaXNhYWNzY3JpcHQtY29tbW9uL3NyYy9vYmplY3RzL3NlcmlhbGl6ZWRJc2FhY0FQSUNsYXNzVHlwZVRvSWRlbnRpdHlGdW5jdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUN2RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFekQsTUFBTSxDQUFDLE1BQU0sb0RBQW9ELEdBRTdEO0lBQ0YsQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLENBQUMsRUFBRSxpQkFBaUI7SUFDcEQsQ0FBQyx5QkFBeUIsQ0FBQyxPQUFPLENBQUMsRUFBRSxrQkFBa0I7SUFDdkQsQ0FBQyx5QkFBeUIsQ0FBQyxHQUFHLENBQUMsRUFBRSxlQUFlO0lBQ2hELENBQUMseUJBQXlCLENBQUMsTUFBTSxDQUFDLEVBQUUsa0JBQWtCO0NBQzlDLENBQUMifQ==
@@ -11,3 +11,5 @@ local ____vector = require("functions.vector")
11
11
  local isSerializedVector = ____vector.isSerializedVector
12
12
  ____exports.SERIALIZED_ISAAC_API_CLASS_TYPE_TO_IDENTITY_FUNCTION = {[CopyableIsaacAPIClassType.COLOR] = isSerializedColor, [CopyableIsaacAPIClassType.K_COLOR] = isSerializedKColor, [CopyableIsaacAPIClassType.RNG] = isSerializedRNG, [CopyableIsaacAPIClassType.VECTOR] = isSerializedVector}
13
13
  return ____exports
14
+
15
+ --# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvb2JqZWN0cy9zZXJpYWxpemVkSXNhYWNBUElDbGFzc1R5cGVUb0lkZW50aXR5RnVuY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHNDQUEwQztBQUFqQztBQUNULGtCQUFrQztBQUF6QjtBQUNULG1CQUFtQztBQUExQjtBQUNULGdCQUFnQztBQUF2QjtBQUNULG1CQUFtQztBQUExQjtBQUVJLG1FQUVULENBQ0YsQ0FBQyxtQ0FBa0MsbUJBQ25DLENBQUMscUNBQW9DLG9CQUNyQyxDQUFDLGlDQUFnQyxpQkFDakMsQ0FBQyxvQ0FBbUMiLCJmaWxlIjoic2VyaWFsaXplZElzYWFjQVBJQ2xhc3NUeXBlVG9JZGVudGl0eUZ1bmN0aW9uLmx1YSIsInNvdXJjZVJvb3QiOiIifQ==
@@ -0,0 +1,10 @@
1
+ import { StageType } from "isaac-typescript-definitions";
2
+ export const STAGE_TYPE_SUFFIXES = {
3
+ [StageType.ORIGINAL]: "",
4
+ [StageType.WRATH_OF_THE_LAMB]: "a",
5
+ [StageType.AFTERBIRTH]: "b",
6
+ [StageType.GREED_MODE]: "",
7
+ [StageType.REPENTANCE]: "c",
8
+ [StageType.REPENTANCE_B]: "d", // 5
9
+ };
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhZ2VUeXBlU3VmZml4ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9pc2FhY3NjcmlwdC1jb21tb24vc3JjL29iamVjdHMvc3RhZ2VUeXBlU3VmZml4ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXpELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUU1QjtJQUNGLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUU7SUFDeEIsQ0FBQyxTQUFTLENBQUMsaUJBQWlCLENBQUMsRUFBRSxHQUFHO0lBQ2xDLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFLEdBQUc7SUFDM0IsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRTtJQUMxQixDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRSxHQUFHO0lBQzNCLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxFQUFFLEdBQUcsRUFBRSxJQUFJO0NBQzNCLENBQUMifQ==
@@ -10,3 +10,5 @@ ____exports.STAGE_TYPE_SUFFIXES = {
10
10
  [StageType.REPENTANCE_B] = "d"
11
11
  }
12
12
  return ____exports
13
+
14
+ --# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvb2JqZWN0cy9zdGFnZVR5cGVTdWZmaXhlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsNkNBQTBCO0FBQWpCO0FBRUksa0NBRVQ7SUFDRixDQUFDLHNCQUFxQjtJQUN0QixDQUFDLCtCQUE4QjtJQUMvQixDQUFDLHdCQUF1QjtJQUN4QixDQUFDLHdCQUF1QjtJQUN4QixDQUFDLHdCQUF1QjtJQUN4QixDQUFDLDBCQUF5QiIsImZpbGUiOiJzdGFnZVR5cGVTdWZmaXhlcy5sdWEiLCJzb3VyY2VSb290IjoiIn0=
@@ -0,0 +1,12 @@
1
+ import { StageType } from "isaac-typescript-definitions";
2
+ export const STAGE_TYPE_TO_LETTER = {
3
+ // For example, to go to Basement 2, the command is simply "stage 2" without a letter suffix.
4
+ [StageType.ORIGINAL]: "",
5
+ [StageType.WRATH_OF_THE_LAMB]: "a",
6
+ [StageType.AFTERBIRTH]: "b",
7
+ // There is no corresponding suffix for Greed Mode.
8
+ [StageType.GREED_MODE]: "",
9
+ [StageType.REPENTANCE]: "c",
10
+ [StageType.REPENTANCE_B]: "d", // 5
11
+ };
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhZ2VUeXBlVG9MZXR0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9pc2FhY3NjcmlwdC1jb21tb24vc3JjL29iamVjdHMvc3RhZ2VUeXBlVG9MZXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXpELE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUE0QztJQUMzRSw2RkFBNkY7SUFDN0YsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRTtJQUV4QixDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEdBQUc7SUFDbEMsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEVBQUUsR0FBRztJQUUzQixtREFBbUQ7SUFDbkQsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRTtJQUUxQixDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRSxHQUFHO0lBQzNCLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxFQUFFLEdBQUcsRUFBRSxJQUFJO0NBQzNCLENBQUMifQ==
@@ -10,3 +10,5 @@ ____exports.STAGE_TYPE_TO_LETTER = {
10
10
  [StageType.REPENTANCE_B] = "d"
11
11
  }
12
12
  return ____exports
13
+
14
+ --# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvb2JqZWN0cy9zdGFnZVR5cGVUb0xldHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsNkNBQTBCO0FBQWpCO0FBRUksbUNBQWdFO0lBRTNFLENBQUMsc0JBQXFCO0lBRXRCLENBQUMsK0JBQThCO0lBQy9CLENBQUMsd0JBQXVCO0lBR3hCLENBQUMsd0JBQXVCO0lBRXhCLENBQUMsd0JBQXVCO0lBQ3hCLENBQUMsMEJBQXlCIiwiZmlsZSI6InN0YWdlVHlwZVRvTGV0dGVyLmx1YSIsInNvdXJjZVJvb3QiOiIifQ==
@@ -0,0 +1,18 @@
1
+ import { PlayerForm } from "isaac-typescript-definitions";
2
+ export const TRANSFORMATION_NAMES = {
3
+ [PlayerForm.GUPPY]: "Guppy",
4
+ [PlayerForm.BEELZEBUB]: "Beelzebub",
5
+ [PlayerForm.FUN_GUY]: "Fun Guy",
6
+ [PlayerForm.SERAPHIM]: "Seraphim",
7
+ [PlayerForm.BOB]: "Bob",
8
+ [PlayerForm.SPUN]: "Spun",
9
+ [PlayerForm.YES_MOTHER]: "Yes Mother?",
10
+ [PlayerForm.CONJOINED]: "Conjoined",
11
+ [PlayerForm.LEVIATHAN]: "Leviathan",
12
+ [PlayerForm.OH_CRAP]: "Oh Crap",
13
+ [PlayerForm.BOOKWORM]: "Bookworm",
14
+ [PlayerForm.ADULT]: "Adult",
15
+ [PlayerForm.SPIDER_BABY]: "Spider Baby",
16
+ [PlayerForm.STOMPY]: "Stompy", // 13
17
+ };
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmb3JtYXRpb25OYW1lcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvb2JqZWN0cy90cmFuc2Zvcm1hdGlvbk5hbWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUUxRCxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBNkM7SUFDNUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTztJQUMzQixDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRSxXQUFXO0lBQ25DLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFNBQVM7SUFDL0IsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUUsVUFBVTtJQUNqQyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLO0lBQ3ZCLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU07SUFDekIsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLEVBQUUsYUFBYTtJQUN0QyxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRSxXQUFXO0lBQ25DLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxFQUFFLFdBQVc7SUFDbkMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEVBQUUsU0FBUztJQUMvQixDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRSxVQUFVO0lBQ2pDLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU87SUFDM0IsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLEVBQUUsYUFBYTtJQUN2QyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRSxRQUFRLEVBQUUsS0FBSztDQUM1QixDQUFDIn0=
@@ -18,3 +18,5 @@ ____exports.TRANSFORMATION_NAMES = {
18
18
  [PlayerForm.STOMPY] = "Stompy"
19
19
  }
20
20
  return ____exports
21
+
22
+ --# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvb2JqZWN0cy90cmFuc2Zvcm1hdGlvbk5hbWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw2Q0FBMkI7QUFBbEI7QUFFSSxtQ0FBaUU7SUFDNUUsQ0FBQyxvQkFBbUI7SUFDcEIsQ0FBQyx3QkFBdUI7SUFDeEIsQ0FBQyxzQkFBcUI7SUFDdEIsQ0FBQyx1QkFBc0I7SUFDdkIsQ0FBQyxrQkFBaUI7SUFDbEIsQ0FBQyxtQkFBa0I7SUFDbkIsQ0FBQyx5QkFBd0I7SUFDekIsQ0FBQyx3QkFBdUI7SUFDeEIsQ0FBQyx3QkFBdUI7SUFDeEIsQ0FBQyxzQkFBcUI7SUFDdEIsQ0FBQyx1QkFBc0I7SUFDdkIsQ0FBQyxvQkFBbUI7SUFDcEIsQ0FBQywwQkFBeUI7SUFDMUIsQ0FBQyxxQkFBb0IiLCJmaWxlIjoidHJhbnNmb3JtYXRpb25OYW1lcy5sdWEiLCJzb3VyY2VSb290IjoiIn0=
@@ -0,0 +1,36 @@
1
+ import { StageID } from "isaac-typescript-definitions";
2
+ /** We arbitrarily specify a default color equal to that of Basement. */
3
+ const DEFAULT_COLOR = Color(26 / 255, 14 / 255, 12 / 255);
4
+ /** These values are taken from StageAPI. */
5
+ export const VERSUS_SCREEN_BACKGROUND_COLORS = {
6
+ [StageID.SPECIAL_ROOMS]: DEFAULT_COLOR,
7
+ [StageID.BASEMENT]: Color(26 / 255, 14 / 255, 12 / 255),
8
+ [StageID.CELLAR]: Color(26 / 255, 17 / 255, 13 / 255),
9
+ [StageID.BURNING_BASEMENT]: Color(28 / 255, 12 / 255, 10 / 255),
10
+ [StageID.CAVES]: Color(18 / 255, 13 / 255, 8 / 255),
11
+ [StageID.CATACOMBS]: Color(15 / 255, 10 / 255, 8 / 255),
12
+ [StageID.FLOODED_CAVES]: Color(21 / 255, 28 / 255, 35 / 255),
13
+ [StageID.DEPTHS]: Color(8 / 255, 8 / 255, 8 / 255),
14
+ [StageID.NECROPOLIS]: Color(10 / 255, 6 / 255, 6 / 255),
15
+ [StageID.DANK_DEPTHS]: Color(8 / 255, 8 / 255, 8 / 255),
16
+ [StageID.WOMB]: Color(27 / 255, 3 / 255, 3 / 255),
17
+ [StageID.UTERO]: Color(22 / 255, 6 / 255, 5 / 255),
18
+ [StageID.SCARRED_WOMB]: Color(42 / 255, 19 / 255, 10 / 255),
19
+ [StageID.BLUE_WOMB]: Color(26 / 255, 32 / 255, 40 / 255),
20
+ [StageID.SHEOL]: Color(6 / 255, 6 / 255, 6 / 255),
21
+ [StageID.CATHEDRAL]: Color(6 / 255, 13 / 255, 17 / 255),
22
+ [StageID.DARK_ROOM]: Color(9 / 255, 4 / 255, 3 / 255),
23
+ [StageID.CHEST]: Color(15 / 255, 9 / 255, 6 / 255),
24
+ [StageID.VOID]: Color(0, 0, 0),
25
+ [StageID.DOWNPOUR]: Color(29 / 255, 30 / 255, 32 / 255),
26
+ [StageID.DROSS]: Color(35 / 255, 35 / 255, 29 / 255),
27
+ [StageID.MINES]: Color(17 / 255, 15 / 255, 12 / 255),
28
+ [StageID.ASHPIT]: Color(12 / 255, 10 / 255, 10 / 255),
29
+ [StageID.MAUSOLEUM]: Color(14 / 255, 10 / 255, 14 / 255),
30
+ [StageID.GEHENNA]: Color(15 / 255, 4 / 255, 4 / 255),
31
+ [StageID.CORPSE]: Color(13 / 255, 14 / 255, 12 / 255),
32
+ [StageID.MORTIS]: Color(13 / 255, 14 / 255, 12 / 255),
33
+ [StageID.HOME]: DEFAULT_COLOR,
34
+ [StageID.BACKWARDS]: DEFAULT_COLOR, // 36
35
+ };
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc3VzU2NyZWVuQmFja2dyb3VuZENvbG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvb2JqZWN0cy92ZXJzdXNTY3JlZW5CYWNrZ3JvdW5kQ29sb3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUV2RCx3RUFBd0U7QUFDeEUsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUM7QUFFMUQsNENBQTRDO0FBQzVDLE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUV4QztJQUNGLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxFQUFFLGFBQWE7SUFDdEMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDO0lBQ3ZELENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsQ0FBQztJQUNyRCxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsQ0FBQztJQUMvRCxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUM7SUFDbkQsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQ3ZELENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsQ0FBQztJQUM1RCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUM7SUFDbEQsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQ3ZELENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUN2RCxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxHQUFHLEdBQUcsRUFBRSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUM7SUFDakQsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQ2xELENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsQ0FBQztJQUMzRCxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUM7SUFDeEQsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQ2pELENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsQ0FBQztJQUN2RCxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUM7SUFDckQsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQ2xELENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM5QixDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUM7SUFDdkQsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDO0lBQ3BELENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsQ0FBQztJQUNwRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUM7SUFDckQsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDO0lBQ3hELENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUNwRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUM7SUFDckQsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDO0lBQ3JELENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLGFBQWE7SUFDN0IsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsYUFBYSxFQUFFLEtBQUs7Q0FDakMsQ0FBQyJ9
@@ -36,3 +36,5 @@ ____exports.VERSUS_SCREEN_BACKGROUND_COLORS = {
36
36
  [StageID.BACKWARDS] = DEFAULT_COLOR
37
37
  }
38
38
  return ____exports
39
+
40
+ --# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvb2JqZWN0cy92ZXJzdXNTY3JlZW5CYWNrZ3JvdW5kQ29sb3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw2Q0FBd0I7QUFBZjs7QUFHSCxzQkFBZ0IsTUFBTSxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUs7O0FBR3hDLDhDQUVUO0lBQ0YsQ0FBQyx5QkFBd0I7SUFDekIsQ0FBQyxvQkFBbUIsTUFBTSxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUs7SUFDbkQsQ0FBQyxrQkFBaUIsTUFBTSxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUs7SUFDakQsQ0FBQyw0QkFBMkIsTUFBTSxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUs7SUFDM0QsQ0FBQyxpQkFBZ0IsTUFBTSxLQUFLLEtBQUssS0FBSyxLQUFLLElBQUk7SUFDL0MsQ0FBQyxxQkFBb0IsTUFBTSxLQUFLLEtBQUssS0FBSyxLQUFLLElBQUk7SUFDbkQsQ0FBQyx5QkFBd0IsTUFBTSxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUs7SUFDeEQsQ0FBQyxrQkFBaUIsTUFBTSxJQUFJLEtBQUssSUFBSSxLQUFLLElBQUk7SUFDOUMsQ0FBQyxzQkFBcUIsTUFBTSxLQUFLLEtBQUssSUFBSSxLQUFLLElBQUk7SUFDbkQsQ0FBQyx1QkFBc0IsTUFBTSxJQUFJLEtBQUssSUFBSSxLQUFLLElBQUk7SUFDbkQsQ0FBQyxnQkFBZSxNQUFNLEtBQUssS0FBSyxJQUFJLEtBQUssSUFBSTtJQUM3QyxDQUFDLGlCQUFnQixNQUFNLEtBQUssS0FBSyxJQUFJLEtBQUssSUFBSTtJQUM5QyxDQUFDLHdCQUF1QixNQUFNLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSztJQUN2RCxDQUFDLHFCQUFvQixNQUFNLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSztJQUNwRCxDQUFDLGlCQUFnQixNQUFNLElBQUksS0FBSyxJQUFJLEtBQUssSUFBSTtJQUM3QyxDQUFDLHFCQUFvQixNQUFNLElBQUksS0FBSyxLQUFLLEtBQUssS0FBSztJQUNuRCxDQUFDLHFCQUFvQixNQUFNLElBQUksS0FBSyxJQUFJLEtBQUssSUFBSTtJQUNqRCxDQUFDLGlCQUFnQixNQUFNLEtBQUssS0FBSyxJQUFJLEtBQUssSUFBSTtJQUM5QyxDQUFDLGdCQUFlLE1BQU0sR0FBRyxHQUFHO0lBQzVCLENBQUMsb0JBQW1CLE1BQU0sS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLO0lBQ25ELENBQUMsaUJBQWdCLE1BQU0sS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLO0lBQ2hELENBQUMsaUJBQWdCLE1BQU0sS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLO0lBQ2hELENBQUMsa0JBQWlCLE1BQU0sS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLO0lBQ2pELENBQUMscUJBQW9CLE1BQU0sS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLO0lBQ3BELENBQUMsbUJBQWtCLE1BQU0sS0FBSyxLQUFLLElBQUksS0FBSyxJQUFJO0lBQ2hELENBQUMsa0JBQWlCLE1BQU0sS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLO0lBQ2pELENBQUMsa0JBQWlCLE1BQU0sS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLO0lBQ2pELENBQUMsZ0JBQWU7SUFDaEIsQ0FBQyxxQkFBb0IiLCJmaWxlIjoidmVyc3VzU2NyZWVuQmFja2dyb3VuZENvbG9ycy5sdWEiLCJzb3VyY2VSb290IjoiIn0=
@@ -0,0 +1,36 @@
1
+ import { StageID } from "isaac-typescript-definitions";
2
+ /** We arbitrarily specify a default color equal to that of Basement. */
3
+ const DEFAULT_COLOR = Color(201 / 255, 114 / 255, 96 / 255);
4
+ /** These values are taken from StageAPI. */
5
+ export const VERSUS_SCREEN_DIRT_SPOT_COLORS = {
6
+ [StageID.SPECIAL_ROOMS]: DEFAULT_COLOR,
7
+ [StageID.BASEMENT]: Color(201 / 255, 114 / 255, 96 / 255),
8
+ [StageID.CELLAR]: Color(229 / 255, 157 / 255, 111 / 255),
9
+ [StageID.BURNING_BASEMENT]: Color(252 / 255, 108 / 255, 90 / 255),
10
+ [StageID.CAVES]: Color(167 / 255, 111 / 255, 75 / 255),
11
+ [StageID.CATACOMBS]: Color(135 / 255, 90 / 255, 80 / 255),
12
+ [StageID.FLOODED_CAVES]: Color(111 / 255, 147 / 255, 180 / 255),
13
+ [StageID.DEPTHS]: Color(70 / 255, 70 / 255, 72 / 255),
14
+ [StageID.NECROPOLIS]: Color(88 / 255, 67 / 255, 54 / 255),
15
+ [StageID.DANK_DEPTHS]: Color(70 / 255, 70 / 255, 72 / 255),
16
+ [StageID.WOMB]: Color(241 / 255, 28 / 255, 28 / 255),
17
+ [StageID.UTERO]: Color(199 / 255, 60 / 255, 48 / 255),
18
+ [StageID.SCARRED_WOMB]: Color(247 / 255, 152 / 255, 88 / 255),
19
+ [StageID.BLUE_WOMB]: Color(157 / 255, 209 / 255, 255 / 255),
20
+ [StageID.SHEOL]: Color(60 / 255, 54 / 255, 54 / 255),
21
+ [StageID.CATHEDRAL]: Color(44 / 255, 100 / 255, 111 / 255),
22
+ [StageID.DARK_ROOM]: Color(80 / 255, 38 / 255, 20 / 255),
23
+ [StageID.CHEST]: Color(175 / 255, 108 / 255, 72 / 255),
24
+ [StageID.VOID]: Color(70 / 255, 5 / 255, 5 / 255),
25
+ [StageID.DOWNPOUR]: Color(149 / 255, 157 / 255, 167 / 255),
26
+ [StageID.DROSS]: Color(179 / 255, 179 / 255, 143 / 255),
27
+ [StageID.MINES]: Color(93 / 255, 85 / 255, 72 / 255),
28
+ [StageID.ASHPIT]: Color(106 / 255, 102 / 255, 94 / 255),
29
+ [StageID.MAUSOLEUM]: Color(70 / 255, 59 / 255, 72 / 255),
30
+ [StageID.GEHENNA]: Color(59 / 255, 41 / 255, 41 / 255),
31
+ [StageID.CORPSE]: Color(124 / 255, 134 / 255, 111 / 255),
32
+ [StageID.MORTIS]: Color(124 / 255, 134 / 255, 111 / 255),
33
+ [StageID.HOME]: DEFAULT_COLOR,
34
+ [StageID.BACKWARDS]: DEFAULT_COLOR, // 36
35
+ };
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc3VzU2NyZWVuRGlydFNwb3RDb2xvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9pc2FhY3NjcmlwdC1jb21tb24vc3JjL29iamVjdHMvdmVyc3VzU2NyZWVuRGlydFNwb3RDb2xvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXZELHdFQUF3RTtBQUN4RSxNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxHQUFHLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsQ0FBQztBQUU1RCw0Q0FBNEM7QUFDNUMsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBRXZDO0lBQ0YsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEVBQUUsYUFBYTtJQUN0QyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxHQUFHLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUM7SUFDekQsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxDQUFDLEdBQUcsR0FBRyxHQUFHLEVBQUUsR0FBRyxHQUFHLEdBQUcsRUFBRSxHQUFHLEdBQUcsR0FBRyxDQUFDO0lBQ3hELENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsS0FBSyxDQUFDLEdBQUcsR0FBRyxHQUFHLEVBQUUsR0FBRyxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDO0lBQ2pFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxHQUFHLEdBQUcsR0FBRyxFQUFFLEdBQUcsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsQ0FBQztJQUN0RCxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUM7SUFDekQsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEVBQUUsS0FBSyxDQUFDLEdBQUcsR0FBRyxHQUFHLEVBQUUsR0FBRyxHQUFHLEdBQUcsRUFBRSxHQUFHLEdBQUcsR0FBRyxDQUFDO0lBQy9ELENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsQ0FBQztJQUNyRCxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUM7SUFDekQsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDO0lBQzFELENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssQ0FBQyxHQUFHLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsQ0FBQztJQUNwRCxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUM7SUFDckQsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUUsS0FBSyxDQUFDLEdBQUcsR0FBRyxHQUFHLEVBQUUsR0FBRyxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDO0lBQzdELENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxHQUFHLEdBQUcsR0FBRyxFQUFFLEdBQUcsR0FBRyxHQUFHLEVBQUUsR0FBRyxHQUFHLEdBQUcsQ0FBQztJQUMzRCxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUM7SUFDcEQsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsR0FBRyxHQUFHLEdBQUcsRUFBRSxHQUFHLEdBQUcsR0FBRyxDQUFDO0lBQzFELENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsQ0FBQztJQUN4RCxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxHQUFHLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUM7SUFDdEQsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQ2pELENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEtBQUssQ0FBQyxHQUFHLEdBQUcsR0FBRyxFQUFFLEdBQUcsR0FBRyxHQUFHLEVBQUUsR0FBRyxHQUFHLEdBQUcsQ0FBQztJQUMxRCxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxHQUFHLEdBQUcsR0FBRyxFQUFFLEdBQUcsR0FBRyxHQUFHLENBQUM7SUFDdkQsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDO0lBQ3BELENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssQ0FBQyxHQUFHLEdBQUcsR0FBRyxFQUFFLEdBQUcsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsQ0FBQztJQUN2RCxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUM7SUFDeEQsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDO0lBQ3RELENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssQ0FBQyxHQUFHLEdBQUcsR0FBRyxFQUFFLEdBQUcsR0FBRyxHQUFHLEVBQUUsR0FBRyxHQUFHLEdBQUcsQ0FBQztJQUN4RCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxHQUFHLEdBQUcsR0FBRyxFQUFFLEdBQUcsR0FBRyxHQUFHLENBQUM7SUFDeEQsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsYUFBYTtJQUM3QixDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxhQUFhLEVBQUUsS0FBSztDQUNqQyxDQUFDIn0=
@@ -36,3 +36,5 @@ ____exports.VERSUS_SCREEN_DIRT_SPOT_COLORS = {
36
36
  [StageID.BACKWARDS] = DEFAULT_COLOR
37
37
  }
38
38
  return ____exports
39
+
40
+ --# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvb2JqZWN0cy92ZXJzdXNTY3JlZW5EaXJ0U3BvdENvbG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsNkNBQXdCO0FBQWY7O0FBR0gsc0JBQWdCLE1BQU0sTUFBTSxLQUFLLE1BQU0sS0FBSyxLQUFLOztBQUcxQyw2Q0FFVDtJQUNGLENBQUMseUJBQXdCO0lBQ3pCLENBQUMsb0JBQW1CLE1BQU0sTUFBTSxLQUFLLE1BQU0sS0FBSyxLQUFLO0lBQ3JELENBQUMsa0JBQWlCLE1BQU0sTUFBTSxLQUFLLE1BQU0sS0FBSyxNQUFNO0lBQ3BELENBQUMsNEJBQTJCLE1BQU0sTUFBTSxLQUFLLE1BQU0sS0FBSyxLQUFLO0lBQzdELENBQUMsaUJBQWdCLE1BQU0sTUFBTSxLQUFLLE1BQU0sS0FBSyxLQUFLO0lBQ2xELENBQUMscUJBQW9CLE1BQU0sTUFBTSxLQUFLLEtBQUssS0FBSyxLQUFLO0lBQ3JELENBQUMseUJBQXdCLE1BQU0sTUFBTSxLQUFLLE1BQU0sS0FBSyxNQUFNO0lBQzNELENBQUMsa0JBQWlCLE1BQU0sS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLO0lBQ2pELENBQUMsc0JBQXFCLE1BQU0sS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLO0lBQ3JELENBQUMsdUJBQXNCLE1BQU0sS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLO0lBQ3RELENBQUMsZ0JBQWUsTUFBTSxNQUFNLEtBQUssS0FBSyxLQUFLLEtBQUs7SUFDaEQsQ0FBQyxpQkFBZ0IsTUFBTSxNQUFNLEtBQUssS0FBSyxLQUFLLEtBQUs7SUFDakQsQ0FBQyx3QkFBdUIsTUFBTSxNQUFNLEtBQUssTUFBTSxLQUFLLEtBQUs7SUFDekQsQ0FBQyxxQkFBb0IsTUFBTSxNQUFNLEtBQUssTUFBTSxLQUFLLE1BQU07SUFDdkQsQ0FBQyxpQkFBZ0IsTUFBTSxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUs7SUFDaEQsQ0FBQyxxQkFBb0IsTUFBTSxLQUFLLEtBQUssTUFBTSxLQUFLLE1BQU07SUFDdEQsQ0FBQyxxQkFBb0IsTUFBTSxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUs7SUFDcEQsQ0FBQyxpQkFBZ0IsTUFBTSxNQUFNLEtBQUssTUFBTSxLQUFLLEtBQUs7SUFDbEQsQ0FBQyxnQkFBZSxNQUFNLEtBQUssS0FBSyxJQUFJLEtBQUssSUFBSTtJQUM3QyxDQUFDLG9CQUFtQixNQUFNLE1BQU0sS0FBSyxNQUFNLEtBQUssTUFBTTtJQUN0RCxDQUFDLGlCQUFnQixNQUFNLE1BQU0sS0FBSyxNQUFNLEtBQUssTUFBTTtJQUNuRCxDQUFDLGlCQUFnQixNQUFNLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSztJQUNoRCxDQUFDLGtCQUFpQixNQUFNLE1BQU0sS0FBSyxNQUFNLEtBQUssS0FBSztJQUNuRCxDQUFDLHFCQUFvQixNQUFNLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSztJQUNwRCxDQUFDLG1CQUFrQixNQUFNLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSztJQUNsRCxDQUFDLGtCQUFpQixNQUFNLE1BQU0sS0FBSyxNQUFNLEtBQUssTUFBTTtJQUNwRCxDQUFDLGtCQUFpQixNQUFNLE1BQU0sS0FBSyxNQUFNLEtBQUssTUFBTTtJQUNwRCxDQUFDLGdCQUFlO0lBQ2hCLENBQUMscUJBQW9CIiwiZmlsZSI6InZlcnN1c1NjcmVlbkRpcnRTcG90Q29sb3JzLmx1YSIsInNvdXJjZVJvb3QiOiIifQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "isaacscript-common",
3
- "version": "6.6.0",
3
+ "version": "6.6.1-dev.2",
4
4
  "description": "Helper functions and features for IsaacScript mods.",
5
5
  "keywords": [
6
6
  "isaac",
@@ -0,0 +1,67 @@
1
+ import { getTraceback, isLuaDebugEnabled } from "./functions/debug";
2
+ const LINE_SEPARATOR = "\n";
3
+ /**
4
+ * These must be listed in order from how they appear in the traceback from top to bottom, or they
5
+ * won't be properly removed.
6
+ */
7
+ const USELESS_TRACEBACK_MESSAGES = [
8
+ // The second line of the traceback will always be the "getTraceback" function.
9
+ "in upvalue 'getTraceback'",
10
+ "in function 'sandbox.GetTraceback'",
11
+ // The third line of the traceback will always be a line within the "errorWithTraceback" function.
12
+ "in function 'error'",
13
+ ];
14
+ let vanillaError;
15
+ /**
16
+ * In Lua, the `error` function will tell you the line number of the error, but not give you a full
17
+ * traceback of the parent functions, which is unlike how JavaScript works. This function monkey
18
+ * patches the `error` function to add this functionality.
19
+ *
20
+ * Traceback functionality can only be added if the "--luadebug" flag is turned on, so this function
21
+ * does nothing if the "--luadebug" flag is disabled.
22
+ *
23
+ * @internal
24
+ */
25
+ export function patchErrorFunction() {
26
+ // Only replace the function if the "--luadebug" launch flag is enabled.
27
+ if (!isLuaDebugEnabled()) {
28
+ return;
29
+ }
30
+ // Do nothing if the function was already patched.
31
+ if (__PATCHED_ERROR !== undefined) {
32
+ return;
33
+ }
34
+ __PATCHED_ERROR = true;
35
+ vanillaError = error;
36
+ error = errorWithTraceback;
37
+ }
38
+ function errorWithTraceback(message, level) {
39
+ if (vanillaError === undefined) {
40
+ error(message, level);
41
+ }
42
+ if (level === undefined) {
43
+ level = 1;
44
+ }
45
+ const tracebackOutput = getTraceback();
46
+ const slimmedTracebackOutput = slimTracebackOutput(tracebackOutput);
47
+ message += "\n";
48
+ message += slimmedTracebackOutput;
49
+ // We add one to the level so that the error message appears to originate at the parent function.
50
+ return vanillaError(message, level + 1);
51
+ }
52
+ /**
53
+ * Some lines of the traceback output will not be relevant to the error that just occurred. Thus, to
54
+ * reduce noise, we can always remove these lines.
55
+ */
56
+ function slimTracebackOutput(tracebackOutput) {
57
+ for (const msg of USELESS_TRACEBACK_MESSAGES) {
58
+ tracebackOutput = removeLinesContaining(tracebackOutput, msg);
59
+ }
60
+ return tracebackOutput;
61
+ }
62
+ function removeLinesContaining(msg, containsMsg) {
63
+ const lines = msg.split(LINE_SEPARATOR);
64
+ const linesThatDontContain = lines.filter((line) => !line.includes(containsMsg));
65
+ return linesThatDontContain.join(LINE_SEPARATOR);
66
+ }
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0Y2hFcnJvckZ1bmN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvcGF0Y2hFcnJvckZ1bmN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFPcEUsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDO0FBRTVCOzs7R0FHRztBQUNILE1BQU0sMEJBQTBCLEdBQXNCO0lBQ3BELCtFQUErRTtJQUMvRSwyQkFBMkI7SUFDM0Isb0NBQW9DO0lBRXBDLGtHQUFrRztJQUNsRyxxQkFBcUI7Q0FDdEIsQ0FBQztBQUVGLElBQUksWUFBdUMsQ0FBQztBQUU1Qzs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLFVBQVUsa0JBQWtCO0lBQ2hDLHdFQUF3RTtJQUN4RSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsRUFBRTtRQUN4QixPQUFPO0tBQ1I7SUFFRCxrREFBa0Q7SUFDbEQsSUFBSSxlQUFlLEtBQUssU0FBUyxFQUFFO1FBQ2pDLE9BQU87S0FDUjtJQUNELGVBQWUsR0FBRyxJQUFJLENBQUM7SUFFdkIsWUFBWSxHQUFHLEtBQUssQ0FBQztJQUNyQixLQUFLLEdBQUcsa0JBQWtCLENBQUM7QUFDN0IsQ0FBQztBQUVELFNBQVMsa0JBQWtCLENBRXpCLE9BQWUsRUFDZixLQUFjO0lBRWQsSUFBSSxZQUFZLEtBQUssU0FBUyxFQUFFO1FBQzlCLEtBQUssQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7S0FDdkI7SUFFRCxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUU7UUFDdkIsS0FBSyxHQUFHLENBQUMsQ0FBQztLQUNYO0lBRUQsTUFBTSxlQUFlLEdBQUcsWUFBWSxFQUFFLENBQUM7SUFDdkMsTUFBTSxzQkFBc0IsR0FBRyxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNwRSxPQUFPLElBQUksSUFBSSxDQUFDO0lBQ2hCLE9BQU8sSUFBSSxzQkFBc0IsQ0FBQztJQUVsQyxpR0FBaUc7SUFDakcsT0FBTyxZQUFZLENBQUMsT0FBTyxFQUFFLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztBQUMxQyxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyxtQkFBbUIsQ0FBQyxlQUF1QjtJQUNsRCxLQUFLLE1BQU0sR0FBRyxJQUFJLDBCQUEwQixFQUFFO1FBQzVDLGVBQWUsR0FBRyxxQkFBcUIsQ0FBQyxlQUFlLEVBQUUsR0FBRyxDQUFDLENBQUM7S0FDL0Q7SUFFRCxPQUFPLGVBQWUsQ0FBQztBQUN6QixDQUFDO0FBRUQsU0FBUyxxQkFBcUIsQ0FBQyxHQUFXLEVBQUUsV0FBbUI7SUFDN0QsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN4QyxNQUFNLG9CQUFvQixHQUFHLEtBQUssQ0FBQyxNQUFNLENBQ3ZDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQ3RDLENBQUM7SUFFRixPQUFPLG9CQUFvQixDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztBQUNuRCxDQUFDIn0=