isaacscript-common 8.4.5 → 8.6.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 (89) hide show
  1. package/dist/callbacks/postCursedTeleport.lua +4 -4
  2. package/dist/callbacks/postPlayerFatalDamage.lua +7 -7
  3. package/dist/callbacks/postSacrifice.lua +2 -2
  4. package/dist/callbacks/postTrinketBreak.lua +2 -2
  5. package/dist/callbacks/subscriptions/postPlayerFatalDamage.d.ts +2 -2
  6. package/dist/callbacks/subscriptions/postPlayerFatalDamage.d.ts.map +1 -1
  7. package/dist/callbacks/subscriptions/postPlayerFatalDamage.lua +4 -4
  8. package/dist/features/characterStats.d.ts.map +1 -1
  9. package/dist/features/characterStats.lua +1 -2
  10. package/dist/features/customGridEntity.d.ts.map +1 -1
  11. package/dist/features/customGridEntity.lua +3 -36
  12. package/dist/features/extraConsoleCommands/init.d.ts.map +1 -1
  13. package/dist/features/extraConsoleCommands/init.lua +1 -1
  14. package/dist/features/firstLast.d.ts +6 -3
  15. package/dist/features/firstLast.d.ts.map +1 -1
  16. package/dist/features/firstLast.lua +6 -3
  17. package/dist/features/playerInventory.d.ts +11 -3
  18. package/dist/features/playerInventory.d.ts.map +1 -1
  19. package/dist/features/playerInventory.lua +14 -3
  20. package/dist/functions/bosses.d.ts +8 -2
  21. package/dist/functions/bosses.d.ts.map +1 -1
  22. package/dist/functions/bosses.lua +14 -6
  23. package/dist/functions/collectibleCacheFlag.d.ts +1 -1
  24. package/dist/functions/collectibleCacheFlag.d.ts.map +1 -1
  25. package/dist/functions/collectibleCacheFlag.lua +1 -2
  26. package/dist/functions/collectibleSet.lua +32 -32
  27. package/dist/functions/collectibleTag.d.ts +1 -1
  28. package/dist/functions/collectibleTag.d.ts.map +1 -1
  29. package/dist/functions/collectibleTag.lua +1 -3
  30. package/dist/functions/eden.d.ts +1 -1
  31. package/dist/functions/eden.d.ts.map +1 -1
  32. package/dist/functions/eden.lua +1 -2
  33. package/dist/functions/flag.d.ts +1 -1
  34. package/dist/functions/flag.lua +1 -1
  35. package/dist/functions/flying.d.ts +1 -1
  36. package/dist/functions/flying.d.ts.map +1 -1
  37. package/dist/functions/flying.lua +5 -2
  38. package/dist/functions/input.d.ts +2 -2
  39. package/dist/functions/input.d.ts.map +1 -1
  40. package/dist/functions/input.lua +2 -4
  41. package/dist/functions/playerHealth.d.ts +93 -0
  42. package/dist/functions/playerHealth.d.ts.map +1 -1
  43. package/dist/functions/playerHealth.lua +216 -33
  44. package/dist/functions/players.d.ts +1 -111
  45. package/dist/functions/players.d.ts.map +1 -1
  46. package/dist/functions/players.lua +20 -279
  47. package/dist/functions/revive.d.ts +1 -1
  48. package/dist/functions/revive.d.ts.map +1 -1
  49. package/dist/functions/revive.lua +5 -4
  50. package/dist/functions/stats.d.ts +16 -0
  51. package/dist/functions/stats.d.ts.map +1 -1
  52. package/dist/functions/stats.lua +78 -0
  53. package/dist/functions/transformations.d.ts +1 -1
  54. package/dist/functions/transformations.d.ts.map +1 -1
  55. package/dist/functions/trinketCacheFlag.d.ts +1 -1
  56. package/dist/functions/trinketCacheFlag.d.ts.map +1 -1
  57. package/dist/functions/trinketCacheFlag.lua +1 -3
  58. package/dist/functions/trinketSet.lua +32 -32
  59. package/dist/index.d.ts +37 -36
  60. package/dist/sets/bossSets.d.ts +1 -0
  61. package/dist/sets/bossSets.d.ts.map +1 -1
  62. package/dist/sets/bossSets.lua +23 -0
  63. package/package.json +2 -2
  64. package/src/callbacks/postCursedTeleport.ts +7 -7
  65. package/src/callbacks/postPlayerFatalDamage.ts +9 -16
  66. package/src/callbacks/postSacrifice.ts +5 -5
  67. package/src/callbacks/postTrinketBreak.ts +5 -5
  68. package/src/callbacks/subscriptions/postPlayerFatalDamage.ts +9 -9
  69. package/src/features/characterStats.ts +1 -2
  70. package/src/features/customGridEntity.ts +0 -55
  71. package/src/features/extraConsoleCommands/init.ts +8 -1
  72. package/src/features/firstLast.ts +6 -3
  73. package/src/features/playerInventory.ts +24 -4
  74. package/src/functions/bosses.ts +18 -6
  75. package/src/functions/collectibleCacheFlag.ts +3 -3
  76. package/src/functions/collectibleSet.ts +32 -32
  77. package/src/functions/collectibleTag.ts +2 -3
  78. package/src/functions/eden.ts +3 -3
  79. package/src/functions/flag.ts +1 -1
  80. package/src/functions/flying.ts +4 -4
  81. package/src/functions/input.ts +4 -5
  82. package/src/functions/playerHealth.ts +269 -7
  83. package/src/functions/players.ts +1 -348
  84. package/src/functions/revive.ts +6 -10
  85. package/src/functions/stats.ts +75 -0
  86. package/src/functions/transformations.ts +1 -1
  87. package/src/functions/trinketCacheFlag.ts +2 -3
  88. package/src/functions/trinketSet.ts +32 -32
  89. package/src/sets/bossSets.ts +33 -0
