isaacscript-common 13.3.4 → 14.1.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.
- package/dist/index.d.ts +1644 -441
- package/dist/isaacscript-common.lua +19643 -16276
- package/dist/src/callbacks/customRevive.lua +10 -1
- package/dist/src/callbacks/postAmbush.d.ts.map +1 -1
- package/dist/src/callbacks/postAmbush.lua +7 -12
- package/dist/src/callbacks/postBombExploded.lua +3 -3
- package/dist/src/callbacks/postDoorRender.lua +2 -2
- package/dist/src/callbacks/postEffectStateChanged.lua +3 -3
- package/dist/src/callbacks/postFamiliarStateChanged.lua +3 -3
- package/dist/src/callbacks/postFlip.lua +1 -1
- package/dist/src/callbacks/postGridEntity.lua +2 -2
- package/dist/src/callbacks/postNPCStateChanged.lua +3 -3
- package/dist/src/callbacks/postPickupStateChanged.lua +3 -3
- package/dist/src/callbacks/postPlayerCollectible.d.ts.map +1 -1
- package/dist/src/callbacks/postPlayerCollectible.lua +5 -9
- package/dist/src/callbacks/postRoomClearChanged.d.ts.map +1 -1
- package/dist/src/callbacks/postRoomClearChanged.lua +3 -5
- package/dist/src/callbacks/reorderedCallbacks.lua +7 -7
- package/dist/src/callbacks/subscriptions/{postBoneExploded.d.ts → postBombExploded.d.ts} +1 -1
- package/dist/src/callbacks/subscriptions/{postBoneExploded.d.ts.map → postBombExploded.d.ts.map} +1 -1
- package/dist/src/callbacks/subscriptions/{postBoneExploded.lua → postBombExploded.lua} +0 -0
- package/dist/src/callbacks/subscriptions/postCollectibleEmpty.d.ts +1 -1
- package/dist/src/callbacks/subscriptions/postCollectibleEmpty.d.ts.map +1 -1
- package/dist/src/callbacks/subscriptions/postCollectibleInitFirst.d.ts +1 -1
- package/dist/src/callbacks/subscriptions/postCollectibleInitFirst.d.ts.map +1 -1
- package/dist/src/callbacks/subscriptions/postCursedTeleport.d.ts +4 -2
- package/dist/src/callbacks/subscriptions/postCursedTeleport.d.ts.map +1 -1
- package/dist/src/callbacks/subscriptions/postCursedTeleport.lua +13 -1
- package/dist/src/callbacks/subscriptions/postGridEntityBroken.d.ts +1 -1
- package/dist/src/callbacks/subscriptions/postGridEntityBroken.d.ts.map +1 -1
- package/dist/src/callbacks/subscriptions/postGridEntityBroken.lua +3 -3
- package/dist/src/callbacks/subscriptions/postGridEntityInit.d.ts +1 -1
- package/dist/src/callbacks/subscriptions/postGridEntityInit.d.ts.map +1 -1
- package/dist/src/callbacks/subscriptions/postGridEntityInit.lua +3 -3
- package/dist/src/callbacks/subscriptions/postGridEntityRemove.d.ts +3 -3
- package/dist/src/callbacks/subscriptions/postGridEntityRemove.d.ts.map +1 -1
- package/dist/src/callbacks/subscriptions/postGridEntityRemove.lua +4 -4
- package/dist/src/callbacks/subscriptions/postGridEntityRender.d.ts +1 -1
- package/dist/src/callbacks/subscriptions/postGridEntityRender.d.ts.map +1 -1
- package/dist/src/callbacks/subscriptions/postGridEntityRender.lua +3 -3
- package/dist/src/callbacks/subscriptions/postGridEntityStateChanged.d.ts +1 -1
- package/dist/src/callbacks/subscriptions/postGridEntityStateChanged.d.ts.map +1 -1
- package/dist/src/callbacks/subscriptions/postGridEntityStateChanged.lua +3 -3
- package/dist/src/callbacks/subscriptions/postGridEntityUpdate.d.ts +1 -1
- package/dist/src/callbacks/subscriptions/postGridEntityUpdate.d.ts.map +1 -1
- package/dist/src/callbacks/subscriptions/postGridEntityUpdate.lua +3 -3
- package/dist/src/callbacks/subscriptions/postHolyMantleRemoved.d.ts.map +1 -1
- package/dist/src/callbacks/subscriptions/postHolyMantleRemoved.lua +2 -2
- package/dist/src/callbacks/subscriptions/postPEffectUpdateReordered.d.ts.map +1 -1
- package/dist/src/callbacks/subscriptions/postPEffectUpdateReordered.lua +2 -2
- package/dist/src/callbacks/subscriptions/postRockRender.d.ts +1 -1
- package/dist/src/callbacks/subscriptions/postRockRender.d.ts.map +1 -1
- package/dist/src/callbacks/subscriptions/postRockRender.lua +3 -3
- package/dist/src/callbacks/subscriptions/postRockUpdate.d.ts +1 -1
- package/dist/src/callbacks/subscriptions/postRockUpdate.d.ts.map +1 -1
- package/dist/src/callbacks/subscriptions/postRockUpdate.lua +3 -3
- package/dist/src/callbacks/subscriptions/postSpikesRender.d.ts +1 -1
- package/dist/src/callbacks/subscriptions/postSpikesRender.d.ts.map +1 -1
- package/dist/src/callbacks/subscriptions/postSpikesRender.lua +3 -3
- package/dist/src/callbacks/subscriptions/postSpikesUpdate.d.ts +1 -1
- package/dist/src/callbacks/subscriptions/postSpikesUpdate.d.ts.map +1 -1
- package/dist/src/callbacks/subscriptions/postSpikesUpdate.lua +3 -3
- package/dist/src/callbacks/subscriptions/postTNTRender.d.ts +1 -1
- package/dist/src/callbacks/subscriptions/postTNTRender.d.ts.map +1 -1
- package/dist/src/callbacks/subscriptions/postTNTRender.lua +3 -3
- package/dist/src/callbacks/subscriptions/postTNTUpdate.d.ts +1 -1
- package/dist/src/callbacks/subscriptions/postTNTUpdate.d.ts.map +1 -1
- package/dist/src/callbacks/subscriptions/postTNTUpdate.lua +3 -3
- package/dist/src/callbacks.d.ts +106 -0
- package/dist/src/callbacks.d.ts.map +1 -0
- package/dist/src/callbacks.lua +176 -0
- package/dist/src/classes/DefaultMap.d.ts.map +1 -1
- package/dist/src/classes/ModFeature.d.ts +11 -0
- package/dist/src/classes/ModFeature.d.ts.map +1 -0
- package/dist/src/classes/ModFeature.lua +13 -0
- package/dist/src/classes/ModUpgraded.d.ts +49 -11
- package/dist/src/classes/ModUpgraded.d.ts.map +1 -1
- package/dist/src/classes/ModUpgraded.lua +118 -16
- package/dist/src/classes/callbacks/PostAmbushFinished.d.ts +12 -0
- package/dist/src/classes/callbacks/PostAmbushFinished.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostAmbushFinished.lua +37 -0
- package/dist/src/classes/callbacks/PostAmbushStarted.d.ts +12 -0
- package/dist/src/classes/callbacks/PostAmbushStarted.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostAmbushStarted.lua +37 -0
- package/dist/src/classes/callbacks/PostBombExploded.d.ts +7 -0
- package/dist/src/classes/callbacks/PostBombExploded.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostBombExploded.lua +24 -0
- package/dist/src/classes/callbacks/PostBombInitLate.d.ts +12 -0
- package/dist/src/classes/callbacks/PostBombInitLate.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostBombInitLate.lua +27 -0
- package/dist/src/classes/callbacks/PostBoneSwing.d.ts +14 -0
- package/dist/src/classes/callbacks/PostBoneSwing.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostBoneSwing.lua +43 -0
- package/dist/src/classes/callbacks/PostCollectibleEmpty.d.ts +17 -0
- package/dist/src/classes/callbacks/PostCollectibleEmpty.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostCollectibleEmpty.lua +47 -0
- package/dist/src/classes/callbacks/PostCollectibleInitFirst.d.ts +13 -0
- package/dist/src/classes/callbacks/PostCollectibleInitFirst.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostCollectibleInitFirst.lua +32 -0
- package/dist/src/classes/callbacks/PostCursedTeleport.d.ts +20 -0
- package/dist/src/classes/callbacks/PostCursedTeleport.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostCursedTeleport.lua +113 -0
- package/dist/src/classes/callbacks/PostCustomRevive.d.ts +6 -0
- package/dist/src/classes/callbacks/PostCustomRevive.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostCustomRevive.lua +17 -0
- package/dist/src/classes/callbacks/PostDiceRoomActivated.d.ts +15 -0
- package/dist/src/classes/callbacks/PostDiceRoomActivated.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostDiceRoomActivated.lua +44 -0
- package/dist/src/classes/callbacks/PostDoorRender.d.ts +7 -0
- package/dist/src/classes/callbacks/PostDoorRender.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostDoorRender.lua +24 -0
- package/dist/src/classes/callbacks/PostDoorUpdate.d.ts +7 -0
- package/dist/src/classes/callbacks/PostDoorUpdate.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostDoorUpdate.lua +24 -0
- package/dist/src/classes/callbacks/PostEffectInitLate.d.ts +12 -0
- package/dist/src/classes/callbacks/PostEffectInitLate.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostEffectInitLate.lua +27 -0
- package/dist/src/classes/callbacks/PostEffectStateChanged.d.ts +13 -0
- package/dist/src/classes/callbacks/PostEffectStateChanged.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostEffectStateChanged.lua +33 -0
- package/dist/src/classes/callbacks/PostEsauJr.d.ts +6 -0
- package/dist/src/classes/callbacks/PostEsauJr.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostEsauJr.lua +17 -0
- package/dist/src/classes/callbacks/PostFamiliarInitLate.d.ts +12 -0
- package/dist/src/classes/callbacks/PostFamiliarInitLate.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostFamiliarInitLate.lua +27 -0
- package/dist/src/classes/callbacks/PostFamiliarStateChanged.d.ts +13 -0
- package/dist/src/classes/callbacks/PostFamiliarStateChanged.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostFamiliarStateChanged.lua +33 -0
- package/dist/src/classes/callbacks/PostFirstEsauJr.d.ts +6 -0
- package/dist/src/classes/callbacks/PostFirstEsauJr.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostFirstEsauJr.lua +17 -0
- package/dist/src/classes/callbacks/PostFirstFlip.d.ts +6 -0
- package/dist/src/classes/callbacks/PostFirstFlip.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostFirstFlip.lua +17 -0
- package/dist/src/classes/callbacks/PostFlip.d.ts +6 -0
- package/dist/src/classes/callbacks/PostFlip.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostFlip.lua +17 -0
- package/dist/src/classes/callbacks/PostGameStartedReordered.d.ts +6 -0
- package/dist/src/classes/callbacks/PostGameStartedReordered.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostGameStartedReordered.lua +17 -0
- package/dist/src/classes/callbacks/PostGameStartedReorderedLast.d.ts +6 -0
- package/dist/src/classes/callbacks/PostGameStartedReorderedLast.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostGameStartedReorderedLast.lua +17 -0
- package/dist/src/classes/callbacks/PostGreedModeWave.d.ts +12 -0
- package/dist/src/classes/callbacks/PostGreedModeWave.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostGreedModeWave.lua +34 -0
- package/dist/src/classes/callbacks/PostGridEntityBroken.d.ts +6 -0
- package/dist/src/classes/callbacks/PostGridEntityBroken.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostGridEntityBroken.lua +17 -0
- package/dist/src/classes/callbacks/PostGridEntityCollision.d.ts +9 -0
- package/dist/src/classes/callbacks/PostGridEntityCollision.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostGridEntityCollision.lua +36 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomBroken.d.ts +6 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomBroken.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomBroken.lua +17 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomCollision.d.ts +9 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomCollision.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomCollision.lua +31 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomInit.d.ts +6 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomInit.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomInit.lua +17 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomRemove.d.ts +9 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomRemove.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomRemove.lua +25 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomStateChanged.d.ts +6 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomStateChanged.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomStateChanged.lua +17 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomUpdate.d.ts +6 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomUpdate.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostGridEntityCustomUpdate.lua +17 -0
- package/dist/src/classes/callbacks/PostGridEntityInit.d.ts +6 -0
- package/dist/src/classes/callbacks/PostGridEntityInit.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostGridEntityInit.lua +17 -0
- package/dist/src/classes/callbacks/PostGridEntityRemove.d.ts +9 -0
- package/dist/src/classes/callbacks/PostGridEntityRemove.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostGridEntityRemove.lua +28 -0
- package/dist/src/classes/callbacks/PostGridEntityStateChanged.d.ts +6 -0
- package/dist/src/classes/callbacks/PostGridEntityStateChanged.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostGridEntityStateChanged.lua +17 -0
- package/dist/src/classes/callbacks/PostGridEntityUpdate.d.ts +6 -0
- package/dist/src/classes/callbacks/PostGridEntityUpdate.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostGridEntityUpdate.lua +17 -0
- package/dist/src/classes/callbacks/PostHolyMantleRemoved.d.ts +14 -0
- package/dist/src/classes/callbacks/PostHolyMantleRemoved.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostHolyMantleRemoved.lua +35 -0
- package/dist/src/classes/callbacks/PostKnifeInitLate.d.ts +12 -0
- package/dist/src/classes/callbacks/PostKnifeInitLate.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostKnifeInitLate.lua +27 -0
- package/dist/src/classes/callbacks/PostNewLevelReordered.d.ts +6 -0
- package/dist/src/classes/callbacks/PostNewLevelReordered.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostNewLevelReordered.lua +17 -0
- package/dist/src/classes/callbacks/PostNewRoomEarly.d.ts +13 -0
- package/dist/src/classes/callbacks/PostNewRoomEarly.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostNewRoomEarly.lua +65 -0
- package/dist/src/classes/callbacks/PostNewRoomReordered.d.ts +6 -0
- package/dist/src/classes/callbacks/PostNewRoomReordered.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostNewRoomReordered.lua +17 -0
- package/dist/src/classes/callbacks/PostPEffectUpdateReordered.d.ts +6 -0
- package/dist/src/classes/callbacks/PostPEffectUpdateReordered.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostPEffectUpdateReordered.lua +17 -0
- package/dist/src/classes/callbacks/PostPitRender.d.ts +7 -0
- package/dist/src/classes/callbacks/PostPitRender.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostPitRender.lua +24 -0
- package/dist/src/classes/callbacks/PostPlayerFatalDamage.d.ts +15 -0
- package/dist/src/classes/callbacks/PostPlayerFatalDamage.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostPlayerFatalDamage.lua +87 -0
- package/dist/src/classes/callbacks/PostPlayerRenderReordered.d.ts +6 -0
- package/dist/src/classes/callbacks/PostPlayerRenderReordered.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostPlayerRenderReordered.lua +17 -0
- package/dist/src/classes/callbacks/PostPlayerUpdateReordered.d.ts +6 -0
- package/dist/src/classes/callbacks/PostPlayerUpdateReordered.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostPlayerUpdateReordered.lua +17 -0
- package/dist/src/classes/callbacks/PostRoomClearChanged.d.ts +13 -0
- package/dist/src/classes/callbacks/PostRoomClearChanged.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostRoomClearChanged.lua +33 -0
- package/dist/src/classes/callbacks/PostSpikesRender.d.ts +7 -0
- package/dist/src/classes/callbacks/PostSpikesRender.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostSpikesRender.lua +24 -0
- package/dist/src/classes/callbacks/PreBerserkDeath.d.ts +7 -0
- package/dist/src/classes/callbacks/PreBerserkDeath.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PreBerserkDeath.lua +36 -0
- package/dist/src/classes/callbacks/PreCustomRevive.d.ts +6 -0
- package/dist/src/classes/callbacks/PreCustomRevive.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PreCustomRevive.lua +17 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackAmbush.d.ts +10 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackAmbush.d.ts.map +1 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackAmbush.lua +19 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackBomb.d.ts +10 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackBomb.d.ts.map +1 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackBomb.lua +19 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackCollectible.d.ts +10 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackCollectible.d.ts.map +1 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackCollectible.lua +19 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackDoor.d.ts +10 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackDoor.d.ts.map +1 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackDoor.lua +20 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackEffect.d.ts +11 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackEffect.d.ts.map +1 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackEffect.lua +19 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackFamiliar.d.ts +11 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackFamiliar.d.ts.map +1 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackFamiliar.lua +19 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackGridEntity.d.ts +11 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackGridEntity.d.ts.map +1 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackGridEntity.lua +24 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackGridEntityCustom.d.ts +10 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackGridEntityCustom.d.ts.map +1 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackGridEntityCustom.lua +19 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackKnife.d.ts +10 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackKnife.d.ts.map +1 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackKnife.lua +19 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackPit.d.ts +10 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackPit.d.ts.map +1 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackPit.lua +20 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackPlayer.d.ts +10 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackPlayer.d.ts.map +1 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackPlayer.lua +23 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackRevive.d.ts +11 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackRevive.d.ts.map +1 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackRevive.lua +19 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackSpikes.d.ts +10 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackSpikes.d.ts.map +1 -0
- package/dist/src/classes/callbacks/validation/CustomCallbackSpikes.lua +20 -0
- package/dist/src/classes/features/callbackLogic/CustomGridEntities.d.ts +134 -0
- package/dist/src/classes/features/callbackLogic/CustomGridEntities.d.ts.map +1 -0
- package/dist/src/classes/features/callbackLogic/CustomGridEntities.lua +220 -0
- package/dist/src/classes/features/callbackLogic/CustomRevive.d.ts +39 -0
- package/dist/src/classes/features/callbackLogic/CustomRevive.d.ts.map +1 -0
- package/dist/src/classes/features/callbackLogic/CustomRevive.lua +140 -0
- package/dist/src/classes/features/callbackLogic/EsauJrDetection.d.ts +19 -0
- package/dist/src/classes/features/callbackLogic/EsauJrDetection.d.ts.map +1 -0
- package/dist/src/classes/features/callbackLogic/EsauJrDetection.lua +52 -0
- package/dist/src/classes/features/callbackLogic/FlipDetection.d.ts +16 -0
- package/dist/src/classes/features/callbackLogic/FlipDetection.d.ts.map +1 -0
- package/dist/src/classes/features/callbackLogic/FlipDetection.lua +58 -0
- package/dist/src/classes/features/callbackLogic/GameReorderedCallbacks.d.ts +27 -0
- package/dist/src/classes/features/callbackLogic/GameReorderedCallbacks.d.ts.map +1 -0
- package/dist/src/classes/features/callbackLogic/GameReorderedCallbacks.lua +108 -0
- package/dist/src/classes/features/callbackLogic/GridEntityCollisionDetection.d.ts +19 -0
- package/dist/src/classes/features/callbackLogic/GridEntityCollisionDetection.d.ts.map +1 -0
- package/dist/src/classes/features/callbackLogic/GridEntityCollisionDetection.lua +69 -0
- package/dist/src/classes/features/callbackLogic/GridEntityDetection.d.ts +46 -0
- package/dist/src/classes/features/callbackLogic/GridEntityDetection.d.ts.map +1 -0
- package/dist/src/classes/features/callbackLogic/GridEntityDetection.lua +126 -0
- package/dist/src/classes/features/callbackLogic/PlayerReorderedCallbacks.d.ts +24 -0
- package/dist/src/classes/features/callbackLogic/PlayerReorderedCallbacks.d.ts.map +1 -0
- package/dist/src/classes/features/callbackLogic/PlayerReorderedCallbacks.lua +72 -0
- package/dist/src/classes/features/other/RunInNFrames.d.ts +123 -0
- package/dist/src/classes/features/other/RunInNFrames.d.ts.map +1 -0
- package/dist/src/classes/features/other/RunInNFrames.lua +109 -0
- package/dist/src/classes/private/CustomCallback.d.ts +26 -0
- package/dist/src/classes/private/CustomCallback.d.ts.map +1 -0
- package/dist/src/classes/private/CustomCallback.lua +63 -0
- package/dist/src/classes/private/Feature.d.ts +19 -0
- package/dist/src/classes/private/Feature.d.ts.map +1 -0
- package/dist/src/classes/private/Feature.lua +16 -0
- package/dist/src/core/upgradeMod.d.ts +18 -1
- package/dist/src/core/upgradeMod.d.ts.map +1 -1
- package/dist/src/core/upgradeMod.lua +44 -9
- package/dist/src/decorators.d.ts +9 -0
- package/dist/src/decorators.d.ts.map +1 -0
- package/dist/src/decorators.lua +12 -0
- package/dist/src/enums/ISCFeature.d.ts +12 -0
- package/dist/src/enums/ISCFeature.d.ts.map +1 -0
- package/dist/src/enums/ISCFeature.lua +12 -0
- package/dist/src/enums/LadderSubTypeCustom.d.ts +17 -0
- package/dist/src/enums/LadderSubTypeCustom.d.ts.map +1 -0
- package/dist/src/enums/LadderSubTypeCustom.lua +19 -0
- package/dist/src/enums/ModCallbackCustom.d.ts +399 -327
- package/dist/src/enums/ModCallbackCustom.d.ts.map +1 -1
- package/dist/src/enums/ModCallbackCustom.lua +85 -87
- package/dist/src/enums/ModCallbackCustom2.d.ts +53 -0
- package/dist/src/enums/ModCallbackCustom2.d.ts.map +1 -0
- package/dist/src/enums/ModCallbackCustom2.lua +102 -0
- package/dist/src/features/customGridEntity.d.ts.map +1 -1
- package/dist/src/features/customGridEntity.lua +6 -8
- package/dist/src/features/{setHotkey.d.ts → customHotkeys.d.ts} +1 -1
- package/dist/src/features/customHotkeys.d.ts.map +1 -0
- package/dist/src/features/{setHotkey.lua → customHotkeys.lua} +2 -2
- package/dist/src/features/customPickup.d.ts.map +1 -1
- package/dist/src/features/customPickup.lua +6 -2
- package/dist/src/features/customStage/backdrop.d.ts.map +1 -1
- package/dist/src/features/customStage/backdrop.lua +3 -1
- package/dist/src/features/customStage/shadows.d.ts.map +1 -1
- package/dist/src/features/customStage/shadows.lua +3 -1
- package/dist/src/features/customTrapdoor/init.lua +1 -7
- package/dist/src/features/customTrapdoor/touched.lua +1 -1
- package/dist/src/features/deployJSONRoom.d.ts.map +1 -1
- package/dist/src/features/deployJSONRoom.lua +6 -8
- package/dist/src/features/firstLast.d.ts.map +1 -1
- package/dist/src/features/firstLast.lua +3 -3
- package/dist/src/features/saveDataManager/constants.d.ts +1 -1
- package/dist/src/features/saveDataManager/constants.d.ts.map +1 -1
- package/dist/src/features/saveDataManager/exports.d.ts +5 -0
- package/dist/src/features/saveDataManager/exports.d.ts.map +1 -1
- package/dist/src/features/saveDataManager/exports.lua +16 -0
- package/dist/src/features/saveDataManager/main.d.ts +8 -2
- package/dist/src/features/saveDataManager/main.d.ts.map +1 -1
- package/dist/src/features/saveDataManager/main.lua +3 -5
- package/dist/src/features/saveDataManager/save.lua +2 -3
- package/dist/src/features.d.ts +34 -0
- package/dist/src/features.d.ts.map +1 -0
- package/dist/src/features.lua +68 -0
- package/dist/src/functions/ambush.d.ts +6 -0
- package/dist/src/functions/ambush.d.ts.map +1 -1
- package/dist/src/functions/ambush.lua +31 -0
- package/dist/src/functions/characters.lua +3 -3
- package/dist/src/functions/charge.d.ts +30 -8
- package/dist/src/functions/charge.d.ts.map +1 -1
- package/dist/src/functions/charge.lua +38 -2
- package/dist/src/functions/chargeBar.d.ts +6 -0
- package/dist/src/functions/chargeBar.d.ts.map +1 -1
- package/dist/src/functions/chargeBar.lua +6 -0
- package/dist/src/functions/decorators.d.ts +19 -0
- package/dist/src/functions/decorators.d.ts.map +1 -0
- package/dist/src/functions/decorators.lua +32 -0
- package/dist/src/functions/flying.lua +4 -4
- package/dist/src/functions/gridEntities.lua +5 -5
- package/dist/src/functions/gridEntitiesSpecific.lua +12 -12
- package/dist/src/functions/itemPool.lua +2 -2
- package/dist/src/functions/minimap.d.ts +4 -0
- package/dist/src/functions/minimap.d.ts.map +1 -1
- package/dist/src/functions/minimap.lua +4 -0
- package/dist/src/functions/playerHealth.lua +6 -6
- package/dist/src/functions/playerIndex.lua +2 -2
- package/dist/src/functions/players.d.ts +14 -3
- package/dist/src/functions/players.d.ts.map +1 -1
- package/dist/src/functions/players.lua +35 -16
- package/dist/src/functions/pocketItems.lua +1 -1
- package/dist/src/functions/roomTransition.d.ts +3 -4
- package/dist/src/functions/roomTransition.d.ts.map +1 -1
- package/dist/src/functions/roomTransition.lua +4 -32
- package/dist/src/functions/rooms.d.ts +1 -1
- package/dist/src/functions/rooms.d.ts.map +1 -1
- package/dist/src/functions/rooms.lua +1 -1
- package/dist/src/functions/run.d.ts +5 -0
- package/dist/src/functions/run.d.ts.map +1 -1
- package/dist/src/functions/run.lua +6 -0
- package/dist/src/functions/spawnCollectible.d.ts +24 -5
- package/dist/src/functions/spawnCollectible.d.ts.map +1 -1
- package/dist/src/functions/spawnCollectible.lua +44 -4
- package/dist/src/functions/table.d.ts +2 -0
- package/dist/src/functions/table.d.ts.map +1 -1
- package/dist/src/functions/table.lua +7 -0
- package/dist/src/functions/trinkets.lua +1 -1
- package/dist/src/functions/tstlClass.d.ts +21 -9
- package/dist/src/functions/tstlClass.d.ts.map +1 -1
- package/dist/src/functions/tstlClass.lua +49 -24
- package/dist/src/functions/utils.d.ts +44 -2
- package/dist/src/functions/utils.d.ts.map +1 -1
- package/dist/src/functions/utils.lua +43 -2
- package/dist/src/index.d.ts +15 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.lua +42 -10
- package/dist/src/initCustomCallbacks.d.ts.map +1 -1
- package/dist/src/initCustomCallbacks.lua +0 -3
- package/dist/src/initFeatures.lua +3 -3
- package/dist/src/interfaces/SaveData.d.ts.map +1 -1
- package/dist/src/interfaces/{private/TSTLClassMetatable.d.ts → TSTLClassMetatable.d.ts} +0 -0
- package/dist/src/interfaces/TSTLClassMetatable.d.ts.map +1 -0
- package/dist/src/interfaces/{private/TSTLClassMetatable.lua → TSTLClassMetatable.lua} +0 -0
- package/dist/src/interfaces/private/{AddCallbackParameterCustom.d.ts → AddCallbackParametersCustom.d.ts} +3 -5
- package/dist/src/interfaces/private/AddCallbackParametersCustom.d.ts.map +1 -0
- package/dist/src/interfaces/private/{AddCallbackParameterCustom.lua → AddCallbackParametersCustom.lua} +3 -0
- package/dist/src/interfaces/private/AddCallbackParametersCustom2.d.ts +201 -0
- package/dist/src/interfaces/private/AddCallbackParametersCustom2.d.ts.map +1 -0
- package/dist/src/interfaces/private/AddCallbackParametersCustom2.lua +7 -0
- package/dist/src/maps/characterNameToTypeMap.lua +12 -12
- package/dist/src/objects/callbackRegisterFunctions.d.ts +1 -1
- package/dist/src/objects/callbackRegisterFunctions.d.ts.map +1 -1
- package/dist/src/objects/callbackRegisterFunctions.lua +2 -5
- package/dist/src/objects/characterDamageMultipliers.lua +6 -6
- package/dist/src/objects/characterNames.lua +6 -6
- package/dist/src/objects/playerNamePNGFileNames.lua +6 -6
- package/dist/src/objects/playerPortraitPNGFileNames.lua +6 -6
- package/dist/src/sets/charactersThatStartWithAnActiveItemSet.lua +1 -1
- package/dist/src/sets/charactersWithFreeDevilDealsSet.d.ts.map +1 -1
- package/dist/src/sets/charactersWithFreeDevilDealsSet.lua +1 -1
- package/dist/src/sets/charactersWithNoRedHeartsSet.lua +3 -3
- package/dist/src/sets/charactersWithNoSoulHeartsSet.lua +2 -2
- package/dist/src/sets/lostStyleCharactersSet.lua +4 -4
- package/dist/src/types/AllButFirst.d.ts +5 -0
- package/dist/src/types/AllButFirst.d.ts.map +1 -0
- package/dist/src/types/AllButFirst.lua +2 -0
- package/dist/src/types/AllButLast.d.ts +2 -0
- package/dist/src/types/AllButLast.d.ts.map +1 -0
- package/dist/src/types/AllButLast.lua +2 -0
- package/dist/src/types/Constructor.d.ts +2 -0
- package/dist/src/types/Constructor.d.ts.map +1 -0
- package/dist/src/types/Constructor.lua +2 -0
- package/dist/src/types/FunctionTuple.d.ts +5 -0
- package/dist/src/types/FunctionTuple.d.ts.map +1 -0
- package/dist/src/types/FunctionTuple.lua +2 -0
- package/dist/src/types/HasAllEnumKeys.d.ts +26 -0
- package/dist/src/types/HasAllEnumKeys.d.ts.map +1 -0
- package/dist/src/types/HasAllEnumKeys.lua +2 -0
- package/dist/src/types/LowercaseKeys.d.ts +3 -0
- package/dist/src/types/LowercaseKeys.d.ts.map +1 -0
- package/dist/src/types/LowercaseKeys.lua +2 -0
- package/dist/src/types/StartsWithLowercase.d.ts +2 -0
- package/dist/src/types/StartsWithLowercase.d.ts.map +1 -0
- package/dist/src/types/StartsWithLowercase.lua +2 -0
- package/dist/src/types/StartsWithUppercase.d.ts +2 -0
- package/dist/src/types/StartsWithUppercase.d.ts.map +1 -0
- package/dist/src/types/StartsWithUppercase.lua +2 -0
- package/dist/src/types/UnionToIntersection.d.ts +3 -0
- package/dist/src/types/UnionToIntersection.d.ts.map +1 -0
- package/dist/src/types/UnionToIntersection.lua +2 -0
- package/dist/src/types/UppercaseKeys.d.ts +3 -0
- package/dist/src/types/UppercaseKeys.d.ts.map +1 -0
- package/dist/src/types/UppercaseKeys.lua +2 -0
- package/dist/src/types/private/AllButFirst.d.ts +5 -0
- package/dist/src/types/private/AllButFirst.d.ts.map +1 -0
- package/dist/src/types/private/AllButFirst.lua +2 -0
- package/dist/src/types/private/CallbackTuple.d.ts +20 -0
- package/dist/src/types/private/CallbackTuple.d.ts.map +1 -0
- package/dist/src/types/private/CallbackTuple.lua +2 -0
- package/dist/src/types/private/MatchingCallbackCustom.d.ts +16 -0
- package/dist/src/types/private/MatchingCallbackCustom.d.ts.map +1 -0
- package/dist/src/types/private/MatchingCallbackCustom.lua +2 -0
- package/package.json +2 -2
- package/src/callbacks/customRevive.ts +13 -1
- package/src/callbacks/postAmbush.ts +7 -14
- package/src/callbacks/postBombExploded.ts +1 -1
- package/src/callbacks/postBoneSwing.ts +2 -1
- package/src/callbacks/postCollectibleEmpty.ts +2 -0
- package/src/callbacks/postCollectibleInitFirst.ts +2 -0
- package/src/callbacks/postDoorRender.ts +2 -2
- package/src/callbacks/postEffectStateChanged.ts +3 -6
- package/src/callbacks/postFamiliarStateChanged.ts +3 -3
- package/src/callbacks/postFlip.ts +2 -2
- package/src/callbacks/postGridEntity.ts +3 -7
- package/src/callbacks/postNPCStateChanged.ts +3 -3
- package/src/callbacks/postNewRoomEarly.ts +1 -1
- package/src/callbacks/postPickupStateChanged.ts +3 -6
- package/src/callbacks/postPlayerCollectible.ts +8 -12
- package/src/callbacks/postRoomClearChanged.ts +3 -7
- package/src/callbacks/reorderedCallbacks.ts +6 -6
- package/src/callbacks/subscriptions/{postBoneExploded.ts → postBombExploded.ts} +0 -0
- package/src/callbacks/subscriptions/postCollectibleEmpty.ts +1 -1
- package/src/callbacks/subscriptions/postCollectibleInitFirst.ts +1 -1
- package/src/callbacks/subscriptions/postCursedTeleport.ts +24 -1
- package/src/callbacks/subscriptions/postGridEntityBroken.ts +4 -7
- package/src/callbacks/subscriptions/postGridEntityCollision.ts +4 -4
- package/src/callbacks/subscriptions/postGridEntityInit.ts +4 -7
- package/src/callbacks/subscriptions/postGridEntityRemove.ts +10 -9
- package/src/callbacks/subscriptions/postGridEntityRender.ts +4 -7
- package/src/callbacks/subscriptions/postGridEntityStateChanged.ts +4 -7
- package/src/callbacks/subscriptions/postGridEntityUpdate.ts +4 -7
- package/src/callbacks/subscriptions/postHolyMantleRemoved.ts +9 -2
- package/src/callbacks/subscriptions/postPEffectUpdateReordered.ts +9 -2
- package/src/callbacks/subscriptions/postRockRender.ts +6 -7
- package/src/callbacks/subscriptions/postRockUpdate.ts +6 -7
- package/src/callbacks/subscriptions/postSpikesRender.ts +4 -7
- package/src/callbacks/subscriptions/postSpikesUpdate.ts +4 -7
- package/src/callbacks/subscriptions/postTNTRender.ts +4 -7
- package/src/callbacks/subscriptions/postTNTUpdate.ts +4 -7
- package/src/callbacks.ts +134 -0
- package/src/classes/DefaultMap.ts +3 -3
- package/src/classes/ModFeature.ts +14 -0
- package/src/classes/ModUpgraded.ts +205 -45
- package/src/classes/callbacks/PostAmbushFinished.ts +39 -0
- package/src/classes/callbacks/PostAmbushStarted.ts +39 -0
- package/src/classes/callbacks/PostBombExploded.ts +21 -0
- package/src/classes/callbacks/PostBombInitLate.ts +28 -0
- package/src/classes/callbacks/PostBoneSwing.ts +61 -0
- package/src/classes/callbacks/PostCollectibleEmpty.ts +72 -0
- package/src/classes/callbacks/PostCollectibleInitFirst.ts +37 -0
- package/src/classes/callbacks/PostCursedTeleport.ts +186 -0
- package/src/classes/callbacks/PostCustomRevive.ts +11 -0
- package/src/classes/callbacks/PostDiceRoomActivated.ts +68 -0
- package/src/classes/callbacks/PostDoorRender.ts +19 -0
- package/src/classes/callbacks/PostDoorUpdate.ts +19 -0
- package/src/classes/callbacks/PostEffectInitLate.ts +28 -0
- package/src/classes/callbacks/PostEffectStateChanged.ts +35 -0
- package/src/classes/callbacks/PostEsauJr.ts +11 -0
- package/src/classes/callbacks/PostFamiliarInitLate.ts +28 -0
- package/src/classes/callbacks/PostFamiliarStateChanged.ts +35 -0
- package/src/classes/callbacks/PostFirstEsauJr.ts +11 -0
- package/src/classes/callbacks/PostFirstFlip.ts +11 -0
- package/src/classes/callbacks/PostFlip.ts +11 -0
- package/src/classes/callbacks/PostGameStartedReordered.ts +11 -0
- package/src/classes/callbacks/PostGameStartedReorderedLast.ts +11 -0
- package/src/classes/callbacks/PostGreedModeWave.ts +37 -0
- package/src/classes/callbacks/PostGridEntityBroken.ts +11 -0
- package/src/classes/callbacks/PostGridEntityCollision.ts +65 -0
- package/src/classes/callbacks/PostGridEntityCustomBroken.ts +11 -0
- package/src/classes/callbacks/PostGridEntityCustomCollision.ts +53 -0
- package/src/classes/callbacks/PostGridEntityCustomInit.ts +11 -0
- package/src/classes/callbacks/PostGridEntityCustomRemove.ts +32 -0
- package/src/classes/callbacks/PostGridEntityCustomStateChanged.ts +11 -0
- package/src/classes/callbacks/PostGridEntityCustomUpdate.ts +11 -0
- package/src/classes/callbacks/PostGridEntityInit.ts +11 -0
- package/src/classes/callbacks/PostGridEntityRemove.ts +39 -0
- package/src/classes/callbacks/PostGridEntityStateChanged.ts +11 -0
- package/src/classes/callbacks/PostGridEntityUpdate.ts +11 -0
- package/src/classes/callbacks/PostHolyMantleRemoved.ts +45 -0
- package/src/classes/callbacks/PostKnifeInitLate.ts +28 -0
- package/src/classes/callbacks/PostNewLevelReordered.ts +11 -0
- package/src/classes/callbacks/PostNewRoomEarly.ts +93 -0
- package/src/classes/callbacks/PostNewRoomReordered.ts +11 -0
- package/src/classes/callbacks/PostPEffectUpdateReordered.ts +11 -0
- package/src/classes/callbacks/PostPitRender.ts +21 -0
- package/src/classes/callbacks/PostPlayerFatalDamage.ts +127 -0
- package/src/classes/callbacks/PostPlayerRenderReordered.ts +11 -0
- package/src/classes/callbacks/PostPlayerUpdateReordered.ts +11 -0
- package/src/classes/callbacks/PostRoomClearChanged.ts +40 -0
- package/src/classes/callbacks/PostSpikesRender.ts +21 -0
- package/src/classes/callbacks/PreBerserkDeath.ts +42 -0
- package/src/classes/callbacks/PreCustomRevive.ts +11 -0
- package/src/classes/callbacks/validation/CustomCallbackAmbush.ts +28 -0
- package/src/classes/callbacks/validation/CustomCallbackBomb.ts +27 -0
- package/src/classes/callbacks/validation/CustomCallbackCollectible.ts +30 -0
- package/src/classes/callbacks/validation/CustomCallbackDoor.ts +28 -0
- package/src/classes/callbacks/validation/CustomCallbackEffect.ts +29 -0
- package/src/classes/callbacks/validation/CustomCallbackFamiliar.ts +30 -0
- package/src/classes/callbacks/validation/CustomCallbackGridEntity.ts +42 -0
- package/src/classes/callbacks/validation/CustomCallbackGridEntityCustom.ts +36 -0
- package/src/classes/callbacks/validation/CustomCallbackKnife.ts +27 -0
- package/src/classes/callbacks/validation/CustomCallbackPit.ts +28 -0
- package/src/classes/callbacks/validation/CustomCallbackPlayer.ts +47 -0
- package/src/classes/callbacks/validation/CustomCallbackRevive.ts +27 -0
- package/src/classes/callbacks/validation/CustomCallbackSpikes.ts +28 -0
- package/src/classes/features/callbackLogic/CustomGridEntities.ts +398 -0
- package/src/classes/features/callbackLogic/CustomRevive.ts +214 -0
- package/src/classes/features/callbackLogic/EsauJrDetection.ts +98 -0
- package/src/classes/features/callbackLogic/FlipDetection.ts +82 -0
- package/src/classes/features/callbackLogic/GameReorderedCallbacks.ts +160 -0
- package/src/classes/features/callbackLogic/GridEntityCollisionDetection.ts +90 -0
- package/src/classes/features/callbackLogic/GridEntityDetection.ts +231 -0
- package/src/classes/features/callbackLogic/PlayerReorderedCallbacks.ts +126 -0
- package/src/classes/features/other/RunInNFrames.ts +256 -0
- package/src/classes/private/CustomCallback.ts +82 -0
- package/src/classes/private/Feature.ts +24 -0
- package/src/core/upgradeMod.ts +77 -17
- package/src/decorators.ts +13 -0
- package/src/enums/ISCFeature.ts +47 -0
- package/src/enums/LadderSubTypeCustom.ts +17 -0
- package/src/enums/ModCallbackCustom.ts +314 -243
- package/src/enums/ModCallbackCustom2.ts +57 -0
- package/src/features/customGridEntity.ts +3 -7
- package/src/features/{setHotkey.ts → customHotkeys.ts} +2 -2
- package/src/features/customPickup.ts +4 -2
- package/src/features/customStage/backdrop.ts +2 -1
- package/src/features/customStage/shadows.ts +2 -1
- package/src/features/customTrapdoor/init.ts +0 -1
- package/src/features/customTrapdoor/touched.ts +1 -1
- package/src/features/deployJSONRoom.ts +3 -7
- package/src/features/extraConsoleCommands/listCommands.ts +1 -1
- package/src/features/firstLast.ts +3 -7
- package/src/features/saveDataManager/constants.ts +1 -1
- package/src/features/saveDataManager/exports.ts +27 -0
- package/src/features/saveDataManager/main.ts +30 -21
- package/src/features/saveDataManager/save.ts +2 -2
- package/src/features.ts +90 -0
- package/src/functions/ambush.ts +26 -1
- package/src/functions/characters.ts +3 -3
- package/src/functions/charge.ts +30 -8
- package/src/functions/chargeBar.ts +6 -0
- package/src/functions/decorators.ts +45 -0
- package/src/functions/flying.ts +4 -4
- package/src/functions/gridEntities.ts +5 -5
- package/src/functions/gridEntitiesSpecific.ts +12 -12
- package/src/functions/itemPool.ts +2 -2
- package/src/functions/minimap.ts +4 -0
- package/src/functions/playerHealth.ts +6 -6
- package/src/functions/playerIndex.ts +2 -2
- package/src/functions/players.ts +26 -7
- package/src/functions/pocketItems.ts +1 -1
- package/src/functions/roomTransition.ts +3 -27
- package/src/functions/rooms.ts +1 -1
- package/src/functions/run.ts +12 -0
- package/src/functions/spawnCollectible.ts +44 -4
- package/src/functions/table.ts +11 -0
- package/src/functions/trinkets.ts +1 -1
- package/src/functions/tstlClass.ts +48 -24
- package/src/functions/utils.ts +56 -2
- package/src/index.ts +15 -2
- package/src/initCustomCallbacks.ts +1 -2
- package/src/initFeatures.ts +2 -2
- package/src/interfaces/SaveData.ts +4 -2
- package/src/interfaces/{private/TSTLClassMetatable.ts → TSTLClassMetatable.ts} +0 -0
- package/src/interfaces/private/{AddCallbackParameterCustom.ts → AddCallbackParametersCustom.ts} +4 -23
- package/src/interfaces/private/AddCallbackParametersCustom2.ts +343 -0
- package/src/maps/characterNameToTypeMap.ts +12 -12
- package/src/objects/callbackRegisterFunctions.ts +2 -4
- package/src/objects/characterDamageMultipliers.ts +6 -6
- package/src/objects/characterNames.ts +6 -6
- package/src/objects/playerNamePNGFileNames.ts +6 -6
- package/src/objects/playerPortraitPNGFileNames.ts +6 -6
- package/src/sets/charactersThatStartWithAnActiveItemSet.ts +1 -1
- package/src/sets/charactersWithFreeDevilDealsSet.ts +1 -1
- package/src/sets/charactersWithNoRedHeartsSet.ts +3 -3
- package/src/sets/charactersWithNoSoulHeartsSet.ts +2 -2
- package/src/sets/lostStyleCharactersSet.ts +4 -4
- package/src/types/AllButFirst.ts +6 -0
- package/src/types/AllButLast.ts +3 -0
- package/src/types/Constructor.ts +2 -0
- package/src/types/FunctionTuple.ts +4 -0
- package/src/types/HasAllEnumKeys.ts +25 -0
- package/src/types/LowercaseKeys.ts +3 -0
- package/src/types/StartsWithLowercase.ts +3 -0
- package/src/types/StartsWithUppercase.ts +3 -0
- package/src/types/UnionToIntersection.ts +6 -0
- package/src/types/UppercaseKeys.ts +3 -0
- package/src/types/private/AllButFirst.ts +6 -0
- package/src/types/private/CallbackTuple.ts +21 -0
- package/src/types/private/MatchingCallbackCustom.ts +32 -0
- package/dist/src/callbacks/postCustomDoorEnter.d.ts +0 -6
- package/dist/src/callbacks/postCustomDoorEnter.d.ts.map +0 -1
- package/dist/src/callbacks/postCustomDoorEnter.lua +0 -199
- package/dist/src/callbacks/subscriptions/postCustomDoorEnter.d.ts +0 -9
- package/dist/src/callbacks/subscriptions/postCustomDoorEnter.d.ts.map +0 -1
- package/dist/src/callbacks/subscriptions/postCustomDoorEnter.lua +0 -29
- package/dist/src/classes/CustomCallback.d.ts +0 -8
- package/dist/src/classes/CustomCallback.d.ts.map +0 -1
- package/dist/src/classes/CustomCallback.lua +0 -28
- package/dist/src/features/customDoor.d.ts +0 -51
- package/dist/src/features/customDoor.d.ts.map +0 -1
- package/dist/src/features/customDoor.lua +0 -53
- package/dist/src/features/setHotkey.d.ts.map +0 -1
- package/dist/src/interfaces/private/AddCallbackParameterCustom.d.ts.map +0 -1
- package/dist/src/interfaces/private/TSTLClassMetatable.d.ts.map +0 -1
- package/src/callbacks/postCustomDoorEnter.ts +0 -250
- package/src/callbacks/subscriptions/postCustomDoorEnter.ts +0 -42
- package/src/classes/CustomCallback.ts +0 -23
- package/src/features/customDoor.ts +0 -66
package/src/functions/table.ts
CHANGED
|
@@ -136,6 +136,17 @@ export function getStringsFromTable(
|
|
|
136
136
|
return strings;
|
|
137
137
|
}
|
|
138
138
|
|
|
139
|
+
/** Helper function to check if a Lua table has 0 keys. */
|
|
140
|
+
export function isTableEmpty(luaMap: LuaMap<AnyNotNil, unknown>): boolean {
|
|
141
|
+
// Using `next` does not seem to work properly, so we use `pairs` instead.
|
|
142
|
+
// eslint-disable-next-line no-unreachable-loop
|
|
143
|
+
for (const [_key, _value] of pairs(luaMap)) {
|
|
144
|
+
return false;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
return true;
|
|
148
|
+
}
|
|
149
|
+
|
|
139
150
|
/**
|
|
140
151
|
* Helper function to iterate over a table deterministically. This is useful because by default, the
|
|
141
152
|
* `pairs` function will return the keys of a Lua table in a random order.
|
|
@@ -156,7 +156,7 @@ export function getVanillaTrinketTypes(): TrinketType[] {
|
|
|
156
156
|
* items. (Only Tainted Forgotten can pick up items.)
|
|
157
157
|
*/
|
|
158
158
|
export function hasOpenTrinketSlot(player: EntityPlayer): boolean {
|
|
159
|
-
if (isCharacter(player, PlayerType.
|
|
159
|
+
if (isCharacter(player, PlayerType.SOUL_B)) {
|
|
160
160
|
return false;
|
|
161
161
|
}
|
|
162
162
|
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { DefaultMap } from "../classes/DefaultMap";
|
|
2
|
-
import { TSTLClassMetatable } from "../interfaces/
|
|
2
|
+
import { TSTLClassMetatable } from "../interfaces/TSTLClassMetatable";
|
|
3
|
+
import { FunctionTuple } from "../types/FunctionTuple";
|
|
3
4
|
import { TSTLClass } from "../types/TSTLClass";
|
|
4
5
|
import { isString, isTable } from "./types";
|
|
5
6
|
|
|
@@ -12,16 +13,14 @@ const TSTL_CLASS_METATABLE_KEYS: ReadonlySet<string> = new Set([
|
|
|
12
13
|
]);
|
|
13
14
|
|
|
14
15
|
/**
|
|
15
|
-
* Helper function to get the
|
|
16
|
-
*
|
|
17
|
-
* "constructor.name" metatable key.
|
|
16
|
+
* Helper function to get the constructor from an instantiated TypeScriptToLua class, which is
|
|
17
|
+
* located on the metatable.
|
|
18
18
|
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
* Returns undefined if the object is not a table or if the aforementioned metatable key does not
|
|
22
|
-
* exist.
|
|
19
|
+
* Returns undefined if passed a non-table or if the provided table does not have a metatable.
|
|
23
20
|
*/
|
|
24
|
-
export function
|
|
21
|
+
export function getTSTLClassConstructor(
|
|
22
|
+
object: unknown,
|
|
23
|
+
): TSTLClassMetatable["constructor"] | undefined {
|
|
25
24
|
if (!isTable(object)) {
|
|
26
25
|
return undefined;
|
|
27
26
|
}
|
|
@@ -31,8 +30,35 @@ export function getTSTLClassName(object: unknown): string | undefined {
|
|
|
31
30
|
return undefined;
|
|
32
31
|
}
|
|
33
32
|
|
|
34
|
-
|
|
35
|
-
|
|
33
|
+
return metatable.constructor;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export function getTSTLClassMethods(object: unknown): FunctionTuple[] {
|
|
37
|
+
const constructor = getTSTLClassConstructor(object);
|
|
38
|
+
if (constructor === undefined) {
|
|
39
|
+
return [];
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
const classEntries = Object.entries(constructor.prototype);
|
|
43
|
+
return classEntries.filter(
|
|
44
|
+
([key, value]) =>
|
|
45
|
+
// Ignore the stock TSTL keys that are baked into every class.
|
|
46
|
+
!TSTL_CLASS_METATABLE_KEYS.has(key) && type(value) === "function",
|
|
47
|
+
);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Helper function to get the name of a TypeScriptToLua class from the instantiated class object.
|
|
52
|
+
*
|
|
53
|
+
* TSTL classes are Lua tables created with the `__TS__Class` Lua function from the TSTL lualib.
|
|
54
|
+
* Their name is contained within "constructor.name" metatable key.
|
|
55
|
+
*
|
|
56
|
+
* For example, a `Map` class is has a name of "Map".
|
|
57
|
+
*
|
|
58
|
+
* Returns undefined if passed a non-table or if the provided table does not have a metatable.
|
|
59
|
+
*/
|
|
60
|
+
export function getTSTLClassName(object: unknown): string | undefined {
|
|
61
|
+
const constructor = getTSTLClassConstructor(object);
|
|
36
62
|
if (constructor === undefined) {
|
|
37
63
|
return undefined;
|
|
38
64
|
}
|
|
@@ -64,8 +90,9 @@ export function isIsaacScriptCommonClass(object: unknown): boolean {
|
|
|
64
90
|
/**
|
|
65
91
|
* Helper function to determine if a given object is a TypeScriptToLua `Map`.
|
|
66
92
|
*
|
|
67
|
-
* It is not reliable to use the `instanceof` operator to determine this because each Lua module
|
|
68
|
-
* their own
|
|
93
|
+
* It is not reliable to use the `instanceof` operator to determine this because each Lua module
|
|
94
|
+
* might have their own copy of the entire lualib and thus their own instantiated version of a
|
|
95
|
+
* `Map`.
|
|
69
96
|
*/
|
|
70
97
|
export function isTSTLMap(object: unknown): object is Map<AnyNotNil, unknown> {
|
|
71
98
|
const className = getTSTLClassName(object);
|
|
@@ -75,8 +102,9 @@ export function isTSTLMap(object: unknown): object is Map<AnyNotNil, unknown> {
|
|
|
75
102
|
/**
|
|
76
103
|
* Helper function to determine if a given object is a TypeScriptToLua `Set`.
|
|
77
104
|
*
|
|
78
|
-
* It is not reliable to use the `instanceof` operator to determine this because each Lua module
|
|
79
|
-
* their own
|
|
105
|
+
* It is not reliable to use the `instanceof` operator to determine this because each Lua module
|
|
106
|
+
* might have their own copy of the entire lualib and thus their own instantiated version of a
|
|
107
|
+
* `Set`.
|
|
80
108
|
*/
|
|
81
109
|
export function isTSTLSet(object: unknown): object is Set<AnyNotNil> {
|
|
82
110
|
const className = getTSTLClassName(object);
|
|
@@ -134,22 +162,18 @@ export function isVanillaTSTLClass(object: unknown): boolean {
|
|
|
134
162
|
* class.
|
|
135
163
|
*/
|
|
136
164
|
export function newTSTLClass(oldClass: TSTLClass): TSTLClass {
|
|
137
|
-
const
|
|
138
|
-
if (
|
|
165
|
+
const constructor = getTSTLClassConstructor(oldClass);
|
|
166
|
+
if (constructor === undefined) {
|
|
139
167
|
error(
|
|
140
|
-
"Failed to instantiate a new TypeScriptToLua class since the provided old class does not have a metatable.",
|
|
168
|
+
"Failed to instantiate a new TypeScriptToLua class since the provided old class does not have a metatable/constructor.",
|
|
141
169
|
);
|
|
142
170
|
}
|
|
143
171
|
|
|
144
|
-
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
/** This is a re-implementation of the transpiled "__TS__New" function. */
|
|
148
|
-
function newTSTLClassFromMetatable(metatable: TSTLClassMetatable): TSTLClass {
|
|
172
|
+
// We re-implement some of the logic from the transpiled "__TS__New" function.
|
|
149
173
|
const newClass = new LuaMap<AnyNotNil, unknown>();
|
|
150
174
|
const newClassMetatable = setmetatable(
|
|
151
175
|
newClass,
|
|
152
|
-
|
|
176
|
+
constructor.prototype,
|
|
153
177
|
) as unknown as TSTLClassMetatable;
|
|
154
178
|
newClassMetatable.____constructor(); // eslint-disable-line no-underscore-dangle
|
|
155
179
|
|
package/src/functions/utils.ts
CHANGED
|
@@ -72,8 +72,13 @@ export function iRange(start: int, end?: int, increment = 1): int[] {
|
|
|
72
72
|
}
|
|
73
73
|
|
|
74
74
|
/**
|
|
75
|
-
*
|
|
76
|
-
*
|
|
75
|
+
* Helper function to see if the current render callback is rendering a water reflection.
|
|
76
|
+
*
|
|
77
|
+
* When the player is in a room with water, things will be rendered twice: once for the normal
|
|
78
|
+
* rendering, and once for the reflecting rendering. Thus, any mod code in a render callback will
|
|
79
|
+
* run twice per frame in these situations, which may be unexpected or cause bugs.
|
|
80
|
+
*
|
|
81
|
+
* This function is typically used to early return from a render function if it returns true.
|
|
77
82
|
*/
|
|
78
83
|
export function isReflectionRender(): boolean {
|
|
79
84
|
const room = game.GetRoom();
|
|
@@ -89,6 +94,22 @@ export function isVanillaConsoleCommand(commandName: string): boolean {
|
|
|
89
94
|
return CONSOLE_COMMANDS_SET.has(commandName);
|
|
90
95
|
}
|
|
91
96
|
|
|
97
|
+
/**
|
|
98
|
+
* Helper function for creating objects that represent a mapping of an enum value to some other
|
|
99
|
+
* value in a type-safe way.
|
|
100
|
+
*
|
|
101
|
+
* This function will ensure that the provided object has a key for each value in the enum.
|
|
102
|
+
*
|
|
103
|
+
* After the `satisfies` operator is released in TypeScript 4.9, this function should be deleted.
|
|
104
|
+
*/
|
|
105
|
+
export function newObjectWithEnumKeys<
|
|
106
|
+
Enum extends number | string,
|
|
107
|
+
T extends Record<Enum, unknown>,
|
|
108
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
109
|
+
>(theEnum: Record<string, Enum>, obj: T): T {
|
|
110
|
+
return obj;
|
|
111
|
+
}
|
|
112
|
+
|
|
92
113
|
/**
|
|
93
114
|
* Helper function to print something to the in-game console. Use this instead of invoking the
|
|
94
115
|
* `Isaac.ConsoleOutput` method directly because it will automatically insert a newline at the end
|
|
@@ -181,3 +202,36 @@ export function twoDimensionalSort<T>(array1: T[], array2: T[]): -1 | 0 | 1 {
|
|
|
181
202
|
|
|
182
203
|
return firstElement1 < firstElement2 ? -1 : 1;
|
|
183
204
|
}
|
|
205
|
+
|
|
206
|
+
/**
|
|
207
|
+
* Helper function to validate that an interface contains all of the keys of an enum. You must
|
|
208
|
+
* specify both generic parameters in order for this to work properly (i.e. the interface and then
|
|
209
|
+
* the enum).
|
|
210
|
+
*
|
|
211
|
+
* For example:
|
|
212
|
+
*
|
|
213
|
+
* ```ts
|
|
214
|
+
* enum MyEnum {
|
|
215
|
+
* Value1,
|
|
216
|
+
* Value2,
|
|
217
|
+
* Value3,
|
|
218
|
+
* }
|
|
219
|
+
*
|
|
220
|
+
* interface MyEnumToType {
|
|
221
|
+
* [MyEnum.Value1]: boolean;
|
|
222
|
+
* [MyEnum.Value2]: number;
|
|
223
|
+
* [MyEnum.Value3]: string;
|
|
224
|
+
* }
|
|
225
|
+
*
|
|
226
|
+
* validateInterfaceMatchesEnum<MyEnumToType, MyEnum>();
|
|
227
|
+
* ```
|
|
228
|
+
*
|
|
229
|
+
* This function is only meant to be used with interfaces (i.e. types that will not exist at
|
|
230
|
+
* run-time). If you are generating an object that will contain all of the keys of an enum, use the
|
|
231
|
+
* `newObjectWithEnumKeys` helper function instead.
|
|
232
|
+
*/
|
|
233
|
+
export function validateInterfaceMatchesEnum<
|
|
234
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
235
|
+
T extends Record<Enum, unknown>,
|
|
236
|
+
Enum extends string | number,
|
|
237
|
+
>(): void {}
|
package/src/index.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export * from "./classes/DefaultMap";
|
|
2
|
+
export * from "./classes/ModFeature";
|
|
2
3
|
export * from "./classes/ModUpgraded";
|
|
3
4
|
export * from "./core/cachedClasses";
|
|
4
5
|
export * from "./core/constants";
|
|
@@ -7,7 +8,10 @@ export * from "./core/upgradeMod";
|
|
|
7
8
|
export * from "./enums/AmbushType";
|
|
8
9
|
export * from "./enums/CornerType";
|
|
9
10
|
export * from "./enums/HealthType";
|
|
11
|
+
export * from "./enums/ISCFeature";
|
|
12
|
+
export * from "./enums/LadderSubTypeCustom";
|
|
10
13
|
export * from "./enums/ModCallbackCustom";
|
|
14
|
+
export * from "./enums/ModCallbackCustom2";
|
|
11
15
|
export * from "./enums/PocketItemType";
|
|
12
16
|
export * from "./enums/RockAltType";
|
|
13
17
|
export * from "./enums/SaveDataKey";
|
|
@@ -17,8 +21,8 @@ export * from "./enums/StatType";
|
|
|
17
21
|
export * from "./features/characterHealthConversion";
|
|
18
22
|
export * from "./features/characterStats";
|
|
19
23
|
export * from "./features/collectibleItemPoolType";
|
|
20
|
-
export * from "./features/customDoor";
|
|
21
24
|
export * from "./features/customGridEntity";
|
|
25
|
+
export * from "./features/customHotkeys";
|
|
22
26
|
export * from "./features/customPickup";
|
|
23
27
|
export * from "./features/customStage/exports";
|
|
24
28
|
export * from "./features/customTrapdoor/exports";
|
|
@@ -42,7 +46,6 @@ export * from "./features/roomClearFrame";
|
|
|
42
46
|
export * from "./features/roomHistory";
|
|
43
47
|
export * from "./features/runInNFrames";
|
|
44
48
|
export * from "./features/saveDataManager/exports";
|
|
45
|
-
export * from "./features/setHotkey";
|
|
46
49
|
export * from "./features/sirenHelpers";
|
|
47
50
|
export * from "./features/stageHistory";
|
|
48
51
|
export * from "./features/taintedLazarusPlayers";
|
|
@@ -66,6 +69,7 @@ export * from "./functions/collectibleTag";
|
|
|
66
69
|
export * from "./functions/color";
|
|
67
70
|
export * from "./functions/curses";
|
|
68
71
|
export * from "./functions/debugFunctions";
|
|
72
|
+
export * from "./functions/decorators";
|
|
69
73
|
export * from "./functions/deepCopy";
|
|
70
74
|
export * from "./functions/deepCopyTests";
|
|
71
75
|
export * from "./functions/dev";
|
|
@@ -172,13 +176,22 @@ export * from "./maps/pillNameToEffectMap";
|
|
|
172
176
|
export * from "./maps/roomNameToTypeMap";
|
|
173
177
|
export * from "./objects/colors";
|
|
174
178
|
export * from "./objects/kColors";
|
|
179
|
+
export * from "./types/AllButFirst";
|
|
180
|
+
export * from "./types/AllButLast";
|
|
175
181
|
export * from "./types/AnyEntity";
|
|
176
182
|
export * from "./types/AnyGridEntity";
|
|
177
183
|
export * from "./types/CollectibleIndex";
|
|
184
|
+
export * from "./types/Constructor";
|
|
185
|
+
export * from "./types/FunctionTuple";
|
|
186
|
+
export * from "./types/HasAllEnumKeys";
|
|
178
187
|
export * from "./types/Immutable";
|
|
188
|
+
export * from "./types/LowercaseKeys";
|
|
179
189
|
export * from "./types/PickingUpItem";
|
|
180
190
|
export * from "./types/PickupIndex";
|
|
181
191
|
export * from "./types/PlayerIndex";
|
|
182
192
|
export * from "./types/PossibleStatType";
|
|
193
|
+
export * from "./types/StartsWithLowercase";
|
|
194
|
+
export * from "./types/StartsWithUppercase";
|
|
183
195
|
export * from "./types/TSTLClass";
|
|
196
|
+
export * from "./types/UppercaseKeys";
|
|
184
197
|
export * from "./types/WeightedArray";
|
|
@@ -7,7 +7,6 @@ import { postBoneSwingInit } from "./callbacks/postBoneSwing";
|
|
|
7
7
|
import { postCollectibleEmptyInit } from "./callbacks/postCollectibleEmpty";
|
|
8
8
|
import { postCollectibleInitFirstInit } from "./callbacks/postCollectibleInitFirst";
|
|
9
9
|
import { postCursedTeleportInit } from "./callbacks/postCursedTeleport";
|
|
10
|
-
import { postCustomDoorEnterInit } from "./callbacks/postCustomDoorEnter";
|
|
11
10
|
import { postDiceRoomActivatedInit } from "./callbacks/postDiceRoomActivated";
|
|
12
11
|
import { postDoorRenderInit } from "./callbacks/postDoorRender";
|
|
13
12
|
import { postDoorUpdateInit } from "./callbacks/postDoorUpdate";
|
|
@@ -82,7 +81,6 @@ export function initCustomCallbacks(mod: ModUpgraded): void {
|
|
|
82
81
|
postCollectibleEmptyInit(mod);
|
|
83
82
|
postCollectibleInitFirstInit(mod);
|
|
84
83
|
postCursedTeleportInit(mod);
|
|
85
|
-
postCustomDoorEnterInit();
|
|
86
84
|
postDiceRoomActivatedInit(mod);
|
|
87
85
|
postDoorRenderInit(mod);
|
|
88
86
|
postDoorUpdateInit(mod);
|
|
@@ -103,6 +101,7 @@ export function initCustomCallbacks(mod: ModUpgraded): void {
|
|
|
103
101
|
postItemDischargeInit(mod);
|
|
104
102
|
postLaserInitLateInit(mod);
|
|
105
103
|
postKnifeInitLateInit(mod);
|
|
104
|
+
// "postNewRoomEarlyCallbackInit" has already been called.
|
|
106
105
|
postNPCInitLateInit(mod);
|
|
107
106
|
postNPCStateChangedInit(mod);
|
|
108
107
|
postPickupCollectInit(mod);
|
package/src/initFeatures.ts
CHANGED
|
@@ -3,6 +3,7 @@ import { characterHealthConversionInit } from "./features/characterHealthConvers
|
|
|
3
3
|
import { characterStatsInit } from "./features/characterStats";
|
|
4
4
|
import { collectibleItemPoolTypeInit } from "./features/collectibleItemPoolType";
|
|
5
5
|
import { customGridEntityInit } from "./features/customGridEntity";
|
|
6
|
+
import { customHotkeysInit } from "./features/customHotkeys";
|
|
6
7
|
import { customPickupInit } from "./features/customPickup";
|
|
7
8
|
import { customStageInit } from "./features/customStage/init";
|
|
8
9
|
import { customTrapdoorInit } from "./features/customTrapdoor/init";
|
|
@@ -24,7 +25,6 @@ import { roomClearFrameInit } from "./features/roomClearFrame";
|
|
|
24
25
|
import { roomHistoryInit } from "./features/roomHistory";
|
|
25
26
|
import { runInNFramesInit } from "./features/runInNFrames";
|
|
26
27
|
import { runNextRoomInit } from "./features/runNextRoom";
|
|
27
|
-
import { setHotkeyInit } from "./features/setHotkey";
|
|
28
28
|
import { sirenHelpersInit } from "./features/sirenHelpers";
|
|
29
29
|
import { stageHistoryInit } from "./features/stageHistory";
|
|
30
30
|
import { taintedLazarusPlayersInit } from "./features/taintedLazarusPlayers";
|
|
@@ -44,6 +44,7 @@ function initFeaturesMajor(mod: ModUpgraded) {
|
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
function initFeaturesMinor(mod: ModUpgraded) {
|
|
47
|
+
customHotkeysInit(mod);
|
|
47
48
|
customPickupInit(mod);
|
|
48
49
|
customTrapdoorInit(mod);
|
|
49
50
|
disableAllSoundInit(mod);
|
|
@@ -63,7 +64,6 @@ function initFeaturesMinor(mod: ModUpgraded) {
|
|
|
63
64
|
roomClearFrameInit(mod);
|
|
64
65
|
roomHistoryInit(mod);
|
|
65
66
|
runNextRoomInit(mod);
|
|
66
|
-
setHotkeyInit(mod);
|
|
67
67
|
sirenHelpersInit(mod);
|
|
68
68
|
stageHistoryInit(mod);
|
|
69
69
|
taintedLazarusPlayersInit(mod);
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/explicit-member-accessibility */
|
|
2
|
+
/* eslint-disable class-methods-use-this */
|
|
1
3
|
/* eslint-disable max-classes-per-file */
|
|
2
4
|
|
|
3
5
|
import { CopyableIsaacAPIClass } from "../objects/isaacAPIClassTypeToFunctions";
|
|
@@ -233,7 +235,7 @@ function test<Persistent, Run, Level>(
|
|
|
233
235
|
{
|
|
234
236
|
class Foo {
|
|
235
237
|
someField = 123;
|
|
236
|
-
someMethod() {}
|
|
238
|
+
someMethod() {}
|
|
237
239
|
}
|
|
238
240
|
|
|
239
241
|
const saveDataWithClassWithMethod = {
|
|
@@ -264,7 +266,7 @@ function test<Persistent, Run, Level>(
|
|
|
264
266
|
{
|
|
265
267
|
class Foo {
|
|
266
268
|
someField = 123;
|
|
267
|
-
someMethod() {}
|
|
269
|
+
someMethod() {}
|
|
268
270
|
}
|
|
269
271
|
|
|
270
272
|
const saveDataWithNestedClass = {
|
|
File without changes
|
package/src/interfaces/private/{AddCallbackParameterCustom.ts → AddCallbackParametersCustom.ts}
RENAMED
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { PostAmbushFinishedRegisterParameters } from "../../callbacks/subscriptions/postAmbushFinished";
|
|
2
2
|
import { PostAmbushStartedRegisterParameters } from "../../callbacks/subscriptions/postAmbushStarted";
|
|
3
|
+
import { PostBombExplodedRegisterParameters } from "../../callbacks/subscriptions/postBombExploded";
|
|
3
4
|
import { PostBombInitRegisterParameters } from "../../callbacks/subscriptions/postBombInitLate";
|
|
4
|
-
import { PostBombExplodedRegisterParameters } from "../../callbacks/subscriptions/postBoneExploded";
|
|
5
5
|
import { PostBoneSwingRegisterParameters } from "../../callbacks/subscriptions/postBoneSwing";
|
|
6
6
|
import { PostCollectibleEmptyRegisterParameters } from "../../callbacks/subscriptions/postCollectibleEmpty";
|
|
7
7
|
import { PostCollectibleInitFirstRegisterParameters } from "../../callbacks/subscriptions/postCollectibleInitFirst";
|
|
8
8
|
import { PostCursedTeleportRegisterParameters } from "../../callbacks/subscriptions/postCursedTeleport";
|
|
9
|
-
import { PostCustomDoorEnterRegisterParameters } from "../../callbacks/subscriptions/postCustomDoorEnter";
|
|
10
9
|
import { PostCustomReviveRegisterParameters } from "../../callbacks/subscriptions/postCustomRevive";
|
|
11
10
|
import { PostDiceRoomActivatedRegisterParameters } from "../../callbacks/subscriptions/postDiceRoomActivated";
|
|
12
11
|
import { PostDoorRenderRegisterParameters } from "../../callbacks/subscriptions/postDoorRender";
|
|
@@ -93,6 +92,7 @@ import { PreGetPedestalRegisterParameters } from "../../callbacks/subscriptions/
|
|
|
93
92
|
import { PreItemPickupRegisterParameters } from "../../callbacks/subscriptions/preItemPickup";
|
|
94
93
|
import { PreNewLevelRegisterParameters } from "../../callbacks/subscriptions/preNewLevel";
|
|
95
94
|
import { ModCallbackCustom } from "../../enums/ModCallbackCustom";
|
|
95
|
+
import { validateInterfaceMatchesEnum } from "../../functions/utils";
|
|
96
96
|
|
|
97
97
|
export interface AddCallbackParametersCustom {
|
|
98
98
|
[ModCallbackCustom.POST_AMBUSH_FINISHED]: PostAmbushFinishedRegisterParameters;
|
|
@@ -103,7 +103,6 @@ export interface AddCallbackParametersCustom {
|
|
|
103
103
|
[ModCallbackCustom.POST_COLLECTIBLE_EMPTY]: PostCollectibleEmptyRegisterParameters;
|
|
104
104
|
[ModCallbackCustom.POST_COLLECTIBLE_INIT_FIRST]: PostCollectibleInitFirstRegisterParameters;
|
|
105
105
|
[ModCallbackCustom.POST_CURSED_TELEPORT]: PostCursedTeleportRegisterParameters;
|
|
106
|
-
[ModCallbackCustom.POST_CUSTOM_DOOR_ENTER]: PostCustomDoorEnterRegisterParameters;
|
|
107
106
|
[ModCallbackCustom.POST_CUSTOM_REVIVE]: PostCustomReviveRegisterParameters;
|
|
108
107
|
[ModCallbackCustom.POST_DICE_ROOM_ACTIVATED]: PostDiceRoomActivatedRegisterParameters;
|
|
109
108
|
[ModCallbackCustom.POST_DOOR_RENDER]: PostDoorRenderRegisterParameters;
|
|
@@ -148,7 +147,6 @@ export interface AddCallbackParametersCustom {
|
|
|
148
147
|
[ModCallbackCustom.POST_PICKUP_INIT_FIRST]: PostPickupInitFirstRegisterParameters;
|
|
149
148
|
[ModCallbackCustom.POST_PICKUP_INIT_LATE]: PostPickupInitLateRegisterParameters;
|
|
150
149
|
[ModCallbackCustom.POST_PICKUP_STATE_CHANGED]: PostPickupStateChangedRegisterParameters;
|
|
151
|
-
[ModCallbackCustom.POST_PIT_RENDER]: PostPitRenderRegisterParameters;
|
|
152
150
|
[ModCallbackCustom.POST_PIT_UPDATE]: PostPitUpdateRegisterParameters;
|
|
153
151
|
[ModCallbackCustom.POST_PLAYER_CHANGE_HEALTH]: PostPlayerChangeHealthRegisterParameters;
|
|
154
152
|
[ModCallbackCustom.POST_PLAYER_CHANGE_STAT]: PostPlayerChangeStatRegisterParameters;
|
|
@@ -160,6 +158,7 @@ export interface AddCallbackParametersCustom {
|
|
|
160
158
|
[ModCallbackCustom.POST_PLAYER_INIT_LATE]: PostPlayerInitLateRegisterParameters;
|
|
161
159
|
[ModCallbackCustom.POST_PLAYER_RENDER_REORDERED]: PostPlayerRenderReorderedRegisterParameters;
|
|
162
160
|
[ModCallbackCustom.POST_PLAYER_UPDATE_REORDERED]: PostPlayerUpdateReorderedRegisterParameters;
|
|
161
|
+
[ModCallbackCustom.POST_PIT_RENDER]: PostPitRenderRegisterParameters;
|
|
163
162
|
[ModCallbackCustom.POST_POOP_RENDER]: PostPoopRenderRegisterParameters;
|
|
164
163
|
[ModCallbackCustom.POST_POOP_UPDATE]: PostPoopUpdateRegisterParameters;
|
|
165
164
|
[ModCallbackCustom.POST_PRESSURE_PLATE_RENDER]: PostPressurePlateRenderRegisterParameters;
|
|
@@ -191,22 +190,4 @@ export interface AddCallbackParametersCustom {
|
|
|
191
190
|
[ModCallbackCustom.PRE_NEW_LEVEL]: PreNewLevelRegisterParameters;
|
|
192
191
|
}
|
|
193
192
|
|
|
194
|
-
|
|
195
|
-
type EnumToCheck = ModCallbackCustom;
|
|
196
|
-
type InterfaceToCheck = AddCallbackParametersCustom;
|
|
197
|
-
|
|
198
|
-
// Throw a compiler error if InterfaceToCheck does not match the values of EnumToCheck.
|
|
199
|
-
// From: https://stackoverflow.com/questions/51829842
|
|
200
|
-
type KeysMissing = Exclude<EnumToCheck, keyof InterfaceToCheck>;
|
|
201
|
-
type ExtraKeys = {
|
|
202
|
-
[K in keyof InterfaceToCheck]: Extract<EnumToCheck, K> extends never
|
|
203
|
-
? K
|
|
204
|
-
: never;
|
|
205
|
-
}[keyof InterfaceToCheck];
|
|
206
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
207
|
-
type Verify<
|
|
208
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
209
|
-
_Missing extends never = KeysMissing,
|
|
210
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
211
|
-
_Extra extends never = ExtraKeys,
|
|
212
|
-
> = 0;
|
|
193
|
+
validateInterfaceMatchesEnum<AddCallbackParametersCustom, ModCallbackCustom>();
|