isaacscript-common 3.17.0 → 4.0.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.ts +39 -0
- package/callbacks/customRevive.lua +2 -1
- package/callbacks/customRevive.ts +215 -0
- package/callbacks/itemPickup.ts +101 -0
- package/callbacks/postAmbush.ts +73 -0
- package/callbacks/postBombExploded.ts +26 -0
- package/callbacks/postBombInitLate.ts +36 -0
- package/callbacks/postBoneSwing.ts +64 -0
- package/callbacks/postCollectibleInitFirst.ts +40 -0
- package/callbacks/postCursedTeleport.lua +2 -1
- package/callbacks/postCursedTeleport.ts +185 -0
- package/callbacks/postCustomDoorEnter.lua +0 -7
- package/callbacks/postCustomDoorEnter.ts +292 -0
- package/callbacks/postDiceRoomActivated.ts +60 -0
- package/callbacks/postDoorRender.ts +26 -0
- package/callbacks/postDoorUpdate.ts +26 -0
- package/callbacks/postEffectInitLate.ts +36 -0
- package/callbacks/postEffectStateChanged.ts +43 -0
- package/callbacks/postEsauJr.lua +2 -1
- package/callbacks/postEsauJr.ts +109 -0
- package/callbacks/postFamiliarInitLate.ts +36 -0
- package/callbacks/postFamiliarStateChanged.ts +43 -0
- package/callbacks/postFlip.lua +4 -3
- package/callbacks/postFlip.ts +90 -0
- package/callbacks/postGreedModeWave.ts +41 -0
- package/callbacks/postGridEntity.ts +164 -0
- package/callbacks/postGridEntityCollision.ts +69 -0
- package/callbacks/postGridEntityRender.ts +26 -0
- package/callbacks/postHolyMantleRemoved.ts +55 -0
- package/callbacks/postItemDischarged.lua +4 -3
- package/callbacks/postItemDischarged.ts +154 -0
- package/callbacks/postKnifeInitLate.ts +36 -0
- package/callbacks/postLaserInitLate.ts +36 -0
- package/callbacks/postNPCInitLate.ts +36 -0
- package/callbacks/postNPCStateChanged.ts +42 -0
- package/callbacks/postNewRoomEarly.lua +2 -1
- package/callbacks/postNewRoomEarly.ts +96 -0
- package/callbacks/postPickupCollect.ts +48 -0
- package/callbacks/postPickupInitFirst.ts +70 -0
- package/callbacks/postPickupInitLate.ts +36 -0
- package/callbacks/postPickupStateChanged.ts +43 -0
- package/callbacks/postPitRender.ts +26 -0
- package/callbacks/postPitUpdate.ts +26 -0
- package/callbacks/postPlayerChangeHealth.ts +62 -0
- package/callbacks/postPlayerChangeType.ts +56 -0
- package/callbacks/postPlayerCollectible.ts +113 -0
- package/callbacks/postPlayerFatalDamage.ts +141 -0
- package/callbacks/postPlayerInitLate.ts +37 -0
- package/callbacks/postPlayerReordered.ts +142 -0
- package/callbacks/postPoopRender.ts +26 -0
- package/callbacks/postPoopUpdate.ts +26 -0
- package/callbacks/postPressurePlateRender.ts +26 -0
- package/callbacks/postPressurePlateUpdate.ts +26 -0
- package/callbacks/postProjectileInitLate.ts +36 -0
- package/callbacks/postPurchase.ts +64 -0
- package/callbacks/postRockRender.ts +26 -0
- package/callbacks/postRockUpdate.ts +26 -0
- package/callbacks/postRoomClearChanged.ts +57 -0
- package/callbacks/postSacrifice.lua +3 -2
- package/callbacks/postSacrifice.ts +64 -0
- package/callbacks/postSlotDestroyed.ts +92 -0
- package/callbacks/postSlotInitUpdate.ts +68 -0
- package/callbacks/postSlotRender.ts +69 -0
- package/callbacks/postSpikesRender.ts +26 -0
- package/callbacks/postSpikesUpdate.ts +26 -0
- package/callbacks/postTNTRender.ts +26 -0
- package/callbacks/postTNTUpdate.ts +26 -0
- package/callbacks/postTearInitLate.ts +36 -0
- package/callbacks/postTearInitVeryLate.ts +41 -0
- package/callbacks/postTransformation.ts +59 -0
- package/callbacks/postTrinketBreak.lua +3 -2
- package/callbacks/postTrinketBreak.ts +112 -0
- package/callbacks/preBerserkDeath.ts +49 -0
- package/callbacks/preNewLevel.ts +55 -0
- package/callbacks/reorderedCallbacks.lua +1 -0
- package/callbacks/reorderedCallbacks.ts +168 -0
- package/callbacks/subscriptions/postAmbushFinished.ts +32 -0
- package/callbacks/subscriptions/postAmbushStarted.ts +32 -0
- package/callbacks/subscriptions/postBombInitLate.ts +32 -0
- package/callbacks/subscriptions/postBoneExploded.ts +32 -0
- package/callbacks/subscriptions/postBoneSwing.ts +24 -0
- package/callbacks/subscriptions/postCollectibleInitFirst.ts +37 -0
- package/callbacks/subscriptions/postCursedTeleport.ts +24 -0
- package/callbacks/subscriptions/postCustomDoorEnter.ts +45 -0
- package/callbacks/subscriptions/postCustomRevive.ts +36 -0
- package/callbacks/subscriptions/postDiceRoomActivated.ts +38 -0
- package/callbacks/subscriptions/postDoorRender.ts +35 -0
- package/callbacks/subscriptions/postDoorUpdate.ts +35 -0
- package/callbacks/subscriptions/postEffectInitLate.ts +32 -0
- package/callbacks/subscriptions/postEffectStateChanged.ts +40 -0
- package/callbacks/subscriptions/postEsauJr.ts +24 -0
- package/callbacks/subscriptions/postFamiliarInitLate.ts +32 -0
- package/callbacks/subscriptions/postFamiliarStateChanged.ts +40 -0
- package/callbacks/subscriptions/postFirstEsauJr.ts +24 -0
- package/callbacks/subscriptions/postFirstFlip.ts +24 -0
- package/callbacks/subscriptions/postFlip.ts +22 -0
- package/callbacks/subscriptions/postGameStartedReordered.ts +24 -0
- package/callbacks/subscriptions/postGreedModeWave.ts +24 -0
- package/callbacks/subscriptions/postGridEntityBroken.ts +51 -0
- package/callbacks/subscriptions/postGridEntityCollision.ts +54 -0
- package/callbacks/subscriptions/postGridEntityInit.ts +51 -0
- package/callbacks/subscriptions/postGridEntityRemove.ts +52 -0
- package/callbacks/subscriptions/postGridEntityRender.ts +51 -0
- package/callbacks/subscriptions/postGridEntityStateChanged.ts +55 -0
- package/callbacks/subscriptions/postGridEntityUpdate.ts +51 -0
- package/callbacks/subscriptions/postHolyMantleRemoved.ts +48 -0
- package/callbacks/subscriptions/postItemDischarged.ts +43 -0
- package/callbacks/subscriptions/postItemPickup.ts +64 -0
- package/callbacks/subscriptions/postKnifeInitLate.ts +32 -0
- package/callbacks/subscriptions/postLaserInitLate.ts +32 -0
- package/callbacks/subscriptions/postNPCInitLate.ts +32 -0
- package/callbacks/subscriptions/postNPCStateChanged.ts +42 -0
- package/callbacks/subscriptions/postNewLevelReordered.ts +22 -0
- package/callbacks/subscriptions/postNewRoomEarly.ts +22 -0
- package/callbacks/subscriptions/postNewRoomReordered.ts +22 -0
- package/callbacks/subscriptions/postPEffectUpdateReordered.ts +40 -0
- package/callbacks/subscriptions/postPickupCollect.ts +35 -0
- package/callbacks/subscriptions/postPickupInitFirst.ts +32 -0
- package/callbacks/subscriptions/postPickupInitLate.ts +32 -0
- package/callbacks/subscriptions/postPickupStateChanged.ts +40 -0
- package/callbacks/subscriptions/postPitRender.ts +35 -0
- package/callbacks/subscriptions/postPitUpdate.ts +35 -0
- package/callbacks/subscriptions/postPlayerChangeHealth.ts +49 -0
- package/callbacks/subscriptions/postPlayerChangeType.ts +40 -0
- package/callbacks/subscriptions/postPlayerCollectibleAdded.d.ts +2 -3
- package/callbacks/subscriptions/postPlayerCollectibleAdded.lua +2 -7
- package/callbacks/subscriptions/postPlayerCollectibleAdded.ts +38 -0
- package/callbacks/subscriptions/postPlayerCollectibleRemoved.d.ts +2 -3
- package/callbacks/subscriptions/postPlayerCollectibleRemoved.lua +2 -7
- package/callbacks/subscriptions/postPlayerCollectibleRemoved.ts +38 -0
- package/callbacks/subscriptions/postPlayerFatalDamage.d.ts +1 -1
- package/callbacks/subscriptions/postPlayerFatalDamage.ts +68 -0
- package/callbacks/subscriptions/postPlayerInitLate.ts +40 -0
- package/callbacks/subscriptions/postPlayerInitReordered.ts +40 -0
- package/callbacks/subscriptions/postPlayerRenderReordered.ts +40 -0
- package/callbacks/subscriptions/postPlayerUpdateReordered.ts +40 -0
- package/callbacks/subscriptions/postPoopRender.ts +35 -0
- package/callbacks/subscriptions/postPoopUpdate.ts +35 -0
- package/callbacks/subscriptions/postPressurePlateRender.ts +37 -0
- package/callbacks/subscriptions/postPressurePlateUpdate.ts +37 -0
- package/callbacks/subscriptions/postProjectileInitLate.ts +35 -0
- package/callbacks/subscriptions/postPurchase.ts +31 -0
- package/callbacks/subscriptions/postRockRender.ts +35 -0
- package/callbacks/subscriptions/postRockUpdate.ts +35 -0
- package/callbacks/subscriptions/postRoomClearChanged.ts +30 -0
- package/callbacks/subscriptions/postSacrifice.ts +43 -0
- package/callbacks/subscriptions/postSlotAnimationChanged.ts +40 -0
- package/callbacks/subscriptions/postSlotDestroyed.ts +55 -0
- package/callbacks/subscriptions/postSlotInit.ts +32 -0
- package/callbacks/subscriptions/postSlotRender.ts +32 -0
- package/callbacks/subscriptions/postSlotUpdate.ts +32 -0
- package/callbacks/subscriptions/postSpikesRender.ts +35 -0
- package/callbacks/subscriptions/postSpikesUpdate.ts +35 -0
- package/callbacks/subscriptions/postTNTRender.ts +35 -0
- package/callbacks/subscriptions/postTNTUpdate.ts +35 -0
- package/callbacks/subscriptions/postTearInitLate.ts +32 -0
- package/callbacks/subscriptions/postTearInitVeryLate.ts +32 -0
- package/callbacks/subscriptions/postTransformation.ts +40 -0
- package/callbacks/subscriptions/postTrinketBreak.ts +38 -0
- package/callbacks/subscriptions/preBerserkDeath.d.ts +1 -1
- package/callbacks/subscriptions/preBerserkDeath.ts +42 -0
- package/callbacks/subscriptions/preCustomRevive.d.ts +1 -1
- package/callbacks/subscriptions/preCustomRevive.ts +46 -0
- package/callbacks/subscriptions/preItemPickup.ts +64 -0
- package/callbacks/subscriptions/preNewLevel.ts +24 -0
- package/classes/DefaultMap.ts +174 -0
- package/classes/ModUpgraded.d.ts +8 -4
- package/classes/ModUpgraded.lua +5 -8
- package/classes/ModUpgraded.ts +84 -0
- package/constants.ts +162 -0
- package/constantsFirstLast.ts +217 -0
- package/enums/AmbushType.ts +4 -0
- package/enums/HealthType.ts +16 -0
- package/enums/ModCallbackCustom.d.ts +20 -18
- package/enums/ModCallbackCustom.ts +1278 -0
- package/enums/PocketItemType.ts +8 -0
- package/enums/SerializationType.ts +5 -0
- package/enums/SlotDestructionType.ts +4 -0
- package/enums/private/CopyableIsaacAPIClassType.ts +7 -0
- package/enums/private/SaveDataKey.ts +14 -0
- package/enums/private/SerializationBrand.ts +42 -0
- package/features/characterHealthConversion.lua +2 -9
- package/features/characterHealthConversion.ts +111 -0
- package/features/characterStats.ts +61 -0
- package/features/debugDisplay/debugDisplay.ts +221 -0
- package/features/debugDisplay/exports.ts +368 -0
- package/features/debugDisplay/v.ts +65 -0
- package/features/deployJSONRoom.ts +743 -0
- package/features/disableInputs.ts +193 -0
- package/features/disableSound.ts +77 -0
- package/features/extraConsoleCommands/commandsDisplay.ts +290 -0
- package/features/extraConsoleCommands/commandsSubroutines.lua +1 -1
- package/features/extraConsoleCommands/commandsSubroutines.ts +139 -0
- package/features/extraConsoleCommands/init.ts +334 -0
- package/features/extraConsoleCommands/listCommands.ts +1299 -0
- package/features/extraConsoleCommands/v.ts +14 -0
- package/features/fadeInRemover.ts +60 -0
- package/features/fastReset.ts +75 -0
- package/features/forgottenSwitch.ts +50 -0
- package/features/getCollectibleItemPoolType.ts +66 -0
- package/features/persistentEntities.ts +183 -0
- package/features/playerInventory.lua +1 -0
- package/features/playerInventory.ts +135 -0
- package/features/ponyDetection.ts +74 -0
- package/features/preventCollectibleRotation.ts +115 -0
- package/features/runInNFrames.ts +148 -0
- package/features/saveDataManager/constants.ts +4 -0
- package/features/saveDataManager/exports.ts +229 -0
- package/features/saveDataManager/load.ts +99 -0
- package/features/saveDataManager/main.ts +195 -0
- package/features/saveDataManager/maps.ts +13 -0
- package/features/saveDataManager/merge.ts +194 -0
- package/features/saveDataManager/save.ts +74 -0
- package/features/saveDataManager/serializationBrand.ts +16 -0
- package/features/sirenHelpers.ts +129 -0
- package/features/taintedLazarusPlayers.ts +113 -0
- package/featuresInitialized.ts +20 -0
- package/functions/ambush.ts +47 -0
- package/functions/array.ts +410 -0
- package/functions/benchmark.ts +36 -0
- package/functions/bitwise.ts +24 -0
- package/functions/bombs.ts +12 -0
- package/functions/boss.ts +227 -0
- package/functions/cacheFlag.ts +12 -0
- package/functions/cards.lua +1 -1
- package/functions/cards.ts +271 -0
- package/functions/challenges.ts +13 -0
- package/functions/character.ts +126 -0
- package/functions/charge.ts +237 -0
- package/functions/chargeBar.ts +67 -0
- package/functions/collectibleCacheFlag.ts +90 -0
- package/functions/collectibleSet.ts +56 -0
- package/functions/collectibleTag.ts +89 -0
- package/functions/collectibles.ts +659 -0
- package/functions/color.d.ts +1 -1
- package/functions/color.lua +0 -7
- package/functions/color.ts +128 -0
- package/functions/debug.lua +2 -2
- package/functions/debug.ts +68 -0
- package/functions/deepCopy.lua +46 -51
- package/functions/deepCopy.ts +535 -0
- package/functions/deepCopyTests.ts +386 -0
- package/functions/direction.ts +49 -0
- package/functions/doors.lua +1 -2
- package/functions/doors.ts +347 -0
- package/functions/easing.ts +182 -0
- package/functions/eden.ts +47 -0
- package/functions/effects.ts +20 -0
- package/functions/entity.ts +439 -0
- package/functions/entitySpecific.ts +889 -0
- package/functions/entityTypes.ts +6 -0
- package/functions/enums.ts +146 -0
- package/functions/familiars.ts +106 -0
- package/functions/flag.ts +165 -0
- package/functions/flying.ts +117 -0
- package/functions/globals.d.ts +3 -3
- package/functions/globals.lua +8 -2
- package/functions/globals.ts +242 -0
- package/functions/gridEntity.ts +511 -0
- package/functions/gridEntitySpecific.ts +112 -0
- package/functions/input.ts +139 -0
- package/functions/isaacAPIClass.ts +67 -0
- package/functions/jsonHelpers.ts +45 -0
- package/functions/jsonRoom.ts +100 -0
- package/functions/kColor.d.ts +1 -1
- package/functions/kColor.lua +0 -7
- package/functions/kColor.ts +129 -0
- package/functions/language.ts +13 -0
- package/functions/level.ts +31 -0
- package/functions/log.ts +720 -0
- package/functions/map.ts +56 -0
- package/functions/math.ts +149 -0
- package/functions/mergeTests.ts +288 -0
- package/functions/npc.ts +148 -0
- package/functions/pickupVariants.ts +60 -0
- package/functions/pickups.ts +499 -0
- package/functions/pills.lua +1 -1
- package/functions/pills.ts +205 -0
- package/functions/player.lua +9 -20
- package/functions/player.ts +1056 -0
- package/functions/playerDataStructures.ts +150 -0
- package/functions/playerHealth.lua +28 -39
- package/functions/playerHealth.ts +382 -0
- package/functions/playerIndex.ts +195 -0
- package/functions/pocketItems.ts +149 -0
- package/functions/positionVelocity.ts +188 -0
- package/functions/random.ts +77 -0
- package/functions/revive.ts +201 -0
- package/functions/rng.d.ts +1 -1
- package/functions/rng.lua +0 -7
- package/functions/rng.ts +172 -0
- package/functions/roomData.ts +199 -0
- package/functions/roomGrid.ts +109 -0
- package/functions/roomShape.ts +80 -0
- package/functions/rooms.lua +1 -3
- package/functions/rooms.ts +648 -0
- package/functions/run.ts +36 -0
- package/functions/saveFile.ts +128 -0
- package/functions/seeds.ts +19 -0
- package/functions/serialization.lua +0 -3
- package/functions/serialization.ts +91 -0
- package/functions/set.ts +95 -0
- package/functions/sound.ts +9 -0
- package/functions/spawnCollectible.ts +104 -0
- package/functions/sprite.ts +107 -0
- package/functions/stage.ts +125 -0
- package/functions/string.ts +47 -0
- package/functions/table.ts +189 -0
- package/functions/tears.ts +32 -0
- package/functions/transformations.lua +1 -3
- package/functions/transformations.ts +131 -0
- package/functions/trinketCacheFlag.ts +60 -0
- package/functions/trinketGive.ts +157 -0
- package/functions/trinkets.ts +215 -0
- package/functions/tstlClass.ts +157 -0
- package/functions/types.ts +36 -0
- package/functions/ui.ts +138 -0
- package/functions/utils.d.ts +0 -37
- package/functions/utils.lua +0 -35
- package/functions/utils.ts +189 -0
- package/functions/vector.d.ts +1 -1
- package/functions/vector.lua +0 -7
- package/functions/vector.ts +126 -0
- package/index.ts +172 -0
- package/initCustomCallbacks.ts +132 -0
- package/initFeatures.ts +39 -0
- package/interfaces/AddCallbackParameterCustom.ts +188 -0
- package/interfaces/ChargeBarSprites.ts +12 -0
- package/interfaces/JSONDoor.d.ts +4 -4
- package/interfaces/JSONDoor.ts +13 -0
- package/interfaces/JSONEntity.d.ts +5 -5
- package/interfaces/JSONEntity.ts +16 -0
- package/interfaces/JSONRoom.d.ts +9 -9
- package/interfaces/JSONRoom.ts +36 -0
- package/interfaces/JSONRooms.ts +12 -0
- package/interfaces/JSONSpawn.d.ts +3 -3
- package/interfaces/JSONSpawn.ts +14 -0
- package/interfaces/PlayerHealth.ts +16 -0
- package/interfaces/PocketItemDescription.ts +9 -0
- package/interfaces/SaveData.ts +29 -0
- package/interfaces/TrinketSituation.ts +9 -0
- package/interfaces/private/TSTLClassMetatable.ts +8 -0
- package/maps/PHDPillConversions.ts +21 -0
- package/maps/cardMap.ts +209 -0
- package/maps/characterMap.ts +87 -0
- package/maps/collectibleDescriptionMap.ts +732 -0
- package/maps/collectibleNameMap.ts +731 -0
- package/maps/defaultPlayerStatMap.ts +17 -0
- package/maps/falsePHDPillConversions.ts +35 -0
- package/maps/gridEntityTypeToBrokenStateMap.ts +50 -0
- package/maps/gridEntityXMLMap.ts +176 -0
- package/maps/pillEffectMap.ts +88 -0
- package/maps/roomShapeToTopLeftWallGridIndexMap.ts +18 -0
- package/maps/roomTypeMap.ts +40 -0
- package/maps/trinketDescriptionMap.ts +200 -0
- package/maps/trinketNameMap.ts +198 -0
- package/objects/LRoomShapeToRectangles.ts +44 -0
- package/objects/callbackRegisterFunctions.ts +187 -0
- package/objects/cardDescriptions.ts +105 -0
- package/objects/cardNames.ts +105 -0
- package/objects/cardTypes.ts +104 -0
- package/objects/challengeNames.ts +52 -0
- package/objects/characterNames.ts +48 -0
- package/objects/coinSubTypeToValue.ts +14 -0
- package/objects/colors.ts +16 -0
- package/objects/directionNames.ts +11 -0
- package/objects/directionToDegrees.ts +11 -0
- package/objects/directionToVector.ts +12 -0
- package/objects/doorSlotFlagToDoorSlot.ts +16 -0
- package/objects/doorSlotToDirection.ts +14 -0
- package/objects/isaacAPIClassTypeToBrand.ts +11 -0
- package/objects/isaacAPIClassTypeToCopyFunction.ts +18 -0
- package/objects/languageNames.ts +13 -0
- package/objects/oppositeDoorSlots.ts +15 -0
- package/objects/pillEffectClasses.ts +63 -0
- package/objects/pillEffectNames.ts +57 -0
- package/objects/pillEffectTypes.ts +62 -0
- package/objects/roomShapeBounds.ts +71 -0
- package/objects/roomShapeLayoutSizes.ts +45 -0
- package/objects/roomShapeToBottomRightPosition.ts +25 -0
- package/objects/roomShapeToDoorSlots.ts +83 -0
- package/objects/roomShapeToDoorSlotsToGridIndexDelta.ts +127 -0
- package/objects/roomShapeToGridWidth.ts +21 -0
- package/objects/roomShapeToTopLeftPosition.ts +26 -0
- package/objects/roomShapeVolumes.ts +38 -0
- package/objects/roomTypeNames.ts +36 -0
- package/objects/serializedIsaacAPIClassTypeToIdentityFunction.ts +14 -0
- package/objects/stageTypeToLetter.ts +15 -0
- package/objects/transformationNames.d.ts +0 -1
- package/objects/transformationNames.lua +0 -1
- package/objects/transformationNames.ts +18 -0
- package/package.json +2 -2
- package/patchErrorFunctions.ts +92 -0
- package/sets/LRoomShapesSet.ts +8 -0
- package/sets/bossSets.ts +470 -0
- package/sets/charactersThatStartWithAnActiveItemSet.ts +16 -0
- package/sets/charactersWithBlackHeartFromEternalHeartSet.ts +7 -0
- package/sets/charactersWithFreeDevilDealsSet.ts +4 -0
- package/sets/charactersWithNoRedHeartsSet.ts +17 -0
- package/sets/charactersWithNoSoulHeartsSet.ts +14 -0
- package/sets/chestPickupVariantsSet.ts +16 -0
- package/sets/familiarsThatShootPlayerTearsSet.ts +13 -0
- package/sets/lostStyleCharactersSet.ts +13 -0
- package/sets/mineShaftRoomSubTypesSet.ts +10 -0
- package/sets/redHeartSubTypesSet.ts +7 -0
- package/sets/sinEntityTypesSet.ts +11 -0
- package/sets/singleUseActiveCollectibleTypesSet.ts +13 -0
- package/sets/storyBossesSet.ts +17 -0
- package/types/AnyEntity.ts +12 -0
- package/types/AwaitingTextInput.d.ts +2 -0
- package/types/CollectibleIndex.d.ts +1 -1
- package/types/CollectibleIndex.ts +16 -0
- package/types/PickingUpItem.d.ts +3 -3
- package/types/PickingUpItem.ts +89 -0
- package/types/PlayerIndex.d.ts +1 -1
- package/types/PlayerIndex.ts +13 -0
- package/types/private/IsaacAPIClass.d.ts +1 -1
- package/types/private/IsaacAPIClass.ts +3 -0
- package/types/private/SerializedIsaacAPIClass.d.ts +1 -1
- package/types/private/SerializedIsaacAPIClass.ts +3 -0
- package/types/private/TSTLClass.d.ts +1 -1
- package/types/private/TSTLClass.ts +3 -0
- package/upgradeMod.d.ts +2 -2
- package/upgradeMod.lua +2 -2
- package/upgradeMod.ts +55 -0
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export type PostPressurePlateRenderRegisterParameters = [
|
|
2
|
+
callback: (pressurePlate: GridEntityPressurePlate) => void,
|
|
3
|
+
gridEntityVariant?: int,
|
|
4
|
+
];
|
|
5
|
+
|
|
6
|
+
const subscriptions: PostPressurePlateRenderRegisterParameters[] = [];
|
|
7
|
+
|
|
8
|
+
/** @internal */
|
|
9
|
+
export function postPressurePlateRenderHasSubscriptions(): boolean {
|
|
10
|
+
return subscriptions.length > 0;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/** @internal */
|
|
14
|
+
export function postPressurePlateRenderRegister(
|
|
15
|
+
...args: PostPressurePlateRenderRegisterParameters
|
|
16
|
+
): void {
|
|
17
|
+
subscriptions.push(args);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/** @internal */
|
|
21
|
+
export function postPressurePlateRenderFire(
|
|
22
|
+
pressurePlate: GridEntityPressurePlate,
|
|
23
|
+
): void {
|
|
24
|
+
const gridEntityVariant = pressurePlate.GetVariant();
|
|
25
|
+
|
|
26
|
+
for (const [callback, callbackGridEntityVariant] of subscriptions) {
|
|
27
|
+
// Handle the optional 2nd callback argument.
|
|
28
|
+
if (
|
|
29
|
+
callbackGridEntityVariant !== undefined &&
|
|
30
|
+
callbackGridEntityVariant !== gridEntityVariant
|
|
31
|
+
) {
|
|
32
|
+
continue;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
callback(pressurePlate);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export type PostPressurePlateUpdateRegisterParameters = [
|
|
2
|
+
callback: (pressurePlate: GridEntityPressurePlate) => void,
|
|
3
|
+
gridEntityVariant?: int,
|
|
4
|
+
];
|
|
5
|
+
|
|
6
|
+
const subscriptions: PostPressurePlateUpdateRegisterParameters[] = [];
|
|
7
|
+
|
|
8
|
+
/** @internal */
|
|
9
|
+
export function postPressurePlateUpdateHasSubscriptions(): boolean {
|
|
10
|
+
return subscriptions.length > 0;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/** @internal */
|
|
14
|
+
export function postPressurePlateUpdateRegister(
|
|
15
|
+
...args: PostPressurePlateUpdateRegisterParameters
|
|
16
|
+
): void {
|
|
17
|
+
subscriptions.push(args);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/** @internal */
|
|
21
|
+
export function postPressurePlateUpdateFire(
|
|
22
|
+
pressurePlate: GridEntityPressurePlate,
|
|
23
|
+
): void {
|
|
24
|
+
const gridEntityVariant = pressurePlate.GetVariant();
|
|
25
|
+
|
|
26
|
+
for (const [callback, callbackGridEntityVariant] of subscriptions) {
|
|
27
|
+
// Handle the optional 2nd callback argument.
|
|
28
|
+
if (
|
|
29
|
+
callbackGridEntityVariant !== undefined &&
|
|
30
|
+
callbackGridEntityVariant !== gridEntityVariant
|
|
31
|
+
) {
|
|
32
|
+
continue;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
callback(pressurePlate);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { ProjectileVariant } from "isaac-typescript-definitions";
|
|
2
|
+
|
|
3
|
+
export type PostProjectileInitLateRegisterParameters = [
|
|
4
|
+
callback: (projectile: EntityProjectile) => void,
|
|
5
|
+
projectileVariant?: ProjectileVariant,
|
|
6
|
+
];
|
|
7
|
+
|
|
8
|
+
const subscriptions: PostProjectileInitLateRegisterParameters[] = [];
|
|
9
|
+
|
|
10
|
+
/** @internal */
|
|
11
|
+
export function postProjectileInitLateHasSubscriptions(): boolean {
|
|
12
|
+
return subscriptions.length > 0;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/** @internal */
|
|
16
|
+
export function postProjectileInitLateRegister(
|
|
17
|
+
...args: PostProjectileInitLateRegisterParameters
|
|
18
|
+
): void {
|
|
19
|
+
subscriptions.push(args);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/** @internal */
|
|
23
|
+
export function postProjectileInitLateFire(projectile: EntityProjectile): void {
|
|
24
|
+
for (const [callback, projectileVariant] of subscriptions) {
|
|
25
|
+
// Handle the optional 2nd callback argument.
|
|
26
|
+
if (
|
|
27
|
+
projectileVariant !== undefined &&
|
|
28
|
+
projectileVariant !== projectile.Variant
|
|
29
|
+
) {
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
callback(projectile);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { PickupVariant } from "isaac-typescript-definitions";
|
|
2
|
+
|
|
3
|
+
export type PostPurchaseRegisterParameters = [
|
|
4
|
+
callback: (player: EntityPlayer, pickup: EntityPickup) => void,
|
|
5
|
+
pickupVariant?: PickupVariant,
|
|
6
|
+
pickupSubType?: int,
|
|
7
|
+
];
|
|
8
|
+
|
|
9
|
+
const subscriptions: PostPurchaseRegisterParameters[] = [];
|
|
10
|
+
|
|
11
|
+
/** @internal */
|
|
12
|
+
export function postPurchaseHasSubscriptions(): boolean {
|
|
13
|
+
return subscriptions.length > 0;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/** @internal */
|
|
17
|
+
export function postPurchaseRegister(
|
|
18
|
+
...args: PostPurchaseRegisterParameters
|
|
19
|
+
): void {
|
|
20
|
+
subscriptions.push(args);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/** @internal */
|
|
24
|
+
export function postPurchaseFire(
|
|
25
|
+
player: EntityPlayer,
|
|
26
|
+
pickup: EntityPickup,
|
|
27
|
+
): void {
|
|
28
|
+
for (const [callback] of subscriptions) {
|
|
29
|
+
callback(player, pickup);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
export type PostRockRenderRegisterParameters = [
|
|
2
|
+
callback: (rock: GridEntityRock) => void,
|
|
3
|
+
gridEntityVariant?: int,
|
|
4
|
+
];
|
|
5
|
+
|
|
6
|
+
const subscriptions: PostRockRenderRegisterParameters[] = [];
|
|
7
|
+
|
|
8
|
+
/** @internal */
|
|
9
|
+
export function postRockRenderHasSubscriptions(): boolean {
|
|
10
|
+
return subscriptions.length > 0;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/** @internal */
|
|
14
|
+
export function postRockRenderRegister(
|
|
15
|
+
...args: PostRockRenderRegisterParameters
|
|
16
|
+
): void {
|
|
17
|
+
subscriptions.push(args);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/** @internal */
|
|
21
|
+
export function postRockRenderFire(rock: GridEntityRock): void {
|
|
22
|
+
const gridEntityVariant = rock.GetVariant();
|
|
23
|
+
|
|
24
|
+
for (const [callback, callbackGridEntityVariant] of subscriptions) {
|
|
25
|
+
// Handle the optional 2nd callback argument.
|
|
26
|
+
if (
|
|
27
|
+
callbackGridEntityVariant !== undefined &&
|
|
28
|
+
callbackGridEntityVariant !== gridEntityVariant
|
|
29
|
+
) {
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
callback(rock);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
export type PostRockUpdateRegisterParameters = [
|
|
2
|
+
callback: (rock: GridEntityRock) => void,
|
|
3
|
+
gridEntityVariant?: int,
|
|
4
|
+
];
|
|
5
|
+
|
|
6
|
+
const subscriptions: PostRockUpdateRegisterParameters[] = [];
|
|
7
|
+
|
|
8
|
+
/** @internal */
|
|
9
|
+
export function postRockUpdateHasSubscriptions(): boolean {
|
|
10
|
+
return subscriptions.length > 0;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/** @internal */
|
|
14
|
+
export function postRockUpdateRegister(
|
|
15
|
+
...args: PostRockUpdateRegisterParameters
|
|
16
|
+
): void {
|
|
17
|
+
subscriptions.push(args);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/** @internal */
|
|
21
|
+
export function postRockUpdateFire(rock: GridEntityRock): void {
|
|
22
|
+
const gridEntityVariant = rock.GetVariant();
|
|
23
|
+
|
|
24
|
+
for (const [callback, callbackGridEntityVariant] of subscriptions) {
|
|
25
|
+
// Handle the optional 2nd callback argument.
|
|
26
|
+
if (
|
|
27
|
+
callbackGridEntityVariant !== undefined &&
|
|
28
|
+
callbackGridEntityVariant !== gridEntityVariant
|
|
29
|
+
) {
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
callback(rock);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export type PostRoomClearChangedRegisterParameters = [
|
|
2
|
+
callback: (roomClear: boolean) => void,
|
|
3
|
+
roomClear?: boolean,
|
|
4
|
+
];
|
|
5
|
+
|
|
6
|
+
const subscriptions: PostRoomClearChangedRegisterParameters[] = [];
|
|
7
|
+
|
|
8
|
+
/** @internal */
|
|
9
|
+
export function postRoomClearChangedHasSubscriptions(): boolean {
|
|
10
|
+
return subscriptions.length > 0;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/** @internal */
|
|
14
|
+
export function postRoomClearChangedRegister(
|
|
15
|
+
...args: PostRoomClearChangedRegisterParameters
|
|
16
|
+
): void {
|
|
17
|
+
subscriptions.push(args);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/** @internal */
|
|
21
|
+
export function postRoomClearChangedFire(roomClear: boolean): void {
|
|
22
|
+
for (const [callback, callbackRoomClear] of subscriptions) {
|
|
23
|
+
// Handle the optional 2nd callback argument.
|
|
24
|
+
if (callbackRoomClear !== undefined && callbackRoomClear !== roomClear) {
|
|
25
|
+
continue;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
callback(roomClear);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { PlayerType, PlayerVariant } from "isaac-typescript-definitions";
|
|
2
|
+
|
|
3
|
+
export type PostSacrificeRegisterParameters = [
|
|
4
|
+
callback: (player: EntityPlayer, numSacrifices: int) => void,
|
|
5
|
+
playerVariant?: PlayerVariant,
|
|
6
|
+
character?: PlayerType,
|
|
7
|
+
];
|
|
8
|
+
|
|
9
|
+
const subscriptions: PostSacrificeRegisterParameters[] = [];
|
|
10
|
+
|
|
11
|
+
/** @internal */
|
|
12
|
+
export function postSacrificeHasSubscriptions(): boolean {
|
|
13
|
+
return subscriptions.length > 0;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/** @internal */
|
|
17
|
+
export function postSacrificeRegister(
|
|
18
|
+
...args: PostSacrificeRegisterParameters
|
|
19
|
+
): void {
|
|
20
|
+
subscriptions.push(args);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/** @internal */
|
|
24
|
+
export function postSacrificeFire(
|
|
25
|
+
player: EntityPlayer,
|
|
26
|
+
numSacrifices: int,
|
|
27
|
+
): void {
|
|
28
|
+
const character = player.GetPlayerType();
|
|
29
|
+
|
|
30
|
+
for (const [callback, playerVariant, callbackCharacter] of subscriptions) {
|
|
31
|
+
// Handle the optional 2nd callback argument.
|
|
32
|
+
if (playerVariant !== undefined && playerVariant !== player.Variant) {
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
// Handle the optional 3rd callback argument.
|
|
37
|
+
if (callbackCharacter !== undefined && callbackCharacter !== character) {
|
|
38
|
+
continue;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
callback(player, numSacrifices);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { SlotVariant } from "isaac-typescript-definitions";
|
|
2
|
+
|
|
3
|
+
export type PostSlotAnimationChangedRegisterParameters = [
|
|
4
|
+
callback: (
|
|
5
|
+
slot: EntitySlot,
|
|
6
|
+
previousAnimation: string,
|
|
7
|
+
currentAnimation: string,
|
|
8
|
+
) => void,
|
|
9
|
+
slotVariant?: SlotVariant,
|
|
10
|
+
];
|
|
11
|
+
|
|
12
|
+
const subscriptions: PostSlotAnimationChangedRegisterParameters[] = [];
|
|
13
|
+
|
|
14
|
+
/** @internal */
|
|
15
|
+
export function postSlotAnimationChangedHasSubscriptions(): boolean {
|
|
16
|
+
return subscriptions.length > 0;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/** @internal */
|
|
20
|
+
export function postSlotAnimationChangedRegister(
|
|
21
|
+
...args: PostSlotAnimationChangedRegisterParameters
|
|
22
|
+
): void {
|
|
23
|
+
subscriptions.push(args);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/** @internal */
|
|
27
|
+
export function postSlotAnimationChangedFire(
|
|
28
|
+
slot: EntitySlot,
|
|
29
|
+
previousAnimation: string,
|
|
30
|
+
currentAnimation: string,
|
|
31
|
+
): void {
|
|
32
|
+
for (const [callback, slotVariant] of subscriptions) {
|
|
33
|
+
// Handle the optional 2nd callback argument.
|
|
34
|
+
if (slotVariant !== undefined && slotVariant !== slot.Variant) {
|
|
35
|
+
continue;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
callback(slot, previousAnimation, currentAnimation);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { SlotVariant } from "isaac-typescript-definitions";
|
|
2
|
+
import { SlotDestructionType } from "../../enums/SlotDestructionType";
|
|
3
|
+
|
|
4
|
+
export type PostSlotDestroyedRegisterParameters = [
|
|
5
|
+
callback: (
|
|
6
|
+
slot: EntitySlot,
|
|
7
|
+
slotDestructionType: SlotDestructionType,
|
|
8
|
+
) => void,
|
|
9
|
+
slotVariant?: SlotVariant,
|
|
10
|
+
slotDestructionType?: SlotDestructionType,
|
|
11
|
+
];
|
|
12
|
+
|
|
13
|
+
const subscriptions: PostSlotDestroyedRegisterParameters[] = [];
|
|
14
|
+
|
|
15
|
+
/** @internal */
|
|
16
|
+
export function postSlotDestroyedHasSubscriptions(): boolean {
|
|
17
|
+
return subscriptions.length > 0;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/** @internal */
|
|
21
|
+
export function postSlotDestroyedRegister(
|
|
22
|
+
...args: PostSlotDestroyedRegisterParameters
|
|
23
|
+
): void {
|
|
24
|
+
subscriptions.push(args);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/** @internal */
|
|
28
|
+
export function postSlotDestroyedFire(
|
|
29
|
+
slot: EntitySlot,
|
|
30
|
+
slotDestructionType: SlotDestructionType,
|
|
31
|
+
): void {
|
|
32
|
+
for (const [
|
|
33
|
+
callback,
|
|
34
|
+
callbackSlotVariant,
|
|
35
|
+
callbackSlotDestructionType,
|
|
36
|
+
] of subscriptions) {
|
|
37
|
+
// Handle the optional 2nd callback argument.
|
|
38
|
+
if (
|
|
39
|
+
callbackSlotVariant !== undefined &&
|
|
40
|
+
callbackSlotVariant !== slot.Variant
|
|
41
|
+
) {
|
|
42
|
+
continue;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// Handle the optional 3rd callback argument.
|
|
46
|
+
if (
|
|
47
|
+
callbackSlotDestructionType !== undefined &&
|
|
48
|
+
callbackSlotDestructionType !== slotDestructionType
|
|
49
|
+
) {
|
|
50
|
+
continue;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
callback(slot, slotDestructionType);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { SlotVariant } from "isaac-typescript-definitions";
|
|
2
|
+
|
|
3
|
+
export type PostSlotInitRegisterParameters = [
|
|
4
|
+
callback: (slot: EntitySlot) => void,
|
|
5
|
+
slotVariant?: SlotVariant,
|
|
6
|
+
];
|
|
7
|
+
|
|
8
|
+
const subscriptions: PostSlotInitRegisterParameters[] = [];
|
|
9
|
+
|
|
10
|
+
/** @internal */
|
|
11
|
+
export function postSlotInitHasSubscriptions(): boolean {
|
|
12
|
+
return subscriptions.length > 0;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/** @internal */
|
|
16
|
+
export function postSlotInitRegister(
|
|
17
|
+
...args: PostSlotInitRegisterParameters
|
|
18
|
+
): void {
|
|
19
|
+
subscriptions.push(args);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/** @internal */
|
|
23
|
+
export function postSlotInitFire(slot: EntitySlot): void {
|
|
24
|
+
for (const [callback, slotVariant] of subscriptions) {
|
|
25
|
+
// Handle the optional 2nd callback argument.
|
|
26
|
+
if (slotVariant !== undefined && slotVariant !== slot.Variant) {
|
|
27
|
+
continue;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
callback(slot);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { SlotVariant } from "isaac-typescript-definitions";
|
|
2
|
+
|
|
3
|
+
export type PostSlotRenderRegisterParameters = [
|
|
4
|
+
callback: (slot: EntitySlot) => void,
|
|
5
|
+
slotVariant?: SlotVariant,
|
|
6
|
+
];
|
|
7
|
+
|
|
8
|
+
const subscriptions: PostSlotRenderRegisterParameters[] = [];
|
|
9
|
+
|
|
10
|
+
/** @internal */
|
|
11
|
+
export function postSlotRenderHasSubscriptions(): boolean {
|
|
12
|
+
return subscriptions.length > 0;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/** @internal */
|
|
16
|
+
export function postSlotRenderRegister(
|
|
17
|
+
...args: PostSlotRenderRegisterParameters
|
|
18
|
+
): void {
|
|
19
|
+
subscriptions.push(args);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/** @internal */
|
|
23
|
+
export function postSlotRenderFire(slot: EntitySlot): void {
|
|
24
|
+
for (const [callback, slotVariant] of subscriptions) {
|
|
25
|
+
// Handle the optional 2nd callback argument.
|
|
26
|
+
if (slotVariant !== undefined && slotVariant !== slot.Variant) {
|
|
27
|
+
continue;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
callback(slot);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { SlotVariant } from "isaac-typescript-definitions";
|
|
2
|
+
|
|
3
|
+
export type PostSlotUpdateRegisterParameters = [
|
|
4
|
+
callback: (slot: EntitySlot) => void,
|
|
5
|
+
slotVariant?: SlotVariant,
|
|
6
|
+
];
|
|
7
|
+
|
|
8
|
+
const subscriptions: PostSlotUpdateRegisterParameters[] = [];
|
|
9
|
+
|
|
10
|
+
/** @internal */
|
|
11
|
+
export function postSlotUpdateHasSubscriptions(): boolean {
|
|
12
|
+
return subscriptions.length > 0;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/** @internal */
|
|
16
|
+
export function postSlotUpdateRegister(
|
|
17
|
+
...args: PostSlotUpdateRegisterParameters
|
|
18
|
+
): void {
|
|
19
|
+
subscriptions.push(args);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/** @internal */
|
|
23
|
+
export function postSlotUpdateFire(slot: EntitySlot): void {
|
|
24
|
+
for (const [callback, slotVariant] of subscriptions) {
|
|
25
|
+
// Handle the optional 2nd callback argument.
|
|
26
|
+
if (slotVariant !== undefined && slotVariant !== slot.Variant) {
|
|
27
|
+
continue;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
callback(slot);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
export type PostSpikesRenderRegisterParameters = [
|
|
2
|
+
callback: (spikes: GridEntitySpikes) => void,
|
|
3
|
+
gridEntityVariant?: int,
|
|
4
|
+
];
|
|
5
|
+
|
|
6
|
+
const subscriptions: PostSpikesRenderRegisterParameters[] = [];
|
|
7
|
+
|
|
8
|
+
/** @internal */
|
|
9
|
+
export function postSpikesRenderHasSubscriptions(): boolean {
|
|
10
|
+
return subscriptions.length > 0;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/** @internal */
|
|
14
|
+
export function postSpikesRenderRegister(
|
|
15
|
+
...args: PostSpikesRenderRegisterParameters
|
|
16
|
+
): void {
|
|
17
|
+
subscriptions.push(args);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/** @internal */
|
|
21
|
+
export function postSpikesRenderFire(spikes: GridEntitySpikes): void {
|
|
22
|
+
const gridEntityVariant = spikes.GetVariant();
|
|
23
|
+
|
|
24
|
+
for (const [callback, callbackGridEntityVariant] of subscriptions) {
|
|
25
|
+
// Handle the optional 2nd callback argument.
|
|
26
|
+
if (
|
|
27
|
+
callbackGridEntityVariant !== undefined &&
|
|
28
|
+
callbackGridEntityVariant !== gridEntityVariant
|
|
29
|
+
) {
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
callback(spikes);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
export type PostSpikesUpdateRegisterParameters = [
|
|
2
|
+
callback: (spikes: GridEntitySpikes) => void,
|
|
3
|
+
gridEntityVariant?: int,
|
|
4
|
+
];
|
|
5
|
+
|
|
6
|
+
const subscriptions: PostSpikesUpdateRegisterParameters[] = [];
|
|
7
|
+
|
|
8
|
+
/** @internal */
|
|
9
|
+
export function postSpikesUpdateHasSubscriptions(): boolean {
|
|
10
|
+
return subscriptions.length > 0;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/** @internal */
|
|
14
|
+
export function postSpikesUpdateRegister(
|
|
15
|
+
...args: PostSpikesUpdateRegisterParameters
|
|
16
|
+
): void {
|
|
17
|
+
subscriptions.push(args);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/** @internal */
|
|
21
|
+
export function postSpikesUpdateFire(spikes: GridEntitySpikes): void {
|
|
22
|
+
const gridEntityVariant = spikes.GetVariant();
|
|
23
|
+
|
|
24
|
+
for (const [callback, callbackGridEntityVariant] of subscriptions) {
|
|
25
|
+
// Handle the optional 2nd callback argument.
|
|
26
|
+
if (
|
|
27
|
+
callbackGridEntityVariant !== undefined &&
|
|
28
|
+
callbackGridEntityVariant !== gridEntityVariant
|
|
29
|
+
) {
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
callback(spikes);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
export type PostTNTRenderRegisterParameters = [
|
|
2
|
+
callback: (tnt: GridEntityTNT) => void,
|
|
3
|
+
gridEntityVariant?: int,
|
|
4
|
+
];
|
|
5
|
+
|
|
6
|
+
const subscriptions: PostTNTRenderRegisterParameters[] = [];
|
|
7
|
+
|
|
8
|
+
/** @internal */
|
|
9
|
+
export function postTNTRenderHasSubscriptions(): boolean {
|
|
10
|
+
return subscriptions.length > 0;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/** @internal */
|
|
14
|
+
export function postTNTRenderRegister(
|
|
15
|
+
...args: PostTNTRenderRegisterParameters
|
|
16
|
+
): void {
|
|
17
|
+
subscriptions.push(args);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/** @internal */
|
|
21
|
+
export function postTNTRenderFire(tnt: GridEntityTNT): void {
|
|
22
|
+
const gridEntityVariant = tnt.GetVariant();
|
|
23
|
+
|
|
24
|
+
for (const [callback, callbackGridEntityVariant] of subscriptions) {
|
|
25
|
+
// Handle the optional 2nd callback argument.
|
|
26
|
+
if (
|
|
27
|
+
callbackGridEntityVariant !== undefined &&
|
|
28
|
+
callbackGridEntityVariant !== gridEntityVariant
|
|
29
|
+
) {
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
callback(tnt);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
export type PostTNTUpdateRegisterParameters = [
|
|
2
|
+
callback: (tnt: GridEntityTNT) => void,
|
|
3
|
+
gridEntityVariant?: int,
|
|
4
|
+
];
|
|
5
|
+
|
|
6
|
+
const subscriptions: PostTNTUpdateRegisterParameters[] = [];
|
|
7
|
+
|
|
8
|
+
/** @internal */
|
|
9
|
+
export function postTNTUpdateHasSubscriptions(): boolean {
|
|
10
|
+
return subscriptions.length > 0;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/** @internal */
|
|
14
|
+
export function postTNTUpdateRegister(
|
|
15
|
+
...args: PostTNTUpdateRegisterParameters
|
|
16
|
+
): void {
|
|
17
|
+
subscriptions.push(args);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/** @internal */
|
|
21
|
+
export function postTNTUpdateFire(tnt: GridEntityTNT): void {
|
|
22
|
+
const gridEntityVariant = tnt.GetVariant();
|
|
23
|
+
|
|
24
|
+
for (const [callback, callbackGridEntityVariant] of subscriptions) {
|
|
25
|
+
// Handle the optional 2nd callback argument.
|
|
26
|
+
if (
|
|
27
|
+
callbackGridEntityVariant !== undefined &&
|
|
28
|
+
callbackGridEntityVariant !== gridEntityVariant
|
|
29
|
+
) {
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
callback(tnt);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { TearVariant } from "isaac-typescript-definitions";
|
|
2
|
+
|
|
3
|
+
export type PostTearInitLateRegisterParameters = [
|
|
4
|
+
callback: (tear: EntityTear) => void,
|
|
5
|
+
tearVariant?: TearVariant,
|
|
6
|
+
];
|
|
7
|
+
|
|
8
|
+
const subscriptions: PostTearInitLateRegisterParameters[] = [];
|
|
9
|
+
|
|
10
|
+
/** @internal */
|
|
11
|
+
export function postTearInitLateHasSubscriptions(): boolean {
|
|
12
|
+
return subscriptions.length > 0;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/** @internal */
|
|
16
|
+
export function postTearInitLateRegister(
|
|
17
|
+
...args: PostTearInitLateRegisterParameters
|
|
18
|
+
): void {
|
|
19
|
+
subscriptions.push(args);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/** @internal */
|
|
23
|
+
export function postTearInitLateFire(tear: EntityTear): void {
|
|
24
|
+
for (const [callback, tearVariant] of subscriptions) {
|
|
25
|
+
// Handle the optional 2nd callback argument.
|
|
26
|
+
if (tearVariant !== undefined && tearVariant !== tear.Variant) {
|
|
27
|
+
continue;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
callback(tear);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { TearVariant } from "isaac-typescript-definitions";
|
|
2
|
+
|
|
3
|
+
export type PostTearInitVeryLateRegisterParameters = [
|
|
4
|
+
callback: (tear: EntityTear) => void,
|
|
5
|
+
tearVariant?: TearVariant,
|
|
6
|
+
];
|
|
7
|
+
|
|
8
|
+
const subscriptions: PostTearInitVeryLateRegisterParameters[] = [];
|
|
9
|
+
|
|
10
|
+
/** @internal */
|
|
11
|
+
export function postTearInitVeryLateHasSubscriptions(): boolean {
|
|
12
|
+
return subscriptions.length > 0;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/** @internal */
|
|
16
|
+
export function postTearInitVeryLateRegister(
|
|
17
|
+
...args: PostTearInitVeryLateRegisterParameters
|
|
18
|
+
): void {
|
|
19
|
+
subscriptions.push(args);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/** @internal */
|
|
23
|
+
export function postTearInitVeryLateFire(tear: EntityTear): void {
|
|
24
|
+
for (const [callback, tearVariant] of subscriptions) {
|
|
25
|
+
// Handle the optional 2nd callback argument.
|
|
26
|
+
if (tearVariant !== undefined && tearVariant !== tear.Variant) {
|
|
27
|
+
continue;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
callback(tear);
|
|
31
|
+
}
|
|
32
|
+
}
|