@@ -28,17 +28,17 @@ local postCursedTeleportHasSubscriptions = ____postCursedTeleport.postCursedTele
28
28
  function hasSubscriptions(self)
29
29
  return postCursedTeleportHasSubscriptions(nil)
30
30
  end
31
- function entityTakeDmgPlayer(self, tookDamage, _damageAmount, damageFlags, _damageSource, _damageCountdownFrames)
31
+ function entityTakeDmgPlayer(self, entity, _amount, damageFlags, _source, _countdownFrames)
32
32
  if not hasSubscriptions(nil) then
33
33
  return nil
34
34
  end
35
35
  incrementNumSacrifices(nil, damageFlags)
36
- setDamageFrame(nil, tookDamage, damageFlags)
36
+ setDamageFrame(nil, entity, damageFlags)
37
37
  return nil
38
38
  end
39
- function setDamageFrame(self, tookDamage, damageFlags)
39
+ function setDamageFrame(self, entity, damageFlags)
40
40
  local gameFrameCount = game:GetFrameCount()
41
- local player = tookDamage:ToPlayer()
41
+ local player = entity:ToPlayer()
42
42
  if player == nil then
43
43
  return
44
44
  end
@@ -29,11 +29,11 @@ local postPlayerFatalDamageHasSubscriptions = ____postPlayerFatalDamage.postPlay
29
29
  function hasSubscriptions(self)
30
30
  return postPlayerFatalDamageHasSubscriptions(nil)
31
31
  end
32
- function entityTakeDmgPlayer(self, tookDamage, damageAmount, damageFlags, damageSource, damageCountdownFrames)
32
+ function entityTakeDmgPlayer(self, entity, amount, damageFlags, source, countdownFrames)
33
33
  if not hasSubscriptions(nil) then
34
34
  return nil
35
35
  end
36
- local player = tookDamage:ToPlayer()
36
+ local player = entity:ToPlayer()
37
37
  if player == nil then
38
38
  return nil
39
39
  end
