isaacscript-common 17.2.0 → 17.3.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.
Files changed (38) hide show
  1. package/dist/index.d.ts +63 -56
  2. package/dist/isaacscript-common.lua +109 -97
  3. package/dist/src/classes/features/other/CustomHotkeys.d.ts +4 -0
  4. package/dist/src/classes/features/other/CustomHotkeys.d.ts.map +1 -1
  5. package/dist/src/classes/features/other/SpawnCollectible.d.ts +4 -4
  6. package/dist/src/classes/features/other/SpawnCollectible.d.ts.map +1 -1
  7. package/dist/src/classes/features/other/SpawnCollectible.lua +4 -4
  8. package/dist/src/classes/features/other/SpawnRockAltRewards.d.ts +3 -2
  9. package/dist/src/classes/features/other/SpawnRockAltRewards.d.ts.map +1 -1
  10. package/dist/src/classes/features/other/SpawnRockAltRewards.lua +4 -1
  11. package/dist/src/functions/bosses.d.ts +2 -2
  12. package/dist/src/functions/bosses.d.ts.map +1 -1
  13. package/dist/src/functions/bosses.lua +5 -5
  14. package/dist/src/functions/entities.d.ts +5 -5
  15. package/dist/src/functions/entities.d.ts.map +1 -1
  16. package/dist/src/functions/entities.lua +10 -8
  17. package/dist/src/functions/entitiesSpecific.d.ts +20 -20
  18. package/dist/src/functions/entitiesSpecific.d.ts.map +1 -1
  19. package/dist/src/functions/entitiesSpecific.lua +40 -40
  20. package/dist/src/functions/pickupsSpecific.d.ts +18 -18
  21. package/dist/src/functions/pickupsSpecific.d.ts.map +1 -1
  22. package/dist/src/functions/pickupsSpecific.lua +36 -36
  23. package/dist/src/functions/spawnCollectible.d.ts +4 -4
  24. package/dist/src/functions/spawnCollectible.d.ts.map +1 -1
  25. package/dist/src/functions/spawnCollectible.lua +6 -6
  26. package/dist/src/functions/stage.d.ts +4 -1
  27. package/dist/src/functions/stage.d.ts.map +1 -1
  28. package/dist/src/functions/stage.lua +10 -0
  29. package/package.json +1 -1
  30. package/src/classes/features/other/CustomHotkeys.ts +4 -0
  31. package/src/classes/features/other/SpawnCollectible.ts +6 -6
  32. package/src/classes/features/other/SpawnRockAltRewards.ts +7 -3
  33. package/src/functions/bosses.ts +13 -5
  34. package/src/functions/entities.ts +14 -8
  35. package/src/functions/entitiesSpecific.ts +40 -40
  36. package/src/functions/pickupsSpecific.ts +84 -36
  37. package/src/functions/spawnCollectible.ts +6 -6
  38. package/src/functions/stage.ts +15 -2
