isaacscript-common 2.3.0 → 3.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 (1035) hide show
  1. package/cachedClasses.d.ts +37 -0
  2. package/cachedClasses.lua +30 -0
  3. package/callbacks/customRevive.d.ts +1 -0
  4. package/callbacks/customRevive.lua +147 -0
  5. package/callbacks/itemPickup.d.ts +1 -0
  6. package/callbacks/itemPickup.lua +66 -0
  7. package/callbacks/postBombInitLate.d.ts +1 -0
  8. package/callbacks/postBombInitLate.lua +33 -0
  9. package/callbacks/postBoneSwing.d.ts +1 -0
  10. package/callbacks/postBoneSwing.lua +50 -0
  11. package/callbacks/postCollectibleInitFirst.d.ts +1 -0
  12. package/callbacks/postCollectibleInitFirst.lua +34 -0
  13. package/callbacks/postCursedTeleport.d.ts +1 -0
  14. package/callbacks/postCursedTeleport.lua +121 -0
  15. package/callbacks/postCustomDoorEnter.d.ts +50 -0
  16. package/callbacks/postCustomDoorEnter.lua +247 -0
  17. package/callbacks/postDoorRender.d.ts +1 -0
  18. package/callbacks/postDoorRender.lua +26 -0
  19. package/callbacks/postDoorUpdate.d.ts +1 -0
  20. package/callbacks/postDoorUpdate.lua +26 -0
  21. package/callbacks/postEffectInitLate.d.ts +1 -0
  22. package/callbacks/postEffectInitLate.lua +33 -0
  23. package/callbacks/postEffectStateChanged.d.ts +1 -0
  24. package/callbacks/postEffectStateChanged.lua +39 -0
  25. package/callbacks/postEsauJr.d.ts +1 -0
  26. package/callbacks/postEsauJr.lua +69 -0
  27. package/callbacks/postFamiliarInitLate.d.ts +1 -0
  28. package/callbacks/postFamiliarInitLate.lua +33 -0
  29. package/callbacks/postFamiliarStateChanged.d.ts +1 -0
  30. package/callbacks/postFamiliarStateChanged.lua +39 -0
  31. package/callbacks/postFlip.d.ts +1 -0
  32. package/callbacks/postFlip.lua +63 -0
  33. package/callbacks/postGreedModeWave.d.ts +1 -0
  34. package/callbacks/postGreedModeWave.lua +34 -0
  35. package/callbacks/postGridEntity.d.ts +1 -0
  36. package/callbacks/postGridEntity.lua +107 -0
  37. package/callbacks/postGridEntityCollision.d.ts +1 -0
  38. package/callbacks/postGridEntityCollision.lua +67 -0
  39. package/callbacks/postGridEntityRender.d.ts +1 -0
  40. package/callbacks/postGridEntityRender.lua +26 -0
  41. package/callbacks/postHolyMantleRemoved.d.ts +1 -0
  42. package/callbacks/postHolyMantleRemoved.lua +41 -0
  43. package/callbacks/postItemDischarged.d.ts +2 -0
  44. package/callbacks/postItemDischarged.lua +104 -0
  45. package/callbacks/postKnifeInitLate.d.ts +1 -0
  46. package/callbacks/postKnifeInitLate.lua +33 -0
  47. package/callbacks/postLaserInitLate.d.ts +1 -0
  48. package/callbacks/postLaserInitLate.lua +33 -0
  49. package/callbacks/postNPCInitLate.d.ts +1 -0
  50. package/callbacks/postNPCInitLate.lua +33 -0
  51. package/callbacks/postNPCStateChanged.d.ts +1 -0
  52. package/callbacks/postNPCStateChanged.lua +39 -0
  53. package/callbacks/postNewRoomEarly.d.ts +1 -0
  54. package/callbacks/postNewRoomEarly.lua +67 -0
  55. package/callbacks/postPickupCollect.d.ts +1 -0
  56. package/callbacks/postPickupCollect.lua +41 -0
  57. package/callbacks/postPickupInitLate.d.ts +1 -0
  58. package/callbacks/postPickupInitLate.lua +33 -0
  59. package/callbacks/postPickupStateChanged.d.ts +1 -0
  60. package/callbacks/postPickupStateChanged.lua +39 -0
  61. package/callbacks/postPitRender.d.ts +1 -0
  62. package/callbacks/postPitRender.lua +26 -0
  63. package/callbacks/postPitUpdate.d.ts +1 -0
  64. package/callbacks/postPitUpdate.lua +26 -0
  65. package/callbacks/postPlayerChangeHealth.d.ts +1 -0
  66. package/callbacks/postPlayerChangeHealth.lua +52 -0
  67. package/callbacks/postPlayerChangeType.d.ts +1 -0
  68. package/callbacks/postPlayerChangeType.lua +41 -0
  69. package/callbacks/postPlayerFatalDamage.d.ts +1 -0
  70. package/callbacks/postPlayerFatalDamage.lua +73 -0
  71. package/callbacks/postPlayerInitLate.d.ts +1 -0
  72. package/callbacks/postPlayerInitLate.lua +35 -0
  73. package/callbacks/postPlayerReordered.d.ts +1 -0
  74. package/callbacks/postPlayerReordered.lua +114 -0
  75. package/callbacks/postPoopRender.d.ts +1 -0
  76. package/callbacks/postPoopRender.lua +26 -0
  77. package/callbacks/postPoopUpdate.d.ts +1 -0
  78. package/callbacks/postPoopUpdate.lua +26 -0
  79. package/callbacks/postPressurePlateRender.d.ts +1 -0
  80. package/callbacks/postPressurePlateRender.lua +26 -0
  81. package/callbacks/postPressurePlateUpdate.d.ts +1 -0
  82. package/callbacks/postPressurePlateUpdate.lua +26 -0
  83. package/callbacks/postProjectileInitLate.d.ts +1 -0
  84. package/callbacks/postProjectileInitLate.lua +33 -0
  85. package/callbacks/postPurchase.d.ts +1 -0
  86. package/callbacks/postPurchase.lua +51 -0
  87. package/callbacks/postRockRender.d.ts +1 -0
  88. package/callbacks/postRockRender.lua +26 -0
  89. package/callbacks/postRockUpdate.d.ts +1 -0
  90. package/callbacks/postRockUpdate.lua +26 -0
  91. package/callbacks/postRoomClearChanged.d.ts +1 -0
  92. package/callbacks/postRoomClearChanged.lua +42 -0
  93. package/callbacks/postSacrifice.d.ts +1 -0
  94. package/callbacks/postSacrifice.lua +44 -0
  95. package/callbacks/postSlotInitUpdate.d.ts +1 -0
  96. package/callbacks/postSlotInitUpdate.lua +53 -0
  97. package/callbacks/postSlotRender.d.ts +1 -0
  98. package/callbacks/postSlotRender.lua +76 -0
  99. package/callbacks/postSpikesRender.d.ts +1 -0
  100. package/callbacks/postSpikesRender.lua +26 -0
  101. package/callbacks/postSpikesUpdate.d.ts +1 -0
  102. package/callbacks/postSpikesUpdate.lua +26 -0
  103. package/callbacks/postTNTRender.d.ts +1 -0
  104. package/callbacks/postTNTRender.lua +26 -0
  105. package/callbacks/postTNTUpdate.d.ts +1 -0
  106. package/callbacks/postTNTUpdate.lua +26 -0
  107. package/callbacks/postTearInitLate.d.ts +1 -0
  108. package/callbacks/postTearInitLate.lua +33 -0
  109. package/callbacks/postTearInitVeryLate.d.ts +1 -0
  110. package/callbacks/postTearInitVeryLate.lua +36 -0
  111. package/callbacks/postTransformation.d.ts +1 -0
  112. package/callbacks/postTransformation.lua +48 -0
  113. package/callbacks/postTrinketBreak.d.ts +1 -0
  114. package/callbacks/postTrinketBreak.lua +72 -0
  115. package/callbacks/preBerserkDeath.d.ts +1 -0
  116. package/callbacks/preBerserkDeath.lua +38 -0
  117. package/callbacks/preNewLevel.d.ts +1 -0
  118. package/callbacks/preNewLevel.lua +45 -0
  119. package/callbacks/reorderedCallbacks.d.ts +20 -0
  120. package/callbacks/reorderedCallbacks.lua +108 -0
  121. package/callbacks/subscriptions/postBombInitLate.d.ts +5 -0
  122. package/callbacks/subscriptions/postBombInitLate.lua +29 -0
  123. package/callbacks/subscriptions/postBoneSwing.d.ts +4 -0
  124. package/callbacks/subscriptions/postBoneSwing.lua +22 -0
  125. package/callbacks/subscriptions/postCollectibleInitFirst.d.ts +5 -0
  126. package/callbacks/subscriptions/postCollectibleInitFirst.lua +29 -0
  127. package/callbacks/subscriptions/postCursedTeleport.d.ts +4 -0
  128. package/callbacks/subscriptions/postCursedTeleport.lua +22 -0
  129. package/callbacks/subscriptions/postCustomDoorEnter.d.ts +5 -0
  130. package/callbacks/subscriptions/postCustomDoorEnter.lua +35 -0
  131. package/callbacks/subscriptions/postCustomRevive.d.ts +5 -0
  132. package/callbacks/subscriptions/postCustomRevive.lua +29 -0
  133. package/callbacks/subscriptions/postDoorRender.d.ts +5 -0
  134. package/callbacks/subscriptions/postDoorRender.lua +30 -0
  135. package/callbacks/subscriptions/postDoorUpdate.d.ts +5 -0
  136. package/callbacks/subscriptions/postDoorUpdate.lua +30 -0
  137. package/callbacks/subscriptions/postEffectInitLate.d.ts +5 -0
  138. package/callbacks/subscriptions/postEffectInitLate.lua +29 -0
  139. package/callbacks/subscriptions/postEffectStateChanged.d.ts +5 -0
  140. package/callbacks/subscriptions/postEffectStateChanged.lua +29 -0
  141. package/callbacks/subscriptions/postEsauJr.d.ts +4 -0
  142. package/callbacks/subscriptions/postEsauJr.lua +22 -0
  143. package/callbacks/subscriptions/postFamiliarInitLate.d.ts +5 -0
  144. package/callbacks/subscriptions/postFamiliarInitLate.lua +29 -0
  145. package/callbacks/subscriptions/postFamiliarStateChanged.d.ts +5 -0
  146. package/callbacks/subscriptions/postFamiliarStateChanged.lua +29 -0
  147. package/callbacks/subscriptions/postFirstEsauJr.d.ts +4 -0
  148. package/callbacks/subscriptions/postFirstEsauJr.lua +22 -0
  149. package/callbacks/subscriptions/postFirstFlip.d.ts +4 -0
  150. package/callbacks/subscriptions/postFirstFlip.lua +22 -0
  151. package/callbacks/subscriptions/postFlip.d.ts +4 -0
  152. package/callbacks/subscriptions/postFlip.lua +22 -0
  153. package/callbacks/subscriptions/postGameStartedReordered.d.ts +3 -0
  154. package/callbacks/subscriptions/postGameStartedReordered.lua +22 -0
  155. package/callbacks/subscriptions/postGreedModeWave.d.ts +4 -0
  156. package/callbacks/subscriptions/postGreedModeWave.lua +22 -0
  157. package/callbacks/subscriptions/postGridEntityBroken.d.ts +6 -0
  158. package/callbacks/subscriptions/postGridEntityBroken.lua +35 -0
  159. package/callbacks/subscriptions/postGridEntityCollision.d.ts +6 -0
  160. package/callbacks/subscriptions/postGridEntityCollision.lua +35 -0
  161. package/callbacks/subscriptions/postGridEntityInit.d.ts +6 -0
  162. package/callbacks/subscriptions/postGridEntityInit.lua +35 -0
  163. package/callbacks/subscriptions/postGridEntityRemove.d.ts +6 -0
  164. package/callbacks/subscriptions/postGridEntityRemove.lua +33 -0
  165. package/callbacks/subscriptions/postGridEntityRender.d.ts +6 -0
  166. package/callbacks/subscriptions/postGridEntityRender.lua +35 -0
  167. package/callbacks/subscriptions/postGridEntityStateChanged.d.ts +6 -0
  168. package/callbacks/subscriptions/postGridEntityStateChanged.lua +35 -0
  169. package/callbacks/subscriptions/postGridEntityUpdate.d.ts +6 -0
  170. package/callbacks/subscriptions/postGridEntityUpdate.lua +35 -0
  171. package/callbacks/subscriptions/postHolyMantleRemoved.d.ts +6 -0
  172. package/callbacks/subscriptions/postHolyMantleRemoved.lua +34 -0
  173. package/callbacks/subscriptions/postItemDischarged.d.ts +5 -0
  174. package/callbacks/subscriptions/postItemDischarged.lua +29 -0
  175. package/callbacks/subscriptions/postItemPickup.d.ts +11 -0
  176. package/callbacks/subscriptions/postItemPickup.lua +33 -0
  177. package/callbacks/subscriptions/postKnifeInitLate.d.ts +5 -0
  178. package/callbacks/subscriptions/postKnifeInitLate.lua +29 -0
  179. package/callbacks/subscriptions/postLaserInitLate.d.ts +5 -0
  180. package/callbacks/subscriptions/postLaserInitLate.lua +29 -0
  181. package/callbacks/subscriptions/postNPCInitLate.d.ts +5 -0
  182. package/callbacks/subscriptions/postNPCInitLate.lua +29 -0
  183. package/callbacks/subscriptions/postNPCStateChanged.d.ts +6 -0
  184. package/callbacks/subscriptions/postNPCStateChanged.lua +33 -0
  185. package/callbacks/subscriptions/postNewLevelReordered.d.ts +1 -0
  186. package/callbacks/subscriptions/postNewLevelReordered.lua +22 -0
  187. package/callbacks/subscriptions/postNewRoomEarly.d.ts +1 -0
  188. package/callbacks/subscriptions/postNewRoomEarly.lua +22 -0
  189. package/callbacks/subscriptions/postNewRoomReordered.d.ts +1 -0
  190. package/callbacks/subscriptions/postNewRoomReordered.lua +22 -0
  191. package/callbacks/subscriptions/postPEffectUpdateReordered.d.ts +6 -0
  192. package/callbacks/subscriptions/postPEffectUpdateReordered.lua +34 -0
  193. package/callbacks/subscriptions/postPickupCollect.d.ts +4 -0
  194. package/callbacks/subscriptions/postPickupCollect.lua +29 -0
  195. package/callbacks/subscriptions/postPickupInitLate.d.ts +3 -0
  196. package/callbacks/subscriptions/postPickupInitLate.lua +29 -0
  197. package/callbacks/subscriptions/postPickupStateChanged.d.ts +5 -0
  198. package/callbacks/subscriptions/postPickupStateChanged.lua +29 -0
  199. package/callbacks/subscriptions/postPitRender.d.ts +5 -0
  200. package/callbacks/subscriptions/postPitRender.lua +30 -0
  201. package/callbacks/subscriptions/postPitUpdate.d.ts +5 -0
  202. package/callbacks/subscriptions/postPitUpdate.lua +30 -0
  203. package/callbacks/subscriptions/postPlayerChangeHealth.d.ts +7 -0
  204. package/callbacks/subscriptions/postPlayerChangeHealth.lua +34 -0
  205. package/callbacks/subscriptions/postPlayerChangeType.d.ts +5 -0
  206. package/callbacks/subscriptions/postPlayerChangeType.lua +29 -0
  207. package/callbacks/subscriptions/postPlayerFatalDamage.d.ts +6 -0
  208. package/callbacks/subscriptions/postPlayerFatalDamage.lua +45 -0
  209. package/callbacks/subscriptions/postPlayerInitLate.d.ts +6 -0
  210. package/callbacks/subscriptions/postPlayerInitLate.lua +34 -0
  211. package/callbacks/subscriptions/postPlayerInitReordered.d.ts +6 -0
  212. package/callbacks/subscriptions/postPlayerInitReordered.lua +34 -0
  213. package/callbacks/subscriptions/postPlayerRenderReordered.d.ts +6 -0
  214. package/callbacks/subscriptions/postPlayerRenderReordered.lua +34 -0
  215. package/callbacks/subscriptions/postPlayerUpdateReordered.d.ts +6 -0
  216. package/callbacks/subscriptions/postPlayerUpdateReordered.lua +34 -0
  217. package/callbacks/subscriptions/postPoopRender.d.ts +5 -0
  218. package/callbacks/subscriptions/postPoopRender.lua +30 -0
  219. package/callbacks/subscriptions/postPoopUpdate.d.ts +5 -0
  220. package/callbacks/subscriptions/postPoopUpdate.lua +30 -0
  221. package/callbacks/subscriptions/postPressurePlateRender.d.ts +5 -0
  222. package/callbacks/subscriptions/postPressurePlateRender.lua +30 -0
  223. package/callbacks/subscriptions/postPressurePlateUpdate.d.ts +5 -0
  224. package/callbacks/subscriptions/postPressurePlateUpdate.lua +30 -0
  225. package/callbacks/subscriptions/postProjectileInitLate.d.ts +5 -0
  226. package/callbacks/subscriptions/postProjectileInitLate.lua +29 -0
  227. package/callbacks/subscriptions/postPurchase.d.ts +6 -0
  228. package/callbacks/subscriptions/postPurchase.lua +22 -0
  229. package/callbacks/subscriptions/postRockRender.d.ts +5 -0
  230. package/callbacks/subscriptions/postRockRender.lua +30 -0
  231. package/callbacks/subscriptions/postRockUpdate.d.ts +5 -0
  232. package/callbacks/subscriptions/postRockUpdate.lua +30 -0
  233. package/callbacks/subscriptions/postRoomClearChanged.d.ts +3 -0
  234. package/callbacks/subscriptions/postRoomClearChanged.lua +22 -0
  235. package/callbacks/subscriptions/postSacrifice.d.ts +6 -0
  236. package/callbacks/subscriptions/postSacrifice.lua +34 -0
  237. package/callbacks/subscriptions/postSlotAnimationChanged.d.ts +5 -0
  238. package/callbacks/subscriptions/postSlotAnimationChanged.lua +29 -0
  239. package/callbacks/subscriptions/postSlotDestroyed.d.ts +5 -0
  240. package/callbacks/subscriptions/postSlotDestroyed.lua +29 -0
  241. package/callbacks/subscriptions/postSlotInit.d.ts +5 -0
  242. package/callbacks/subscriptions/postSlotInit.lua +29 -0
  243. package/callbacks/subscriptions/postSlotRender.d.ts +5 -0
  244. package/callbacks/subscriptions/postSlotRender.lua +29 -0
  245. package/callbacks/subscriptions/postSlotUpdate.d.ts +5 -0
  246. package/callbacks/subscriptions/postSlotUpdate.lua +29 -0
  247. package/callbacks/subscriptions/postSpikesRender.d.ts +5 -0
  248. package/callbacks/subscriptions/postSpikesRender.lua +30 -0
  249. package/callbacks/subscriptions/postSpikesUpdate.d.ts +5 -0
  250. package/callbacks/subscriptions/postSpikesUpdate.lua +30 -0
  251. package/callbacks/subscriptions/postTNTRender.d.ts +5 -0
  252. package/callbacks/subscriptions/postTNTRender.lua +30 -0
  253. package/callbacks/subscriptions/postTNTUpdate.d.ts +5 -0
  254. package/callbacks/subscriptions/postTNTUpdate.lua +30 -0
  255. package/callbacks/subscriptions/postTearInitLate.d.ts +5 -0
  256. package/callbacks/subscriptions/postTearInitLate.lua +29 -0
  257. package/callbacks/subscriptions/postTearInitVeryLate.d.ts +5 -0
  258. package/callbacks/subscriptions/postTearInitVeryLate.lua +29 -0
  259. package/callbacks/subscriptions/postTransformation.d.ts +5 -0
  260. package/callbacks/subscriptions/postTransformation.lua +29 -0
  261. package/callbacks/subscriptions/postTrinketBreak.d.ts +5 -0
  262. package/callbacks/subscriptions/postTrinketBreak.lua +29 -0
  263. package/callbacks/subscriptions/preBerserkDeath.d.ts +6 -0
  264. package/callbacks/subscriptions/preBerserkDeath.lua +35 -0
  265. package/callbacks/subscriptions/preCustomRevive.d.ts +6 -0
  266. package/callbacks/subscriptions/preCustomRevive.lua +38 -0
  267. package/callbacks/subscriptions/preItemPickup.d.ts +11 -0
  268. package/callbacks/subscriptions/preItemPickup.lua +33 -0
  269. package/callbacks/subscriptions/preNewLevel.d.ts +4 -0
  270. package/callbacks/subscriptions/preNewLevel.lua +22 -0
  271. package/classes/DefaultMap.d.ts +110 -0
  272. package/classes/DefaultMap.lua +135 -0
  273. package/classes/ModUpgraded.d.ts +23 -0
  274. package/classes/ModUpgraded.lua +43 -0
  275. package/constants.d.ts +104 -0
  276. package/constants.lua +86 -0
  277. package/constantsFirstLast.d.ts +130 -0
  278. package/constantsFirstLast.lua +113 -0
  279. package/enums/HealthType.d.ts +16 -0
  280. package/enums/HealthType.lua +24 -0
  281. package/enums/ModCallbackCustom.d.ts +860 -0
  282. package/enums/ModCallbackCustom.lua +159 -0
  283. package/enums/PocketItemType.d.ts +8 -0
  284. package/enums/PocketItemType.lua +15 -0
  285. package/enums/SerializationType.d.ts +5 -0
  286. package/enums/SerializationType.lua +9 -0
  287. package/enums/private/CopyableIsaacAPIClassType.d.ts +7 -0
  288. package/enums/private/CopyableIsaacAPIClassType.lua +8 -0
  289. package/enums/private/SaveDataKey.d.ts +7 -0
  290. package/enums/private/SaveDataKey.lua +11 -0
  291. package/enums/private/SerializationBrand.d.ts +37 -0
  292. package/enums/private/SerializationBrand.lua +17 -0
  293. package/features/characterHealthConversion.d.ts +9 -0
  294. package/features/characterHealthConversion.lua +91 -0
  295. package/features/characterStats.d.ts +19 -0
  296. package/features/characterStats.lua +54 -0
  297. package/features/debugDisplay/debugDisplay.d.ts +2 -0
  298. package/features/debugDisplay/debugDisplay.lua +181 -0
  299. package/features/debugDisplay/exports.d.ts +199 -0
  300. package/features/debugDisplay/exports.lua +223 -0
  301. package/features/debugDisplay/v.d.ts +44 -0
  302. package/features/debugDisplay/v.lua +54 -0
  303. package/features/deployJSONRoom.d.ts +65 -0
  304. package/features/deployJSONRoom.lua +519 -0
  305. package/features/disableInputs.d.ts +62 -0
  306. package/features/disableInputs.lua +134 -0
  307. package/features/disableSound.d.ts +18 -0
  308. package/features/disableSound.lua +62 -0
  309. package/features/extraConsoleCommands/commandsDisplay.d.ts +162 -0
  310. package/features/extraConsoleCommands/commandsDisplay.lua +219 -0
  311. package/features/extraConsoleCommands/commandsSubroutines.d.ts +9 -0
  312. package/features/extraConsoleCommands/commandsSubroutines.lua +129 -0
  313. package/features/extraConsoleCommands/init.d.ts +26 -0
  314. package/features/extraConsoleCommands/init.lua +265 -0
  315. package/features/extraConsoleCommands/listCommands.d.ts +349 -0
  316. package/features/extraConsoleCommands/listCommands.lua +1094 -0
  317. package/features/extraConsoleCommands/v.d.ts +13 -0
  318. package/features/extraConsoleCommands/v.lua +10 -0
  319. package/features/fadeInRemover.d.ts +14 -0
  320. package/features/fadeInRemover.lua +55 -0
  321. package/features/fastReset.d.ts +14 -0
  322. package/features/fastReset.lua +59 -0
  323. package/features/forgottenSwitch.d.ts +5 -0
  324. package/features/forgottenSwitch.lua +32 -0
  325. package/features/getCollectibleItemPoolType.d.ts +7 -0
  326. package/features/getCollectibleItemPoolType.lua +48 -0
  327. package/features/playerInventory.d.ts +23 -0
  328. package/features/playerInventory.lua +147 -0
  329. package/features/ponyDetection.d.ts +6 -0
  330. package/features/ponyDetection.lua +53 -0
  331. package/features/preventCollectibleRotation.d.ts +11 -0
  332. package/features/preventCollectibleRotation.lua +67 -0
  333. package/features/runInNFrames.d.ts +61 -0
  334. package/features/runInNFrames.lua +128 -0
  335. package/features/saveDataManager/constants.d.ts +3 -0
  336. package/features/saveDataManager/constants.lua +5 -0
  337. package/features/saveDataManager/exports.d.ts +131 -0
  338. package/features/saveDataManager/exports.lua +181 -0
  339. package/features/saveDataManager/load.d.ts +4 -0
  340. package/features/saveDataManager/load.lua +66 -0
  341. package/features/saveDataManager/main.d.ts +3 -0
  342. package/features/saveDataManager/main.lua +125 -0
  343. package/features/saveDataManager/maps.d.ts +10 -0
  344. package/features/saveDataManager/maps.lua +11 -0
  345. package/features/saveDataManager/merge.d.ts +24 -0
  346. package/features/saveDataManager/merge.lua +144 -0
  347. package/features/saveDataManager/save.d.ts +4 -0
  348. package/features/saveDataManager/save.lua +44 -0
  349. package/features/saveDataManager/serializationBrand.d.ts +1 -0
  350. package/features/saveDataManager/serializationBrand.lua +17 -0
  351. package/features/sirenHelpers.d.ts +18 -0
  352. package/features/sirenHelpers.lua +82 -0
  353. package/features/taintedLazarusPlayers.d.ts +13 -0
  354. package/features/taintedLazarusPlayers.lua +85 -0
  355. package/featuresInitialized.d.ts +1 -0
  356. package/featuresInitialized.lua +20 -0
  357. package/functions/array.d.ts +141 -0
  358. package/functions/array.lua +354 -0
  359. package/functions/benchmark.d.ts +10 -0
  360. package/functions/benchmark.lua +38 -0
  361. package/functions/bitwise.d.ts +4 -0
  362. package/functions/bitwise.lua +21 -0
  363. package/functions/boss.d.ts +56 -0
  364. package/functions/boss.lua +218 -0
  365. package/functions/cacheFlag.d.ts +8 -0
  366. package/functions/cacheFlag.lua +11 -0
  367. package/functions/cards.d.ts +95 -0
  368. package/functions/cards.lua +234 -0
  369. package/functions/challenges.d.ts +3 -0
  370. package/functions/challenges.lua +10 -0
  371. package/functions/character.d.ts +48 -0
  372. package/functions/character.lua +96 -0
  373. package/functions/charge.d.ts +54 -0
  374. package/functions/charge.lua +162 -0
  375. package/functions/chargeBar.d.ts +12 -0
  376. package/functions/chargeBar.lua +47 -0
  377. package/functions/collectibleCacheFlag.d.ts +23 -0
  378. package/functions/collectibleCacheFlag.lua +80 -0
  379. package/functions/collectibleSet.d.ts +9 -0
  380. package/functions/collectibleSet.lua +54 -0
  381. package/functions/collectibleTag.d.ts +16 -0
  382. package/functions/collectibleTag.lua +83 -0
  383. package/functions/collectibles.d.ts +211 -0
  384. package/functions/collectibles.lua +412 -0
  385. package/functions/color.d.ts +45 -0
  386. package/functions/color.lua +140 -0
  387. package/functions/debug.d.ts +27 -0
  388. package/functions/debug.lua +49 -0
  389. package/functions/deepCopy.d.ts +29 -0
  390. package/functions/deepCopy.lua +382 -0
  391. package/functions/deepCopyTests.d.ts +1 -0
  392. package/functions/deepCopyTests.lua +316 -0
  393. package/functions/direction.d.ts +4 -0
  394. package/functions/direction.lua +17 -0
  395. package/functions/doors.d.ts +117 -0
  396. package/functions/doors.lua +284 -0
  397. package/functions/easing.d.ts +30 -0
  398. package/functions/easing.lua +115 -0
  399. package/functions/eden.d.ts +3 -0
  400. package/functions/eden.lua +47 -0
  401. package/functions/entity.d.ts +131 -0
  402. package/functions/entity.lua +321 -0
  403. package/functions/entitySpecific.d.ts +264 -0
  404. package/functions/entitySpecific.lua +832 -0
  405. package/functions/entityTypes.d.ts +3 -0
  406. package/functions/entityTypes.lua +8 -0
  407. package/functions/enums.d.ts +80 -0
  408. package/functions/enums.lua +147 -0
  409. package/functions/familiars.d.ts +60 -0
  410. package/functions/familiars.lua +85 -0
  411. package/functions/flag.d.ts +99 -0
  412. package/functions/flag.lua +124 -0
  413. package/functions/flying.d.ts +19 -0
  414. package/functions/flying.lua +77 -0
  415. package/functions/globals.d.ts +14 -0
  416. package/functions/globals.lua +236 -0
  417. package/functions/gridEntity.d.ts +155 -0
  418. package/functions/gridEntity.lua +368 -0
  419. package/functions/gridEntitySpecific.d.ts +18 -0
  420. package/functions/gridEntitySpecific.lua +96 -0
  421. package/functions/input.d.ts +32 -0
  422. package/functions/input.lua +117 -0
  423. package/functions/isaacAPIClass.d.ts +23 -0
  424. package/functions/isaacAPIClass.lua +47 -0
  425. package/functions/jsonHelpers.d.ts +18 -0
  426. package/functions/jsonHelpers.lua +37 -0
  427. package/functions/jsonRoom.d.ts +12 -0
  428. package/functions/jsonRoom.lua +91 -0
  429. package/functions/kColor.d.ts +31 -0
  430. package/functions/kColor.lua +110 -0
  431. package/functions/language.d.ts +8 -0
  432. package/functions/language.lua +13 -0
  433. package/functions/level.d.ts +1 -0
  434. package/functions/level.lua +29 -0
  435. package/functions/log.d.ts +78 -0
  436. package/functions/log.lua +547 -0
  437. package/functions/map.d.ts +22 -0
  438. package/functions/map.lua +61 -0
  439. package/functions/math.d.ts +50 -0
  440. package/functions/math.lua +118 -0
  441. package/functions/mergeTests.d.ts +1 -0
  442. package/functions/mergeTests.lua +182 -0
  443. package/functions/npc.d.ts +40 -0
  444. package/functions/npc.lua +128 -0
  445. package/functions/pickupVariants.d.ts +23 -0
  446. package/functions/pickupVariants.lua +48 -0
  447. package/functions/pickups.d.ts +132 -0
  448. package/functions/pickups.lua +474 -0
  449. package/functions/pills.d.ts +69 -0
  450. package/functions/pills.lua +128 -0
  451. package/functions/player.d.ts +296 -0
  452. package/functions/player.lua +777 -0
  453. package/functions/playerDataStructures.d.ts +92 -0
  454. package/functions/playerDataStructures.lua +103 -0
  455. package/functions/playerHealth.d.ts +22 -0
  456. package/functions/playerHealth.lua +296 -0
  457. package/functions/playerIndex.d.ts +68 -0
  458. package/functions/playerIndex.lua +174 -0
  459. package/functions/pocketItems.d.ts +33 -0
  460. package/functions/pocketItems.lua +104 -0
  461. package/functions/positionVelocity.d.ts +64 -0
  462. package/functions/positionVelocity.lua +154 -0
  463. package/functions/random.d.ts +42 -0
  464. package/functions/random.lua +70 -0
  465. package/functions/revive.d.ts +31 -0
  466. package/functions/revive.lua +117 -0
  467. package/functions/rng.d.ts +53 -0
  468. package/functions/rng.lua +148 -0
  469. package/functions/roomData.d.ts +108 -0
  470. package/functions/roomData.lua +160 -0
  471. package/functions/roomGrid.d.ts +40 -0
  472. package/functions/roomGrid.lua +80 -0
  473. package/functions/roomShape.d.ts +43 -0
  474. package/functions/roomShape.lua +67 -0
  475. package/functions/rooms.d.ts +194 -0
  476. package/functions/rooms.lua +482 -0
  477. package/functions/run.d.ts +12 -0
  478. package/functions/run.lua +33 -0
  479. package/functions/seeds.d.ts +9 -0
  480. package/functions/seeds.lua +19 -0
  481. package/functions/serialization.d.ts +11 -0
  482. package/functions/serialization.lua +69 -0
  483. package/functions/set.d.ts +39 -0
  484. package/functions/set.lua +83 -0
  485. package/functions/sound.d.ts +1 -0
  486. package/functions/sound.lua +13 -0
  487. package/functions/spawnCollectible.d.ts +31 -0
  488. package/functions/spawnCollectible.lua +94 -0
  489. package/functions/sprite.d.ts +36 -0
  490. package/functions/sprite.lua +89 -0
  491. package/functions/stage.d.ts +35 -0
  492. package/functions/stage.lua +86 -0
  493. package/functions/string.d.ts +13 -0
  494. package/functions/string.lua +42 -0
  495. package/functions/table.d.ts +36 -0
  496. package/functions/table.lua +98 -0
  497. package/functions/tears.d.ts +22 -0
  498. package/functions/tears.lua +26 -0
  499. package/functions/transformations.d.ts +30 -0
  500. package/functions/transformations.lua +114 -0
  501. package/functions/trinketCacheFlag.d.ts +10 -0
  502. package/functions/trinketCacheFlag.lua +53 -0
  503. package/functions/trinketGive.d.ts +38 -0
  504. package/functions/trinketGive.lua +114 -0
  505. package/functions/trinkets.d.ts +73 -0
  506. package/functions/trinkets.lua +167 -0
  507. package/functions/tstlClass.d.ts +20 -0
  508. package/functions/tstlClass.lua +65 -0
  509. package/functions/ui.d.ts +34 -0
  510. package/functions/ui.lua +111 -0
  511. package/functions/utils.d.ts +113 -0
  512. package/functions/utils.lua +182 -0
  513. package/functions/vector.d.ts +32 -0
  514. package/functions/vector.lua +127 -0
  515. package/index.d.ts +129 -0
  516. package/index.lua +900 -0
  517. package/initCustomCallbacks.d.ts +2 -0
  518. package/initCustomCallbacks.lua +178 -0
  519. package/initFeatures.d.ts +3 -0
  520. package/initFeatures.lua +51 -0
  521. package/interfaces/AddCallbackParameterCustom.d.ts +153 -0
  522. package/interfaces/AddCallbackParameterCustom.lua +4 -0
  523. package/interfaces/ChargeBarSprites.d.ts +13 -0
  524. package/interfaces/ChargeBarSprites.lua +2 -0
  525. package/interfaces/JSONDoor.d.ts +11 -0
  526. package/interfaces/JSONDoor.lua +2 -0
  527. package/interfaces/JSONEntity.d.ts +13 -0
  528. package/interfaces/JSONEntity.lua +2 -0
  529. package/interfaces/JSONRoom.d.ts +26 -0
  530. package/interfaces/JSONRoom.lua +2 -0
  531. package/interfaces/JSONRooms.d.ts +11 -0
  532. package/interfaces/JSONRooms.lua +2 -0
  533. package/interfaces/JSONSpawn.d.ts +11 -0
  534. package/interfaces/JSONSpawn.lua +2 -0
  535. package/interfaces/PlayerHealth.d.ts +15 -0
  536. package/interfaces/PlayerHealth.lua +2 -0
  537. package/interfaces/PocketItemDescription.d.ts +8 -0
  538. package/interfaces/PocketItemDescription.lua +2 -0
  539. package/interfaces/SaveData.d.ts +29 -0
  540. package/interfaces/SaveData.lua +2 -0
  541. package/interfaces/TrinketSituation.d.ts +8 -0
  542. package/interfaces/TrinketSituation.lua +2 -0
  543. package/interfaces/private/TSTLClassMetatable.d.ts +10 -0
  544. package/interfaces/private/TSTLClassMetatable.lua +2 -0
  545. package/lualib_bundle.lua +2475 -0
  546. package/maps/cardMap.d.ts +3 -0
  547. package/maps/cardMap.lua +212 -0
  548. package/maps/characterMap.d.ts +3 -0
  549. package/maps/characterMap.lua +90 -0
  550. package/maps/collectibleDescriptionMap.d.ts +3 -0
  551. package/maps/collectibleDescriptionMap.lua +728 -0
  552. package/maps/collectibleNameMap.d.ts +3 -0
  553. package/maps/collectibleNameMap.lua +728 -0
  554. package/maps/defaultPlayerStatMap.d.ts +3 -0
  555. package/maps/defaultPlayerStatMap.lua +25 -0
  556. package/maps/gridEntityTypeToBrokenStateMap.d.ts +2 -0
  557. package/maps/gridEntityTypeToBrokenStateMap.lua +26 -0
  558. package/maps/gridEntityXMLMap.d.ts +9 -0
  559. package/maps/gridEntityXMLMap.lua +53 -0
  560. package/maps/pillEffectMap.d.ts +3 -0
  561. package/maps/pillEffectMap.lua +90 -0
  562. package/maps/roomShapeToTopLeftWallGridIndexMap.d.ts +7 -0
  563. package/maps/roomShapeToTopLeftWallGridIndexMap.lua +17 -0
  564. package/maps/roomTypeMap.d.ts +3 -0
  565. package/maps/roomTypeMap.lua +45 -0
  566. package/maps/trinketDescriptionMap.d.ts +3 -0
  567. package/maps/trinketDescriptionMap.lua +196 -0
  568. package/maps/trinketNameMap.d.ts +3 -0
  569. package/maps/trinketNameMap.lua +196 -0
  570. package/objects/LRoomShapeToRectangles.d.ts +13 -0
  571. package/objects/LRoomShapeToRectangles.lua +35 -0
  572. package/objects/callbackRegisterFunctions.d.ts +5 -0
  573. package/objects/callbackRegisterFunctions.lua +231 -0
  574. package/objects/cardDescriptions.d.ts +5 -0
  575. package/objects/cardDescriptions.lua +105 -0
  576. package/objects/cardNames.d.ts +5 -0
  577. package/objects/cardNames.lua +105 -0
  578. package/objects/cardTypes.d.ts +5 -0
  579. package/objects/cardTypes.lua +106 -0
  580. package/objects/challengeNames.d.ts +5 -0
  581. package/objects/challengeNames.lua +53 -0
  582. package/objects/characterNames.d.ts +5 -0
  583. package/objects/characterNames.lua +49 -0
  584. package/objects/coinSubTypeToValue.d.ts +5 -0
  585. package/objects/coinSubTypeToValue.lua +15 -0
  586. package/objects/colors.d.ts +17 -0
  587. package/objects/colors.lua +16 -0
  588. package/objects/directionNames.d.ts +4 -0
  589. package/objects/directionNames.lua +11 -0
  590. package/objects/directionToDegrees.d.ts +4 -0
  591. package/objects/directionToDegrees.lua +11 -0
  592. package/objects/directionToVector.d.ts +4 -0
  593. package/objects/directionToVector.lua +13 -0
  594. package/objects/doorSlotFlagToDoorSlot.d.ts +5 -0
  595. package/objects/doorSlotFlagToDoorSlot.lua +16 -0
  596. package/objects/doorSlotToDirection.d.ts +4 -0
  597. package/objects/doorSlotToDirection.lua +16 -0
  598. package/objects/isaacAPIClassTypeToBrand.d.ts +5 -0
  599. package/objects/isaacAPIClassTypeToBrand.lua +7 -0
  600. package/objects/isaacAPIClassTypeToCopyFunction.d.ts +5 -0
  601. package/objects/isaacAPIClassTypeToCopyFunction.lua +13 -0
  602. package/objects/languageNames.d.ts +4 -0
  603. package/objects/languageNames.lua +13 -0
  604. package/objects/pillEffectClasses.d.ts +5 -0
  605. package/objects/pillEffectClasses.lua +59 -0
  606. package/objects/pillEffectNames.d.ts +5 -0
  607. package/objects/pillEffectNames.lua +57 -0
  608. package/objects/pillEffectTypes.d.ts +5 -0
  609. package/objects/pillEffectTypes.lua +58 -0
  610. package/objects/roomShapeBounds.d.ts +8 -0
  611. package/objects/roomShapeBounds.lua +26 -0
  612. package/objects/roomShapeLayoutSizes.d.ts +10 -0
  613. package/objects/roomShapeLayoutSizes.lua +29 -0
  614. package/objects/roomShapeToBottomRightPosition.d.ts +8 -0
  615. package/objects/roomShapeToBottomRightPosition.lua +22 -0
  616. package/objects/roomShapeToDoorSlots.d.ts +4 -0
  617. package/objects/roomShapeToDoorSlots.lua +46 -0
  618. package/objects/roomShapeToDoorSlotsToGridIndexDelta.d.ts +8 -0
  619. package/objects/roomShapeToDoorSlotsToGridIndexDelta.lua +89 -0
  620. package/objects/roomShapeToGridWidth.d.ts +4 -0
  621. package/objects/roomShapeToGridWidth.lua +20 -0
  622. package/objects/roomShapeToTopLeftPosition.d.ts +8 -0
  623. package/objects/roomShapeToTopLeftPosition.lua +24 -0
  624. package/objects/roomShapeVolumes.d.ts +13 -0
  625. package/objects/roomShapeVolumes.lua +30 -0
  626. package/objects/roomTypeNames.d.ts +5 -0
  627. package/objects/roomTypeNames.lua +37 -0
  628. package/objects/serializedIsaacAPIClassTypeToIdentityFunction.d.ts +4 -0
  629. package/objects/serializedIsaacAPIClassTypeToIdentityFunction.lua +13 -0
  630. package/objects/stageTypeToLetter.d.ts +4 -0
  631. package/objects/stageTypeToLetter.lua +12 -0
  632. package/objects/transformationNames.d.ts +5 -0
  633. package/objects/transformationNames.lua +21 -0
  634. package/package.json +3 -4
  635. package/patchErrorFunctions.d.ts +1 -0
  636. package/patchErrorFunctions.lua +58 -0
  637. package/sets/LRoomShapesSet.d.ts +2 -0
  638. package/sets/LRoomShapesSet.lua +8 -0
  639. package/sets/bossSets.d.ts +4 -0
  640. package/sets/bossSets.lua +554 -0
  641. package/sets/charactersThatStartWithAnActiveItemSet.d.ts +2 -0
  642. package/sets/charactersThatStartWithAnActiveItemSet.lua +20 -0
  643. package/sets/charactersWithBlackHeartFromEternalHeartSet.d.ts +2 -0
  644. package/sets/charactersWithBlackHeartFromEternalHeartSet.lua +8 -0
  645. package/sets/charactersWithFreeDevilDealsSet.d.ts +2 -0
  646. package/sets/charactersWithFreeDevilDealsSet.lua +8 -0
  647. package/sets/charactersWithNoRedHeartsSet.d.ts +6 -0
  648. package/sets/charactersWithNoRedHeartsSet.lua +19 -0
  649. package/sets/charactersWithNoSoulHeartsSet.d.ts +6 -0
  650. package/sets/charactersWithNoSoulHeartsSet.lua +16 -0
  651. package/sets/chestPickupVariantsSet.d.ts +2 -0
  652. package/sets/chestPickupVariantsSet.lua +21 -0
  653. package/sets/familiarsThatShootPlayerTearsSet.d.ts +2 -0
  654. package/sets/familiarsThatShootPlayerTearsSet.lua +17 -0
  655. package/sets/lostStyleCharactersSet.d.ts +6 -0
  656. package/sets/lostStyleCharactersSet.lua +16 -0
  657. package/sets/mineShaftRoomSubTypesSet.d.ts +2 -0
  658. package/sets/mineShaftRoomSubTypesSet.lua +14 -0
  659. package/sets/redHeartSubTypesSet.d.ts +2 -0
  660. package/sets/redHeartSubTypesSet.lua +8 -0
  661. package/sets/sinEntityTypesSet.d.ts +2 -0
  662. package/sets/sinEntityTypesSet.lua +16 -0
  663. package/sets/singleUseActiveCollectibleTypesSet.d.ts +2 -0
  664. package/sets/singleUseActiveCollectibleTypesSet.lua +17 -0
  665. package/sets/storyBossesSet.d.ts +2 -0
  666. package/sets/storyBossesSet.lua +22 -0
  667. package/types/AnyEntity.d.ts +2 -0
  668. package/types/AnyEntity.lua +2 -0
  669. package/types/CollectibleIndex.d.ts +16 -0
  670. package/types/CollectibleIndex.lua +2 -0
  671. package/types/PickingUpItem.d.ts +34 -0
  672. package/types/PickingUpItem.lua +34 -0
  673. package/types/PlayerIndex.d.ts +16 -0
  674. package/types/PlayerIndex.lua +2 -0
  675. package/types/private/IsaacAPIClass.d.ts +4 -0
  676. package/types/private/IsaacAPIClass.lua +2 -0
  677. package/types/private/SerializedIsaacAPIClass.d.ts +4 -0
  678. package/types/private/SerializedIsaacAPIClass.lua +2 -0
  679. package/types/private/TSTLClass.d.ts +4 -0
  680. package/types/private/TSTLClass.lua +2 -0
  681. package/upgradeMod.d.ts +23 -0
  682. package/upgradeMod.lua +51 -0
  683. package/.eslintrc.js +0 -70
  684. package/build.sh +0 -27
  685. package/docs.sh +0 -21
  686. package/lint.sh +0 -34
  687. package/project.json +0 -37
  688. package/release.sh +0 -16
  689. package/scripts/.eslintrc.js +0 -21
  690. package/scripts/docsEntryPointLint.ts +0 -135
  691. package/scripts/tsconfig.json +0 -5
  692. package/src/cachedClasses.ts +0 -39
  693. package/src/callbacks/customRevive.ts +0 -206
  694. package/src/callbacks/itemPickup.ts +0 -101
  695. package/src/callbacks/postBombInitLate.ts +0 -36
  696. package/src/callbacks/postBoneSwing.ts +0 -64
  697. package/src/callbacks/postCollectibleInitFirst.ts +0 -39
  698. package/src/callbacks/postCursedTeleport.ts +0 -183
  699. package/src/callbacks/postCustomDoorEnter.ts +0 -297
  700. package/src/callbacks/postDoorRender.ts +0 -26
  701. package/src/callbacks/postDoorUpdate.ts +0 -26
  702. package/src/callbacks/postEffectInitLate.ts +0 -36
  703. package/src/callbacks/postEffectStateChanged.ts +0 -43
  704. package/src/callbacks/postEsauJr.ts +0 -107
  705. package/src/callbacks/postFamiliarInitLate.ts +0 -36
  706. package/src/callbacks/postFamiliarStateChanged.ts +0 -43
  707. package/src/callbacks/postFlip.ts +0 -88
  708. package/src/callbacks/postGreedModeWave.ts +0 -41
  709. package/src/callbacks/postGridEntity.ts +0 -159
  710. package/src/callbacks/postGridEntityCollision.ts +0 -69
  711. package/src/callbacks/postGridEntityRender.ts +0 -26
  712. package/src/callbacks/postHolyMantleRemoved.ts +0 -55
  713. package/src/callbacks/postItemDischarged.ts +0 -149
  714. package/src/callbacks/postKnifeInitLate.ts +0 -36
  715. package/src/callbacks/postLaserInitLate.ts +0 -36
  716. package/src/callbacks/postNPCInitLate.ts +0 -36
  717. package/src/callbacks/postNPCStateChanged.ts +0 -42
  718. package/src/callbacks/postNewRoomEarly.ts +0 -90
  719. package/src/callbacks/postPickupCollect.ts +0 -48
  720. package/src/callbacks/postPickupInitLate.ts +0 -36
  721. package/src/callbacks/postPickupStateChanged.ts +0 -43
  722. package/src/callbacks/postPitRender.ts +0 -26
  723. package/src/callbacks/postPitUpdate.ts +0 -26
  724. package/src/callbacks/postPlayerChangeHealth.ts +0 -62
  725. package/src/callbacks/postPlayerChangeType.ts +0 -56
  726. package/src/callbacks/postPlayerFatalDamage.ts +0 -98
  727. package/src/callbacks/postPlayerInitLate.ts +0 -37
  728. package/src/callbacks/postPlayerReordered.ts +0 -142
  729. package/src/callbacks/postPoopRender.ts +0 -26
  730. package/src/callbacks/postPoopUpdate.ts +0 -26
  731. package/src/callbacks/postPressurePlateRender.ts +0 -26
  732. package/src/callbacks/postPressurePlateUpdate.ts +0 -26
  733. package/src/callbacks/postProjectileInitLate.ts +0 -36
  734. package/src/callbacks/postPurchase.ts +0 -64
  735. package/src/callbacks/postRockRender.ts +0 -26
  736. package/src/callbacks/postRockUpdate.ts +0 -26
  737. package/src/callbacks/postRoomClearChanged.ts +0 -52
  738. package/src/callbacks/postSacrifice.ts +0 -62
  739. package/src/callbacks/postSlotInitUpdate.ts +0 -63
  740. package/src/callbacks/postSlotRender.ts +0 -96
  741. package/src/callbacks/postSpikesRender.ts +0 -26
  742. package/src/callbacks/postSpikesUpdate.ts +0 -26
  743. package/src/callbacks/postTNTRender.ts +0 -26
  744. package/src/callbacks/postTNTUpdate.ts +0 -26
  745. package/src/callbacks/postTearInitLate.ts +0 -36
  746. package/src/callbacks/postTearInitVeryLate.ts +0 -41
  747. package/src/callbacks/postTransformation.ts +0 -59
  748. package/src/callbacks/postTrinketBreak.ts +0 -110
  749. package/src/callbacks/preBerserkDeath.ts +0 -49
  750. package/src/callbacks/preNewLevel.ts +0 -55
  751. package/src/callbacks/reorderedCallbacks.ts +0 -166
  752. package/src/callbacks/subscriptions/postBombInitLate.ts +0 -32
  753. package/src/callbacks/subscriptions/postBoneSwing.ts +0 -24
  754. package/src/callbacks/subscriptions/postCollectibleInitFirst.ts +0 -37
  755. package/src/callbacks/subscriptions/postCursedTeleport.ts +0 -24
  756. package/src/callbacks/subscriptions/postCustomDoorEnter.ts +0 -45
  757. package/src/callbacks/subscriptions/postCustomRevive.ts +0 -36
  758. package/src/callbacks/subscriptions/postDoorRender.ts +0 -35
  759. package/src/callbacks/subscriptions/postDoorUpdate.ts +0 -35
  760. package/src/callbacks/subscriptions/postEffectInitLate.ts +0 -32
  761. package/src/callbacks/subscriptions/postEffectStateChanged.ts +0 -40
  762. package/src/callbacks/subscriptions/postEsauJr.ts +0 -24
  763. package/src/callbacks/subscriptions/postFamiliarInitLate.ts +0 -32
  764. package/src/callbacks/subscriptions/postFamiliarStateChanged.ts +0 -40
  765. package/src/callbacks/subscriptions/postFirstEsauJr.ts +0 -24
  766. package/src/callbacks/subscriptions/postFirstFlip.ts +0 -24
  767. package/src/callbacks/subscriptions/postFlip.ts +0 -22
  768. package/src/callbacks/subscriptions/postGameStartedReordered.ts +0 -24
  769. package/src/callbacks/subscriptions/postGreedModeWave.ts +0 -24
  770. package/src/callbacks/subscriptions/postGridEntityBroken.ts +0 -51
  771. package/src/callbacks/subscriptions/postGridEntityCollision.ts +0 -54
  772. package/src/callbacks/subscriptions/postGridEntityInit.ts +0 -51
  773. package/src/callbacks/subscriptions/postGridEntityRemove.ts +0 -52
  774. package/src/callbacks/subscriptions/postGridEntityRender.ts +0 -51
  775. package/src/callbacks/subscriptions/postGridEntityStateChanged.ts +0 -55
  776. package/src/callbacks/subscriptions/postGridEntityUpdate.ts +0 -51
  777. package/src/callbacks/subscriptions/postHolyMantleRemoved.ts +0 -48
  778. package/src/callbacks/subscriptions/postItemDischarged.ts +0 -43
  779. package/src/callbacks/subscriptions/postItemPickup.ts +0 -64
  780. package/src/callbacks/subscriptions/postKnifeInitLate.ts +0 -32
  781. package/src/callbacks/subscriptions/postLaserInitLate.ts +0 -32
  782. package/src/callbacks/subscriptions/postNPCInitLate.ts +0 -32
  783. package/src/callbacks/subscriptions/postNPCStateChanged.ts +0 -42
  784. package/src/callbacks/subscriptions/postNewLevelReordered.ts +0 -22
  785. package/src/callbacks/subscriptions/postNewRoomEarly.ts +0 -22
  786. package/src/callbacks/subscriptions/postNewRoomReordered.ts +0 -22
  787. package/src/callbacks/subscriptions/postPEffectUpdateReordered.ts +0 -40
  788. package/src/callbacks/subscriptions/postPickupCollect.ts +0 -34
  789. package/src/callbacks/subscriptions/postPickupInitLate.ts +0 -31
  790. package/src/callbacks/subscriptions/postPickupStateChanged.ts +0 -35
  791. package/src/callbacks/subscriptions/postPitRender.ts +0 -35
  792. package/src/callbacks/subscriptions/postPitUpdate.ts +0 -35
  793. package/src/callbacks/subscriptions/postPlayerChangeHealth.ts +0 -45
  794. package/src/callbacks/subscriptions/postPlayerChangeType.ts +0 -40
  795. package/src/callbacks/subscriptions/postPlayerFatalDamage.ts +0 -67
  796. package/src/callbacks/subscriptions/postPlayerInitLate.ts +0 -40
  797. package/src/callbacks/subscriptions/postPlayerInitReordered.ts +0 -40
  798. package/src/callbacks/subscriptions/postPlayerRenderReordered.ts +0 -40
  799. package/src/callbacks/subscriptions/postPlayerUpdateReordered.ts +0 -40
  800. package/src/callbacks/subscriptions/postPoopRender.ts +0 -35
  801. package/src/callbacks/subscriptions/postPoopUpdate.ts +0 -35
  802. package/src/callbacks/subscriptions/postPressurePlateRender.ts +0 -37
  803. package/src/callbacks/subscriptions/postPressurePlateUpdate.ts +0 -37
  804. package/src/callbacks/subscriptions/postProjectileInitLate.ts +0 -35
  805. package/src/callbacks/subscriptions/postPurchase.ts +0 -31
  806. package/src/callbacks/subscriptions/postRockRender.ts +0 -35
  807. package/src/callbacks/subscriptions/postRockUpdate.ts +0 -35
  808. package/src/callbacks/subscriptions/postRoomClearChanged.ts +0 -24
  809. package/src/callbacks/subscriptions/postSacrifice.ts +0 -43
  810. package/src/callbacks/subscriptions/postSlotAnimationChanged.ts +0 -40
  811. package/src/callbacks/subscriptions/postSlotDestroyed.ts +0 -32
  812. package/src/callbacks/subscriptions/postSlotInit.ts +0 -32
  813. package/src/callbacks/subscriptions/postSlotRender.ts +0 -32
  814. package/src/callbacks/subscriptions/postSlotUpdate.ts +0 -32
  815. package/src/callbacks/subscriptions/postSpikesRender.ts +0 -35
  816. package/src/callbacks/subscriptions/postSpikesUpdate.ts +0 -35
  817. package/src/callbacks/subscriptions/postTNTRender.ts +0 -35
  818. package/src/callbacks/subscriptions/postTNTUpdate.ts +0 -35
  819. package/src/callbacks/subscriptions/postTearInitLate.ts +0 -32
  820. package/src/callbacks/subscriptions/postTearInitVeryLate.ts +0 -32
  821. package/src/callbacks/subscriptions/postTransformation.ts +0 -40
  822. package/src/callbacks/subscriptions/postTrinketBreak.ts +0 -38
  823. package/src/callbacks/subscriptions/preBerserkDeath.ts +0 -42
  824. package/src/callbacks/subscriptions/preCustomRevive.ts +0 -45
  825. package/src/callbacks/subscriptions/preItemPickup.ts +0 -64
  826. package/src/callbacks/subscriptions/preNewLevel.ts +0 -24
  827. package/src/classes/DefaultMap.ts +0 -220
  828. package/src/classes/ModUpgraded.ts +0 -83
  829. package/src/constants.ts +0 -140
  830. package/src/constantsFirstLast.ts +0 -212
  831. package/src/enums/HealthType.ts +0 -16
  832. package/src/enums/ModCallbackCustom.ts +0 -943
  833. package/src/enums/PocketItemType.ts +0 -8
  834. package/src/enums/SerializationType.ts +0 -5
  835. package/src/enums/private/CopyableIsaacAPIClassType.ts +0 -7
  836. package/src/enums/private/SaveDataKey.ts +0 -14
  837. package/src/enums/private/SerializationBrand.ts +0 -42
  838. package/src/features/characterHealthConversion.ts +0 -116
  839. package/src/features/characterStats.ts +0 -61
  840. package/src/features/debugDisplay/debugDisplay.ts +0 -221
  841. package/src/features/debugDisplay/exports.ts +0 -368
  842. package/src/features/debugDisplay/v.ts +0 -65
  843. package/src/features/deployJSONRoom.ts +0 -672
  844. package/src/features/disableInputs.ts +0 -193
  845. package/src/features/disableSound.ts +0 -77
  846. package/src/features/extraConsoleCommands/commandsDisplay.ts +0 -290
  847. package/src/features/extraConsoleCommands/commandsSubroutines.ts +0 -139
  848. package/src/features/extraConsoleCommands/init.ts +0 -334
  849. package/src/features/extraConsoleCommands/listCommands.ts +0 -1298
  850. package/src/features/extraConsoleCommands/v.ts +0 -14
  851. package/src/features/fadeInRemover.ts +0 -60
  852. package/src/features/fastReset.ts +0 -75
  853. package/src/features/forgottenSwitch.ts +0 -50
  854. package/src/features/getCollectibleItemPoolType.ts +0 -66
  855. package/src/features/playerInventory.ts +0 -187
  856. package/src/features/ponyDetection.ts +0 -74
  857. package/src/features/preventCollectibleRotation.ts +0 -113
  858. package/src/features/runInNFrames.ts +0 -148
  859. package/src/features/saveDataManager/constants.ts +0 -4
  860. package/src/features/saveDataManager/exports.ts +0 -230
  861. package/src/features/saveDataManager/load.ts +0 -90
  862. package/src/features/saveDataManager/main.ts +0 -187
  863. package/src/features/saveDataManager/maps.ts +0 -13
  864. package/src/features/saveDataManager/merge.ts +0 -182
  865. package/src/features/saveDataManager/save.ts +0 -66
  866. package/src/features/saveDataManager/serializationBrand.ts +0 -15
  867. package/src/features/sirenHelpers.ts +0 -129
  868. package/src/features/taintedLazarusPlayers.ts +0 -113
  869. package/src/featuresInitialized.ts +0 -20
  870. package/src/functions/array.ts +0 -412
  871. package/src/functions/benchmark.ts +0 -36
  872. package/src/functions/bitwise.ts +0 -24
  873. package/src/functions/boss.ts +0 -227
  874. package/src/functions/cacheFlag.ts +0 -12
  875. package/src/functions/cards.ts +0 -267
  876. package/src/functions/challenges.ts +0 -11
  877. package/src/functions/character.ts +0 -124
  878. package/src/functions/charge.ts +0 -237
  879. package/src/functions/chargeBar.ts +0 -67
  880. package/src/functions/collectibleCacheFlag.ts +0 -90
  881. package/src/functions/collectibleSet.ts +0 -57
  882. package/src/functions/collectibleTag.ts +0 -89
  883. package/src/functions/collectibles.ts +0 -610
  884. package/src/functions/color.ts +0 -149
  885. package/src/functions/debug.ts +0 -65
  886. package/src/functions/deepCopy.ts +0 -508
  887. package/src/functions/deepCopyTests.ts +0 -390
  888. package/src/functions/direction.ts +0 -16
  889. package/src/functions/doors.ts +0 -343
  890. package/src/functions/easing.ts +0 -182
  891. package/src/functions/eden.ts +0 -47
  892. package/src/functions/entity.ts +0 -352
  893. package/src/functions/entitySpecific.ts +0 -889
  894. package/src/functions/entityTypes.ts +0 -6
  895. package/src/functions/enums.ts +0 -145
  896. package/src/functions/familiars.ts +0 -106
  897. package/src/functions/flag.ts +0 -165
  898. package/src/functions/flying.ts +0 -117
  899. package/src/functions/globals.ts +0 -249
  900. package/src/functions/gridEntity.ts +0 -511
  901. package/src/functions/gridEntitySpecific.ts +0 -112
  902. package/src/functions/input.ts +0 -139
  903. package/src/functions/isaacAPIClass.ts +0 -65
  904. package/src/functions/jsonHelpers.ts +0 -45
  905. package/src/functions/jsonRoom.ts +0 -100
  906. package/src/functions/kColor.ts +0 -130
  907. package/src/functions/language.ts +0 -13
  908. package/src/functions/level.ts +0 -31
  909. package/src/functions/log.ts +0 -660
  910. package/src/functions/map.ts +0 -56
  911. package/src/functions/math.ts +0 -149
  912. package/src/functions/mergeTests.ts +0 -288
  913. package/src/functions/npc.ts +0 -148
  914. package/src/functions/pickupVariants.ts +0 -60
  915. package/src/functions/pickups.ts +0 -449
  916. package/src/functions/pills.ts +0 -182
  917. package/src/functions/player.ts +0 -975
  918. package/src/functions/playerDataStructures.ts +0 -150
  919. package/src/functions/playerHealth.ts +0 -318
  920. package/src/functions/playerIndex.ts +0 -195
  921. package/src/functions/pocketItems.ts +0 -149
  922. package/src/functions/positionVelocity.ts +0 -188
  923. package/src/functions/random.ts +0 -77
  924. package/src/functions/revive.ts +0 -201
  925. package/src/functions/rng.ts +0 -177
  926. package/src/functions/roomData.ts +0 -199
  927. package/src/functions/roomGrid.ts +0 -109
  928. package/src/functions/roomShape.ts +0 -80
  929. package/src/functions/rooms.ts +0 -667
  930. package/src/functions/run.ts +0 -36
  931. package/src/functions/seeds.ts +0 -19
  932. package/src/functions/serialization.ts +0 -97
  933. package/src/functions/set.ts +0 -95
  934. package/src/functions/sound.ts +0 -9
  935. package/src/functions/spawnCollectible.ts +0 -104
  936. package/src/functions/sprite.ts +0 -107
  937. package/src/functions/stage.ts +0 -125
  938. package/src/functions/string.ts +0 -47
  939. package/src/functions/table.ts +0 -139
  940. package/src/functions/tears.ts +0 -32
  941. package/src/functions/transformations.ts +0 -137
  942. package/src/functions/trinketCacheFlag.ts +0 -60
  943. package/src/functions/trinketGive.ts +0 -157
  944. package/src/functions/trinkets.ts +0 -215
  945. package/src/functions/tstlClass.ts +0 -91
  946. package/src/functions/ui.ts +0 -138
  947. package/src/functions/utils.ts +0 -200
  948. package/src/functions/vector.ts +0 -145
  949. package/src/index.ts +0 -162
  950. package/src/initCustomCallbacks.ts +0 -120
  951. package/src/initFeatures.ts +0 -37
  952. package/src/interfaces/AddCallbackParameterCustom.ts +0 -174
  953. package/src/interfaces/ChargeBarSprites.ts +0 -12
  954. package/src/interfaces/JSONDoor.ts +0 -13
  955. package/src/interfaces/JSONEntity.ts +0 -16
  956. package/src/interfaces/JSONRoom.ts +0 -36
  957. package/src/interfaces/JSONRooms.ts +0 -12
  958. package/src/interfaces/JSONSpawn.ts +0 -14
  959. package/src/interfaces/PlayerHealth.ts +0 -16
  960. package/src/interfaces/PocketItemDescription.ts +0 -9
  961. package/src/interfaces/SaveData.ts +0 -29
  962. package/src/interfaces/TrinketSituation.ts +0 -9
  963. package/src/interfaces/private/TSTLClassMetatable.ts +0 -8
  964. package/src/maps/cardMap.ts +0 -209
  965. package/src/maps/characterMap.ts +0 -87
  966. package/src/maps/collectibleDescriptionMap.ts +0 -732
  967. package/src/maps/collectibleNameMap.ts +0 -731
  968. package/src/maps/defaultPlayerStatMap.ts +0 -17
  969. package/src/maps/gridEntityTypeToBrokenStateMap.ts +0 -50
  970. package/src/maps/gridEntityXMLMap.ts +0 -176
  971. package/src/maps/pillEffectMap.ts +0 -88
  972. package/src/maps/roomShapeToTopLeftWallGridIndexMap.ts +0 -18
  973. package/src/maps/roomTypeMap.ts +0 -40
  974. package/src/maps/trinketDescriptionMap.ts +0 -200
  975. package/src/maps/trinketNameMap.ts +0 -198
  976. package/src/objects/LRoomShapeToRectangles.ts +0 -44
  977. package/src/objects/callbackRegisterFunctions.ts +0 -171
  978. package/src/objects/cardDescriptions.ts +0 -105
  979. package/src/objects/cardNames.ts +0 -105
  980. package/src/objects/cardTypes.ts +0 -104
  981. package/src/objects/challengeNames.ts +0 -52
  982. package/src/objects/characterNames.ts +0 -48
  983. package/src/objects/coinSubTypeToValue.ts +0 -14
  984. package/src/objects/colors.ts +0 -16
  985. package/src/objects/directionNames.ts +0 -11
  986. package/src/objects/directionToDegrees.ts +0 -11
  987. package/src/objects/directionToVector.ts +0 -12
  988. package/src/objects/doorSlotFlagToDoorSlot.ts +0 -16
  989. package/src/objects/doorSlotToDirection.ts +0 -14
  990. package/src/objects/isaacAPIClassTypeToBrand.ts +0 -11
  991. package/src/objects/isaacAPIClassTypeToCopyFunction.ts +0 -18
  992. package/src/objects/languageNames.ts +0 -13
  993. package/src/objects/pillEffectClasses.ts +0 -63
  994. package/src/objects/pillEffectNames.ts +0 -57
  995. package/src/objects/pillEffectTypes.ts +0 -62
  996. package/src/objects/roomShapeBounds.ts +0 -71
  997. package/src/objects/roomShapeLayoutSizes.ts +0 -45
  998. package/src/objects/roomShapeToBottomRightPosition.ts +0 -25
  999. package/src/objects/roomShapeToDoorSlots.ts +0 -83
  1000. package/src/objects/roomShapeToDoorSlotsToGridIndexDelta.ts +0 -127
  1001. package/src/objects/roomShapeToGridWidth.ts +0 -21
  1002. package/src/objects/roomShapeToTopLeftPosition.ts +0 -26
  1003. package/src/objects/roomShapeVolumes.ts +0 -38
  1004. package/src/objects/roomTypeNames.ts +0 -36
  1005. package/src/objects/serializedIsaacAPIClassTypeToIdentityFunction.ts +0 -14
  1006. package/src/objects/stageTypeToLetter.ts +0 -15
  1007. package/src/objects/transformationNames.ts +0 -20
  1008. package/src/patchErrorFunctions.ts +0 -92
  1009. package/src/sets/LRoomShapesSet.ts +0 -8
  1010. package/src/sets/bossSets.ts +0 -470
  1011. package/src/sets/charactersThatStartWithAnActiveItemSet.ts +0 -16
  1012. package/src/sets/charactersWithBlackHeartFromEternalHeartSet.ts +0 -7
  1013. package/src/sets/charactersWithFreeDevilDealsSet.ts +0 -4
  1014. package/src/sets/charactersWithNoRedHeartsSet.ts +0 -17
  1015. package/src/sets/charactersWithNoSoulHeartsSet.ts +0 -14
  1016. package/src/sets/chestPickupVariantsSet.ts +0 -16
  1017. package/src/sets/familiarsThatShootPlayerTearsSet.ts +0 -13
  1018. package/src/sets/lostStyleCharactersSet.ts +0 -13
  1019. package/src/sets/mineShaftRoomSubTypesSet.ts +0 -10
  1020. package/src/sets/redHeartSubTypesSet.ts +0 -7
  1021. package/src/sets/sinEntityTypesSet.ts +0 -11
  1022. package/src/sets/singleUseActiveCollectibleTypesSet.ts +0 -13
  1023. package/src/sets/storyBossesSet.ts +0 -17
  1024. package/src/types/AnyEntity.ts +0 -12
  1025. package/src/types/AwaitingTextInput.d.ts +0 -2
  1026. package/src/types/CollectibleIndex.ts +0 -14
  1027. package/src/types/PickingUpItem.ts +0 -89
  1028. package/src/types/PlayerIndex.ts +0 -13
  1029. package/src/types/private/IsaacAPIClass.ts +0 -3
  1030. package/src/types/private/SerializedIsaacAPIClass.ts +0 -3
  1031. package/src/types/private/TSTLClass.ts +0 -3
  1032. package/src/upgradeMod.ts +0 -55
  1033. package/tsconfig.json +0 -42
  1034. package/typedoc.json +0 -158
  1035. package/website-root.md +0 -11
