isaacscript-common 84.0.0 → 84.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/arrays/cachedEnumValues.js +33 -0
- package/dist/callbackClasses.js +289 -0
- package/dist/callbacks.js +181 -0
- package/dist/classes/DefaultMap.js +171 -0
- package/dist/classes/ModFeature.js +244 -0
- package/dist/classes/ModUpgraded.js +324 -0
- package/dist/classes/callbacks/EntityTakeDmgFilter.js +19 -0
- package/dist/classes/callbacks/EntityTakeDmgPlayer.js +29 -0
- package/dist/classes/callbacks/InputActionFilter.js +24 -0
- package/dist/classes/callbacks/InputActionPlayer.js +37 -0
- package/dist/classes/callbacks/PostAmbushFinished.js +40 -0
- package/dist/classes/callbacks/PostAmbushStarted.js +40 -0
- package/dist/classes/callbacks/PostBombExploded.js +24 -0
- package/dist/classes/callbacks/PostBombInitFilter.js +21 -0
- package/dist/classes/callbacks/PostBombInitLate.js +31 -0
- package/dist/classes/callbacks/PostBombRenderFilter.js +21 -0
- package/dist/classes/callbacks/PostBombUpdateFilter.js +21 -0
- package/dist/classes/callbacks/PostBoneSwing.js +53 -0
- package/dist/classes/callbacks/PostCollectibleEmpty.js +50 -0
- package/dist/classes/callbacks/PostCursedTeleport.js +119 -0
- package/dist/classes/callbacks/PostCustomRevive.js +17 -0
- package/dist/classes/callbacks/PostDiceRoomActivated.js +50 -0
- package/dist/classes/callbacks/PostDoorRender.js +24 -0
- package/dist/classes/callbacks/PostDoorUpdate.js +24 -0
- package/dist/classes/callbacks/PostEffectInitFilter.js +21 -0
- package/dist/classes/callbacks/PostEffectInitLate.js +31 -0
- package/dist/classes/callbacks/PostEffectRenderFilter.js +21 -0
- package/dist/classes/callbacks/PostEffectStateChanged.js +34 -0
- package/dist/classes/callbacks/PostEffectUpdateFilter.js +21 -0
- package/dist/classes/callbacks/PostEntityKillFilter.js +21 -0
- package/dist/classes/callbacks/PostEsauJr.js +12 -0
- package/dist/classes/callbacks/PostFamiliarInitFilter.js +21 -0
- package/dist/classes/callbacks/PostFamiliarInitLate.js +31 -0
- package/dist/classes/callbacks/PostFamiliarRenderFilter.js +21 -0
- package/dist/classes/callbacks/PostFamiliarStateChanged.js +34 -0
- package/dist/classes/callbacks/PostFamiliarUpdateFilter.js +21 -0
- package/dist/classes/callbacks/PostFirstEsauJr.js +12 -0
- package/dist/classes/callbacks/PostFirstFlip.js +12 -0
- package/dist/classes/callbacks/PostFlip.js +12 -0
- package/dist/classes/callbacks/PostGameEndFilter.js +21 -0
- package/dist/classes/callbacks/PostGameStartedReordered.js +14 -0
- package/dist/classes/callbacks/PostGameStartedReorderedLast.js +14 -0
- package/dist/classes/callbacks/PostGreedModeWave.js +35 -0
- package/dist/classes/callbacks/PostGridEntityBroken.js +14 -0
- package/dist/classes/callbacks/PostGridEntityCollision.js +28 -0
- package/dist/classes/callbacks/PostGridEntityCustomBroken.js +14 -0
- package/dist/classes/callbacks/PostGridEntityCustomCollision.js +24 -0
- package/dist/classes/callbacks/PostGridEntityCustomInit.js +14 -0
- package/dist/classes/callbacks/PostGridEntityCustomRemove.js +18 -0
- package/dist/classes/callbacks/PostGridEntityCustomRender.js +14 -0
- package/dist/classes/callbacks/PostGridEntityCustomStateChanged.js +14 -0
- package/dist/classes/callbacks/PostGridEntityCustomUpdate.js +14 -0
- package/dist/classes/callbacks/PostGridEntityInit.js +14 -0
- package/dist/classes/callbacks/PostGridEntityRemove.js +19 -0
- package/dist/classes/callbacks/PostGridEntityRender.js +14 -0
- package/dist/classes/callbacks/PostGridEntityStateChanged.js +14 -0
- package/dist/classes/callbacks/PostGridEntityUpdate.js +14 -0
- package/dist/classes/callbacks/PostHolyMantleRemoved.js +43 -0
- package/dist/classes/callbacks/PostItemDischarge.js +122 -0
- package/dist/classes/callbacks/PostItemPickup.js +14 -0
- package/dist/classes/callbacks/PostKeyboardChanged.js +46 -0
- package/dist/classes/callbacks/PostKnifeInitFilter.js +21 -0
- package/dist/classes/callbacks/PostKnifeInitLate.js +31 -0
- package/dist/classes/callbacks/PostKnifeRenderFilter.js +21 -0
- package/dist/classes/callbacks/PostKnifeUpdateFilter.js +21 -0
- package/dist/classes/callbacks/PostLaserInitFilter.js +21 -0
- package/dist/classes/callbacks/PostLaserInitLate.js +31 -0
- package/dist/classes/callbacks/PostLaserRenderFilter.js +21 -0
- package/dist/classes/callbacks/PostLaserUpdateFilter.js +21 -0
- package/dist/classes/callbacks/PostNPCDeathFilter.js +21 -0
- package/dist/classes/callbacks/PostNPCInitFilter.js +21 -0
- package/dist/classes/callbacks/PostNPCInitLate.js +31 -0
- package/dist/classes/callbacks/PostNPCRenderFilter.js +21 -0
- package/dist/classes/callbacks/PostNPCStateChanged.js +34 -0
- package/dist/classes/callbacks/PostNPCUpdateFilter.js +21 -0
- package/dist/classes/callbacks/PostNewLevelReordered.js +14 -0
- package/dist/classes/callbacks/PostNewRoomEarly.js +74 -0
- package/dist/classes/callbacks/PostNewRoomReordered.js +14 -0
- package/dist/classes/callbacks/PostPEffectUpdateReordered.js +14 -0
- package/dist/classes/callbacks/PostPickupChanged.js +14 -0
- package/dist/classes/callbacks/PostPickupCollect.js +38 -0
- package/dist/classes/callbacks/PostPickupInitFilter.js +21 -0
- package/dist/classes/callbacks/PostPickupInitFirst.js +33 -0
- package/dist/classes/callbacks/PostPickupInitLate.js +31 -0
- package/dist/classes/callbacks/PostPickupRenderFilter.js +21 -0
- package/dist/classes/callbacks/PostPickupSelectionFilter.js +29 -0
- package/dist/classes/callbacks/PostPickupStateChanged.js +34 -0
- package/dist/classes/callbacks/PostPickupUpdateFilter.js +21 -0
- package/dist/classes/callbacks/PostPitRender.js +24 -0
- package/dist/classes/callbacks/PostPitUpdate.js +24 -0
- package/dist/classes/callbacks/PostPlayerChangeHealth.js +47 -0
- package/dist/classes/callbacks/PostPlayerChangeStat.js +79 -0
- package/dist/classes/callbacks/PostPlayerChangeType.js +36 -0
- package/dist/classes/callbacks/PostPlayerCollectibleAdded.js +14 -0
- package/dist/classes/callbacks/PostPlayerCollectibleRemoved.js +14 -0
- package/dist/classes/callbacks/PostPlayerFatalDamage.js +83 -0
- package/dist/classes/callbacks/PostPlayerInitFirst.js +41 -0
- package/dist/classes/callbacks/PostPlayerInitLate.js +33 -0
- package/dist/classes/callbacks/PostPlayerRenderReordered.js +14 -0
- package/dist/classes/callbacks/PostPlayerUpdateReordered.js +14 -0
- package/dist/classes/callbacks/PostPoopRender.js +24 -0
- package/dist/classes/callbacks/PostPoopUpdate.js +24 -0
- package/dist/classes/callbacks/PostPressurePlateRender.js +24 -0
- package/dist/classes/callbacks/PostPressurePlateUpdate.js +24 -0
- package/dist/classes/callbacks/PostProjectileInitFilter.js +21 -0
- package/dist/classes/callbacks/PostProjectileInitLate.js +31 -0
- package/dist/classes/callbacks/PostProjectileKill.js +52 -0
- package/dist/classes/callbacks/PostProjectileRenderFilter.js +21 -0
- package/dist/classes/callbacks/PostProjectileUpdateFilter.js +21 -0
- package/dist/classes/callbacks/PostPurchase.js +90 -0
- package/dist/classes/callbacks/PostRockRender.js +24 -0
- package/dist/classes/callbacks/PostRockUpdate.js +24 -0
- package/dist/classes/callbacks/PostRoomClearChanged.js +46 -0
- package/dist/classes/callbacks/PostSacrifice.js +36 -0
- package/dist/classes/callbacks/PostSlotAnimationChanged.js +14 -0
- package/dist/classes/callbacks/PostSlotCollision.js +25 -0
- package/dist/classes/callbacks/PostSlotDestroyed.js +14 -0
- package/dist/classes/callbacks/PostSlotInit.js +14 -0
- package/dist/classes/callbacks/PostSlotRender.js +14 -0
- package/dist/classes/callbacks/PostSlotUpdate.js +14 -0
- package/dist/classes/callbacks/PostSpikesRender.js +24 -0
- package/dist/classes/callbacks/PostSpikesUpdate.js +24 -0
- package/dist/classes/callbacks/PostTNTRender.js +24 -0
- package/dist/classes/callbacks/PostTNTUpdate.js +24 -0
- package/dist/classes/callbacks/PostTearInitFilter.js +21 -0
- package/dist/classes/callbacks/PostTearInitLate.js +31 -0
- package/dist/classes/callbacks/PostTearInitVeryLate.js +35 -0
- package/dist/classes/callbacks/PostTearKill.js +52 -0
- package/dist/classes/callbacks/PostTearRenderFilter.js +21 -0
- package/dist/classes/callbacks/PostTearUpdateFilter.js +21 -0
- package/dist/classes/callbacks/PostTransformation.js +47 -0
- package/dist/classes/callbacks/PostTrinketBreak.js +70 -0
- package/dist/classes/callbacks/PostUsePillFilter.js +76 -0
- package/dist/classes/callbacks/PreBerserkDeath.js +41 -0
- package/dist/classes/callbacks/PreBombCollisionFilter.js +19 -0
- package/dist/classes/callbacks/PreCustomRevive.js +14 -0
- package/dist/classes/callbacks/PreEntitySpawnFilter.js +24 -0
- package/dist/classes/callbacks/PreFamiliarCollisionFilter.js +19 -0
- package/dist/classes/callbacks/PreGetPedestal.js +46 -0
- package/dist/classes/callbacks/PreItemPickup.js +14 -0
- package/dist/classes/callbacks/PreKnifeCollisionFilter.js +19 -0
- package/dist/classes/callbacks/PreNPCCollisionFilter.js +19 -0
- package/dist/classes/callbacks/PreNPCUpdateFilter.js +19 -0
- package/dist/classes/callbacks/PreNewLevel.js +51 -0
- package/dist/classes/callbacks/PreProjectileCollisionFilter.js +19 -0
- package/dist/classes/callbacks/PreRoomEntitySpawnFilter.js +26 -0
- package/dist/classes/callbacks/PreTearCollisionFilter.js +19 -0
- package/dist/classes/features/callbackLogic/CustomGridEntities.js +359 -0
- package/dist/classes/features/callbackLogic/CustomRevive.js +170 -0
- package/dist/classes/features/callbackLogic/EsauJrDetection.js +70 -0
- package/dist/classes/features/callbackLogic/FlipDetection.js +61 -0
- package/dist/classes/features/callbackLogic/GameReorderedCallbacks.js +220 -0
- package/dist/classes/features/callbackLogic/GridEntityCollisionDetection.js +62 -0
- package/dist/classes/features/callbackLogic/GridEntityRenderDetection.js +35 -0
- package/dist/classes/features/callbackLogic/GridEntityUpdateDetection.js +147 -0
- package/dist/classes/features/callbackLogic/ItemPickupDetection.js +68 -0
- package/dist/classes/features/callbackLogic/PickupChangeDetection.js +43 -0
- package/dist/classes/features/callbackLogic/PlayerCollectibleDetection.js +193 -0
- package/dist/classes/features/callbackLogic/PlayerReorderedCallbacks.js +109 -0
- package/dist/classes/features/callbackLogic/SlotDestroyedDetection.js +95 -0
- package/dist/classes/features/callbackLogic/SlotRenderDetection.js +48 -0
- package/dist/classes/features/callbackLogic/SlotUpdateDetection.js +52 -0
- package/dist/classes/features/other/CharacterHealthConversion.js +112 -0
- package/dist/classes/features/other/CharacterStats.js +68 -0
- package/dist/classes/features/other/CollectibleItemPoolType.js +75 -0
- package/dist/classes/features/other/CustomHotkeys.js +144 -0
- package/dist/classes/features/other/CustomItemPools.js +128 -0
- package/dist/classes/features/other/CustomPickups.js +118 -0
- package/dist/classes/features/other/CustomStages.js +471 -0
- package/dist/classes/features/other/CustomTrapdoors.js +596 -0
- package/dist/classes/features/other/DebugDisplay.js +699 -0
- package/dist/classes/features/other/DeployJSONRoom.js +301 -0
- package/dist/classes/features/other/DisableAllSound.js +90 -0
- package/dist/classes/features/other/DisableInputs.js +249 -0
- package/dist/classes/features/other/EdenStartingStatsHealth.js +197 -0
- package/dist/classes/features/other/ExtraConsoleCommands.js +292 -0
- package/dist/classes/features/other/FadeInRemover.js +67 -0
- package/dist/classes/features/other/FastReset.js +88 -0
- package/dist/classes/features/other/FlyingDetection.js +64 -0
- package/dist/classes/features/other/ForgottenSwitch.js +43 -0
- package/dist/classes/features/other/ItemPoolDetection.js +187 -0
- package/dist/classes/features/other/ModdedElementDetection.js +399 -0
- package/dist/classes/features/other/ModdedElementSets.js +1251 -0
- package/dist/classes/features/other/NoSirenSteal.js +88 -0
- package/dist/classes/features/other/Pause.js +197 -0
- package/dist/classes/features/other/PersistentEntities.js +168 -0
- package/dist/classes/features/other/PickupIndexCreation.js +229 -0
- package/dist/classes/features/other/PlayerCollectibleTracking.js +102 -0
- package/dist/classes/features/other/PonyDetection.js +86 -0
- package/dist/classes/features/other/PressInput.js +71 -0
- package/dist/classes/features/other/PreventChildEntities.js +60 -0
- package/dist/classes/features/other/PreventGridEntityRespawn.js +159 -0
- package/dist/classes/features/other/RerunDetection.js +69 -0
- package/dist/classes/features/other/RoomClearFrame.js +94 -0
- package/dist/classes/features/other/RoomHistory.js +196 -0
- package/dist/classes/features/other/RunInNFrames.js +323 -0
- package/dist/classes/features/other/RunNextRoom.js +53 -0
- package/dist/classes/features/other/RunNextRun.js +60 -0
- package/dist/classes/features/other/SaveDataManager.js +383 -0
- package/dist/classes/features/other/SpawnRockAltRewards.js +469 -0
- package/dist/classes/features/other/StageHistory.js +244 -0
- package/dist/classes/features/other/StartAmbush.js +62 -0
- package/dist/classes/features/other/TaintedLazarusPlayers.js +115 -0
- package/dist/classes/features/other/UnlockAchievementsDetection.js +60 -0
- package/dist/classes/features/other/customStages/backdrop.js +195 -0
- package/dist/classes/features/other/customStages/constants.js +19 -0
- package/dist/classes/features/other/customStages/gridEntities.js +177 -0
- package/dist/classes/features/other/customStages/shadows.js +67 -0
- package/dist/classes/features/other/customStages/streakText.js +222 -0
- package/dist/classes/features/other/customStages/utils.js +65 -0
- package/dist/classes/features/other/customStages/v.js +27 -0
- package/dist/classes/features/other/customStages/versusScreen.js +227 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplayBomb.js +23 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplayDoor.js +22 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplayEffect.js +23 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplayFamiliar.js +23 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplayKnife.js +23 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplayLaser.js +23 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplayNPC.js +23 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplayPickup.js +23 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplayPit.js +22 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplayPlayer.js +25 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplayPoop.js +22 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplayPressurePlate.js +25 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplayProjectile.js +23 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplayRock.js +22 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplaySlot.js +22 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplaySpikes.js +22 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplayTNT.js +22 -0
- package/dist/classes/features/other/debugDisplay/DebugDisplayTear.js +23 -0
- package/dist/classes/features/other/debugDisplay/utils.js +13 -0
- package/dist/classes/features/other/extraConsoleCommands/commands.js +1598 -0
- package/dist/classes/features/other/extraConsoleCommands/subroutines.js +135 -0
- package/dist/classes/features/other/extraConsoleCommands/v.js +30 -0
- package/dist/classes/features/other/saveDataManager/constants.js +4 -0
- package/dist/classes/features/other/saveDataManager/glowingHourGlass.js +106 -0
- package/dist/classes/features/other/saveDataManager/loadFromDisk.js +69 -0
- package/dist/classes/features/other/saveDataManager/restoreDefaults.js +69 -0
- package/dist/classes/features/other/saveDataManager/saveToDisk.js +46 -0
- package/dist/classes/private/CustomCallback.js +59 -0
- package/dist/classes/private/Feature.js +39 -0
- package/dist/core/cachedClasses.js +61 -0
- package/dist/core/constants.js +289 -0
- package/dist/core/constantsFirstLast.js +98 -0
- package/dist/core/constantsVanilla.js +131 -0
- package/dist/core/upgradeMod.js +71 -0
- package/dist/customStageMetadata.json +1 -0
- package/dist/data/itempools.json +16625 -0
- package/dist/decorators.js +21 -0
- package/dist/enums/AmbushType.js +9 -0
- package/dist/enums/CornerType.js +11 -0
- package/dist/enums/HealthType.js +20 -0
- package/dist/enums/ISCFeature.js +65 -0
- package/dist/enums/LadderSubTypeCustom.js +20 -0
- package/dist/enums/ModCallbackCustom.js +2477 -0
- package/dist/enums/MysteriousPaperEffect.js +16 -0
- package/dist/enums/PlayerStat.js +37 -0
- package/dist/enums/PocketItemType.js +13 -0
- package/dist/enums/RockAltType.js +23 -0
- package/dist/enums/SaveDataKey.js +14 -0
- package/dist/enums/SerializationType.js +10 -0
- package/dist/enums/SlotDestructionType.js +22 -0
- package/dist/enums/private/GridEntityTypeCustom.js +10 -0
- package/dist/enums/private/SerializationBrand.js +42 -0
- package/dist/enums/private/StageTravelState.js +13 -0
- package/dist/enums/private/TrapdoorAnimation.js +9 -0
- package/dist/enums/private/UIStreakAnimation.js +10 -0
- package/dist/features.js +150 -0
- package/dist/functions/ambush.js +26 -0
- package/dist/functions/array.js +586 -0
- package/dist/functions/arrayLua.js +81 -0
- package/dist/functions/benchmark.js +36 -0
- package/dist/functions/bitSet128.js +64 -0
- package/dist/functions/bitwise.js +82 -0
- package/dist/functions/bombs.js +14 -0
- package/dist/functions/bosses.js +238 -0
- package/dist/functions/cards.js +164 -0
- package/dist/functions/challenges.js +117 -0
- package/dist/functions/characters.js +182 -0
- package/dist/functions/charge.js +251 -0
- package/dist/functions/chargeBar.js +54 -0
- package/dist/functions/collectibleTag.js +24 -0
- package/dist/functions/collectibles.js +581 -0
- package/dist/functions/color.js +88 -0
- package/dist/functions/console.js +18 -0
- package/dist/functions/curses.js +37 -0
- package/dist/functions/debugFunctions.js +108 -0
- package/dist/functions/decorators.js +113 -0
- package/dist/functions/deepCopy.js +406 -0
- package/dist/functions/deepCopyTests.js +361 -0
- package/dist/functions/dimensions.js +30 -0
- package/dist/functions/direction.js +78 -0
- package/dist/functions/doors.js +524 -0
- package/dist/functions/easing.js +327 -0
- package/dist/functions/effects.js +14 -0
- package/dist/functions/emptyRoom.js +79 -0
- package/dist/functions/entities.js +529 -0
- package/dist/functions/entitiesSpecific.js +582 -0
- package/dist/functions/entityTypes.js +9 -0
- package/dist/functions/enums.js +244 -0
- package/dist/functions/external.js +59 -0
- package/dist/functions/familiars.js +136 -0
- package/dist/functions/flag.js +146 -0
- package/dist/functions/frames.js +166 -0
- package/dist/functions/globals.js +291 -0
- package/dist/functions/gridEntities.js +990 -0
- package/dist/functions/gridEntitiesSpecific.js +456 -0
- package/dist/functions/gridIndex.js +35 -0
- package/dist/functions/hash.js +75 -0
- package/dist/functions/hex.js +57 -0
- package/dist/functions/input.js +185 -0
- package/dist/functions/isaacAPIClass.js +157 -0
- package/dist/functions/itemPool.js +118 -0
- package/dist/functions/jsonHelpers.js +73 -0
- package/dist/functions/jsonRoom.js +184 -0
- package/dist/functions/kColor.js +89 -0
- package/dist/functions/language.js +16 -0
- package/dist/functions/level.js +66 -0
- package/dist/functions/levelGrid.js +497 -0
- package/dist/functions/log.js +86 -0
- package/dist/functions/logEntities.js +308 -0
- package/dist/functions/logMisc.js +510 -0
- package/dist/functions/map.js +121 -0
- package/dist/functions/math.js +149 -0
- package/dist/functions/merge.js +159 -0
- package/dist/functions/mergeTests.js +313 -0
- package/dist/functions/minimap.js +204 -0
- package/dist/functions/modFeatures.js +39 -0
- package/dist/functions/newArray.js +30 -0
- package/dist/functions/nextStage.js +169 -0
- package/dist/functions/npcDataStructures.js +146 -0
- package/dist/functions/npcs.js +132 -0
- package/dist/functions/pickupVariants.js +63 -0
- package/dist/functions/pickups.js +168 -0
- package/dist/functions/pickupsSpecific.js +376 -0
- package/dist/functions/pills.js +200 -0
- package/dist/functions/playerCenter.js +53 -0
- package/dist/functions/playerCollectibles.js +300 -0
- package/dist/functions/playerDataStructures.js +145 -0
- package/dist/functions/playerEffects.js +63 -0
- package/dist/functions/playerHealth.js +604 -0
- package/dist/functions/playerIndex.js +186 -0
- package/dist/functions/playerTrinkets.js +149 -0
- package/dist/functions/players.js +471 -0
- package/dist/functions/pocketItems.js +165 -0
- package/dist/functions/positionVelocity.js +158 -0
- package/dist/functions/pressurePlate.js +26 -0
- package/dist/functions/projectiles.js +57 -0
- package/dist/functions/random.js +90 -0
- package/dist/functions/readOnly.js +33 -0
- package/dist/functions/render.js +36 -0
- package/dist/functions/revive.js +151 -0
- package/dist/functions/rng.js +140 -0
- package/dist/functions/rockAlt.js +50 -0
- package/dist/functions/roomData.js +155 -0
- package/dist/functions/roomGrid.js +97 -0
- package/dist/functions/roomShape.js +143 -0
- package/dist/functions/roomShapeWalls.js +187 -0
- package/dist/functions/roomTransition.js +43 -0
- package/dist/functions/rooms.js +782 -0
- package/dist/functions/run.js +121 -0
- package/dist/functions/seeds.js +22 -0
- package/dist/functions/serialization.js +98 -0
- package/dist/functions/set.js +215 -0
- package/dist/functions/slots.js +41 -0
- package/dist/functions/sort.js +158 -0
- package/dist/functions/sound.js +45 -0
- package/dist/functions/spawnCollectible.js +112 -0
- package/dist/functions/sprites.js +130 -0
- package/dist/functions/stage.js +540 -0
- package/dist/functions/stats.js +104 -0
- package/dist/functions/storyBosses.js +63 -0
- package/dist/functions/string.js +194 -0
- package/dist/functions/table.js +162 -0
- package/dist/functions/tears.js +128 -0
- package/dist/functions/transformations.js +89 -0
- package/dist/functions/trinketGive.js +145 -0
- package/dist/functions/trinkets.js +213 -0
- package/dist/functions/tstlClass.js +97 -0
- package/dist/functions/types.js +225 -0
- package/dist/functions/ui.js +148 -0
- package/dist/functions/utils.d.ts +4 -1
- package/dist/functions/utils.d.ts.map +1 -1
- package/dist/functions/utils.js +195 -0
- package/dist/functions/utils.lua +6 -2
- package/dist/functions/vector.js +150 -0
- package/dist/functions/versusScreen.js +58 -0
- package/dist/functions/weighted.js +57 -0
- package/dist/index.js +219 -0
- package/dist/index.rollup.d.ts +4 -1
- package/dist/indexLua.js +220 -0
- package/dist/interfaces/ChargeBarSprites.js +2 -0
- package/dist/interfaces/Corner.js +2 -0
- package/dist/interfaces/CustomStageTSConfig.js +2 -0
- package/dist/interfaces/GridEntityCustomData.js +2 -0
- package/dist/interfaces/JSONRoomsFile.js +2 -0
- package/dist/interfaces/PlayerHealth.js +2 -0
- package/dist/interfaces/PlayerStats.js +4 -0
- package/dist/interfaces/PocketItemDescription.js +2 -0
- package/dist/interfaces/RoomDescription.js +2 -0
- package/dist/interfaces/SaveData.js +98 -0
- package/dist/interfaces/StageHistoryEntry.js +2 -0
- package/dist/interfaces/TSTLClassMetatable.js +2 -0
- package/dist/interfaces/TrinketSituation.js +2 -0
- package/dist/interfaces/private/AddCallbackParametersCustom.js +4 -0
- package/dist/interfaces/private/CustomStage.js +2 -0
- package/dist/interfaces/private/CustomTrapdoorDescription.js +2 -0
- package/dist/interfaces/private/ModUpgradedInterface.js +2 -0
- package/dist/isaacscript-common.lua +7 -3
- package/dist/maps/PHDPillConversionsMap.js +23 -0
- package/dist/maps/cardNameToTypeMap.js +211 -0
- package/dist/maps/characterNameToTypeMap.js +91 -0
- package/dist/maps/collectibleNameToTypeMap.js +19 -0
- package/dist/maps/defaultPlayerStatMap.js +17 -0
- package/dist/maps/entityTypeVariantToBossIDMap.js +11 -0
- package/dist/maps/falsePHDPillConversionsMap.js +37 -0
- package/dist/maps/gridEntityTypeToBrokenStateMap.js +32 -0
- package/dist/maps/gridEntityXMLMap.js +133 -0
- package/dist/maps/itemPoolTypeToItemPoolName.js +38 -0
- package/dist/maps/keyboardToStringMap.js +71 -0
- package/dist/maps/pillNameToEffectMap.js +91 -0
- package/dist/maps/roomNameToTypeMap.js +43 -0
- package/dist/maps/roomShapeToTopLeftWallGridIndexMap.js +17 -0
- package/dist/maps/transformationNameToPlayerFormMap.js +35 -0
- package/dist/maps/trinketNameToTypeMap.js +19 -0
- package/dist/objects/LRoomShapeToRectangles.js +43 -0
- package/dist/objects/backdropTypeToRockAltType.js +68 -0
- package/dist/objects/batteryNames.js +13 -0
- package/dist/objects/bombNames.js +17 -0
- package/dist/objects/bossIDToEntityTypeVariant.js +228 -0
- package/dist/objects/bossNamePNGFileNames.js +120 -0
- package/dist/objects/bossNames.js +119 -0
- package/dist/objects/bossPortraitPNGFileNames.js +123 -0
- package/dist/objects/cardDescriptions.js +106 -0
- package/dist/objects/cardNames.js +106 -0
- package/dist/objects/challengeBosses.js +60 -0
- package/dist/objects/challengeCharacters.js +58 -0
- package/dist/objects/challengeCollectibleTypes.js +255 -0
- package/dist/objects/challengeNames.js +54 -0
- package/dist/objects/challengeTrinketType.js +58 -0
- package/dist/objects/characterDamageMultipliers.js +49 -0
- package/dist/objects/characterNames.js +48 -0
- package/dist/objects/characterSpritePNGFileNames.js +50 -0
- package/dist/objects/characterStartingCollectibleTypes.js +105 -0
- package/dist/objects/characterStartingTrinketTypes.js +90 -0
- package/dist/objects/chestNames.js +20 -0
- package/dist/objects/coinNames.js +16 -0
- package/dist/objects/coinSubTypeToValue.js +15 -0
- package/dist/objects/collectibleDescriptions.js +742 -0
- package/dist/objects/collectibleNames.js +745 -0
- package/dist/objects/colors.js +26 -0
- package/dist/objects/directionNames.js +11 -0
- package/dist/objects/directionToDegrees.js +11 -0
- package/dist/objects/directionToMoveAction.js +11 -0
- package/dist/objects/directionToShootAction.js +11 -0
- package/dist/objects/directionToVector.js +13 -0
- package/dist/objects/doorSlotFlagToDoorSlot.js +15 -0
- package/dist/objects/doorSlotToDirection.js +15 -0
- package/dist/objects/doorSlotToDoorSlotFlag.js +15 -0
- package/dist/objects/gridEntityTypeToANM2Name.js +37 -0
- package/dist/objects/heartNames.js +21 -0
- package/dist/objects/isaacAPIClassTypeToBrand.js +12 -0
- package/dist/objects/isaacAPIClassTypeToFunctions.js +46 -0
- package/dist/objects/itemPoolTypeToCollectibleTypesSet.js +57 -0
- package/dist/objects/kColors.js +27 -0
- package/dist/objects/keyNames.js +13 -0
- package/dist/objects/languageNames.js +13 -0
- package/dist/objects/oppositeDoorSlots.js +15 -0
- package/dist/objects/pillEffectClasses.js +57 -0
- package/dist/objects/pillEffectNames.js +57 -0
- package/dist/objects/pillEffectTypeToPillEffects.js +23 -0
- package/dist/objects/pillEffectTypes.js +57 -0
- package/dist/objects/playerNamePNGFileNames.js +57 -0
- package/dist/objects/playerPortraitPNGFileNames.js +54 -0
- package/dist/objects/roomShapeBounds.js +48 -0
- package/dist/objects/roomShapeCorners.js +330 -0
- package/dist/objects/roomShapeLayoutSizes.js +41 -0
- package/dist/objects/roomShapeToBottomRightPosition.js +25 -0
- package/dist/objects/roomShapeToDoorSlotCoordinates.js +111 -0
- package/dist/objects/roomShapeToDoorSlots.js +72 -0
- package/dist/objects/roomShapeToDoorSlotsToGridIndexDelta.js +118 -0
- package/dist/objects/roomShapeToGridWidth.js +20 -0
- package/dist/objects/roomShapeToTopLeftPosition.js +26 -0
- package/dist/objects/roomShapeVolumes.js +32 -0
- package/dist/objects/roomTypeNames.js +35 -0
- package/dist/objects/roomTypeSpecialGotoPrefixes.js +35 -0
- package/dist/objects/sackNames.js +11 -0
- package/dist/objects/slotNames.js +26 -0
- package/dist/objects/stageIDNames.js +43 -0
- package/dist/objects/stageToMusic.js +91 -0
- package/dist/objects/stageToStageID.js +117 -0
- package/dist/objects/stageTypeSuffixes.js +14 -0
- package/dist/objects/transformationNames.js +20 -0
- package/dist/objects/trinketDescriptions.js +199 -0
- package/dist/objects/trinketNames.js +202 -0
- package/dist/objects/versusScreenBackgroundColors.js +46 -0
- package/dist/objects/versusScreenDirtSpotColors.js +46 -0
- package/dist/patchErrorFunctions.js +65 -0
- package/dist/serialization.js +21 -0
- package/dist/sets/LRoomShapesSet.js +11 -0
- package/dist/sets/bigRoomShapesSet.js +14 -0
- package/dist/sets/bossSets.js +465 -0
- package/dist/sets/charactersThatStartWithAnActiveItemSet.js +18 -0
- package/dist/sets/charactersWithBlackHeartFromEternalHeartSet.js +9 -0
- package/dist/sets/charactersWithFreeDevilDealsSet.js +6 -0
- package/dist/sets/charactersWithNoRedHeartsSet.js +19 -0
- package/dist/sets/charactersWithNoSoulHeartsSet.js +16 -0
- package/dist/sets/consoleCommandsSet.js +64 -0
- package/dist/sets/entitiesWithArmorSet.js +59 -0
- package/dist/sets/familiarsThatShootPlayerTearsSet.js +15 -0
- package/dist/sets/itemConfigCardTypesForCards.js +14 -0
- package/dist/sets/lostStyleCharactersSet.js +16 -0
- package/dist/sets/mineShaftRoomSubTypesSet.js +12 -0
- package/dist/sets/narrowRoomShapesSet.js +11 -0
- package/dist/sets/poopGridEntityXMLTypesSet.js +16 -0
- package/dist/sets/redHeartSubTypesSet.js +10 -0
- package/dist/sets/repentanceBossIDsSet.js +30 -0
- package/dist/sets/sinEntityTypesSet.js +14 -0
- package/dist/sets/singleUseActiveCollectibleTypesSet.js +15 -0
- package/dist/shaderCrashFix.js +24 -0
- package/dist/shouldFire.js +226 -0
- package/dist/types/AddSubtract.js +2 -0
- package/dist/types/AllButFirst.js +2 -0
- package/dist/types/AllButLast.js +2 -0
- package/dist/types/AnyClass.js +2 -0
- package/dist/types/AnyEntity.js +2 -0
- package/dist/types/AnyFunction.js +2 -0
- package/dist/types/AnyGridEntity.js +2 -0
- package/dist/types/CompositionTypeSatisfiesEnum.js +11 -0
- package/dist/types/ConversionHeartSubType.js +2 -0
- package/dist/types/Decrement.js +2 -0
- package/dist/types/ERange.js +2 -0
- package/dist/types/EntityID.js +2 -0
- package/dist/types/FunctionTuple.js +2 -0
- package/dist/types/GridEntityID.js +2 -0
- package/dist/types/HasFunction.js +2 -0
- package/dist/types/IRange.js +2 -0
- package/dist/types/Immutable.js +2 -0
- package/dist/types/Increment.js +2 -0
- package/dist/types/LowercaseKeys.js +2 -0
- package/dist/types/NaturalNumbersLessThan.js +2 -0
- package/dist/types/NaturalNumbersLessThanOrEqualTo.js +2 -0
- package/dist/types/PickingUpItem.js +44 -0
- package/dist/types/PickupIndex.js +2 -0
- package/dist/types/PlayerIndex.js +2 -0
- package/dist/types/PossibleStatType.js +2 -0
- package/dist/types/PublicInterface.js +2 -0
- package/dist/types/ReadonlyMap.js +6 -0
- package/dist/types/ReadonlyRecord.js +2 -0
- package/dist/types/ReadonlySet.js +6 -0
- package/dist/types/StartsWithLowercase.js +2 -0
- package/dist/types/StartsWithUppercase.js +2 -0
- package/dist/types/TSTLClass.js +2 -0
- package/dist/types/Tuple.js +2 -0
- package/dist/types/TupleKeys.js +2 -0
- package/dist/types/TupleToIntersection.js +2 -0
- package/dist/types/TupleToUnion.js +2 -0
- package/dist/types/TupleWithLengthBetween.js +22 -0
- package/dist/types/TupleWithMaxLength.js +27 -0
- package/dist/types/UnionToIntersection.js +2 -0
- package/dist/types/UppercaseKeys.js +2 -0
- package/dist/types/WeightedArray.js +2 -0
- package/dist/types/WidenLiteral.js +2 -0
- package/dist/types/Writable.js +2 -0
- package/dist/types/private/CallbackTuple.js +2 -0
- package/dist/types/private/ModUpgradedWithFeatures.js +2 -0
- package/package.json +1 -1
- package/src/functions/utils.ts +6 -2
|
@@ -0,0 +1,327 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* eslint-disable no-nested-ternary */
|
|
3
|
+
/* eslint-disable no-return-assign */
|
|
4
|
+
/* eslint-disable sort-exports/sort-exports */
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.easeInOutBounce = exports.easeOutBounce = exports.easeInBounce = exports.easeInOutBack = exports.easeOutBack = exports.easeInBack = exports.easeInOutExpo = exports.easeOutExpo = exports.easeInExpo = exports.easeInOutQuart = exports.easeOutQuart = exports.easeInQuart = exports.easeInOutQuad = exports.easeOutQuad = exports.easeInQuad = exports.easeInOutElastic = exports.easeOutElastic = exports.easeInElastic = exports.easeInOutCirc = exports.easeOutCirc = exports.easeInCirc = exports.easeInOutQuint = exports.easeOutQuint = exports.easeInQuint = exports.easeInOutCubic = exports.easeOutCubic = exports.easeInCubic = exports.easeInOutSine = exports.easeOutSine = exports.easeInSine = void 0;
|
|
7
|
+
/**
|
|
8
|
+
* From: https://easings.net/#easeInSine
|
|
9
|
+
*
|
|
10
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
11
|
+
*/
|
|
12
|
+
function easeInSine(time) {
|
|
13
|
+
return 1 - Math.cos((time * Math.PI) / 2);
|
|
14
|
+
}
|
|
15
|
+
exports.easeInSine = easeInSine;
|
|
16
|
+
/**
|
|
17
|
+
* From: https://easings.net/#easeOutSine
|
|
18
|
+
*
|
|
19
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
20
|
+
*/
|
|
21
|
+
function easeOutSine(time) {
|
|
22
|
+
return Math.sin((time * Math.PI) / 2);
|
|
23
|
+
}
|
|
24
|
+
exports.easeOutSine = easeOutSine;
|
|
25
|
+
/**
|
|
26
|
+
* From: https://easings.net/#easeInOutSine
|
|
27
|
+
*
|
|
28
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
29
|
+
*/
|
|
30
|
+
function easeInOutSine(time) {
|
|
31
|
+
return -(Math.cos(Math.PI * time) - 1) / 2;
|
|
32
|
+
}
|
|
33
|
+
exports.easeInOutSine = easeInOutSine;
|
|
34
|
+
/**
|
|
35
|
+
* From: https://easings.net/#easeInCubic
|
|
36
|
+
*
|
|
37
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
38
|
+
*/
|
|
39
|
+
function easeInCubic(time) {
|
|
40
|
+
return time * time * time;
|
|
41
|
+
}
|
|
42
|
+
exports.easeInCubic = easeInCubic;
|
|
43
|
+
/**
|
|
44
|
+
* From: https://easings.net/#easeOutCubic
|
|
45
|
+
*
|
|
46
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
47
|
+
*/
|
|
48
|
+
function easeOutCubic(time) {
|
|
49
|
+
return 1 - (1 - time) ** 3;
|
|
50
|
+
}
|
|
51
|
+
exports.easeOutCubic = easeOutCubic;
|
|
52
|
+
/**
|
|
53
|
+
* From: https://easings.net/#easeInOutCubic
|
|
54
|
+
*
|
|
55
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
56
|
+
*/
|
|
57
|
+
function easeInOutCubic(time) {
|
|
58
|
+
return time < 0.5 ? 4 * time * time * time : 1 - (-2 * time + 2) ** 3 / 2;
|
|
59
|
+
}
|
|
60
|
+
exports.easeInOutCubic = easeInOutCubic;
|
|
61
|
+
/**
|
|
62
|
+
* From: https://easings.net/#easeInQuint
|
|
63
|
+
*
|
|
64
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
65
|
+
*/
|
|
66
|
+
function easeInQuint(time) {
|
|
67
|
+
return time * time * time * time * time;
|
|
68
|
+
}
|
|
69
|
+
exports.easeInQuint = easeInQuint;
|
|
70
|
+
/**
|
|
71
|
+
* From: https://easings.net/#easeOutQuint
|
|
72
|
+
*
|
|
73
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
74
|
+
*/
|
|
75
|
+
function easeOutQuint(time) {
|
|
76
|
+
return 1 - (1 - time) ** 5;
|
|
77
|
+
}
|
|
78
|
+
exports.easeOutQuint = easeOutQuint;
|
|
79
|
+
/**
|
|
80
|
+
* From: https://easings.net/#easeInOutQuint
|
|
81
|
+
*
|
|
82
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
83
|
+
*/
|
|
84
|
+
function easeInOutQuint(time) {
|
|
85
|
+
return time < 0.5
|
|
86
|
+
? 16 * time * time * time * time * time
|
|
87
|
+
: 1 - (-2 * time + 2) ** 5 / 2;
|
|
88
|
+
}
|
|
89
|
+
exports.easeInOutQuint = easeInOutQuint;
|
|
90
|
+
/**
|
|
91
|
+
* From: https://easings.net/#easeInCirc
|
|
92
|
+
*
|
|
93
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
94
|
+
*/
|
|
95
|
+
function easeInCirc(time) {
|
|
96
|
+
return 1 - Math.sqrt(1 - time ** 2);
|
|
97
|
+
}
|
|
98
|
+
exports.easeInCirc = easeInCirc;
|
|
99
|
+
/**
|
|
100
|
+
* From: https://easings.net/#easeOutCirc
|
|
101
|
+
*
|
|
102
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
103
|
+
*/
|
|
104
|
+
function easeOutCirc(time) {
|
|
105
|
+
return Math.sqrt(1 - (time - 1) ** 2);
|
|
106
|
+
}
|
|
107
|
+
exports.easeOutCirc = easeOutCirc;
|
|
108
|
+
/**
|
|
109
|
+
* From: https://easings.net/#easeInOutCirc
|
|
110
|
+
*
|
|
111
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
112
|
+
*/
|
|
113
|
+
function easeInOutCirc(time) {
|
|
114
|
+
return time < 0.5
|
|
115
|
+
? (1 - Math.sqrt(1 - (2 * time) ** 2)) / 2
|
|
116
|
+
: (Math.sqrt(1 - (-2 * time + 2) ** 2) + 1) / 2;
|
|
117
|
+
}
|
|
118
|
+
exports.easeInOutCirc = easeInOutCirc;
|
|
119
|
+
/**
|
|
120
|
+
* From: https://easings.net/#easeInElastic
|
|
121
|
+
*
|
|
122
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
123
|
+
*/
|
|
124
|
+
function easeInElastic(time) {
|
|
125
|
+
const c4 = (2 * Math.PI) / 3;
|
|
126
|
+
return time === 0
|
|
127
|
+
? 0
|
|
128
|
+
: time === 1
|
|
129
|
+
? 1
|
|
130
|
+
: -(2 ** (10 * time - 10)) * Math.sin((time * 10 - 10.75) * c4);
|
|
131
|
+
}
|
|
132
|
+
exports.easeInElastic = easeInElastic;
|
|
133
|
+
/**
|
|
134
|
+
* From: https://easings.net/#easeOutElastic
|
|
135
|
+
*
|
|
136
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
137
|
+
*/
|
|
138
|
+
function easeOutElastic(time) {
|
|
139
|
+
const c4 = (2 * Math.PI) / 3;
|
|
140
|
+
return time === 0
|
|
141
|
+
? 0
|
|
142
|
+
: time === 1
|
|
143
|
+
? 1
|
|
144
|
+
: 2 ** (-10 * time) * Math.sin((time * 10 - 0.75) * c4) + 1;
|
|
145
|
+
}
|
|
146
|
+
exports.easeOutElastic = easeOutElastic;
|
|
147
|
+
/**
|
|
148
|
+
* From: https://easings.net/#easeInOutElastic
|
|
149
|
+
*
|
|
150
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
151
|
+
*/
|
|
152
|
+
function easeInOutElastic(time) {
|
|
153
|
+
const c5 = (2 * Math.PI) / 4.5;
|
|
154
|
+
return time === 0
|
|
155
|
+
? 0
|
|
156
|
+
: time === 1
|
|
157
|
+
? 1
|
|
158
|
+
: time < 0.5
|
|
159
|
+
? -(2 ** (20 * time - 10) * Math.sin((20 * time - 11.125) * c5)) / 2
|
|
160
|
+
: (2 ** (-20 * time + 10) * Math.sin((20 * time - 11.125) * c5)) / 2 +
|
|
161
|
+
1;
|
|
162
|
+
}
|
|
163
|
+
exports.easeInOutElastic = easeInOutElastic;
|
|
164
|
+
/**
|
|
165
|
+
* From: https://easings.net/#easeInQuad
|
|
166
|
+
*
|
|
167
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
168
|
+
*/
|
|
169
|
+
function easeInQuad(time) {
|
|
170
|
+
return time * time;
|
|
171
|
+
}
|
|
172
|
+
exports.easeInQuad = easeInQuad;
|
|
173
|
+
/**
|
|
174
|
+
* From: https://easings.net/#easeOutQuad
|
|
175
|
+
*
|
|
176
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
177
|
+
*/
|
|
178
|
+
function easeOutQuad(time) {
|
|
179
|
+
return 1 - (1 - time) * (1 - time);
|
|
180
|
+
}
|
|
181
|
+
exports.easeOutQuad = easeOutQuad;
|
|
182
|
+
/**
|
|
183
|
+
* From: https://easings.net/#easeInOutQuad
|
|
184
|
+
*
|
|
185
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
186
|
+
*/
|
|
187
|
+
function easeInOutQuad(time) {
|
|
188
|
+
return time < 0.5 ? 2 * time * time : 1 - (-2 * time + 2) ** 2 / 2;
|
|
189
|
+
}
|
|
190
|
+
exports.easeInOutQuad = easeInOutQuad;
|
|
191
|
+
/**
|
|
192
|
+
* From: https://easings.net/#easeInQuart
|
|
193
|
+
*
|
|
194
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
195
|
+
*/
|
|
196
|
+
function easeInQuart(time) {
|
|
197
|
+
return time * time * time * time;
|
|
198
|
+
}
|
|
199
|
+
exports.easeInQuart = easeInQuart;
|
|
200
|
+
/**
|
|
201
|
+
* From: https://easings.net/#easeOutQuart
|
|
202
|
+
*
|
|
203
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
204
|
+
*/
|
|
205
|
+
function easeOutQuart(time) {
|
|
206
|
+
return 1 - (1 - time) ** 4;
|
|
207
|
+
}
|
|
208
|
+
exports.easeOutQuart = easeOutQuart;
|
|
209
|
+
/**
|
|
210
|
+
* From: https://easings.net/#easeInOutQuart
|
|
211
|
+
*
|
|
212
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
213
|
+
*/
|
|
214
|
+
function easeInOutQuart(time) {
|
|
215
|
+
return time < 0.5
|
|
216
|
+
? 8 * time * time * time * time
|
|
217
|
+
: 1 - (-2 * time + 2) ** 4 / 2;
|
|
218
|
+
}
|
|
219
|
+
exports.easeInOutQuart = easeInOutQuart;
|
|
220
|
+
/**
|
|
221
|
+
* From: https://easings.net/#easeInExpo
|
|
222
|
+
*
|
|
223
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
224
|
+
*/
|
|
225
|
+
function easeInExpo(time) {
|
|
226
|
+
return time === 0 ? 0 : 2 ** (10 * time - 10);
|
|
227
|
+
}
|
|
228
|
+
exports.easeInExpo = easeInExpo;
|
|
229
|
+
/**
|
|
230
|
+
* From: https://easings.net/#easeOutExpo
|
|
231
|
+
*
|
|
232
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
233
|
+
*/
|
|
234
|
+
function easeOutExpo(time) {
|
|
235
|
+
return time === 1 ? 1 : 1 - 2 ** (-10 * time);
|
|
236
|
+
}
|
|
237
|
+
exports.easeOutExpo = easeOutExpo;
|
|
238
|
+
/**
|
|
239
|
+
* From: https://easings.net/#easeInOutExpo
|
|
240
|
+
*
|
|
241
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
242
|
+
*/
|
|
243
|
+
function easeInOutExpo(time) {
|
|
244
|
+
return time === 0
|
|
245
|
+
? 0
|
|
246
|
+
: time === 1
|
|
247
|
+
? 1
|
|
248
|
+
: time < 0.5
|
|
249
|
+
? 2 ** (20 * time - 10) / 2
|
|
250
|
+
: (2 - 2 ** (-20 * time + 10)) / 2;
|
|
251
|
+
}
|
|
252
|
+
exports.easeInOutExpo = easeInOutExpo;
|
|
253
|
+
/**
|
|
254
|
+
* From: https://easings.net/#easeInBack
|
|
255
|
+
*
|
|
256
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
257
|
+
*/
|
|
258
|
+
function easeInBack(time) {
|
|
259
|
+
const c1 = 1.701_58;
|
|
260
|
+
const c3 = c1 + 1;
|
|
261
|
+
return c3 * time * time * time - c1 * time * time;
|
|
262
|
+
}
|
|
263
|
+
exports.easeInBack = easeInBack;
|
|
264
|
+
/**
|
|
265
|
+
* From: https://easings.net/#easeOutBack
|
|
266
|
+
*
|
|
267
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
268
|
+
*/
|
|
269
|
+
function easeOutBack(time) {
|
|
270
|
+
const c1 = 1.701_58;
|
|
271
|
+
const c3 = c1 + 1;
|
|
272
|
+
return 1 + c3 * (time - 1) ** 3 + c1 * (time - 1) ** 2;
|
|
273
|
+
}
|
|
274
|
+
exports.easeOutBack = easeOutBack;
|
|
275
|
+
/**
|
|
276
|
+
* From: https://easings.net/#easeInOutBack
|
|
277
|
+
*
|
|
278
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
279
|
+
*/
|
|
280
|
+
function easeInOutBack(time) {
|
|
281
|
+
const c1 = 1.701_58;
|
|
282
|
+
const c2 = c1 * 1.525;
|
|
283
|
+
return time < 0.5
|
|
284
|
+
? ((2 * time) ** 2 * ((c2 + 1) * 2 * time - c2)) / 2
|
|
285
|
+
: ((2 * time - 2) ** 2 * ((c2 + 1) * (time * 2 - 2) + c2) + 2) / 2;
|
|
286
|
+
}
|
|
287
|
+
exports.easeInOutBack = easeInOutBack;
|
|
288
|
+
/**
|
|
289
|
+
* From: https://easings.net/#easeInBounce
|
|
290
|
+
*
|
|
291
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
292
|
+
*/
|
|
293
|
+
function easeInBounce(time) {
|
|
294
|
+
return 1 - easeOutBounce(1 - time);
|
|
295
|
+
}
|
|
296
|
+
exports.easeInBounce = easeInBounce;
|
|
297
|
+
/**
|
|
298
|
+
* From: https://easings.net/#easeInOutSine
|
|
299
|
+
*
|
|
300
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
301
|
+
*/
|
|
302
|
+
function easeOutBounce(time) {
|
|
303
|
+
const n1 = 7.5625;
|
|
304
|
+
const d1 = 2.75;
|
|
305
|
+
if (time < 1 / d1) {
|
|
306
|
+
return n1 * time * time;
|
|
307
|
+
}
|
|
308
|
+
if (time < 2 / d1) {
|
|
309
|
+
return n1 * (time -= 1.5 / d1) * time + 0.75;
|
|
310
|
+
}
|
|
311
|
+
if (time < 2.5 / d1) {
|
|
312
|
+
return n1 * (time -= 2.25 / d1) * time + 0.9375;
|
|
313
|
+
}
|
|
314
|
+
return n1 * (time -= 2.625 / d1) * time + 0.984_375;
|
|
315
|
+
}
|
|
316
|
+
exports.easeOutBounce = easeOutBounce;
|
|
317
|
+
/**
|
|
318
|
+
* From: https://easings.net/#easeInOutBounce
|
|
319
|
+
*
|
|
320
|
+
* @param time A value between 0 and 1 that represents how far along you are in the transition.
|
|
321
|
+
*/
|
|
322
|
+
function easeInOutBounce(time) {
|
|
323
|
+
return time < 0.5
|
|
324
|
+
? (1 - easeOutBounce(1 - 2 * time)) / 2
|
|
325
|
+
: (1 + easeOutBounce(2 * time - 1)) / 2;
|
|
326
|
+
}
|
|
327
|
+
exports.easeInOutBounce = easeInOutBounce;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isCloseEnoughToTriggerDiceFloor = exports.DICE_FLOOR_TRIGGER_SQUARE_SIZE = void 0;
|
|
4
|
+
const math_1 = require("./math");
|
|
5
|
+
/** For `EntityType.EFFECT` (1000), `EffectVariant.DICE_FLOOR` (76). */
|
|
6
|
+
exports.DICE_FLOOR_TRIGGER_SQUARE_SIZE = 75;
|
|
7
|
+
/** Helper function to see if a player is close enough to activate a Dice Room floor. */
|
|
8
|
+
function isCloseEnoughToTriggerDiceFloor(player, diceFloor) {
|
|
9
|
+
// Unlike other entities, the dice floor has a rectangular hit box, not a circular one.
|
|
10
|
+
const topLeft = diceFloor.Position.add(Vector(-exports.DICE_FLOOR_TRIGGER_SQUARE_SIZE, -exports.DICE_FLOOR_TRIGGER_SQUARE_SIZE));
|
|
11
|
+
const bottomRight = diceFloor.Position.add(Vector(exports.DICE_FLOOR_TRIGGER_SQUARE_SIZE, exports.DICE_FLOOR_TRIGGER_SQUARE_SIZE));
|
|
12
|
+
return (0, math_1.inRectangle)(player.Position, topLeft, bottomRight);
|
|
13
|
+
}
|
|
14
|
+
exports.isCloseEnoughToTriggerDiceFloor = isCloseEnoughToTriggerDiceFloor;
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.emptyRoomGridEntities = exports.emptyRoom = void 0;
|
|
4
|
+
const isaac_typescript_definitions_1 = require("isaac-typescript-definitions");
|
|
5
|
+
const cachedClasses_1 = require("../core/cachedClasses");
|
|
6
|
+
const ReadonlySet_1 = require("../types/ReadonlySet");
|
|
7
|
+
const entities_1 = require("./entities");
|
|
8
|
+
const gridEntities_1 = require("./gridEntities");
|
|
9
|
+
const roomShapeWalls_1 = require("./roomShapeWalls");
|
|
10
|
+
const rooms_1 = require("./rooms");
|
|
11
|
+
const EMPTY_ROOM_BLACKLIST_ENTITY_SET = new ReadonlySet_1.ReadonlySet([
|
|
12
|
+
isaac_typescript_definitions_1.EntityType.PLAYER,
|
|
13
|
+
isaac_typescript_definitions_1.EntityType.TEAR,
|
|
14
|
+
isaac_typescript_definitions_1.EntityType.FAMILIAR,
|
|
15
|
+
isaac_typescript_definitions_1.EntityType.LASER,
|
|
16
|
+
isaac_typescript_definitions_1.EntityType.KNIFE,
|
|
17
|
+
isaac_typescript_definitions_1.EntityType.PROJECTILE,
|
|
18
|
+
isaac_typescript_definitions_1.EntityType.DARK_ESAU, // 866
|
|
19
|
+
]);
|
|
20
|
+
/**
|
|
21
|
+
* Helper function to remove all naturally spawning entities and grid entities from a room. Notably,
|
|
22
|
+
* this will not remove players (1), tears (2), familiars (3), lasers (7), knives (8), projectiles
|
|
23
|
+
* (9), blacklisted NPCs such as Dark Esau, charmed NPCs, friendly NPCs, persistent NPCs, most
|
|
24
|
+
* effects (1000), doors, and walls.
|
|
25
|
+
*/
|
|
26
|
+
function emptyRoom() {
|
|
27
|
+
emptyRoomEntities();
|
|
28
|
+
emptyRoomGridEntities();
|
|
29
|
+
}
|
|
30
|
+
exports.emptyRoom = emptyRoom;
|
|
31
|
+
/**
|
|
32
|
+
* We remove entities in the `POST_NEW_ROOM` callback instead of in the `PRE_ROOM_ENTITY_SPAWN`
|
|
33
|
+
* callback so that they will not re-appear when we re-enter the room.
|
|
34
|
+
*/
|
|
35
|
+
function emptyRoomEntities() {
|
|
36
|
+
const room = cachedClasses_1.game.GetRoom();
|
|
37
|
+
for (const entity of (0, entities_1.getEntities)()) {
|
|
38
|
+
if (EMPTY_ROOM_BLACKLIST_ENTITY_SET.has(entity.Type)) {
|
|
39
|
+
continue;
|
|
40
|
+
}
|
|
41
|
+
if (entity.HasEntityFlags(isaac_typescript_definitions_1.EntityFlag.CHARM) ||
|
|
42
|
+
entity.HasEntityFlags(isaac_typescript_definitions_1.EntityFlag.FRIENDLY) ||
|
|
43
|
+
entity.HasEntityFlags(isaac_typescript_definitions_1.EntityFlag.PERSISTENT)) {
|
|
44
|
+
continue;
|
|
45
|
+
}
|
|
46
|
+
entity.ClearEntityFlags(isaac_typescript_definitions_1.EntityFlag.APPEAR);
|
|
47
|
+
entity.Remove();
|
|
48
|
+
// When fire places are removed, they will leave behind a "path" that will prevent future grid
|
|
49
|
+
// entities from being spawned on the same tile. Thus, reset the path for this tile if this is a
|
|
50
|
+
// fire place.
|
|
51
|
+
if (entity.Type === isaac_typescript_definitions_1.EntityType.FIREPLACE) {
|
|
52
|
+
const gridIndex = room.GetGridIndex(entity.Position);
|
|
53
|
+
room.SetGridPath(gridIndex, 0);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
/** Helper function to remove all grid entities from a room except for doors and walls. */
|
|
58
|
+
function emptyRoomGridEntities() {
|
|
59
|
+
let removedOneOrMoreGridEntities = false;
|
|
60
|
+
for (const gridEntity of (0, gridEntities_1.getGridEntities)()) {
|
|
61
|
+
const gridEntityType = gridEntity.GetType();
|
|
62
|
+
const gridIndex = gridEntity.GetGridIndex();
|
|
63
|
+
// We cannot simply check if the grid entity type is equal to a wall because other mods use
|
|
64
|
+
// walls as a base for custom grid entities.
|
|
65
|
+
if (gridEntityType === isaac_typescript_definitions_1.GridEntityType.WALL &&
|
|
66
|
+
(0, roomShapeWalls_1.isVanillaWallGridIndex)(gridIndex)) {
|
|
67
|
+
continue;
|
|
68
|
+
}
|
|
69
|
+
if (gridEntityType === isaac_typescript_definitions_1.GridEntityType.DOOR) {
|
|
70
|
+
continue;
|
|
71
|
+
}
|
|
72
|
+
(0, gridEntities_1.removeGridEntity)(gridEntity, false);
|
|
73
|
+
removedOneOrMoreGridEntities = true;
|
|
74
|
+
}
|
|
75
|
+
if (removedOneOrMoreGridEntities) {
|
|
76
|
+
(0, rooms_1.roomUpdateSafe)();
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
exports.emptyRoomGridEntities = emptyRoomGridEntities;
|