isaacscript-common 20.18.0 → 21.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (344) hide show
  1. package/dist/index.d.ts +23 -33
  2. package/dist/isaacscript-common.lua +676 -508
  3. package/dist/src/callbacks.d.ts.map +1 -1
  4. package/dist/src/classes/callbacks/PostBoneSwing.d.ts.map +1 -1
  5. package/dist/src/classes/callbacks/PostBoneSwing.lua +3 -2
  6. package/dist/src/classes/callbacks/PreNewLevel.d.ts.map +1 -1
  7. package/dist/src/classes/callbacks/PreNewLevel.lua +3 -2
  8. package/dist/src/classes/features/other/CustomTrapdoors.d.ts.map +1 -1
  9. package/dist/src/classes/features/other/CustomTrapdoors.lua +4 -2
  10. package/dist/src/classes/features/other/DeployJSONRoom.d.ts.map +1 -1
  11. package/dist/src/classes/features/other/DeployJSONRoom.lua +3 -2
  12. package/dist/src/classes/features/other/ModdedElementSets.d.ts.map +1 -1
  13. package/dist/src/classes/features/other/ModdedElementSets.lua +7 -4
  14. package/dist/src/classes/features/other/SaveDataManager.d.ts.map +1 -1
  15. package/dist/src/classes/features/other/SaveDataManager.lua +3 -2
  16. package/dist/src/classes/features/other/customStages/backdrop.lua +3 -2
  17. package/dist/src/classes/features/other/customStages/shadows.d.ts.map +1 -1
  18. package/dist/src/classes/features/other/customStages/streakText.d.ts.map +1 -1
  19. package/dist/src/classes/features/other/saveDataManager/restoreDefaults.d.ts.map +1 -1
  20. package/dist/src/classes/features/other/saveDataManager/restoreDefaults.lua +3 -2
  21. package/dist/src/core/constants.d.ts +4 -6
  22. package/dist/src/core/constants.d.ts.map +1 -1
  23. package/dist/src/core/constants.lua +17 -13
  24. package/dist/src/features.d.ts.map +1 -1
  25. package/dist/src/functions/bosses.d.ts.map +1 -1
  26. package/dist/src/functions/bosses.lua +3 -2
  27. package/dist/src/functions/cards.lua +3 -3
  28. package/dist/src/functions/characters.d.ts.map +1 -1
  29. package/dist/src/functions/characters.lua +3 -2
  30. package/dist/src/functions/doors.d.ts.map +1 -1
  31. package/dist/src/functions/doors.lua +9 -7
  32. package/dist/src/functions/emptyRoom.d.ts.map +1 -1
  33. package/dist/src/functions/emptyRoom.lua +3 -2
  34. package/dist/src/functions/entities.d.ts.map +1 -1
  35. package/dist/src/functions/entities.lua +67 -64
  36. package/dist/src/functions/globals.d.ts.map +1 -1
  37. package/dist/src/functions/globals.lua +6 -4
  38. package/dist/src/functions/gridEntities.d.ts.map +1 -1
  39. package/dist/src/functions/gridEntities.lua +5 -3
  40. package/dist/src/functions/input.d.ts.map +1 -1
  41. package/dist/src/functions/input.lua +4 -3
  42. package/dist/src/functions/logEntities.d.ts.map +1 -1
  43. package/dist/src/functions/logEntities.lua +3 -2
  44. package/dist/src/functions/npcs.d.ts.map +1 -1
  45. package/dist/src/functions/npcs.lua +4 -3
  46. package/dist/src/functions/playerIndex.d.ts.map +1 -1
  47. package/dist/src/functions/playerIndex.lua +3 -2
  48. package/dist/src/functions/readOnly.d.ts +26 -0
  49. package/dist/src/functions/readOnly.d.ts.map +1 -0
  50. package/dist/src/functions/readOnly.lua +31 -0
  51. package/dist/src/functions/roomGrid.lua +4 -1
  52. package/dist/src/functions/roomShapeWalls.d.ts.map +1 -1
  53. package/dist/src/functions/roomShapeWalls.lua +9 -10
  54. package/dist/src/functions/serialization.d.ts.map +1 -1
  55. package/dist/src/functions/serialization.lua +3 -2
  56. package/dist/src/functions/slots.d.ts.map +1 -1
  57. package/dist/src/functions/slots.lua +3 -2
  58. package/dist/src/functions/stats.d.ts.map +1 -1
  59. package/dist/src/functions/stats.lua +3 -2
  60. package/dist/src/functions/transformations.d.ts.map +1 -1
  61. package/dist/src/functions/transformations.lua +6 -3
  62. package/dist/src/functions/utils.d.ts +1 -1
  63. package/dist/src/functions/utils.lua +1 -1
  64. package/dist/src/index.d.ts +2 -1
  65. package/dist/src/index.d.ts.map +1 -1
  66. package/dist/src/index.lua +16 -0
  67. package/dist/src/maps/PHDPillConversions.d.ts.map +1 -1
  68. package/dist/src/maps/PHDPillConversions.lua +3 -2
  69. package/dist/src/maps/cardNameToTypeMap.d.ts.map +1 -1
  70. package/dist/src/maps/cardNameToTypeMap.lua +3 -2
  71. package/dist/src/maps/characterNameToTypeMap.d.ts.map +1 -1
  72. package/dist/src/maps/characterNameToTypeMap.lua +3 -2
  73. package/dist/src/maps/collectibleDescriptionMap.d.ts.map +1 -1
  74. package/dist/src/maps/collectibleDescriptionMap.lua +3 -2
  75. package/dist/src/maps/collectibleNameToTypeMap.d.ts +5 -0
  76. package/dist/src/maps/collectibleNameToTypeMap.d.ts.map +1 -1
  77. package/dist/src/maps/collectibleNameToTypeMap.lua +10 -8
  78. package/dist/src/maps/collectibleTypeToNameMap.d.ts.map +1 -1
  79. package/dist/src/maps/collectibleTypeToNameMap.lua +3 -2
  80. package/dist/src/maps/defaultPlayerStatMap.d.ts +5 -2
  81. package/dist/src/maps/defaultPlayerStatMap.d.ts.map +1 -1
  82. package/dist/src/maps/defaultPlayerStatMap.lua +3 -2
  83. package/dist/src/maps/falsePHDPillConversions.d.ts.map +1 -1
  84. package/dist/src/maps/falsePHDPillConversions.lua +3 -2
  85. package/dist/src/maps/gridEntityTypeToBrokenStateMap.d.ts +1 -1
  86. package/dist/src/maps/gridEntityTypeToBrokenStateMap.d.ts.map +1 -1
  87. package/dist/src/maps/gridEntityTypeToBrokenStateMap.lua +3 -2
  88. package/dist/src/maps/gridEntityXMLMap.d.ts +1 -4
  89. package/dist/src/maps/gridEntityXMLMap.d.ts.map +1 -1
  90. package/dist/src/maps/gridEntityXMLMap.lua +3 -2
  91. package/dist/src/maps/keyboardToString.d.ts.map +1 -1
  92. package/dist/src/maps/keyboardToString.lua +3 -2
  93. package/dist/src/maps/pillNameToEffectMap.d.ts.map +1 -1
  94. package/dist/src/maps/pillNameToEffectMap.lua +3 -2
  95. package/dist/src/maps/roomNameToTypeMap.d.ts.map +1 -1
  96. package/dist/src/maps/roomNameToTypeMap.lua +3 -2
  97. package/dist/src/maps/roomShapeToTopLeftWallGridIndexMap.d.ts +1 -1
  98. package/dist/src/maps/roomShapeToTopLeftWallGridIndexMap.d.ts.map +1 -1
  99. package/dist/src/maps/roomShapeToTopLeftWallGridIndexMap.lua +3 -2
  100. package/dist/src/maps/transformationNameToPlayerFormMap.d.ts.map +1 -1
  101. package/dist/src/maps/transformationNameToPlayerFormMap.lua +3 -2
  102. package/dist/src/maps/trinketDescriptionMap.d.ts.map +1 -1
  103. package/dist/src/maps/trinketDescriptionMap.lua +3 -2
  104. package/dist/src/maps/trinketNameToTypeMap.d.ts +5 -0
  105. package/dist/src/maps/trinketNameToTypeMap.d.ts.map +1 -1
  106. package/dist/src/maps/trinketNameToTypeMap.lua +10 -8
  107. package/dist/src/maps/trinketTypeToNameMap.d.ts.map +1 -1
  108. package/dist/src/maps/trinketTypeToNameMap.lua +3 -2
  109. package/dist/src/objects/LRoomShapeToRectangles.d.ts +8 -6
  110. package/dist/src/objects/LRoomShapeToRectangles.d.ts.map +1 -1
  111. package/dist/src/objects/LRoomShapeToRectangles.lua +19 -17
  112. package/dist/src/objects/backdropTypeToRockAltType.d.ts.map +1 -1
  113. package/dist/src/objects/bossNamePNGFileNames.d.ts.map +1 -1
  114. package/dist/src/objects/bossPortraitPNGFileNames.d.ts.map +1 -1
  115. package/dist/src/objects/cardDescriptions.d.ts.map +1 -1
  116. package/dist/src/objects/cardNames.d.ts.map +1 -1
  117. package/dist/src/objects/challengeNames.d.ts.map +1 -1
  118. package/dist/src/objects/characterDamageMultipliers.d.ts.map +1 -1
  119. package/dist/src/objects/characterNames.d.ts.map +1 -1
  120. package/dist/src/objects/coinSubTypeToValue.d.ts.map +1 -1
  121. package/dist/src/objects/directionNames.d.ts.map +1 -1
  122. package/dist/src/objects/directionToDegrees.d.ts.map +1 -1
  123. package/dist/src/objects/directionToMoveAction.d.ts.map +1 -1
  124. package/dist/src/objects/directionToShootAction.d.ts.map +1 -1
  125. package/dist/src/objects/directionToVector.d.ts +5 -2
  126. package/dist/src/objects/directionToVector.d.ts.map +1 -1
  127. package/dist/src/objects/directionToVector.lua +6 -4
  128. package/dist/src/objects/doorSlotFlagToDoorSlot.d.ts.map +1 -1
  129. package/dist/src/objects/doorSlotToDirection.d.ts.map +1 -1
  130. package/dist/src/objects/doorSlotToDoorSlotFlag.d.ts.map +1 -1
  131. package/dist/src/objects/isaacAPIClassTypeToBrand.d.ts.map +1 -1
  132. package/dist/src/objects/languageNames.d.ts.map +1 -1
  133. package/dist/src/objects/oppositeDoorSlots.d.ts.map +1 -1
  134. package/dist/src/objects/pillEffectClasses.d.ts.map +1 -1
  135. package/dist/src/objects/pillEffectNames.d.ts.map +1 -1
  136. package/dist/src/objects/pillEffectTypes.d.ts.map +1 -1
  137. package/dist/src/objects/playerNamePNGFileNames.d.ts.map +1 -1
  138. package/dist/src/objects/playerPortraitPNGFileNames.d.ts.map +1 -1
  139. package/dist/src/objects/roomShapeBounds.d.ts +12 -2
  140. package/dist/src/objects/roomShapeBounds.d.ts.map +1 -1
  141. package/dist/src/objects/roomShapeCorners.d.ts +237 -3
  142. package/dist/src/objects/roomShapeCorners.d.ts.map +1 -1
  143. package/dist/src/objects/roomShapeCorners.lua +58 -56
  144. package/dist/src/objects/roomShapeLayoutSizes.d.ts +12 -2
  145. package/dist/src/objects/roomShapeLayoutSizes.d.ts.map +1 -1
  146. package/dist/src/objects/roomShapeToBottomRightPosition.d.ts +12 -2
  147. package/dist/src/objects/roomShapeToBottomRightPosition.d.ts.map +1 -1
  148. package/dist/src/objects/roomShapeToBottomRightPosition.lua +10 -8
  149. package/dist/src/objects/roomShapeToDoorSlotCoordinates.d.ts +88 -2
  150. package/dist/src/objects/roomShapeToDoorSlotCoordinates.d.ts.map +1 -1
  151. package/dist/src/objects/roomShapeToDoorSlotCoordinates.lua +71 -74
  152. package/dist/src/objects/roomShapeToDoorSlots.d.ts +13 -2
  153. package/dist/src/objects/roomShapeToDoorSlots.d.ts.map +1 -1
  154. package/dist/src/objects/roomShapeToDoorSlots.lua +10 -9
  155. package/dist/src/objects/roomShapeToDoorSlotsToGridIndexDelta.d.ts.map +1 -1
  156. package/dist/src/objects/roomShapeToDoorSlotsToGridIndexDelta.lua +14 -13
  157. package/dist/src/objects/roomShapeToGridWidth.d.ts.map +1 -1
  158. package/dist/src/objects/roomShapeToTopLeftPosition.d.ts +12 -2
  159. package/dist/src/objects/roomShapeToTopLeftPosition.d.ts.map +1 -1
  160. package/dist/src/objects/roomShapeToTopLeftPosition.lua +5 -3
  161. package/dist/src/objects/roomShapeVolumes.d.ts.map +1 -1
  162. package/dist/src/objects/roomTypeGotoPrefixes.d.ts.map +1 -1
  163. package/dist/src/objects/roomTypeNames.d.ts.map +1 -1
  164. package/dist/src/objects/stageToMusic.d.ts.map +1 -1
  165. package/dist/src/objects/stageTypeSuffixes.d.ts.map +1 -1
  166. package/dist/src/objects/stageTypeToLetter.d.ts.map +1 -1
  167. package/dist/src/objects/transformationNames.d.ts.map +1 -1
  168. package/dist/src/objects/versusScreenBackgroundColors.d.ts +29 -2
  169. package/dist/src/objects/versusScreenBackgroundColors.d.ts.map +1 -1
  170. package/dist/src/objects/versusScreenBackgroundColors.lua +29 -27
  171. package/dist/src/objects/versusScreenDirtSpotColors.d.ts +29 -2
  172. package/dist/src/objects/versusScreenDirtSpotColors.d.ts.map +1 -1
  173. package/dist/src/objects/versusScreenDirtSpotColors.lua +29 -27
  174. package/dist/src/sets/LRoomShapesSet.d.ts.map +1 -1
  175. package/dist/src/sets/LRoomShapesSet.lua +3 -2
  176. package/dist/src/sets/bossSets.d.ts +2 -3
  177. package/dist/src/sets/bossSets.d.ts.map +1 -1
  178. package/dist/src/sets/bossSets.lua +52 -49
  179. package/dist/src/sets/charactersThatStartWithAnActiveItemSet.d.ts.map +1 -1
  180. package/dist/src/sets/charactersThatStartWithAnActiveItemSet.lua +3 -2
  181. package/dist/src/sets/charactersWithBlackHeartFromEternalHeartSet.d.ts.map +1 -1
  182. package/dist/src/sets/charactersWithBlackHeartFromEternalHeartSet.lua +3 -2
  183. package/dist/src/sets/charactersWithFreeDevilDealsSet.d.ts.map +1 -1
  184. package/dist/src/sets/charactersWithFreeDevilDealsSet.lua +3 -2
  185. package/dist/src/sets/charactersWithNoRedHeartsSet.d.ts.map +1 -1
  186. package/dist/src/sets/charactersWithNoRedHeartsSet.lua +3 -2
  187. package/dist/src/sets/charactersWithNoSoulHeartsSet.d.ts.map +1 -1
  188. package/dist/src/sets/charactersWithNoSoulHeartsSet.lua +3 -2
  189. package/dist/src/sets/chestPickupVariantsSet.d.ts.map +1 -1
  190. package/dist/src/sets/chestPickupVariantsSet.lua +3 -2
  191. package/dist/src/sets/consoleCommandsSet.d.ts.map +1 -1
  192. package/dist/src/sets/consoleCommandsSet.lua +3 -2
  193. package/dist/src/sets/entitiesWithArmorSet.d.ts.map +1 -1
  194. package/dist/src/sets/entitiesWithArmorSet.lua +3 -2
  195. package/dist/src/sets/familiarsThatShootPlayerTearsSet.d.ts.map +1 -1
  196. package/dist/src/sets/familiarsThatShootPlayerTearsSet.lua +3 -2
  197. package/dist/src/sets/itemConfigCardTypesForCardsSet.d.ts +4 -0
  198. package/dist/src/sets/itemConfigCardTypesForCardsSet.d.ts.map +1 -0
  199. package/dist/src/sets/itemConfigCardTypesForCardsSet.lua +10 -0
  200. package/dist/src/sets/lostStyleCharactersSet.d.ts.map +1 -1
  201. package/dist/src/sets/lostStyleCharactersSet.lua +3 -2
  202. package/dist/src/sets/mineShaftRoomSubTypesSet.d.ts.map +1 -1
  203. package/dist/src/sets/mineShaftRoomSubTypesSet.lua +3 -2
  204. package/dist/src/sets/narrowRoomShapesSet.d.ts.map +1 -1
  205. package/dist/src/sets/narrowRoomShapesSet.lua +3 -2
  206. package/dist/src/sets/redHeartSubTypesSet.d.ts.map +1 -1
  207. package/dist/src/sets/redHeartSubTypesSet.lua +3 -2
  208. package/dist/src/sets/sinEntityTypesSet.d.ts.map +1 -1
  209. package/dist/src/sets/sinEntityTypesSet.lua +3 -2
  210. package/dist/src/sets/singleUseActiveCollectibleTypesSet.d.ts.map +1 -1
  211. package/dist/src/sets/singleUseActiveCollectibleTypesSet.lua +3 -2
  212. package/dist/src/sets/storyBossesSet.d.ts.map +1 -1
  213. package/dist/src/sets/storyBossesSet.lua +3 -2
  214. package/dist/src/types/PickingUpItem.d.ts.map +1 -1
  215. package/dist/src/types/PickingUpItem.lua +3 -2
  216. package/dist/src/types/ReadonlyMap.d.ts +9 -0
  217. package/dist/src/types/ReadonlyMap.d.ts.map +1 -0
  218. package/dist/src/types/ReadonlyMap.lua +6 -0
  219. package/dist/src/types/ReadonlySet.d.ts +8 -0
  220. package/dist/src/types/ReadonlySet.d.ts.map +1 -0
  221. package/dist/src/types/ReadonlySet.lua +6 -0
  222. package/package.json +1 -1
  223. package/src/callbacks.ts +1 -2
  224. package/src/classes/callbacks/PostBoneSwing.ts +2 -1
  225. package/src/classes/callbacks/PreNewLevel.ts +2 -1
  226. package/src/classes/features/other/CustomTrapdoors.ts +2 -1
  227. package/src/classes/features/other/DeployJSONRoom.ts +5 -2
  228. package/src/classes/features/other/ModdedElementSets.ts +20 -22
  229. package/src/classes/features/other/SaveDataManager.ts +2 -1
  230. package/src/classes/features/other/customStages/backdrop.ts +3 -3
  231. package/src/classes/features/other/customStages/shadows.ts +1 -2
  232. package/src/classes/features/other/customStages/streakText.ts +1 -2
  233. package/src/classes/features/other/saveDataManager/restoreDefaults.ts +2 -1
  234. package/src/core/constants.ts +18 -17
  235. package/src/features.ts +1 -2
  236. package/src/functions/bosses.ts +2 -1
  237. package/src/functions/cards.ts +2 -2
  238. package/src/functions/characters.ts +2 -1
  239. package/src/functions/doors.ts +15 -4
  240. package/src/functions/emptyRoom.ts +2 -1
  241. package/src/functions/entities.ts +3 -2
  242. package/src/functions/globals.ts +4 -3
  243. package/src/functions/gridEntities.ts +5 -4
  244. package/src/functions/input.ts +3 -2
  245. package/src/functions/logEntities.ts +2 -1
  246. package/src/functions/npcs.ts +3 -2
  247. package/src/functions/playerIndex.ts +2 -1
  248. package/src/functions/readOnly.ts +42 -0
  249. package/src/functions/roomGrid.ts +2 -2
  250. package/src/functions/roomShapeWalls.ts +3 -5
  251. package/src/functions/serialization.ts +2 -3
  252. package/src/functions/slots.ts +2 -1
  253. package/src/functions/stats.ts +2 -1
  254. package/src/functions/transformations.ts +19 -18
  255. package/src/functions/utils.ts +1 -1
  256. package/src/index.ts +2 -1
  257. package/src/maps/PHDPillConversions.ts +19 -19
  258. package/src/maps/cardNameToTypeMap.ts +2 -1
  259. package/src/maps/characterNameToTypeMap.ts +86 -86
  260. package/src/maps/collectibleDescriptionMap.ts +726 -724
  261. package/src/maps/collectibleNameToTypeMap.ts +10 -7
  262. package/src/maps/collectibleTypeToNameMap.ts +3 -4
  263. package/src/maps/defaultPlayerStatMap.ts +2 -1
  264. package/src/maps/falsePHDPillConversions.ts +36 -33
  265. package/src/maps/gridEntityTypeToBrokenStateMap.ts +3 -2
  266. package/src/maps/gridEntityXMLMap.ts +3 -2
  267. package/src/maps/keyboardToString.ts +3 -2
  268. package/src/maps/pillNameToEffectMap.ts +85 -86
  269. package/src/maps/roomNameToTypeMap.ts +2 -1
  270. package/src/maps/roomShapeToTopLeftWallGridIndexMap.ts +3 -2
  271. package/src/maps/transformationNameToPlayerFormMap.ts +3 -2
  272. package/src/maps/trinketDescriptionMap.ts +191 -192
  273. package/src/maps/trinketNameToTypeMap.ts +10 -7
  274. package/src/maps/trinketTypeToNameMap.ts +191 -193
  275. package/src/objects/LRoomShapeToRectangles.ts +35 -28
  276. package/src/objects/backdropTypeToRockAltType.ts +1 -2
  277. package/src/objects/bossNamePNGFileNames.ts +1 -2
  278. package/src/objects/bossPortraitPNGFileNames.ts +1 -2
  279. package/src/objects/cardDescriptions.ts +1 -2
  280. package/src/objects/cardNames.ts +1 -2
  281. package/src/objects/challengeNames.ts +1 -2
  282. package/src/objects/characterDamageMultipliers.ts +1 -2
  283. package/src/objects/characterNames.ts +1 -2
  284. package/src/objects/coinSubTypeToValue.ts +1 -2
  285. package/src/objects/directionNames.ts +1 -2
  286. package/src/objects/directionToDegrees.ts +1 -2
  287. package/src/objects/directionToMoveAction.ts +1 -2
  288. package/src/objects/directionToShootAction.ts +1 -2
  289. package/src/objects/directionToVector.ts +7 -10
  290. package/src/objects/doorSlotFlagToDoorSlot.ts +1 -2
  291. package/src/objects/doorSlotToDirection.ts +1 -2
  292. package/src/objects/doorSlotToDoorSlotFlag.ts +1 -2
  293. package/src/objects/isaacAPIClassTypeToBrand.ts +1 -5
  294. package/src/objects/languageNames.ts +1 -2
  295. package/src/objects/oppositeDoorSlots.ts +1 -2
  296. package/src/objects/pillEffectClasses.ts +1 -2
  297. package/src/objects/pillEffectNames.ts +1 -2
  298. package/src/objects/pillEffectTypes.ts +1 -2
  299. package/src/objects/playerNamePNGFileNames.ts +1 -2
  300. package/src/objects/playerPortraitPNGFileNames.ts +1 -2
  301. package/src/objects/roomShapeBounds.ts +3 -7
  302. package/src/objects/roomShapeCorners.ts +59 -62
  303. package/src/objects/roomShapeLayoutSizes.ts +6 -10
  304. package/src/objects/roomShapeToBottomRightPosition.ts +11 -17
  305. package/src/objects/roomShapeToDoorSlotCoordinates.ts +93 -94
  306. package/src/objects/roomShapeToDoorSlots.ts +11 -14
  307. package/src/objects/roomShapeToDoorSlotsToGridIndexDelta.ts +15 -14
  308. package/src/objects/roomShapeToGridWidth.ts +1 -2
  309. package/src/objects/roomShapeToTopLeftPosition.ts +6 -9
  310. package/src/objects/roomShapeVolumes.ts +1 -2
  311. package/src/objects/roomTypeGotoPrefixes.ts +1 -2
  312. package/src/objects/roomTypeNames.ts +1 -2
  313. package/src/objects/stageToMusic.ts +10 -11
  314. package/src/objects/stageTypeSuffixes.ts +1 -2
  315. package/src/objects/stageTypeToLetter.ts +1 -2
  316. package/src/objects/transformationNames.ts +1 -2
  317. package/src/objects/versusScreenBackgroundColors.ts +30 -33
  318. package/src/objects/versusScreenDirtSpotColors.ts +30 -33
  319. package/src/sets/LRoomShapesSet.ts +2 -1
  320. package/src/sets/bossSets.ts +51 -49
  321. package/src/sets/charactersThatStartWithAnActiveItemSet.ts +3 -2
  322. package/src/sets/charactersWithBlackHeartFromEternalHeartSet.ts +3 -2
  323. package/src/sets/charactersWithFreeDevilDealsSet.ts +4 -2
  324. package/src/sets/charactersWithNoRedHeartsSet.ts +11 -11
  325. package/src/sets/charactersWithNoSoulHeartsSet.ts +8 -8
  326. package/src/sets/chestPickupVariantsSet.ts +2 -1
  327. package/src/sets/consoleCommandsSet.ts +3 -1
  328. package/src/sets/entitiesWithArmorSet.ts +2 -1
  329. package/src/sets/familiarsThatShootPlayerTearsSet.ts +3 -2
  330. package/src/sets/itemConfigCardTypesForCardsSet.ts +11 -0
  331. package/src/sets/lostStyleCharactersSet.ts +2 -1
  332. package/src/sets/mineShaftRoomSubTypesSet.ts +8 -8
  333. package/src/sets/narrowRoomShapesSet.ts +2 -1
  334. package/src/sets/redHeartSubTypesSet.ts +2 -1
  335. package/src/sets/sinEntityTypesSet.ts +2 -1
  336. package/src/sets/singleUseActiveCollectibleTypesSet.ts +3 -2
  337. package/src/sets/storyBossesSet.ts +2 -1
  338. package/src/types/PickingUpItem.ts +2 -1
  339. package/src/types/ReadonlyMap.ts +13 -0
  340. package/src/types/ReadonlySet.ts +9 -0
  341. package/dist/src/types/HasAllEnumKeys.d.ts +0 -26
  342. package/dist/src/types/HasAllEnumKeys.d.ts.map +0 -1
  343. package/dist/src/types/HasAllEnumKeys.lua +0 -2
  344. package/src/types/HasAllEnumKeys.ts +0 -25
