isaacscript-common 6.6.1-dev.1 → 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 (412) hide show
  1. package/cachedClasses.d.ts +1 -0
  2. package/cachedClasses.js +59 -0
  3. package/callbacks/customRevive.js +153 -0
  4. package/callbacks/itemPickup.js +64 -0
  5. package/callbacks/postAmbush.js +54 -0
  6. package/callbacks/postBombExploded.js +20 -0
  7. package/callbacks/postBombInitLate.js +28 -0
  8. package/callbacks/postBoneSwing.js +49 -0
  9. package/callbacks/postCollectibleEmpty.js +32 -0
  10. package/callbacks/postCollectibleInitFirst.js +27 -0
  11. package/callbacks/postCursedTeleport.js +120 -0
  12. package/callbacks/postCustomDoorEnter.js +205 -0
  13. package/callbacks/postDiceRoomActivated.js +39 -0
  14. package/callbacks/postDoorRender.js +20 -0
  15. package/callbacks/postDoorUpdate.js +20 -0
  16. package/callbacks/postEffectInitLate.js +28 -0
  17. package/callbacks/postEffectStateChanged.js +31 -0
  18. package/callbacks/postEsauJr.js +70 -0
  19. package/callbacks/postFamiliarInitLate.js +28 -0
  20. package/callbacks/postFamiliarStateChanged.js +31 -0
  21. package/callbacks/postFlip.js +59 -0
  22. package/callbacks/postGreedModeWave.js +31 -0
  23. package/callbacks/postGridEntity.js +107 -0
  24. package/callbacks/postGridEntityCollision.js +49 -0
  25. package/callbacks/postGridEntityRender.js +20 -0
  26. package/callbacks/postHolyMantleRemoved.js +33 -0
  27. package/callbacks/postItemDischarged.js +94 -0
  28. package/callbacks/postKnifeInitLate.js +28 -0
  29. package/callbacks/postLaserInitLate.js +28 -0
  30. package/callbacks/postNPCInitLate.js +28 -0
  31. package/callbacks/postNPCStateChanged.js +31 -0
  32. package/callbacks/postNewRoomEarly.js +69 -0
  33. package/callbacks/postPickupCollect.js +37 -0
  34. package/callbacks/postPickupInitFirst.js +52 -0
  35. package/callbacks/postPickupInitLate.js +28 -0
  36. package/callbacks/postPickupStateChanged.js +31 -0
  37. package/callbacks/postPitRender.js +20 -0
  38. package/callbacks/postPitUpdate.js +20 -0
  39. package/callbacks/postPlayerChangeHealth.js +43 -0
  40. package/callbacks/postPlayerChangeType.js +31 -0
  41. package/callbacks/postPlayerCollectible.js +74 -0
  42. package/callbacks/postPlayerFatalDamage.js +74 -0
  43. package/callbacks/postPlayerInitLate.js +28 -0
  44. package/callbacks/postPlayerReordered.js +109 -0
  45. package/callbacks/postPoopRender.js +20 -0
  46. package/callbacks/postPoopUpdate.js +20 -0
  47. package/callbacks/postPressurePlateRender.js +20 -0
  48. package/callbacks/postPressurePlateUpdate.js +20 -0
  49. package/callbacks/postProjectileInitLate.js +28 -0
  50. package/callbacks/postPurchase.js +39 -0
  51. package/callbacks/postRockRender.js +20 -0
  52. package/callbacks/postRockUpdate.js +20 -0
  53. package/callbacks/postRoomClearChanged.js +41 -0
  54. package/callbacks/postSacrifice.js +38 -0
  55. package/callbacks/postSlotDestroyed.js +64 -0
  56. package/callbacks/postSlotInitUpdate.js +49 -0
  57. package/callbacks/postSlotRender.js +48 -0
  58. package/callbacks/postSpikesRender.js +20 -0
  59. package/callbacks/postSpikesUpdate.js +20 -0
  60. package/callbacks/postTNTRender.js +20 -0
  61. package/callbacks/postTNTUpdate.js +20 -0
  62. package/callbacks/postTearInitLate.js +28 -0
  63. package/callbacks/postTearInitVeryLate.js +32 -0
  64. package/callbacks/postTransformation.js +37 -0
  65. package/callbacks/postTrinketBreak.js +64 -0
  66. package/callbacks/preBerserkDeath.js +35 -0
  67. package/callbacks/preNewLevel.js +45 -0
  68. package/callbacks/reorderedCallbacks.js +136 -0
  69. package/callbacks/subscriptions/postAmbushFinished.js +20 -0
  70. package/callbacks/subscriptions/postAmbushStarted.js +20 -0
  71. package/callbacks/subscriptions/postBombInitLate.js +20 -0
  72. package/callbacks/subscriptions/postBoneExploded.js +20 -0
  73. package/callbacks/subscriptions/postBoneSwing.js +16 -0
  74. package/callbacks/subscriptions/postCollectibleEmpty.js +21 -0
  75. package/callbacks/subscriptions/postCollectibleInitFirst.js +21 -0
  76. package/callbacks/subscriptions/postCursedTeleport.js +16 -0
  77. package/callbacks/subscriptions/postCustomDoorEnter.js +21 -0
  78. package/callbacks/subscriptions/postCustomRevive.js +21 -0
  79. package/callbacks/subscriptions/postDiceRoomActivated.js +21 -0
  80. package/callbacks/subscriptions/postDoorRender.js +22 -0
  81. package/callbacks/subscriptions/postDoorUpdate.js +22 -0
  82. package/callbacks/subscriptions/postEffectInitLate.js +20 -0
  83. package/callbacks/subscriptions/postEffectStateChanged.js +20 -0
  84. package/callbacks/subscriptions/postEsauJr.js +16 -0
  85. package/callbacks/subscriptions/postFamiliarInitLate.js +20 -0
  86. package/callbacks/subscriptions/postFamiliarStateChanged.js +20 -0
  87. package/callbacks/subscriptions/postFirstEsauJr.js +16 -0
  88. package/callbacks/subscriptions/postFirstFlip.js +16 -0
  89. package/callbacks/subscriptions/postFlip.js +16 -0
  90. package/callbacks/subscriptions/postGameStartedReordered.js +16 -0
  91. package/callbacks/subscriptions/postGreedModeWave.js +16 -0
  92. package/callbacks/subscriptions/postGridEntityBroken.js +28 -0
  93. package/callbacks/subscriptions/postGridEntityCollision.js +28 -0
  94. package/callbacks/subscriptions/postGridEntityInit.js +28 -0
  95. package/callbacks/subscriptions/postGridEntityRemove.js +26 -0
  96. package/callbacks/subscriptions/postGridEntityRender.js +28 -0
  97. package/callbacks/subscriptions/postGridEntityStateChanged.js +28 -0
  98. package/callbacks/subscriptions/postGridEntityUpdate.js +28 -0
  99. package/callbacks/subscriptions/postHolyMantleRemoved.js +25 -0
  100. package/callbacks/subscriptions/postItemDischarged.js +21 -0
  101. package/callbacks/subscriptions/postItemPickup.js +25 -0
  102. package/callbacks/subscriptions/postKnifeInitLate.js +20 -0
  103. package/callbacks/subscriptions/postLaserInitLate.js +20 -0
  104. package/callbacks/subscriptions/postNPCInitLate.js +20 -0
  105. package/callbacks/subscriptions/postNPCStateChanged.js +24 -0
  106. package/callbacks/subscriptions/postNewLevelReordered.js +16 -0
  107. package/callbacks/subscriptions/postNewRoomEarly.js +16 -0
  108. package/callbacks/subscriptions/postNewRoomReordered.js +16 -0
  109. package/callbacks/subscriptions/postPEffectUpdateReordered.js +25 -0
  110. package/callbacks/subscriptions/postPickupCollect.js +20 -0
  111. package/callbacks/subscriptions/postPickupInitFirst.js +20 -0
  112. package/callbacks/subscriptions/postPickupInitLate.js +20 -0
  113. package/callbacks/subscriptions/postPickupStateChanged.js +20 -0
  114. package/callbacks/subscriptions/postPitRender.js +22 -0
  115. package/callbacks/subscriptions/postPitUpdate.js +22 -0
  116. package/callbacks/subscriptions/postPlayerChangeHealth.js +25 -0
  117. package/callbacks/subscriptions/postPlayerChangeType.js +20 -0
  118. package/callbacks/subscriptions/postPlayerCollectibleAdded.js +21 -0
  119. package/callbacks/subscriptions/postPlayerCollectibleRemoved.js +21 -0
  120. package/callbacks/subscriptions/postPlayerFatalDamage.js +29 -0
  121. package/callbacks/subscriptions/postPlayerInitLate.js +25 -0
  122. package/callbacks/subscriptions/postPlayerInitReordered.js +25 -0
  123. package/callbacks/subscriptions/postPlayerRenderReordered.js +25 -0
  124. package/callbacks/subscriptions/postPlayerUpdateReordered.js +25 -0
  125. package/callbacks/subscriptions/postPoopRender.js +22 -0
  126. package/callbacks/subscriptions/postPoopUpdate.js +22 -0
  127. package/callbacks/subscriptions/postPressurePlateRender.js +22 -0
  128. package/callbacks/subscriptions/postPressurePlateUpdate.js +22 -0
  129. package/callbacks/subscriptions/postProjectileInitLate.js +21 -0
  130. package/callbacks/subscriptions/postPurchase.js +16 -0
  131. package/callbacks/subscriptions/postRockRender.js +22 -0
  132. package/callbacks/subscriptions/postRockUpdate.js +22 -0
  133. package/callbacks/subscriptions/postRoomClearChanged.js +20 -0
  134. package/callbacks/subscriptions/postSacrifice.js +25 -0
  135. package/callbacks/subscriptions/postSlotAnimationChanged.js +20 -0
  136. package/callbacks/subscriptions/postSlotDestroyed.js +26 -0
  137. package/callbacks/subscriptions/postSlotInit.js +20 -0
  138. package/callbacks/subscriptions/postSlotRender.js +20 -0
  139. package/callbacks/subscriptions/postSlotUpdate.js +20 -0
  140. package/callbacks/subscriptions/postSpikesRender.js +22 -0
  141. package/callbacks/subscriptions/postSpikesUpdate.js +22 -0
  142. package/callbacks/subscriptions/postTNTRender.js +22 -0
  143. package/callbacks/subscriptions/postTNTUpdate.js +22 -0
  144. package/callbacks/subscriptions/postTearInitLate.js +20 -0
  145. package/callbacks/subscriptions/postTearInitVeryLate.js +20 -0
  146. package/callbacks/subscriptions/postTransformation.js +20 -0
  147. package/callbacks/subscriptions/postTrinketBreak.js +21 -0
  148. package/callbacks/subscriptions/preBerserkDeath.js +26 -0
  149. package/callbacks/subscriptions/preCustomRevive.js +29 -0
  150. package/callbacks/subscriptions/preItemPickup.js +25 -0
  151. package/callbacks/subscriptions/preNewLevel.js +16 -0
  152. package/classes/DefaultMap.js +145 -0
  153. package/classes/ModUpgraded.js +57 -0
  154. package/constants.js +143 -0
  155. package/constantsFirstLast.js +156 -0
  156. package/enums/AmbushType.js +6 -0
  157. package/enums/CornerType.js +8 -0
  158. package/enums/DecorationVariant.js +11 -0
  159. package/enums/HealthType.js +18 -0
  160. package/enums/ModCallbackCustom.js +1213 -0
  161. package/enums/PocketItemType.js +10 -0
  162. package/enums/RockAltType.js +9 -0
  163. package/enums/SerializationType.js +7 -0
  164. package/enums/SlotDestructionType.js +6 -0
  165. package/enums/private/CopyableIsaacAPIClassType.js +9 -0
  166. package/enums/private/SaveDataKey.js +8 -0
  167. package/enums/private/SerializationBrand.js +41 -0
  168. package/features/characterHealthConversion.js +86 -0
  169. package/features/characterStats.js +52 -0
  170. package/features/collectibleItemPoolType.js +45 -0
  171. package/features/customGridEntity.js +148 -0
  172. package/features/customStage/backdrop.js +191 -0
  173. package/features/customStage/customStageConstants.js +2 -0
  174. package/features/customStage/exports.js +147 -0
  175. package/features/customStage/gridEntities.js +138 -0
  176. package/features/customStage/init.js +104 -0
  177. package/features/customStage/metadata.json +1 -0
  178. package/features/customStage/shadows.js +63 -0
  179. package/features/customStage/streakText.js +35 -0
  180. package/features/customStage/util.js +36 -0
  181. package/features/customStage/v.js +18 -0
  182. package/features/customStage/versusScreen.js +184 -0
  183. package/features/debugDisplay/debugDisplay.js +183 -0
  184. package/features/debugDisplay/exports.js +441 -0
  185. package/features/debugDisplay/v.d.ts +18 -0
  186. package/features/debugDisplay/v.js +61 -0
  187. package/features/deployJSONRoom.js +532 -0
  188. package/features/disableAllSound.js +63 -0
  189. package/features/disableInputs.js +130 -0
  190. package/features/extraConsoleCommands/commandsDisplay.js +236 -0
  191. package/features/extraConsoleCommands/commandsSubroutines.js +109 -0
  192. package/features/extraConsoleCommands/exports.js +53 -0
  193. package/features/extraConsoleCommands/init.js +239 -0
  194. package/features/extraConsoleCommands/listCommands.js +1081 -0
  195. package/features/extraConsoleCommands/v.js +25 -0
  196. package/features/fadeInRemover.js +51 -0
  197. package/features/fastReset.js +61 -0
  198. package/features/forgottenSwitch.js +33 -0
  199. package/features/pause.js +68 -0
  200. package/features/persistentEntities.js +120 -0
  201. package/features/playerInventory.js +89 -0
  202. package/features/ponyDetection.js +63 -0
  203. package/features/preventCollectibleRotation.js +81 -0
  204. package/features/registerHotkey.js +91 -0
  205. package/features/roomClearFrame.js +42 -0
  206. package/features/runInNFrames.js +189 -0
  207. package/features/runNextRoom.js +34 -0
  208. package/features/saveDataManager/exports.js +183 -0
  209. package/features/saveDataManager/load.js +69 -0
  210. package/features/saveDataManager/main.js +131 -0
  211. package/features/saveDataManager/maps.js +9 -0
  212. package/features/saveDataManager/merge.js +139 -0
  213. package/features/saveDataManager/save.js +43 -0
  214. package/features/saveDataManager/saveDataManagerConstants.js +4 -0
  215. package/features/saveDataManager/serializationBrand.js +12 -0
  216. package/features/sirenHelpers.js +90 -0
  217. package/features/stageHistory.js +43 -0
  218. package/features/taintedLazarusPlayers.js +92 -0
  219. package/featuresInitialized.js +16 -0
  220. package/functions/ambush.js +35 -0
  221. package/functions/array.js +423 -0
  222. package/functions/benchmark.js +28 -0
  223. package/functions/bitwise.js +74 -0
  224. package/functions/bombs.js +11 -0
  225. package/functions/boss.js +137 -0
  226. package/functions/cacheFlag.js +11 -0
  227. package/functions/cards.js +217 -0
  228. package/functions/challenges.js +9 -0
  229. package/functions/character.js +102 -0
  230. package/functions/charge.js +202 -0
  231. package/functions/chargeBar.js +44 -0
  232. package/functions/collectibleCacheFlag.js +68 -0
  233. package/functions/collectibleSet.js +108 -0
  234. package/functions/collectibleTag.js +65 -0
  235. package/functions/collectibles.js +469 -0
  236. package/functions/color.d.ts +1 -1
  237. package/functions/color.js +60 -0
  238. package/functions/debug.js +60 -0
  239. package/functions/deepCopy.js +361 -0
  240. package/functions/deepCopyTests.js +308 -0
  241. package/functions/direction.js +41 -0
  242. package/functions/doors.js +326 -0
  243. package/functions/easing.js +142 -0
  244. package/functions/eden.js +32 -0
  245. package/functions/effects.js +11 -0
  246. package/functions/entity.js +324 -0
  247. package/functions/entitySpecific.js +481 -0
  248. package/functions/entityTypes.js +6 -0
  249. package/functions/enums.js +151 -0
  250. package/functions/familiars.js +85 -0
  251. package/functions/flag.js +137 -0
  252. package/functions/flying.js +88 -0
  253. package/functions/globals.js +230 -0
  254. package/functions/gridEntity.js +488 -0
  255. package/functions/gridEntitySpecific.js +109 -0
  256. package/functions/input.js +95 -0
  257. package/functions/isaacAPIClass.js +48 -0
  258. package/functions/jsonHelpers.js +40 -0
  259. package/functions/jsonRoom.js +132 -0
  260. package/functions/kColor.d.ts +1 -1
  261. package/functions/kColor.js +63 -0
  262. package/functions/language.js +13 -0
  263. package/functions/level.js +20 -0
  264. package/functions/log.js +567 -0
  265. package/functions/map.js +45 -0
  266. package/functions/math.js +103 -0
  267. package/functions/mergeTests.js +213 -0
  268. package/functions/minimap.js +80 -0
  269. package/functions/nextStage.js +290 -0
  270. package/functions/npc.js +101 -0
  271. package/functions/pickupVariants.js +47 -0
  272. package/functions/pickups.js +219 -0
  273. package/functions/pills.js +160 -0
  274. package/functions/player.js +808 -0
  275. package/functions/playerCenter.js +50 -0
  276. package/functions/playerDataStructures.js +114 -0
  277. package/functions/playerHealth.js +321 -0
  278. package/functions/playerIndex.js +160 -0
  279. package/functions/pocketItems.js +124 -0
  280. package/functions/positionVelocity.js +136 -0
  281. package/functions/random.js +73 -0
  282. package/functions/revive.js +140 -0
  283. package/functions/rng.d.ts +1 -1
  284. package/functions/rng.js +117 -0
  285. package/functions/roomData.js +174 -0
  286. package/functions/roomGrid.js +81 -0
  287. package/functions/roomShape.js +99 -0
  288. package/functions/rooms.js +487 -0
  289. package/functions/run.js +53 -0
  290. package/functions/saveFile.js +104 -0
  291. package/functions/seeds.js +18 -0
  292. package/functions/serialization.js +52 -0
  293. package/functions/set.js +99 -0
  294. package/functions/sound.js +9 -0
  295. package/functions/spawnCollectible.js +66 -0
  296. package/functions/sprite.js +80 -0
  297. package/functions/stage.js +172 -0
  298. package/functions/string.js +37 -0
  299. package/functions/table.js +143 -0
  300. package/functions/tears.js +31 -0
  301. package/functions/transformations.js +101 -0
  302. package/functions/trinketCacheFlag.js +46 -0
  303. package/functions/trinketGive.js +121 -0
  304. package/functions/trinkets.js +169 -0
  305. package/functions/tstlClass.js +125 -0
  306. package/functions/types.js +27 -0
  307. package/functions/ui.js +124 -0
  308. package/functions/utils.js +172 -0
  309. package/functions/vector.js +68 -0
  310. package/index.js +140 -0
  311. package/initCustomCallbacks.js +133 -0
  312. package/initFeatures.js +51 -0
  313. package/interfaces/AddCallbackParameterCustom.js +2 -0
  314. package/interfaces/ChargeBarSprites.js +2 -0
  315. package/interfaces/Corner.js +2 -0
  316. package/interfaces/CustomGridEntityData.js +2 -0
  317. package/interfaces/CustomStage.js +2 -0
  318. package/interfaces/CustomStageLua.js +13 -0
  319. package/interfaces/JSONRoomsFile.js +2 -0
  320. package/interfaces/PlayerHealth.js +2 -0
  321. package/interfaces/PocketItemDescription.js +2 -0
  322. package/interfaces/SaveData.js +2 -0
  323. package/interfaces/TrinketSituation.js +2 -0
  324. package/interfaces/private/TSTLClassMetatable.js +2 -0
  325. package/maps/PHDPillConversions.js +20 -0
  326. package/maps/cardMap.js +208 -0
  327. package/maps/characterMap.js +86 -0
  328. package/maps/collectibleDescriptionMap.js +728 -0
  329. package/maps/collectibleNameMap.js +727 -0
  330. package/maps/defaultPlayerStatMap.js +14 -0
  331. package/maps/falsePHDPillConversions.js +34 -0
  332. package/maps/gridEntityTypeToBrokenStateMap.js +29 -0
  333. package/maps/gridEntityXMLMap.js +128 -0
  334. package/maps/pillEffectMap.js +88 -0
  335. package/maps/roomShapeToTopLeftWallGridIndexMap.js +14 -0
  336. package/maps/roomTypeMap.js +39 -0
  337. package/maps/trinketDescriptionMap.js +196 -0
  338. package/maps/trinketNameMap.js +195 -0
  339. package/objects/LRoomShapeToRectangles.js +33 -0
  340. package/objects/backdropTypeToRockAltType.js +66 -0
  341. package/objects/bossNamePNGFileNames.js +112 -0
  342. package/objects/bossPortraitPNGFileNames.js +115 -0
  343. package/objects/callbackRegisterFunctions.js +170 -0
  344. package/objects/cardDescriptions.js +104 -0
  345. package/objects/cardNames.js +104 -0
  346. package/objects/cardTypes.js +103 -0
  347. package/objects/challengeNames.js +51 -0
  348. package/objects/characterNames.js +46 -0
  349. package/objects/coinSubTypeToValue.js +13 -0
  350. package/objects/colors.d.ts +1 -0
  351. package/objects/colors.js +24 -0
  352. package/objects/directionNames.js +9 -0
  353. package/objects/directionToDegrees.js +9 -0
  354. package/objects/directionToVector.js +10 -0
  355. package/objects/doorSlotFlagToDoorSlot.js +13 -0
  356. package/objects/doorSlotToDirection.js +13 -0
  357. package/objects/doorSlotToDoorSlotFlag.js +13 -0
  358. package/objects/isaacAPIClassTypeToBrand.js +9 -0
  359. package/objects/isaacAPIClassTypeToCopyFunction.js +12 -0
  360. package/objects/languageNames.js +11 -0
  361. package/objects/oppositeDoorSlots.js +13 -0
  362. package/objects/pillEffectClasses.js +56 -0
  363. package/objects/pillEffectNames.js +55 -0
  364. package/objects/pillEffectTypes.js +55 -0
  365. package/objects/playerNamePNGFileNames.js +55 -0
  366. package/objects/playerPortraitPNGFileNames.js +52 -0
  367. package/objects/roomShapeBounds.js +46 -0
  368. package/objects/roomShapeCorners.js +268 -0
  369. package/objects/roomShapeLayoutSizes.js +39 -0
  370. package/objects/roomShapeToBottomRightPosition.js +22 -0
  371. package/objects/roomShapeToDoorSlotCoordinates.js +109 -0
  372. package/objects/roomShapeToDoorSlots.js +69 -0
  373. package/objects/roomShapeToDoorSlotsToGridIndexDelta.js +113 -0
  374. package/objects/roomShapeToGridWidth.js +18 -0
  375. package/objects/roomShapeToTopLeftPosition.js +23 -0
  376. package/objects/roomShapeVolumes.js +30 -0
  377. package/objects/roomTypeGotoPrefixes.js +33 -0
  378. package/objects/roomTypeNames.js +34 -0
  379. package/objects/serializedIsaacAPIClassTypeToIdentityFunction.js +12 -0
  380. package/objects/stageTypeSuffixes.js +10 -0
  381. package/objects/stageTypeToLetter.js +12 -0
  382. package/objects/transformationNames.js +18 -0
  383. package/objects/versusScreenBackgroundColors.js +36 -0
  384. package/objects/versusScreenDirtSpotColors.js +36 -0
  385. package/package.json +1 -1
  386. package/patchErrorFunctions.js +67 -0
  387. package/sets/LRoomShapesSet.js +8 -0
  388. package/sets/bossSets.js +374 -0
  389. package/sets/charactersThatStartWithAnActiveItemSet.js +15 -0
  390. package/sets/charactersWithBlackHeartFromEternalHeartSet.js +6 -0
  391. package/sets/charactersWithFreeDevilDealsSet.js +3 -0
  392. package/sets/charactersWithNoRedHeartsSet.js +16 -0
  393. package/sets/charactersWithNoSoulHeartsSet.js +13 -0
  394. package/sets/chestPickupVariantsSet.js +16 -0
  395. package/sets/consoleCommandsSet.js +61 -0
  396. package/sets/familiarsThatShootPlayerTearsSet.js +12 -0
  397. package/sets/lostStyleCharactersSet.js +13 -0
  398. package/sets/mineShaftRoomSubTypesSet.js +9 -0
  399. package/sets/narrowRoomShapesSet.js +8 -0
  400. package/sets/redHeartSubTypesSet.js +7 -0
  401. package/sets/sinEntityTypesSet.js +11 -0
  402. package/sets/singleUseActiveCollectibleTypesSet.js +12 -0
  403. package/sets/storyBossesSet.js +17 -0
  404. package/shaderCrashFix.js +17 -0
  405. package/types/AnyEntity.js +2 -0
  406. package/types/CollectibleIndex.js +2 -0
  407. package/types/PickingUpItem.js +38 -0
  408. package/types/PlayerIndex.js +2 -0
  409. package/types/private/IsaacAPIClass.js +2 -0
  410. package/types/private/SerializedIsaacAPIClass.js +2 -0
  411. package/types/private/TSTLClass.js +2 -0
  412. package/upgradeMod.js +47 -0
