isaacscript-common 6.6.0 → 6.6.1-dev.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cachedClasses.d.ts +1 -0
- package/cachedClasses.js +59 -0
- package/cachedClasses.lua +2 -0
- package/callbacks/customRevive.js +153 -0
- package/callbacks/customRevive.lua +2 -0
- package/callbacks/itemPickup.js +64 -0
- package/callbacks/itemPickup.lua +2 -0
- package/callbacks/postAmbush.js +54 -0
- package/callbacks/postAmbush.lua +2 -0
- package/callbacks/postBombExploded.js +20 -0
- package/callbacks/postBombExploded.lua +2 -0
- package/callbacks/postBombInitLate.js +28 -0
- package/callbacks/postBombInitLate.lua +2 -0
- package/callbacks/postBoneSwing.js +49 -0
- package/callbacks/postBoneSwing.lua +2 -0
- package/callbacks/postCollectibleEmpty.js +32 -0
- package/callbacks/postCollectibleEmpty.lua +2 -0
- package/callbacks/postCollectibleInitFirst.js +27 -0
- package/callbacks/postCollectibleInitFirst.lua +2 -0
- package/callbacks/postCursedTeleport.js +120 -0
- package/callbacks/postCursedTeleport.lua +2 -0
- package/callbacks/postCustomDoorEnter.js +205 -0
- package/callbacks/postCustomDoorEnter.lua +2 -0
- package/callbacks/postDiceRoomActivated.js +39 -0
- package/callbacks/postDiceRoomActivated.lua +2 -0
- package/callbacks/postDoorRender.js +20 -0
- package/callbacks/postDoorRender.lua +2 -0
- package/callbacks/postDoorUpdate.js +20 -0
- package/callbacks/postDoorUpdate.lua +2 -0
- package/callbacks/postEffectInitLate.js +28 -0
- package/callbacks/postEffectInitLate.lua +2 -0
- package/callbacks/postEffectStateChanged.js +31 -0
- package/callbacks/postEffectStateChanged.lua +2 -0
- package/callbacks/postEsauJr.js +70 -0
- package/callbacks/postEsauJr.lua +2 -0
- package/callbacks/postFamiliarInitLate.js +28 -0
- package/callbacks/postFamiliarInitLate.lua +2 -0
- package/callbacks/postFamiliarStateChanged.js +31 -0
- package/callbacks/postFamiliarStateChanged.lua +2 -0
- package/callbacks/postFlip.js +59 -0
- package/callbacks/postFlip.lua +2 -0
- package/callbacks/postGreedModeWave.js +31 -0
- package/callbacks/postGreedModeWave.lua +2 -0
- package/callbacks/postGridEntity.js +107 -0
- package/callbacks/postGridEntity.lua +2 -0
- package/callbacks/postGridEntityCollision.js +49 -0
- package/callbacks/postGridEntityCollision.lua +2 -0
- package/callbacks/postGridEntityRender.js +20 -0
- package/callbacks/postGridEntityRender.lua +2 -0
- package/callbacks/postHolyMantleRemoved.js +33 -0
- package/callbacks/postHolyMantleRemoved.lua +2 -0
- package/callbacks/postItemDischarged.js +94 -0
- package/callbacks/postItemDischarged.lua +2 -0
- package/callbacks/postKnifeInitLate.js +28 -0
- package/callbacks/postKnifeInitLate.lua +2 -0
- package/callbacks/postLaserInitLate.js +28 -0
- package/callbacks/postLaserInitLate.lua +2 -0
- package/callbacks/postNPCInitLate.js +28 -0
- package/callbacks/postNPCInitLate.lua +2 -0
- package/callbacks/postNPCStateChanged.js +31 -0
- package/callbacks/postNPCStateChanged.lua +2 -0
- package/callbacks/postNewRoomEarly.js +69 -0
- package/callbacks/postNewRoomEarly.lua +2 -0
- package/callbacks/postPickupCollect.js +37 -0
- package/callbacks/postPickupCollect.lua +2 -0
- package/callbacks/postPickupInitFirst.js +52 -0
- package/callbacks/postPickupInitFirst.lua +2 -0
- package/callbacks/postPickupInitLate.js +28 -0
- package/callbacks/postPickupInitLate.lua +2 -0
- package/callbacks/postPickupStateChanged.js +31 -0
- package/callbacks/postPickupStateChanged.lua +2 -0
- package/callbacks/postPitRender.js +20 -0
- package/callbacks/postPitRender.lua +2 -0
- package/callbacks/postPitUpdate.js +20 -0
- package/callbacks/postPitUpdate.lua +2 -0
- package/callbacks/postPlayerChangeHealth.js +43 -0
- package/callbacks/postPlayerChangeHealth.lua +2 -0
- package/callbacks/postPlayerChangeType.js +31 -0
- package/callbacks/postPlayerChangeType.lua +2 -0
- package/callbacks/postPlayerCollectible.js +74 -0
- package/callbacks/postPlayerCollectible.lua +2 -0
- package/callbacks/postPlayerFatalDamage.js +74 -0
- package/callbacks/postPlayerFatalDamage.lua +2 -0
- package/callbacks/postPlayerInitLate.js +28 -0
- package/callbacks/postPlayerInitLate.lua +2 -0
- package/callbacks/postPlayerReordered.js +109 -0
- package/callbacks/postPlayerReordered.lua +2 -0
- package/callbacks/postPoopRender.js +20 -0
- package/callbacks/postPoopRender.lua +2 -0
- package/callbacks/postPoopUpdate.js +20 -0
- package/callbacks/postPoopUpdate.lua +2 -0
- package/callbacks/postPressurePlateRender.js +20 -0
- package/callbacks/postPressurePlateRender.lua +2 -0
- package/callbacks/postPressurePlateUpdate.js +20 -0
- package/callbacks/postPressurePlateUpdate.lua +2 -0
- package/callbacks/postProjectileInitLate.js +28 -0
- package/callbacks/postProjectileInitLate.lua +2 -0
- package/callbacks/postPurchase.js +39 -0
- package/callbacks/postPurchase.lua +2 -0
- package/callbacks/postRockRender.js +20 -0
- package/callbacks/postRockRender.lua +2 -0
- package/callbacks/postRockUpdate.js +20 -0
- package/callbacks/postRockUpdate.lua +2 -0
- package/callbacks/postRoomClearChanged.js +41 -0
- package/callbacks/postRoomClearChanged.lua +2 -0
- package/callbacks/postSacrifice.js +38 -0
- package/callbacks/postSacrifice.lua +2 -0
- package/callbacks/postSlotDestroyed.js +64 -0
- package/callbacks/postSlotDestroyed.lua +2 -0
- package/callbacks/postSlotInitUpdate.js +49 -0
- package/callbacks/postSlotInitUpdate.lua +2 -0
- package/callbacks/postSlotRender.js +48 -0
- package/callbacks/postSlotRender.lua +2 -0
- package/callbacks/postSpikesRender.js +20 -0
- package/callbacks/postSpikesRender.lua +2 -0
- package/callbacks/postSpikesUpdate.js +20 -0
- package/callbacks/postSpikesUpdate.lua +2 -0
- package/callbacks/postTNTRender.js +20 -0
- package/callbacks/postTNTRender.lua +2 -0
- package/callbacks/postTNTUpdate.js +20 -0
- package/callbacks/postTNTUpdate.lua +2 -0
- package/callbacks/postTearInitLate.js +28 -0
- package/callbacks/postTearInitLate.lua +2 -0
- package/callbacks/postTearInitVeryLate.js +32 -0
- package/callbacks/postTearInitVeryLate.lua +2 -0
- package/callbacks/postTransformation.js +37 -0
- package/callbacks/postTransformation.lua +2 -0
- package/callbacks/postTrinketBreak.js +64 -0
- package/callbacks/postTrinketBreak.lua +2 -0
- package/callbacks/preBerserkDeath.js +35 -0
- package/callbacks/preBerserkDeath.lua +2 -0
- package/callbacks/preNewLevel.js +45 -0
- package/callbacks/preNewLevel.lua +2 -0
- package/callbacks/reorderedCallbacks.js +136 -0
- package/callbacks/reorderedCallbacks.lua +2 -0
- package/callbacks/subscriptions/postAmbushFinished.js +20 -0
- package/callbacks/subscriptions/postAmbushFinished.lua +2 -0
- package/callbacks/subscriptions/postAmbushStarted.js +20 -0
- package/callbacks/subscriptions/postAmbushStarted.lua +2 -0
- package/callbacks/subscriptions/postBombInitLate.js +20 -0
- package/callbacks/subscriptions/postBombInitLate.lua +2 -0
- package/callbacks/subscriptions/postBoneExploded.js +20 -0
- package/callbacks/subscriptions/postBoneExploded.lua +2 -0
- package/callbacks/subscriptions/postBoneSwing.js +16 -0
- package/callbacks/subscriptions/postBoneSwing.lua +2 -0
- package/callbacks/subscriptions/postCollectibleEmpty.js +21 -0
- package/callbacks/subscriptions/postCollectibleEmpty.lua +2 -0
- package/callbacks/subscriptions/postCollectibleInitFirst.js +21 -0
- package/callbacks/subscriptions/postCollectibleInitFirst.lua +2 -0
- package/callbacks/subscriptions/postCursedTeleport.js +16 -0
- package/callbacks/subscriptions/postCursedTeleport.lua +2 -0
- package/callbacks/subscriptions/postCustomDoorEnter.js +21 -0
- package/callbacks/subscriptions/postCustomDoorEnter.lua +2 -0
- package/callbacks/subscriptions/postCustomRevive.js +21 -0
- package/callbacks/subscriptions/postCustomRevive.lua +2 -0
- package/callbacks/subscriptions/postDiceRoomActivated.js +21 -0
- package/callbacks/subscriptions/postDiceRoomActivated.lua +2 -0
- package/callbacks/subscriptions/postDoorRender.js +22 -0
- package/callbacks/subscriptions/postDoorRender.lua +2 -0
- package/callbacks/subscriptions/postDoorUpdate.js +22 -0
- package/callbacks/subscriptions/postDoorUpdate.lua +2 -0
- package/callbacks/subscriptions/postEffectInitLate.js +20 -0
- package/callbacks/subscriptions/postEffectInitLate.lua +2 -0
- package/callbacks/subscriptions/postEffectStateChanged.js +20 -0
- package/callbacks/subscriptions/postEffectStateChanged.lua +2 -0
- package/callbacks/subscriptions/postEsauJr.js +16 -0
- package/callbacks/subscriptions/postEsauJr.lua +2 -0
- package/callbacks/subscriptions/postFamiliarInitLate.js +20 -0
- package/callbacks/subscriptions/postFamiliarInitLate.lua +2 -0
- package/callbacks/subscriptions/postFamiliarStateChanged.js +20 -0
- package/callbacks/subscriptions/postFamiliarStateChanged.lua +2 -0
- package/callbacks/subscriptions/postFirstEsauJr.js +16 -0
- package/callbacks/subscriptions/postFirstEsauJr.lua +2 -0
- package/callbacks/subscriptions/postFirstFlip.js +16 -0
- package/callbacks/subscriptions/postFirstFlip.lua +2 -0
- package/callbacks/subscriptions/postFlip.js +16 -0
- package/callbacks/subscriptions/postFlip.lua +2 -0
- package/callbacks/subscriptions/postGameStartedReordered.js +16 -0
- package/callbacks/subscriptions/postGameStartedReordered.lua +2 -0
- package/callbacks/subscriptions/postGreedModeWave.js +16 -0
- package/callbacks/subscriptions/postGreedModeWave.lua +2 -0
- package/callbacks/subscriptions/postGridEntityBroken.js +28 -0
- package/callbacks/subscriptions/postGridEntityBroken.lua +2 -0
- package/callbacks/subscriptions/postGridEntityCollision.js +28 -0
- package/callbacks/subscriptions/postGridEntityCollision.lua +2 -0
- package/callbacks/subscriptions/postGridEntityInit.js +28 -0
- package/callbacks/subscriptions/postGridEntityInit.lua +2 -0
- package/callbacks/subscriptions/postGridEntityRemove.js +26 -0
- package/callbacks/subscriptions/postGridEntityRemove.lua +2 -0
- package/callbacks/subscriptions/postGridEntityRender.js +28 -0
- package/callbacks/subscriptions/postGridEntityRender.lua +2 -0
- package/callbacks/subscriptions/postGridEntityStateChanged.js +28 -0
- package/callbacks/subscriptions/postGridEntityStateChanged.lua +2 -0
- package/callbacks/subscriptions/postGridEntityUpdate.js +28 -0
- package/callbacks/subscriptions/postGridEntityUpdate.lua +2 -0
- package/callbacks/subscriptions/postHolyMantleRemoved.js +25 -0
- package/callbacks/subscriptions/postHolyMantleRemoved.lua +2 -0
- package/callbacks/subscriptions/postItemDischarged.js +21 -0
- package/callbacks/subscriptions/postItemDischarged.lua +2 -0
- package/callbacks/subscriptions/postItemPickup.js +25 -0
- package/callbacks/subscriptions/postItemPickup.lua +2 -0
- package/callbacks/subscriptions/postKnifeInitLate.js +20 -0
- package/callbacks/subscriptions/postKnifeInitLate.lua +2 -0
- package/callbacks/subscriptions/postLaserInitLate.js +20 -0
- package/callbacks/subscriptions/postLaserInitLate.lua +2 -0
- package/callbacks/subscriptions/postNPCInitLate.js +20 -0
- package/callbacks/subscriptions/postNPCInitLate.lua +2 -0
- package/callbacks/subscriptions/postNPCStateChanged.js +24 -0
- package/callbacks/subscriptions/postNPCStateChanged.lua +2 -0
- package/callbacks/subscriptions/postNewLevelReordered.js +16 -0
- package/callbacks/subscriptions/postNewLevelReordered.lua +2 -0
- package/callbacks/subscriptions/postNewRoomEarly.js +16 -0
- package/callbacks/subscriptions/postNewRoomEarly.lua +2 -0
- package/callbacks/subscriptions/postNewRoomReordered.js +16 -0
- package/callbacks/subscriptions/postNewRoomReordered.lua +2 -0
- package/callbacks/subscriptions/postPEffectUpdateReordered.js +25 -0
- package/callbacks/subscriptions/postPEffectUpdateReordered.lua +2 -0
- package/callbacks/subscriptions/postPickupCollect.js +20 -0
- package/callbacks/subscriptions/postPickupCollect.lua +2 -0
- package/callbacks/subscriptions/postPickupInitFirst.js +20 -0
- package/callbacks/subscriptions/postPickupInitFirst.lua +2 -0
- package/callbacks/subscriptions/postPickupInitLate.js +20 -0
- package/callbacks/subscriptions/postPickupInitLate.lua +2 -0
- package/callbacks/subscriptions/postPickupStateChanged.js +20 -0
- package/callbacks/subscriptions/postPickupStateChanged.lua +2 -0
- package/callbacks/subscriptions/postPitRender.js +22 -0
- package/callbacks/subscriptions/postPitRender.lua +2 -0
- package/callbacks/subscriptions/postPitUpdate.js +22 -0
- package/callbacks/subscriptions/postPitUpdate.lua +2 -0
- package/callbacks/subscriptions/postPlayerChangeHealth.js +25 -0
- package/callbacks/subscriptions/postPlayerChangeHealth.lua +2 -0
- package/callbacks/subscriptions/postPlayerChangeType.js +20 -0
- package/callbacks/subscriptions/postPlayerChangeType.lua +2 -0
- package/callbacks/subscriptions/postPlayerCollectibleAdded.js +21 -0
- package/callbacks/subscriptions/postPlayerCollectibleAdded.lua +2 -0
- package/callbacks/subscriptions/postPlayerCollectibleRemoved.js +21 -0
- package/callbacks/subscriptions/postPlayerCollectibleRemoved.lua +2 -0
- package/callbacks/subscriptions/postPlayerFatalDamage.js +29 -0
- package/callbacks/subscriptions/postPlayerFatalDamage.lua +2 -0
- package/callbacks/subscriptions/postPlayerInitLate.js +25 -0
- package/callbacks/subscriptions/postPlayerInitLate.lua +2 -0
- package/callbacks/subscriptions/postPlayerInitReordered.js +25 -0
- package/callbacks/subscriptions/postPlayerInitReordered.lua +2 -0
- package/callbacks/subscriptions/postPlayerRenderReordered.js +25 -0
- package/callbacks/subscriptions/postPlayerRenderReordered.lua +2 -0
- package/callbacks/subscriptions/postPlayerUpdateReordered.js +25 -0
- package/callbacks/subscriptions/postPlayerUpdateReordered.lua +2 -0
- package/callbacks/subscriptions/postPoopRender.js +22 -0
- package/callbacks/subscriptions/postPoopRender.lua +2 -0
- package/callbacks/subscriptions/postPoopUpdate.js +22 -0
- package/callbacks/subscriptions/postPoopUpdate.lua +2 -0
- package/callbacks/subscriptions/postPressurePlateRender.js +22 -0
- package/callbacks/subscriptions/postPressurePlateRender.lua +2 -0
- package/callbacks/subscriptions/postPressurePlateUpdate.js +22 -0
- package/callbacks/subscriptions/postPressurePlateUpdate.lua +2 -0
- package/callbacks/subscriptions/postProjectileInitLate.js +21 -0
- package/callbacks/subscriptions/postProjectileInitLate.lua +2 -0
- package/callbacks/subscriptions/postPurchase.js +16 -0
- package/callbacks/subscriptions/postPurchase.lua +2 -0
- package/callbacks/subscriptions/postRockRender.js +22 -0
- package/callbacks/subscriptions/postRockRender.lua +2 -0
- package/callbacks/subscriptions/postRockUpdate.js +22 -0
- package/callbacks/subscriptions/postRockUpdate.lua +2 -0
- package/callbacks/subscriptions/postRoomClearChanged.js +20 -0
- package/callbacks/subscriptions/postRoomClearChanged.lua +2 -0
- package/callbacks/subscriptions/postSacrifice.js +25 -0
- package/callbacks/subscriptions/postSacrifice.lua +2 -0
- package/callbacks/subscriptions/postSlotAnimationChanged.js +20 -0
- package/callbacks/subscriptions/postSlotAnimationChanged.lua +2 -0
- package/callbacks/subscriptions/postSlotDestroyed.js +26 -0
- package/callbacks/subscriptions/postSlotDestroyed.lua +2 -0
- package/callbacks/subscriptions/postSlotInit.js +20 -0
- package/callbacks/subscriptions/postSlotInit.lua +2 -0
- package/callbacks/subscriptions/postSlotRender.js +20 -0
- package/callbacks/subscriptions/postSlotRender.lua +2 -0
- package/callbacks/subscriptions/postSlotUpdate.js +20 -0
- package/callbacks/subscriptions/postSlotUpdate.lua +2 -0
- package/callbacks/subscriptions/postSpikesRender.js +22 -0
- package/callbacks/subscriptions/postSpikesRender.lua +2 -0
- package/callbacks/subscriptions/postSpikesUpdate.js +22 -0
- package/callbacks/subscriptions/postSpikesUpdate.lua +2 -0
- package/callbacks/subscriptions/postTNTRender.js +22 -0
- package/callbacks/subscriptions/postTNTRender.lua +2 -0
- package/callbacks/subscriptions/postTNTUpdate.js +22 -0
- package/callbacks/subscriptions/postTNTUpdate.lua +2 -0
- package/callbacks/subscriptions/postTearInitLate.js +20 -0
- package/callbacks/subscriptions/postTearInitLate.lua +2 -0
- package/callbacks/subscriptions/postTearInitVeryLate.js +20 -0
- package/callbacks/subscriptions/postTearInitVeryLate.lua +2 -0
- package/callbacks/subscriptions/postTransformation.js +20 -0
- package/callbacks/subscriptions/postTransformation.lua +2 -0
- package/callbacks/subscriptions/postTrinketBreak.js +21 -0
- package/callbacks/subscriptions/postTrinketBreak.lua +2 -0
- package/callbacks/subscriptions/preBerserkDeath.js +26 -0
- package/callbacks/subscriptions/preBerserkDeath.lua +2 -0
- package/callbacks/subscriptions/preCustomRevive.js +29 -0
- package/callbacks/subscriptions/preCustomRevive.lua +2 -0
- package/callbacks/subscriptions/preItemPickup.js +25 -0
- package/callbacks/subscriptions/preItemPickup.lua +2 -0
- package/callbacks/subscriptions/preNewLevel.js +16 -0
- package/callbacks/subscriptions/preNewLevel.lua +2 -0
- package/classes/DefaultMap.js +145 -0
- package/classes/DefaultMap.lua +2 -0
- package/classes/ModUpgraded.js +57 -0
- package/classes/ModUpgraded.lua +2 -0
- package/constants.js +143 -0
- package/constants.lua +2 -0
- package/constantsFirstLast.js +156 -0
- package/constantsFirstLast.lua +2 -0
- package/enums/AmbushType.js +6 -0
- package/enums/AmbushType.lua +2 -0
- package/enums/CornerType.js +8 -0
- package/enums/CornerType.lua +2 -0
- package/enums/DecorationVariant.js +11 -0
- package/enums/DecorationVariant.lua +2 -0
- package/enums/HealthType.js +18 -0
- package/enums/HealthType.lua +2 -0
- package/enums/ModCallbackCustom.js +1213 -0
- package/enums/ModCallbackCustom.lua +2 -0
- package/enums/PocketItemType.js +10 -0
- package/enums/PocketItemType.lua +2 -0
- package/enums/RockAltType.js +9 -0
- package/enums/RockAltType.lua +2 -0
- package/enums/SerializationType.js +7 -0
- package/enums/SerializationType.lua +2 -0
- package/enums/SlotDestructionType.js +6 -0
- package/enums/SlotDestructionType.lua +2 -0
- package/enums/private/CopyableIsaacAPIClassType.js +9 -0
- package/enums/private/CopyableIsaacAPIClassType.lua +2 -0
- package/enums/private/SaveDataKey.js +8 -0
- package/enums/private/SaveDataKey.lua +2 -0
- package/enums/private/SerializationBrand.js +41 -0
- package/enums/private/SerializationBrand.lua +2 -0
- package/features/characterHealthConversion.js +86 -0
- package/features/characterHealthConversion.lua +2 -0
- package/features/characterStats.js +52 -0
- package/features/characterStats.lua +2 -0
- package/features/collectibleItemPoolType.js +45 -0
- package/features/collectibleItemPoolType.lua +2 -0
- package/features/customGridEntity.js +148 -0
- package/features/customGridEntity.lua +2 -0
- package/features/customStage/backdrop.js +191 -0
- package/features/customStage/backdrop.lua +9 -7
- package/features/customStage/customStageConstants.js +2 -0
- package/features/customStage/customStageConstants.lua +2 -0
- package/features/customStage/exports.js +147 -0
- package/features/customStage/exports.lua +8 -1
- package/features/customStage/gridEntities.js +138 -0
- package/features/customStage/gridEntities.lua +2 -0
- package/features/customStage/init.js +104 -0
- package/features/customStage/init.lua +4 -9
- package/features/customStage/metadata.json +1 -0
- package/features/customStage/metadata.lua +2 -0
- package/features/customStage/shadows.d.ts +0 -1
- package/features/customStage/shadows.js +63 -0
- package/features/customStage/shadows.lua +31 -19
- package/features/customStage/streakText.d.ts +1 -1
- package/features/customStage/streakText.js +35 -0
- package/features/customStage/streakText.lua +14 -3
- package/features/customStage/util.js +36 -0
- package/features/customStage/util.lua +2 -0
- package/features/customStage/v.js +18 -0
- package/features/customStage/v.lua +2 -0
- package/features/customStage/versusScreen.js +184 -0
- package/features/customStage/versusScreen.lua +8 -1
- package/features/debugDisplay/debugDisplay.js +183 -0
- package/features/debugDisplay/debugDisplay.lua +2 -0
- package/features/debugDisplay/exports.js +441 -0
- package/features/debugDisplay/exports.lua +2 -0
- package/features/debugDisplay/v.d.ts +18 -0
- package/features/debugDisplay/v.js +61 -0
- package/features/debugDisplay/v.lua +2 -0
- package/features/deployJSONRoom.js +532 -0
- package/features/deployJSONRoom.lua +2 -0
- package/features/disableAllSound.js +63 -0
- package/features/disableAllSound.lua +2 -0
- package/features/disableInputs.js +130 -0
- package/features/disableInputs.lua +2 -0
- package/features/extraConsoleCommands/commandsDisplay.js +236 -0
- package/features/extraConsoleCommands/commandsDisplay.lua +2 -0
- package/features/extraConsoleCommands/commandsSubroutines.js +109 -0
- package/features/extraConsoleCommands/commandsSubroutines.lua +2 -0
- package/features/extraConsoleCommands/exports.js +53 -0
- package/features/extraConsoleCommands/exports.lua +2 -0
- package/features/extraConsoleCommands/init.js +239 -0
- package/features/extraConsoleCommands/init.lua +2 -0
- package/features/extraConsoleCommands/listCommands.js +1081 -0
- package/features/extraConsoleCommands/listCommands.lua +2 -0
- package/features/extraConsoleCommands/v.js +25 -0
- package/features/extraConsoleCommands/v.lua +2 -0
- package/features/fadeInRemover.js +51 -0
- package/features/fadeInRemover.lua +2 -0
- package/features/fastReset.js +61 -0
- package/features/fastReset.lua +2 -0
- package/features/forgottenSwitch.js +33 -0
- package/features/forgottenSwitch.lua +2 -0
- package/features/pause.js +68 -0
- package/features/pause.lua +2 -0
- package/features/persistentEntities.js +120 -0
- package/features/persistentEntities.lua +2 -0
- package/features/playerInventory.js +89 -0
- package/features/playerInventory.lua +2 -0
- package/features/ponyDetection.js +63 -0
- package/features/ponyDetection.lua +2 -0
- package/features/preventCollectibleRotation.js +81 -0
- package/features/preventCollectibleRotation.lua +2 -0
- package/features/registerHotkey.js +91 -0
- package/features/registerHotkey.lua +2 -0
- package/features/roomClearFrame.js +42 -0
- package/features/roomClearFrame.lua +2 -0
- package/features/runInNFrames.js +189 -0
- package/features/runInNFrames.lua +2 -0
- package/features/runNextRoom.js +34 -0
- package/features/runNextRoom.lua +2 -0
- package/features/saveDataManager/exports.js +183 -0
- package/features/saveDataManager/exports.lua +2 -0
- package/features/saveDataManager/load.js +69 -0
- package/features/saveDataManager/load.lua +2 -0
- package/features/saveDataManager/main.js +131 -0
- package/features/saveDataManager/main.lua +2 -0
- package/features/saveDataManager/maps.js +9 -0
- package/features/saveDataManager/maps.lua +2 -0
- package/features/saveDataManager/merge.js +139 -0
- package/features/saveDataManager/merge.lua +2 -0
- package/features/saveDataManager/save.js +43 -0
- package/features/saveDataManager/save.lua +2 -0
- package/features/saveDataManager/saveDataManagerConstants.js +4 -0
- package/features/saveDataManager/saveDataManagerConstants.lua +2 -0
- package/features/saveDataManager/serializationBrand.js +12 -0
- package/features/saveDataManager/serializationBrand.lua +2 -0
- package/features/sirenHelpers.js +90 -0
- package/features/sirenHelpers.lua +2 -0
- package/features/stageHistory.js +43 -0
- package/features/stageHistory.lua +2 -0
- package/features/taintedLazarusPlayers.js +92 -0
- package/features/taintedLazarusPlayers.lua +2 -0
- package/featuresInitialized.js +16 -0
- package/featuresInitialized.lua +2 -0
- package/functions/ambush.js +35 -0
- package/functions/ambush.lua +2 -0
- package/functions/array.js +423 -0
- package/functions/array.lua +2 -0
- package/functions/benchmark.js +28 -0
- package/functions/benchmark.lua +2 -0
- package/functions/bitwise.js +74 -0
- package/functions/bitwise.lua +2 -0
- package/functions/bombs.js +11 -0
- package/functions/bombs.lua +2 -0
- package/functions/boss.js +137 -0
- package/functions/boss.lua +2 -0
- package/functions/cacheFlag.js +11 -0
- package/functions/cacheFlag.lua +2 -0
- package/functions/cards.js +217 -0
- package/functions/cards.lua +2 -0
- package/functions/challenges.js +9 -0
- package/functions/challenges.lua +2 -0
- package/functions/character.js +102 -0
- package/functions/character.lua +2 -0
- package/functions/charge.js +202 -0
- package/functions/charge.lua +2 -0
- package/functions/chargeBar.js +44 -0
- package/functions/chargeBar.lua +2 -0
- package/functions/collectibleCacheFlag.js +68 -0
- package/functions/collectibleCacheFlag.lua +2 -0
- package/functions/collectibleSet.js +108 -0
- package/functions/collectibleSet.lua +2 -0
- package/functions/collectibleTag.js +65 -0
- package/functions/collectibleTag.lua +2 -0
- package/functions/collectibles.js +469 -0
- package/functions/collectibles.lua +2 -0
- package/functions/color.d.ts +1 -1
- package/functions/color.js +60 -0
- package/functions/color.lua +2 -0
- package/functions/debug.js +60 -0
- package/functions/debug.lua +2 -0
- package/functions/deepCopy.js +361 -0
- package/functions/deepCopy.lua +2 -0
- package/functions/deepCopyTests.js +308 -0
- package/functions/deepCopyTests.lua +2 -0
- package/functions/direction.js +41 -0
- package/functions/direction.lua +2 -0
- package/functions/doors.js +326 -0
- package/functions/doors.lua +2 -0
- package/functions/easing.js +142 -0
- package/functions/easing.lua +2 -0
- package/functions/eden.js +32 -0
- package/functions/eden.lua +2 -0
- package/functions/effects.js +11 -0
- package/functions/effects.lua +2 -0
- package/functions/entity.js +324 -0
- package/functions/entity.lua +2 -0
- package/functions/entitySpecific.js +481 -0
- package/functions/entitySpecific.lua +2 -0
- package/functions/entityTypes.js +6 -0
- package/functions/entityTypes.lua +2 -0
- package/functions/enums.js +151 -0
- package/functions/enums.lua +2 -0
- package/functions/familiars.js +85 -0
- package/functions/familiars.lua +2 -0
- package/functions/flag.js +137 -0
- package/functions/flag.lua +2 -0
- package/functions/flying.js +88 -0
- package/functions/flying.lua +2 -0
- package/functions/globals.js +230 -0
- package/functions/globals.lua +2 -0
- package/functions/gridEntity.js +488 -0
- package/functions/gridEntity.lua +2 -0
- package/functions/gridEntitySpecific.js +109 -0
- package/functions/gridEntitySpecific.lua +2 -0
- package/functions/input.js +95 -0
- package/functions/input.lua +2 -0
- package/functions/isaacAPIClass.js +48 -0
- package/functions/isaacAPIClass.lua +2 -0
- package/functions/jsonHelpers.js +40 -0
- package/functions/jsonHelpers.lua +2 -0
- package/functions/jsonRoom.js +132 -0
- package/functions/jsonRoom.lua +2 -0
- package/functions/kColor.d.ts +1 -1
- package/functions/kColor.js +63 -0
- package/functions/kColor.lua +2 -0
- package/functions/language.js +13 -0
- package/functions/language.lua +2 -0
- package/functions/level.js +20 -0
- package/functions/level.lua +2 -0
- package/functions/log.js +567 -0
- package/functions/log.lua +2 -0
- package/functions/map.js +45 -0
- package/functions/map.lua +2 -0
- package/functions/math.js +103 -0
- package/functions/math.lua +2 -0
- package/functions/mergeTests.js +213 -0
- package/functions/mergeTests.lua +2 -0
- package/functions/minimap.js +80 -0
- package/functions/minimap.lua +2 -0
- package/functions/nextStage.js +290 -0
- package/functions/nextStage.lua +2 -0
- package/functions/npc.js +101 -0
- package/functions/npc.lua +2 -0
- package/functions/pickupVariants.js +47 -0
- package/functions/pickupVariants.lua +2 -0
- package/functions/pickups.js +219 -0
- package/functions/pickups.lua +2 -0
- package/functions/pills.js +160 -0
- package/functions/pills.lua +2 -0
- package/functions/player.js +808 -0
- package/functions/player.lua +2 -0
- package/functions/playerCenter.js +50 -0
- package/functions/playerCenter.lua +2 -0
- package/functions/playerDataStructures.js +114 -0
- package/functions/playerDataStructures.lua +2 -0
- package/functions/playerHealth.js +321 -0
- package/functions/playerHealth.lua +2 -0
- package/functions/playerIndex.js +160 -0
- package/functions/playerIndex.lua +2 -0
- package/functions/pocketItems.js +124 -0
- package/functions/pocketItems.lua +2 -0
- package/functions/positionVelocity.js +136 -0
- package/functions/positionVelocity.lua +2 -0
- package/functions/random.js +73 -0
- package/functions/random.lua +2 -0
- package/functions/revive.js +140 -0
- package/functions/revive.lua +2 -0
- package/functions/rng.d.ts +1 -1
- package/functions/rng.js +117 -0
- package/functions/rng.lua +2 -0
- package/functions/roomData.js +174 -0
- package/functions/roomData.lua +2 -0
- package/functions/roomGrid.js +81 -0
- package/functions/roomGrid.lua +2 -0
- package/functions/roomShape.js +99 -0
- package/functions/roomShape.lua +2 -0
- package/functions/rooms.js +487 -0
- package/functions/rooms.lua +2 -0
- package/functions/run.js +53 -0
- package/functions/run.lua +2 -0
- package/functions/saveFile.js +104 -0
- package/functions/saveFile.lua +2 -0
- package/functions/seeds.js +18 -0
- package/functions/seeds.lua +2 -0
- package/functions/serialization.js +52 -0
- package/functions/serialization.lua +2 -0
- package/functions/set.js +99 -0
- package/functions/set.lua +2 -0
- package/functions/sound.js +9 -0
- package/functions/sound.lua +2 -0
- package/functions/spawnCollectible.js +66 -0
- package/functions/spawnCollectible.lua +2 -0
- package/functions/sprite.js +80 -0
- package/functions/sprite.lua +2 -0
- package/functions/stage.js +172 -0
- package/functions/stage.lua +2 -0
- package/functions/string.js +37 -0
- package/functions/string.lua +2 -0
- package/functions/table.js +143 -0
- package/functions/table.lua +2 -0
- package/functions/tears.js +31 -0
- package/functions/tears.lua +2 -0
- package/functions/transformations.js +101 -0
- package/functions/transformations.lua +2 -0
- package/functions/trinketCacheFlag.js +46 -0
- package/functions/trinketCacheFlag.lua +2 -0
- package/functions/trinketGive.js +121 -0
- package/functions/trinketGive.lua +2 -0
- package/functions/trinkets.js +169 -0
- package/functions/trinkets.lua +2 -0
- package/functions/tstlClass.js +125 -0
- package/functions/tstlClass.lua +2 -0
- package/functions/types.js +27 -0
- package/functions/types.lua +2 -0
- package/functions/ui.js +124 -0
- package/functions/ui.lua +2 -0
- package/functions/utils.js +172 -0
- package/functions/utils.lua +2 -0
- package/functions/vector.js +68 -0
- package/functions/vector.lua +2 -0
- package/index.js +140 -0
- package/index.lua +2 -0
- package/initCustomCallbacks.js +133 -0
- package/initCustomCallbacks.lua +2 -0
- package/initFeatures.js +51 -0
- package/initFeatures.lua +2 -0
- package/interfaces/AddCallbackParameterCustom.js +2 -0
- package/interfaces/AddCallbackParameterCustom.lua +2 -0
- package/interfaces/ChargeBarSprites.js +2 -0
- package/interfaces/ChargeBarSprites.lua +2 -0
- package/interfaces/Corner.js +2 -0
- package/interfaces/Corner.lua +2 -0
- package/interfaces/CustomGridEntityData.js +2 -0
- package/interfaces/CustomGridEntityData.lua +2 -0
- package/interfaces/CustomStage.js +2 -0
- package/interfaces/CustomStage.lua +2 -0
- package/interfaces/CustomStageLua.d.ts +64 -24
- package/interfaces/CustomStageLua.js +13 -0
- package/interfaces/CustomStageLua.lua +2 -0
- package/interfaces/JSONRoomsFile.js +2 -0
- package/interfaces/JSONRoomsFile.lua +2 -0
- package/interfaces/PlayerHealth.js +2 -0
- package/interfaces/PlayerHealth.lua +2 -0
- package/interfaces/PocketItemDescription.js +2 -0
- package/interfaces/PocketItemDescription.lua +2 -0
- package/interfaces/SaveData.js +2 -0
- package/interfaces/SaveData.lua +2 -0
- package/interfaces/TrinketSituation.js +2 -0
- package/interfaces/TrinketSituation.lua +2 -0
- package/interfaces/private/TSTLClassMetatable.js +2 -0
- package/interfaces/private/TSTLClassMetatable.lua +2 -0
- package/maps/PHDPillConversions.js +20 -0
- package/maps/PHDPillConversions.lua +2 -0
- package/maps/cardMap.js +208 -0
- package/maps/cardMap.lua +2 -0
- package/maps/characterMap.js +86 -0
- package/maps/characterMap.lua +2 -0
- package/maps/collectibleDescriptionMap.js +728 -0
- package/maps/collectibleDescriptionMap.lua +2 -0
- package/maps/collectibleNameMap.js +727 -0
- package/maps/collectibleNameMap.lua +2 -0
- package/maps/defaultPlayerStatMap.js +14 -0
- package/maps/defaultPlayerStatMap.lua +2 -0
- package/maps/falsePHDPillConversions.js +34 -0
- package/maps/falsePHDPillConversions.lua +2 -0
- package/maps/gridEntityTypeToBrokenStateMap.js +29 -0
- package/maps/gridEntityTypeToBrokenStateMap.lua +2 -0
- package/maps/gridEntityXMLMap.js +128 -0
- package/maps/gridEntityXMLMap.lua +2 -0
- package/maps/pillEffectMap.js +88 -0
- package/maps/pillEffectMap.lua +2 -0
- package/maps/roomShapeToTopLeftWallGridIndexMap.js +14 -0
- package/maps/roomShapeToTopLeftWallGridIndexMap.lua +2 -0
- package/maps/roomTypeMap.js +39 -0
- package/maps/roomTypeMap.lua +2 -0
- package/maps/trinketDescriptionMap.js +196 -0
- package/maps/trinketDescriptionMap.lua +2 -0
- package/maps/trinketNameMap.js +195 -0
- package/maps/trinketNameMap.lua +2 -0
- package/objects/LRoomShapeToRectangles.js +33 -0
- package/objects/LRoomShapeToRectangles.lua +2 -0
- package/objects/backdropTypeToRockAltType.js +66 -0
- package/objects/backdropTypeToRockAltType.lua +2 -0
- package/objects/bossNamePNGFileNames.js +112 -0
- package/objects/bossNamePNGFileNames.lua +2 -0
- package/objects/bossPortraitPNGFileNames.js +115 -0
- package/objects/bossPortraitPNGFileNames.lua +2 -0
- package/objects/callbackRegisterFunctions.js +170 -0
- package/objects/callbackRegisterFunctions.lua +2 -0
- package/objects/cardDescriptions.js +104 -0
- package/objects/cardDescriptions.lua +2 -0
- package/objects/cardNames.js +104 -0
- package/objects/cardNames.lua +2 -0
- package/objects/cardTypes.js +103 -0
- package/objects/cardTypes.lua +2 -0
- package/objects/challengeNames.js +51 -0
- package/objects/challengeNames.lua +2 -0
- package/objects/characterNames.js +46 -0
- package/objects/characterNames.lua +2 -0
- package/objects/coinSubTypeToValue.js +13 -0
- package/objects/coinSubTypeToValue.lua +2 -0
- package/objects/colors.d.ts +1 -0
- package/objects/colors.js +24 -0
- package/objects/colors.lua +2 -0
- package/objects/directionNames.js +9 -0
- package/objects/directionNames.lua +2 -0
- package/objects/directionToDegrees.js +9 -0
- package/objects/directionToDegrees.lua +2 -0
- package/objects/directionToVector.js +10 -0
- package/objects/directionToVector.lua +2 -0
- package/objects/doorSlotFlagToDoorSlot.js +13 -0
- package/objects/doorSlotFlagToDoorSlot.lua +2 -0
- package/objects/doorSlotToDirection.js +13 -0
- package/objects/doorSlotToDirection.lua +2 -0
- package/objects/doorSlotToDoorSlotFlag.js +13 -0
- package/objects/doorSlotToDoorSlotFlag.lua +2 -0
- package/objects/isaacAPIClassTypeToBrand.js +9 -0
- package/objects/isaacAPIClassTypeToBrand.lua +2 -0
- package/objects/isaacAPIClassTypeToCopyFunction.js +12 -0
- package/objects/isaacAPIClassTypeToCopyFunction.lua +2 -0
- package/objects/languageNames.js +11 -0
- package/objects/languageNames.lua +2 -0
- package/objects/oppositeDoorSlots.js +13 -0
- package/objects/oppositeDoorSlots.lua +2 -0
- package/objects/pillEffectClasses.js +56 -0
- package/objects/pillEffectClasses.lua +2 -0
- package/objects/pillEffectNames.js +55 -0
- package/objects/pillEffectNames.lua +2 -0
- package/objects/pillEffectTypes.js +55 -0
- package/objects/pillEffectTypes.lua +2 -0
- package/objects/playerNamePNGFileNames.js +55 -0
- package/objects/playerNamePNGFileNames.lua +2 -0
- package/objects/playerPortraitPNGFileNames.js +52 -0
- package/objects/playerPortraitPNGFileNames.lua +2 -0
- package/objects/roomShapeBounds.js +46 -0
- package/objects/roomShapeBounds.lua +2 -0
- package/objects/roomShapeCorners.js +268 -0
- package/objects/roomShapeCorners.lua +2 -0
- package/objects/roomShapeLayoutSizes.js +39 -0
- package/objects/roomShapeLayoutSizes.lua +2 -0
- package/objects/roomShapeToBottomRightPosition.js +22 -0
- package/objects/roomShapeToBottomRightPosition.lua +2 -0
- package/objects/roomShapeToDoorSlotCoordinates.js +109 -0
- package/objects/roomShapeToDoorSlotCoordinates.lua +2 -0
- package/objects/roomShapeToDoorSlots.js +69 -0
- package/objects/roomShapeToDoorSlots.lua +2 -0
- package/objects/roomShapeToDoorSlotsToGridIndexDelta.js +113 -0
- package/objects/roomShapeToDoorSlotsToGridIndexDelta.lua +2 -0
- package/objects/roomShapeToGridWidth.js +18 -0
- package/objects/roomShapeToGridWidth.lua +2 -0
- package/objects/roomShapeToTopLeftPosition.js +23 -0
- package/objects/roomShapeToTopLeftPosition.lua +2 -0
- package/objects/roomShapeVolumes.js +30 -0
- package/objects/roomShapeVolumes.lua +2 -0
- package/objects/roomTypeGotoPrefixes.js +33 -0
- package/objects/roomTypeGotoPrefixes.lua +2 -0
- package/objects/roomTypeNames.js +34 -0
- package/objects/roomTypeNames.lua +2 -0
- package/objects/serializedIsaacAPIClassTypeToIdentityFunction.js +12 -0
- package/objects/serializedIsaacAPIClassTypeToIdentityFunction.lua +2 -0
- package/objects/stageTypeSuffixes.js +10 -0
- package/objects/stageTypeSuffixes.lua +2 -0
- package/objects/stageTypeToLetter.js +12 -0
- package/objects/stageTypeToLetter.lua +2 -0
- package/objects/transformationNames.js +18 -0
- package/objects/transformationNames.lua +2 -0
- package/objects/versusScreenBackgroundColors.js +36 -0
- package/objects/versusScreenBackgroundColors.lua +2 -0
- package/objects/versusScreenDirtSpotColors.js +36 -0
- package/objects/versusScreenDirtSpotColors.lua +2 -0
- package/package.json +1 -1
- package/patchErrorFunctions.js +67 -0
- package/patchErrorFunctions.lua +2 -0
- package/sets/LRoomShapesSet.js +8 -0
- package/sets/LRoomShapesSet.lua +2 -0
- package/sets/bossSets.js +374 -0
- package/sets/bossSets.lua +2 -0
- package/sets/charactersThatStartWithAnActiveItemSet.js +15 -0
- package/sets/charactersThatStartWithAnActiveItemSet.lua +2 -0
- package/sets/charactersWithBlackHeartFromEternalHeartSet.js +6 -0
- package/sets/charactersWithBlackHeartFromEternalHeartSet.lua +2 -0
- package/sets/charactersWithFreeDevilDealsSet.js +3 -0
- package/sets/charactersWithFreeDevilDealsSet.lua +2 -0
- package/sets/charactersWithNoRedHeartsSet.js +16 -0
- package/sets/charactersWithNoRedHeartsSet.lua +2 -0
- package/sets/charactersWithNoSoulHeartsSet.js +13 -0
- package/sets/charactersWithNoSoulHeartsSet.lua +2 -0
- package/sets/chestPickupVariantsSet.js +16 -0
- package/sets/chestPickupVariantsSet.lua +2 -0
- package/sets/consoleCommandsSet.js +61 -0
- package/sets/consoleCommandsSet.lua +2 -0
- package/sets/familiarsThatShootPlayerTearsSet.js +12 -0
- package/sets/familiarsThatShootPlayerTearsSet.lua +2 -0
- package/sets/lostStyleCharactersSet.js +13 -0
- package/sets/lostStyleCharactersSet.lua +2 -0
- package/sets/mineShaftRoomSubTypesSet.js +9 -0
- package/sets/mineShaftRoomSubTypesSet.lua +2 -0
- package/sets/narrowRoomShapesSet.js +8 -0
- package/sets/narrowRoomShapesSet.lua +2 -0
- package/sets/redHeartSubTypesSet.js +7 -0
- package/sets/redHeartSubTypesSet.lua +2 -0
- package/sets/sinEntityTypesSet.js +11 -0
- package/sets/sinEntityTypesSet.lua +2 -0
- package/sets/singleUseActiveCollectibleTypesSet.js +12 -0
- package/sets/singleUseActiveCollectibleTypesSet.lua +2 -0
- package/sets/storyBossesSet.js +17 -0
- package/sets/storyBossesSet.lua +2 -0
- package/shaderCrashFix.js +17 -0
- package/shaderCrashFix.lua +2 -0
- package/types/AnyEntity.js +2 -0
- package/types/AnyEntity.lua +2 -0
- package/types/CollectibleIndex.js +2 -0
- package/types/CollectibleIndex.lua +2 -0
- package/types/PickingUpItem.js +38 -0
- package/types/PickingUpItem.lua +2 -0
- package/types/PlayerIndex.js +2 -0
- package/types/PlayerIndex.lua +2 -0
- package/types/private/IsaacAPIClass.js +2 -0
- package/types/private/IsaacAPIClass.lua +2 -0
- package/types/private/SerializedIsaacAPIClass.js +2 -0
- package/types/private/SerializedIsaacAPIClass.lua +2 -0
- package/types/private/TSTLClass.js +2 -0
- package/types/private/TSTLClass.lua +2 -0
- package/upgradeMod.js +47 -0
- package/upgradeMod.lua +2 -0
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
import { DoorSlot, DoorState, DoorVariant, GridRoom, RoomType, } from "isaac-typescript-definitions";
|
|
2
|
+
import { game } from "../cachedClasses";
|
|
3
|
+
import { DEFAULT_DOOR_SLOT, DOOR_SLOT_FLAG_TO_DOOR_SLOT, } from "../objects/doorSlotFlagToDoorSlot";
|
|
4
|
+
import { DOOR_SLOT_TO_DIRECTION } from "../objects/doorSlotToDirection";
|
|
5
|
+
import { DOOR_SLOT_TO_DOOR_SLOT_FLAG } from "../objects/doorSlotToDoorSlotFlag";
|
|
6
|
+
import { OPPOSITE_DOOR_SLOTS } from "../objects/oppositeDoorSlots";
|
|
7
|
+
import { ROOM_SHAPE_TO_DOOR_SLOT_COORDINATES } from "../objects/roomShapeToDoorSlotCoordinates";
|
|
8
|
+
import { ROOM_SHAPE_TO_DOOR_SLOTS } from "../objects/roomShapeToDoorSlots";
|
|
9
|
+
import { arrayToBitFlags } from "./bitwise";
|
|
10
|
+
import { directionToVector } from "./direction";
|
|
11
|
+
import { getEnumValues } from "./enums";
|
|
12
|
+
import { isTSTLSet } from "./tstlClass";
|
|
13
|
+
/**
|
|
14
|
+
* When players enter a room, they do not appear exactly on the location of the door, because then
|
|
15
|
+
* they would immediately collide with the loading zone. Instead, they are offset by this amount of
|
|
16
|
+
* units.
|
|
17
|
+
*/
|
|
18
|
+
const ROOM_ENTRY_OFFSET_FROM_DOOR = 40;
|
|
19
|
+
export function closeAllDoors() {
|
|
20
|
+
for (const door of getDoors()) {
|
|
21
|
+
door.Close(true);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Use this instead of the `GridEntityDoor.Close` method if you want the door to immediately close
|
|
26
|
+
* without an animation.
|
|
27
|
+
*/
|
|
28
|
+
export function closeDoorFast(door) {
|
|
29
|
+
door.State = DoorState.CLOSED;
|
|
30
|
+
const sprite = door.GetSprite();
|
|
31
|
+
sprite.Play("Closed", true);
|
|
32
|
+
}
|
|
33
|
+
export function doorSlotFlagToDoorSlot(doorSlotFlag) {
|
|
34
|
+
const doorSlot = DOOR_SLOT_FLAG_TO_DOOR_SLOT[doorSlotFlag];
|
|
35
|
+
return doorSlot === undefined ? DEFAULT_DOOR_SLOT : doorSlot;
|
|
36
|
+
}
|
|
37
|
+
export function doorSlotToDirection(doorSlot) {
|
|
38
|
+
return DOOR_SLOT_TO_DIRECTION[doorSlot];
|
|
39
|
+
}
|
|
40
|
+
export function doorSlotToDoorSlotFlag(doorSlot) {
|
|
41
|
+
return DOOR_SLOT_TO_DOOR_SLOT_FLAG[doorSlot];
|
|
42
|
+
}
|
|
43
|
+
export function getAngelRoomDoor() {
|
|
44
|
+
const angelRoomDoors = getDoors(RoomType.ANGEL);
|
|
45
|
+
return angelRoomDoors.length === 0 ? undefined : angelRoomDoors[0];
|
|
46
|
+
}
|
|
47
|
+
export function getDevilRoomDoor() {
|
|
48
|
+
const devilRoomDoors = getDoors(RoomType.DEVIL);
|
|
49
|
+
return devilRoomDoors.length === 0 ? undefined : devilRoomDoors[0];
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* If there is both a Devil Room and an Angel Room door, this function will return door with the
|
|
53
|
+
* lowest slot number.
|
|
54
|
+
*/
|
|
55
|
+
export function getDevilRoomOrAngelRoomDoor() {
|
|
56
|
+
const devilRoomOrAngelRoomDoors = getDoors(RoomType.DEVIL, RoomType.ANGEL);
|
|
57
|
+
return devilRoomOrAngelRoomDoors.length === 0
|
|
58
|
+
? undefined
|
|
59
|
+
: devilRoomOrAngelRoomDoors[0];
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Helper function to get the position that a player will enter a room at.
|
|
63
|
+
*
|
|
64
|
+
* When players enter a room, they do not appear exactly on the location of the door, because then
|
|
65
|
+
* they would immediately collide with the loading zone. Instead, they are offset by a certain
|
|
66
|
+
* amount of units.
|
|
67
|
+
*/
|
|
68
|
+
export function getDoorEnterPosition(door) {
|
|
69
|
+
const offset = getDoorSlotEnterPositionOffset(door.Slot);
|
|
70
|
+
return door.Position.add(offset);
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Helper function to get the offset from a door position that a player will enter a room at.
|
|
74
|
+
*
|
|
75
|
+
* When players enter a room, they do not appear exactly on the location of the door, because then
|
|
76
|
+
* they would immediately collide with the loading zone. Instead, they are offset by a certain
|
|
77
|
+
* amount of units.
|
|
78
|
+
*/
|
|
79
|
+
export function getDoorSlotEnterPositionOffset(doorSlot) {
|
|
80
|
+
const direction = doorSlotToDirection(doorSlot);
|
|
81
|
+
const vector = directionToVector(direction);
|
|
82
|
+
// The player appears in the opposite direction of the way that the door is oriented in the room.
|
|
83
|
+
const oppositeVector = vector.mul(-1);
|
|
84
|
+
return oppositeVector.mul(ROOM_ENTRY_OFFSET_FROM_DOOR);
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Helper function to convert an array of door slots or a set of door slots to the resulting bit
|
|
88
|
+
* flag number.
|
|
89
|
+
*/
|
|
90
|
+
export function getDoorSlotFlags(doorSlots) {
|
|
91
|
+
const doorSlotArray = isTSTLSet(doorSlots)
|
|
92
|
+
? [...doorSlots.values()]
|
|
93
|
+
: doorSlots;
|
|
94
|
+
const doorSlotFlagArray = doorSlotArray.map((doorSlot) => doorSlotToDoorSlotFlag(doorSlot));
|
|
95
|
+
return arrayToBitFlags(doorSlotFlagArray);
|
|
96
|
+
}
|
|
97
|
+
/** Helper function to get the possible door slots that can exist for a given room shape. */
|
|
98
|
+
export function getDoorSlotsForRoomShape(roomShape) {
|
|
99
|
+
return ROOM_SHAPE_TO_DOOR_SLOTS[roomShape];
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Helper function to get all of the doors in the room. By default, it will return every door. You
|
|
103
|
+
* can optionally specify one or more room types to return only the doors that match the specified
|
|
104
|
+
* room types.
|
|
105
|
+
*/
|
|
106
|
+
export function getDoors(...roomTypes) {
|
|
107
|
+
const room = game.GetRoom();
|
|
108
|
+
const roomTypesSet = new Set(roomTypes);
|
|
109
|
+
const doorSlots = getEnumValues(DoorSlot);
|
|
110
|
+
const doors = [];
|
|
111
|
+
for (const doorSlot of doorSlots) {
|
|
112
|
+
const door = room.GetDoor(doorSlot);
|
|
113
|
+
if (door === undefined) {
|
|
114
|
+
continue;
|
|
115
|
+
}
|
|
116
|
+
if (roomTypesSet.size === 0 || roomTypesSet.has(door.TargetRoomType)) {
|
|
117
|
+
doors.push(door);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
return doors;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Helper function to get all of the doors in the room that lead to the provided room index.
|
|
124
|
+
*
|
|
125
|
+
* This function is variadic, meaning that you can specify N arguments to return all of the doors
|
|
126
|
+
* that match any of the N room grid indexes.
|
|
127
|
+
*/
|
|
128
|
+
export function getDoorsToRoomIndex(...roomGridIndex) {
|
|
129
|
+
const roomGridIndexesSet = new Set(roomGridIndex);
|
|
130
|
+
const doors = getDoors();
|
|
131
|
+
return doors.filter((door) => roomGridIndexesSet.has(door.TargetRoomIndex));
|
|
132
|
+
}
|
|
133
|
+
export function getOppositeDoorSlot(doorSlot) {
|
|
134
|
+
return OPPOSITE_DOOR_SLOTS[doorSlot];
|
|
135
|
+
}
|
|
136
|
+
export function getRepentanceDoor() {
|
|
137
|
+
const doors = getDoors();
|
|
138
|
+
return doors.find((door) => isRepentanceDoor(door));
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Helper function to get the corresponding door slot for a given room shape and grid coordinates.
|
|
142
|
+
*/
|
|
143
|
+
export function getRoomShapeDoorSlot(roomShape, x, y) {
|
|
144
|
+
const coordinatesMap = ROOM_SHAPE_TO_DOOR_SLOT_COORDINATES[roomShape];
|
|
145
|
+
for (const [doorSlot, [doorX, doorY]] of coordinatesMap.entries()) {
|
|
146
|
+
if (x === doorX && y === doorY) {
|
|
147
|
+
return doorSlot;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
return undefined;
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Helper function to get the room grid coordinates for a specific room shape and door slot
|
|
154
|
+
* combination.
|
|
155
|
+
*/
|
|
156
|
+
export function getRoomShapeDoorSlotCoordinates(roomShape, doorSlot) {
|
|
157
|
+
const coordinatesMap = ROOM_SHAPE_TO_DOOR_SLOT_COORDINATES[roomShape];
|
|
158
|
+
return coordinatesMap.get(doorSlot);
|
|
159
|
+
}
|
|
160
|
+
/** Helper function to find unused door slots in the room that can be used to make custom doors. */
|
|
161
|
+
export function getUnusedDoorSlots() {
|
|
162
|
+
const room = game.GetRoom();
|
|
163
|
+
const doorSlots = getEnumValues(DoorSlot);
|
|
164
|
+
return doorSlots.filter((doorSlot) => room.IsDoorSlotAllowed(doorSlot) && room.GetDoor(doorSlot) === undefined);
|
|
165
|
+
}
|
|
166
|
+
export function isAngelRoomDoor(door) {
|
|
167
|
+
return door.TargetRoomType === RoomType.ANGEL;
|
|
168
|
+
}
|
|
169
|
+
export function isDevilRoomDoor(door) {
|
|
170
|
+
return door.TargetRoomType === RoomType.DEVIL;
|
|
171
|
+
}
|
|
172
|
+
/** Helper function to see if a door slot could exist for a given room shape. */
|
|
173
|
+
export function isDoorSlotInRoomShape(doorSlot, roomShape) {
|
|
174
|
+
const doorSlots = getDoorSlotsForRoomShape(roomShape);
|
|
175
|
+
return doorSlots.has(doorSlot);
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* This refers to the Repentance door that spawns in a boss room after defeating the boss. You have
|
|
179
|
+
* to spend one key to open it. It has a sprite filename of "gfx/grid/door_downpour.anm2".
|
|
180
|
+
*/
|
|
181
|
+
export function isDoorToDownpour(door) {
|
|
182
|
+
if (!isRepentanceDoor(door)) {
|
|
183
|
+
return false;
|
|
184
|
+
}
|
|
185
|
+
const sprite = door.GetSprite();
|
|
186
|
+
const fileName = sprite.GetFilename();
|
|
187
|
+
// On Windows, this is: "gfx/grid/Door_Downpour.anm2"
|
|
188
|
+
return fileName.toLowerCase() === "gfx/grid/door_downpour.anm2";
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* This refers to the Repentance door that spawns in a boss room after defeating the boss. You have
|
|
192
|
+
* to spend two hearts to open it. It has a sprite filename of "gfx/grid/door_mausoleum.anm2".
|
|
193
|
+
*/
|
|
194
|
+
export function isDoorToMausoleum(door) {
|
|
195
|
+
if (!isRepentanceDoor(door)) {
|
|
196
|
+
return false;
|
|
197
|
+
}
|
|
198
|
+
const sprite = door.GetSprite();
|
|
199
|
+
const fileName = sprite.GetFilename();
|
|
200
|
+
// On Windows, this is: "gfx/grid/Door_Mausoleum.anm2"
|
|
201
|
+
return fileName.toLowerCase() === "gfx/grid/door_mausoleum.anm2";
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* This refers to the "strange door" located on the first room of Depths 2. You open it with either
|
|
205
|
+
* a Polaroid or a Negative. It has a sprite filename of "gfx/grid/door_mausoleum_alt.anm2".
|
|
206
|
+
*/
|
|
207
|
+
export function isDoorToMausoleumAscent(door) {
|
|
208
|
+
if (!isRepentanceDoor(door)) {
|
|
209
|
+
return false;
|
|
210
|
+
}
|
|
211
|
+
const sprite = door.GetSprite();
|
|
212
|
+
const fileName = sprite.GetFilename();
|
|
213
|
+
// On Windows, this is: "gfx/grid/Door_Mausoleum_Alt.anm2"
|
|
214
|
+
return fileName.toLowerCase() === "gfx/grid/door_mausoleum_alt.anm2";
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* This refers to the Repentance door that spawns in a boss room after defeating the boss. You have
|
|
218
|
+
* to spend two bombs to open it. It has a sprite filename of "gfx/grid/door_mines.anm2".
|
|
219
|
+
*/
|
|
220
|
+
export function isDoorToMines(door) {
|
|
221
|
+
if (!isRepentanceDoor(door)) {
|
|
222
|
+
return false;
|
|
223
|
+
}
|
|
224
|
+
const sprite = door.GetSprite();
|
|
225
|
+
const fileName = sprite.GetFilename();
|
|
226
|
+
// On Windows, this is: "gfx/grid/Door_Mines.anm2"
|
|
227
|
+
return fileName.toLowerCase() === "gfx/grid/door_mines.anm2";
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* This refers to the Repentance door that spawns after defeating Mom. You open it with the
|
|
231
|
+
* completed knife. It has a sprite filename of "gfx/grid/door_momsheart.anm2".
|
|
232
|
+
*/
|
|
233
|
+
export function isDoorToMomsHeart(door) {
|
|
234
|
+
if (!isRepentanceDoor(door)) {
|
|
235
|
+
return false;
|
|
236
|
+
}
|
|
237
|
+
const sprite = door.GetSprite();
|
|
238
|
+
const fileName = sprite.GetFilename();
|
|
239
|
+
// On Windows, this is: "gfx/grid/Door_MomsHeart.anm2"
|
|
240
|
+
return fileName.toLowerCase() === "gfx/grid/door_momsheart.anm2"; // cspell:ignore momsheart
|
|
241
|
+
}
|
|
242
|
+
export function isHiddenSecretRoomDoor(door) {
|
|
243
|
+
const sprite = door.GetSprite();
|
|
244
|
+
const animation = sprite.GetAnimation();
|
|
245
|
+
return isSecretRoomDoor(door) && animation === "Hidden";
|
|
246
|
+
}
|
|
247
|
+
export function isRepentanceDoor(door) {
|
|
248
|
+
// eslint-disable-next-line isaacscript/strict-enums
|
|
249
|
+
return door.TargetRoomIndex === GridRoom.SECRET_EXIT;
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* This refers to the hole in the wall that appears after bombing the entrance to a secret room.
|
|
253
|
+
* Note that the door still exists before it has been bombed open. It has a sprite filename of
|
|
254
|
+
* "gfx/grid/door_08_holeinwall.anm2".
|
|
255
|
+
*/
|
|
256
|
+
export function isSecretRoomDoor(door) {
|
|
257
|
+
const sprite = door.GetSprite();
|
|
258
|
+
const fileName = sprite.GetFilename();
|
|
259
|
+
// On Windows, this is: "gfx/grid/Door_08_HoleInWall.anm2"
|
|
260
|
+
return fileName.toLowerCase() === "gfx/grid/door_08_holeinwall.anm2"; // cspell:ignore holeinwall
|
|
261
|
+
}
|
|
262
|
+
/**
|
|
263
|
+
* Helper function to reset an unlocked door back to a locked state. Doing this is non-trivial
|
|
264
|
+
* because in addition to calling the `GridEntityDoor.SetLocked` method, you must also:
|
|
265
|
+
*
|
|
266
|
+
* - Set the `VisitedCount` of the room's `RoomDescription` to 0.
|
|
267
|
+
* - Set the variant to `DoorVariant.DOOR_LOCKED`.
|
|
268
|
+
* - Close the door.
|
|
269
|
+
*/
|
|
270
|
+
export function lockDoor(door) {
|
|
271
|
+
const level = game.GetLevel();
|
|
272
|
+
// We can't use the "getRoomDescriptor" function since it will cause a dependency cycle.
|
|
273
|
+
const roomDescriptor = level.GetRoomByIdx(door.TargetRoomIndex);
|
|
274
|
+
roomDescriptor.VisitedCount = 0;
|
|
275
|
+
door.SetVariant(DoorVariant.LOCKED);
|
|
276
|
+
door.SetLocked(true);
|
|
277
|
+
door.Close(true);
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* For the purposes of this function, doors to Secret Rooms or Super Secret Rooms that have not been
|
|
281
|
+
* discovered yet will not be opened.
|
|
282
|
+
*/
|
|
283
|
+
export function openAllDoors() {
|
|
284
|
+
for (const door of getDoors()) {
|
|
285
|
+
// If we try to open a hidden Secret Room door (or Super Secret Room door), then nothing will
|
|
286
|
+
// happen.
|
|
287
|
+
door.Open();
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
/**
|
|
291
|
+
* Use this instead of the `GridEntityDoor.Open` method if you want the door to immediately open
|
|
292
|
+
* without an animation.
|
|
293
|
+
*/
|
|
294
|
+
export function openDoorFast(door) {
|
|
295
|
+
door.State = DoorState.OPEN;
|
|
296
|
+
const sprite = door.GetSprite();
|
|
297
|
+
sprite.Play("Opened", true);
|
|
298
|
+
}
|
|
299
|
+
/**
|
|
300
|
+
* Helper function to remove all of the doors in the room. By default, it will remove every door.
|
|
301
|
+
* You can optionally specify one or more room types to remove only the doors that match the
|
|
302
|
+
* specified room types.
|
|
303
|
+
*
|
|
304
|
+
* @returns The number of doors removed.
|
|
305
|
+
*/
|
|
306
|
+
export function removeAllDoors(...roomTypes) {
|
|
307
|
+
const doors = getDoors(...roomTypes);
|
|
308
|
+
removeDoors(...doors);
|
|
309
|
+
return doors.length;
|
|
310
|
+
}
|
|
311
|
+
/** Helper function to remove a single door. */
|
|
312
|
+
export function removeDoor(door) {
|
|
313
|
+
const room = game.GetRoom();
|
|
314
|
+
room.RemoveDoor(door.Slot);
|
|
315
|
+
}
|
|
316
|
+
/**
|
|
317
|
+
* Helper function to remove the doors provided.
|
|
318
|
+
*
|
|
319
|
+
* This function is variadic, meaning that you can specify as many doors as you want to remove.
|
|
320
|
+
*/
|
|
321
|
+
export function removeDoors(...doors) {
|
|
322
|
+
for (const door of doors) {
|
|
323
|
+
removeDoor(door);
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9vcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9pc2FhY3NjcmlwdC1jb21tb24vc3JjL2Z1bmN0aW9ucy9kb29ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsUUFBUSxFQUVSLFNBQVMsRUFDVCxXQUFXLEVBQ1gsUUFBUSxFQUVSLFFBQVEsR0FDVCxNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4QyxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLDJCQUEyQixHQUM1QixNQUFNLG1DQUFtQyxDQUFDO0FBQzNDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2hHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDNUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDeEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUV4Qzs7OztHQUlHO0FBQ0gsTUFBTSwyQkFBMkIsR0FBRyxFQUFFLENBQUM7QUFFdkMsTUFBTSxVQUFVLGFBQWE7SUFDM0IsS0FBSyxNQUFNLElBQUksSUFBSSxRQUFRLEVBQUUsRUFBRTtRQUM3QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQ2xCO0FBQ0gsQ0FBQztBQUVEOzs7R0FHRztB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
|
package/functions/doors.lua
CHANGED
|
@@ -333,3 +333,5 @@ function ____exports.removeAllDoors(self, ...)
|
|
|
333
333
|
return #doors
|
|
334
334
|
end
|
|
335
335
|
return ____exports
|
|
336
|
+
|
|
337
|
+
--# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvZnVuY3Rpb25zL2Rvb3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztNQThCTTtBQTlCTiw2Q0FTTztBQVBMO0FBRUE7QUFDQTtBQUNBO0FBRUE7QUFFRiwwQkFBcUI7QUFBWjtBQUNULG1DQUdPO0FBRkw7QUFDQTtBQUVGLGdDQUF1QztBQUE5QjtBQUNULG1DQUE0QztBQUFuQztBQUNULDhCQUFvQztBQUEzQjtBQUNULDJDQUFvRDtBQUEzQztBQUNULGlDQUF5QztBQUFoQztBQUNULG9CQUFnQztBQUF2QjtBQUNULHNCQUFrQztBQUF6QjtBQUNULGtCQUE4QjtBQUFyQjtBQUNULHNCQUEwQjtBQUFqQjtBQStCVCwrQ0FBb0M7QUFDbEMsV0FBTyx1QkFBdUI7QUFEaEM7Ozs7OztBQWdEQSwwREFDRTtBQUVNLHNCQUFZLHFDQUFvQjtBQUNoQyxtQkFBUyx1QkFBa0I7QUFHM0IsMkJBQWlCLFVBQVk7QUFFbkMsV0FBTyxpQkFBbUI7QUFUNUI7Ozs7QUE2Q0E7VUFBNEI7QUFDcEIsaUJBQU8sS0FBSztBQUNaLHlCQUFlLFVBQUksS0FBSTtBQUV2QixzQkFBWSxtQkFBYztBQUMxQixrQkFBMEI7QUFDaEMsY0FBVyxtQkFBWTs7QUFDZix5QkFBTyxLQUFLLFFBQVE7ZUFDdEI7QUFDRjs7ZUFHRSxxQkFBc0IsS0FBSyxhQUFhLElBQUk7QUFDOUMsb0NBQVc7Ozs7O0FBSWYsV0FBTztBQWpCVDtBQXlMQSw0Q0FBaUM7QUFFL0IsV0FBTyx3QkFBeUI7QUFGbEM7Ozs7QUFVQSw0Q0FBaUM7QUFDekIsbUJBQVMsS0FBSztBQUNkLHFCQUFXLE9BQU87QUFHeEIsV0FBTywwQkFBMkI7QUFMcEM7O0FBa0VBLHNDQUEyQjtBQUNuQixpQkFBTyxLQUFLO0lBQ2xCLEtBQUssV0FBVztBQUZsQjs7OztBQVVBO1VBQStCO0FBQzdCLGNBQVcsZUFBUTtRQUNqQiw0QkFBVzs7QUFGZjtBQXBZTSw4QkFBOEI7QUFFcEM7QUFDRSxjQUFXLGVBQVE7UUFDakIsS0FBSyxNQUFNOztBQUZmOzs7QUFVQSx5Q0FBOEI7QUFDNUIsaUJBQWE7QUFFUCxtQkFBUyxLQUFLO0lBQ3BCLE9BQU8sS0FBSyxVQUFVO0FBSnhCO0FBT0Esa0RBQXVDO0FBQy9CLHFCQUFXLDRCQUE0QjtBQUM3QyxXQUFPLG9CQUF5QixxQkFBb0I7QUFGdEQ7QUFTQSxrREFBdUM7QUFDckMsV0FBTyw0QkFBNEI7QUFEckM7QUFJQTtBQUNRLDJCQUFpQiwwQkFBUztBQUN6QjtPQUFBLG1CQUEwQjtBQUFJOztBQUFZLG9DQUFlOztBQUFoRTtBQUZGO0FBS0E7QUFDUSwyQkFBaUIsMEJBQVM7QUFDekI7T0FBQSxtQkFBMEI7QUFBSTs7QUFBWSxvQ0FBZTs7QUFBaEU7QUFGRjs7O0FBU0E7QUFDUSxzQ0FBNEIsMEJBQVMsZ0JBQWdCO0FBQ3BEO09BQUEsOEJBQXFDO0FBQ3hDOztBQUNBLCtDQUEwQjs7QUFGOUI7QUFGRjs7Ozs7O0FBY0EsZ0RBQXFDO0FBQzdCLG1CQUFTLGdEQUErQjtBQUM5QyxXQUFPLGdCQUFrQjtBQUYzQjs7O0FBNEJBLDRDQUNFO0FBTU0sMEJBQWdCLGVBQVUsZUFDNUIsRUFBQyxhQUFHLFVBQVUsZUFDYjtBQUNDLDhCQUFvQjtRQUFBO1FBQWtCLGVBQUMsVUFDM0MsK0NBQXVCLFNBRG1COztBQUk1QyxXQUFPLHFCQUFnQjtBQWR6Qjs7QUFrQkEsb0RBQ0U7QUFFQSxXQUFPLHlCQUF5QjtBQUhsQzs7Ozs7QUFxQ0E7VUFBdUM7QUFDL0IsK0JBQXFCLFVBQUksS0FBSTtBQUM3QixrQkFBUTtBQUNkLFdBQU87UUFBQTtRQUFhLGVBQUMsTUFBUywwQkFBbUIsSUFBSSxxQkFBakM7O0FBSHRCO0FBTUEsK0NBQW9DO0FBQ2xDLFdBQU8sb0JBQW9CO0FBRDdCO0FBSUE7QUFDUSxrQkFBUTtBQUNkLFdBQU87UUFBQTtRQUFXLGVBQUMsTUFBUyx5Q0FBaUIsS0FBM0I7O0FBRnBCOztBQVFBLGdEQUNFLFdBQ0EsR0FDQTtBQUVNLDJCQUFpQixvQ0FBb0M7QUFDM0QsMkJBQXlDLDhCQUFlO2NBQTVDO2NBQVc7Y0FBTztXQUN4QixLQUFNLFVBQVMsS0FBTTtBQUN2QixtQkFBTzs7O0FBSVg7QUFaRjs7O0FBbUJBLDJEQUNFLFdBQ0E7QUFFTSwyQkFBaUIsb0NBQW9DO0FBQzNELFdBQU8sZUFBZSxJQUFJO0FBTDVCOztBQVNBO0FBQ1EsaUJBQU8sS0FBSztBQUNaLHNCQUFZLG1CQUFjO0FBQ2hDLFdBQU87UUFBQTtRQUNMLGVBQUMsVUFDQyxZQUFLLGtCQUFrQixjQUFhLEtBQUssUUFBUSxnQkFEbkQ7O0FBSko7QUFTQSwyQ0FBZ0M7QUFDOUIsV0FBTyx1QkFBd0I7QUFEakM7QUFJQSwyQ0FBZ0M7QUFDOUIsV0FBTyx1QkFBd0I7QUFEakM7O0FBS0EsaURBQ0UsVUFDQTtBQUVNLHNCQUFZLDBDQUF5QjtBQUMzQyxXQUFPLFVBQVUsSUFBSTtBQUx2Qjs7O0FBWUEsNENBQWlDO1dBQzFCLGtDQUFpQjtBQUNwQixlQUFPOztBQUdILG1CQUFTLEtBQUs7QUFDZCxxQkFBVyxPQUFPO0FBR3hCLFdBQU8sMEJBQTJCO0FBVHBDOzs7QUFnQkEsNkNBQWtDO1dBQzNCLGtDQUFpQjtBQUNwQixlQUFPOztBQUdILG1CQUFTLEtBQUs7QUFDZCxxQkFBVyxPQUFPO0FBR3hCLFdBQU8sMEJBQTJCO0FBVHBDOzs7QUFnQkEsbURBQXdDO1dBQ2pDLGtDQUFpQjtBQUNwQixlQUFPOztBQUdILG1CQUFTLEtBQUs7QUFDZCxxQkFBVyxPQUFPO0FBR3hCLFdBQU8sMEJBQTJCO0FBVHBDOzs7QUFnQkEseUNBQThCO1dBQ3ZCLGtDQUFpQjtBQUNwQixlQUFPOztBQUdILG1CQUFTLEtBQUs7QUFDZCxxQkFBVyxPQUFPO0FBR3hCLFdBQU8sMEJBQTJCO0FBVHBDOzs7QUFnQkEsNkNBQWtDO1dBQzNCLGtDQUFpQjtBQUNwQixlQUFPOztBQUdILG1CQUFTLEtBQUs7QUFDZCxxQkFBVyxPQUFPO0FBR3hCLFdBQU8sMEJBQTJCO0FBVHBDO0FBWUEsa0RBQXVDO0FBQy9CLG1CQUFTLEtBQUs7QUFDZCxzQkFBWSxPQUFPO0FBRXpCLFdBQU8sa0NBQWlCLFVBQVMsYUFBYztBQUpqRDs7Ozs7OztBQWlDQSxvQ0FBeUI7QUFDakIsa0JBQVEsS0FBSztBQUdiLDJCQUFpQixNQUFNLGFBQWE7QUFDMUMsa0NBQThCO0lBRTlCLEtBQUssV0FBVztJQUNoQixLQUFLLFVBQVU7SUFDZixLQUFLLE1BQU07QUFUYjs7O0FBZ0JBO0FBQ0UsY0FBVyxlQUFRO1FBR2pCLEtBQUs7O0FBSlQ7OztBQVlBLHdDQUE2QjtBQUMzQixpQkFBYTtBQUVQLG1CQUFTLEtBQUs7SUFDcEIsT0FBTyxLQUFLLFVBQVU7QUFKeEI7Ozs7OztBQWNBO0FBQ1Esa0JBQVEsMEJBQVM7SUFDdkI7O1FBQVksYUFBRzs7QUFFZixXQUFPO0FBSlQiLCJmaWxlIjoiZG9vcnMubHVhIiwic291cmNlUm9vdCI6IiJ9
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
/* eslint-disable no-nested-ternary */
|
|
2
|
+
/* eslint-disable no-return-assign */
|
|
3
|
+
/* eslint-disable sort-exports/sort-exports */
|
|
4
|
+
// These functions are from:
|
|
5
|
+
// https://easings.net/
|
|
6
|
+
export function easeInSine(x) {
|
|
7
|
+
return 1 - Math.cos((x * Math.PI) / 2);
|
|
8
|
+
}
|
|
9
|
+
export function easeOutSine(x) {
|
|
10
|
+
return Math.sin((x * Math.PI) / 2);
|
|
11
|
+
}
|
|
12
|
+
export function easeInOutSine(x) {
|
|
13
|
+
return -(Math.cos(Math.PI * x) - 1) / 2;
|
|
14
|
+
}
|
|
15
|
+
export function easeInCubic(x) {
|
|
16
|
+
return x * x * x;
|
|
17
|
+
}
|
|
18
|
+
export function easeOutCubic(x) {
|
|
19
|
+
return 1 - (1 - x) ** 3;
|
|
20
|
+
}
|
|
21
|
+
export function easeInOutCubic(x) {
|
|
22
|
+
return x < 0.5 ? 4 * x * x * x : 1 - (-2 * x + 2) ** 3 / 2;
|
|
23
|
+
}
|
|
24
|
+
export function easeInQuint(x) {
|
|
25
|
+
return x * x * x * x * x;
|
|
26
|
+
}
|
|
27
|
+
export function easeOutQuint(x) {
|
|
28
|
+
return 1 - (1 - x) ** 5;
|
|
29
|
+
}
|
|
30
|
+
export function easeInOutQuint(x) {
|
|
31
|
+
return x < 0.5 ? 16 * x * x * x * x * x : 1 - (-2 * x + 2) ** 5 / 2;
|
|
32
|
+
}
|
|
33
|
+
export function easeInCirc(x) {
|
|
34
|
+
return 1 - Math.sqrt(1 - x ** 2);
|
|
35
|
+
}
|
|
36
|
+
export function easeOutCirc(x) {
|
|
37
|
+
return Math.sqrt(1 - (x - 1) ** 2);
|
|
38
|
+
}
|
|
39
|
+
export function easeInOutCirc(x) {
|
|
40
|
+
return x < 0.5
|
|
41
|
+
? (1 - Math.sqrt(1 - (2 * x) ** 2)) / 2
|
|
42
|
+
: (Math.sqrt(1 - (-2 * x + 2) ** 2) + 1) / 2;
|
|
43
|
+
}
|
|
44
|
+
export function easeInElastic(x) {
|
|
45
|
+
const c4 = (2 * Math.PI) / 3;
|
|
46
|
+
return x === 0
|
|
47
|
+
? 0
|
|
48
|
+
: x === 1
|
|
49
|
+
? 1
|
|
50
|
+
: -(2 ** (10 * x - 10)) * Math.sin((x * 10 - 10.75) * c4);
|
|
51
|
+
}
|
|
52
|
+
export function easeOutElastic(x) {
|
|
53
|
+
const c4 = (2 * Math.PI) / 3;
|
|
54
|
+
return x === 0
|
|
55
|
+
? 0
|
|
56
|
+
: x === 1
|
|
57
|
+
? 1
|
|
58
|
+
: 2 ** (-10 * x) * Math.sin((x * 10 - 0.75) * c4) + 1;
|
|
59
|
+
}
|
|
60
|
+
export function easeInOutElastic(x) {
|
|
61
|
+
const c5 = (2 * Math.PI) / 4.5;
|
|
62
|
+
return x === 0
|
|
63
|
+
? 0
|
|
64
|
+
: x === 1
|
|
65
|
+
? 1
|
|
66
|
+
: x < 0.5
|
|
67
|
+
? -(2 ** (20 * x - 10) * Math.sin((20 * x - 11.125) * c5)) / 2
|
|
68
|
+
: (2 ** (-20 * x + 10) * Math.sin((20 * x - 11.125) * c5)) / 2 + 1;
|
|
69
|
+
}
|
|
70
|
+
export function easeInQuad(x) {
|
|
71
|
+
return x * x;
|
|
72
|
+
}
|
|
73
|
+
export function easeOutQuad(x) {
|
|
74
|
+
return 1 - (1 - x) * (1 - x);
|
|
75
|
+
}
|
|
76
|
+
export function easeInOutQuad(x) {
|
|
77
|
+
return x < 0.5 ? 2 * x * x : 1 - (-2 * x + 2) ** 2 / 2;
|
|
78
|
+
}
|
|
79
|
+
export function easeInQuart(x) {
|
|
80
|
+
return x * x * x * x;
|
|
81
|
+
}
|
|
82
|
+
export function easeOutQuart(x) {
|
|
83
|
+
return 1 - (1 - x) ** 4;
|
|
84
|
+
}
|
|
85
|
+
export function easeInOutQuart(x) {
|
|
86
|
+
return x < 0.5 ? 8 * x * x * x * x : 1 - (-2 * x + 2) ** 4 / 2;
|
|
87
|
+
}
|
|
88
|
+
export function easeInExpo(x) {
|
|
89
|
+
return x === 0 ? 0 : 2 ** (10 * x - 10);
|
|
90
|
+
}
|
|
91
|
+
export function easeOutExpo(x) {
|
|
92
|
+
return x === 1 ? 1 : 1 - 2 ** (-10 * x);
|
|
93
|
+
}
|
|
94
|
+
export function easeInOutExpo(x) {
|
|
95
|
+
return x === 0
|
|
96
|
+
? 0
|
|
97
|
+
: x === 1
|
|
98
|
+
? 1
|
|
99
|
+
: x < 0.5
|
|
100
|
+
? 2 ** (20 * x - 10) / 2
|
|
101
|
+
: (2 - 2 ** (-20 * x + 10)) / 2;
|
|
102
|
+
}
|
|
103
|
+
export function easeInBack(x) {
|
|
104
|
+
const c1 = 1.70158;
|
|
105
|
+
const c3 = c1 + 1;
|
|
106
|
+
return c3 * x * x * x - c1 * x * x;
|
|
107
|
+
}
|
|
108
|
+
export function easeOutBack(x) {
|
|
109
|
+
const c1 = 1.70158;
|
|
110
|
+
const c3 = c1 + 1;
|
|
111
|
+
return 1 + c3 * (x - 1) ** 3 + c1 * (x - 1) ** 2;
|
|
112
|
+
}
|
|
113
|
+
export function easeInOutBack(x) {
|
|
114
|
+
const c1 = 1.70158;
|
|
115
|
+
const c2 = c1 * 1.525;
|
|
116
|
+
return x < 0.5
|
|
117
|
+
? ((2 * x) ** 2 * ((c2 + 1) * 2 * x - c2)) / 2
|
|
118
|
+
: ((2 * x - 2) ** 2 * ((c2 + 1) * (x * 2 - 2) + c2) + 2) / 2;
|
|
119
|
+
}
|
|
120
|
+
export function easeInBounce(x) {
|
|
121
|
+
return 1 - easeOutBounce(1 - x);
|
|
122
|
+
}
|
|
123
|
+
export function easeOutBounce(x) {
|
|
124
|
+
const n1 = 7.5625;
|
|
125
|
+
const d1 = 2.75;
|
|
126
|
+
if (x < 1 / d1) {
|
|
127
|
+
return n1 * x * x;
|
|
128
|
+
}
|
|
129
|
+
if (x < 2 / d1) {
|
|
130
|
+
return n1 * (x -= 1.5 / d1) * x + 0.75;
|
|
131
|
+
}
|
|
132
|
+
if (x < 2.5 / d1) {
|
|
133
|
+
return n1 * (x -= 2.25 / d1) * x + 0.9375;
|
|
134
|
+
}
|
|
135
|
+
return n1 * (x -= 2.625 / d1) * x + 0.984375;
|
|
136
|
+
}
|
|
137
|
+
export function easeInOutBounce(x) {
|
|
138
|
+
return x < 0.5
|
|
139
|
+
? (1 - easeOutBounce(1 - 2 * x)) / 2
|
|
140
|
+
: (1 + easeOutBounce(2 * x - 1)) / 2;
|
|
141
|
+
}
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWFzaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvaXNhYWNzY3JpcHQtY29tbW9uL3NyYy9mdW5jdGlvbnMvZWFzaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNDQUFzQztBQUN0QyxxQ0FBcUM7QUFDckMsOENBQThDO0FBRTlDLDRCQUE0QjtBQUM1Qix1QkFBdUI7QUFFdkIsTUFBTSxVQUFVLFVBQVUsQ0FBQyxDQUFTO0lBQ2xDLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBQ3pDLENBQUM7QUFFRCxNQUFNLFVBQVUsV0FBVyxDQUFDLENBQVM7SUFDbkMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztBQUNyQyxDQUFDO0FBRUQsTUFBTSxVQUFVLGFBQWEsQ0FBQyxDQUFTO0lBQ3JDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDMUMsQ0FBQztBQUVELE1BQU0sVUFBVSxXQUFXLENBQUMsQ0FBUztJQUNuQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ25CLENBQUM7QUFFRCxNQUFNLFVBQVUsWUFBWSxDQUFDLENBQVM7SUFDcEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQzFCLENBQUM7QUFFRCxNQUFNLFVBQVUsY0FBYyxDQUFDLENBQVM7SUFDdEMsT0FBTyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQzdELENBQUM7QUFFRCxNQUFNLFVBQVUsV0FBVyxDQUFDLENBQVM7SUFDbkMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQzNCLENBQUM7QUFFRCxNQUFNLFVBQVUsWUFBWSxDQUFDLENBQVM7SUFDcEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQzFCLENBQUM7QUFFRCxNQUFNLFVBQVUsY0FBYyxDQUFDLENBQVM7SUFDdEMsT0FBTyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDdEUsQ0FBQztBQUVELE1BQU0sVUFBVSxVQUFVLENBQUMsQ0FBUztJQUNsQyxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7QUFDbkMsQ0FBQztBQUVELE1BQU0sVUFBVSxXQUFXLENBQUMsQ0FBUztJQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQ3JDLENBQUM7QUFFRCxNQUFNLFVBQVUsYUFBYSxDQUFDLENBQVM7SUFDckMsT0FBTyxDQUFDLEdBQUcsR0FBRztRQUNaLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ2pELENBQUM7QUFFRCxNQUFNLFVBQVUsYUFBYSxDQUFDLENBQVM7SUFDckMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUU3QixPQUFPLENBQUMsS0FBSyxDQUFDO1FBQ1osQ0FBQyxDQUFDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7WUFDVCxDQUFDLENBQUMsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0FBQzlELENBQUM7QUFFRCxNQUFNLFVBQVUsY0FBYyxDQUFDLENBQVM7SUFDdEMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUU3QixPQUFPLENBQUMsS0FBSyxDQUFDO1FBQ1osQ0FBQyxDQUFDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7WUFDVCxDQUFDLENBQUMsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxD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QUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQztRQUM5QyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNqRSxDQUFDO0FBRUQsTUFBTSxVQUFVLFlBQVksQ0FBQyxDQUFTO0lBQ3BDLE9BQU8sQ0FBQyxHQUFHLGFBQWEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDbEMsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsQ0FBUztJQUNyQyxNQUFNLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFDbEIsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDO0lBRWhCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEVBQUU7UUFDZCxPQUFPLEVBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0tBQ25CO0lBRUQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsRUFBRTtRQUNkLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQyxJQUFJLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDO0tBQ3hDO0lBRUQsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLEVBQUUsRUFBRTtRQUNoQixPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUMsSUFBSSxJQUFJLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQztLQUMzQztJQUVELE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQyxJQUFJLEtBQUssR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsUUFBUSxDQUFDO0FBQy9DLENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUFDLENBQVM7SUFDdkMsT0FBTyxDQUFDLEdBQUcsR0FBRztRQUNaLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxhQUFhLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLGFBQWEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3pDLENBQUMifQ==
|
package/functions/easing.lua
CHANGED
|
@@ -113,3 +113,5 @@ function ____exports.easeInOutBounce(self, x)
|
|
|
113
113
|
return x < 0.5 and (1 - ____exports.easeOutBounce(nil, 1 - 2 * x)) / 2 or (1 + ____exports.easeOutBounce(nil, 2 * x - 1)) / 2
|
|
114
114
|
end
|
|
115
115
|
return ____exports
|
|
116
|
+
|
|
117
|
+
--# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvZnVuY3Rpb25zL2Vhc2luZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBOEpBLHlDQUE4QjtBQUN0QixlQUFLO0FBQ0wsZUFBSztPQUVQLElBQUksSUFBSTtBQUNWLGVBQU8sS0FBSyxJQUFJOztPQUdkLElBQUksSUFBSTtBQUNHLGdCQUFLLE1BQU07QUFBeEIsZUFBTyxLQUFNLElBQWlCLElBQUk7O09BR2hDLElBQUksTUFBTTtBQUNDLGdCQUFLLE9BQU87QUFBekIsZUFBTyxLQUFNLElBQWtCLElBQUk7O0FBR3hCLFlBQUssUUFBUTtBQUExQixXQUFPLEtBQU0sSUFBbUIsSUFBSTtBQWhCdEM7QUF2SkEsc0NBQTJCO0FBQ3pCLFdBQU8sSUFBSSxTQUFTLElBQUssS0FBSyxLQUFNO0FBRHRDO0FBSUEsdUNBQTRCO0FBQzFCLFdBQU8sU0FBUyxJQUFLLEtBQUssS0FBTTtBQURsQztBQUlBLHlDQUE4QjtBQUM1QixXQUFPLENBQUUsVUFBUyxLQUFLLEtBQUssS0FBSyxLQUFLO0FBRHhDO0FBSUEsdUNBQTRCO0FBQzFCLFdBQU8sSUFBSSxJQUFJO0FBRGpCO0FBSUEsd0NBQTZCO0FBQzNCLFdBQU8sSUFBSSxDQUFDLElBQUksS0FBTTtBQUR4QjtBQUlBLDBDQUErQjtBQUM3QixXQUFPLElBQUksUUFBTSxJQUFJLElBQUksSUFBSSxLQUFJLElBQUksQ0FBQyxDQUFDLElBQUksSUFBSSxLQUFNLElBQUk7QUFEM0Q7QUFJQSx1Q0FBNEI7QUFDMUIsV0FBTyxJQUFJLElBQUksSUFBSSxJQUFJO0FBRHpCO0FBSUEsd0NBQTZCO0FBQzNCLFdBQU8sSUFBSSxDQUFDLElBQUksS0FBTTtBQUR4QjtBQUlBLDBDQUErQjtBQUM3QixXQUFPLElBQUksUUFBTSxLQUFLLElBQUksSUFBSSxJQUFJLElBQUksS0FBSSxJQUFJLENBQUMsQ0FBQyxJQUFJLElBQUksS0FBTSxJQUFJO0FBRHBFO0FBSUEsc0NBQTJCO0FBQ3pCLFdBQU8sSUFBSSxVQUFVLElBQUksSUFBSztBQURoQztBQUlBLHVDQUE0QjtBQUMxQixXQUFPLFVBQVUsSUFBSSxDQUFDLElBQUksS0FBTTtBQURsQztBQUlBLHlDQUE4QjtBQUM1QixXQUFPLElBQUksUUFDUCxDQUFDLElBQUksVUFBVSxJQUFJLENBQUMsSUFBSSxLQUFNLE1BQU0sS0FDcEMsQ0FBQyxVQUFVLElBQUksQ0FBQyxDQUFDLElBQUksSUFBSSxLQUFNLEtBQUssS0FBSztBQUgvQztBQU1BLHlDQUE4QjtBQUN0QixlQUFLLElBQUssS0FBSyxLQUFNO0FBRTNCLFdBQU8sS0FBTSxNQUNULEtBQ0EsTUFBTSxNQUNOLEtBQ0EsQ0FBRSxJQUFNLE1BQUssSUFBSSxNQUFPLFNBQVMsQ0FBQyxJQUFJLEtBQUssU0FBUztBQVAxRDtBQVVBLDBDQUErQjtBQUN2QixlQUFLLElBQUssS0FBSyxLQUFNO0FBRTNCLFdBQU8sS0FBTSxNQUNULEtBQ0EsTUFBTSxNQUNOLEtBQ0EsSUFBTSxFQUFDLEtBQUssS0FBSyxTQUFTLENBQUMsSUFBSSxLQUFLLFFBQVEsTUFBTTtBQVB4RDtBQVVBLDRDQUFpQztBQUN6QixlQUFLLElBQUssS0FBSyxLQUFNO0FBRTNCLFdBQU8sS0FBTSxNQUNULEtBQ0EsTUFBTSxNQUNOLEtBQ0EsS0FBSSxRQUNKLENBQUUsS0FBTSxNQUFLLElBQUksTUFBTSxTQUFTLENBQUMsS0FBSyxJQUFJLFVBQVUsT0FBTyxLQUMzRCxJQUFPLEVBQUMsS0FBSyxJQUFJLE1BQU0sU0FBUyxDQUFDLEtBQUssSUFBSSxVQUFVLE1BQU8sSUFBSTtBQVRyRTtBQVlBLHNDQUEyQjtBQUN6QixXQUFPLElBQUk7QUFEYjtBQUlBLHVDQUE0QjtBQUMxQixXQUFPLElBQUksQ0FBQyxJQUFJLEtBQU0sS0FBSTtBQUQ1QjtBQUlBLHlDQUE4QjtBQUM1QixXQUFPLElBQUksUUFBTSxJQUFJLElBQUksS0FBSSxJQUFJLENBQUMsQ0FBQyxJQUFJLElBQUksS0FBTSxJQUFJO0FBRHZEO0FBSUEsdUNBQTRCO0FBQzFCLFdBQU8sSUFBSSxJQUFJLElBQUk7QUFEckI7QUFJQSx3Q0FBNkI7QUFDM0IsV0FBTyxJQUFJLENBQUMsSUFBSSxLQUFNO0FBRHhCO0FBSUEsMENBQStCO0FBQzdCLFdBQU8sSUFBSSxRQUFNLElBQUksSUFBSSxJQUFJLElBQUksS0FBSSxJQUFJLENBQUMsQ0FBQyxJQUFJLElBQUksS0FBTSxJQUFJO0FBRC9EO0FBSUEsc0NBQTJCO0FBQ3pCLFdBQU8sS0FBTSxNQUFJLEtBQUksSUFBTSxNQUFLLElBQUk7QUFEdEM7QUFJQSx1Q0FBNEI7QUFDMUIsV0FBTyxLQUFNLE1BQUksS0FBSSxJQUFJLElBQU0sRUFBQyxLQUFLO0FBRHZDO0FBSUEseUNBQThCO0FBQzVCLFdBQU8sS0FBTSxNQUNULEtBQ0EsTUFBTSxNQUNOLEtBQ0EsS0FBSSxRQUNKLElBQU0sTUFBSyxJQUFJLE1BQU0sS0FDckIsQ0FBQyxJQUFJLElBQU0sRUFBQyxLQUFLLElBQUksT0FBTztBQVBsQztBQVVBLHNDQUEyQjtBQUNuQixlQUFLO0FBQ0wsZUFBSyxLQUFLO0FBRWhCLFdBQU8sS0FBSyxJQUFJLElBQUksSUFBSSxLQUFLLElBQUk7QUFKbkM7QUFPQSx1Q0FBNEI7QUFDcEIsZUFBSztBQUNMLGVBQUssS0FBSztBQUVoQixXQUFPLElBQUksS0FBSyxDQUFDLElBQUksS0FBTSxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQU07QUFKakQ7QUFPQSx5Q0FBOEI7QUFDdEIsZUFBSztBQUNMLGVBQUssS0FBSztBQUVoQixXQUFPLElBQUksUUFDUCxDQUFFLElBQUksS0FBTSxJQUFLLENBQUMsTUFBSyxLQUFLLElBQUksSUFBSSxNQUFPLEtBQzNDLENBQUMsQ0FBQyxJQUFJLElBQUksS0FBTSxJQUFLLENBQUMsTUFBSyxLQUFNLEtBQUksSUFBSSxLQUFLLE1BQU0sS0FBSztBQU4vRDtBQVNBLHdDQUE2QjtBQUMzQixXQUFPLElBQUksK0JBQWMsSUFBSTtBQUQvQjtBQXVCQSwyQ0FBZ0M7QUFDOUIsV0FBTyxJQUFJLFFBQ1AsQ0FBQyxJQUFJLCtCQUFjLElBQUksSUFBSSxNQUFNLEtBQ2pDLENBQUMsSUFBSSwrQkFBYyxJQUFJLElBQUksTUFBTTtBQUh2QyIsImZpbGUiOiJlYXNpbmcubHVhIiwic291cmNlUm9vdCI6IiJ9
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { ItemConfigTag } from "isaac-typescript-definitions";
|
|
2
|
+
import { isHiddenCollectible, isPassiveCollectible } from "./collectibles";
|
|
3
|
+
import { getCollectibleSet } from "./collectibleSet";
|
|
4
|
+
import { collectibleHasTag } from "./collectibleTag";
|
|
5
|
+
import { getRandomSeed } from "./rng";
|
|
6
|
+
import { copySet, getRandomSetElement } from "./set";
|
|
7
|
+
const EDEN_PASSIVE_COLLECTIBLES_SET = new Set();
|
|
8
|
+
function initCollectibleSet() {
|
|
9
|
+
const collectibleSet = getCollectibleSet();
|
|
10
|
+
for (const collectibleType of collectibleSet.values()) {
|
|
11
|
+
if (isPassiveCollectible(collectibleType) &&
|
|
12
|
+
!isHiddenCollectible(collectibleType) &&
|
|
13
|
+
!collectibleHasTag(collectibleType, ItemConfigTag.NO_EDEN)) {
|
|
14
|
+
EDEN_PASSIVE_COLLECTIBLES_SET.add(collectibleType);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export function getEdenPassives() {
|
|
19
|
+
// Lazy initialize the set.
|
|
20
|
+
if (EDEN_PASSIVE_COLLECTIBLES_SET.size === 0) {
|
|
21
|
+
initCollectibleSet();
|
|
22
|
+
}
|
|
23
|
+
return copySet(EDEN_PASSIVE_COLLECTIBLES_SET);
|
|
24
|
+
}
|
|
25
|
+
export function getRandomEdenPassive(seedOrRNG = getRandomSeed(), exceptions = []) {
|
|
26
|
+
// Lazy initialize the set.
|
|
27
|
+
if (EDEN_PASSIVE_COLLECTIBLES_SET.size === 0) {
|
|
28
|
+
initCollectibleSet();
|
|
29
|
+
}
|
|
30
|
+
return getRandomSetElement(EDEN_PASSIVE_COLLECTIBLES_SET, seedOrRNG, exceptions);
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRlbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvZnVuY3Rpb25zL2VkZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFtQixhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFFckQsTUFBTSw2QkFBNkIsR0FBRyxJQUFJLEdBQUcsRUFBbUIsQ0FBQztBQUVqRSxTQUFTLGtCQUFrQjtJQUN6QixNQUFNLGNBQWMsR0FBRyxpQkFBaUIsRUFBRSxDQUFDO0lBRTNDLEtBQUssTUFBTSxlQUFlLElBQUksY0FBYyxDQUFDLE1BQU0sRUFBRSxFQUFFO1FBQ3JELElBQ0Usb0JBQW9CLENBQUMsZUFBZSxDQUFDO1lBQ3JDLENBQUMsbUJBQW1CLENBQUMsZUFBZSxDQUFDO1lBQ3JDLENBQUMsaUJBQWlCLENBQUMsZUFBZSxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFDMUQ7WUFDQSw2QkFBNkIsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDcEQ7S0FDRjtBQUNILENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZTtJQUM3QiwyQkFBMkI7SUFDM0IsSUFBSSw2QkFBNkIsQ0FBQyxJQUFJLEtBQUssQ0FBQyxFQUFFO1FBQzVDLGtCQUFrQixFQUFFLENBQUM7S0FDdEI7SUFFRCxPQUFPLE9BQU8sQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO0FBQ2hELENBQUM7QUFFRCxNQUFNLFVBQVUsb0JBQW9CLENBQ2xDLFlBQXdCLGFBQWEsRUFBRSxFQUN2QyxhQUE2RCxFQUFFO0lBRS9ELDJCQUEyQjtJQUMzQixJQUFJLDZCQUE2QixDQUFDLElBQUksS0FBSyxDQUFDLEVBQUU7UUFDNUMsa0JBQWtCLEVBQUUsQ0FBQztLQUN0QjtJQUVELE9BQU8sbUJBQW1CLENBQ3hCLDZCQUE2QixFQUM3QixTQUFTLEVBQ1QsVUFBVSxDQUNYLENBQUM7QUFDSixDQUFDIn0=
|
package/functions/eden.lua
CHANGED
|
@@ -45,3 +45,5 @@ function ____exports.getRandomEdenPassive(self, seedOrRNG, exceptions)
|
|
|
45
45
|
return getRandomSetElement(nil, EDEN_PASSIVE_COLLECTIBLES_SET, seedOrRNG, exceptions)
|
|
46
46
|
end
|
|
47
47
|
return ____exports
|
|
48
|
+
|
|
49
|
+
--# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvZnVuY3Rpb25zL2VkZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2Q0FBK0M7QUFBckI7QUFDMUIseUJBQTBEO0FBQWpEO0FBQXFCO0FBQzlCLDJCQUFrQztBQUF6QjtBQUNULDJCQUFrQztBQUF6QjtBQUNULGdCQUE4QjtBQUFyQjtBQUNULGdCQUE2QztBQUFwQztBQUFTO0FBRVosc0NBQWdDLFVBQUk7QUFFMUMsZUFBUztBQUNELDJCQUFpQjtBQUV2QixjQUFXLG1CQUFtQiw4QkFBZTtXQUV6QywwQkFBcUIseUJBQ3BCLHlCQUFvQix5QkFDcEIsdUJBQWtCLGlCQUFpQjtZQUVwQyw4QkFBOEIsSUFBSTs7O0FBVHhDO0FBY0E7T0FFTSxzQ0FBdUM7UUFDekM7O0FBR0YsV0FBTyxhQUFRO0FBTmpCO0FBU0EsZ0RBQ0UsV0FDQTtPQURBO1FBQUEsWUFBd0I7O09BQ3hCO1FBQUEsYUFBNkQ7O09BR3pELHNDQUF1QztRQUN6Qzs7QUFHRixXQUFPLHlCQUNMLCtCQUNBLFdBQ0E7QUFaSiIsImZpbGUiOiJlZGVuLmx1YSIsInNvdXJjZVJvb3QiOiIifQ==
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { inRectangle } from "./math";
|
|
2
|
+
/** For `EntityType.EFFECT` (1000), `EffectVariant.DICE_FLOOR` (76) */
|
|
3
|
+
export const DICE_FLOOR_TRIGGER_SQUARE_SIZE = 75;
|
|
4
|
+
/** Helper function to see if a player is close enough to activate a Dice Room floor. */
|
|
5
|
+
export function isCloseEnoughToTriggerDiceFloor(player, diceFloor) {
|
|
6
|
+
// Unlike other entities, the dice floor has a rectangular hit box, not a circular one.
|
|
7
|
+
const topLeft = diceFloor.Position.add(Vector(-DICE_FLOOR_TRIGGER_SQUARE_SIZE, -DICE_FLOOR_TRIGGER_SQUARE_SIZE));
|
|
8
|
+
const bottomRight = diceFloor.Position.add(Vector(DICE_FLOOR_TRIGGER_SQUARE_SIZE, DICE_FLOOR_TRIGGER_SQUARE_SIZE));
|
|
9
|
+
return inRectangle(player.Position, topLeft, bottomRight);
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWZmZWN0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvZnVuY3Rpb25zL2VmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUVyQyxzRUFBc0U7QUFDdEUsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQUcsRUFBRSxDQUFDO0FBRWpELHdGQUF3RjtBQUN4RixNQUFNLFVBQVUsK0JBQStCLENBQzdDLE1BQW9CLEVBQ3BCLFNBQXVCO0lBRXZCLHVGQUF1RjtJQUN2RixNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FDcEMsTUFBTSxDQUFDLENBQUMsOEJBQThCLEVBQUUsQ0FBQyw4QkFBOEIsQ0FBQyxDQUN6RSxDQUFDO0lBQ0YsTUFBTSxXQUFXLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQ3hDLE1BQU0sQ0FBQyw4QkFBOEIsRUFBRSw4QkFBOEIsQ0FBQyxDQUN2RSxDQUFDO0lBRUYsT0FBTyxXQUFXLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUM7QUFDNUQsQ0FBQyJ9
|
package/functions/effects.lua
CHANGED
|
@@ -10,3 +10,5 @@ function ____exports.isCloseEnoughToTriggerDiceFloor(self, player, diceFloor)
|
|
|
10
10
|
return inRectangle(nil, player.Position, topLeft, bottomRight)
|
|
11
11
|
end
|
|
12
12
|
return ____exports
|
|
13
|
+
|
|
14
|
+
--# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2lzYWFjc2NyaXB0LWNvbW1vbi9zcmMvZnVuY3Rpb25zL2VmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLGlCQUE0QjtBQUFuQjs7QUFHSSw2Q0FBaUM7O0FBRzlDLDJEQUNFLFFBQ0E7QUFHTSxvQkFBVSxxQkFDZDtBQUVJLHdCQUFjLHFCQUNsQjtBQUdGLFdBQU8saUJBQVksaUJBQWlCLFNBQVM7QUFaL0MiLCJmaWxlIjoiZWZmZWN0cy5sdWEiLCJzb3VyY2VSb290IjoiIn0=
|