@@ -0,0 +1,547 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local Set = ____lualib.Set
3
+ local __TS__New = ____lualib.__TS__New
4
+ local __TS__ArrayForEach = ____lualib.__TS__ArrayForEach
5
+ local Map = ____lualib.Map
6
+ local __TS__Spread = ____lualib.__TS__Spread
7
+ local __TS__ArraySort = ____lualib.__TS__ArraySort
8
+ local ____exports = {}
9
+ local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
10
+ local DamageFlag = ____isaac_2Dtypescript_2Ddefinitions.DamageFlag
11
+ local EffectVariant = ____isaac_2Dtypescript_2Ddefinitions.EffectVariant
12
+ local EntityFlag = ____isaac_2Dtypescript_2Ddefinitions.EntityFlag
13
+ local GameStateFlag = ____isaac_2Dtypescript_2Ddefinitions.GameStateFlag
14
+ local GridEntityType = ____isaac_2Dtypescript_2Ddefinitions.GridEntityType
15
+ local LevelStateFlag = ____isaac_2Dtypescript_2Ddefinitions.LevelStateFlag
16
+ local ProjectileFlag = ____isaac_2Dtypescript_2Ddefinitions.ProjectileFlag
17
+ local SeedEffect = ____isaac_2Dtypescript_2Ddefinitions.SeedEffect
18
+ local SoundEffect = ____isaac_2Dtypescript_2Ddefinitions.SoundEffect
19
+ local TearFlag = ____isaac_2Dtypescript_2Ddefinitions.TearFlag
20
+ local UseFlag = ____isaac_2Dtypescript_2Ddefinitions.UseFlag
21
+ local ____cachedClasses = require("cachedClasses")
22
+ local game = ____cachedClasses.game
23
+ local sfxManager = ____cachedClasses.sfxManager
24
+ local ____array = require("functions.array")
25
+ local arrayToString = ____array.arrayToString
26
+ local ____collectibles = require("functions.collectibles")
27
+ local getCollectibleName = ____collectibles.getCollectibleName
28
+ local ____entity = require("functions.entity")
29
+ local getEntities = ____entity.getEntities
30
+ local getEntityID = ____entity.getEntityID
31
+ local ____enums = require("functions.enums")
32
+ local getEnumEntries = ____enums.getEnumEntries
33
+ local ____flag = require("functions.flag")
34
+ local hasFlag = ____flag.hasFlag
35
+ local ____gridEntity = require("functions.gridEntity")
36
+ local getGridEntities = ____gridEntity.getGridEntities
37
+ local ____isaacAPIClass = require("functions.isaacAPIClass")
38
+ local getIsaacAPIClassType = ____isaacAPIClass.getIsaacAPIClassType
39
+ local ____player = require("functions.player")
40
+ local getEffectsList = ____player.getEffectsList
41
+ local getPlayerName = ____player.getPlayerName
42
+ local ____playerHealth = require("functions.playerHealth")
43
+ local getPlayerHealth = ____playerHealth.getPlayerHealth
44
+ local ____roomData = require("functions.roomData")
45
+ local getRoomData = ____roomData.getRoomData
46
+ local getRoomGridIndex = ____roomData.getRoomGridIndex
47
+ local getRoomListIndex = ____roomData.getRoomListIndex
48
+ local ____set = require("functions.set")
49
+ local getSortedSetValues = ____set.getSortedSetValues
50
+ local ____trinkets = require("functions.trinkets")
51
+ local getTrinketName = ____trinkets.getTrinketName
52
+ local ____utils = require("functions.utils")
53
+ local printConsole = ____utils.printConsole
54
+ local ____vector = require("functions.vector")
55
+ local vectorToString = ____vector.vectorToString
56
+ --- Helper function to prefix the name of the function and the line number before a debug message.
57
+ function ____exports.getDebugPrependString(self, msg, numParentFunctions)
58
+ if numParentFunctions == nil then
59
+ numParentFunctions = 3
60
+ end
61
+ if debug ~= nil then
62
+ local debugTable = debug.getinfo(numParentFunctions)
63
+ if debugTable ~= nil then
64
+ return (((tostring(debugTable.name) .. ":") .. tostring(debugTable.linedefined)) .. " - ") .. msg
65
+ end
66
+ end
67
+ if getParentFunctionDescription ~= nil then
68
+ return (tostring(getParentFunctionDescription(numParentFunctions + 1)) .. " - ") .. msg
69
+ end
70
+ return msg
71
+ end
72
+ --- Helper function to avoid typing out `Isaac.DebugString()`.
73
+ --
74
+ -- If you have the "--luadebug" launch flag turned on or the Racing+ sandbox enabled, then this
75
+ -- function will also prepend the function name and the line number before the string.
76
+ function ____exports.log(msg)
77
+ local debugMsg = ____exports.getDebugPrependString(nil, msg)
78
+ Isaac.DebugString(debugMsg)
79
+ end
80
+ --- Helper function for printing out every flag that is turned on. Useful when debugging.
81
+ function ____exports.logFlags(flags, flagEnum, description)
82
+ if description == nil then
83
+ description = ""
84
+ end
85
+ if description ~= "" then
86
+ description = "flag"
87
+ end
88
+ ____exports.log((("Logging " .. description) .. " values for: ") .. tostring(flags))
89
+ local hasNoFlags = true
90
+ for ____, ____value in ipairs(getEnumEntries(nil, flagEnum)) do
91
+ local key = ____value[1]
92
+ local value = ____value[2]
93
+ if hasFlag(nil, flags, value) then
94
+ ____exports.log((((" Has flag: " .. key) .. " (") .. tostring(value)) .. ")")
95
+ hasNoFlags = false
96
+ end
97
+ end
98
+ if hasNoFlags then
99
+ ____exports.log(" n/a (no flags)")
100
+ end
101
+ end
102
+ local IGNORE_EFFECT_VARIANTS = __TS__New(Set, {
103
+ EffectVariant.BLOOD_EXPLOSION,
104
+ EffectVariant.BLOOD_PARTICLE,
105
+ EffectVariant.TINY_BUG,
106
+ EffectVariant.TINY_FLY,
107
+ EffectVariant.WATER_DROPLET,
108
+ EffectVariant.WALL_BUG,
109
+ EffectVariant.FALLING_EMBER,
110
+ EffectVariant.LIGHT,
111
+ EffectVariant.TADPOLE
112
+ })
113
+ function ____exports.logArray(array)
114
+ local arrayString = arrayToString(nil, array)
115
+ ____exports.log("Array: " .. arrayString)
116
+ end
117
+ function ____exports.logColor(color)
118
+ ____exports.log((((((((((((("Color: R" .. tostring(color.R)) .. ", G") .. tostring(color.G)) .. ", B") .. tostring(color.B)) .. ", A") .. tostring(color.A)) .. ", RO") .. tostring(color.RO)) .. ", BO") .. tostring(color.BO)) .. ", GO") .. tostring(color.GO))
119
+ end
120
+ --- Helper function for printing out every damage flag that is turned on. Useful when debugging.
121
+ function ____exports.logDamageFlags(flags)
122
+ ____exports.logFlags(flags, DamageFlag, "damage")
123
+ end
124
+ function ____exports.logEffects(player)
125
+ local effects = getEffectsList(nil, player)
126
+ ____exports.log("Logging player effects:")
127
+ if #effects == 0 then
128
+ ____exports.log(" n/a (no effects)")
129
+ return
130
+ end
131
+ __TS__ArrayForEach(
132
+ effects,
133
+ function(____, effect, i)
134
+ local effectDescription
135
+ if effect.Item:IsCollectible() then
136
+ local collectibleName = getCollectibleName(nil, effect.Item.ID)
137
+ effectDescription = "Collectible: " .. collectibleName
138
+ elseif effect.Item:IsTrinket() then
139
+ local trinketName = getTrinketName(nil, effect.Item.ID)
140
+ effectDescription = "Trinket: " .. trinketName
141
+ elseif effect.Item:IsNull() then
142
+ effectDescription = "Null item: " .. tostring(effect.Item.ID)
143
+ else
144
+ effectDescription = "Unknown type of effect: " .. tostring(effect.Item.ID)
145
+ end
146
+ ____exports.log((((((" " .. tostring(i + 1)) .. ") ") .. effectDescription) .. " (x") .. tostring(effect.Count)) .. ")")
147
+ end
148
+ )
149
+ end
150
+ --- Helper function for printing out every entity (or filtered entity) in the current room.
151
+ function ____exports.logEntities(includeBackgroundEffects, entityTypeFilter)
152
+ local msg = "Entities in the room"
153
+ if entityTypeFilter ~= nil then
154
+ msg = msg .. (" (filtered to entity type " .. tostring(entityTypeFilter)) .. ")"
155
+ elseif not includeBackgroundEffects then
156
+ msg = msg .. " (not including background effects)"
157
+ end
158
+ msg = msg .. ":\n"
159
+ local entities = getEntities(nil)
160
+ local numMatchedEntities = 0
161
+ __TS__ArrayForEach(
162
+ entities,
163
+ function(____, entity, i)
164
+ if entityTypeFilter ~= nil and entity.Type ~= entityTypeFilter then
165
+ return
166
+ end
167
+ local effect = entity:ToEffect()
168
+ if not includeBackgroundEffects and effect ~= nil and IGNORE_EFFECT_VARIANTS:has(effect.Variant) then
169
+ return
170
+ end
171
+ local entityID = getEntityID(nil, entity)
172
+ msg = msg .. (tostring(i + 1) .. ") ") .. entityID
173
+ local bomb = entity:ToBomb()
174
+ if bomb ~= nil then
175
+ msg = msg .. " (bomb)"
176
+ end
177
+ if effect ~= nil then
178
+ msg = msg .. (" (effect) (State: " .. tostring(effect.State)) .. ")"
179
+ end
180
+ local familiar = entity:ToFamiliar()
181
+ if familiar ~= nil then
182
+ msg = msg .. (" (familiar) (State: " .. tostring(familiar.State)) .. ")"
183
+ end
184
+ local knife = entity:ToKnife()
185
+ if knife ~= nil then
186
+ msg = msg .. " (knife)"
187
+ end
188
+ local laser = entity:ToLaser()
189
+ if laser ~= nil then
190
+ msg = msg .. " (laser)"
191
+ end
192
+ local npc = entity:ToNPC()
193
+ if npc ~= nil then
194
+ msg = msg .. (" (NPC) (State: " .. tostring(npc.State)) .. ")"
195
+ end
196
+ local pickup = entity:ToPickup()
197
+ if pickup ~= nil then
198
+ msg = msg .. (" (pickup) (State: " .. tostring(pickup.State)) .. ")"
199
+ end
200
+ local player = entity:ToPlayer()
201
+ if player ~= nil then
202
+ msg = msg .. " (player)"
203
+ end
204
+ local projectile = entity:ToProjectile()
205
+ if projectile ~= nil then
206
+ msg = msg .. " (projectile)"
207
+ end
208
+ local tear = entity:ToTear()
209
+ if tear ~= nil then
210
+ msg = msg .. " (tear)"
211
+ end
212
+ msg = msg .. "\n"
213
+ msg = msg .. (" - Index: " .. tostring(entity.Index)) .. "\n"
214
+ msg = msg .. (" - InitSeed: " .. tostring(entity.InitSeed)) .. "\n"
215
+ msg = msg .. (" - DropSeed: " .. tostring(entity.DropSeed)) .. "\n"
216
+ msg = msg .. (((" - Position: (" .. tostring(entity.Position.X)) .. ", ") .. tostring(entity.Position.Y)) .. ")\n"
217
+ msg = msg .. (((" - Velocity: (" .. tostring(entity.Velocity.X)) .. ", ") .. tostring(entity.Velocity.Y)) .. ")\n"
218
+ msg = msg .. (((" - HP: " .. tostring(entity.HitPoints)) .. " / ") .. tostring(entity.MaxHitPoints)) .. "\n"
219
+ msg = msg .. (" - Parent: " .. tostring(entity.Parent)) .. "\n"
220
+ msg = msg .. (" - Child: " .. tostring(entity.Child)) .. "\n"
221
+ msg = msg .. (" - SpawnerEntity: " .. tostring(entity.SpawnerEntity)) .. "\n"
222
+ msg = msg .. (((" - SpawnerType / SpawnerVariant: " .. tostring(entity.SpawnerType)) .. ".") .. tostring(entity.SpawnerVariant)) .. "\n"
223
+ if npc ~= nil then
224
+ msg = msg .. (" - CanShutDoors: " .. tostring(npc.CanShutDoors)) .. "\n"
225
+ end
226
+ numMatchedEntities = numMatchedEntities + 1
227
+ end
228
+ )
229
+ if numMatchedEntities == 0 then
230
+ msg = msg .. "(no entities matched)\n"
231
+ else
232
+ msg = msg .. ("(" .. tostring(numMatchedEntities)) .. " total entities)\n"
233
+ end
234
+ ____exports.log(msg)
235
+ end
236
+ --- Helper function for printing out every entity flag that is turned on. Useful when debugging.
237
+ function ____exports.logEntityFlags(flags)
238
+ ____exports.logFlags(flags, EntityFlag, "entity")
239
+ end
240
+ function ____exports.logEntityID(entity)
241
+ ____exports.log((((("Entity: " .. tostring(entity.Type)) .. ".") .. tostring(entity.Variant)) .. ".") .. tostring(entity.SubType))
242
+ end
243
+ --- Helper function to log an error message and also print it to the console for better visibility.
244
+ --
245
+ -- This is useful in situations where using the `error` function would be dangerous (since it
246
+ -- prevents all of the subsequent code in the callback from running).
247
+ function ____exports.logError(msg)
248
+ local errorMsg = "Error: " .. msg
249
+ ____exports.log(errorMsg)
250
+ printConsole(nil, errorMsg)
251
+ end
252
+ --- Helper function for printing out every game state flag that is turned on. Useful when debugging.
253
+ function ____exports.logGameStateFlags()
254
+ ____exports.log("Logging game state flags:")
255
+ local gameStateFlagEntries = getEnumEntries(nil, GameStateFlag)
256
+ local hasNoFlags = true
257
+ for ____, ____value in ipairs(gameStateFlagEntries) do
258
+ local key = ____value[1]
259
+ local gameStateFlag = ____value[2]
260
+ local flagValue = game:GetStateFlag(gameStateFlag)
261
+ if flagValue then
262
+ ____exports.log((((" Has flag: " .. key) .. " (") .. tostring(gameStateFlag)) .. ")")
263
+ hasNoFlags = false
264
+ end
265
+ end
266
+ if hasNoFlags then
267
+ ____exports.log(" n/a (no flags)")
268
+ end
269
+ end
270
+ --- Helper function for printing out every grid entity (or filtered grid entity) in the current room.
271
+ function ____exports.logGridEntities(includeWalls, gridEntityTypeFilter)
272
+ local msg = "Grid entities in the room"
273
+ if gridEntityTypeFilter ~= nil then
274
+ msg = msg .. (" (filtered to grid entity type " .. tostring(gridEntityTypeFilter)) .. ")"
275
+ elseif not includeWalls then
276
+ msg = msg .. " (not including walls)"
277
+ end
278
+ msg = msg .. ":\n"
279
+ local gridEntities = getGridEntities(nil)
280
+ local numMatchedEntities = 0
281
+ __TS__ArrayForEach(
282
+ gridEntities,
283
+ function(____, gridEntity)
284
+ local gridEntityIndex = gridEntity:GetGridIndex()
285
+ local gridEntityType = gridEntity:GetType()
286
+ local gridEntityVariant = gridEntity:GetVariant()
287
+ local gridEntityDesc = gridEntity:GetSaveState()
288
+ if gridEntityTypeFilter ~= nil and gridEntityType ~= gridEntityTypeFilter then
289
+ return
290
+ end
291
+ if not includeWalls and gridEntityType == GridEntityType.WALL and gridEntityTypeFilter ~= GridEntityType.WALL then
292
+ return
293
+ end
294
+ msg = msg .. (((((tostring(gridEntityIndex) .. ") ") .. tostring(gridEntityType)) .. ".") .. tostring(gridEntityVariant)) .. ".") .. tostring(gridEntity.State)
295
+ local door = gridEntity:ToDoor()
296
+ if door ~= nil then
297
+ msg = msg .. " (door)"
298
+ end
299
+ local pit = gridEntity:ToPit()
300
+ if pit ~= nil then
301
+ msg = msg .. " (pit)"
302
+ end
303
+ local poop = gridEntity:ToPoop()
304
+ if poop ~= nil then
305
+ msg = msg .. " (poop)"
306
+ end
307
+ local pressurePlate = gridEntity:ToPressurePlate()
308
+ if pressurePlate ~= nil then
309
+ msg = msg .. " (pressurePlate)"
310
+ end
311
+ local rock = gridEntity:ToRock()
312
+ if rock ~= nil then
313
+ msg = msg .. " (rock)"
314
+ end
315
+ local spikes = gridEntity:ToSpikes()
316
+ if spikes ~= nil then
317
+ msg = msg .. " (spikes)"
318
+ end
319
+ local tnt = gridEntity:ToTNT()
320
+ if tnt ~= nil then
321
+ msg = msg .. " (TNT)"
322
+ end
323
+ msg = msg .. (" - VarData: " .. tostring(gridEntity.VarData)) .. "\n"
324
+ msg = msg .. (((" - Position: (" .. tostring(gridEntity.Position.X)) .. ", ") .. tostring(gridEntity.Position.Y)) .. ")\n"
325
+ msg = msg .. (" - SpawnSeed: " .. tostring(gridEntityDesc.SpawnSeed)) .. "\n"
326
+ msg = msg .. (" - VariableSeed: " .. tostring(gridEntityDesc.VariableSeed)) .. ")\n"
327
+ if door ~= nil then
328
+ msg = msg .. (" - Slot: " .. tostring(door.Slot)) .. "\n"
329
+ msg = msg .. (" - Direction: " .. tostring(door.Direction)) .. "\n"
330
+ msg = msg .. (" - TargetRoomIndex: " .. tostring(door.TargetRoomIndex)) .. "\n"
331
+ msg = msg .. (" - TargetRoomType: " .. tostring(door.TargetRoomType)) .. "\n"
332
+ end
333
+ numMatchedEntities = numMatchedEntities + 1
334
+ end
335
+ )
336
+ if numMatchedEntities == 0 then
337
+ msg = msg .. "(no grid entities matched)\n"
338
+ else
339
+ msg = msg .. ("(" .. tostring(numMatchedEntities)) .. " total grid entities)\n"
340
+ end
341
+ ____exports.log(msg)
342
+ end
343
+ function ____exports.logKColor(kColor)
344
+ ____exports.log((((((("Color: R" .. tostring(kColor.Red)) .. ", G") .. tostring(kColor.Green)) .. ", B") .. tostring(kColor.Blue)) .. ", A") .. tostring(kColor.Alpha))
345
+ end
346
+ --- Helper function for printing out every level state flag that is turned on. Useful when debugging.
347
+ function ____exports.logLevelStateFlags()
348
+ local level = game:GetLevel()
349
+ local levelStateFlagEntries = getEnumEntries(nil, LevelStateFlag)
350
+ ____exports.log("Logging level state flags:")
351
+ local hasNoFlags = true
352
+ for ____, ____value in ipairs(levelStateFlagEntries) do
353
+ local key = ____value[1]
354
+ local levelStateFlag = ____value[2]
355
+ local flagValue = level:GetStateFlag(levelStateFlag)
356
+ if flagValue then
357
+ ____exports.log((((" Has flag: " .. key) .. " (") .. tostring(levelStateFlag)) .. ")")
358
+ hasNoFlags = false
359
+ end
360
+ end
361
+ if hasNoFlags then
362
+ ____exports.log(" n/a (no flags)")
363
+ end
364
+ end
365
+ function ____exports.logMap(map)
366
+ ____exports.log("Printing out a TSTL Map:")
367
+ local mapKeys = {__TS__Spread(map:keys())}
368
+ __TS__ArraySort(mapKeys)
369
+ for ____, key in ipairs(mapKeys) do
370
+ local value = map:get(key)
371
+ ____exports.log(((" Key: " .. tostring(key)) .. ", Value: ") .. tostring(value))
372
+ end
373
+ ____exports.log("The size of the map was: " .. tostring(map.size))
374
+ end
375
+ function ____exports.logPlayerHealth(player)
376
+ local playerName = getPlayerName(nil, player)
377
+ local playerHealth = getPlayerHealth(nil, player)
378
+ ____exports.log(("Player health for " .. playerName) .. ":")
379
+ ____exports.log(" Max hearts: " .. tostring(playerHealth.maxHearts))
380
+ ____exports.log(" Hearts: " .. tostring(playerHealth.hearts))
381
+ ____exports.log(" Eternal hearts: " .. tostring(playerHealth.eternalHearts))
382
+ ____exports.log(" Soul hearts: " .. tostring(playerHealth.soulHearts))
383
+ ____exports.log(" Bone hearts: " .. tostring(playerHealth.boneHearts))
384
+ ____exports.log(" Golden hearts: " .. tostring(playerHealth.goldenHearts))
385
+ ____exports.log(" Rotten hearts: " .. tostring(playerHealth.rottenHearts))
386
+ ____exports.log(" Broken hearts: " .. tostring(playerHealth.brokenHearts))
387
+ ____exports.log(" Soul charges: " .. tostring(playerHealth.soulCharges))
388
+ ____exports.log(" Blood charges: " .. tostring(playerHealth.bloodCharges))
389
+ ____exports.log((" Soul heart types: [" .. table.concat(playerHealth.soulHeartTypes, ",")) .. "]")
390
+ end
391
+ --- Helper function for printing out every projectile flag that is turned on. Useful when debugging.
392
+ function ____exports.logProjectileFlags(flags)
393
+ ____exports.logFlags(flags, ProjectileFlag, "projectile")
394
+ end
395
+ --- Helper function for logging information about the current room.
396
+ function ____exports.logRoom()
397
+ local roomGridIndex = getRoomGridIndex(nil)
398
+ local roomListIndex = getRoomListIndex(nil)
399
+ local roomData = getRoomData(nil)
400
+ if roomData == nil then
401
+ ____exports.log("Current room data is undefined.")
402
+ else
403
+ ____exports.log("Current room stage ID: " .. tostring(roomData.StageID))
404
+ ____exports.log((((("Current room type/variant/sub-type: " .. tostring(roomData.Type)) .. ".") .. tostring(roomData.Variant)) .. ".") .. tostring(roomData.Subtype))
405
+ ____exports.log("Current room name: " .. roomData.Name)
406
+ end
407
+ ____exports.log("Current room grid index: " .. tostring(roomGridIndex))
408
+ ____exports.log("Current room list index: " .. tostring(roomListIndex))
409
+ end
410
+ --- Helper function for printing out every seed effect (i.e. Easter Egg) that is turned on for the
411
+ -- particular run.
412
+ function ____exports.logSeedEffects()
413
+ local seeds = game:GetSeeds()
414
+ local seedEffectEntries = getEnumEntries(nil, SeedEffect)
415
+ ____exports.log("Logging seed effects:")
416
+ local hasNoSeedEffects = true
417
+ for ____, ____value in ipairs(seedEffectEntries) do
418
+ local key = ____value[1]
419
+ local seedEffect = ____value[2]
420
+ if seeds:HasSeedEffect(seedEffect) then
421
+ ____exports.log((((" " .. key) .. " (") .. tostring(seedEffect)) .. ")")
422
+ hasNoSeedEffects = false
423
+ end
424
+ end
425
+ if hasNoSeedEffects then
426
+ ____exports.log(" n/a (no seed effects)")
427
+ end
428
+ end
429
+ function ____exports.logSet(set)
430
+ ____exports.log("Printing out a TSTL Set:")
431
+ local setValues = getSortedSetValues(nil, set)
432
+ for ____, value in ipairs(setValues) do
433
+ ____exports.log(" Value: " .. tostring(value))
434
+ end
435
+ ____exports.log("The size of the set was: " .. tostring(set.size))
436
+ end
437
+ --- Helper function for logging every sound effect that is currently playing.
438
+ function ____exports.logSounds()
439
+ local soundEffects = getEnumEntries(nil, SoundEffect)
440
+ for ____, ____value in ipairs(soundEffects) do
441
+ local key = ____value[1]
442
+ local soundEffect = ____value[2]
443
+ if sfxManager:IsPlaying(soundEffect) then
444
+ ____exports.log(((("Currently playing sound effect: " .. key) .. " (") .. tostring(soundEffect)) .. ")")
445
+ end
446
+ end
447
+ end
448
+ function ____exports.logTable(____table, parentTables)
449
+ if parentTables == nil then
450
+ parentTables = 0
451
+ end
452
+ if parentTables == 0 then
453
+ ____exports.log("Printing out a Lua table:")
454
+ end
455
+ local numSpaces = (parentTables + 1) * 2
456
+ local indentation = string.rep(
457
+ " ",
458
+ math.floor(numSpaces)
459
+ )
460
+ if ____table == nil then
461
+ ____exports.log(indentation .. "n/a (the table was nil)")
462
+ return
463
+ end
464
+ local numKeys = 0
465
+ for key, value in pairs(____table) do
466
+ ____exports.log((((indentation .. "Key: ") .. tostring(key)) .. ", Value: ") .. tostring(value))
467
+ local valueType = type(value)
468
+ if valueType == "table" then
469
+ if key == "__class" then
470
+ ____exports.log(indentation .. "(skipping enumerating this key to avoid infinite recursion)")
471
+ else
472
+ ____exports.logTable(value, parentTables + 1)
473
+ end
474
+ end
475
+ numKeys = numKeys + 1
476
+ end
477
+ ____exports.log("The size of the table was: " .. tostring(numKeys))
478
+ end
479
+ --- Helper function for printing out every tear flag that is turned on. Useful when debugging.
480
+ function ____exports.logTearFlags(flags)
481
+ ____exports.logFlags(flags, TearFlag, "tear")
482
+ end
483
+ --- Helper function for printing out every use flag that is turned on. Useful when debugging.
484
+ function ____exports.logUseFlags(flags)
485
+ ____exports.logFlags(flags, UseFlag, "use")
486
+ end
487
+ --- Helper function to enumerate all of the properties of a "userdata" object (i.e. an object from
488
+ -- the Isaac API).
489
+ function ____exports.logUserdata(userdata)
490
+ local userdataType = type(userdata)
491
+ if userdataType ~= "userdata" then
492
+ ____exports.log("Userdata: [not userdata]")
493
+ return
494
+ end
495
+ local metatable = getmetatable(userdata)
496
+ if metatable == nil then
497
+ ____exports.log("Userdata: [no metatable]")
498
+ return
499
+ end
500
+ local classType = getIsaacAPIClassType(nil, userdata)
501
+ if classType == nil then
502
+ ____exports.log("Userdata: [no class type]")
503
+ else
504
+ ____exports.log("Userdata: " .. classType)
505
+ end
506
+ ____exports.logTable(metatable)
507
+ end
508
+ function ____exports.logVector(vector, round)
509
+ if round == nil then
510
+ round = false
511
+ end
512
+ local vectorString = vectorToString(nil, vector, round)
513
+ ____exports.log("Vector: " .. vectorString)
514
+ end
515
+ --- Converts every `isaacscript-common` function that begins with "log" to a global function.
516
+ --
517
+ -- This is useful when printing out variables from the in-game debug console.
518
+ function ____exports.setLogFunctionsGlobal(self)
519
+ local globals = _G
520
+ globals.log = ____exports.log
521
+ globals.logArray = ____exports.logArray
522
+ globals.logColor = ____exports.logColor
523
+ globals.logDamageFlags = ____exports.logDamageFlags
524
+ globals.logEffects = ____exports.logEffects
525
+ globals.logEntities = ____exports.logEntities
526
+ globals.logEntityID = ____exports.logEntityID
527
+ globals.logEntityFlags = ____exports.logEntityFlags
528
+ globals.logError = ____exports.logError
529
+ globals.logFlags = ____exports.logFlags
530
+ globals.logGameStateFlags = ____exports.logGameStateFlags
531
+ globals.logGridEntities = ____exports.logGridEntities
532
+ globals.logKColor = ____exports.logKColor
533
+ globals.logLevelStateFlags = ____exports.logLevelStateFlags
534
+ globals.logMap = ____exports.logMap
535
+ globals.logPlayerHealth = ____exports.logPlayerHealth
536
+ globals.logProjectileFlags = ____exports.logProjectileFlags
537
+ globals.logRoom = ____exports.logRoom
538
+ globals.logSeedEffects = ____exports.logSeedEffects
539
+ globals.logSet = ____exports.logSet
540
+ globals.logSounds = ____exports.logSounds
541
+ globals.logTable = ____exports.logTable
542
+ globals.logTearFlags = ____exports.logTearFlags
543
+ globals.logUseFlags = ____exports.logUseFlags
544
+ globals.logUserdata = ____exports.logUserdata
545
+ globals.logVector = ____exports.logVector
546
+ end
547
+ return ____exports
@@ -0,0 +1,22 @@
1
+ /** Helper function to copy a map. (You can also use a Map constructor to accomplish this task.) */
2
+ export declare function copyMap<K, V>(oldMap: Map<K, V>): Map<K, V>;
3
+ /**
4
+ * Helper function to get the closest value from a map based on partial search text. For the
5
+ * purposes of this function, both search text and map keys are converted to lowercase before
6
+ * attempting to find a match.
7
+ *
8
+ * For example:
9
+ *
10
+ * ```ts
11
+ * const map = new <string, number>Map([
12
+ * ["foo", 123],
13
+ * ["bar", 456],
14
+ * ]);
15
+ * const searchText = "f";
16
+ * const match = getMapPartialMatch(map, searchText); // match is now equal to 123
17
+ *
18
+ * @returns If a match was found, returns a tuple of the map key and value. If a match was not
19
+ * found, returns undefined.
20
+ * ```
21
+ */
22
+ export declare function getMapPartialMatch<T>(searchText: string, map: ReadonlyMap<string, T>): [string, T] | undefined;
@@ -0,0 +1,61 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local Map = ____lualib.Map
3
+ local __TS__New = ____lualib.__TS__New
4
+ local __TS__Iterator = ____lualib.__TS__Iterator
5
+ local __TS__Spread = ____lualib.__TS__Spread
6
+ local __TS__ArraySort = ____lualib.__TS__ArraySort
7
+ local __TS__StringReplaceAll = ____lualib.__TS__StringReplaceAll
8
+ local __TS__StringStartsWith = ____lualib.__TS__StringStartsWith
9
+ local __TS__ArrayFilter = ____lualib.__TS__ArrayFilter
10
+ local ____exports = {}
11
+ --- Helper function to copy a map. (You can also use a Map constructor to accomplish this task.)
12
+ function ____exports.copyMap(self, oldMap)
13
+ local newMap = __TS__New(Map)
14
+ for ____, ____value in __TS__Iterator(oldMap:entries()) do
15
+ local key = ____value[1]
16
+ local value = ____value[2]
17
+ newMap:set(key, value)
18
+ end
19
+ return newMap
20
+ end
21
+ --- Helper function to get the closest value from a map based on partial search text. For the
22
+ -- purposes of this function, both search text and map keys are converted to lowercase before
23
+ -- attempting to find a match.
24
+ --
25
+ -- For example:
26
+ --
27
+ -- ```ts
28
+ -- const map = new <string, number>Map([
29
+ -- ["foo", 123],
30
+ -- ["bar", 456],
31
+ -- ]);
32
+ -- const searchText = "f";
33
+ -- const match = getMapPartialMatch(map, searchText); // match is now equal to 123
34
+ --
35
+ -- @returns If a match was found, returns a tuple of the map key and value. If a match was not
36
+ -- found, returns undefined.
37
+ -- ```
38
+ function ____exports.getMapPartialMatch(self, searchText, map)
39
+ local keys = {__TS__Spread(map:keys())}
40
+ __TS__ArraySort(keys)
41
+ searchText = string.lower(searchText)
42
+ searchText = __TS__StringReplaceAll(searchText, " ", "")
43
+ local matchingKeys = __TS__ArrayFilter(
44
+ keys,
45
+ function(____, key) return __TS__StringStartsWith(
46
+ string.lower(key),
47
+ searchText
48
+ ) end
49
+ )
50
+ __TS__ArraySort(matchingKeys)
51
+ local matchingKey = matchingKeys[1]
52
+ if matchingKey == nil then
53
+ return nil
54
+ end
55
+ local value = map:get(matchingKey)
56
+ if value == nil then
57
+ return nil
58
+ end
59
+ return {matchingKey, value}
60
+ end
61
+ return ____exports
@@ -0,0 +1,50 @@
1
+ import { Direction } from "isaac-typescript-definitions";
2
+ /**
3
+ * Helper function to normalize an integer.
4
+ *
5
+ * - If `x` is less than `min`, then it will be clamped to `min`.
6
+ * - If `x` is greater than `max`, then it will be clamped to `max`.
7
+ */
8
+ export declare function clamp(x: int, min: int, max: int): int;
9
+ export declare function getAngleDifference(angle1: float, angle2: float): float;
10
+ /**
11
+ * Helper function to get an array of equidistant points on the circumference around a circle.
12
+ * Useful for equally distributing things in a circle pattern.
13
+ *
14
+ * @param centerPos A position that represents the center of the center to get the points from.
15
+ * @param radius The radius of the circle.
16
+ * @param numPoints The number of points on the circumference of the circle to get.
17
+ * @param xMultiplier An optional multiplier to get the points around an oval. Default is 1.
18
+ * @param yMultiplier An optional multiplier to get the points around an oval. Default is 1.
19
+ * @param initialDirection By default, the first point on the circle will be on the top center, but
20
+ * this can be optionally changed by specifying this argument.
21
+ */
22
+ export declare function getCircleDiscretizedPoints(centerPos: Vector, radius: float, numPoints: int, xMultiplier?: number, yMultiplier?: number, initialDirection?: Direction): Vector[];
23
+ /**
24
+ * Helper function to check if a given position is within a given rectangle.
25
+ *
26
+ * This is an inclusive check, meaning that it will return true if the position is on the border of
27
+ * the rectangle.
28
+ */
29
+ export declare function inRectangle(position: Vector, topLeft: Vector, bottomRight: Vector): boolean;
30
+ /**
31
+ * From: https://www.geeksforgeeks.org/check-if-any-point-overlaps-the-given-circle-and-rectangle/
32
+ */
33
+ export declare function isCircleIntersectingRectangle(circleCenter: Vector, circleRadius: float, rectangleTopLeft: Vector, rectangleBottomRight: Vector): boolean;
34
+ export declare function isEven(num: int): boolean;
35
+ export declare function isOdd(num: int): boolean;
36
+ export declare function lerp(a: number, b: number, pos: float): number;
37
+ export declare function lerpAngleDegrees(aStart: number, aEnd: number, percent: float): number;
38
+ /**
39
+ * If rounding fails, this function returns 0.
40
+ * From: http://lua-users.org/wiki/SimpleRound
41
+ *
42
+ * @param num The number to round.
43
+ * @param numDecimalPlaces Default is 0.
44
+ */
45
+ export declare function round(num: float, numDecimalPlaces?: number): float;
46
+ /**
47
+ * @returns 1 if n is positive, -1 if n is negative, or 0 if n is 0.
48
+ */
49
+ export declare function sign(n: number): int;
50
+ export declare function tanh(x: number): number;