@@ -1,5 +1,4 @@
1
1
  local ____lualib = require("lualib_bundle")
2
- local Set = ____lualib.Set
3
2
  local __TS__New = ____lualib.__TS__New
4
3
  local ____exports = {}
5
4
  local emptyRoomEntities, EMPTY_ROOM_BLACKLIST_ENTITY_SET
@@ -9,6 +8,8 @@ local EntityType = ____isaac_2Dtypescript_2Ddefinitions.EntityType
9
8
  local GridEntityType = ____isaac_2Dtypescript_2Ddefinitions.GridEntityType
10
9
  local ____cachedClasses = require("src.core.cachedClasses")
11
10
  local game = ____cachedClasses.game
11
+ local ____ReadonlySet = require("src.types.ReadonlySet")
12
+ local ReadonlySet = ____ReadonlySet.ReadonlySet
12
13
  local ____entities = require("src.functions.entities")
13
14
  local getEntities = ____entities.getEntities
14
15
  local ____gridEntities = require("src.functions.gridEntities")
@@ -60,7 +61,7 @@ function ____exports.emptyRoomGridEntities(self)
60
61
  roomUpdateSafe(nil)
61
62
  end
62
63
  end
63
- EMPTY_ROOM_BLACKLIST_ENTITY_SET = __TS__New(Set, {
64
+ EMPTY_ROOM_BLACKLIST_ENTITY_SET = __TS__New(ReadonlySet, {
64
65
  EntityType.PLAYER,
65
66
  EntityType.TEAR,
66
67
  EntityType.FAMILIAR,
@@ -1 +1 @@
1
- {"version":3,"file":"entities.d.ts","sourceRoot":"","sources":["../../../src/functions/entities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entities.d.ts","sourceRoot":"","sources":["../../../src/functions/entities.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,8 @@ local ____isaacAPIClass = require("src.functions.isaacAPIClass")
20
20
  local getIsaacAPIClassName = ____isaacAPIClass.getIsaacAPIClassName
21
21
  local ____random = require("src.functions.random")
22
22
  local getRandom = ____random.getRandom
23
+ local ____readOnly = require("src.functions.readOnly")
24
+ local newReadonlyColor = ____readOnly.newReadonlyColor
23
25
  local ____rng = require("src.functions.rng")
24
26
  local isRNG = ____rng.isRNG
25
27
  local newRNG = ____rng.newRNG
@@ -34,6 +36,68 @@ local ____vector = require("src.functions.vector")
34
36
  local doesVectorHaveLength = ____vector.doesVectorHaveLength
35
37
  local isVector = ____vector.isVector
36
38
  local vectorToString = ____vector.vectorToString
39
+ --- Helper function to count the number of entities in room. Use this over the vanilla
40
+ -- `Isaac.CountEntities` method to avoid having to specify a spawner and to handle ignoring charmed
41
+ -- enemies.
42
+ --
43
+ -- @param entityType Optional. Default is -1, which matches every entity type.
44
+ -- @param variant Optional. Default is -1, which matches every variant.
45
+ -- @param subType Optional. Default is -1, which matches every sub-type.
46
+ -- @param ignoreFriendly Optional. Default is false.
47
+ function ____exports.countEntities(self, entityType, variant, subType, ignoreFriendly)
48
+ if entityType == nil then
49
+ entityType = -1
50
+ end
51
+ if variant == nil then
52
+ variant = -1
53
+ end
54
+ if subType == nil then
55
+ subType = -1
56
+ end
57
+ if ignoreFriendly == nil then
58
+ ignoreFriendly = false
59
+ end
60
+ if not ignoreFriendly then
61
+ return Isaac.CountEntities(nil, entityType, variant, subType)
62
+ end
63
+ local entities = Isaac.FindByType(
64
+ entityType,
65
+ variant,
66
+ subType,
67
+ false,
68
+ ignoreFriendly
69
+ )
70
+ return #entities
71
+ end
72
+ --- Helper function to check if one or more of a specific kind of entity is present in the current
73
+ -- room. It uses the `countEntities` helper function to determine this.
74
+ --
75
+ -- @param entityType Optional. Default is -1, which matches every entity type.
76
+ -- @param variant Optional. Default is -1, which matches every variant.
77
+ -- @param subType Optional. Default is -1, which matches every sub-type.
78
+ -- @param ignoreFriendly Optional. Default is false.
79
+ function ____exports.doesEntityExist(self, entityType, variant, subType, ignoreFriendly)
80
+ if entityType == nil then
81
+ entityType = -1
82
+ end
83
+ if variant == nil then
84
+ variant = -1
85
+ end
86
+ if subType == nil then
87
+ subType = -1
88
+ end
89
+ if ignoreFriendly == nil then
90
+ ignoreFriendly = false
91
+ end
92
+ local count = ____exports.countEntities(
93
+ nil,
94
+ entityType,
95
+ variant,
96
+ subType,
97
+ ignoreFriendly
98
+ )
99
+ return count > 0
100
+ end
37
101
  function setPrimitiveEntityFields(self, entity, metatable, entityFields)
38
102
  local propGetTable = metatable.__propget
39
103
  if propGetTable == nil then
@@ -69,7 +133,8 @@ function ____exports.removeEntities(self, entities, cap)
69
133
  return entitiesRemoved
70
134
  end
71
135
  --- From DeadInfinity.
72
- local DAMAGE_FLASH_COLOR = Color(
136
+ local DAMAGE_FLASH_COLOR = newReadonlyColor(
137
+ nil,
73
138
  0.5,
74
139
  0.5,
75
140
  0.5,
@@ -78,39 +143,6 @@ local DAMAGE_FLASH_COLOR = Color(
78
143
  0 / 255,
79
144
  0 / 255
80
145
  )
81
- --- Helper function to count the number of entities in room. Use this over the vanilla
82
- -- `Isaac.CountEntities` method to avoid having to specify a spawner and to handle ignoring charmed
83
- -- enemies.
84
- --
85
- -- @param entityType Optional. Default is -1, which matches every entity type.
86
- -- @param variant Optional. Default is -1, which matches every variant.
87
- -- @param subType Optional. Default is -1, which matches every sub-type.
88
- -- @param ignoreFriendly Optional. Default is false.
89
- function ____exports.countEntities(self, entityType, variant, subType, ignoreFriendly)
90
- if entityType == nil then
91
- entityType = -1
92
- end
93
- if variant == nil then
94
- variant = -1
95
- end
96
- if subType == nil then
97
- subType = -1
98
- end
99
- if ignoreFriendly == nil then
100
- ignoreFriendly = false
101
- end
102
- if not ignoreFriendly then
103
- return Isaac.CountEntities(nil, entityType, variant, subType)
104
- end
105
- local entities = Isaac.FindByType(
106
- entityType,
107
- variant,
108
- subType,
109
- false,
110
- ignoreFriendly
111
- )
112
- return #entities
113
- end
114
146
  --- Helper function to check if one or more matching entities exist in the current room. It uses the
115
147
  -- `doesEntityExist` helper function to determine this.
116
148
  --
@@ -124,7 +156,7 @@ function ____exports.doesAnyEntityExist(self, entityTypes, ignoreFriendly)
124
156
  local entityTypesArray = isTSTLSet(nil, entityTypes) and ({__TS__Spread(entityTypes:values())}) or entityTypes
125
157
  return __TS__ArraySome(
126
158
  entityTypesArray,
127
- function(____, entityType) return ____exports.countEntities(
159
+ function(____, entityType) return ____exports.doesEntityExist(
128
160
  nil,
129
161
  entityType,
130
162
  -1,
@@ -133,35 +165,6 @@ function ____exports.doesAnyEntityExist(self, entityTypes, ignoreFriendly)
133
165
  ) end
134
166
  )
135
167
  end
136
- --- Helper function to check if one or more of a specific kind of entity is present in the current
137
- -- room. It uses the `countEntities` helper function to determine this.
138
- --
139
- -- @param entityType Optional. Default is -1, which matches every entity type.
140
- -- @param variant Optional. Default is -1, which matches every variant.
141
- -- @param subType Optional. Default is -1, which matches every sub-type.
142
- -- @param ignoreFriendly Optional. Default is false.
143
- function ____exports.doesEntityExist(self, entityType, variant, subType, ignoreFriendly)
144
- if entityType == nil then
145
- entityType = -1
146
- end
147
- if variant == nil then
148
- variant = -1
149
- end
150
- if subType == nil then
151
- subType = -1
152
- end
153
- if ignoreFriendly == nil then
154
- ignoreFriendly = false
155
- end
156
- local count = ____exports.countEntities(
157
- nil,
158
- entityType,
159
- variant,
160
- subType,
161
- ignoreFriendly
162
- )
163
- return count > 0
164
- end
165
168
  --- Given an array of entities, this helper function returns the closest one to a provided reference
166
169
  -- entity.
167
170
  --
@@ -1 +1 @@
1
- {"version":3,"file":"globals.d.ts","sourceRoot":"","sources":["../../../src/functions/globals.ts"],"names":[],"mappings":";AA4LA;;;;;GAKG;AACH,wBAAgB,iBAAiB,IAAI,WAAW,CAAC,MAAM,CAAC,CAYvD;AAMD;;;GAGG;AACH,wBAAgB,aAAa,IAAI,aAAa,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAcnE;AAED,wBAAgB,aAAa,IAAI,IAAI,CAWpC;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAS5C;AAED,wBAAgB,2BAA2B,IAAI,IAAI,CAKlD"}
1
+ {"version":3,"file":"globals.d.ts","sourceRoot":"","sources":["../../../src/functions/globals.ts"],"names":[],"mappings":";AA6LA;;;;;GAKG;AACH,wBAAgB,iBAAiB,IAAI,WAAW,CAAC,MAAM,CAAC,CAYvD;AAMD;;;GAGG;AACH,wBAAgB,aAAa,IAAI,aAAa,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAcnE;AAED,wBAAgB,aAAa,IAAI,IAAI,CAWpC;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAS5C;AAED,wBAAgB,2BAA2B,IAAI,IAAI,CAKlD"}
@@ -1,11 +1,13 @@
1
1
  local ____lualib = require("lualib_bundle")
2
- local Set = ____lualib.Set
3
2
  local __TS__New = ____lualib.__TS__New
3
+ local Set = ____lualib.Set
4
4
  local __TS__ArraySort = ____lualib.__TS__ArraySort
5
5
  local __TS__ArrayForEach = ____lualib.__TS__ArrayForEach
6
6
  local __TS__ObjectEntries = ____lualib.__TS__ObjectEntries
7
7
  local ____exports = {}
8
8
  local isRacingPlusSandboxEnabled
9
+ local ____ReadonlySet = require("src.types.ReadonlySet")
10
+ local ReadonlySet = ____ReadonlySet.ReadonlySet
9
11
  local ____debugFunctions = require("src.functions.debugFunctions")
10
12
  local getTraceback = ____debugFunctions.getTraceback
11
13
  local isLuaDebugEnabled = ____debugFunctions.isLuaDebugEnabled
@@ -23,7 +25,7 @@ local twoDimensionalSort = ____utils.twoDimensionalSort
23
25
  function isRacingPlusSandboxEnabled(self)
24
26
  return SandboxGetParentFunctionDescription ~= nil
25
27
  end
26
- local DEFAULT_GLOBALS = __TS__New(Set, {
28
+ local DEFAULT_GLOBALS = __TS__New(ReadonlySet, {
27
29
  "ActionTriggers",
28
30
  "ActiveSlot",
29
31
  "BabySubType",
@@ -187,7 +189,7 @@ local DEFAULT_GLOBALS = __TS__New(Set, {
187
189
  "utf8",
188
190
  "xpcall"
189
191
  })
190
- local LUA_DEBUG_ADDED_GLOBALS = __TS__New(Set, {
192
+ local LUA_DEBUG_ADDED_GLOBALS = __TS__New(ReadonlySet, {
191
193
  "debug",
192
194
  "dofile",
193
195
  "loadfile",
@@ -195,7 +197,7 @@ local LUA_DEBUG_ADDED_GLOBALS = __TS__New(Set, {
195
197
  "os",
196
198
  "package"
197
199
  })
198
- local RACING_PLUS_SANDBOX_ADDED_GLOBALS = __TS__New(Set, {"sandboxTraceback", "sandboxGetTraceback", "getParentFunctionDescription"})
200
+ local RACING_PLUS_SANDBOX_ADDED_GLOBALS = __TS__New(ReadonlySet, {"sandboxTraceback", "sandboxGetTraceback", "getParentFunctionDescription"})
199
201
  --- Helper function to get a set containing all of the global variable names that are contained
200
202
  -- within the Isaac environment by default.
201
203
  --
@@ -1 +1 @@
1
- {"version":3,"file":"gridEntities.d.ts","sourceRoot":"","sources":["../../../src/functions/gridEntities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gridEntities.d.ts","sourceRoot":"","sources":["../../../src/functions/gridEntities.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  local ____lualib = require("lualib_bundle")
2
- local Set = ____lualib.Set
3
2
  local __TS__New = ____lualib.__TS__New
4
3
  local __TS__ArrayFilter = ____lualib.__TS__ArrayFilter
5
4
  local __TS__StringSplit = ____lualib.__TS__StringSplit
5
+ local Set = ____lualib.Set
6
6
  local Map = ____lualib.Map
7
7
  local ____exports = {}
8
8
  local getAllGridEntities
@@ -25,6 +25,8 @@ local GRID_ENTITY_XML_MAP = ____gridEntityXMLMap.GRID_ENTITY_XML_MAP
25
25
  local ____roomShapeToTopLeftWallGridIndexMap = require("src.maps.roomShapeToTopLeftWallGridIndexMap")
26
26
  local DEFAULT_TOP_LEFT_WALL_GRID_INDEX = ____roomShapeToTopLeftWallGridIndexMap.DEFAULT_TOP_LEFT_WALL_GRID_INDEX
27
27
  local ROOM_SHAPE_TO_TOP_LEFT_WALL_GRID_INDEX_MAP = ____roomShapeToTopLeftWallGridIndexMap.ROOM_SHAPE_TO_TOP_LEFT_WALL_GRID_INDEX_MAP
28
+ local ____ReadonlySet = require("src.types.ReadonlySet")
29
+ local ReadonlySet = ____ReadonlySet.ReadonlySet
28
30
  local ____entities = require("src.functions.entities")
29
31
  local removeEntities = ____entities.removeEntities
30
32
  local ____entitiesSpecific = require("src.functions.entitiesSpecific")
@@ -150,7 +152,7 @@ function ____exports.spawnGridEntityWithVariant(self, gridEntityType, variant, g
150
152
  end
151
153
  return gridEntity
152
154
  end
153
- local BREAKABLE_GRID_ENTITY_TYPES_BY_EXPLOSIONS = __TS__New(Set, {
155
+ local BREAKABLE_GRID_ENTITY_TYPES_BY_EXPLOSIONS = __TS__New(ReadonlySet, {
154
156
  GridEntityType.ROCK,
155
157
  GridEntityType.ROCK_TINTED,
156
158
  GridEntityType.ROCK_BOMB,
@@ -164,7 +166,7 @@ local BREAKABLE_GRID_ENTITY_TYPES_BY_EXPLOSIONS = __TS__New(Set, {
164
166
  GridEntityType.ROCK_GOLD
165
167
  })
166
168
  local BREAKABLE_GRID_ENTITY_TYPES_VARIANTS_BY_EXPLOSIONS = __TS__New(
167
- Set,
169
+ ReadonlySet,
168
170
  {(tostring(GridEntityType.STATUE) .. ".") .. tostring(StatueVariant.ANGEL)}
169
171
  )
170
172
  --- Helper function to convert the grid entity type found in a room XML file to the corresponding
@@ -1 +1 @@
1
- {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/functions/input.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,UAAU,EACV,eAAe,EACf,QAAQ,EACT,MAAM,8BAA8B,CAAC;AAuBtC,eAAO,MAAM,oBAAoB,EAAE,WAAW,CAAC,YAAY,CAE1D,CAAC;AASF,eAAO,MAAM,oBAAoB,EAAE,WAAW,CAAC,YAAY,CAE1D,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CAQ7E;AAED,wBAAgB,cAAc,IAAI,WAAW,CAAC,YAAY,CAAC,CAE1D;AAED,wBAAgB,eAAe,IAAI,WAAW,CAAC,YAAY,CAAC,CAE3D;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,eAAe,EAAE,eAAe,EAChC,GAAG,aAAa,EAAE,YAAY,EAAE,GAC/B,OAAO,CAIT;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,aAAa,EAAE,YAAY,EAAE,GAC/B,OAAO,CAKT;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,eAAe,EAAE,eAAe,EAChC,GAAG,aAAa,EAAE,YAAY,EAAE,GAC/B,OAAO,CAIT;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,GAAG,aAAa,EAAE,YAAY,EAAE,GAC/B,OAAO,CAKT;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO,CAI9D;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CAE9C;AAED,wBAAgB,YAAY,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAEhE;AAED,wBAAgB,mBAAmB,CAAC,eAAe,EAAE,eAAe,GAAG,OAAO,CAE7E;AAED,wBAAgB,6BAA6B,IAAI,OAAO,CAIvD;AAED,wBAAgB,qBAAqB,CACnC,eAAe,EAAE,eAAe,GAC/B,OAAO,CAET;AAED,wBAAgB,+BAA+B,IAAI,OAAO,CAIzD;AAED,wBAAgB,aAAa,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAEjE;AAED,wBAAgB,oBAAoB,CAClC,eAAe,EAAE,eAAe,GAC/B,OAAO,CAET;AAED,wBAAgB,8BAA8B,IAAI,OAAO,CAIxD;AAED,wBAAgB,sBAAsB,CACpC,eAAe,EAAE,eAAe,GAC/B,OAAO,CAET;AAED,wBAAgB,gCAAgC,IAAI,OAAO,CAI1D;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,OAAO,GACjB,MAAM,GAAG,SAAS,CAQpB"}
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/functions/input.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,UAAU,EACV,eAAe,EACf,QAAQ,EACT,MAAM,8BAA8B,CAAC;AAwBtC,eAAO,MAAM,oBAAoB,2BAEhC,CAAC;AASF,eAAO,MAAM,oBAAoB,2BAEhC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CAQ7E;AAED,wBAAgB,cAAc,IAAI,WAAW,CAAC,YAAY,CAAC,CAE1D;AAED,wBAAgB,eAAe,IAAI,WAAW,CAAC,YAAY,CAAC,CAE3D;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,eAAe,EAAE,eAAe,EAChC,GAAG,aAAa,EAAE,YAAY,EAAE,GAC/B,OAAO,CAIT;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,aAAa,EAAE,YAAY,EAAE,GAC/B,OAAO,CAKT;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,eAAe,EAAE,eAAe,EAChC,GAAG,aAAa,EAAE,YAAY,EAAE,GAC/B,OAAO,CAIT;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,GAAG,aAAa,EAAE,YAAY,EAAE,GAC/B,OAAO,CAKT;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO,CAI9D;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CAE9C;AAED,wBAAgB,YAAY,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAEhE;AAED,wBAAgB,mBAAmB,CAAC,eAAe,EAAE,eAAe,GAAG,OAAO,CAE7E;AAED,wBAAgB,6BAA6B,IAAI,OAAO,CAIvD;AAED,wBAAgB,qBAAqB,CACnC,eAAe,EAAE,eAAe,GAC/B,OAAO,CAET;AAED,wBAAgB,+BAA+B,IAAI,OAAO,CAIzD;AAED,wBAAgB,aAAa,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAEjE;AAED,wBAAgB,oBAAoB,CAClC,eAAe,EAAE,eAAe,GAC/B,OAAO,CAET;AAED,wBAAgB,8BAA8B,IAAI,OAAO,CAIxD;AAED,wBAAgB,sBAAsB,CACpC,eAAe,EAAE,eAAe,GAC/B,OAAO,CAET;AAED,wBAAgB,gCAAgC,IAAI,OAAO,CAI1D;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,OAAO,GACjB,MAAM,GAAG,SAAS,CAQpB"}
@@ -1,5 +1,4 @@
1
1
  local ____lualib = require("lualib_bundle")
2
- local Set = ____lualib.Set
3
2
  local __TS__New = ____lualib.__TS__New
4
3
  local __TS__ArraySome = ____lualib.__TS__ArraySome
5
4
  local ____exports = {}
@@ -10,6 +9,8 @@ local ControllerIndex = ____isaac_2Dtypescript_2Ddefinitions.ControllerIndex
10
9
  local Keyboard = ____isaac_2Dtypescript_2Ddefinitions.Keyboard
11
10
  local ____keyboardToString = require("src.maps.keyboardToString")
12
11
  local KEYBOARD_TO_STRING = ____keyboardToString.KEYBOARD_TO_STRING
12
+ local ____ReadonlySet = require("src.types.ReadonlySet")
13
+ local ReadonlySet = ____ReadonlySet.ReadonlySet
13
14
  local ____enums = require("src.functions.enums")
14
15
  local getEnumValues = ____enums.getEnumValues
15
16
  local ____string = require("src.functions.string")
@@ -25,9 +26,9 @@ local MODIFIER_KEYS = {
25
26
  Keyboard.RIGHT_SUPER
26
27
  }
27
28
  local MOVEMENT_ACTIONS = {ButtonAction.LEFT, ButtonAction.RIGHT, ButtonAction.UP, ButtonAction.DOWN}
28
- ____exports.MOVEMENT_ACTIONS_SET = __TS__New(Set, MOVEMENT_ACTIONS)
29
+ ____exports.MOVEMENT_ACTIONS_SET = __TS__New(ReadonlySet, MOVEMENT_ACTIONS)
29
30
  local SHOOTING_ACTIONS = {ButtonAction.SHOOT_LEFT, ButtonAction.SHOOT_RIGHT, ButtonAction.SHOOT_UP, ButtonAction.SHOOT_DOWN}
30
- ____exports.SHOOTING_ACTIONS_SET = __TS__New(Set, SHOOTING_ACTIONS)
31
+ ____exports.SHOOTING_ACTIONS_SET = __TS__New(ReadonlySet, SHOOTING_ACTIONS)
31
32
  --- Helper function to get the enum name for the specified `Controller` value. Note that this will
32
33
  -- trim off the "BUTTON_" prefix.
33
34
  --
@@ -1 +1 @@
1
- {"version":3,"file":"logEntities.d.ts","sourceRoot":"","sources":["../../../src/functions/logEntities.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,UAAU,EAEV,cAAc,EAOf,MAAM,8BAA8B,CAAC;AAiBtC,8FAA8F;AAC9F,wBAAgB,cAAc,CAC5B,IAAI,EAAE,IAAI,EACV,wBAAwB,EAAE,OAAO,EACjC,gBAAgB,CAAC,EAAE,UAAU,GAC5B,IAAI,CA0CN;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,IAAI,EACV,YAAY,UAAQ,EACpB,oBAAoB,CAAC,EAAE,cAAc,GACpC,IAAI,CAgDN;AAED,iEAAiE;AACjE,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAIhE;AAED,kEAAkE;AAClE,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAG1D;AAmFD,sEAAsE;AACtE,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,IAAI,CAI5E;AAED,wEAAwE;AACxE,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,GAAG,IAAI,CAGtE;AA+DD;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAQ7D;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,CAInE"}
1
+ {"version":3,"file":"logEntities.d.ts","sourceRoot":"","sources":["../../../src/functions/logEntities.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,UAAU,EAEV,cAAc,EAOf,MAAM,8BAA8B,CAAC;AAkBtC,8FAA8F;AAC9F,wBAAgB,cAAc,CAC5B,IAAI,EAAE,IAAI,EACV,wBAAwB,EAAE,OAAO,EACjC,gBAAgB,CAAC,EAAE,UAAU,GAC5B,IAAI,CA0CN;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,IAAI,EACV,YAAY,UAAQ,EACpB,oBAAoB,CAAC,EAAE,cAAc,GACpC,IAAI,CAgDN;AAED,iEAAiE;AACjE,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAIhE;AAED,kEAAkE;AAClE,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAG1D;AAmFD,sEAAsE;AACtE,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,IAAI,CAI5E;AAED,wEAAwE;AACxE,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,GAAG,IAAI,CAGtE;AA+DD;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAQ7D;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,CAInE"}
@@ -1,5 +1,4 @@
1
1
  local ____lualib = require("lualib_bundle")
2
- local Set = ____lualib.Set
3
2
  local __TS__New = ____lualib.__TS__New
4
3
  local __TS__ArrayForEach = ____lualib.__TS__ArrayForEach
5
4
  local __TS__StringTrim = ____lualib.__TS__StringTrim
@@ -17,6 +16,8 @@ local PickupVariant = ____isaac_2Dtypescript_2Ddefinitions.PickupVariant
17
16
  local PlayerVariant = ____isaac_2Dtypescript_2Ddefinitions.PlayerVariant
18
17
  local ProjectileVariant = ____isaac_2Dtypescript_2Ddefinitions.ProjectileVariant
19
18
  local TearVariant = ____isaac_2Dtypescript_2Ddefinitions.TearVariant
19
+ local ____ReadonlySet = require("src.types.ReadonlySet")
20
+ local ReadonlySet = ____ReadonlySet.ReadonlySet
20
21
  local ____entities = require("src.functions.entities")
21
22
  local getEntities = ____entities.getEntities
22
23
  local getEntityFromPtrHash = ____entities.getEntityFromPtrHash
@@ -140,7 +141,7 @@ function getGridEntityLogLine(gridEntity, num)
140
141
  end
141
142
  return msg
142
143
  end
143
- local IGNORE_EFFECT_VARIANTS = __TS__New(Set, {
144
+ local IGNORE_EFFECT_VARIANTS = __TS__New(ReadonlySet, {
144
145
  EffectVariant.BLOOD_EXPLOSION,
145
146
  EffectVariant.BLOOD_PARTICLE,
146
147
  EffectVariant.TINY_BUG,
@@ -1 +1 @@
1
- {"version":3,"file":"npcs.d.ts","sourceRoot":"","sources":["../../../src/functions/npcs.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,UAAU,EASX,MAAM,8BAA8B,CAAC;AAgCtC;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAC1B,UAAU,GAAE,UAAe,EAC3B,OAAO,SAAK,EACZ,OAAO,SAAK,EACZ,cAAc,UAAQ,GACrB,SAAS,EAAE,CAGb;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAiC3D;AAED;;;;;;;GAOG;AACH,wBAAgB,+BAA+B,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAIvE;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAMnD;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAOpE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAO3D"}
1
+ {"version":3,"file":"npcs.d.ts","sourceRoot":"","sources":["../../../src/functions/npcs.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,UAAU,EASX,MAAM,8BAA8B,CAAC;AAiCtC;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAC1B,UAAU,GAAE,UAAe,EAC3B,OAAO,SAAK,EACZ,OAAO,SAAK,EACZ,cAAc,UAAQ,GACrB,SAAS,EAAE,CAGb;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAiC3D;AAED;;;;;;;GAOG;AACH,wBAAgB,+BAA+B,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAIvE;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAMnD;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAOpE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAO3D"}
@@ -1,5 +1,4 @@
1
1
  local ____lualib = require("lualib_bundle")
2
- local Set = ____lualib.Set
3
2
  local __TS__New = ____lualib.__TS__New
4
3
  local __TS__ArrayFilter = ____lualib.__TS__ArrayFilter
5
4
  local ____exports = {}
@@ -23,6 +22,8 @@ local RaglingVariant = ____isaac_2Dtypescript_2Ddefinitions.RaglingVariant
23
22
  local VisVariant = ____isaac_2Dtypescript_2Ddefinitions.VisVariant
24
23
  local ____constants = require("src.core.constants")
25
24
  local EGGY_STATE_FRAME_OF_FINAL_SPIDER = ____constants.EGGY_STATE_FRAME_OF_FINAL_SPIDER
25
+ local ____ReadonlySet = require("src.types.ReadonlySet")
26
+ local ReadonlySet = ____ReadonlySet.ReadonlySet
26
27
  local ____entitiesSpecific = require("src.functions.entitiesSpecific")
27
28
  local getNPCs = ____entitiesSpecific.getNPCs
28
29
  local ____types = require("src.functions.types")
@@ -81,7 +82,7 @@ function ____exports.isRaglingDeathPatch(self, npc)
81
82
  return npc.Type == EntityType.RAGLING and npc.Variant == asNumber(nil, RaglingVariant.RAG_MANS_RAGLING) and npc.State == NpcState.SPECIAL
82
83
  end
83
84
  NON_ALIVE_NPCS_TYPE_VARIANT = __TS__New(
84
- Set,
85
+ ReadonlySet,
85
86
  {
86
87
  (tostring(EntityType.VIS) .. ".") .. tostring(VisVariant.CHUBBER_PROJECTILE),
87
88
  (tostring(EntityType.DEATH) .. ".") .. tostring(DeathVariant.DEATH_SCYTHE),
@@ -97,7 +98,7 @@ NON_ALIVE_NPCS_TYPE_VARIANT = __TS__New(
97
98
  }
98
99
  )
99
100
  NON_ALIVE_NPCS_TYPE_VARIANT_SUB_TYPE = __TS__New(
100
- Set,
101
+ ReadonlySet,
101
102
  {
102
103
  (((tostring(EntityType.CHARGER) .. ".") .. tostring(ChargerVariant.CHARGER)) .. ".") .. tostring(ChargerSubType.MY_SHADOW),
103
104
  (((tostring(EntityType.MOTHER) .. ".") .. tostring(MotherVariant.MOTHER_1)) .. ".") .. tostring(MotherSubType.PHASE_2)
@@ -1 +1 @@
1
- {"version":3,"file":"playerIndex.d.ts","sourceRoot":"","sources":["../../../src/functions/playerIndex.ts"],"names":[],"mappings":";;;AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AASnD;;;;;;GAMG;AACH,wBAAgB,aAAa,IAAI,YAAY,EAAE,CAU9C;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,EAAE,CAMpE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,WAAW,GACvB,YAAY,GAAG,SAAS,CAG1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,YAAY,EACpB,6BAA6B,UAAQ,GACpC,WAAW,CA8Bb;AAiBD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,YAAY,GACzB,GAAG,GAAG,SAAS,CAajB;AAED;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CAAC,0BAA0B,UAAQ,GAAG,YAAY,EAAE,CAS7E;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,eAAe,GACzB,YAAY,GAAG,SAAS,CAa1B;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAE3D"}
1
+ {"version":3,"file":"playerIndex.d.ts","sourceRoot":"","sources":["../../../src/functions/playerIndex.ts"],"names":[],"mappings":";;;AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAUnD;;;;;;GAMG;AACH,wBAAgB,aAAa,IAAI,YAAY,EAAE,CAU9C;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,EAAE,CAMpE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,WAAW,GACvB,YAAY,GAAG,SAAS,CAG1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,YAAY,EACpB,6BAA6B,UAAQ,GACpC,WAAW,CA8Bb;AAiBD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,YAAY,GACzB,GAAG,GAAG,SAAS,CAajB;AAED;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CAAC,0BAA0B,UAAQ,GAAG,YAAY,EAAE,CAS7E;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,eAAe,GACzB,YAAY,GAAG,SAAS,CAa1B;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAE3D"}
@@ -1,5 +1,4 @@
1
1
  local ____lualib = require("lualib_bundle")
2
- local Set = ____lualib.Set
3
2
  local __TS__New = ____lualib.__TS__New
4
3
  local __TS__ArrayFilter = ____lualib.__TS__ArrayFilter
5
4
  local __TS__ArrayFind = ____lualib.__TS__ArrayFind
@@ -10,6 +9,8 @@ local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
10
9
  local PlayerType = ____isaac_2Dtypescript_2Ddefinitions.PlayerType
11
10
  local ____cachedClasses = require("src.core.cachedClasses")
12
11
  local game = ____cachedClasses.game
12
+ local ____ReadonlySet = require("src.types.ReadonlySet")
13
+ local ReadonlySet = ____ReadonlySet.ReadonlySet
13
14
  --- Helper function to get every player with no restrictions, by using `Game.GetNumPlayers` and
14
15
  -- `Isaac.GetPlayer`.
15
16
  --
@@ -131,7 +132,7 @@ function ____exports.isChildPlayer(self, player)
131
132
  return player.Parent ~= nil
132
133
  end
133
134
  DEFAULT_COLLECTIBLE_TYPE = CollectibleType.SAD_ONION
134
- EXCLUDED_CHARACTERS = __TS__New(Set, {PlayerType.ESAU, PlayerType.SOUL_B})
135
+ EXCLUDED_CHARACTERS = __TS__New(ReadonlySet, {PlayerType.ESAU, PlayerType.SOUL_B})
135
136
  --- Helper function to get all of the other players in the room besides the one provided. (This
136
137
  -- includes "child" players.)
137
138
  function ____exports.getOtherPlayers(self, player)
@@ -0,0 +1,26 @@
1
+ /// <reference types="isaac-typescript-definitions" />
2
+ /// <reference types="isaac-typescript-definitions" />
3
+ /// <reference types="isaac-typescript-definitions" />
4
+ /// <reference types="isaac-typescript-definitions" />
5
+ /**
6
+ * Helper function to create a read-only `Color` object. (Otherwise, you would have to manually
7
+ * specify both the type and the constructor.)
8
+ *
9
+ * Note that read-only colors will be writable at run-time.
10
+ */
11
+ export declare function newReadonlyColor(r: float, g: float, b: float, a?: float, ro?: int, go?: int, bo?: int): Readonly<Color>;
12
+ /**
13
+ * Helper function to create a read-only `KColor` object. (Otherwise, you would have to manually
14
+ * specify both the type and the constructor.)
15
+ *
16
+ * Note that read-only colors will be writable at run-time.
17
+ */
18
+ export declare function newReadonlyKColor(r: float, g: float, b: float, a: float): Readonly<KColor>;
19
+ /**
20
+ * Helper function to create a read-only `Vector` object. (Otherwise, you would have to manually
21
+ * specify both the type and the constructor.)
22
+ *
23
+ * Note that read-only vectors will be writable at run-time.
24
+ */
25
+ export declare function newReadonlyVector(x: float, y: float): Readonly<Vector>;
26
+ //# sourceMappingURL=readOnly.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readOnly.d.ts","sourceRoot":"","sources":["../../../src/functions/readOnly.ts"],"names":[],"mappings":";;;;AAAA;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,CAAC,EAAE,KAAK,EACR,CAAC,EAAE,KAAK,EACR,CAAC,EAAE,KAAK,EACR,CAAC,CAAC,EAAE,KAAK,EACT,EAAE,CAAC,EAAE,GAAG,EACR,EAAE,CAAC,EAAE,GAAG,EACR,EAAE,CAAC,EAAE,GAAG,GACP,QAAQ,CAAC,KAAK,CAAC,CAEjB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,CAAC,EAAE,KAAK,EACR,CAAC,EAAE,KAAK,EACR,CAAC,EAAE,KAAK,EACR,CAAC,EAAE,KAAK,GACP,QAAQ,CAAC,MAAM,CAAC,CAElB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAEtE"}
@@ -0,0 +1,31 @@
1
+ local ____exports = {}
2
+ --- Helper function to create a read-only `Color` object. (Otherwise, you would have to manually
3
+ -- specify both the type and the constructor.)
4
+ --
5
+ -- Note that read-only colors will be writable at run-time.
6
+ function ____exports.newReadonlyColor(self, r, g, b, a, ro, go, bo)
7
+ return Color(
8
+ r,
9
+ g,
10
+ b,
11
+ a,
12
+ ro,
13
+ go,
14
+ bo
15
+ )
16
+ end
17
+ --- Helper function to create a read-only `KColor` object. (Otherwise, you would have to manually
18
+ -- specify both the type and the constructor.)
19
+ --
20
+ -- Note that read-only colors will be writable at run-time.
21
+ function ____exports.newReadonlyKColor(self, r, g, b, a)
22
+ return KColor(r, g, b, a)
23
+ end
24
+ --- Helper function to create a read-only `Vector` object. (Otherwise, you would have to manually
25
+ -- specify both the type and the constructor.)
26
+ --
27
+ -- Note that read-only vectors will be writable at run-time.
28
+ function ____exports.newReadonlyVector(self, x, y)
29
+ return Vector(x, y)
30
+ end
31
+ return ____exports
@@ -27,7 +27,10 @@ function isValidGridPositionLRoom(self, gridPosition, roomShape)
27
27
  if rectangles == nil then
28
28
  return false
29
29
  end
30
- local verticalTopLeft, verticalBottomRight, horizontalTopLeft, horizontalBottomRight = table.unpack(rectangles)
30
+ local verticalTopLeft = rectangles.verticalTopLeft
31
+ local verticalBottomRight = rectangles.verticalBottomRight
32
+ local horizontalTopLeft = rectangles.horizontalTopLeft
33
+ local horizontalBottomRight = rectangles.horizontalBottomRight
31
34
  return inRectangle(nil, gridPosition, verticalTopLeft, verticalBottomRight) or inRectangle(nil, gridPosition, horizontalTopLeft, horizontalBottomRight)
32
35
  end
33
36
  --- Helper function to convert grid coordinates to a world position `Vector`.
@@ -1 +1 @@
1
- {"version":3,"file":"roomShapeWalls.d.ts","sourceRoot":"","sources":["../../../src/functions/roomShapeWalls.ts"],"names":[],"mappings":";AAwTA;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,GAAG,GAAG,OAAO,CAqB9D"}
1
+ {"version":3,"file":"roomShapeWalls.d.ts","sourceRoot":"","sources":["../../../src/functions/roomShapeWalls.ts"],"names":[],"mappings":";AAsTA;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,GAAG,GAAG,OAAO,CAqB9D"}
@@ -6,7 +6,7 @@ local __TS__SparseArrayPush = ____lualib.__TS__SparseArrayPush
6
6
  local __TS__SparseArraySpread = ____lualib.__TS__SparseArraySpread
7
7
  local Set = ____lualib.Set
8
8
  local ____exports = {}
9
- local getRoomShapeToWallGridIndexSet, getVanillaWallGridIndexSetForRoomShape, getWallGridIndexSetForRectangleRoomShape
9
+ local getVanillaWallGridIndexSetForRoomShape, getWallGridIndexSetForRectangleRoomShape
10
10
  local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
11
11
  local BossID = ____isaac_2Dtypescript_2Ddefinitions.BossID
12
12
  local RoomShape = ____isaac_2Dtypescript_2Ddefinitions.RoomShape
@@ -24,14 +24,6 @@ local inHomeCloset = ____rooms.inHomeCloset
24
24
  local ____roomShape = require("src.functions.roomShape")
25
25
  local getRoomShapeCorners = ____roomShape.getRoomShapeCorners
26
26
  local isLRoom = ____roomShape.isLRoom
27
- function getRoomShapeToWallGridIndexSet(self)
28
- local roomShapeToWallGridIndexSet = __TS__New(Map)
29
- for ____, roomShape in ipairs(getEnumValues(nil, RoomShape)) do
30
- local gridIndexSet = getVanillaWallGridIndexSetForRoomShape(nil, roomShape)
31
- roomShapeToWallGridIndexSet:set(roomShape, gridIndexSet)
32
- end
33
- return roomShapeToWallGridIndexSet
34
- end
35
27
  function getVanillaWallGridIndexSetForRoomShape(self, roomShape)
36
28
  local corners = getRoomShapeCorners(nil, roomShape)
37
29
  local lRoom = isLRoom(nil, roomShape)
@@ -199,7 +191,14 @@ function getWallGridIndexSetForRectangleRoomShape(self, roomShape, corners)
199
191
  {__TS__SparseArraySpread(____array_8)}
200
192
  )
201
193
  end
202
- local ROOM_SHAPE_TO_WALL_GRID_INDEX_SET = getRoomShapeToWallGridIndexSet(nil)
194
+ local ROOM_SHAPE_TO_WALL_GRID_INDEX_SET = (function()
195
+ local roomShapeToWallGridIndexSet = __TS__New(Map)
196
+ for ____, roomShape in ipairs(getEnumValues(nil, RoomShape)) do
197
+ local gridIndexSet = getVanillaWallGridIndexSetForRoomShape(nil, roomShape)
198
+ roomShapeToWallGridIndexSet:set(roomShape, gridIndexSet)
199
+ end
200
+ return roomShapeToWallGridIndexSet
201
+ end)(nil)
203
202
  --- The Home closet is is 9x3, which is different from `RoomShape.IH` (which is 13x3).
204
203
  local HOME_CLOSET_CORNERS = {
205
204
  {
@@ -1 +1 @@
1
- {"version":3,"file":"serialization.d.ts","sourceRoot":"","sources":["../../../src/functions/serialization.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,qBAAqB,EAErB,iCAAiC,EACjC,uBAAuB,EAEvB,uBAAuB,EACxB,MAAM,yCAAyC,CAAC;AAUjD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,qBAAqB,EAC/D,aAAa,EAAE,CAAC,GACf,CAAC,CAoCH;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,WAAW,SAAS,uBAAuB,EAE3C,uBAAuB,EAAE,WAAW,GACnC,uBAAuB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAkChD;AAoBD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,OAAO,GACd,MAAM,IAAI,qBAAqB,CAIjC;AAmBD;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,OAAO,GACd,MAAM,IAAI,uBAAuB,CAQnC;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,qBAAqB,EACpE,aAAa,EAAE,CAAC,GACf,iCAAiC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAoChD"}
1
+ {"version":3,"file":"serialization.d.ts","sourceRoot":"","sources":["../../../src/functions/serialization.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,qBAAqB,EAErB,iCAAiC,EACjC,uBAAuB,EAEvB,uBAAuB,EACxB,MAAM,yCAAyC,CAAC;AASjD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,qBAAqB,EAC/D,aAAa,EAAE,CAAC,GACf,CAAC,CAoCH;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,WAAW,SAAS,uBAAuB,EAE3C,uBAAuB,EAAE,WAAW,GACnC,uBAAuB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAkChD;AAoBD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,OAAO,GACd,MAAM,IAAI,qBAAqB,CAIjC;AAmBD;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,OAAO,GACd,MAAM,IAAI,uBAAuB,CAQnC;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,qBAAqB,EACpE,aAAa,EAAE,CAAC,GACf,iCAAiC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAoChD"}
@@ -1,5 +1,4 @@
1
1
  local ____lualib = require("lualib_bundle")
2
- local Set = ____lualib.Set
3
2
  local __TS__New = ____lualib.__TS__New
4
3
  local __TS__TypeOf = ____lualib.__TS__TypeOf
5
4
  local __TS__ObjectEntries = ____lualib.__TS__ObjectEntries
@@ -14,6 +13,8 @@ local ____isaacAPIClassTypeToBrand = require("src.objects.isaacAPIClassTypeToBra
14
13
  local ISAAC_API_CLASS_TYPE_TO_BRAND = ____isaacAPIClassTypeToBrand.ISAAC_API_CLASS_TYPE_TO_BRAND
15
14
  local ____isaacAPIClassTypeToFunctions = require("src.objects.isaacAPIClassTypeToFunctions")
16
15
  local ISAAC_API_CLASS_TYPE_TO_FUNCTIONS = ____isaacAPIClassTypeToFunctions.ISAAC_API_CLASS_TYPE_TO_FUNCTIONS
16
+ local ____ReadonlySet = require("src.types.ReadonlySet")
17
+ local ReadonlySet = ____ReadonlySet.ReadonlySet
17
18
  local ____enums = require("src.functions.enums")
18
19
  local getEnumValues = ____enums.getEnumValues
19
20
  local ____isaacAPIClass = require("src.functions.isaacAPIClass")
@@ -33,7 +34,7 @@ function getSerializedTableType(self, serializedIsaacAPIClass)
33
34
  return nil
34
35
  end
35
36
  local SERIALIZATION_BRANDS = getEnumValues(nil, SerializationBrand)
36
- local SERIALIZATION_BRAND_SET = __TS__New(Set, SERIALIZATION_BRANDS)
37
+ local SERIALIZATION_BRAND_SET = __TS__New(ReadonlySet, SERIALIZATION_BRANDS)
37
38
  --- Helper function to generically copy an Isaac API class without knowing what specific type of
38
39
  -- class it is. (This is used by the save data manager.)
39
40
  --
@@ -1 +1 @@
1
- {"version":3,"file":"slots.d.ts","sourceRoot":"","sources":["../../../src/functions/slots.ts"],"names":[],"mappings":";AAeA,qFAAqF;AACrF,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAMrD"}
1
+ {"version":3,"file":"slots.d.ts","sourceRoot":"","sources":["../../../src/functions/slots.ts"],"names":[],"mappings":";AAgBA,qFAAqF;AACrF,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAMrD"}
@@ -1,12 +1,13 @@
1
1
  local ____lualib = require("lualib_bundle")
2
- local Set = ____lualib.Set
3
2
  local __TS__New = ____lualib.__TS__New
4
3
  local ____exports = {}
5
4
  local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
6
5
  local SlotVariant = ____isaac_2Dtypescript_2Ddefinitions.SlotVariant
6
+ local ____ReadonlySet = require("src.types.ReadonlySet")
7
+ local ReadonlySet = ____ReadonlySet.ReadonlySet
7
8
  local ____entityTypes = require("src.functions.entityTypes")
8
9
  local isSlot = ____entityTypes.isSlot
9
- local SLOT_MACHINE_VARIANTS = __TS__New(Set, {
10
+ local SLOT_MACHINE_VARIANTS = __TS__New(ReadonlySet, {
10
11
  SlotVariant.SLOT_MACHINE,
11
12
  SlotVariant.BLOOD_DONATION_MACHINE,
12
13
  SlotVariant.FORTUNE_TELLING_MACHINE,
@@ -1 +1 @@
1
- {"version":3,"file":"stats.d.ts","sourceRoot":"","sources":["../../../src/functions/stats.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAazD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,OAAO,CACrB,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,GACb,IAAI,CA4CN;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAE7E"}
1
+ {"version":3,"file":"stats.d.ts","sourceRoot":"","sources":["../../../src/functions/stats.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAczD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,OAAO,CACrB,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,GACb,IAAI,CA4CN;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAE7E"}