isaacscript-common 17.2.1 → 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 (34) hide show
  1. package/dist/index.d.ts +59 -55
  2. package/dist/isaacscript-common.lua +102 -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/package.json +1 -1
  27. package/src/classes/features/other/CustomHotkeys.ts +4 -0
  28. package/src/classes/features/other/SpawnCollectible.ts +6 -6
  29. package/src/classes/features/other/SpawnRockAltRewards.ts +7 -3
  30. package/src/functions/bosses.ts +13 -5
  31. package/src/functions/entities.ts +14 -8
  32. package/src/functions/entitiesSpecific.ts +40 -40
  33. package/src/functions/pickupsSpecific.ts +84 -36
  34. package/src/functions/spawnCollectible.ts +6 -6
@@ -1,6 +1,6 @@
1
1
  --[[
2
2
 
3
- isaacscript-common 17.2.1
3
+ isaacscript-common 17.3.0
4
4
 
5
5
  This is the "isaacscript-common" library, which was created with the IsaacScript tool.
6
6
 
@@ -19504,7 +19504,7 @@ function ____exports.setEntityRandomColor(self, entity)
19504
19504
  false
19505
19505
  )
19506
19506
  end
19507
- function ____exports.spawn(self, entityType, variant, subType, position, velocity, spawner, seedOrRNG)
19507
+ function ____exports.spawn(self, entityType, variant, subType, positionOrGridIndex, velocity, spawner, seedOrRNG)
19508
19508
  if velocity == nil then
19509
19509
  velocity = VectorZero
19510
19510
  end
@@ -19514,7 +19514,8 @@ function ____exports.spawn(self, entityType, variant, subType, position, velocit
19514
19514
  if seedOrRNG == nil then
19515
19515
  seedOrRNG = nil
19516
19516
  end
19517
- if position == nil then
19517
+ local room = game:GetRoom()
19518
+ if positionOrGridIndex == nil then
19518
19519
  local entityID = ____exports.getEntityIDFromConstituents(nil, entityType, variant, subType)
19519
19520
  error(("Failed to spawn entity " .. entityID) .. " since an undefined position was passed to the \"spawn\" function.")
19520
19521
  end
@@ -19522,6 +19523,7 @@ function ____exports.spawn(self, entityType, variant, subType, position, velocit
19522
19523
  local entityID = ____exports.getEntityIDFromConstituents(nil, entityType, variant, subType)
19523
19524
  error(("Failed to spawn entity " .. entityID) .. " since an undefined velocity was passed to the \"spawn\" function.")
19524
19525
  end
19526
+ local position = isVector(nil, positionOrGridIndex) and positionOrGridIndex or room:GetGridPosition(positionOrGridIndex)
19525
19527
  if seedOrRNG == nil then
19526
19528
  return Isaac.Spawn(
19527
19529
  entityType,
@@ -19543,7 +19545,7 @@ function ____exports.spawn(self, entityType, variant, subType, position, velocit
19543
19545
  seed
19544
19546
  )
19545
19547
  end
19546
- function ____exports.spawnEntityID(self, entityID, position, velocity, spawner, seedOrRNG)
19548
+ function ____exports.spawnEntityID(self, entityID, positionOrGridIndex, velocity, spawner, seedOrRNG)
19547
19549
  if velocity == nil then
19548
19550
  velocity = VectorZero
19549
19551
  end
@@ -19559,13 +19561,13 @@ function ____exports.spawnEntityID(self, entityID, position, velocity, spawner,
19559
19561
  entityType,
19560
19562
  variant,
19561
19563
  subType,
19562
- position,
19564
+ positionOrGridIndex,
19563
19565
  velocity,
19564
19566
  spawner,
19565
19567
  seedOrRNG
19566
19568
  )
19567
19569
  end
19568
- function ____exports.spawnWithSeed(self, entityType, variant, subType, position, seedOrRNG, velocity, spawner)
19570
+ function ____exports.spawnWithSeed(self, entityType, variant, subType, positionOrGridIndex, seedOrRNG, velocity, spawner)
19569
19571
  if velocity == nil then
19570
19572
  velocity = VectorZero
19571
19573
  end
@@ -19577,7 +19579,7 @@ function ____exports.spawnWithSeed(self, entityType, variant, subType, position,
19577
19579
  entityType,
19578
19580
  variant,
19579
19581
  subType,
19580
- position,
19582
+ positionOrGridIndex,
19581
19583
  velocity,
19582
19584
  spawner,
19583
19585
  seedOrRNG
@@ -22788,7 +22790,7 @@ function ____exports.removeAllTears(self, tearVariant, subType, cap)
22788
22790
  local tears = ____exports.getTears(nil, tearVariant, subType)
22789
22791
  return removeEntities(nil, tears, cap)
22790
22792
  end
22791
- function ____exports.spawnBomb(self, bombVariant, subType, position, velocity, spawner, seedOrRNG)
22793
+ function ____exports.spawnBomb(self, bombVariant, subType, positionOrGridIndex, velocity, spawner, seedOrRNG)
22792
22794
  if velocity == nil then
22793
22795
  velocity = VectorZero
22794
22796
  end
@@ -22803,7 +22805,7 @@ function ____exports.spawnBomb(self, bombVariant, subType, position, velocity, s
22803
22805
  EntityType.BOMB,
22804
22806
  bombVariant,
22805
22807
  subType,
22806
- position,
22808
+ positionOrGridIndex,
22807
22809
  velocity,
22808
22810
  spawner,
22809
22811
  seedOrRNG
@@ -22814,7 +22816,7 @@ function ____exports.spawnBomb(self, bombVariant, subType, position, velocity, s
22814
22816
  end
22815
22817
  return bomb
22816
22818
  end
22817
- function ____exports.spawnBombWithSeed(self, bombVariant, subType, position, seedOrRNG, velocity, spawner)
22819
+ function ____exports.spawnBombWithSeed(self, bombVariant, subType, positionOrGridIndex, seedOrRNG, velocity, spawner)
22818
22820
  if velocity == nil then
22819
22821
  velocity = VectorZero
22820
22822
  end
@@ -22825,13 +22827,13 @@ function ____exports.spawnBombWithSeed(self, bombVariant, subType, position, see
22825
22827
  nil,
22826
22828
  bombVariant,
22827
22829
  subType,
22828
- position,
22830
+ positionOrGridIndex,
22829
22831
  velocity,
22830
22832
  spawner,
22831
22833
  seedOrRNG
22832
22834
  )
22833
22835
  end
22834
- function ____exports.spawnEffect(self, effectVariant, subType, position, velocity, spawner, seedOrRNG)
22836
+ function ____exports.spawnEffect(self, effectVariant, subType, positionOrGridIndex, velocity, spawner, seedOrRNG)
22835
22837
  if velocity == nil then
22836
22838
  velocity = VectorZero
22837
22839
  end
@@ -22846,7 +22848,7 @@ function ____exports.spawnEffect(self, effectVariant, subType, position, velocit
22846
22848
  EntityType.EFFECT,
22847
22849
  effectVariant,
22848
22850
  subType,
22849
- position,
22851
+ positionOrGridIndex,
22850
22852
  velocity,
22851
22853
  spawner,
22852
22854
  seedOrRNG
@@ -22857,7 +22859,7 @@ function ____exports.spawnEffect(self, effectVariant, subType, position, velocit
22857
22859
  end
22858
22860
  return effect
22859
22861
  end
22860
- function ____exports.spawnEffectWithSeed(self, effectVariant, subType, position, seedOrRNG, velocity, spawner)
22862
+ function ____exports.spawnEffectWithSeed(self, effectVariant, subType, positionOrGridIndex, seedOrRNG, velocity, spawner)
22861
22863
  if velocity == nil then
22862
22864
  velocity = VectorZero
22863
22865
  end
@@ -22868,13 +22870,13 @@ function ____exports.spawnEffectWithSeed(self, effectVariant, subType, position,
22868
22870
  nil,
22869
22871
  effectVariant,
22870
22872
  subType,
22871
- position,
22873
+ positionOrGridIndex,
22872
22874
  velocity,
22873
22875
  spawner,
22874
22876
  seedOrRNG
22875
22877
  )
22876
22878
  end
22877
- function ____exports.spawnFamiliar(self, familiarVariant, subType, position, velocity, spawner, seedOrRNG)
22879
+ function ____exports.spawnFamiliar(self, familiarVariant, subType, positionOrGridIndex, velocity, spawner, seedOrRNG)
22878
22880
  if velocity == nil then
22879
22881
  velocity = VectorZero
22880
22882
  end
@@ -22889,7 +22891,7 @@ function ____exports.spawnFamiliar(self, familiarVariant, subType, position, vel
22889
22891
  EntityType.FAMILIAR,
22890
22892
  familiarVariant,
22891
22893
  subType,
22892
- position,
22894
+ positionOrGridIndex,
22893
22895
  velocity,
22894
22896
  spawner,
22895
22897
  seedOrRNG
@@ -22900,7 +22902,7 @@ function ____exports.spawnFamiliar(self, familiarVariant, subType, position, vel
22900
22902
  end
22901
22903
  return familiar
22902
22904
  end
22903
- function ____exports.spawnFamiliarWithSeed(self, familiarVariant, subType, position, seedOrRNG, velocity, spawner)
22905
+ function ____exports.spawnFamiliarWithSeed(self, familiarVariant, subType, positionOrGridIndex, seedOrRNG, velocity, spawner)
22904
22906
  if velocity == nil then
22905
22907
  velocity = VectorZero
22906
22908
  end
@@ -22911,13 +22913,13 @@ function ____exports.spawnFamiliarWithSeed(self, familiarVariant, subType, posit
22911
22913
  nil,
22912
22914
  familiarVariant,
22913
22915
  subType,
22914
- position,
22916
+ positionOrGridIndex,
22915
22917
  velocity,
22916
22918
  spawner,
22917
22919
  seedOrRNG
22918
22920
  )
22919
22921
  end
22920
- function ____exports.spawnKnife(self, knifeVariant, subType, position, velocity, spawner, seedOrRNG)
22922
+ function ____exports.spawnKnife(self, knifeVariant, subType, positionOrGridIndex, velocity, spawner, seedOrRNG)
22921
22923
  if velocity == nil then
22922
22924
  velocity = VectorZero
22923
22925
  end
@@ -22932,7 +22934,7 @@ function ____exports.spawnKnife(self, knifeVariant, subType, position, velocity,
22932
22934
  EntityType.KNIFE,
22933
22935
  knifeVariant,
22934
22936
  subType,
22935
- position,
22937
+ positionOrGridIndex,
22936
22938
  velocity,
22937
22939
  spawner,
22938
22940
  seedOrRNG
@@ -22943,7 +22945,7 @@ function ____exports.spawnKnife(self, knifeVariant, subType, position, velocity,
22943
22945
  end
22944
22946
  return knife
22945
22947
  end
22946
- function ____exports.spawnKnifeWithSeed(self, knifeVariant, subType, position, seedOrRNG, velocity, spawner)
22948
+ function ____exports.spawnKnifeWithSeed(self, knifeVariant, subType, positionOrGridIndex, seedOrRNG, velocity, spawner)
22947
22949
  if velocity == nil then
22948
22950
  velocity = VectorZero
22949
22951
  end
@@ -22954,13 +22956,13 @@ function ____exports.spawnKnifeWithSeed(self, knifeVariant, subType, position, s
22954
22956
  nil,
22955
22957
  knifeVariant,
22956
22958
  subType,
22957
- position,
22959
+ positionOrGridIndex,
22958
22960
  velocity,
22959
22961
  spawner,
22960
22962
  seedOrRNG
22961
22963
  )
22962
22964
  end
22963
- function ____exports.spawnLaser(self, laserVariant, subType, position, velocity, spawner, seedOrRNG)
22965
+ function ____exports.spawnLaser(self, laserVariant, subType, positionOrGridIndex, velocity, spawner, seedOrRNG)
22964
22966
  if velocity == nil then
22965
22967
  velocity = VectorZero
22966
22968
  end
@@ -22975,7 +22977,7 @@ function ____exports.spawnLaser(self, laserVariant, subType, position, velocity,
22975
22977
  EntityType.LASER,
22976
22978
  laserVariant,
22977
22979
  subType,
22978
- position,
22980
+ positionOrGridIndex,
22979
22981
  velocity,
22980
22982
  spawner,
22981
22983
  seedOrRNG
@@ -22986,7 +22988,7 @@ function ____exports.spawnLaser(self, laserVariant, subType, position, velocity,
22986
22988
  end
22987
22989
  return laser
22988
22990
  end
22989
- function ____exports.spawnLaserWithSeed(self, laserVariant, subType, position, seedOrRNG, velocity, spawner)
22991
+ function ____exports.spawnLaserWithSeed(self, laserVariant, subType, positionOrGridIndex, seedOrRNG, velocity, spawner)
22990
22992
  if velocity == nil then
22991
22993
  velocity = VectorZero
22992
22994
  end
@@ -22997,13 +22999,13 @@ function ____exports.spawnLaserWithSeed(self, laserVariant, subType, position, s
22997
22999
  nil,
22998
23000
  laserVariant,
22999
23001
  subType,
23000
- position,
23002
+ positionOrGridIndex,
23001
23003
  velocity,
23002
23004
  spawner,
23003
23005
  seedOrRNG
23004
23006
  )
23005
23007
  end
23006
- function ____exports.spawnNPC(self, entityType, variant, subType, position, velocity, spawner, seedOrRNG)
23008
+ function ____exports.spawnNPC(self, entityType, variant, subType, positionOrGridIndex, velocity, spawner, seedOrRNG)
23007
23009
  if velocity == nil then
23008
23010
  velocity = VectorZero
23009
23011
  end
@@ -23018,7 +23020,7 @@ function ____exports.spawnNPC(self, entityType, variant, subType, position, velo
23018
23020
  entityType,
23019
23021
  variant,
23020
23022
  subType,
23021
- position,
23023
+ positionOrGridIndex,
23022
23024
  velocity,
23023
23025
  spawner,
23024
23026
  seedOrRNG
@@ -23029,7 +23031,7 @@ function ____exports.spawnNPC(self, entityType, variant, subType, position, velo
23029
23031
  end
23030
23032
  return npc
23031
23033
  end
23032
- function ____exports.spawnNPCWithSeed(self, entityType, variant, subType, position, seedOrRNG, velocity, spawner)
23034
+ function ____exports.spawnNPCWithSeed(self, entityType, variant, subType, positionOrGridIndex, seedOrRNG, velocity, spawner)
23033
23035
  if velocity == nil then
23034
23036
  velocity = VectorZero
23035
23037
  end
@@ -23041,13 +23043,13 @@ function ____exports.spawnNPCWithSeed(self, entityType, variant, subType, positi
23041
23043
  entityType,
23042
23044
  variant,
23043
23045
  subType,
23044
- position,
23046
+ positionOrGridIndex,
23045
23047
  velocity,
23046
23048
  spawner,
23047
23049
  seedOrRNG
23048
23050
  )
23049
23051
  end
23050
- function ____exports.spawnPickup(self, pickupVariant, subType, position, velocity, spawner, seedOrRNG)
23052
+ function ____exports.spawnPickup(self, pickupVariant, subType, positionOrGridIndex, velocity, spawner, seedOrRNG)
23051
23053
  if velocity == nil then
23052
23054
  velocity = VectorZero
23053
23055
  end
@@ -23062,7 +23064,7 @@ function ____exports.spawnPickup(self, pickupVariant, subType, position, velocit
23062
23064
  EntityType.PICKUP,
23063
23065
  pickupVariant,
23064
23066
  subType,
23065
- position,
23067
+ positionOrGridIndex,
23066
23068
  velocity,
23067
23069
  spawner,
23068
23070
  seedOrRNG
@@ -23073,7 +23075,7 @@ function ____exports.spawnPickup(self, pickupVariant, subType, position, velocit
23073
23075
  end
23074
23076
  return pickup
23075
23077
  end
23076
- function ____exports.spawnPickupWithSeed(self, pickupVariant, subType, position, seedOrRNG, velocity, spawner)
23078
+ function ____exports.spawnPickupWithSeed(self, pickupVariant, subType, positionOrGridIndex, seedOrRNG, velocity, spawner)
23077
23079
  if velocity == nil then
23078
23080
  velocity = VectorZero
23079
23081
  end
@@ -23084,13 +23086,13 @@ function ____exports.spawnPickupWithSeed(self, pickupVariant, subType, position,
23084
23086
  nil,
23085
23087
  pickupVariant,
23086
23088
  subType,
23087
- position,
23089
+ positionOrGridIndex,
23088
23090
  velocity,
23089
23091
  spawner,
23090
23092
  seedOrRNG
23091
23093
  )
23092
23094
  end
23093
- function ____exports.spawnProjectile(self, projectileVariant, subType, position, velocity, spawner, seedOrRNG)
23095
+ function ____exports.spawnProjectile(self, projectileVariant, subType, positionOrGridIndex, velocity, spawner, seedOrRNG)
23094
23096
  if velocity == nil then
23095
23097
  velocity = VectorZero
23096
23098
  end
@@ -23105,7 +23107,7 @@ function ____exports.spawnProjectile(self, projectileVariant, subType, position,
23105
23107
  EntityType.PROJECTILE,
23106
23108
  projectileVariant,
23107
23109
  subType,
23108
- position,
23110
+ positionOrGridIndex,
23109
23111
  velocity,
23110
23112
  spawner,
23111
23113
  seedOrRNG
@@ -23116,7 +23118,7 @@ function ____exports.spawnProjectile(self, projectileVariant, subType, position,
23116
23118
  end
23117
23119
  return projectile
23118
23120
  end
23119
- function ____exports.spawnProjectileWithSeed(self, projectileVariant, subType, position, seedOrRNG, velocity, spawner)
23121
+ function ____exports.spawnProjectileWithSeed(self, projectileVariant, subType, positionOrGridIndex, seedOrRNG, velocity, spawner)
23120
23122
  if velocity == nil then
23121
23123
  velocity = VectorZero
23122
23124
  end
@@ -23127,13 +23129,13 @@ function ____exports.spawnProjectileWithSeed(self, projectileVariant, subType, p
23127
23129
  nil,
23128
23130
  projectileVariant,
23129
23131
  subType,
23130
- position,
23132
+ positionOrGridIndex,
23131
23133
  velocity,
23132
23134
  spawner,
23133
23135
  seedOrRNG
23134
23136
  )
23135
23137
  end
23136
- function ____exports.spawnSlot(self, slotVariant, subType, position, velocity, spawner, seedOrRNG)
23138
+ function ____exports.spawnSlot(self, slotVariant, subType, positionOrGridIndex, velocity, spawner, seedOrRNG)
23137
23139
  if velocity == nil then
23138
23140
  velocity = VectorZero
23139
23141
  end
@@ -23148,13 +23150,13 @@ function ____exports.spawnSlot(self, slotVariant, subType, position, velocity, s
23148
23150
  EntityType.SLOT,
23149
23151
  slotVariant,
23150
23152
  subType,
23151
- position,
23153
+ positionOrGridIndex,
23152
23154
  velocity,
23153
23155
  spawner,
23154
23156
  seedOrRNG
23155
23157
  )
23156
23158
  end
23157
- function ____exports.spawnSlotWithSeed(self, slotVariant, subType, position, seedOrRNG, velocity, spawner)
23159
+ function ____exports.spawnSlotWithSeed(self, slotVariant, subType, positionOrGridIndex, seedOrRNG, velocity, spawner)
23158
23160
  if velocity == nil then
23159
23161
  velocity = VectorZero
23160
23162
  end
@@ -23165,13 +23167,13 @@ function ____exports.spawnSlotWithSeed(self, slotVariant, subType, position, see
23165
23167
  nil,
23166
23168
  slotVariant,
23167
23169
  subType,
23168
- position,
23170
+ positionOrGridIndex,
23169
23171
  velocity,
23170
23172
  spawner,
23171
23173
  seedOrRNG
23172
23174
  )
23173
23175
  end
23174
- function ____exports.spawnTear(self, tearVariant, subType, position, velocity, spawner, seedOrRNG)
23176
+ function ____exports.spawnTear(self, tearVariant, subType, positionOrGridIndex, velocity, spawner, seedOrRNG)
23175
23177
  if velocity == nil then
23176
23178
  velocity = VectorZero
23177
23179
  end
@@ -23186,7 +23188,7 @@ function ____exports.spawnTear(self, tearVariant, subType, position, velocity, s
23186
23188
  EntityType.TEAR,
23187
23189
  tearVariant,
23188
23190
  subType,
23189
- position,
23191
+ positionOrGridIndex,
23190
23192
  velocity,
23191
23193
  spawner,
23192
23194
  seedOrRNG
@@ -23197,7 +23199,7 @@ function ____exports.spawnTear(self, tearVariant, subType, position, velocity, s
23197
23199
  end
23198
23200
  return tear
23199
23201
  end
23200
- function ____exports.spawnTearWithSeed(self, tearVariant, subType, position, seedOrRNG, velocity, spawner)
23202
+ function ____exports.spawnTearWithSeed(self, tearVariant, subType, positionOrGridIndex, seedOrRNG, velocity, spawner)
23201
23203
  if velocity == nil then
23202
23204
  velocity = VectorZero
23203
23205
  end
@@ -23208,7 +23210,7 @@ function ____exports.spawnTearWithSeed(self, tearVariant, subType, position, see
23208
23210
  nil,
23209
23211
  tearVariant,
23210
23212
  subType,
23211
- position,
23213
+ positionOrGridIndex,
23212
23214
  velocity,
23213
23215
  spawner,
23214
23216
  seedOrRNG
@@ -33729,7 +33731,7 @@ end
33729
33731
  function ____exports.removeAllTrinkets(self, trinketType, cap)
33730
33732
  return removeAllPickups(nil, PickupVariant.TRINKET, trinketType, cap)
33731
33733
  end
33732
- function ____exports.spawnBattery(self, batterySubType, position, velocity, spawner, seedOrRNG)
33734
+ function ____exports.spawnBattery(self, batterySubType, positionOrGridIndex, velocity, spawner, seedOrRNG)
33733
33735
  if velocity == nil then
33734
33736
  velocity = VectorZero
33735
33737
  end
@@ -33743,13 +33745,13 @@ function ____exports.spawnBattery(self, batterySubType, position, velocity, spaw
33743
33745
  nil,
33744
33746
  PickupVariant.LIL_BATTERY,
33745
33747
  batterySubType,
33746
- position,
33748
+ positionOrGridIndex,
33747
33749
  velocity,
33748
33750
  spawner,
33749
33751
  seedOrRNG
33750
33752
  )
33751
33753
  end
33752
- function ____exports.spawnBatteryWithSeed(self, batterySubType, position, seedOrRNG, velocity, spawner)
33754
+ function ____exports.spawnBatteryWithSeed(self, batterySubType, positionOrGridIndex, seedOrRNG, velocity, spawner)
33753
33755
  if velocity == nil then
33754
33756
  velocity = VectorZero
33755
33757
  end
@@ -33759,13 +33761,13 @@ function ____exports.spawnBatteryWithSeed(self, batterySubType, position, seedOr
33759
33761
  return ____exports.spawnBattery(
33760
33762
  nil,
33761
33763
  batterySubType,
33762
- position,
33764
+ positionOrGridIndex,
33763
33765
  velocity,
33764
33766
  spawner,
33765
33767
  seedOrRNG
33766
33768
  )
33767
33769
  end
33768
- function ____exports.spawnBombPickup(self, bombSubType, position, velocity, spawner, seedOrRNG)
33770
+ function ____exports.spawnBombPickup(self, bombSubType, positionOrGridIndex, velocity, spawner, seedOrRNG)
33769
33771
  if velocity == nil then
33770
33772
  velocity = VectorZero
33771
33773
  end
@@ -33779,13 +33781,13 @@ function ____exports.spawnBombPickup(self, bombSubType, position, velocity, spaw
33779
33781
  nil,
33780
33782
  PickupVariant.BOMB,
33781
33783
  bombSubType,
33782
- position,
33784
+ positionOrGridIndex,
33783
33785
  velocity,
33784
33786
  spawner,
33785
33787
  seedOrRNG
33786
33788
  )
33787
33789
  end
33788
- function ____exports.spawnBombPickupWithSeed(self, bombSubType, position, seedOrRNG, velocity, spawner)
33790
+ function ____exports.spawnBombPickupWithSeed(self, bombSubType, positionOrGridIndex, seedOrRNG, velocity, spawner)
33789
33791
  if velocity == nil then
33790
33792
  velocity = VectorZero
33791
33793
  end
@@ -33795,13 +33797,13 @@ function ____exports.spawnBombPickupWithSeed(self, bombSubType, position, seedOr
33795
33797
  return ____exports.spawnBombPickup(
33796
33798
  nil,
33797
33799
  bombSubType,
33798
- position,
33800
+ positionOrGridIndex,
33799
33801
  velocity,
33800
33802
  spawner,
33801
33803
  seedOrRNG
33802
33804
  )
33803
33805
  end
33804
- function ____exports.spawnCard(self, cardType, position, velocity, spawner, seedOrRNG)
33806
+ function ____exports.spawnCard(self, cardType, positionOrGridIndex, velocity, spawner, seedOrRNG)
33805
33807
  if velocity == nil then
33806
33808
  velocity = VectorZero
33807
33809
  end
@@ -33815,13 +33817,13 @@ function ____exports.spawnCard(self, cardType, position, velocity, spawner, seed
33815
33817
  nil,
33816
33818
  PickupVariant.TAROT_CARD,
33817
33819
  cardType,
33818
- position,
33820
+ positionOrGridIndex,
33819
33821
  velocity,
33820
33822
  spawner,
33821
33823
  seedOrRNG
33822
33824
  )
33823
33825
  end
33824
- function ____exports.spawnCardWithSeed(self, cardType, position, seedOrRNG, velocity, spawner)
33826
+ function ____exports.spawnCardWithSeed(self, cardType, positionOrGridIndex, seedOrRNG, velocity, spawner)
33825
33827
  if velocity == nil then
33826
33828
  velocity = VectorZero
33827
33829
  end
@@ -33831,13 +33833,13 @@ function ____exports.spawnCardWithSeed(self, cardType, position, seedOrRNG, velo
33831
33833
  return ____exports.spawnCard(
33832
33834
  nil,
33833
33835
  cardType,
33834
- position,
33836
+ positionOrGridIndex,
33835
33837
  velocity,
33836
33838
  spawner,
33837
33839
  seedOrRNG
33838
33840
  )
33839
33841
  end
33840
- function ____exports.spawnCoin(self, coinSubType, position, velocity, spawner, seedOrRNG)
33842
+ function ____exports.spawnCoin(self, coinSubType, positionOrGridIndex, velocity, spawner, seedOrRNG)
33841
33843
  if velocity == nil then
33842
33844
  velocity = VectorZero
33843
33845
  end
@@ -33851,13 +33853,13 @@ function ____exports.spawnCoin(self, coinSubType, position, velocity, spawner, s
33851
33853
  nil,
33852
33854
  PickupVariant.COIN,
33853
33855
  coinSubType,
33854
- position,
33856
+ positionOrGridIndex,
33855
33857
  velocity,
33856
33858
  spawner,
33857
33859
  seedOrRNG
33858
33860
  )
33859
33861
  end
33860
- function ____exports.spawnCoinWithSeed(self, coinSubType, position, seedOrRNG, velocity, spawner)
33862
+ function ____exports.spawnCoinWithSeed(self, coinSubType, positionOrGridIndex, seedOrRNG, velocity, spawner)
33861
33863
  if velocity == nil then
33862
33864
  velocity = VectorZero
33863
33865
  end
@@ -33867,13 +33869,13 @@ function ____exports.spawnCoinWithSeed(self, coinSubType, position, seedOrRNG, v
33867
33869
  return ____exports.spawnCoin(
33868
33870
  nil,
33869
33871
  coinSubType,
33870
- position,
33872
+ positionOrGridIndex,
33871
33873
  velocity,
33872
33874
  spawner,
33873
33875
  seedOrRNG
33874
33876
  )
33875
33877
  end
33876
- function ____exports.spawnHeart(self, heartSubType, position, velocity, spawner, seedOrRNG)
33878
+ function ____exports.spawnHeart(self, heartSubType, positionOrGridIndex, velocity, spawner, seedOrRNG)
33877
33879
  if velocity == nil then
33878
33880
  velocity = VectorZero
33879
33881
  end
@@ -33887,13 +33889,13 @@ function ____exports.spawnHeart(self, heartSubType, position, velocity, spawner,
33887
33889
  nil,
33888
33890
  PickupVariant.HEART,
33889
33891
  heartSubType,
33890
- position,
33892
+ positionOrGridIndex,
33891
33893
  velocity,
33892
33894
  spawner,
33893
33895
  seedOrRNG
33894
33896
  )
33895
33897
  end
33896
- function ____exports.spawnHeartWithSeed(self, heartSubType, position, seedOrRNG, velocity, spawner)
33898
+ function ____exports.spawnHeartWithSeed(self, heartSubType, positionOrGridIndex, seedOrRNG, velocity, spawner)
33897
33899
  if velocity == nil then
33898
33900
  velocity = VectorZero
33899
33901
  end
@@ -33903,13 +33905,13 @@ function ____exports.spawnHeartWithSeed(self, heartSubType, position, seedOrRNG,
33903
33905
  return ____exports.spawnHeart(
33904
33906
  nil,
33905
33907
  heartSubType,
33906
- position,
33908
+ positionOrGridIndex,
33907
33909
  velocity,
33908
33910
  spawner,
33909
33911
  seedOrRNG
33910
33912
  )
33911
33913
  end
33912
- function ____exports.spawnKey(self, keySubType, position, velocity, spawner, seedOrRNG)
33914
+ function ____exports.spawnKey(self, keySubType, positionOrGridIndex, velocity, spawner, seedOrRNG)
33913
33915
  if velocity == nil then
33914
33916
  velocity = VectorZero
33915
33917
  end
@@ -33923,13 +33925,13 @@ function ____exports.spawnKey(self, keySubType, position, velocity, spawner, see
33923
33925
  nil,
33924
33926
  PickupVariant.KEY,
33925
33927
  keySubType,
33926
- position,
33928
+ positionOrGridIndex,
33927
33929
  velocity,
33928
33930
  spawner,
33929
33931
  seedOrRNG
33930
33932
  )
33931
33933
  end
33932
- function ____exports.spawnKeyWithSeed(self, keySubType, position, seedOrRNG, velocity, spawner)
33934
+ function ____exports.spawnKeyWithSeed(self, keySubType, positionOrGridIndex, seedOrRNG, velocity, spawner)
33933
33935
  if velocity == nil then
33934
33936
  velocity = VectorZero
33935
33937
  end
@@ -33939,13 +33941,13 @@ function ____exports.spawnKeyWithSeed(self, keySubType, position, seedOrRNG, vel
33939
33941
  return ____exports.spawnKey(
33940
33942
  nil,
33941
33943
  keySubType,
33942
- position,
33944
+ positionOrGridIndex,
33943
33945
  velocity,
33944
33946
  spawner,
33945
33947
  seedOrRNG
33946
33948
  )
33947
33949
  end
33948
- function ____exports.spawnPill(self, pillColor, position, velocity, spawner, seedOrRNG)
33950
+ function ____exports.spawnPill(self, pillColor, positionOrGridIndex, velocity, spawner, seedOrRNG)
33949
33951
  if velocity == nil then
33950
33952
  velocity = VectorZero
33951
33953
  end
@@ -33959,13 +33961,13 @@ function ____exports.spawnPill(self, pillColor, position, velocity, spawner, see
33959
33961
  nil,
33960
33962
  PickupVariant.PILL,
33961
33963
  pillColor,
33962
- position,
33964
+ positionOrGridIndex,
33963
33965
  velocity,
33964
33966
  spawner,
33965
33967
  seedOrRNG
33966
33968
  )
33967
33969
  end
33968
- function ____exports.spawnPillWithSeed(self, pillColor, position, seedOrRNG, velocity, spawner)
33970
+ function ____exports.spawnPillWithSeed(self, pillColor, positionOrGridIndex, seedOrRNG, velocity, spawner)
33969
33971
  if velocity == nil then
33970
33972
  velocity = VectorZero
33971
33973
  end
@@ -33975,13 +33977,13 @@ function ____exports.spawnPillWithSeed(self, pillColor, position, seedOrRNG, vel
33975
33977
  return ____exports.spawnPill(
33976
33978
  nil,
33977
33979
  pillColor,
33978
- position,
33980
+ positionOrGridIndex,
33979
33981
  velocity,
33980
33982
  spawner,
33981
33983
  seedOrRNG
33982
33984
  )
33983
33985
  end
33984
- function ____exports.spawnSack(self, sackSubType, position, velocity, spawner, seedOrRNG)
33986
+ function ____exports.spawnSack(self, sackSubType, positionOrGridIndex, velocity, spawner, seedOrRNG)
33985
33987
  if velocity == nil then
33986
33988
  velocity = VectorZero
33987
33989
  end
@@ -33995,13 +33997,13 @@ function ____exports.spawnSack(self, sackSubType, position, velocity, spawner, s
33995
33997
  nil,
33996
33998
  PickupVariant.SACK,
33997
33999
  sackSubType,
33998
- position,
34000
+ positionOrGridIndex,
33999
34001
  velocity,
34000
34002
  spawner,
34001
34003
  seedOrRNG
34002
34004
  )
34003
34005
  end
34004
- function ____exports.spawnSackWithSeed(self, sackSubType, position, seedOrRNG, velocity, spawner)
34006
+ function ____exports.spawnSackWithSeed(self, sackSubType, positionOrGridIndex, seedOrRNG, velocity, spawner)
34005
34007
  if velocity == nil then
34006
34008
  velocity = VectorZero
34007
34009
  end
@@ -34011,13 +34013,13 @@ function ____exports.spawnSackWithSeed(self, sackSubType, position, seedOrRNG, v
34011
34013
  return ____exports.spawnSack(
34012
34014
  nil,
34013
34015
  sackSubType,
34014
- position,
34016
+ positionOrGridIndex,
34015
34017
  velocity,
34016
34018
  spawner,
34017
34019
  seedOrRNG
34018
34020
  )
34019
34021
  end
34020
- function ____exports.spawnTrinket(self, trinketType, position, velocity, spawner, seedOrRNG)
34022
+ function ____exports.spawnTrinket(self, trinketType, positionOrGridIndex, velocity, spawner, seedOrRNG)
34021
34023
  if velocity == nil then
34022
34024
  velocity = VectorZero
34023
34025
  end
@@ -34031,13 +34033,13 @@ function ____exports.spawnTrinket(self, trinketType, position, velocity, spawner
34031
34033
  nil,
34032
34034
  PickupVariant.TRINKET,
34033
34035
  trinketType,
34034
- position,
34036
+ positionOrGridIndex,
34035
34037
  velocity,
34036
34038
  spawner,
34037
34039
  seedOrRNG
34038
34040
  )
34039
34041
  end
34040
- function ____exports.spawnTrinketWithSeed(self, trinketType, position, seedOrRNG, velocity, spawner)
34042
+ function ____exports.spawnTrinketWithSeed(self, trinketType, positionOrGridIndex, seedOrRNG, velocity, spawner)
34041
34043
  if velocity == nil then
34042
34044
  velocity = VectorZero
34043
34045
  end
@@ -34047,7 +34049,7 @@ function ____exports.spawnTrinketWithSeed(self, trinketType, position, seedOrRNG
34047
34049
  return ____exports.spawnTrinket(
34048
34050
  nil,
34049
34051
  trinketType,
34050
- position,
34052
+ positionOrGridIndex,
34051
34053
  velocity,
34052
34054
  spawner,
34053
34055
  seedOrRNG
@@ -38526,7 +38528,7 @@ end
38526
38528
  function ____exports.isSin(self, npc)
38527
38529
  return SIN_ENTITY_TYPES_SET:has(npc.Type)
38528
38530
  end
38529
- function ____exports.spawnBoss(self, entityType, variant, subType, position, velocity, spawner, seedOrRNG, numSegments)
38531
+ function ____exports.spawnBoss(self, entityType, variant, subType, positionOrGridIndex, velocity, spawner, seedOrRNG, numSegments)
38530
38532
  if velocity == nil then
38531
38533
  velocity = VectorZero
38532
38534
  end
@@ -38542,7 +38544,7 @@ function ____exports.spawnBoss(self, entityType, variant, subType, position, vel
38542
38544
  entityType,
38543
38545
  variant,
38544
38546
  subType,
38545
- position,
38547
+ positionOrGridIndex,
38546
38548
  velocity,
38547
38549
  spawner,
38548
38550
  seed
@@ -38559,7 +38561,7 @@ function ____exports.spawnBoss(self, entityType, variant, subType, position, vel
38559
38561
  entityType,
38560
38562
  variant,
38561
38563
  subType,
38562
- position,
38564
+ positionOrGridIndex,
38563
38565
  velocity,
38564
38566
  spawner,
38565
38567
  seed
@@ -38569,7 +38571,7 @@ function ____exports.spawnBoss(self, entityType, variant, subType, position, vel
38569
38571
  end
38570
38572
  return npc
38571
38573
  end
38572
- function ____exports.spawnBossWithSeed(self, entityType, variant, subType, position, seedOrRNG, velocity, spawner, numSegments)
38574
+ function ____exports.spawnBossWithSeed(self, entityType, variant, subType, positionOrGridIndex, seedOrRNG, velocity, spawner, numSegments)
38573
38575
  if velocity == nil then
38574
38576
  velocity = VectorZero
38575
38577
  end
@@ -38582,7 +38584,7 @@ function ____exports.spawnBossWithSeed(self, entityType, variant, subType, posit
38582
38584
  entityType,
38583
38585
  variant,
38584
38586
  subType,
38585
- position,
38587
+ positionOrGridIndex,
38586
38588
  velocity,
38587
38589
  spawner,
38588
38590
  seed,
@@ -41383,7 +41385,7 @@ local anyPlayerIs = ____players.anyPlayerIs
41383
41385
  local ____rng = require("src.functions.rng")
41384
41386
  local getRandomSeed = ____rng.getRandomSeed
41385
41387
  local isRNG = ____rng.isRNG
41386
- function ____exports.spawnCollectibleUnsafe(self, collectibleType, position, seedOrRNG, options, forceFreeItem, spawner)
41388
+ function ____exports.spawnCollectibleUnsafe(self, collectibleType, positionOrGridIndex, seedOrRNG, options, forceFreeItem, spawner)
41387
41389
  if seedOrRNG == nil then
41388
41390
  seedOrRNG = getRandomSeed(nil)
41389
41391
  end
@@ -41398,7 +41400,7 @@ function ____exports.spawnCollectibleUnsafe(self, collectibleType, position, see
41398
41400
  nil,
41399
41401
  PickupVariant.COLLECTIBLE,
41400
41402
  collectibleType,
41401
- position,
41403
+ positionOrGridIndex,
41402
41404
  seed,
41403
41405
  VectorZero,
41404
41406
  spawner
@@ -41412,14 +41414,14 @@ function ____exports.spawnCollectibleUnsafe(self, collectibleType, position, see
41412
41414
  end
41413
41415
  return collectible
41414
41416
  end
41415
- function ____exports.spawnEmptyCollectible(self, position, seedOrRNG)
41417
+ function ____exports.spawnEmptyCollectible(self, positionOrGridIndex, seedOrRNG)
41416
41418
  if seedOrRNG == nil then
41417
41419
  seedOrRNG = getRandomSeed(nil)
41418
41420
  end
41419
41421
  local collectible = ____exports.spawnCollectibleUnsafe(
41420
41422
  nil,
41421
41423
  CollectibleType.SAD_ONION,
41422
- position,
41424
+ positionOrGridIndex,
41423
41425
  seedOrRNG,
41424
41426
  false,
41425
41427
  true
@@ -41527,7 +41529,7 @@ function SpawnCollectible.prototype.____constructor(self, preventCollectibleRota
41527
41529
  self.featuresUsed = {ISCFeature.PREVENT_COLLECTIBLE_ROTATION}
41528
41530
  self.preventCollectibleRotation = preventCollectibleRotation
41529
41531
  end
41530
- function SpawnCollectible.prototype.spawnCollectible(self, collectibleType, position, seedOrRNG, options, forceFreeItem, spawner)
41532
+ function SpawnCollectible.prototype.spawnCollectible(self, collectibleType, positionOrGridIndex, seedOrRNG, options, forceFreeItem, spawner)
41531
41533
  if seedOrRNG == nil then
41532
41534
  seedOrRNG = getRandomSeed(nil)
41533
41535
  end
@@ -41540,7 +41542,7 @@ function SpawnCollectible.prototype.spawnCollectible(self, collectibleType, posi
41540
41542
  local collectible = spawnCollectibleUnsafe(
41541
41543
  nil,
41542
41544
  collectibleType,
41543
- position,
41545
+ positionOrGridIndex,
41544
41546
  seedOrRNG,
41545
41547
  options,
41546
41548
  forceFreeItem,
@@ -41551,7 +41553,7 @@ function SpawnCollectible.prototype.spawnCollectible(self, collectibleType, posi
41551
41553
  end
41552
41554
  return collectible
41553
41555
  end
41554
- function SpawnCollectible.prototype.spawnCollectibleFromPool(self, itemPoolType, position, seedOrRNG, options, forceFreeItem, spawner)
41556
+ function SpawnCollectible.prototype.spawnCollectibleFromPool(self, itemPoolType, positionOrGridIndex, seedOrRNG, options, forceFreeItem, spawner)
41555
41557
  if seedOrRNG == nil then
41556
41558
  seedOrRNG = getRandomSeed(nil)
41557
41559
  end
@@ -41565,7 +41567,7 @@ function SpawnCollectible.prototype.spawnCollectibleFromPool(self, itemPoolType,
41565
41567
  local collectibleType = itemPool:GetCollectible(itemPoolType)
41566
41568
  return self:spawnCollectible(
41567
41569
  collectibleType,
41568
- position,
41570
+ positionOrGridIndex,
41569
41571
  seedOrRNG,
41570
41572
  options,
41571
41573
  forceFreeItem,
@@ -47992,6 +47994,7 @@ local ____utils = require("src.functions.utils")
47992
47994
  local ____repeat = ____utils["repeat"]
47993
47995
  local ____vector = require("src.functions.vector")
47994
47996
  local getRandomVector = ____vector.getRandomVector
47997
+ local isVector = ____vector.isVector
47995
47998
  local ____Feature = require("src.classes.private.Feature")
47996
47999
  local Feature = ____Feature.Feature
47997
48000
  local ROCK_ALT_CHANCES = {NOTHING = 0.68, BASIC_DROP = 0.0967, TRINKET = 0.025, COLLECTIBLE = 0.005}
@@ -48009,10 +48012,12 @@ function SpawnRockAltRewards.prototype.____constructor(self, itemPoolDetection)
48009
48012
  self.featuresUsed = {ISCFeature.ITEM_POOL_DETECTION}
48010
48013
  self.itemPoolDetection = itemPoolDetection
48011
48014
  end
48012
- function SpawnRockAltRewards.prototype.spawnRockAltReward(self, position, rockAltType, seedOrRNG)
48015
+ function SpawnRockAltRewards.prototype.spawnRockAltReward(self, positionOrGridIndex, rockAltType, seedOrRNG)
48013
48016
  if seedOrRNG == nil then
48014
48017
  seedOrRNG = getRandomSeed(nil)
48015
48018
  end
48019
+ local room = game:GetRoom()
48020
+ local position = isVector(nil, positionOrGridIndex) and positionOrGridIndex or room:GetGridPosition(positionOrGridIndex)
48016
48021
  local rng = isRNG(nil, seedOrRNG) and seedOrRNG or newRNG(nil, seedOrRNG)
48017
48022
  repeat
48018
48023
  local ____switch4 = rockAltType