isaacscript-common 29.4.0 → 29.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.rollup.d.ts +57 -117
- package/dist/isaacscript-common.lua +1555 -1581
- package/dist/src/callbackClasses.d.ts +1 -1
- package/dist/src/callbackClasses.d.ts.map +1 -1
- package/dist/src/callbackClasses.lua +5 -5
- package/dist/src/callbacks.d.ts +21 -21
- package/dist/src/callbacks.lua +1 -1
- package/dist/src/classes/callbacks/PostGameEndFilter.d.ts +9 -0
- package/dist/src/classes/callbacks/PostGameEndFilter.d.ts.map +1 -0
- package/dist/src/classes/callbacks/PostGameEndFilter.lua +23 -0
- package/dist/src/classes/features/other/PickupIndexCreation.d.ts +4 -0
- package/dist/src/classes/features/other/PickupIndexCreation.d.ts.map +1 -1
- package/dist/src/classes/features/other/PreventCollectibleRotation.d.ts +6 -2
- package/dist/src/classes/features/other/PreventCollectibleRotation.d.ts.map +1 -1
- package/dist/src/classes/features/other/PreventCollectibleRotation.lua +39 -28
- package/dist/src/enums/ModCallbackCustom.d.ts +33 -38
- package/dist/src/enums/ModCallbackCustom.d.ts.map +1 -1
- package/dist/src/enums/ModCallbackCustom.lua +22 -22
- package/dist/src/features.d.ts.map +1 -1
- package/dist/src/features.lua +2 -2
- package/dist/src/functions/collectibles.d.ts +0 -52
- package/dist/src/functions/collectibles.d.ts.map +1 -1
- package/dist/src/functions/collectibles.lua +0 -68
- package/dist/src/functions/playerIndex.d.ts +3 -3
- package/dist/src/functions/playerIndex.lua +3 -3
- package/dist/src/functions/rooms.d.ts +7 -0
- package/dist/src/functions/rooms.d.ts.map +1 -1
- package/dist/src/functions/rooms.lua +5 -0
- package/dist/src/index.d.ts +0 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/interfaces/private/AddCallbackParametersCustom.d.ts +4 -4
- package/dist/src/interfaces/private/AddCallbackParametersCustom.d.ts.map +1 -1
- package/dist/src/shouldFire.d.ts +0 -1
- package/dist/src/shouldFire.d.ts.map +1 -1
- package/dist/src/shouldFire.lua +0 -5
- package/package.json +2 -2
- package/src/callbackClasses.ts +1 -1
- package/src/callbacks.ts +1 -1
- package/src/classes/callbacks/PostGameEndFilter.ts +22 -0
- package/src/classes/features/other/PickupIndexCreation.ts +4 -0
- package/src/classes/features/other/PreventCollectibleRotation.ts +58 -50
- package/src/enums/ModCallbackCustom.ts +14 -19
- package/src/features.ts +7 -5
- package/src/functions/collectibles.ts +0 -79
- package/src/functions/playerIndex.ts +3 -3
- package/src/functions/rooms.ts +7 -0
- package/src/index.ts +0 -1
- package/src/interfaces/private/AddCallbackParametersCustom.ts +5 -5
- package/src/shouldFire.ts +0 -13
- package/dist/src/classes/callbacks/PostCollectibleInitFirst.d.ts +0 -15
- package/dist/src/classes/callbacks/PostCollectibleInitFirst.d.ts.map +0 -1
- package/dist/src/classes/callbacks/PostCollectibleInitFirst.lua +0 -36
- package/dist/src/types/CollectibleIndex.d.ts +0 -18
- package/dist/src/types/CollectibleIndex.d.ts.map +0 -1
- package/dist/src/types/CollectibleIndex.lua +0 -2
- package/src/classes/callbacks/PostCollectibleInitFirst.ts +0 -44
- package/src/types/CollectibleIndex.ts +0 -17
package/dist/index.rollup.d.ts
CHANGED
|
@@ -144,10 +144,6 @@ declare interface AddCallbackParametersCustom {
|
|
|
144
144
|
callback: (collectible: EntityPickupCollectible, oldCollectibleType: CollectibleType) => void,
|
|
145
145
|
collectibleType?: CollectibleType
|
|
146
146
|
];
|
|
147
|
-
[ModCallbackCustom.POST_COLLECTIBLE_INIT_FIRST]: [
|
|
148
|
-
callback: (collectible: EntityPickupCollectible) => void,
|
|
149
|
-
collectibleType?: CollectibleType
|
|
150
|
-
];
|
|
151
147
|
[ModCallbackCustom.POST_CURSED_TELEPORT]: [
|
|
152
148
|
callback: (player: EntityPlayer) => void,
|
|
153
149
|
playerVariant?: PlayerVariant,
|
|
@@ -235,6 +231,10 @@ declare interface AddCallbackParametersCustom {
|
|
|
235
231
|
[ModCallbackCustom.POST_FLIP]: [
|
|
236
232
|
callback: (newLazarus: EntityPlayer, oldLazarus: EntityPlayer) => void
|
|
237
233
|
];
|
|
234
|
+
[ModCallbackCustom.POST_GAME_END_FILTER]: [
|
|
235
|
+
callback: (isGameOver: boolean) => void,
|
|
236
|
+
isGameOver?: boolean
|
|
237
|
+
];
|
|
238
238
|
[ModCallbackCustom.POST_GAME_STARTED_REORDERED]: [
|
|
239
239
|
callback: (isContinued: boolean) => void,
|
|
240
240
|
isContinued: boolean | undefined
|
|
@@ -1509,24 +1509,6 @@ export declare function collectibleHasCacheFlag(collectibleOrCollectibleType: En
|
|
|
1509
1509
|
|
|
1510
1510
|
export declare function collectibleHasTag(collectibleType: CollectibleType, tag: ItemConfigTag): boolean;
|
|
1511
1511
|
|
|
1512
|
-
/**
|
|
1513
|
-
* `CollectibleIndex` is a specific type of string that represents a unique identifier for a
|
|
1514
|
-
* collectible. Mods can signify that data structures handle collectibles by using this type.
|
|
1515
|
-
*
|
|
1516
|
-
* For more information, see the documentation for the `getCollectibleIndex` function.
|
|
1517
|
-
*
|
|
1518
|
-
* For example:
|
|
1519
|
-
*
|
|
1520
|
-
* ```ts
|
|
1521
|
-
* const collectiblesNameMap = new Map<CollectibleIndex, string>();
|
|
1522
|
-
* ```
|
|
1523
|
-
*
|
|
1524
|
-
* This type is branded for extra type safety.
|
|
1525
|
-
*/
|
|
1526
|
-
export declare type CollectibleIndex = string & {
|
|
1527
|
-
readonly __collectibleIndexBrand: symbol;
|
|
1528
|
-
};
|
|
1529
|
-
|
|
1530
1512
|
declare class CollectibleItemPoolType extends Feature {
|
|
1531
1513
|
private pickupIndexCreation;
|
|
1532
1514
|
private postPickupInitCollectible;
|
|
@@ -4677,58 +4659,6 @@ export declare function getCollectibleDevilHeartPrice(collectibleOrCollectibleTy
|
|
|
4677
4659
|
*/
|
|
4678
4660
|
export declare function getCollectibleGfxFilename(collectibleOrCollectibleType: EntityPickup | CollectibleType | -1): string;
|
|
4679
4661
|
|
|
4680
|
-
/**
|
|
4681
|
-
* Mods may have to keep track of data relating to a collectible. Finding an index for these kinds
|
|
4682
|
-
* of data structures is difficult, since collectibles are respawned every time a player re-enters a
|
|
4683
|
-
* room (like all other pickups), so the `PtrHash` will change.
|
|
4684
|
-
*
|
|
4685
|
-
* Use this function to get a unique index for a collectible to use in these data structures.
|
|
4686
|
-
*
|
|
4687
|
-
* If your mod is upgraded, then you should use the `getPickupIndex` function instead, as it is more
|
|
4688
|
-
* general purpose and less prone to error (but relies on stateful tracking of pickups as the run
|
|
4689
|
-
* progresses).
|
|
4690
|
-
*
|
|
4691
|
-
* Collectibles are a special case of pickups: they cannot be pushed around. (They actually can be
|
|
4692
|
-
* pushed, but usually will stay on the same grid index.) Thus, it is possible to generate a
|
|
4693
|
-
* somewhat reliable non-stateful index for collectibles. We use a 4-tuple of the room list index,
|
|
4694
|
-
* the grid index of the collectible in the room, the collectible's `SubType`, and the collectible's
|
|
4695
|
-
* `InitSeed`.
|
|
4696
|
-
*
|
|
4697
|
-
* Collectibles that are shifted by Tainted Isaac's mechanic will have unique collectible indexes
|
|
4698
|
-
* because the `SubType` is different. (The collectible entities share the same `InitSeed` and
|
|
4699
|
-
* `PtrHash`.)
|
|
4700
|
-
*
|
|
4701
|
-
* Collectibles that are rolled (with e.g. a D6) will have unique collectible indexes because the
|
|
4702
|
-
* `SubType` and `InitSeed` are different. If you want to track collectibles independently of any
|
|
4703
|
-
* rerolls, then you can use the `PtrHash` as an index instead. (The `PtrHash` will not persist
|
|
4704
|
-
* between rooms, however.)
|
|
4705
|
-
*
|
|
4706
|
-
* Note that:
|
|
4707
|
-
* - The grid index is a necessary part of the collectible index because Diplopia and Crooked Penny
|
|
4708
|
-
* can cause two or more collectibles with the same `SubType` and `InitSeed` to exist in the same
|
|
4709
|
-
* room.
|
|
4710
|
-
* - This index will fail in the case where the player uses Diplopia or a successful Crooked Penny
|
|
4711
|
-
* seven or more times in the same room, since that will cause two or more collectibles with the
|
|
4712
|
-
* same grid index, `SubType`, and `InitSeed` to exist. (More than seven is required in non-1x1
|
|
4713
|
-
* rooms.)
|
|
4714
|
-
* - The `SubType` is a necessary part of the collectible index because Tainted Isaac will
|
|
4715
|
-
* continuously cause collectibles to morph into new sub-types with the same `InitSeed`.
|
|
4716
|
-
* - Using a collectible's position as part of the index is problematic, since players can push a
|
|
4717
|
-
* pedestal. (Even using the grid index does not solve this problem, since it is possible in
|
|
4718
|
-
* certain cases for collectibles to be spawned at a position that is not aligned with the grid,
|
|
4719
|
-
* and the pedestal pushed to an adjacent tile, but this case should be extremely rare.)
|
|
4720
|
-
* - Mega Chests spawn two collectibles on the exact same position. However, both of them will have
|
|
4721
|
-
* a different `InitSeed`, so this is not a problem for this indexing scheme.
|
|
4722
|
-
* - The indexing scheme used is different for collectibles that are inside of a Treasure Room or
|
|
4723
|
-
* Boss Room, in order to handle the case of the player seeing the same collectible again in a
|
|
4724
|
-
* post-Ascent Treasure Room or Boss Room. A 5-tuple of stage, stage type, grid index, `SubType`,
|
|
4725
|
-
* and `InitSeed` is used in this case. (Using the room list index or the room grid index is not
|
|
4726
|
-
* suitable for this purpose, since both of these values can change in the post-Ascent rooms.)
|
|
4727
|
-
* Even though Treasure Rooms and Boss Rooms are grouped together in this scheme, there probably
|
|
4728
|
-
* will not be collectibles with the same grid index, SubType, and InitSeed.
|
|
4729
|
-
*/
|
|
4730
|
-
export declare function getCollectibleIndex(collectible: EntityPickup): CollectibleIndex;
|
|
4731
|
-
|
|
4732
4662
|
/**
|
|
4733
4663
|
* Helper function to get the initial amount of charges that a collectible has. Returns 0 if the
|
|
4734
4664
|
* provided collectible type was not valid.
|
|
@@ -5851,9 +5781,9 @@ export declare function getPlayerHearts(player: EntityPlayer): int;
|
|
|
5851
5781
|
* (1). This works even if the player does not have any Sad Onions.
|
|
5852
5782
|
*
|
|
5853
5783
|
* Note that by default, this returns the same index for both The Forgotten and The Soul. (Even
|
|
5854
|
-
* though they are technically different characters, they share the same inventory and InitSeed
|
|
5855
|
-
* this is not desired, pass true for the `differentiateForgottenAndSoul` argument, and the RNG
|
|
5856
|
-
* Spoon Bender (3) will be used for The Soul.
|
|
5784
|
+
* though they are technically different characters, they share the same inventory and `InitSeed`.)
|
|
5785
|
+
* If this is not desired, pass true for the `differentiateForgottenAndSoul` argument, and the RNG
|
|
5786
|
+
* of Spoon Bender (3) will be used for The Soul.
|
|
5857
5787
|
*
|
|
5858
5788
|
* Also note that this index does not work in the `POST_PLAYER_INIT` function for players 2 through
|
|
5859
5789
|
* 4. With that said, in almost all cases, you should be lazy-initializing your data structures in
|
|
@@ -7360,6 +7290,13 @@ export declare function inDevilsCrownTreasureRoom(): boolean;
|
|
|
7360
7290
|
|
|
7361
7291
|
export declare function inDimension(dimension: Dimension): boolean;
|
|
7362
7292
|
|
|
7293
|
+
/**
|
|
7294
|
+
* Helper function to detect if the current room is a Double Trouble Boss Room.
|
|
7295
|
+
*
|
|
7296
|
+
* This is performed by checking for the string "Double Trouble" inside of the room name. The
|
|
7297
|
+
* vanilla game uses this convention for every Double Trouble Boss Room. Note that this method might
|
|
7298
|
+
* fail for mods that add extra Double Trouble rooms but do not follow the convention.
|
|
7299
|
+
*/
|
|
7363
7300
|
export declare function inDoubleTrouble(): boolean;
|
|
7364
7301
|
|
|
7365
7302
|
export declare function inGenesisRoom(): boolean;
|
|
@@ -9512,24 +9449,6 @@ export declare enum ModCallbackCustom {
|
|
|
9512
9449
|
* ```
|
|
9513
9450
|
*/
|
|
9514
9451
|
POST_COLLECTIBLE_EMPTY = 12,
|
|
9515
|
-
/**
|
|
9516
|
-
* Fires from the `POST_PICKUP_INIT` callback on the first time that a player has seen the
|
|
9517
|
-
* respective collectible on the run. For more details on how this is calculated, see the
|
|
9518
|
-
* documentation for the `getCollectibleIndex` helper function.
|
|
9519
|
-
*
|
|
9520
|
-
* This callback is useful because collectibles will despawn upon leaving the room and respawn
|
|
9521
|
-
* upon re-entering the room. Additionally, when playing as Tainted Isaac, the `POST_PICKUP_INIT`
|
|
9522
|
-
* callback will fire every time the item shifts.
|
|
9523
|
-
*
|
|
9524
|
-
* When registering the callback with the `ModUpgraded.AddCallbackCustom` method:
|
|
9525
|
-
* - You can provide an optional third argument that will make the callback only fire if it
|
|
9526
|
-
* matches the `CollectibleType` provided.
|
|
9527
|
-
*
|
|
9528
|
-
* ```ts
|
|
9529
|
-
* function postCollectibleInitLate(collectible: EntityPickupCollectible): void {}
|
|
9530
|
-
* ```
|
|
9531
|
-
*/
|
|
9532
|
-
POST_COLLECTIBLE_INIT_FIRST = 13,
|
|
9533
9452
|
/**
|
|
9534
9453
|
* Fires from the `POST_PLAYER_RENDER` callback on the first frame that the "TeleportUp" animation
|
|
9535
9454
|
* begins playing after a player triggers a Cursed Eye teleport or a Cursed Skull teleport. (Both
|
|
@@ -9545,7 +9464,7 @@ export declare enum ModCallbackCustom {
|
|
|
9545
9464
|
* function postCursedTeleport(player: EntityPlayer): void {}
|
|
9546
9465
|
* ```
|
|
9547
9466
|
*/
|
|
9548
|
-
POST_CURSED_TELEPORT =
|
|
9467
|
+
POST_CURSED_TELEPORT = 13,
|
|
9549
9468
|
/**
|
|
9550
9469
|
* Fires from the `POST_PLAYER_UPDATE` callback after the player has finished the death animation,
|
|
9551
9470
|
* has teleported to the previous room, and is ready to play the animation for the modded revival
|
|
@@ -9563,7 +9482,7 @@ export declare enum ModCallbackCustom {
|
|
|
9563
9482
|
* function postCustomRevive(player: EntityPlayer, revivalType: int): void {}
|
|
9564
9483
|
* ```
|
|
9565
9484
|
*/
|
|
9566
|
-
POST_CUSTOM_REVIVE =
|
|
9485
|
+
POST_CUSTOM_REVIVE = 14,
|
|
9567
9486
|
/**
|
|
9568
9487
|
* Fires from the `EFFECT_POST_UPDATE` callback after a player has entered the range of a Dice
|
|
9569
9488
|
* Room floor.
|
|
@@ -9579,7 +9498,7 @@ export declare enum ModCallbackCustom {
|
|
|
9579
9498
|
* ): void {}
|
|
9580
9499
|
* ```
|
|
9581
9500
|
*/
|
|
9582
|
-
POST_DICE_ROOM_ACTIVATED =
|
|
9501
|
+
POST_DICE_ROOM_ACTIVATED = 15,
|
|
9583
9502
|
/**
|
|
9584
9503
|
* Fires from the `POST_RENDER` callback on every frame that a door exists.
|
|
9585
9504
|
*
|
|
@@ -9591,7 +9510,7 @@ export declare enum ModCallbackCustom {
|
|
|
9591
9510
|
* function postDoorRender(door: GridEntityDoor): void {}
|
|
9592
9511
|
* ```
|
|
9593
9512
|
*/
|
|
9594
|
-
POST_DOOR_RENDER =
|
|
9513
|
+
POST_DOOR_RENDER = 16,
|
|
9595
9514
|
/**
|
|
9596
9515
|
* Fires from the `POST_UPDATE` callback on every frame that a door exists.
|
|
9597
9516
|
*
|
|
@@ -9603,7 +9522,7 @@ export declare enum ModCallbackCustom {
|
|
|
9603
9522
|
* function postDoorUpdate(door: GridEntityDoor): void {}
|
|
9604
9523
|
* ```
|
|
9605
9524
|
*/
|
|
9606
|
-
POST_DOOR_UPDATE =
|
|
9525
|
+
POST_DOOR_UPDATE = 17,
|
|
9607
9526
|
/**
|
|
9608
9527
|
* The exact same thing as the vanilla `POST_EFFECT_INIT` callback, except this callback allows
|
|
9609
9528
|
* you to specify extra arguments for additional filtration.
|
|
@@ -9618,7 +9537,7 @@ export declare enum ModCallbackCustom {
|
|
|
9618
9537
|
* function postEffectInitFilter(effect: EntityEffect): void {}
|
|
9619
9538
|
* ```
|
|
9620
9539
|
*/
|
|
9621
|
-
POST_EFFECT_INIT_FILTER =
|
|
9540
|
+
POST_EFFECT_INIT_FILTER = 18,
|
|
9622
9541
|
/**
|
|
9623
9542
|
* Fires on the first `POST_EFFECT_UPDATE` frame for each effect.
|
|
9624
9543
|
*
|
|
@@ -9635,7 +9554,7 @@ export declare enum ModCallbackCustom {
|
|
|
9635
9554
|
* function postEffectInitLate(effect: EntityEffect): void {}
|
|
9636
9555
|
* ```
|
|
9637
9556
|
*/
|
|
9638
|
-
POST_EFFECT_INIT_LATE =
|
|
9557
|
+
POST_EFFECT_INIT_LATE = 19,
|
|
9639
9558
|
/**
|
|
9640
9559
|
* The exact same thing as the vanilla `POST_EFFECT_RENDER` callback, except this callback allows
|
|
9641
9560
|
* you to specify extra arguments for additional filtration.
|
|
@@ -9650,7 +9569,7 @@ export declare enum ModCallbackCustom {
|
|
|
9650
9569
|
* function postEffectRenderFilter(effect: EntityEffect, renderOffset: Vector): void {}
|
|
9651
9570
|
* ```
|
|
9652
9571
|
*/
|
|
9653
|
-
POST_EFFECT_RENDER_FILTER =
|
|
9572
|
+
POST_EFFECT_RENDER_FILTER = 20,
|
|
9654
9573
|
/**
|
|
9655
9574
|
* Fires from the `POST_EFFECT_UPDATE` callback when an effect's state has changed from what it
|
|
9656
9575
|
* was on the previous frame. (In this context, "state" refers to the `EntityEffect.State` field.)
|
|
@@ -9669,7 +9588,7 @@ export declare enum ModCallbackCustom {
|
|
|
9669
9588
|
* ): void {}
|
|
9670
9589
|
* ```
|
|
9671
9590
|
*/
|
|
9672
|
-
POST_EFFECT_STATE_CHANGED =
|
|
9591
|
+
POST_EFFECT_STATE_CHANGED = 21,
|
|
9673
9592
|
/**
|
|
9674
9593
|
* The exact same thing as the vanilla `POST_EFFECT_UPDATE` callback, except this callback allows
|
|
9675
9594
|
* you to specify extra arguments for additional filtration.
|
|
@@ -9684,7 +9603,7 @@ export declare enum ModCallbackCustom {
|
|
|
9684
9603
|
* function postEffectUpdateFilter(effect: EntityEffect): void {}
|
|
9685
9604
|
* ```
|
|
9686
9605
|
*/
|
|
9687
|
-
POST_EFFECT_UPDATE_FILTER =
|
|
9606
|
+
POST_EFFECT_UPDATE_FILTER = 22,
|
|
9688
9607
|
/**
|
|
9689
9608
|
* The exact same thing as the vanilla `POST_ENTITY_KILL` callback, except this callback allows
|
|
9690
9609
|
* you to specify extra arguments for additional filtration.
|
|
@@ -9701,7 +9620,7 @@ export declare enum ModCallbackCustom {
|
|
|
9701
9620
|
* function postEntityKillFilter(entity: Entity): void {}
|
|
9702
9621
|
* ```
|
|
9703
9622
|
*/
|
|
9704
|
-
POST_ENTITY_KILL_FILTER =
|
|
9623
|
+
POST_ENTITY_KILL_FILTER = 23,
|
|
9705
9624
|
/**
|
|
9706
9625
|
* Fires one `POST_UPDATE` frame after the player has used the Esau Jr. item. (The player is not
|
|
9707
9626
|
* updated to the new character until a game frame has passed.)
|
|
@@ -9710,7 +9629,7 @@ export declare enum ModCallbackCustom {
|
|
|
9710
9629
|
* function postEsauJr(player: EntityPlayer): void {}
|
|
9711
9630
|
* ```
|
|
9712
9631
|
*/
|
|
9713
|
-
POST_ESAU_JR =
|
|
9632
|
+
POST_ESAU_JR = 24,
|
|
9714
9633
|
/**
|
|
9715
9634
|
* The exact same thing as the vanilla `POST_FAMILIAR_INIT` callback, except this callback allows
|
|
9716
9635
|
* you to specify extra arguments for additional filtration.
|
|
@@ -9725,7 +9644,7 @@ export declare enum ModCallbackCustom {
|
|
|
9725
9644
|
* function postFamiliarInitFilter(familiar: EntityFamiliar): void {}
|
|
9726
9645
|
* ```
|
|
9727
9646
|
*/
|
|
9728
|
-
POST_FAMILIAR_INIT_FILTER =
|
|
9647
|
+
POST_FAMILIAR_INIT_FILTER = 25,
|
|
9729
9648
|
/**
|
|
9730
9649
|
* Fires on the first `FAMILIAR_UPDATE` frame for each familiar.
|
|
9731
9650
|
*
|
|
@@ -9742,7 +9661,7 @@ export declare enum ModCallbackCustom {
|
|
|
9742
9661
|
* function postFamiliarInitLate(familiar: EntityFamiliar): void {}
|
|
9743
9662
|
* ```
|
|
9744
9663
|
*/
|
|
9745
|
-
POST_FAMILIAR_INIT_LATE =
|
|
9664
|
+
POST_FAMILIAR_INIT_LATE = 26,
|
|
9746
9665
|
/**
|
|
9747
9666
|
* The exact same thing as the vanilla `POST_FAMILIAR_RENDER` callback, except this callback
|
|
9748
9667
|
* allows you to specify extra arguments for additional filtration.
|
|
@@ -9757,7 +9676,7 @@ export declare enum ModCallbackCustom {
|
|
|
9757
9676
|
* function postFamiliarRenderFilter(familiar: EntityFamiliar, renderOffset: Vector): void {}
|
|
9758
9677
|
* ```
|
|
9759
9678
|
*/
|
|
9760
|
-
POST_FAMILIAR_RENDER_FILTER =
|
|
9679
|
+
POST_FAMILIAR_RENDER_FILTER = 27,
|
|
9761
9680
|
/**
|
|
9762
9681
|
* Fires from the `POST_FAMILIAR_UPDATE` callback when a familiar's state has changed from what it
|
|
9763
9682
|
* was on the previous frame. (In this context, "state" refers to the `EntityFamiliar.State`
|
|
@@ -9777,7 +9696,7 @@ export declare enum ModCallbackCustom {
|
|
|
9777
9696
|
* ): void {}
|
|
9778
9697
|
* ```
|
|
9779
9698
|
*/
|
|
9780
|
-
POST_FAMILIAR_STATE_CHANGED =
|
|
9699
|
+
POST_FAMILIAR_STATE_CHANGED = 28,
|
|
9781
9700
|
/**
|
|
9782
9701
|
* The exact same thing as the vanilla `POST_FAMILIAR_UPDATE` callback, except this callback
|
|
9783
9702
|
* allows you to specify extra arguments for additional filtration.
|
|
@@ -9792,7 +9711,7 @@ export declare enum ModCallbackCustom {
|
|
|
9792
9711
|
* function postFamiliarUpdateFilter(familiar: EntityFamiliar): void {}
|
|
9793
9712
|
* ```
|
|
9794
9713
|
*/
|
|
9795
|
-
POST_FAMILIAR_UPDATE_FILTER =
|
|
9714
|
+
POST_FAMILIAR_UPDATE_FILTER = 29,
|
|
9796
9715
|
/**
|
|
9797
9716
|
* Fires one `POST_UPDATE` frame after the player has first used the Esau Jr. item. (The player is
|
|
9798
9717
|
* not updated to the new character until a game frame has passed.)
|
|
@@ -9804,7 +9723,7 @@ export declare enum ModCallbackCustom {
|
|
|
9804
9723
|
* function postFirstEsauJr(player: EntityPlayer): void {}
|
|
9805
9724
|
* ```
|
|
9806
9725
|
*/
|
|
9807
|
-
POST_FIRST_ESAU_JR =
|
|
9726
|
+
POST_FIRST_ESAU_JR = 30,
|
|
9808
9727
|
/**
|
|
9809
9728
|
* Fires after the player has used the Flip item for the first time. Unlike the vanilla `USE_ITEM`
|
|
9810
9729
|
* callback, this callback will return the player object for the new Lazarus (not the one who used
|
|
@@ -9817,7 +9736,7 @@ export declare enum ModCallbackCustom {
|
|
|
9817
9736
|
* function postFirstFlip(newLazarus: EntityPlayer, oldLazarus: EntityPlayer): void {}
|
|
9818
9737
|
* ```
|
|
9819
9738
|
*/
|
|
9820
|
-
POST_FIRST_FLIP =
|
|
9739
|
+
POST_FIRST_FLIP = 31,
|
|
9821
9740
|
/**
|
|
9822
9741
|
* Fires after the player has used the Flip item. Unlike the vanilla `USE_ITEM` callback, this
|
|
9823
9742
|
* callback will return the player object for the new Lazarus (not the one who used the Flip
|
|
@@ -9830,7 +9749,20 @@ export declare enum ModCallbackCustom {
|
|
|
9830
9749
|
* function postFlip(newLazarus: EntityPlayer, oldLazarus: EntityPlayer): void {}
|
|
9831
9750
|
* ```
|
|
9832
9751
|
*/
|
|
9833
|
-
POST_FLIP =
|
|
9752
|
+
POST_FLIP = 32,
|
|
9753
|
+
/**
|
|
9754
|
+
* The exact same thing as the vanilla `POST_GAME_END` callback, except this callback allows you
|
|
9755
|
+
* to specify extra arguments for additional filtration.
|
|
9756
|
+
*
|
|
9757
|
+
* When registering the callback with the `ModUpgraded.AddCallbackCustom` method:
|
|
9758
|
+
* - You can provide an optional third argument that will make the callback only fire if it
|
|
9759
|
+
* matches the `isGameOver` value provided.
|
|
9760
|
+
*
|
|
9761
|
+
* ```ts
|
|
9762
|
+
* function postGameEndFilter(isGameOver: boolean): void {}
|
|
9763
|
+
* ```
|
|
9764
|
+
*/
|
|
9765
|
+
POST_GAME_END_FILTER = 33,
|
|
9834
9766
|
/**
|
|
9835
9767
|
* Similar to the vanilla callback of the same name, but fires in the correct order with respect
|
|
9836
9768
|
* to the `POST_NEW_LEVEL` and the `POST_NEW_ROOM` callbacks:
|
|
@@ -13196,6 +13128,10 @@ declare class PickupIndexCreation extends Feature {
|
|
|
13196
13128
|
*
|
|
13197
13129
|
* Tracking pickups requires stateful tracking, so using pickup indexes requires an upgraded mod.
|
|
13198
13130
|
*
|
|
13131
|
+
* Note that the pickup index will not change:
|
|
13132
|
+
* - When a pickup is rolled with e.g. D6 or D20.
|
|
13133
|
+
* - When an item is "rotated" via e.g. Tainted Isaac's mechanic.
|
|
13134
|
+
*
|
|
13199
13135
|
* In order to use this function, you must upgrade your mod with
|
|
13200
13136
|
* `ISCFeature.PICKUP_INDEX_CREATION`.
|
|
13201
13137
|
*/
|
|
@@ -13596,9 +13532,13 @@ declare class PreventChildEntities extends Feature {
|
|
|
13596
13532
|
}
|
|
13597
13533
|
|
|
13598
13534
|
declare class PreventCollectibleRotation extends Feature {
|
|
13535
|
+
private pickupIndexCreation;
|
|
13536
|
+
/**
|
|
13537
|
+
* Soul of Isaac causes items to flip. We assume that the player deliberately wants to roll a
|
|
13538
|
+
* quest item, so we delete all tracked items in the current room.
|
|
13539
|
+
*/
|
|
13599
13540
|
private useCardSoulOfIsaac;
|
|
13600
|
-
private
|
|
13601
|
-
private checkCollectibleRotated;
|
|
13541
|
+
private postPickupChanged;
|
|
13602
13542
|
/**
|
|
13603
13543
|
* Helper function to prevent a collectible from being affected by Tainted Isaac's rotation
|
|
13604
13544
|
* mechanic. (This mechanic also happens from Glitched Crown and Binge Eater.) This is useful
|