package/dist/index.d.ts CHANGED
@@ -1654,6 +1654,8 @@ declare class CustomHotkeys extends Feature {
1654
1654
  * This can be used to easily set up custom hotkeys to facilitate custom game features or to
1655
1655
  * assist in debugging.
1656
1656
  *
1657
+ * Inputs are checked for in the `POST_RENDER` callback.
1658
+ *
1657
1659
  * This is different from the `setHotkey` function in that the keyboard activation key is not
1658
1660
  * hardcoded and is instead the return value of a provided function. This is useful for situations
1659
1661
  * where the key can change (like if end-users can specify a custom hotkey using Mod Config Menu).
@@ -1671,6 +1673,8 @@ declare class CustomHotkeys extends Feature {
1671
1673
  * This can be used to easily set up custom hotkeys to facilitate custom game features or to
1672
1674
  * assist in debugging.
1673
1675
  *
1676
+ * Inputs are checked for in the `POST_RENDER` callback.
1677
+ *
1674
1678
  * In order to use this function, you must upgrade your mod with `ISCFeature.CUSTOM_HOTKEYS`.
1675
1679
  *
1676
1680
  * @param keyboard The key that you want to trigger the hotkey.
@@ -4563,8 +4567,11 @@ export declare function getEffectsList(player: EntityPlayer): TemporaryEffect[];
4563
4567
  * which will not display correctly on some fonts.
4564
4568
  *
4565
4569
  * Note that this returns "Blue Womb" instead of "???" for stage 9.
4570
+ *
4571
+ * @param stage Optional. If not specified, the current stage will be used.
4572
+ * @param stageType Optional. If not specified, the current stage type will be used.
4566
4573
  */
4567
- export declare function getEnglishLevelName(stage: LevelStage, stageType: StageType): string;
4574
+ export declare function getEnglishLevelName(stage?: LevelStage, stageType?: StageType): string;
4568
4575
 
4569
4576
  /**
4570
4577
  * Helper function to get all of the entities in the room or all of the entities that match a
@@ -13759,40 +13766,40 @@ export declare type SoulHeartType = HeartSubType.SOUL | HeartSubType.BLACK | Hea
13759
13766
  * @param entityType The `EntityType` of the entity to spawn.
13760
13767
  * @param variant The variant of the entity to spawn.
13761
13768
  * @param subType The sub-type of the entity to spawn.
13762
- * @param position The position of the entity to spawn.
13769
+ * @param positionOrGridIndex The position or grid index of the entity to spawn.
13763
13770
  * @param velocity Optional. The velocity of the entity to spawn. Default is `VectorZero`.
13764
13771
  * @param spawner Optional. The entity that will be the `SpawnerEntity`. Default is undefined.
13765
13772
  * @param seedOrRNG Optional. The seed or RNG object to use to generate the `InitSeed` of the
13766
13773
  * entity. Default is undefined, which will make the entity spawn with a random
13767
13774
  * seed using the `Isaac.Spawn` method.
13768
13775
  */
13769
- export declare function spawn(entityType: EntityType, variant: int, subType: int, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): Entity;
13776
+ export declare function spawn(entityType: EntityType, variant: int, subType: int, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): Entity;
13770
13777
 
13771
13778
  /**
13772
13779
  * Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.LIL_BATTERY` (90).
13773
13780
  */
13774
- export declare function spawnBattery(batterySubType: BatterySubType, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupBattery;
13781
+ export declare function spawnBattery(batterySubType: BatterySubType, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupBattery;
13775
13782
 
13776
13783
  /**
13777
13784
  * Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.LIL_BATTERY` (90)
13778
13785
  * and a specific seed.
13779
13786
  */
13780
- export declare function spawnBatteryWithSeed(batterySubType: BatterySubType, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupBattery;
13787
+ export declare function spawnBatteryWithSeed(batterySubType: BatterySubType, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupBattery;
13781
13788
 
13782
13789
  /** Helper function to spawn a `EntityType.BOMB` (4). */
13783
- export declare function spawnBomb(bombVariant: BombVariant, subType: int, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityBomb;
13790
+ export declare function spawnBomb(bombVariant: BombVariant, subType: int, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityBomb;
13784
13791
 
13785
13792
  /** Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.BOMB` (40). */
13786
- export declare function spawnBombPickup(bombSubType: BombSubType, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupBomb;
13793
+ export declare function spawnBombPickup(bombSubType: BombSubType, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupBomb;
13787
13794
 
13788
13795
  /**
13789
13796
  * Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.BOMB` (40) and a
13790
13797
  * specific seed.
13791
13798
  */
13792
- export declare function spawnBombPickupWithSeed(bombSubType: BombSubType, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupBomb;
13799
+ export declare function spawnBombPickupWithSeed(bombSubType: BombSubType, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupBomb;
13793
13800
 
13794
13801
  /** Helper function to spawn a `EntityType.BOMB` (4) with a specific seed. */
13795
- export declare function spawnBombWithSeed(bombVariant: BombVariant, subType: int, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityBomb;
13802
+ export declare function spawnBombWithSeed(bombVariant: BombVariant, subType: int, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityBomb;
13796
13803
 
13797
13804
  /**
13798
13805
  * Helper function to spawn a boss.
@@ -13804,34 +13811,34 @@ export declare function spawnBombWithSeed(bombVariant: BombVariant, subType: int
13804
13811
  * Gurglings/Turdlings with 2 copies, and other multi-segment bosses with 4 segments. You can
13805
13812
  * customize this via the "numSegments" argument.
13806
13813
  */
13807
- export declare function spawnBoss(entityType: EntityType, variant: int, subType: int, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined, numSegments?: int): EntityNPC;
13814
+ export declare function spawnBoss(entityType: EntityType, variant: int, subType: int, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined, numSegments?: int): EntityNPC;
13808
13815
 
13809
13816
  /**
13810
13817
  * Helper function to spawn a boss with a specific seed.
13811
13818
  *
13812
13819
  * For more information, see the documentation for the `spawnBoss` function.
13813
13820
  */
13814
- export declare function spawnBossWithSeed(entityType: EntityType, variant: int, subType: int, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined, numSegments?: int): EntityNPC;
13821
+ export declare function spawnBossWithSeed(entityType: EntityType, variant: int, subType: int, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined, numSegments?: int): EntityNPC;
13815
13822
 
13816
13823
  /**
13817
13824
  * Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.TAROT_CARD` (300).
13818
13825
  */
13819
- export declare function spawnCard(cardType: CardType, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupCard;
13826
+ export declare function spawnCard(cardType: CardType, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupCard;
13820
13827
 
13821
13828
  /**
13822
13829
  * Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.TAROT_CARD` (300)
13823
13830
  * and a specific seed.
13824
13831
  */
13825
- export declare function spawnCardWithSeed(cardType: CardType, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupCard;
13832
+ export declare function spawnCardWithSeed(cardType: CardType, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupCard;
13826
13833
 
13827
13834
  /** Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.COIN` (20). */
13828
- export declare function spawnCoin(coinSubType: CoinSubType, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupCoin;
13835
+ export declare function spawnCoin(coinSubType: CoinSubType, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupCoin;
13829
13836
 
13830
13837
  /**
13831
13838
  * Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.COIN` (20) and a
13832
13839
  * specific seed.
13833
13840
  */
13834
- export declare function spawnCoinWithSeed(coinSubType: CoinSubType, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupCoin;
13841
+ export declare function spawnCoinWithSeed(coinSubType: CoinSubType, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupCoin;
13835
13842
 
13836
13843
  declare class SpawnCollectible extends Feature {
13837
13844
  private preventCollectibleRotation;
@@ -13849,7 +13856,7 @@ declare class SpawnCollectible extends Feature {
13849
13856
  * In order to use this function, you must upgrade your mod with `ISCFeature.SPAWN_COLLECTIBLE`.
13850
13857
  *
13851
13858
  * @param collectibleType The collectible type to spawn.
13852
- * @param position The position to spawn the collectible at.
13859
+ * @param positionOrGridIndex The position or grid index to spawn the collectible at.
13853
13860
  * @param seedOrRNG Optional. The `Seed` or `RNG` object to use. If an `RNG` object is provided,
13854
13861
  * the `RNG.Next` method will be called. Default is `getRandomSeed()`.
13855
13862
  * @param options Optional. Set to true to make the collectible a "There's Options" style
@@ -13858,7 +13865,7 @@ declare class SpawnCollectible extends Feature {
13858
13865
  * Tainted Keeper. Default is false.
13859
13866
  * @param spawner Optional.
13860
13867
  */
13861
- spawnCollectible(collectibleType: CollectibleType, position: Vector, seedOrRNG?: Seed | RNG, options?: boolean, forceFreeItem?: boolean, spawner?: Entity): EntityPickupCollectible;
13868
+ spawnCollectible(collectibleType: CollectibleType, positionOrGridIndex: Vector | int, seedOrRNG?: Seed | RNG, options?: boolean, forceFreeItem?: boolean, spawner?: Entity): EntityPickupCollectible;
13862
13869
  /**
13863
13870
  * Helper function to spawn a collectible from a specific item pool.
13864
13871
  *
@@ -13869,7 +13876,7 @@ declare class SpawnCollectible extends Feature {
13869
13876
  * In order to use this function, you must upgrade your mod with `ISCFeature.SPAWN_COLLECTIBLE`.
13870
13877
  *
13871
13878
  * @param itemPoolType The item pool to draw the collectible type from.
13872
- * @param position The position to spawn the collectible at.
13879
+ * @param positionOrGridIndex The position or grid index to spawn the collectible at.
13873
13880
  * @param seedOrRNG Optional. The `Seed` or `RNG` object to use. If an `RNG` object is provided,
13874
13881
  * the `RNG.Next` method will be called. Default is `getRandomSeed()`.
13875
13882
  * @param options Optional. Set to true to make the collectible a "There's Options" style
@@ -13878,7 +13885,7 @@ declare class SpawnCollectible extends Feature {
13878
13885
  * Tainted Keeper. Default is false.
13879
13886
  * @param spawner Optional.
13880
13887
  */
13881
- spawnCollectibleFromPool(itemPoolType: ItemPoolType, position: Vector, seedOrRNG?: Seed | RNG, options?: boolean, forceFreeItem?: boolean, spawner?: Entity): EntityPickupCollectible;
13888
+ spawnCollectibleFromPool(itemPoolType: ItemPoolType, positionOrGridIndex: Vector | int, seedOrRNG?: Seed | RNG, options?: boolean, forceFreeItem?: boolean, spawner?: Entity): EntityPickupCollectible;
13882
13889
  }
13883
13890
 
13884
13891
  /**
@@ -13892,7 +13899,7 @@ declare class SpawnCollectible extends Feature {
13892
13899
  * (which is provided by `ISCFeature.SPAWN_COLLECTIBLE`).
13893
13900
  *
13894
13901
  * @param collectibleType The collectible type to spawn.
13895
- * @param position The position to spawn the collectible at.
13902
+ * @param positionOrGridIndex The position or grid index to spawn the collectible at.
13896
13903
  * @param seedOrRNG Optional. The `Seed` or `RNG` object to use. If an `RNG` object is provided, the
13897
13904
  * `RNG.Next` method will be called. Default is `getRandomSeed()`.
13898
13905
  * @param options Optional. Set to true to make the collectible a "There's Options" style
@@ -13901,7 +13908,7 @@ declare class SpawnCollectible extends Feature {
13901
13908
  * Tainted Keeper. Default is false.
13902
13909
  * @param spawner Optional.
13903
13910
  */
13904
- export declare function spawnCollectibleUnsafe(collectibleType: CollectibleType, position: Vector, seedOrRNG?: Seed | RNG, options?: boolean, forceFreeItem?: boolean, spawner?: Entity): EntityPickupCollectible;
13911
+ export declare function spawnCollectibleUnsafe(collectibleType: CollectibleType, positionOrGridIndex: Vector | int, seedOrRNG?: Seed | RNG, options?: boolean, forceFreeItem?: boolean, spawner?: Entity): EntityPickupCollectible;
13905
13912
 
13906
13913
  /** Helper function to spawn a `GridEntityType.CRAWL_SPACE` (18). */
13907
13914
  export declare function spawnCrawlSpace(gridIndexOrPosition: int | Vector): GridEntity | undefined;
@@ -13916,10 +13923,10 @@ export declare function spawnDoor(gridIndexOrPosition: int | Vector): GridEntity
13916
13923
  export declare function spawnDoorWithVariant(doorVariant: DoorVariant, gridIndexOrPosition: int | Vector): GridEntityDoor | undefined;
13917
13924
 
13918
13925
  /** Helper function to spawn a `EntityType.EFFECT` (1000). */
13919
- export declare function spawnEffect(effectVariant: EffectVariant, subType: int, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityEffect;
13926
+ export declare function spawnEffect(effectVariant: EffectVariant, subType: int, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityEffect;
13920
13927
 
13921
13928
  /** Helper function to spawn a `EntityType.EFFECT` (1000) with a specific seed. */
13922
- export declare function spawnEffectWithSeed(effectVariant: EffectVariant, subType: int, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityEffect;
13929
+ export declare function spawnEffectWithSeed(effectVariant: EffectVariant, subType: int, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityEffect;
13923
13930
 
13924
13931
  /**
13925
13932
  * Helper function to spawn an empty collectible. Doing this is tricky since spawning a collectible
@@ -13929,24 +13936,24 @@ export declare function spawnEffectWithSeed(effectVariant: EffectVariant, subTyp
13929
13936
  * Instead, this function arbitrarily spawns a collectible with `CollectibleType.SAD_ONION`, and
13930
13937
  * then converts it to an empty pedestal afterward.
13931
13938
  *
13932
- * @param position The position to spawn the empty collectible at.
13939
+ * @param positionOrGridIndex The position or grid index to spawn the empty collectible at.
13933
13940
  * @param seedOrRNG The `Seed` or `RNG` object to use. If an `RNG` object is provided, the
13934
13941
  * `RNG.Next` method will be called. Default is `getRandomSeed()`.
13935
13942
  */
13936
- export declare function spawnEmptyCollectible(position: Vector, seedOrRNG?: Seed | RNG): EntityPickup;
13943
+ export declare function spawnEmptyCollectible(positionOrGridIndex: Vector | int, seedOrRNG?: Seed | RNG): EntityPickup;
13937
13944
 
13938
13945
  /**
13939
13946
  * Helper function to spawn the entity corresponding to an `EntityID`.
13940
13947
  *
13941
13948
  * @param entityID The `EntityID` of the entity to spawn.
13942
- * @param position The position of the entity to spawn.
13949
+ * @param positionOrGridIndex The position or grid index of the entity to spawn.
13943
13950
  * @param velocity Optional. The velocity of the entity to spawn. Default is `VectorZero`.
13944
13951
  * @param spawner Optional. The entity that will be the `SpawnerEntity`. Default is undefined.
13945
13952
  * @param seedOrRNG Optional. The seed or RNG object to use to generate the `InitSeed` of the
13946
13953
  * entity. Default is undefined, which will make the entity spawn with a random
13947
13954
  * seed using the `Isaac.Spawn` method.
13948
13955
  */
13949
- export declare function spawnEntityID(entityID: EntityID, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): Entity;
13956
+ export declare function spawnEntityID(entityID: EntityID, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): Entity;
13950
13957
 
13951
13958
  /**
13952
13959
  * Helper function to spawn a `EntityType.FAMILIAR` (3).
@@ -13954,10 +13961,10 @@ export declare function spawnEntityID(entityID: EntityID, position: Vector, velo
13954
13961
  * If you are trying to implement a custom familiar, you probably want to use the
13955
13962
  * `checkFamiliarFromCollectibles` helper function instead.
13956
13963
  */
13957
- export declare function spawnFamiliar(familiarVariant: FamiliarVariant, subType: int, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityFamiliar;
13964
+ export declare function spawnFamiliar(familiarVariant: FamiliarVariant, subType: int, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityFamiliar;
13958
13965
 
13959
13966
  /** Helper function to spawn a `EntityType.FAMILIAR` (3) with a specific seed. */
13960
- export declare function spawnFamiliarWithSeed(familiarVariant: FamiliarVariant, subType: int, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityFamiliar;
13967
+ export declare function spawnFamiliarWithSeed(familiarVariant: FamiliarVariant, subType: int, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityFamiliar;
13961
13968
 
13962
13969
  /**
13963
13970
  * Helper function to spawn a giant poop. This is performed by spawning each of the four quadrant
@@ -13989,30 +13996,30 @@ export declare function spawnGridEntity(gridEntityType: GridEntityType, gridInde
13989
13996
  export declare function spawnGridEntityWithVariant(gridEntityType: GridEntityType, variant: int, gridIndexOrPosition: int | Vector): GridEntity | undefined;
13990
13997
 
13991
13998
  /** Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.HEART` (10). */
13992
- export declare function spawnHeart(heartSubType: HeartSubType, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupHeart;
13999
+ export declare function spawnHeart(heartSubType: HeartSubType, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupHeart;
13993
14000
 
13994
- export declare function spawnHeartWithSeed(heartSubType: HeartSubType, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupHeart;
14001
+ export declare function spawnHeartWithSeed(heartSubType: HeartSubType, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupHeart;
13995
14002
 
13996
14003
  /** Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.KEY` (30). */
13997
- export declare function spawnKey(keySubType: KeySubType, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupKey;
14004
+ export declare function spawnKey(keySubType: KeySubType, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupKey;
13998
14005
 
13999
14006
  /**
14000
14007
  * Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.KEY` (30) and a
14001
14008
  * specific seed.
14002
14009
  */
14003
- export declare function spawnKeyWithSeed(keySubType: KeySubType, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupKey;
14010
+ export declare function spawnKeyWithSeed(keySubType: KeySubType, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupKey;
14004
14011
 
14005
14012
  /** Helper function to spawn a `EntityType.KNIFE` (8). */
14006
- export declare function spawnKnife(knifeVariant: KnifeVariant, subType: int, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityKnife;
14013
+ export declare function spawnKnife(knifeVariant: KnifeVariant, subType: int, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityKnife;
14007
14014
 
14008
14015
  /** Helper function to spawn a `EntityType.KNIFE` (8) with a specific seed. */
14009
- export declare function spawnKnifeWithSeed(knifeVariant: KnifeVariant, subType: int, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityKnife;
14016
+ export declare function spawnKnifeWithSeed(knifeVariant: KnifeVariant, subType: int, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityKnife;
14010
14017
 
14011
14018
  /** Helper function to spawn a `EntityType.LASER` (7). */
14012
- export declare function spawnLaser(laserVariant: LaserVariant, subType: int, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityLaser;
14019
+ export declare function spawnLaser(laserVariant: LaserVariant, subType: int, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityLaser;
14013
14020
 
14014
14021
  /** Helper function to spawn a `EntityType.LASER` (7) with a specific seed. */
14015
- export declare function spawnLaserWithSeed(laserVariant: LaserVariant, subType: int, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityLaser;
14022
+ export declare function spawnLaserWithSeed(laserVariant: LaserVariant, subType: int, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityLaser;
14016
14023
 
14017
14024
  /**
14018
14025
  * Helper function to spawn an NPC.
@@ -14020,7 +14027,7 @@ export declare function spawnLaserWithSeed(laserVariant: LaserVariant, subType:
14020
14027
  * Note that if you pass a non-NPC `EntityType` to this function, it will cause a run-time error,
14021
14028
  * since the `Entity.ToNPC` method will return undefined.
14022
14029
  */
14023
- export declare function spawnNPC(entityType: EntityType, variant: int, subType: int, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityNPC;
14030
+ export declare function spawnNPC(entityType: EntityType, variant: int, subType: int, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityNPC;
14024
14031
 
14025
14032
  /**
14026
14033
  * Helper function to spawn an NPC with a specific seed.
@@ -14028,22 +14035,22 @@ export declare function spawnNPC(entityType: EntityType, variant: int, subType:
14028
14035
  * Note that if you pass a non-NPC `EntityType` to this function, it will cause a run-time error,
14029
14036
  * since the `Entity.ToNPC` method will return undefined.
14030
14037
  */
14031
- export declare function spawnNPCWithSeed(entityType: EntityType, variant: int, subType: int, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityNPC;
14038
+ export declare function spawnNPCWithSeed(entityType: EntityType, variant: int, subType: int, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityNPC;
14032
14039
 
14033
14040
  /** Helper function to spawn a `EntityType.PICKUP` (5). */
14034
- export declare function spawnPickup(pickupVariant: PickupVariant, subType: int, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickup;
14041
+ export declare function spawnPickup(pickupVariant: PickupVariant, subType: int, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickup;
14035
14042
 
14036
14043
  /** Helper function to spawn a `EntityType.PICKUP` (5) with a specific seed. */
14037
- export declare function spawnPickupWithSeed(pickupVariant: PickupVariant, subType: int, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickup;
14044
+ export declare function spawnPickupWithSeed(pickupVariant: PickupVariant, subType: int, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickup;
14038
14045
 
14039
14046
  /** Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.PILL` (70). */
14040
- export declare function spawnPill(pillColor: PillColor, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupPill;
14047
+ export declare function spawnPill(pillColor: PillColor, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupPill;
14041
14048
 
14042
14049
  /**
14043
14050
  * Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.PILL` (70) and a
14044
14051
  * specific seed.
14045
14052
  */
14046
- export declare function spawnPillWithSeed(pillColor: PillColor, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupPill;
14053
+ export declare function spawnPillWithSeed(pillColor: PillColor, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupPill;
14047
14054
 
14048
14055
  /** Helper function to spawn a `GridEntityType.DOOR` (16) with a specific variant. */
14049
14056
  export declare function spawnPit(gridIndexOrPosition: int | Vector): GridEntityPit | undefined;
@@ -14064,10 +14071,10 @@ export declare function spawnPressurePlate(gridIndexOrPosition: int | Vector): G
14064
14071
  export declare function spawnPressurePlateWithVariant(pressurePlateVariant: PressurePlateVariant, gridIndexOrPosition: int | Vector): GridEntityPressurePlate | undefined;
14065
14072
 
14066
14073
  /** Helper function to spawn a `EntityType.PROJECTILE` (9). */
14067
- export declare function spawnProjectile(projectileVariant: ProjectileVariant, subType: int, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityProjectile;
14074
+ export declare function spawnProjectile(projectileVariant: ProjectileVariant, subType: int, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityProjectile;
14068
14075
 
14069
14076
  /** Helper function to spawn a `EntityType.PROJECTILE` (9) with a specific seed. */
14070
- export declare function spawnProjectileWithSeed(projectileVariant: ProjectileVariant, subType: int, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityProjectile;
14077
+ export declare function spawnProjectileWithSeed(projectileVariant: ProjectileVariant, subType: int, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityProjectile;
14071
14078
 
14072
14079
  /** Helper function to spawn a `GridEntityType.ROCK` (2). */
14073
14080
  export declare function spawnRock(gridIndexOrPosition: int | Vector): GridEntityRock | undefined;
@@ -14098,7 +14105,7 @@ declare class SpawnRockAltRewards extends Feature {
14098
14105
  * In order to use this function, you must upgrade your mod with
14099
14106
  * `ISCFeature.SPAWN_ALT_ROCK_REWARDS`.
14100
14107
  *
14101
- * @param position The place to spawn the reward.
14108
+ * @param positionOrGridIndex The position or grid index to spawn the reward.
14102
14109
  * @param rockAltType The type of reward to spawn. For example, `RockAltType.URN` will have a
14103
14110
  * chance at spawning coins and spiders.
14104
14111
  * @param seedOrRNG Optional. The `Seed` or `RNG` object to use. If an `RNG` object is provided,
@@ -14106,7 +14113,7 @@ declare class SpawnRockAltRewards extends Feature {
14106
14113
  * you should pass the `InitSeed` of the grid entity that was broken.
14107
14114
  * @returns Whether or not this function spawned something.
14108
14115
  */
14109
- spawnRockAltReward(position: Vector, rockAltType: RockAltType, seedOrRNG?: Seed | RNG): boolean;
14116
+ spawnRockAltReward(positionOrGridIndex: Vector | int, rockAltType: RockAltType, seedOrRNG?: Seed | RNG): boolean;
14110
14117
  /**
14111
14118
  * Helper function for emulating what happens when a vanilla `GridEntityType.ROCK_ALT` grid entity
14112
14119
  * breaks of `RockAltType.URN`.
@@ -14173,19 +14180,19 @@ declare class SpawnRockAltRewards extends Feature {
14173
14180
  export declare function spawnRockWithVariant(rockVariant: RockVariant, gridIndexOrPosition: int | Vector): GridEntityRock | undefined;
14174
14181
 
14175
14182
  /** Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.SACK` (69). */
14176
- export declare function spawnSack(sackSubType: SackSubType, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupSack;
14183
+ export declare function spawnSack(sackSubType: SackSubType, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupSack;
14177
14184
 
14178
14185
  /**
14179
14186
  * Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.SACK` (69) and a
14180
14187
  * specific seed.
14181
14188
  */
14182
- export declare function spawnSackWithSeed(sackSubType: SackSubType, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupSack;
14189
+ export declare function spawnSackWithSeed(sackSubType: SackSubType, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupSack;
14183
14190
 
14184
14191
  /** Helper function to spawn a `EntityType.SLOT` (6). */
14185
- export declare function spawnSlot(slotVariant: SlotVariant, subType: int, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntitySlot;
14192
+ export declare function spawnSlot(slotVariant: SlotVariant, subType: int, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntitySlot;
14186
14193
 
14187
14194
  /** Helper function to spawn a `EntityType.SLOT` (6) with a specific seed. */
14188
- export declare function spawnSlotWithSeed(slotVariant: SlotVariant, subType: int, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntitySlot;
14195
+ export declare function spawnSlotWithSeed(slotVariant: SlotVariant, subType: int, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntitySlot;
14189
14196
 
14190
14197
  /** Helper function to spawn a `GridEntityType.SPIKES` (8). */
14191
14198
  export declare function spawnSpikes(gridIndexOrPosition: int | Vector): GridEntitySpikes | undefined;
@@ -14194,10 +14201,10 @@ export declare function spawnSpikes(gridIndexOrPosition: int | Vector): GridEnti
14194
14201
  export declare function spawnSpikesWithVariant(variant: int, gridIndexOrPosition: int | Vector): GridEntitySpikes | undefined;
14195
14202
 
14196
14203
  /** Helper function to spawn a `EntityType.TEAR` (2). */
14197
- export declare function spawnTear(tearVariant: TearVariant, subType: int, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityTear;
14204
+ export declare function spawnTear(tearVariant: TearVariant, subType: int, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityTear;
14198
14205
 
14199
14206
  /** Helper function to spawn a `EntityType.EntityType` (2) with a specific seed. */
14200
- export declare function spawnTearWithSeed(tearVariant: TearVariant, subType: int, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityTear;
14207
+ export declare function spawnTearWithSeed(tearVariant: TearVariant, subType: int, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityTear;
14201
14208
 
14202
14209
  /** Helper function to spawn a `GridEntityType.TELEPORTER` (23). */
14203
14210
  export declare function spawnTeleporter(gridIndexOrPosition: int | Vector): GridEntity | undefined;
@@ -14220,13 +14227,13 @@ export declare function spawnTrapdoorWithVariant(trapdoorVariant: TrapdoorVarian
14220
14227
  /**
14221
14228
  * Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.TRINKET` (350).
14222
14229
  */
14223
- export declare function spawnTrinket(trinketType: TrinketType, position: Vector, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupTrinket;
14230
+ export declare function spawnTrinket(trinketType: TrinketType, positionOrGridIndex: Vector | int, velocity?: Vector, spawner?: Entity | undefined, seedOrRNG?: Seed | RNG | undefined): EntityPickupTrinket;
14224
14231
 
14225
14232
  /**
14226
14233
  * Helper function to spawn a `EntityType.PICKUP` (5) with variant `PickupVariant.TRINKET` (350) and
14227
14234
  * a specific seed.
14228
14235
  */
14229
- export declare function spawnTrinketWithSeed(trinketType: TrinketType, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupTrinket;
14236
+ export declare function spawnTrinketWithSeed(trinketType: TrinketType, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): EntityPickupTrinket;
14230
14237
 
14231
14238
  /**
14232
14239
  * Helper function to spawn a Void Portal. This is more complicated than simply spawning a trapdoor
@@ -14238,7 +14245,7 @@ export declare function spawnVoidPortal(gridIndex: int): GridEntity | undefined;
14238
14245
  * Helper function to spawn an entity. Use this instead of the `Game.Spawn` method if you do not
14239
14246
  * need to specify the velocity or spawner.
14240
14247
  */
14241
- export declare function spawnWithSeed(entityType: EntityType, variant: int, subType: int, position: Vector, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): Entity;
14248
+ export declare function spawnWithSeed(entityType: EntityType, variant: int, subType: int, positionOrGridIndex: Vector | int, seedOrRNG: Seed | RNG, velocity?: Vector, spawner?: Entity | undefined): Entity;
14242
14249
 
14243
14250
  /**
14244
14251
  * Helper function to check if two sprite layers have the same sprite sheet by using the