@@ -0,0 +1,14 @@
1
+ import { CacheFlag } from "isaac-typescript-definitions";
2
+ import { getTearsStat } from "../functions/tears";
3
+ const DEFAULT_MAX_FIRE_DELAY = 10;
4
+ /** The default fire delay is represented in the tear stat, not the `MaxFireDelay` value. */
5
+ export const DEFAULT_PLAYER_STAT_MAP = new Map([
6
+ [CacheFlag.DAMAGE, 3.5],
7
+ // The default tears stat is 2.73.
8
+ [CacheFlag.FIRE_DELAY, getTearsStat(DEFAULT_MAX_FIRE_DELAY)],
9
+ [CacheFlag.SHOT_SPEED, 1.0],
10
+ [CacheFlag.RANGE, 6.5],
11
+ [CacheFlag.SPEED, 1],
12
+ [CacheFlag.LUCK, 0], // 1 << 10
13
+ ]);
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdFBsYXllclN0YXRNYXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9pc2FhY3NjcmlwdC1jb21tb24vc3JjL21hcHMvZGVmYXVsdFBsYXllclN0YXRNYXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVsRCxNQUFNLHNCQUFzQixHQUFHLEVBQUUsQ0FBQztBQUVsQyw0RkFBNEY7QUFDNUYsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQW1DLElBQUksR0FBRyxDQUFDO0lBQzdFLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUM7SUFFdkIsa0NBQWtDO0lBQ2xDLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsc0JBQXNCLENBQUMsQ0FBQztJQUU1RCxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDO0lBQzNCLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUM7SUFDdEIsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNwQixDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUUsVUFBVTtDQUNoQyxDQUFDLENBQUMifQ==
@@ -0,0 +1,34 @@
1
+ import { PillEffect } from "isaac-typescript-definitions";
2
+ export const FALSE_PHD_PILL_CONVERSIONS = new Map([
3
+ [PillEffect.BAD_GAS, PillEffect.HEALTH_DOWN],
4
+ [PillEffect.BALLS_OF_STEEL, PillEffect.BAD_TRIP],
5
+ [PillEffect.BOMBS_ARE_KEYS, PillEffect.TEARS_DOWN],
6
+ [PillEffect.EXPLOSIVE_DIARRHEA, PillEffect.RANGE_DOWN],
7
+ [PillEffect.FULL_HEALTH, PillEffect.BAD_TRIP],
8
+ [PillEffect.HEALTH_UP, PillEffect.HEALTH_DOWN],
9
+ [PillEffect.PRETTY_FLY, PillEffect.LUCK_DOWN],
10
+ [PillEffect.RANGE_UP, PillEffect.RANGE_DOWN],
11
+ [PillEffect.SPEED_UP, PillEffect.SPEED_DOWN],
12
+ [PillEffect.TEARS_UP, PillEffect.TEARS_DOWN],
13
+ [PillEffect.LUCK_UP, PillEffect.LUCK_DOWN],
14
+ [PillEffect.TELEPILLS, PillEffect.QUESTION_MARKS],
15
+ [PillEffect.FORTY_EIGHT_HOUR_ENERGY, PillEffect.SPEED_DOWN],
16
+ [PillEffect.HEMATEMESIS, PillEffect.BAD_TRIP],
17
+ [PillEffect.I_CAN_SEE_FOREVER, PillEffect.AMNESIA],
18
+ [PillEffect.PHEROMONES, PillEffect.PARALYSIS],
19
+ [PillEffect.LEMON_PARTY, PillEffect.AMNESIA],
20
+ [PillEffect.PERCS, PillEffect.ADDICTED],
21
+ [PillEffect.ONE_MAKES_YOU_LARGER, PillEffect.RANGE_DOWN],
22
+ [PillEffect.ONE_MAKES_YOU_SMALL, PillEffect.SPEED_DOWN],
23
+ [PillEffect.INFESTED_EXCLAMATION, PillEffect.TEARS_DOWN],
24
+ [PillEffect.INFESTED_QUESTION, PillEffect.LUCK_DOWN],
25
+ [PillEffect.POWER, PillEffect.R_U_A_WIZARD],
26
+ [PillEffect.FRIENDS_TILL_THE_END, PillEffect.HEALTH_DOWN],
27
+ [PillEffect.SOMETHINGS_WRONG, PillEffect.X_LAX],
28
+ [PillEffect.IM_DROWSY, PillEffect.IM_EXCITED],
29
+ [PillEffect.GULP, PillEffect.HORF],
30
+ [PillEffect.FEELS_LIKE_IM_WALKING_ON_SUNSHINE, PillEffect.RETRO_VISION],
31
+ [PillEffect.VURP, PillEffect.HORF],
32
+ [PillEffect.SHOT_SPEED_UP, PillEffect.SHOT_SPEED_DOWN], // 48
33
+ ]);
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFsc2VQSERQaWxsQ29udmVyc2lvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9pc2FhY3NjcmlwdC1jb21tb24vc3JjL21hcHMvZmFsc2VQSERQaWxsQ29udmVyc2lvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRTFELE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUNyQyxJQUFJLEdBQUcsQ0FBQztJQUNOLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsV0FBVyxDQUFDO0lBQzVDLENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO0lBQ2hELENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRSxVQUFVLENBQUMsVUFBVSxDQUFDO0lBQ2xELENBQUMsVUFBVSxDQUFDLGtCQUFrQixFQUFFLFVBQVUsQ0FBQyxVQUFVLENBQUM7SUFDdEQsQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7SUFDN0MsQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxXQUFXLENBQUM7SUFDOUMsQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUM7SUFDN0MsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxVQUFVLENBQUM7SUFDNUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxVQUFVLENBQUM7SUFDNUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxVQUFVLENBQUM7SUFDNUMsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUM7SUFDMUMsQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxjQUFjLENBQUM7SUFDakQsQ0FBQyxVQUFVLENBQUMsdUJBQXVCLEVBQUUsVUFBVSxDQUFDLFVBQVUsQ0FBQztJQUMzRCxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztJQUM3QyxDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsRUFBRSxVQUFVLENBQUMsT0FBTyxDQUFDO0lBQ2xELENBQUMsVUFBVSxDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUMsU0FBUyxDQUFDO0lBQzdDLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxVQUFVLENBQUMsT0FBTyxDQUFDO0lBQzVDLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO0lBQ3ZDLENBQUMsVUFBVSxDQUFDLG9CQUFvQixFQUFFLFVBQVUsQ0FBQyxVQUFVLENBQUM7SUFDeEQsQ0FBQyxVQUFVLENBQUMsbUJBQW1CLEVBQUUsVUFBVSxDQUFDLFVBQVUsQ0FBQztJQUN2RCxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsRUFBRSxVQUFVLENBQUMsVUFBVSxDQUFDO0lBQ3hELENBQUMsVUFBVSxDQUFDLGlCQUFpQixFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUM7SUFDcEQsQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxZQUFZLENBQUM7SUFDM0MsQ0FBQyxVQUFVLENBQUMsb0JBQW9CLEVBQUUsVUFBVSxDQUFDLFdBQVcsQ0FBQztJQUN6RCxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLENBQUMsS0FBSyxDQUFDO0lBQy9DLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsVUFBVSxDQUFDO0lBQzdDLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsSUFBSSxDQUFDO0lBQ2xDLENBQUMsVUFBVSxDQUFDLGlDQUFpQyxFQUFFLFVBQVUsQ0FBQyxZQUFZLENBQUM7SUFDdkUsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUM7SUFDbEMsQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLFVBQVUsQ0FBQyxlQUFlLENBQUMsRUFBRSxLQUFLO0NBQzlELENBQUMsQ0FBQyJ9
@@ -0,0 +1,29 @@
1
+ import { GridEntityType, LockState, PoopState, RockState, SpiderWebState, TNTState, } from "isaac-typescript-definitions";
2
+ // Not every grid entity can be broken, thus we can use a map to represent this.
3
+ export const GRID_ENTITY_TYPE_TO_BROKEN_STATE_MAP = new Map([
4
+ // 2
5
+ [GridEntityType.ROCK, RockState.BROKEN],
6
+ // 4
7
+ [GridEntityType.ROCK_TINTED, RockState.BROKEN],
8
+ // 5
9
+ [GridEntityType.ROCK_BOMB, RockState.BROKEN],
10
+ // 6
11
+ [GridEntityType.ROCK_ALT, RockState.BROKEN],
12
+ // 10
13
+ [GridEntityType.SPIDER_WEB, SpiderWebState.BROKEN],
14
+ // 11
15
+ [GridEntityType.LOCK, LockState.UNLOCKED],
16
+ // 12
17
+ [GridEntityType.TNT, TNTState.EXPLODED],
18
+ // 14
19
+ [GridEntityType.POOP, PoopState.COMPLETELY_DESTROYED],
20
+ // 22
21
+ [GridEntityType.ROCK_SUPER_SPECIAL, RockState.BROKEN],
22
+ // 25
23
+ [GridEntityType.ROCK_SPIKED, RockState.BROKEN],
24
+ // 26
25
+ [GridEntityType.ROCK_ALT_2, RockState.BROKEN],
26
+ // 27
27
+ [GridEntityType.ROCK_GOLD, RockState.BROKEN],
28
+ ]);
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZEVudGl0eVR5cGVUb0Jyb2tlblN0YXRlTWFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvaXNhYWNzY3JpcHQtY29tbW9uL3NyYy9tYXBzL2dyaWRFbnRpdHlUeXBlVG9Ccm9rZW5TdGF0ZU1hcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsY0FBYyxFQUNkLFNBQVMsRUFDVCxTQUFTLEVBQ1QsU0FBUyxFQUNULGNBQWMsRUFDZCxRQUFRLEdBQ1QsTUFBTSw4QkFBOEIsQ0FBQztBQUV0QyxnRkFBZ0Y7QUFDaEYsTUFBTSxDQUFDLE1BQU0sb0NBQW9DLEdBRzdDLElBQUksR0FBRyxDQUFzQjtJQUMvQixJQUFJO0lBQ0osQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUM7SUFFdkMsSUFBSTtJQUNKLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDO0lBRTlDLElBQUk7SUFDSixDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQztJQUU1QyxJQUFJO0lBQ0osQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUM7SUFFM0MsS0FBSztJQUNMLENBQUMsY0FBYyxDQUFDLFVBQVUsRUFBRSxjQUFjLENBQUMsTUFBTSxDQUFDO0lBRWxELEtBQUs7SUFDTCxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLFFBQVEsQ0FBQztJQUV6QyxLQUFLO0lBQ0wsQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxRQUFRLENBQUM7SUFFdkMsS0FBSztJQUNMLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsb0JBQW9CLENBQUM7SUFFckQsS0FBSztJQUNMLENBQUMsY0FBYyxDQUFDLGtCQUFrQixFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUM7SUFFckQsS0FBSztJQUNMLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDO0lBRTlDLEtBQUs7SUFDTCxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQztJQUU3QyxLQUFLO0lBQ0wsQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUM7Q0FDN0MsQ0FBQyxDQUFDIn0=
@@ -0,0 +1,128 @@
1
+ import { CrawlSpaceVariant, GridEntityType, GridEntityXMLType, PitVariant, PoopGridEntityVariant, PressurePlateVariant, RockVariant, StatueVariant, TrapdoorVariant, } from "isaac-typescript-definitions";
2
+ /**
3
+ * This maps the GridEntityXMLType (i.e. the type contained in the room XML/STB file) to the
4
+ * GridEntityType and the variant used by the game.
5
+ */
6
+ export const GRID_ENTITY_XML_MAP = new Map([
7
+ // 1000
8
+ [GridEntityXMLType.ROCK, [GridEntityType.ROCK, RockVariant.NORMAL]],
9
+ // 1001
10
+ [GridEntityXMLType.ROCK_BOMB, [GridEntityType.ROCK_BOMB, 0]],
11
+ // 1002
12
+ [GridEntityXMLType.ROCK_ALT, [GridEntityType.ROCK_ALT, 0]],
13
+ // 1003
14
+ [GridEntityXMLType.ROCK_TINTED, [GridEntityType.ROCK_TINTED, 0]],
15
+ // 1008
16
+ [GridEntityXMLType.ROCK_ALT_2, [GridEntityType.ROCK_ALT_2, 0]],
17
+ // 1009
18
+ [
19
+ GridEntityXMLType.ROCK_EVENT,
20
+ [GridEntityType.ROCK_ALT_2, RockVariant.EVENT],
21
+ ],
22
+ // 1010
23
+ [GridEntityXMLType.ROCK_SPIKED, [GridEntityType.ROCK_SPIKED, 0]],
24
+ // 1011
25
+ [GridEntityXMLType.ROCK_GOLD, [GridEntityType.ROCK_GOLD, 0]],
26
+ // 1300
27
+ [GridEntityXMLType.TNT, [GridEntityType.TNT, 0]],
28
+ // GridEntityXMLType.FIREPLACE (1400) and GridEntityXMLType.RED_FIREPLACE (1410) are intentionally
29
+ // not mapped; the game converts these to EntityType.FIREPLACE (33). Manually spawning the grid
30
+ // version of the fireplace will result in a bugged entity.
31
+ // 1490
32
+ [
33
+ GridEntityXMLType.POOP_RED,
34
+ [GridEntityType.POOP, PoopGridEntityVariant.RED],
35
+ ],
36
+ // 1494
37
+ [
38
+ GridEntityXMLType.POOP_RAINBOW,
39
+ [GridEntityType.POOP, PoopGridEntityVariant.RAINBOW],
40
+ ],
41
+ // 1495
42
+ [
43
+ GridEntityXMLType.POOP_CORN,
44
+ [GridEntityType.POOP, PoopGridEntityVariant.CORN],
45
+ ],
46
+ // 1496
47
+ [
48
+ GridEntityXMLType.POOP_GOLDEN,
49
+ [GridEntityType.POOP, PoopGridEntityVariant.GOLDEN],
50
+ ],
51
+ // 1497
52
+ [
53
+ GridEntityXMLType.POOP_BLACK,
54
+ [GridEntityType.POOP, PoopGridEntityVariant.BLACK],
55
+ ],
56
+ // 1498
57
+ [
58
+ GridEntityXMLType.POOP_WHITE,
59
+ [GridEntityType.POOP, PoopGridEntityVariant.WHITE],
60
+ ],
61
+ // GridEntityXMLType.POOP_GIGA (1499) is intentionally not mapped; the game converts this to four
62
+ // different grid entities that are all next to each other:
63
+ // - PoopVariant.GIGA_TOP_LEFT (7)
64
+ // - PoopVariant.GIGA_TOP_RIGHT (8)
65
+ // - PoopVariant.GIGA_BOTTOM_LEFT (9)
66
+ // - PoopVariant.GIGA_BOTTOM_RIGHT (10)
67
+ // 1500
68
+ [GridEntityXMLType.POOP, [GridEntityType.POOP, PoopGridEntityVariant.NORMAL]],
69
+ // 1501
70
+ [
71
+ GridEntityXMLType.POOP_CHARMING,
72
+ [GridEntityType.POOP, PoopGridEntityVariant.CHARMING],
73
+ ],
74
+ // 1900
75
+ [GridEntityXMLType.BLOCK, [GridEntityType.BLOCK, 0]],
76
+ // 1901
77
+ [GridEntityXMLType.PILLAR, [GridEntityType.PILLAR, 0]],
78
+ // 1930
79
+ [GridEntityXMLType.SPIKES, [GridEntityType.SPIKES, 0]],
80
+ // 1931
81
+ [GridEntityXMLType.SPIKES_ON_OFF, [GridEntityType.SPIKES_ON_OFF, 0]],
82
+ // 1940
83
+ [GridEntityXMLType.SPIDER_WEB, [GridEntityType.SPIDER_WEB, 0]],
84
+ // 1999
85
+ [GridEntityXMLType.WALL, [GridEntityType.WALL, 0]],
86
+ // 3000
87
+ [GridEntityXMLType.PIT, [GridEntityType.PIT, PitVariant.NORMAL]],
88
+ // 3001
89
+ [
90
+ GridEntityXMLType.FISSURE_SPAWNER,
91
+ [GridEntityType.PIT, PitVariant.FISSURE_SPAWNER],
92
+ ],
93
+ // 3009 - `GridEntityXMLType.PIT_EVENT` spawns as a normal pit with VarData equal to 1. VarData
94
+ // must be manually handled by any code that uses this mapping.)
95
+ [GridEntityXMLType.PIT_EVENT, [GridEntityType.PIT, PitVariant.NORMAL]],
96
+ // 4000
97
+ [GridEntityXMLType.LOCK, [GridEntityType.LOCK, 0]],
98
+ // 4500
99
+ [
100
+ GridEntityXMLType.PRESSURE_PLATE,
101
+ [GridEntityType.PRESSURE_PLATE, PressurePlateVariant.PRESSURE_PLATE],
102
+ ],
103
+ // 5000
104
+ [
105
+ GridEntityXMLType.STATUE_DEVIL,
106
+ [GridEntityType.STATUE, StatueVariant.DEVIL],
107
+ ],
108
+ // 5001
109
+ [
110
+ GridEntityXMLType.STATUE_ANGEL,
111
+ [GridEntityType.STATUE, StatueVariant.ANGEL],
112
+ ],
113
+ // 6100
114
+ [GridEntityXMLType.TELEPORTER, [GridEntityType.TELEPORTER, 0]],
115
+ // 9000
116
+ [
117
+ GridEntityXMLType.TRAPDOOR,
118
+ [GridEntityType.TRAPDOOR, TrapdoorVariant.NORMAL],
119
+ ],
120
+ // 9100
121
+ [
122
+ GridEntityXMLType.CRAWL_SPACE,
123
+ [GridEntityType.CRAWL_SPACE, CrawlSpaceVariant.NORMAL],
124
+ ],
125
+ // 10000
126
+ [GridEntityXMLType.GRAVITY, [GridEntityType.GRAVITY, 0]],
127
+ ]);
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZEVudGl0eVhNTE1hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvbWFwcy9ncmlkRW50aXR5WE1MTWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsY0FBYyxFQUNkLGlCQUFpQixFQUNqQixVQUFVLEVBQ1YscUJBQXFCLEVBQ3JCLG9CQUFvQixFQUNwQixXQUFXLEVBQ1gsYUFBYSxFQUNiLGVBQWUsR0FDaEIsTUFBTSw4QkFBOEIsQ0FBQztBQUV0Qzs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FHNUIsSUFBSSxHQUFHLENBQUM7SUFDVixPQUFPO0lBQ1AsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUVuRSxPQUFPO0lBQ1AsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBRTVELE9BQU87SUFDUCxDQUFDLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFMUQsT0FBTztJQUNQLENBQUMsaUJBQWlCLENBQUMsV0FBVyxFQUFFLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUVoRSxPQUFPO0lBQ1AsQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBRTlELE9BQU87SUFDUDtRQUNFLGlCQUFpQixDQUFDLFVBQVU7UUFDNUIsQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxLQUFLLENBQUM7S0FDL0M7SUFFRCxPQUFPO0lBQ1AsQ0FBQyxp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
@@ -0,0 +1,88 @@
1
+ import { PillEffect } from "isaac-typescript-definitions";
2
+ /** Maps pill effect names to the values of the `PillEffect` enum. */
3
+ export const PILL_EFFECT_MAP = new Map([
4
+ ["badGas", PillEffect.BAD_GAS],
5
+ ["gas", PillEffect.BAD_GAS],
6
+ ["badTrip", PillEffect.BAD_TRIP],
7
+ ["trip", PillEffect.BAD_TRIP],
8
+ ["ballsOfSteel", PillEffect.BALLS_OF_STEEL],
9
+ ["ballsSteel", PillEffect.BALLS_OF_STEEL],
10
+ ["steel", PillEffect.BALLS_OF_STEEL],
11
+ ["bombsAreKey", PillEffect.BOMBS_ARE_KEYS],
12
+ ["bombsKey", PillEffect.BOMBS_ARE_KEYS],
13
+ ["key", PillEffect.BOMBS_ARE_KEYS],
14
+ ["explosiveDiarrhea", PillEffect.EXPLOSIVE_DIARRHEA],
15
+ ["diarrhea", PillEffect.EXPLOSIVE_DIARRHEA],
16
+ ["fullHealth", PillEffect.FULL_HEALTH],
17
+ ["healthDown", PillEffect.HEALTH_DOWN],
18
+ ["healthUp", PillEffect.HEALTH_UP],
19
+ ["iFoundPills", PillEffect.I_FOUND_PILLS],
20
+ ["foundPills", PillEffect.I_FOUND_PILLS],
21
+ ["pills", PillEffect.I_FOUND_PILLS],
22
+ ["puberty", PillEffect.PUBERTY],
23
+ ["prettyFly", PillEffect.PRETTY_FLY],
24
+ ["fly", PillEffect.PRETTY_FLY],
25
+ ["rangeDown", PillEffect.RANGE_DOWN],
26
+ ["rangeUp", PillEffect.RANGE_UP],
27
+ ["speedDown", PillEffect.SPEED_DOWN],
28
+ ["speedUp", PillEffect.SPEED_UP],
29
+ ["tearsDown", PillEffect.TEARS_DOWN],
30
+ ["tearsUp", PillEffect.TEARS_UP],
31
+ ["luckDown", PillEffect.LUCK_DOWN],
32
+ ["luckUp", PillEffect.LUCK_UP],
33
+ ["telepills", PillEffect.TELEPILLS],
34
+ ["48HourEnergy", PillEffect.FORTY_EIGHT_HOUR_ENERGY],
35
+ ["energy", PillEffect.FORTY_EIGHT_HOUR_ENERGY],
36
+ ["48", PillEffect.FORTY_EIGHT_HOUR_ENERGY],
37
+ ["hematemesis", PillEffect.HEMATEMESIS],
38
+ ["paralysis", PillEffect.PARALYSIS],
39
+ ["iCanSeeForever!", PillEffect.I_CAN_SEE_FOREVER],
40
+ ["canSee", PillEffect.I_CAN_SEE_FOREVER],
41
+ ["see", PillEffect.I_CAN_SEE_FOREVER],
42
+ ["pheromones", PillEffect.PHEROMONES],
43
+ ["amnesia", PillEffect.AMNESIA],
44
+ ["lemonParty", PillEffect.LEMON_PARTY],
45
+ ["party", PillEffect.LEMON_PARTY],
46
+ ["RUAWizard", PillEffect.R_U_A_WIZARD],
47
+ ["areYouAWizard", PillEffect.R_U_A_WIZARD],
48
+ ["wizard", PillEffect.R_U_A_WIZARD],
49
+ ["percs!", PillEffect.PERCS],
50
+ ["addicted!", PillEffect.ADDICTED],
51
+ ["relax", PillEffect.RELAX],
52
+ ["???", PillEffect.QUESTION_MARKS],
53
+ ["oneMakesYouLarger", PillEffect.ONE_MAKES_YOU_LARGER],
54
+ ["larger", PillEffect.ONE_MAKES_YOU_LARGER],
55
+ ["oneMakesYouSmaller", PillEffect.ONE_MAKES_YOU_SMALL],
56
+ ["smaller", PillEffect.ONE_MAKES_YOU_SMALL],
57
+ ["infested!", PillEffect.INFESTED_EXCLAMATION],
58
+ ["infest!", PillEffect.INFESTED_EXCLAMATION],
59
+ ["inf!", PillEffect.INFESTED_EXCLAMATION],
60
+ ["infested?", PillEffect.INFESTED_QUESTION],
61
+ ["infest?", PillEffect.INFESTED_QUESTION],
62
+ ["inf?", PillEffect.INFESTED_QUESTION],
63
+ ["powerPill", PillEffect.POWER],
64
+ ["retroVision", PillEffect.RETRO_VISION],
65
+ ["vision", PillEffect.RETRO_VISION],
66
+ ["friendsTillTheEnd", PillEffect.FRIENDS_TILL_THE_END],
67
+ ["friendsUntilTheEnd", PillEffect.FRIENDS_TILL_THE_END],
68
+ ["xlax", PillEffect.X_LAX],
69
+ ["somethingsWrong", PillEffect.SOMETHINGS_WRONG],
70
+ ["wrong", PillEffect.SOMETHINGS_WRONG],
71
+ ["imDrowsy", PillEffect.IM_DROWSY],
72
+ ["drowsy", PillEffect.IM_DROWSY],
73
+ ["imExcited!!!", PillEffect.IM_EXCITED],
74
+ ["excited", PillEffect.IM_EXCITED],
75
+ ["gulp!", PillEffect.GULP],
76
+ ["horf!", PillEffect.HORF],
77
+ [
78
+ "feelsLikeImWalkingOnSunshine!",
79
+ PillEffect.FEELS_LIKE_IM_WALKING_ON_SUNSHINE,
80
+ ],
81
+ ["walking", PillEffect.FEELS_LIKE_IM_WALKING_ON_SUNSHINE],
82
+ ["sunshine", PillEffect.FEELS_LIKE_IM_WALKING_ON_SUNSHINE],
83
+ ["vurp!", PillEffect.VURP],
84
+ ["shotSpeedDown", PillEffect.SHOT_SPEED_DOWN],
85
+ ["shotSpeedUp", PillEffect.SHOT_SPEED_UP],
86
+ ["experimental", PillEffect.EXPERIMENTAL], // 49
87
+ ]);
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlsbEVmZmVjdE1hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvbWFwcy9waWxsRWZmZWN0TWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUUxRCxxRUFBcUU7QUFDckUsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFvQyxJQUFJLEdBQUcsQ0FBQztJQUN0RSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsT0FBTyxDQUFDO0lBQzlCLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUM7SUFDM0IsQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztJQUNoQyxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO0lBQzdCLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxjQUFjLENBQUM7SUFDM0MsQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLGNBQWMsQ0FBQztJQUN6QyxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsY0FBYyxDQUFDO0lBQ3BDLENBQUMsYUFBYSxFQUFFLFVBQVUsQ0FBQyxjQUFjLENBQUM7SUFDMUMsQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLGNBQWMsQ0FBQztJQUN2QyxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsY0FBYyxDQUFDO0lBQ2xDLENBQUMsbUJBQW1CLEVBQUUsVUFBVSxDQUFDLGtCQUFrQixDQUFDO0lBQ3BELENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQztJQUMzQyxDQUFDLFlBQVksRUFBRSxVQUFVLENBQUMsV0FBVyxDQUFDO0lBQ3RDLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxXQUFXLENBQUM7SUFDdEMsQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLFNBQVMsQ0FBQztJQUNsQyxDQUFDLGFBQWEsRUFB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
@@ -0,0 +1,14 @@
1
+ import { RoomShape } from "isaac-typescript-definitions";
2
+ export const DEFAULT_TOP_LEFT_WALL_GRID_INDEX = 0;
3
+ /**
4
+ * Only used for special room shapes where the top left wall grid index is not equal to
5
+ * `DEFAULT_TOP_LEFT_WALL_GRID_INDEX`.
6
+ */
7
+ export const ROOM_SHAPE_TO_TOP_LEFT_WALL_GRID_INDEX_MAP = new Map([
8
+ [RoomShape.IH, 30],
9
+ [RoomShape.IV, 4],
10
+ [RoomShape.IIV, 4],
11
+ [RoomShape.IIH, 56],
12
+ [RoomShape.LTL, 13], // 9
13
+ ]);
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vbVNoYXBlVG9Ub3BMZWZ0V2FsbEdyaWRJbmRleE1hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvbWFwcy9yb29tU2hhcGVUb1RvcExlZnRXYWxsR3JpZEluZGV4TWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUV6RCxNQUFNLENBQUMsTUFBTSxnQ0FBZ0MsR0FBRyxDQUFDLENBQUM7QUFFbEQ7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sMENBQTBDLEdBR25ELElBQUksR0FBRyxDQUFDO0lBQ1YsQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUNsQixDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2pCLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDbEIsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQztJQUNuQixDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSTtDQUMxQixDQUFDLENBQUMifQ==
@@ -0,0 +1,39 @@
1
+ import { RoomType } from "isaac-typescript-definitions";
2
+ /** Maps room type names to room types. */
3
+ export const ROOM_TYPE_MAP = new Map([
4
+ ["default", RoomType.DEFAULT],
5
+ ["shop", RoomType.SHOP],
6
+ ["error", RoomType.ERROR],
7
+ ["iAmError", RoomType.ERROR],
8
+ ["treasure", RoomType.TREASURE],
9
+ ["boss", RoomType.BOSS],
10
+ ["miniBoss", RoomType.MINI_BOSS],
11
+ ["secret", RoomType.SECRET],
12
+ ["superSecret", RoomType.SUPER_SECRET],
13
+ ["arcade", RoomType.ARCADE],
14
+ ["curse", RoomType.CURSE],
15
+ ["challenge", RoomType.CHALLENGE],
16
+ ["library", RoomType.LIBRARY],
17
+ ["sacrifice", RoomType.SACRIFICE],
18
+ ["devil", RoomType.DEVIL],
19
+ ["angel", RoomType.ANGEL],
20
+ ["dungeon", RoomType.DUNGEON],
21
+ ["crawlSpace", RoomType.DUNGEON],
22
+ ["bossRush", RoomType.BOSS_RUSH],
23
+ ["isaacs", RoomType.CLEAN_BEDROOM],
24
+ ["bedroom", RoomType.CLEAN_BEDROOM],
25
+ ["cleanBedroom", RoomType.CLEAN_BEDROOM],
26
+ ["dirtyBedroom", RoomType.DIRTY_BEDROOM],
27
+ ["barren", RoomType.DIRTY_BEDROOM],
28
+ ["chest", RoomType.CHEST],
29
+ ["dice", RoomType.DICE],
30
+ ["blackMarket", RoomType.BLACK_MARKET],
31
+ ["greedExit", RoomType.GREED_EXIT],
32
+ ["planetarium", RoomType.PLANETARIUM],
33
+ ["teleporter", RoomType.TELEPORTER],
34
+ ["teleporterExit", RoomType.TELEPORTER_EXIT],
35
+ ["secretExit", RoomType.SECRET_EXIT],
36
+ ["blue", RoomType.BLUE],
37
+ ["ultraSecret", RoomType.ULTRA_SECRET], // 29
38
+ ]);
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vbVR5cGVNYXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9pc2FhY3NjcmlwdC1jb21tb24vc3JjL21hcHMvcm9vbVR5cGVNYXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXhELDBDQUEwQztBQUMxQyxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQWtDLElBQUksR0FBRyxDQUFDO0lBQ2xFLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUM7SUFDN0IsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQztJQUN2QixDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDO0lBQ3pCLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUM7SUFDNUIsQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLFFBQVEsQ0FBQztJQUMvQixDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDO0lBQ3ZCLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxTQUFTLENBQUM7SUFDaEMsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQztJQUMzQixDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUMsWUFBWSxDQUFDO0lBQ3RDLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUM7SUFDM0IsQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLEtBQUssQ0FBQztJQUN6QixDQUFDLFdBQVcsRUFBRSxRQUFRLENBQUMsU0FBUyxDQUFDO0lBQ2pDLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUM7SUFDN0IsQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLFNBQVMsQ0FBQztJQUNqQyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDO0lBQ3pCLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUM7SUFDekIsQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQztJQUM3QixDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDO0lBQ2hDLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxTQUFTLENBQUM7SUFDaEMsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLGFBQWEsQ0FBQztJQUNsQyxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsYUFBYSxDQUFDO0lBQ25DLENBQUMsY0FBYyxFQUFFLFFBQVEsQ0FBQyxhQUFhLENBQUM7SUFDeEMsQ0FBQyxjQUFjLEVBQUUsUUFBUSxDQUFDLGFBQWEsQ0FBQztJQUN4QyxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsYUFBYSxDQUFDO0lBQ2xDLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUM7SUFDekIsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQztJQUN2QixDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUMsWUFBWSxDQUFDO0lBQ3RDLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxVQUFVLENBQUM7SUFDbEMsQ0FBQyxhQUFhLEVBQUUsUUFBUSxDQUFDLFdBQVcsQ0FBQztJQUNyQyxDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsVUFBVSxDQUFDO0lBQ25DLENBQUMsZ0JBQWdCLEVBQUUsUUFBUSxDQUFDLGVBQWUsQ0FBQztJQUM1QyxDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsV0FBVyxDQUFDO0lBQ3BDLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUM7SUFDdkIsQ0FBQyxhQUFhLEVBQUUsUUFBUSxDQUFDLFlBQVksQ0FBQyxFQUFFLEtBQUs7Q0FDOUMsQ0FBQyxDQUFDIn0=
@@ -0,0 +1,196 @@
1
+ /* eslint-disable isaacscript/strict-enums */
2
+ /* cspell:disable */
3
+ export const DEFAULT_TRINKET_DESCRIPTION = "Unknown";
4
+ // This is a temporary map due to missing features in the vanilla API. (Otherwise, this would be
5
+ // converted to a type-safe object.)
6
+ export const TRINKET_DESCRIPTION_MAP = new Map([
7
+ [1, "Gulp!"],
8
+ [2, "It feels lucky?"],
9
+ [3, "Trickle charge"],
10
+ [4, "It's broken"],
11
+ [5, "Challenge up"],
12
+ [6, "It kinda works"],
13
+ [7, "Faith up"],
14
+ [8, "I remember these"],
15
+ [9, "Wub wub!"],
16
+ [10, "Wiggle waggle!"],
17
+ [11, "Woop woop!"],
18
+ [12, "Blub blub!"],
19
+ [13, "YES!"],
20
+ [14, "Your feet feel stronger"],
21
+ [15, "There's something inside it"],
22
+ [16, "???"],
23
+ [17, "Evil up"],
24
+ [18, "Faith up"],
25
+ [19, "Master of lockpicking"],
26
+ [20, "Wish granted"],
27
+ [21, "???"],
28
+ [22, "Evil up"],
29
+ [23, "???"],
30
+ [24, "Wealth of gas"],
31
+ [25, "Uh-oh!"],
32
+ [26, "Zip zoop!"],
33
+ [27, "Wooosh!"],
34
+ [28, "Eternal life?"],
35
+ [29, "It stinks"],
36
+ [30, "Poison shots"],
37
+ [31, "Piercing shots"],
38
+ [32, "Touch fuzzy, get dizzy"],
39
+ [33, "Fetal protection"],
40
+ [34, "It calls out to its brothers"],
41
+ [35, "DMG up"],
42
+ [36, "It feels lucky?"],
43
+ [37, "Speed up"],
44
+ [38, "It emanates purity "],
45
+ [39, "Yay, cancer!"],
46
+ [40, "Your rage grows"],
47
+ [41, "Tastes like burning"],
48
+ [42, "Luck up!"],
49
+ [43, "Cursed?"],
50
+ [44, "Don't swallow it"],
51
+ [45, "Luck of the draw"],
52
+ [46, "Consume thy enemy"],
53
+ [48, "It glows with power"],
54
+ [49, "Wealth of health"],
55
+ [50, "Wealth of chaos"],
56
+ [51, "Wealth of answers"],
57
+ [52, "Wealth of wealth"],
58
+ [53, "Well, that's not coming off"],
59
+ [54, "Dead friend"],
60
+ [55, "Faith's reward"],
61
+ [56, "Payment received "],
62
+ [57, "Imaginary friend"],
63
+ [58, "Your rage grows"],
64
+ [59, "May you see your destination"],
65
+ [60, "Revenge from beyond"],
66
+ [61, "The left-hand path reaps dark rewards"],
67
+ [62, "It shines for its brothers"],
68
+ [63, "Fuse cutter"],
69
+ [64, "Bleep bloop blop"],
70
+ [65, "Floooooooooop!"],
71
+ [66, "Pft"],
72
+ [67, "You feel cursed... kinda."],
73
+ [68, "It pulls"],
74
+ [69, "You feel faded"],
75
+ [70, "Itchy, tasty..."],
76
+ [71, "Creepy bombs"],
77
+ [72, "Lil charge"],
78
+ [73, "Pop! Pop!"],
79
+ [74, "The ground below feels hollow..."],
80
+ [75, "Effect not found?"],
81
+ [76, "It's double down time!"],
82
+ [77, "Bounce back!"],
83
+ [78, "Extended stat effect time!"],
84
+ [79, "I'm stuck in a loop..."],
85
+ [80, "With darkness comes power"],
86
+ [81, "Blind to damage"],
87
+ [82, "Feel lucky?"],
88
+ [83, "Stores are open"],
89
+ [84, "Feels greedy"],
90
+ [85, "Karma up"],
91
+ [86, "The poop is moving..."],
92
+ [87, "You feel her love"],
93
+ [88, "Never again!"],
94
+ [89, "Keep your friends close..."],
95
+ [90, "Fartoom!"],
96
+ [91, "Eww"],
97
+ [92, "Stat booster"],
98
+ [93, "You stink"],
99
+ [94, "It also stinks!"],
100
+ [95, "It looks dead"],
101
+ [96, "Foop foop!"],
102
+ [97, "Sick..."],
103
+ [98, "Seems magic..."],
104
+ [99, "Boing!"],
105
+ [100, "It needs power"],
106
+ [101, "I think it's broken"],
107
+ [102, "Double moon"],
108
+ [103, "="],
109
+ [104, "Make a wish"],
110
+ [105, "I wonder what it is"],
111
+ [106, "Uncorked"],
112
+ [107, "Drain me"],
113
+ [108, "That's a hard nut to crack!"],
114
+ [109, "Stuck!"],
115
+ [110, "Feels lucky..."],
116
+ [111, "Drips with blood..."],
117
+ [112, "..."],
118
+ [113, "I bring War"],
119
+ [114, "I bring Pestilence"],
120
+ [115, "I bring Famine"],
121
+ [116, "I bring Death"],
122
+ [117, "I bring Conquest"],
123
+ [118, "They are growing..."],
124
+ [119, "Regen!"],
125
+ [120, "Danger charge"],
126
+ [121, "My faith protects me"],
127
+ [122, "Can't hold it!"],
128
+ [123, "Angelic spoils"],
129
+ [124, "Hold the door"],
130
+ [125, "Charged friends"],
131
+ [126, "Wealth of flies"],
132
+ [127, "Feed them magic!"],
133
+ [128, "It looks brittle"],
134
+ [129, "Don't chew on it"],
135
+ [130, "It's leaking"],
136
+ [131, "Wealth of purity"],
137
+ [132, "Mystery medicine"],
138
+ [133, "Faster explosions"],
139
+ [134, "Mega farts"],
140
+ [135, "Watch the world burn"],
141
+ [136, "Bombs are key"],
142
+ [137, "Forget me not..."],
143
+ [138, "t's broken9Reroll your dest "],
144
+ [139, "It feels lucky"],
145
+ [140, "It feels empty"],
146
+ [141, "Sing for your friends"],
147
+ [142, "My faith protects me"],
148
+ [143, "Voltage starving"],
149
+ [144, "Ding!"],
150
+ [145, "Luck way up. Don't lose it!"],
151
+ [146, "His special customer"],
152
+ [147, "Wealth of power"],
153
+ [148, "Gather round"],
154
+ [149, "Push in case of emergency"],
155
+ [150, "Look between the rooms"],
156
+ [151, "No more spikes"],
157
+ [152, "Seek the stars"],
158
+ [153, "A piece of her love"],
159
+ [154, "Bonus roll"],
160
+ [155, "Walk the path of the saint"],
161
+ [156, "HP up"],
162
+ [157, "Death awaits"],
163
+ [158, "A hole in your pocket"],
164
+ [159, "Less is more"],
165
+ [160, "Free goodies!"],
166
+ [161, "Walk the path of the wicked"],
167
+ [162, "Unleash your inner demon"],
168
+ [163, "Oops!"],
169
+ [164, "Twice the bang!"],
170
+ [165, "Don't want!"],
171
+ [166, "???"],
172
+ [167, "Friends from beyond"],
173
+ [168, "A brittle blessing"],
174
+ [169, "Looks familiar..."],
175
+ [170, "Call to the other side"],
176
+ [171, "Money talks"],
177
+ [172, "Wealth of misery"],
178
+ [173, "Give it to me"],
179
+ [174, "6"],
180
+ [175, "What could it open?"],
181
+ [176, "Mini friend"],
182
+ [177, "You feel braver"],
183
+ [178, "Bang!"],
184
+ [179, "Controllable buddies!"],
185
+ [180, "Finally!"],
186
+ [181, "Fun extras"],
187
+ [182, "Virtue's reward"],
188
+ [183, "I'm seeing double..."],
189
+ [184, "Give them a home"],
190
+ [185, "Infested"],
191
+ [186, "Attack buddy"],
192
+ [187, "Double vision?"],
193
+ [188, "Stay frosty"],
194
+ [189, "Revel in death"],
195
+ ]);
196
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJpbmtldERlc2NyaXB0aW9uTWFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvaXNhYWNzY3JpcHQtY29tbW9uL3NyYy9tYXBzL3RyaW5rZXREZXNjcmlwdGlvbk1hcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw2Q0FBNkM7QUFDN0Msb0JBQW9CO0FBSXBCLE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLFNBQVMsQ0FBQztBQUVyRCxnR0FBZ0c7QUFDaEcsb0NBQW9DO0FBQ3BDLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUNsQyxJQUFJLEdBQUcsQ0FBQztJQUNOLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUNaLENBQUMsQ0FBQyxFQUFFLGlCQUFpQixDQUFDO0lBQ3RCLENBQUMsQ0FBQyxFQUFFLGdCQUFnQixDQUFDO0lBQ3JCLENBQUMsQ0FBQyxFQUFFLGFBQWEsQ0FBQztJQUNsQixDQUFDLENBQUMsRUFBRSxjQUFjLENBQUM7SUFDbkIsQ0FBQyxDQUFDLEVBQUUsZ0JBQWdCLENBQUM7SUFDckIsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDO0lBQ2YsQ0FBQyxDQUFDLEVBQUUsa0JBQWtCLENBQUM7SUFDdkIsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDO0lBQ2YsQ0FBQyxFQUFFLEVBQUUsZ0JBQWdCLENBQUM7SUFDdEIsQ0FBQyxFQUFFLEVBQUUsWUFBWSxDQUFDO0lBQ2xCLENBQUMsRUFBRSxFQUFFLFlBQVksQ0FBQztJQUNsQixDQUFDLEVBQUUsRUFBRSxNQUFNLENBQUM7SUFDWixDQUFDLEVBQUUsRUFBRSx5QkFBeUIsQ0FBQztJQUMvQixDQUFDLEVBQUUsRUFBRSw2QkFBNkIsQ0FBQztJQUNuQyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUM7SUFDWCxDQUFDLEVBQUUsRUFBRSxTQUFTLENBQUM7SUFDZixDQUFDLEVBQUUsRUFBRSxVQUFVLENBQUM7SUFDaEIsQ0FBQyxFQUFFLEVB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