@@ -49,8 +49,8 @@ function entityTakeDmgPlayer(self, tookDamage, damageAmount, damageFlags, damage
49
49
  if not isDamageToPlayerFatal(
50
50
  nil,
51
51
  player,
52
- damageAmount,
53
- damageSource,
52
+ amount,
53
+ source,
54
54
  lastDamageGameFrame
55
55
  ) then
56
56
  return nil
@@ -58,10 +58,10 @@ function entityTakeDmgPlayer(self, tookDamage, damageAmount, damageFlags, damage
58
58
  local shouldSustainDeath = postPlayerFatalDamageFire(
59
59
  nil,
60
60
  player,
61
- damageAmount,
61
+ amount,
62
62
  damageFlags,
63
- damageSource,
64
- damageCountdownFrames
63
+ source,
64
+ countdownFrames
65
65
  )
66
66
  if shouldSustainDeath ~= nil then
67
67
  return shouldSustainDeath
@@ -17,11 +17,11 @@ local postSacrificeHasSubscriptions = ____postSacrifice.postSacrificeHasSubscrip
17
17
  function hasSubscriptions(self)
18
18
  return postSacrificeHasSubscriptions(nil)
19
19
  end
20
- function entityTakeDmgPlayer(self, tookDamage, _damageAmount, damageFlags, _damageSource, _damageCountdownFrames)
20
+ function entityTakeDmgPlayer(self, entity, _amount, damageFlags, _source, _countdownFrames)
21
21
  if not hasSubscriptions(nil) then
22
22
  return nil
23
23
  end
24
- local player = tookDamage:ToPlayer()
24
+ local player = entity:ToPlayer()
25
25
  if player == nil then
26
26
  return nil
27
27
  end
@@ -22,11 +22,11 @@ local postTrinketBreakHasSubscriptions = ____postTrinketBreak.postTrinketBreakHa
22
22
  function hasSubscriptions(self)
23
23
  return postTrinketBreakHasSubscriptions(nil)
24
24
  end
25
- function entityTakeDmgPlayer(self, tookDamage, _damageAmount, _damageFlags, _damageSource, _damageCountdownFrames)
25
+ function entityTakeDmgPlayer(self, entity, _amount, _damageFlags, _source, _countdownFrames)
26
26
  if not hasSubscriptions(nil) then
27
27
  return nil
28
28
  end
29
- local player = tookDamage:ToPlayer()
29
+ local player = entity:ToPlayer()
30
30
  if player == nil then
31
31
  return nil
32
32
  end
@@ -1,10 +1,10 @@
1
1
  import { DamageFlag, PlayerType, PlayerVariant } from "isaac-typescript-definitions";
2
2
  export declare type PostPlayerFatalDamageRegisterParameters = [
3
- callback: (player: EntityPlayer, damageAmount: float, damageFlags: BitFlags<DamageFlag>, damageSource: EntityRef, damageCountdownFrames: int) => boolean | undefined,
3
+ callback: (player: EntityPlayer, amount: float, damageFlags: BitFlags<DamageFlag>, source: EntityRef, countdownFrames: int) => boolean | undefined,
4
4
  playerVariant?: PlayerVariant,
5
5
  character?: PlayerType
6
6
  ];
7
7
  export declare function postPlayerFatalDamageHasSubscriptions(): boolean;
8
8
  export declare function postPlayerFatalDamageRegister(...args: PostPlayerFatalDamageRegisterParameters): void;
9
- export declare function postPlayerFatalDamageFire(player: EntityPlayer, damageAmount: float, damageFlags: BitFlags<DamageFlag>, damageSource: EntityRef, damageCountdownFrames: int): boolean | undefined;
9
+ export declare function postPlayerFatalDamageFire(player: EntityPlayer, amount: float, damageFlags: BitFlags<DamageFlag>, source: EntityRef, countdownFrames: int): boolean | undefined;
10
10
  //# sourceMappingURL=postPlayerFatalDamage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"postPlayerFatalDamage.d.ts","sourceRoot":"","sources":["../../../src/callbacks/subscriptions/postPlayerFatalDamage.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,UAAU,EACV,aAAa,EACd,MAAM,8BAA8B,CAAC;AAEtC,oBAAY,uCAAuC,GAAG;IACpD,QAAQ,EAAE,CACR,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,KAAK,EACnB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,EACjC,YAAY,EAAE,SAAS,EACvB,qBAAqB,EAAE,GAAG,KACvB,OAAO,GAAG,SAAS;IACxB,aAAa,CAAC,EAAE,aAAa;IAC7B,SAAS,CAAC,EAAE,UAAU;CACvB,CAAC;AAIF,wBAAgB,qCAAqC,IAAI,OAAO,CAE/D;AAED,wBAAgB,6BAA6B,CAC3C,GAAG,IAAI,EAAE,uCAAuC,GAC/C,IAAI,CAEN;AAED,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,KAAK,EACnB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,EACjC,YAAY,EAAE,SAAS,EACvB,qBAAqB,EAAE,GAAG,GACzB,OAAO,GAAG,SAAS,CA4BrB"}
1
+ {"version":3,"file":"postPlayerFatalDamage.d.ts","sourceRoot":"","sources":["../../../src/callbacks/subscriptions/postPlayerFatalDamage.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,UAAU,EACV,aAAa,EACd,MAAM,8BAA8B,CAAC;AAEtC,oBAAY,uCAAuC,GAAG;IACpD,QAAQ,EAAE,CACR,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,KAAK,EACb,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,EACjC,MAAM,EAAE,SAAS,EACjB,eAAe,EAAE,GAAG,KACjB,OAAO,GAAG,SAAS;IACxB,aAAa,CAAC,EAAE,aAAa;IAC7B,SAAS,CAAC,EAAE,UAAU;CACvB,CAAC;AAIF,wBAAgB,qCAAqC,IAAI,OAAO,CAE/D;AAED,wBAAgB,6BAA6B,CAC3C,GAAG,IAAI,EAAE,uCAAuC,GAC/C,IAAI,CAEN;AAED,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,KAAK,EACb,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,EACjC,MAAM,EAAE,SAAS,EACjB,eAAe,EAAE,GAAG,GACnB,OAAO,GAAG,SAAS,CA4BrB"}
@@ -7,7 +7,7 @@ function ____exports.postPlayerFatalDamageRegister(self, ...)
7
7
  local args = {...}
8
8
  subscriptions[#subscriptions + 1] = args
9
9
  end
10
- function ____exports.postPlayerFatalDamageFire(self, player, damageAmount, damageFlags, damageSource, damageCountdownFrames)
10
+ function ____exports.postPlayerFatalDamageFire(self, player, amount, damageFlags, source, countdownFrames)
11
11
  local character = player:GetPlayerType()
12
12
  for ____, ____value in ipairs(subscriptions) do
13
13
  local callback = ____value[1]
@@ -23,10 +23,10 @@ function ____exports.postPlayerFatalDamageFire(self, player, damageAmount, damag
23
23
  local shouldSustainDeath = callback(
24
24
  nil,
25
25
  player,
26
- damageAmount,
26
+ amount,
27
27
  damageFlags,
28
- damageSource,
29
- damageCountdownFrames
28
+ source,
29
+ countdownFrames
30
30
  )
31
31
  if shouldSustainDeath ~= nil then
32
32
  return shouldSustainDeath
@@ -1 +1 @@
1
- {"version":3,"file":"characterStats.d.ts","sourceRoot":"","sources":["../../src/features/characterStats.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,SAAS,EAET,UAAU,EACX,MAAM,8BAA8B,CAAC;AAiCtC;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,GAC/D,IAAI,CAGN"}
1
+ {"version":3,"file":"characterStats.d.ts","sourceRoot":"","sources":["../../src/features/characterStats.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,SAAS,EAET,UAAU,EACX,MAAM,8BAA8B,CAAC;AAgCtC;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,GAC/D,IAAI,CAGN"}
@@ -7,9 +7,8 @@ local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitio
7
7
  local ModCallback = ____isaac_2Dtypescript_2Ddefinitions.ModCallback
8
8
  local ____featuresInitialized = require("featuresInitialized")
9
9
  local errorIfFeaturesNotInitialized = ____featuresInitialized.errorIfFeaturesNotInitialized
10
- local ____players = require("functions.players")
11
- local addStat = ____players.addStat
12
10
  local ____stats = require("functions.stats")
11
+ local addStat = ____stats.addStat
13
12
  local getDefaultPlayerStat = ____stats.getDefaultPlayerStat
14
13
  function evaluateCache(self, player, cacheFlag)
15
14
  local character = player:GetPlayerType()
@@ -1 +1 @@
1
- {"version":3,"file":"customGridEntity.d.ts","sourceRoot":"","sources":["../../src/features/customGridEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,kBAAkB,EAClB,cAAc,EAGf,MAAM,8BAA8B,CAAC;AAkBtC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AA4K1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,qBAAqB,CACnC,oBAAoB,EAAE,cAAc,EACpC,mBAAmB,EAAE,GAAG,GAAG,MAAM,EACjC,kBAAkB,CAAC,EAAE,kBAAkB,EACvC,QAAQ,CAAC,EAAE,MAAM,EACjB,gBAAgB,CAAC,EAAE,MAAM,EACzB,kBAAkB,iBAA4B,EAC9C,qBAAqB,SAAI,GACxB,UAAU,CA8CZ;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,CACpC,+BAA+B,EAAE,GAAG,GAAG,MAAM,GAAG,UAAU,EAC1D,UAAU,UAAO,GAChB,UAAU,GAAG,SAAS,CAuCxB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,KAAK,CAC5C;IAAC,UAAU,EAAE,UAAU;IAAE,IAAI,EAAE,oBAAoB;CAAC,CACrD,CAqBA;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,qBAAqB,EAAE,UAAU,GAAG,GAAG,GACtC,cAAc,GAAG,SAAS,CAsB5B;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,qBAAqB,EAAE,UAAU,GAAG,GAAG,GACtC,OAAO,CAOT"}
1
+ {"version":3,"file":"customGridEntity.d.ts","sourceRoot":"","sources":["../../src/features/customGridEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,kBAAkB,EAClB,cAAc,EAGf,MAAM,8BAA8B,CAAC;AAgBtC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAyH1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,qBAAqB,CACnC,oBAAoB,EAAE,cAAc,EACpC,mBAAmB,EAAE,GAAG,GAAG,MAAM,EACjC,kBAAkB,CAAC,EAAE,kBAAkB,EACvC,QAAQ,CAAC,EAAE,MAAM,EACjB,gBAAgB,CAAC,EAAE,MAAM,EACzB,kBAAkB,iBAA4B,EAC9C,qBAAqB,SAAI,GACxB,UAAU,CA8CZ;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,CACpC,+BAA+B,EAAE,GAAG,GAAG,MAAM,GAAG,UAAU,EAC1D,UAAU,UAAO,GAChB,UAAU,GAAG,SAAS,CAuCxB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,KAAK,CAC5C;IAAC,UAAU,EAAE,UAAU;IAAE,IAAI,EAAE,oBAAoB;CAAC,CACrD,CAqBA;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,qBAAqB,EAAE,UAAU,GAAG,GAAG,GACtC,cAAc,GAAG,SAAS,CAsB5B;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,qBAAqB,EAAE,UAAU,GAAG,GAAG,GACtC,OAAO,CAOT"}
@@ -4,16 +4,12 @@ local __TS__New = ____lualib.__TS__New
4
4
  local Set = ____lualib.Set
5
5
  local __TS__Iterator = ____lualib.__TS__Iterator
6
6
  local ____exports = {}
7
- local entityTakeDmgGenericProp, preUseItemWeNeedToGoDeeper, postNewRoomReordered, v
7
+ local preUseItemWeNeedToGoDeeper, postNewRoomReordered, v
8
8
  local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
9
9
  local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
10
- local DamageFlag = ____isaac_2Dtypescript_2Ddefinitions.DamageFlag
11
- local EntityType = ____isaac_2Dtypescript_2Ddefinitions.EntityType
12
10
  local GridCollisionClass = ____isaac_2Dtypescript_2Ddefinitions.GridCollisionClass
13
11
  local GridEntityType = ____isaac_2Dtypescript_2Ddefinitions.GridEntityType
14
12
  local ModCallback = ____isaac_2Dtypescript_2Ddefinitions.ModCallback
15
- local ____postGridEntityCustomBroken = require("callbacks.subscriptions.postGridEntityCustomBroken")
16
- local postGridEntityCustomBrokenFire = ____postGridEntityCustomBroken.postGridEntityCustomBrokenFire
17
13
  local ____DefaultMap = require("classes.DefaultMap")
18
14
  local DefaultMap = ____DefaultMap.DefaultMap
19
15
  local ____cachedClasses = require("core.cachedClasses")
@@ -23,8 +19,6 @@ local ModCallbackCustom = ____ModCallbackCustom.ModCallbackCustom
23
19
  local ____featuresInitialized = require("featuresInitialized")
24
20
  local areFeaturesInitialized = ____featuresInitialized.areFeaturesInitialized
25
21
  local errorIfFeaturesNotInitialized = ____featuresInitialized.errorIfFeaturesNotInitialized
26
- local ____flag = require("functions.flag")
27
- local hasFlag = ____flag.hasFlag
28
22
  local ____gridEntities = require("functions.gridEntities")
29
23
  local removeGridEntity = ____gridEntities.removeGridEntity
30
24
  local spawnGridEntityWithVariant = ____gridEntities.spawnGridEntityWithVariant
@@ -38,32 +32,6 @@ local ____runInNFrames = require("features.runInNFrames")
38
32
  local runNextGameFrame = ____runInNFrames.runNextGameFrame
39
33
  local ____exports = require("features.saveDataManager.exports")
40
34
  local saveDataManager = ____exports.saveDataManager
41
- function entityTakeDmgGenericProp(self, tookDamage, _damageAmount, damageFlags, _damageSource, _damageCountdownFrames)
42
- local ptrHash = GetPtrHash(tookDamage)
43
- if not v.room.genericPropPtrHashes:has(ptrHash) then
44
- return nil
45
- end
46
- if not hasFlag(nil, damageFlags, DamageFlag.EXPLOSION) then
47
- return false
48
- end
49
- local room = game:GetRoom()
50
- local roomListIndex = getRoomListIndex(nil)
51
- local roomCustomGridEntities = v.level.customGridEntities:get(roomListIndex)
52
- if roomCustomGridEntities == nil then
53
- return false
54
- end
55
- local gridIndex = room:GetGridIndex(tookDamage.Position)
56
- local data = roomCustomGridEntities:get(gridIndex)
57
- if data == nil then
58
- return false
59
- end
60
- local gridEntity = room:GetGridEntity(gridIndex)
61
- if gridEntity == nil then
62
- error("Failed to get the grid entity for a custom grid entity that broke at grid index: " .. tostring(gridIndex))
63
- end
64
- postGridEntityCustomBrokenFire(nil, gridEntity, data.gridEntityTypeCustom)
65
- return false
66
- end
67
35
  function preUseItemWeNeedToGoDeeper(self, _collectibleType, _rng, player, _useFlags, _activeSlot, _customVarData)
68
36
  local room = game:GetRoom()
69
37
  local roomListIndex = getRoomListIndex(nil)
@@ -113,7 +81,7 @@ function postNewRoomReordered(self)
113
81
  local decoration = room:GetGridEntity(gridIndex)
114
82
  if decoration == nil then
115
83
  roomCustomGridEntities:delete(gridIndex)
116
- goto __continue19
84
+ goto __continue13
117
85
  end
118
86
  if data.anm2Path ~= nil then
119
87
  local sprite = decoration:GetSprite()
@@ -122,7 +90,7 @@ function postNewRoomReordered(self)
122
90
  sprite:Play(animationToPlay, true)
123
91
  end
124
92
  end
125
- ::__continue19::
93
+ ::__continue13::
126
94
  end
127
95
  end
128
96
  local FEATURE_NAME = "customGridEntity"
@@ -140,7 +108,6 @@ v = {
140
108
  -- @internal
141
109
  function ____exports.customGridEntityInit(self, mod)
142
110
  saveDataManager(nil, FEATURE_NAME, v)
143
- mod:AddCallback(ModCallback.ENTITY_TAKE_DMG, entityTakeDmgGenericProp, EntityType.GENERIC_PROP)
144
111
  mod:AddCallback(ModCallback.PRE_USE_ITEM, preUseItemWeNeedToGoDeeper, CollectibleType.WE_NEED_TO_GO_DEEPER)
145
112
  mod:AddCallbackCustom(ModCallbackCustom.POST_NEW_ROOM_REORDERED, postNewRoomReordered)
146
113
  end
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/features/extraConsoleCommands/init.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAWxD,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,CAK/D"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/features/extraConsoleCommands/init.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAWxD,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,CAK/D"}
@@ -208,7 +208,7 @@ function evaluateCacheFlying(self, player)
208
208
  player.CanFly = true
209
209
  end
210
210
  end
211
- function entityTakeDmgPlayer(self)
211
+ function entityTakeDmgPlayer(self, _entity, _damageAmount, _damageFlags, _damageSource, _damageCountdownFrames)
212
212
  if v.run.spamBloodRights then
213
213
  return false
214
214
  end
@@ -19,11 +19,11 @@ export declare function getLastCollectibleType(): CollectibleType;
19
19
  /**
20
20
  * Helper function to get an array that represents the all modded collectible types.
21
21
  *
22
- * This function is only useful when building collectible type objects. For most purposes, you
23
- * should use the `getModdedCollectibleSet` helper function instead.
24
- *
25
22
  * Returns an empty array if there are no modded collectible types.
26
23
  *
24
+ * This function is only useful when building collectible type objects. For most purposes, you
25
+ * should use the `getModdedCollectibleArray` or `getModdedCollectibleSet` helper function instead.
26
+ *
27
27
  * (This function is named differently from the `getVanillaCollectibleTypeRange` function because
28
28
  * all modded collectible types are contiguous. Thus, each value represents a real
29
29
  * `CollectibleType`.)
@@ -66,6 +66,9 @@ export declare function getLastTrinketType(): TrinketType;
66
66
  *
67
67
  * Returns an empty array if there are no modded trinket types.
68
68
  *
69
+ * This function is only useful when building collectible type objects. For most purposes, you
70
+ * should use the `getModdedCollectibleArray` or `getModdedCollectibleSet` helper function instead.
71
+ *
69
72
  * This function can only be called if at least one callback has been executed. This is because not
70
73
  * all trinkets will necessarily be present when a mod first loads (due to mod load order).
71
74
  */
@@ -1 +1 @@
1
- {"version":3,"file":"firstLast.d.ts","sourceRoot":"","sources":["../../src/features/firstLast.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,eAAe,EACf,UAAU,EACV,WAAW,EACZ,MAAM,8BAA8B,CAAC;AAwDtC;;;;;GAKG;AACH,wBAAgB,6BAA6B,IAAI,eAAe,GAAG,SAAS,CAS3E;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,IAAI,eAAe,CAKxD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,yBAAyB,IAAI,eAAe,EAAE,CAW7D;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,GAAG,CAM5C;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,IAAI,GAAG,CAMlD;AAMD;;;;;GAKG;AACH,wBAAgB,yBAAyB,IAAI,WAAW,GAAG,SAAS,CASnE;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,WAAW,CAMhD;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,IAAI,WAAW,EAAE,CAQrD;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,GAAG,CAKxC;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,GAAG,CAM9C;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,IAAI,WAAW,EAAE,CAG/C;AAMD;;;;;GAKG;AACH,wBAAgB,WAAW,IAAI,IAAI,EAAE,CAGpC;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,GAAG,SAAS,CAOrD;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAMlC;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,IAAI,IAAI,EAAE,CAQvC;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,IAAI,GAAG,CAKjC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,GAAG,CAMvC;AAMD;;;;;GAKG;AACH,wBAAgB,iBAAiB,IAAI,UAAU,EAAE,CAGhD;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,IAAI,UAAU,GAAG,SAAS,CASjE;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,IAAI,UAAU,CAM9C;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,IAAI,UAAU,EAAE,CAQnD;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,IAAI,GAAG,CAKvC;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,GAAG,CAM7C"}
1
+ {"version":3,"file":"firstLast.d.ts","sourceRoot":"","sources":["../../src/features/firstLast.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,eAAe,EACf,UAAU,EACV,WAAW,EACZ,MAAM,8BAA8B,CAAC;AAwDtC;;;;;GAKG;AACH,wBAAgB,6BAA6B,IAAI,eAAe,GAAG,SAAS,CAS3E;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,IAAI,eAAe,CAKxD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,yBAAyB,IAAI,eAAe,EAAE,CAW7D;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,GAAG,CAM5C;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,IAAI,GAAG,CAMlD;AAMD;;;;;GAKG;AACH,wBAAgB,yBAAyB,IAAI,WAAW,GAAG,SAAS,CASnE;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,WAAW,CAMhD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,IAAI,WAAW,EAAE,CAQrD;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,GAAG,CAKxC;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,GAAG,CAM9C;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,IAAI,WAAW,EAAE,CAG/C;AAMD;;;;;GAKG;AACH,wBAAgB,WAAW,IAAI,IAAI,EAAE,CAGpC;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,GAAG,SAAS,CAOrD;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAMlC;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,IAAI,IAAI,EAAE,CAQvC;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,IAAI,GAAG,CAKjC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,GAAG,CAMvC;AAMD;;;;;GAKG;AACH,wBAAgB,iBAAiB,IAAI,UAAU,EAAE,CAGhD;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,IAAI,UAAU,GAAG,SAAS,CASjE;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,IAAI,UAAU,CAM9C;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,IAAI,UAAU,EAAE,CAQnD;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,IAAI,GAAG,CAKvC;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,GAAG,CAM7C"}
@@ -146,11 +146,11 @@ function ____exports.getFirstModdedCollectibleType(self)
146
146
  end
147
147
  --- Helper function to get an array that represents the all modded collectible types.
148
148
  --
149
- -- This function is only useful when building collectible type objects. For most purposes, you
150
- -- should use the `getModdedCollectibleSet` helper function instead.
151
- --
152
149
  -- Returns an empty array if there are no modded collectible types.
153
150
  --
151
+ -- This function is only useful when building collectible type objects. For most purposes, you
152
+ -- should use the `getModdedCollectibleArray` or `getModdedCollectibleSet` helper function instead.
153
+ --
154
154
  -- (This function is named differently from the `getVanillaCollectibleTypeRange` function because
155
155
  -- all modded collectible types are contiguous. Thus, each value represents a real
156
156
  -- `CollectibleType`.)
@@ -212,6 +212,9 @@ end
212
212
  --
213
213
  -- Returns an empty array if there are no modded trinket types.
214
214
  --
215
+ -- This function is only useful when building collectible type objects. For most purposes, you
216
+ -- should use the `getModdedCollectibleArray` or `getModdedCollectibleSet` helper function instead.
217
+ --
215
218
  -- This function can only be called if at least one callback has been executed. This is because not
216
219
  -- all trinkets will necessarily be present when a mod first loads (due to mod load order).
217
220
  function ____exports.getModdedTrinketTypes(self)
@@ -3,9 +3,6 @@ import { CollectibleType } from "isaac-typescript-definitions";
3
3
  * Helper function to get all of the collectibles that the player has gotten so far on this run, in
4
4
  * order.
5
5
  *
6
- * Note that this does not include active collectibles that have since been dropped for other
7
- * collectibles.
8
- *
9
6
  * In the case of inventory initialization or the case where the player rerolls their build in the
10
7
  * middle of the run (e.g. with D4), the order of the inventory will not correspond to the order
11
8
  * that the items were actually given to the player. In this case, the inventory will be in the
@@ -17,6 +14,17 @@ import { CollectibleType } from "isaac-typescript-definitions";
17
14
  * would not be updated. In vanilla, this situation would never happen, but another mod might do
18
15
  * this for some reason. (With that said, the next time that a collectible is normally added or
19
16
  * removed, it would trigger a re-scan, and the previous changes would be picked up.)
17
+ *
18
+ * @param player The player to get the inventory for.
19
+ * @param includeActiveCollectibles Optional. If true, will include all active collectibles. Default
20
+ * is true.
20
21
  */
21
22
  export declare function getPlayerInventory(player: EntityPlayer, includeActiveCollectibles?: boolean): CollectibleType[];
23
+ /**
24
+ * Helper function to get the last passive collectible that the player picked up. In most cases,
25
+ * this will be the passive that is removed when the player would use Clicker.
26
+ *
27
+ * Returns undefined if the player does not have any passive collectibles.
28
+ */
29
+ export declare function getPlayerLastPassiveCollectible(player: EntityPlayer): CollectibleType | undefined;
22
30
  //# sourceMappingURL=playerInventory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"playerInventory.d.ts","sourceRoot":"","sources":["../../src/features/playerInventory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAe,MAAM,8BAA8B,CAAC;AAyG5E;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,YAAY,EACpB,yBAAyB,UAAO,GAC/B,eAAe,EAAE,CAanB"}
1
+ {"version":3,"file":"playerInventory.d.ts","sourceRoot":"","sources":["../../src/features/playerInventory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAe,MAAM,8BAA8B,CAAC;AA6G5E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,YAAY,EACpB,yBAAyB,UAAO,GAC/B,eAAe,EAAE,CAanB;AAED;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,YAAY,GACnB,eAAe,GAAG,SAAS,CAK7B"}
@@ -15,6 +15,7 @@ local errorIfFeaturesNotInitialized = ____featuresInitialized.errorIfFeaturesNot
15
15
  local ____array = require("functions.array")
16
16
  local arrayRemoveInPlace = ____array.arrayRemoveInPlace
17
17
  local copyArray = ____array.copyArray
18
+ local getLastElement = ____array.getLastElement
18
19
  local ____collectibles = require("functions.collectibles")
19
20
  local isActiveCollectible = ____collectibles.isActiveCollectible
20
21
  local ____collectibleSet = require("functions.collectibleSet")
@@ -84,9 +85,6 @@ end
84
85
  --- Helper function to get all of the collectibles that the player has gotten so far on this run, in
85
86
  -- order.
86
87
  --
87
- -- Note that this does not include active collectibles that have since been dropped for other
88
- -- collectibles.
89
- --
90
88
  -- In the case of inventory initialization or the case where the player rerolls their build in the
91
89
  -- middle of the run (e.g. with D4), the order of the inventory will not correspond to the order
92
90
  -- that the items were actually given to the player. In this case, the inventory will be in the
@@ -98,6 +96,10 @@ end
98
96
  -- would not be updated. In vanilla, this situation would never happen, but another mod might do
99
97
  -- this for some reason. (With that said, the next time that a collectible is normally added or
100
98
  -- removed, it would trigger a re-scan, and the previous changes would be picked up.)
99
+ --
100
+ -- @param player The player to get the inventory for.
101
+ -- @param includeActiveCollectibles Optional. If true, will include all active collectibles. Default
102
+ -- is true.
101
103
  function ____exports.getPlayerInventory(self, player, includeActiveCollectibles)
102
104
  if includeActiveCollectibles == nil then
103
105
  includeActiveCollectibles = true
@@ -113,4 +115,13 @@ function ____exports.getPlayerInventory(self, player, includeActiveCollectibles)
113
115
  function(____, collectibleType) return not isActiveCollectible(nil, collectibleType) end
114
116
  )
115
117
  end
118
+ --- Helper function to get the last passive collectible that the player picked up. In most cases,
119
+ -- this will be the passive that is removed when the player would use Clicker.
120
+ --
121
+ -- Returns undefined if the player does not have any passive collectibles.
122
+ function ____exports.getPlayerLastPassiveCollectible(self, player)
123
+ errorIfFeaturesNotInitialized(nil, FEATURE_NAME)
124
+ local inventory = ____exports.getPlayerInventory(nil, player, false)
125
+ return getLastElement(nil, inventory)
126
+ end
116
127
  return ____exports
@@ -19,9 +19,15 @@ export declare function getAliveBosses(entityType?: EntityType, variant?: number
19
19
  *
20
20
  * The set contains strings with the entity type and variant, separated by a period.
21
21
  *
22
+ * Note that this set does not include bosses that do not appear in Boss Rooms (e.g. Krampus, Uriel,
23
+ * and Gabriel.).
24
+ *
22
25
  * Also see the `getBossSet` and `getCombinedBossSet` functions.
26
+ *
27
+ * @param includeStoryBosses Optional. Whether to include "story" bosses like Mom and It Lives!
28
+ * Default is true.
23
29
  */
24
- export declare function getAllBossesSet(): Set<string>;
30
+ export declare function getAllBossesSet(includeStoryBosses?: boolean): ReadonlySet<string>;
25
31
  /**
26
32
  * Helper function to get the set of vanilla bosses for a particular stage and stage type
27
33
  * combination.
@@ -52,7 +58,7 @@ export declare function getBosses(entityType?: EntityType, variant?: int, subTyp
52
58
  *
53
59
  * Also see the `getAllBossesSet` and `getBossSet` functions.
54
60
  */
55
- export declare function getCombinedBossSet(stage: int): Set<string> | undefined;
61
+ export declare function getCombinedBossSet(stage: int): ReadonlySet<string> | undefined;
56
62
  /** Helper function to check if the provided NPC is a Sin miniboss, such as Sloth or Lust. */
57
63
  export declare function isSin(npc: EntityNPC): boolean;
58
64
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"bosses.d.ts","sourceRoot":"","sources":["../../src/functions/bosses.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAEV,SAAS,EACV,MAAM,8BAA8B,CAAC;AAyBtC;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAC5B,UAAU,GAAE,UAAe,EAC3B,OAAO,SAAK,EACZ,OAAO,SAAK,EACZ,cAAc,UAAQ,GACrB,SAAS,EAAE,CAGb;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,IAAI,GAAG,CAAC,MAAM,CAAC,CAE7C;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,GAAG,EACV,SAAS,EAAE,SAAS,GACnB,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAYjC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CACvB,UAAU,CAAC,EAAE,UAAU,EACvB,OAAO,CAAC,EAAE,GAAG,EACb,OAAO,CAAC,EAAE,GAAG,EACb,cAAc,UAAQ,GACrB,SAAS,EAAE,CAGb;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,SAAS,CAOtE;AAED,6FAA6F;AAC7F,wBAAgB,KAAK,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAE7C;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CACvB,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,GAAG,EACZ,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,EACvC,SAAS,GAAE,IAAI,GAAG,GAAG,GAAG,SAAqB,EAC7C,WAAW,CAAC,EAAE,GAAG,GAChB,SAAS,CAyBX;AAmCD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,GAAG,EACZ,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,IAAI,GAAG,GAAG,EACrB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,EACvC,WAAW,CAAC,EAAE,GAAG,GAChB,SAAS,CAYX"}
1
+ {"version":3,"file":"bosses.d.ts","sourceRoot":"","sources":["../../src/functions/bosses.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAEV,SAAS,EACV,MAAM,8BAA8B,CAAC;AAyBtC;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAC5B,UAAU,GAAE,UAAe,EAC3B,OAAO,SAAK,EACZ,OAAO,SAAK,EACZ,cAAc,UAAQ,GACrB,SAAS,EAAE,CAGb;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAC7B,kBAAkB,UAAO,GACxB,WAAW,CAAC,MAAM,CAAC,CAIrB;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,GAAG,EACV,SAAS,EAAE,SAAS,GACnB,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAYjC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CACvB,UAAU,CAAC,EAAE,UAAU,EACvB,OAAO,CAAC,EAAE,GAAG,EACb,OAAO,CAAC,EAAE,GAAG,EACb,cAAc,UAAQ,GACrB,SAAS,EAAE,CAGb;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,GAAG,GACT,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAOjC;AAED,6FAA6F;AAC7F,wBAAgB,KAAK,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAE7C;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CACvB,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,GAAG,EACZ,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,EACvC,SAAS,GAAE,IAAI,GAAG,GAAG,GAAG,SAAqB,EAC7C,WAAW,CAAC,EAAE,GAAG,GAChB,SAAS,CAyBX;AAmCD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,GAAG,EACZ,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,IAAI,GAAG,GAAG,EACrB,QAAQ,GAAE,MAAmB,EAC7B,OAAO,GAAE,MAAM,GAAG,SAAqB,EACvC,WAAW,CAAC,EAAE,GAAG,GAChB,SAAS,CAYX"}
@@ -10,6 +10,7 @@ local LokiVariant = ____isaac_2Dtypescript_2Ddefinitions.LokiVariant
10
10
  local ____constants = require("core.constants")
11
11
  local VectorZero = ____constants.VectorZero
12
12
  local ____bossSets = require("sets.bossSets")
13
+ local ALL_BOSSES_EXCLUDING_STORY_BOSSES_SET = ____bossSets.ALL_BOSSES_EXCLUDING_STORY_BOSSES_SET
13
14
  local ALL_BOSSES_SET = ____bossSets.ALL_BOSSES_SET
14
15
  local STAGE_TO_COMBINED_BOSS_SET_MAP = ____bossSets.STAGE_TO_COMBINED_BOSS_SET_MAP
15
16
  local STAGE_TO_STAGE_TYPE_TO_BOSS_SET_MAP = ____bossSets.STAGE_TO_STAGE_TYPE_TO_BOSS_SET_MAP
@@ -22,8 +23,6 @@ local ____npcs = require("functions.npcs")
22
23
  local getAliveNPCs = ____npcs.getAliveNPCs
23
24
  local ____rng = require("functions.rng")
24
25
  local isRNG = ____rng.isRNG
25
- local ____set = require("functions.set")
26
- local copySet = ____set.copySet
27
26
  local ____types = require("functions.types")
28
27
  local asNumber = ____types.asNumber
29
28
  local ____utils = require("functions.utils")
@@ -108,9 +107,18 @@ end
108
107
  --
109
108
  -- The set contains strings with the entity type and variant, separated by a period.
110
109
  --
110
+ -- Note that this set does not include bosses that do not appear in Boss Rooms (e.g. Krampus, Uriel,
111
+ -- and Gabriel.).
112
+ --
111
113
  -- Also see the `getBossSet` and `getCombinedBossSet` functions.
112
- function ____exports.getAllBossesSet(self)
113
- return copySet(nil, ALL_BOSSES_SET)
114
+ --
115
+ -- @param includeStoryBosses Optional. Whether to include "story" bosses like Mom and It Lives!
116
+ -- Default is true.
117
+ function ____exports.getAllBossesSet(self, includeStoryBosses)
118
+ if includeStoryBosses == nil then
119
+ includeStoryBosses = true
120
+ end
121
+ return includeStoryBosses and ALL_BOSSES_SET or ALL_BOSSES_EXCLUDING_STORY_BOSSES_SET
114
122
  end
115
123
  --- Helper function to get the set of vanilla bosses for a particular stage and stage type
116
124
  -- combination.
@@ -127,7 +135,7 @@ function ____exports.getBossSet(self, stage, stageType)
127
135
  if bossSet == nil then
128
136
  return nil
129
137
  end
130
- return copySet(nil, bossSet)
138
+ return bossSet
131
139
  end
132
140
  --- Helper function to get all of the bosses in the room.
133
141
  --
@@ -166,7 +174,7 @@ function ____exports.getCombinedBossSet(self, stage)
166
174
  if bossSet == nil then
167
175
  return nil
168
176
  end
169
- return copySet(nil, bossSet)
177
+ return bossSet
170
178
  end
171
179
  --- Helper function to check if the provided NPC is a Sin miniboss, such as Sloth or Lust.
172
180
  function ____exports.isSin(self, npc)
@@ -8,7 +8,7 @@ export declare function collectibleHasCacheFlag(collectibleType: CollectibleType
8
8
  * This function can only be called if at least one callback has been executed. This is because not
9
9
  * all collectibles will necessarily be present when a mod first loads (due to mod load order).
10
10
  */
11
- export declare function getCollectiblesForCacheFlag(cacheFlag: CacheFlag): Set<CollectibleType>;
11
+ export declare function getCollectiblesForCacheFlag(cacheFlag: CacheFlag): ReadonlySet<CollectibleType>;
12
12
  /**
13
13
  * Returns an array containing every collectible type that the player has that matches the provided
14
14
  * CacheFlag.
@@ -1 +1 @@
1
- {"version":3,"file":"collectibleCacheFlag.d.ts","sourceRoot":"","sources":["../../src/functions/collectibleCacheFlag.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AA+B1E,iGAAiG;AACjG,wBAAgB,uBAAuB,CACrC,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,SAAS,GACnB,OAAO,CAOT;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,SAAS,GACnB,GAAG,CAAC,eAAe,CAAC,CAStB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iCAAiC,CAC/C,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,SAAS,GACnB,eAAe,EAAE,CAYnB"}
1
+ {"version":3,"file":"collectibleCacheFlag.d.ts","sourceRoot":"","sources":["../../src/functions/collectibleCacheFlag.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AA+B1E,iGAAiG;AACjG,wBAAgB,uBAAuB,CACrC,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,SAAS,GACnB,OAAO,CAOT;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,SAAS,GACnB,WAAW,CAAC,eAAe,CAAC,CAS9B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iCAAiC,CAC/C,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,SAAS,GACnB,eAAe,EAAE,CAYnB"}
@@ -14,7 +14,6 @@ local getEnumValues = ____enums.getEnumValues
14
14
  local ____flag = require("functions.flag")
15
15
  local hasFlag = ____flag.hasFlag
16
16
  local ____set = require("functions.set")
17
- local copySet = ____set.copySet
18
17
  local getSortedSetValues = ____set.getSortedSetValues
19
18
  local ____utils = require("functions.utils")
20
19
  local ____repeat = ____utils["repeat"]
@@ -52,7 +51,7 @@ function ____exports.getCollectiblesForCacheFlag(self, cacheFlag)
52
51
  if collectiblesSet == nil then
53
52
  return __TS__New(Set)
54
53
  end
55
- return copySet(nil, collectiblesSet)
54
+ return collectiblesSet
56
55
  end
57
56
  --- Returns an array containing every collectible type that the player has that matches the provided
58
57
  -- CacheFlag.