isaacscript-common 82.0.1 → 83.0.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.
- package/dist/functions/bosses.d.ts +25 -22
- package/dist/functions/bosses.d.ts.map +1 -1
- package/dist/functions/bosses.lua +36 -36
- package/dist/index.rollup.d.ts +28 -24
- package/dist/isaacscript-common.lua +235 -154
- package/dist/sets/bossSets.d.ts +3 -3
- package/dist/sets/bossSets.d.ts.map +1 -1
- package/dist/sets/bossSets.lua +195 -117
- package/dist/tsdoc-metadata.json +1 -1
- package/package.json +2 -2
- package/src/functions/bosses.ts +42 -38
- package/src/sets/bossSets.ts +141 -134
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
--[[
|
|
2
2
|
|
|
3
|
-
isaacscript-common 82.0.
|
|
3
|
+
isaacscript-common 82.0.2
|
|
4
4
|
|
|
5
5
|
This is the "isaacscript-common" library, which was created with the IsaacScript tool.
|
|
6
6
|
|
|
@@ -10043,6 +10043,9 @@ ____exports.TreasureRoomSubType[____exports.TreasureRoomSubType.KNIFE_PIECE] = "
|
|
|
10043
10043
|
-- The enum is named `BossID` instead of `BossRoomSubType` in order to match the `Entity.GetBossID`,
|
|
10044
10044
|
-- `Room.GetBossID` and `Room.GetSecondBossID` methods.
|
|
10045
10045
|
--
|
|
10046
|
+
-- There is no BossID with a value of 0 because this is the default return value for "no boss ID"
|
|
10047
|
+
-- when using the `Room.GetBossID` method.
|
|
10048
|
+
--
|
|
10046
10049
|
-- This enum is contiguous. (Every value is satisfied between 1 and 102, inclusive.)
|
|
10047
10050
|
--
|
|
10048
10051
|
-- Also see the `MinibossID` enum.
|
|
@@ -50694,10 +50697,13 @@ return ____exports
|
|
|
50694
50697
|
end,
|
|
50695
50698
|
["sets.bossSets"] = function(...)
|
|
50696
50699
|
local ____lualib = require("lualib_bundle")
|
|
50700
|
+
local __TS__SparseArrayNew = ____lualib.__TS__SparseArrayNew
|
|
50701
|
+
local __TS__SparseArrayPush = ____lualib.__TS__SparseArrayPush
|
|
50702
|
+
local __TS__SparseArraySpread = ____lualib.__TS__SparseArraySpread
|
|
50697
50703
|
local __TS__New = ____lualib.__TS__New
|
|
50698
50704
|
local __TS__ArrayFilter = ____lualib.__TS__ArrayFilter
|
|
50699
|
-
local __TS__Spread = ____lualib.__TS__Spread
|
|
50700
50705
|
local Set = ____lualib.Set
|
|
50706
|
+
local __TS__ArrayIncludes = ____lualib.__TS__ArrayIncludes
|
|
50701
50707
|
local __TS__Iterator = ____lualib.__TS__Iterator
|
|
50702
50708
|
local ____exports = {}
|
|
50703
50709
|
local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.index")
|
|
@@ -50706,8 +50712,6 @@ local LevelStage = ____isaac_2Dtypescript_2Ddefinitions.LevelStage
|
|
|
50706
50712
|
local StageID = ____isaac_2Dtypescript_2Ddefinitions.StageID
|
|
50707
50713
|
local ____cachedEnumValues = require("arrays.cachedEnumValues")
|
|
50708
50714
|
local BOSS_ID_VALUES = ____cachedEnumValues.BOSS_ID_VALUES
|
|
50709
|
-
local ____set = require("functions.set")
|
|
50710
|
-
local combineSets = ____set.combineSets
|
|
50711
50715
|
local ____storyBosses = require("functions.storyBosses")
|
|
50712
50716
|
local isStoryBossID = ____storyBosses.isStoryBossID
|
|
50713
50717
|
local ____ReadonlyMap = require("types.ReadonlyMap")
|
|
@@ -50715,7 +50719,7 @@ local ReadonlyMap = ____ReadonlyMap.ReadonlyMap
|
|
|
50715
50719
|
local ____ReadonlySet = require("types.ReadonlySet")
|
|
50716
50720
|
local ReadonlySet = ____ReadonlySet.ReadonlySet
|
|
50717
50721
|
--- For `StageID.BASEMENT` (1).
|
|
50718
|
-
local
|
|
50722
|
+
local BASEMENT_BOSSES = {
|
|
50719
50723
|
BossID.MONSTRO,
|
|
50720
50724
|
BossID.LARRY_JR,
|
|
50721
50725
|
BossID.FAMINE,
|
|
@@ -50730,9 +50734,9 @@ local BASEMENT_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50730
50734
|
BossID.DANGLE,
|
|
50731
50735
|
BossID.TURDLING,
|
|
50732
50736
|
BossID.BABY_PLUM
|
|
50733
|
-
}
|
|
50737
|
+
}
|
|
50734
50738
|
--- For `StageID.CELLAR` (2).
|
|
50735
|
-
local
|
|
50739
|
+
local CELLAR_BOSSES = {
|
|
50736
50740
|
BossID.FAMINE,
|
|
50737
50741
|
BossID.DUKE_OF_FLIES,
|
|
50738
50742
|
BossID.HEADLESS_HORSEMAN,
|
|
@@ -50744,9 +50748,9 @@ local CELLAR_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50744
50748
|
BossID.LITTLE_HORN,
|
|
50745
50749
|
BossID.RAG_MAN,
|
|
50746
50750
|
BossID.BABY_PLUM
|
|
50747
|
-
}
|
|
50751
|
+
}
|
|
50748
50752
|
--- For `StageID.BURNING_BASEMENT` (3).
|
|
50749
|
-
local
|
|
50753
|
+
local BURNING_BASEMENT_BOSSES = {
|
|
50750
50754
|
BossID.MONSTRO,
|
|
50751
50755
|
BossID.LARRY_JR,
|
|
50752
50756
|
BossID.FAMINE,
|
|
@@ -50762,28 +50766,42 @@ local BURNING_BASEMENT_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50762
50766
|
BossID.DANGLE,
|
|
50763
50767
|
BossID.TURDLING,
|
|
50764
50768
|
BossID.BABY_PLUM
|
|
50765
|
-
}
|
|
50769
|
+
}
|
|
50766
50770
|
--- For `StageID.DOWNPOUR` (27).
|
|
50767
|
-
local
|
|
50771
|
+
local DOWNPOUR_BOSSES = {BossID.LIL_BLUB, BossID.WORMWOOD, BossID.RAINMAKER, BossID.MIN_MIN}
|
|
50768
50772
|
--- For `StageID.DROSS` (28).
|
|
50769
|
-
local
|
|
50773
|
+
local DROSS_BOSSES = {
|
|
50770
50774
|
BossID.LIL_BLUB,
|
|
50771
50775
|
BossID.WORMWOOD,
|
|
50772
50776
|
BossID.CLOG,
|
|
50773
50777
|
BossID.COLOSTOMIA,
|
|
50774
50778
|
BossID.TURDLET
|
|
50775
|
-
}
|
|
50779
|
+
}
|
|
50780
|
+
local ____ReadonlySet_1 = ReadonlySet
|
|
50781
|
+
local ____array_0 = __TS__SparseArrayNew(table.unpack(BASEMENT_BOSSES))
|
|
50782
|
+
__TS__SparseArrayPush(
|
|
50783
|
+
____array_0,
|
|
50784
|
+
table.unpack(CELLAR_BOSSES)
|
|
50785
|
+
)
|
|
50786
|
+
__TS__SparseArrayPush(
|
|
50787
|
+
____array_0,
|
|
50788
|
+
table.unpack(BURNING_BASEMENT_BOSSES)
|
|
50789
|
+
)
|
|
50790
|
+
__TS__SparseArrayPush(
|
|
50791
|
+
____array_0,
|
|
50792
|
+
table.unpack(DOWNPOUR_BOSSES)
|
|
50793
|
+
)
|
|
50794
|
+
__TS__SparseArrayPush(
|
|
50795
|
+
____array_0,
|
|
50796
|
+
table.unpack(DROSS_BOSSES)
|
|
50797
|
+
)
|
|
50776
50798
|
--- The set of unique bosses for Basement, Cellar, Burning Basement, Downpour, and Dross.
|
|
50777
|
-
local ALL_BASEMENT_BOSSES_SET =
|
|
50778
|
-
|
|
50779
|
-
|
|
50780
|
-
CELLAR_BOSSES_SET,
|
|
50781
|
-
BURNING_BASEMENT_BOSSES_SET,
|
|
50782
|
-
DOWNPOUR_BOSSES_SET,
|
|
50783
|
-
DROSS_BOSSES_SET
|
|
50799
|
+
local ALL_BASEMENT_BOSSES_SET = __TS__New(
|
|
50800
|
+
____ReadonlySet_1,
|
|
50801
|
+
{__TS__SparseArraySpread(____array_0)}
|
|
50784
50802
|
)
|
|
50785
50803
|
--- For `StageID.CAVES` (4).
|
|
50786
|
-
local
|
|
50804
|
+
local CAVES_BOSSES = {
|
|
50787
50805
|
BossID.CHUB,
|
|
50788
50806
|
BossID.GURDY,
|
|
50789
50807
|
BossID.PESTILENCE,
|
|
@@ -50799,9 +50817,9 @@ local CAVES_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50799
50817
|
BossID.RAG_MEGA,
|
|
50800
50818
|
BossID.BIG_HORN,
|
|
50801
50819
|
BossID.BUMBINO
|
|
50802
|
-
}
|
|
50820
|
+
}
|
|
50803
50821
|
--- For `StageID.CATACOMBS` (5).
|
|
50804
|
-
local
|
|
50822
|
+
local CATACOMBS_BOSSES = {
|
|
50805
50823
|
BossID.PESTILENCE,
|
|
50806
50824
|
BossID.PEEP,
|
|
50807
50825
|
BossID.HEADLESS_HORSEMAN,
|
|
@@ -50818,9 +50836,9 @@ local CATACOMBS_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50818
50836
|
BossID.RAG_MEGA,
|
|
50819
50837
|
BossID.BIG_HORN,
|
|
50820
50838
|
BossID.BUMBINO
|
|
50821
|
-
}
|
|
50839
|
+
}
|
|
50822
50840
|
--- For `StageID.FLOODED_CAVES` (6).
|
|
50823
|
-
local
|
|
50841
|
+
local FLOODED_CAVES_BOSSES = {
|
|
50824
50842
|
BossID.CHUB,
|
|
50825
50843
|
BossID.GURDY,
|
|
50826
50844
|
BossID.PESTILENCE,
|
|
@@ -50838,30 +50856,44 @@ local FLOODED_CAVES_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50838
50856
|
BossID.RAG_MEGA,
|
|
50839
50857
|
BossID.BIG_HORN,
|
|
50840
50858
|
BossID.BUMBINO
|
|
50841
|
-
}
|
|
50859
|
+
}
|
|
50842
50860
|
--- For `StageID.MINES` (29).
|
|
50843
|
-
local
|
|
50861
|
+
local MINES_BOSSES = {BossID.REAP_CREEP, BossID.TUFF_TWINS, BossID.HORNFEL, BossID.GREAT_GIDEON}
|
|
50844
50862
|
--- For `StageID.ASHPIT` (30).
|
|
50845
|
-
local
|
|
50863
|
+
local ASHPIT_BOSSES = {
|
|
50846
50864
|
BossID.PILE,
|
|
50847
50865
|
BossID.GREAT_GIDEON,
|
|
50848
50866
|
BossID.SINGE,
|
|
50849
50867
|
BossID.SHELL,
|
|
50850
50868
|
BossID.CLUTCH
|
|
50851
|
-
}
|
|
50869
|
+
}
|
|
50870
|
+
local ____ReadonlySet_3 = ReadonlySet
|
|
50871
|
+
local ____array_2 = __TS__SparseArrayNew(table.unpack(CAVES_BOSSES))
|
|
50872
|
+
__TS__SparseArrayPush(
|
|
50873
|
+
____array_2,
|
|
50874
|
+
table.unpack(CATACOMBS_BOSSES)
|
|
50875
|
+
)
|
|
50876
|
+
__TS__SparseArrayPush(
|
|
50877
|
+
____array_2,
|
|
50878
|
+
table.unpack(FLOODED_CAVES_BOSSES)
|
|
50879
|
+
)
|
|
50880
|
+
__TS__SparseArrayPush(
|
|
50881
|
+
____array_2,
|
|
50882
|
+
table.unpack(MINES_BOSSES)
|
|
50883
|
+
)
|
|
50884
|
+
__TS__SparseArrayPush(
|
|
50885
|
+
____array_2,
|
|
50886
|
+
table.unpack(ASHPIT_BOSSES)
|
|
50887
|
+
)
|
|
50852
50888
|
--- The set of unique bosses for Caves, Catacombs, Flooded Caves, Mines, and Ashpit.
|
|
50853
|
-
local ALL_CAVES_BOSSES_SET =
|
|
50854
|
-
|
|
50855
|
-
|
|
50856
|
-
CATACOMBS_BOSSES_SET,
|
|
50857
|
-
FLOODED_CAVES_BOSSES_SET,
|
|
50858
|
-
MINES_BOSSES_SET,
|
|
50859
|
-
ASHPIT_BOSSES_SET
|
|
50889
|
+
local ALL_CAVES_BOSSES_SET = __TS__New(
|
|
50890
|
+
____ReadonlySet_3,
|
|
50891
|
+
{__TS__SparseArraySpread(____array_2)}
|
|
50860
50892
|
)
|
|
50861
50893
|
--- For `StageID.DEPTHS` (7).
|
|
50862
50894
|
--
|
|
50863
50895
|
-- Note that this set includes Mom, even though they are not technically in the boss pool.
|
|
50864
|
-
local
|
|
50896
|
+
local DEPTHS_BOSSES = {
|
|
50865
50897
|
BossID.MONSTRO_2,
|
|
50866
50898
|
BossID.MOM,
|
|
50867
50899
|
BossID.WAR,
|
|
@@ -50874,11 +50906,11 @@ local DEPTHS_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50874
50906
|
BossID.BROWNIE,
|
|
50875
50907
|
BossID.SISTERS_VIS,
|
|
50876
50908
|
BossID.REAP_CREEP
|
|
50877
|
-
}
|
|
50909
|
+
}
|
|
50878
50910
|
--- For `StageID.NECROPOLIS` (8).
|
|
50879
50911
|
--
|
|
50880
50912
|
-- Note that this set includes Mom, even though they are not technically in the boss pool.
|
|
50881
|
-
local
|
|
50913
|
+
local NECROPOLIS_BOSSES = {
|
|
50882
50914
|
BossID.MOM,
|
|
50883
50915
|
BossID.WAR,
|
|
50884
50916
|
BossID.LOKI,
|
|
@@ -50890,11 +50922,11 @@ local NECROPOLIS_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50890
50922
|
BossID.BROWNIE,
|
|
50891
50923
|
BossID.SISTERS_VIS,
|
|
50892
50924
|
BossID.PILE
|
|
50893
|
-
}
|
|
50925
|
+
}
|
|
50894
50926
|
--- For `StageID.DANK_DEPTHS` (9).
|
|
50895
50927
|
--
|
|
50896
50928
|
-- Note that this set includes Mom, even though they are not technically in the boss pool.
|
|
50897
|
-
local
|
|
50929
|
+
local DANK_DEPTHS_BOSSES = {
|
|
50898
50930
|
BossID.MONSTRO_2,
|
|
50899
50931
|
BossID.MOM,
|
|
50900
50932
|
BossID.WAR,
|
|
@@ -50907,29 +50939,43 @@ local DANK_DEPTHS_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50907
50939
|
BossID.BROWNIE,
|
|
50908
50940
|
BossID.SISTERS_VIS,
|
|
50909
50941
|
BossID.REAP_CREEP
|
|
50910
|
-
}
|
|
50942
|
+
}
|
|
50911
50943
|
--- For `StageID.MAUSOLEUM` (31).
|
|
50912
50944
|
--
|
|
50913
50945
|
-- Note that this set includes Mausoleum Mom, even though they are not technically in the boss pool.
|
|
50914
|
-
local
|
|
50946
|
+
local MAUSOLEUM_BOSSES = {BossID.SIREN, BossID.HERETIC, BossID.MAUSOLEUM_MOM}
|
|
50915
50947
|
--- For `StageID.GEHENNA` (32).
|
|
50916
50948
|
--
|
|
50917
50949
|
-- Note that this set includes Mausoleum Mom, even though they are not technically in the boss pool.
|
|
50918
|
-
local
|
|
50950
|
+
local GEHENNA_BOSSES = {BossID.VISAGE, BossID.MAUSOLEUM_MOM, BossID.HORNY_BOYS}
|
|
50951
|
+
local ____ReadonlySet_5 = ReadonlySet
|
|
50952
|
+
local ____array_4 = __TS__SparseArrayNew(table.unpack(DEPTHS_BOSSES))
|
|
50953
|
+
__TS__SparseArrayPush(
|
|
50954
|
+
____array_4,
|
|
50955
|
+
table.unpack(NECROPOLIS_BOSSES)
|
|
50956
|
+
)
|
|
50957
|
+
__TS__SparseArrayPush(
|
|
50958
|
+
____array_4,
|
|
50959
|
+
table.unpack(DANK_DEPTHS_BOSSES)
|
|
50960
|
+
)
|
|
50961
|
+
__TS__SparseArrayPush(
|
|
50962
|
+
____array_4,
|
|
50963
|
+
table.unpack(MAUSOLEUM_BOSSES)
|
|
50964
|
+
)
|
|
50965
|
+
__TS__SparseArrayPush(
|
|
50966
|
+
____array_4,
|
|
50967
|
+
table.unpack(GEHENNA_BOSSES)
|
|
50968
|
+
)
|
|
50919
50969
|
--- The set of unique bosses for Depths, Necropolis, Dank Depths, Mausoleum, and Gehenna.
|
|
50920
|
-
local ALL_DEPTHS_BOSSES_SET =
|
|
50921
|
-
|
|
50922
|
-
|
|
50923
|
-
NECROPOLIS_BOSSES_SET,
|
|
50924
|
-
DANK_DEPTHS_BOSSES_SET,
|
|
50925
|
-
MAUSOLEUM_BOSSES_SET,
|
|
50926
|
-
GEHENNA_BOSSES_SET
|
|
50970
|
+
local ALL_DEPTHS_BOSSES_SET = __TS__New(
|
|
50971
|
+
____ReadonlySet_5,
|
|
50972
|
+
{__TS__SparseArraySpread(____array_4)}
|
|
50927
50973
|
)
|
|
50928
50974
|
--- For `StageID.WOMB` (10).
|
|
50929
50975
|
--
|
|
50930
50976
|
-- Note that this set includes Mom's Heart & It Lives, even though they are not technically in the
|
|
50931
50977
|
-- boss pool.
|
|
50932
|
-
local
|
|
50978
|
+
local WOMB_BOSSES = {
|
|
50933
50979
|
BossID.SCOLEX,
|
|
50934
50980
|
BossID.MOMS_HEART,
|
|
50935
50981
|
BossID.DEATH,
|
|
@@ -50942,12 +50988,12 @@ local WOMB_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50942
50988
|
BossID.MAMA_GURDY,
|
|
50943
50989
|
BossID.MR_FRED,
|
|
50944
50990
|
BossID.MATRIARCH
|
|
50945
|
-
}
|
|
50991
|
+
}
|
|
50946
50992
|
--- For `StageID.UTERO` (11).
|
|
50947
50993
|
--
|
|
50948
50994
|
-- Note that this set includes Mom's Heart & It Lives, even though they are not technically in the
|
|
50949
50995
|
-- boss pool.
|
|
50950
|
-
local
|
|
50996
|
+
local UTERO_BOSSES = {
|
|
50951
50997
|
BossID.MOMS_HEART,
|
|
50952
50998
|
BossID.DEATH,
|
|
50953
50999
|
BossID.HEADLESS_HORSEMAN,
|
|
@@ -50959,12 +51005,12 @@ local UTERO_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50959
51005
|
BossID.CONQUEST,
|
|
50960
51006
|
BossID.DADDY_LONG_LEGS,
|
|
50961
51007
|
BossID.TRIACHNID
|
|
50962
|
-
}
|
|
51008
|
+
}
|
|
50963
51009
|
--- For `StageID.SCARRED_WOMB` (12).
|
|
50964
51010
|
--
|
|
50965
51011
|
-- Note that this set includes Mom's Heart & It Lives, even though they are not technically in the
|
|
50966
51012
|
-- boss pool.
|
|
50967
|
-
local
|
|
51013
|
+
local SCARRED_WOMB_BOSSES = {
|
|
50968
51014
|
BossID.SCOLEX,
|
|
50969
51015
|
BossID.MOMS_HEART,
|
|
50970
51016
|
BossID.DEATH,
|
|
@@ -50978,59 +51024,100 @@ local SCARRED_WOMB_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50978
51024
|
BossID.MAMA_GURDY,
|
|
50979
51025
|
BossID.MR_FRED,
|
|
50980
51026
|
BossID.MATRIARCH
|
|
50981
|
-
}
|
|
51027
|
+
}
|
|
50982
51028
|
--- For `StageID.CORPSE` (33).
|
|
50983
51029
|
--
|
|
50984
51030
|
-- Note that this set includes Mother, even though she is not technically in the boss pool.
|
|
50985
|
-
local
|
|
51031
|
+
local CORPSE_BOSSES = {BossID.SCOURGE, BossID.CHIMERA, BossID.ROTGUT, BossID.MOTHER}
|
|
51032
|
+
local ____ReadonlySet_7 = ReadonlySet
|
|
51033
|
+
local ____array_6 = __TS__SparseArrayNew(table.unpack(WOMB_BOSSES))
|
|
51034
|
+
__TS__SparseArrayPush(
|
|
51035
|
+
____array_6,
|
|
51036
|
+
table.unpack(UTERO_BOSSES)
|
|
51037
|
+
)
|
|
51038
|
+
__TS__SparseArrayPush(
|
|
51039
|
+
____array_6,
|
|
51040
|
+
table.unpack(SCARRED_WOMB_BOSSES)
|
|
51041
|
+
)
|
|
51042
|
+
__TS__SparseArrayPush(
|
|
51043
|
+
____array_6,
|
|
51044
|
+
table.unpack(CORPSE_BOSSES)
|
|
51045
|
+
)
|
|
50986
51046
|
--- The set of unique bosses for Womb, Utero, Scarred Womb, and Corpse.
|
|
50987
|
-
local ALL_WOMB_BOSSES_SET =
|
|
50988
|
-
|
|
50989
|
-
|
|
50990
|
-
|
|
50991
|
-
|
|
50992
|
-
|
|
51047
|
+
local ALL_WOMB_BOSSES_SET = __TS__New(
|
|
51048
|
+
____ReadonlySet_7,
|
|
51049
|
+
{__TS__SparseArraySpread(____array_6)}
|
|
51050
|
+
)
|
|
51051
|
+
local BLUE_WOMB_BOSSES = {BossID.HUSH}
|
|
51052
|
+
local ALL_BLUE_WOMB_BOSSES_SET = __TS__New(
|
|
51053
|
+
ReadonlySet,
|
|
51054
|
+
{table.unpack(BLUE_WOMB_BOSSES)}
|
|
51055
|
+
)
|
|
51056
|
+
local SHEOL_BOSSES = {BossID.SATAN}
|
|
51057
|
+
local CATHEDRAL_BOSSES = {BossID.ISAAC}
|
|
51058
|
+
local ____ReadonlySet_9 = ReadonlySet
|
|
51059
|
+
local ____array_8 = __TS__SparseArrayNew(table.unpack(SHEOL_BOSSES))
|
|
51060
|
+
__TS__SparseArrayPush(
|
|
51061
|
+
____array_8,
|
|
51062
|
+
table.unpack(CATHEDRAL_BOSSES)
|
|
51063
|
+
)
|
|
51064
|
+
local ALL_STAGE_10_BOSSES_SET = __TS__New(
|
|
51065
|
+
____ReadonlySet_9,
|
|
51066
|
+
{__TS__SparseArraySpread(____array_8)}
|
|
50993
51067
|
)
|
|
50994
|
-
local BLUE_WOMB_BOSSES_SET = __TS__New(ReadonlySet, {BossID.HUSH})
|
|
50995
|
-
local SHEOL_BOSSES_SET = __TS__New(ReadonlySet, {BossID.SATAN})
|
|
50996
|
-
local CATHEDRAL_BOSSES_SET = __TS__New(ReadonlySet, {BossID.ISAAC})
|
|
50997
|
-
local ALL_STAGE_10_BOSSES_SET = combineSets(nil, SHEOL_BOSSES_SET, CATHEDRAL_BOSSES_SET)
|
|
50998
51068
|
--- Note that this set includes Mega Satan, even though they are not technically in the boss pool.
|
|
50999
|
-
local
|
|
51069
|
+
local DARK_ROOM_BOSSES = {BossID.LAMB, BossID.MEGA_SATAN}
|
|
51000
51070
|
--- Note that this set includes Mega Satan, even though they are not technically in the boss pool.
|
|
51001
|
-
local
|
|
51002
|
-
local
|
|
51003
|
-
local
|
|
51071
|
+
local CHEST_BOSSES = {BossID.BLUE_BABY, BossID.MEGA_SATAN}
|
|
51072
|
+
local ____ReadonlySet_11 = ReadonlySet
|
|
51073
|
+
local ____array_10 = __TS__SparseArrayNew(table.unpack(DARK_ROOM_BOSSES))
|
|
51074
|
+
__TS__SparseArrayPush(
|
|
51075
|
+
____array_10,
|
|
51076
|
+
table.unpack(CHEST_BOSSES)
|
|
51077
|
+
)
|
|
51078
|
+
local ALL_STAGE_11_BOSSES_SET = __TS__New(
|
|
51079
|
+
____ReadonlySet_11,
|
|
51080
|
+
{__TS__SparseArraySpread(____array_10)}
|
|
51081
|
+
)
|
|
51082
|
+
local VOID_BOSSES = {BossID.DELIRIUM}
|
|
51083
|
+
local ALL_VOID_BOSSES_SET = __TS__New(
|
|
51084
|
+
ReadonlySet,
|
|
51085
|
+
{table.unpack(VOID_BOSSES)}
|
|
51086
|
+
)
|
|
51004
51087
|
--- Includes Dogma and The Beast. Does not include Ultra Famine, Ultra Pestilence, Ultra War, and
|
|
51005
51088
|
-- Ultra Death (since they do not have boss IDs).
|
|
51006
|
-
local
|
|
51007
|
-
|
|
51008
|
-
|
|
51009
|
-
{
|
|
51010
|
-
|
|
51011
|
-
|
|
51012
|
-
{StageID.
|
|
51013
|
-
{StageID.
|
|
51014
|
-
{StageID.
|
|
51015
|
-
{StageID.
|
|
51016
|
-
{StageID.
|
|
51017
|
-
{StageID.
|
|
51018
|
-
{StageID.
|
|
51019
|
-
{StageID.
|
|
51020
|
-
{StageID.
|
|
51021
|
-
{StageID.
|
|
51022
|
-
{StageID.
|
|
51023
|
-
{StageID.
|
|
51024
|
-
{StageID.
|
|
51025
|
-
{StageID.
|
|
51026
|
-
{StageID.
|
|
51027
|
-
{StageID.
|
|
51028
|
-
{StageID.
|
|
51029
|
-
{StageID.
|
|
51030
|
-
{StageID.
|
|
51031
|
-
{StageID.
|
|
51032
|
-
{StageID.
|
|
51033
|
-
{StageID.
|
|
51089
|
+
local HOME_BOSSES = {BossID.DOGMA, BossID.BEAST}
|
|
51090
|
+
local ALL_HOME_BOSSES_SET = __TS__New(
|
|
51091
|
+
ReadonlySet,
|
|
51092
|
+
{table.unpack(HOME_BOSSES)}
|
|
51093
|
+
)
|
|
51094
|
+
____exports.STAGE_ID_TO_BOSS_IDS = __TS__New(ReadonlyMap, {
|
|
51095
|
+
{StageID.BASEMENT, BASEMENT_BOSSES},
|
|
51096
|
+
{StageID.CELLAR, CELLAR_BOSSES},
|
|
51097
|
+
{StageID.BURNING_BASEMENT, BURNING_BASEMENT_BOSSES},
|
|
51098
|
+
{StageID.DOWNPOUR, DOWNPOUR_BOSSES},
|
|
51099
|
+
{StageID.DROSS, DROSS_BOSSES},
|
|
51100
|
+
{StageID.CAVES, CAVES_BOSSES},
|
|
51101
|
+
{StageID.CATACOMBS, CATACOMBS_BOSSES},
|
|
51102
|
+
{StageID.FLOODED_CAVES, FLOODED_CAVES_BOSSES},
|
|
51103
|
+
{StageID.MINES, MINES_BOSSES},
|
|
51104
|
+
{StageID.ASHPIT, ASHPIT_BOSSES},
|
|
51105
|
+
{StageID.DEPTHS, DEPTHS_BOSSES},
|
|
51106
|
+
{StageID.NECROPOLIS, NECROPOLIS_BOSSES},
|
|
51107
|
+
{StageID.DANK_DEPTHS, DANK_DEPTHS_BOSSES},
|
|
51108
|
+
{StageID.MAUSOLEUM, MAUSOLEUM_BOSSES},
|
|
51109
|
+
{StageID.GEHENNA, GEHENNA_BOSSES},
|
|
51110
|
+
{StageID.WOMB, WOMB_BOSSES},
|
|
51111
|
+
{StageID.UTERO, UTERO_BOSSES},
|
|
51112
|
+
{StageID.SCARRED_WOMB, SCARRED_WOMB_BOSSES},
|
|
51113
|
+
{StageID.CORPSE, CORPSE_BOSSES},
|
|
51114
|
+
{StageID.BLUE_WOMB, BLUE_WOMB_BOSSES},
|
|
51115
|
+
{StageID.SHEOL, SHEOL_BOSSES},
|
|
51116
|
+
{StageID.CATHEDRAL, CATHEDRAL_BOSSES},
|
|
51117
|
+
{StageID.DARK_ROOM, DARK_ROOM_BOSSES},
|
|
51118
|
+
{StageID.CHEST, CHEST_BOSSES},
|
|
51119
|
+
{StageID.VOID, VOID_BOSSES},
|
|
51120
|
+
{StageID.HOME, HOME_BOSSES}
|
|
51034
51121
|
})
|
|
51035
51122
|
____exports.STAGE_TO_COMBINED_BOSS_SET_MAP = __TS__New(ReadonlyMap, {
|
|
51036
51123
|
{LevelStage.BASEMENT_1, ALL_BASEMENT_BOSSES_SET},
|
|
@@ -51041,34 +51128,28 @@ ____exports.STAGE_TO_COMBINED_BOSS_SET_MAP = __TS__New(ReadonlyMap, {
|
|
|
51041
51128
|
{LevelStage.DEPTHS_2, ALL_DEPTHS_BOSSES_SET},
|
|
51042
51129
|
{LevelStage.WOMB_1, ALL_WOMB_BOSSES_SET},
|
|
51043
51130
|
{LevelStage.WOMB_2, ALL_WOMB_BOSSES_SET},
|
|
51044
|
-
{LevelStage.BLUE_WOMB,
|
|
51131
|
+
{LevelStage.BLUE_WOMB, ALL_BLUE_WOMB_BOSSES_SET},
|
|
51045
51132
|
{LevelStage.SHEOL_CATHEDRAL, ALL_STAGE_10_BOSSES_SET},
|
|
51046
51133
|
{LevelStage.DARK_ROOM_CHEST, ALL_STAGE_11_BOSSES_SET},
|
|
51047
|
-
{LevelStage.VOID,
|
|
51048
|
-
{LevelStage.HOME,
|
|
51134
|
+
{LevelStage.VOID, ALL_VOID_BOSSES_SET},
|
|
51135
|
+
{LevelStage.HOME, ALL_HOME_BOSSES_SET}
|
|
51049
51136
|
})
|
|
51050
|
-
____exports.
|
|
51051
|
-
|
|
51052
|
-
|
|
51053
|
-
BOSS_ID_VALUES,
|
|
51054
|
-
function(____, bossID) return bossID ~= BossID.RAGLICH end
|
|
51055
|
-
)
|
|
51137
|
+
____exports.ALL_BOSSES = __TS__ArrayFilter(
|
|
51138
|
+
BOSS_ID_VALUES,
|
|
51139
|
+
function(____, bossID) return bossID ~= BossID.RAGLICH end
|
|
51056
51140
|
)
|
|
51057
|
-
____exports.
|
|
51058
|
-
|
|
51059
|
-
|
|
51060
|
-
{__TS__Spread(____exports.ALL_BOSSES_SET)},
|
|
51061
|
-
function(____, bossID) return not isStoryBossID(nil, bossID) end
|
|
51062
|
-
)
|
|
51141
|
+
____exports.NON_STORY_BOSSES = __TS__ArrayFilter(
|
|
51142
|
+
____exports.ALL_BOSSES,
|
|
51143
|
+
function(____, bossID) return not isStoryBossID(nil, bossID) end
|
|
51063
51144
|
)
|
|
51064
51145
|
____exports.BOSS_ID_TO_STAGE_IDS = (function()
|
|
51065
51146
|
local partialBossIDsToStageIDs = {}
|
|
51066
51147
|
for ____, bossID in ipairs(BOSS_ID_VALUES) do
|
|
51067
51148
|
local stageIDs = __TS__New(Set)
|
|
51068
|
-
for ____, ____value in __TS__Iterator(____exports.
|
|
51149
|
+
for ____, ____value in __TS__Iterator(____exports.STAGE_ID_TO_BOSS_IDS) do
|
|
51069
51150
|
local stageID = ____value[1]
|
|
51070
|
-
local
|
|
51071
|
-
if
|
|
51151
|
+
local bossIDs = ____value[2]
|
|
51152
|
+
if __TS__ArrayIncludes(bossIDs, bossID) then
|
|
51072
51153
|
stageIDs:add(stageID)
|
|
51073
51154
|
end
|
|
51074
51155
|
end
|
|
@@ -51303,10 +51384,10 @@ local ____bossNames = require("objects.bossNames")
|
|
|
51303
51384
|
local BOSS_NAMES = ____bossNames.BOSS_NAMES
|
|
51304
51385
|
local DEFAULT_BOSS_NAME = ____bossNames.DEFAULT_BOSS_NAME
|
|
51305
51386
|
local ____bossSets = require("sets.bossSets")
|
|
51306
|
-
local
|
|
51307
|
-
local ALL_BOSSES_SET = ____bossSets.ALL_BOSSES_SET
|
|
51387
|
+
local ALL_BOSSES = ____bossSets.ALL_BOSSES
|
|
51308
51388
|
local BOSS_ID_TO_STAGE_IDS = ____bossSets.BOSS_ID_TO_STAGE_IDS
|
|
51309
|
-
local
|
|
51389
|
+
local NON_STORY_BOSSES = ____bossSets.NON_STORY_BOSSES
|
|
51390
|
+
local STAGE_ID_TO_BOSS_IDS = ____bossSets.STAGE_ID_TO_BOSS_IDS
|
|
51310
51391
|
local STAGE_TO_COMBINED_BOSS_SET_MAP = ____bossSets.STAGE_TO_COMBINED_BOSS_SET_MAP
|
|
51311
51392
|
local ____repentanceBossIDsSet = require("sets.repentanceBossIDsSet")
|
|
51312
51393
|
local REPENTANCE_ONLY_BOSS_IDS_SET = ____repentanceBossIDsSet.REPENTANCE_ONLY_BOSS_IDS_SET
|
|
@@ -51373,8 +51454,8 @@ function ____exports.getAliveBosses(self, entityType, variant, subType, ignoreFr
|
|
|
51373
51454
|
function(____, aliveNPC) return aliveNPC:IsBoss() end
|
|
51374
51455
|
)
|
|
51375
51456
|
end
|
|
51376
|
-
--- Helper function to get
|
|
51377
|
-
-- enum
|
|
51457
|
+
--- Helper function to get an array with every boss in the game. This is derived from the `BossID`
|
|
51458
|
+
-- enum.
|
|
51378
51459
|
--
|
|
51379
51460
|
-- This includes:
|
|
51380
51461
|
-- - Ultra Greed
|
|
@@ -51387,15 +51468,15 @@ end
|
|
|
51387
51468
|
-- - sub-bosses of The Beast fight (e.g. Ultra Famine, Ultra Pestilence, Ultra War, Ultra Death)
|
|
51388
51469
|
-- - bosses that do not have any Boss Rooms defined due to being unfinished (e.g. Raglich)
|
|
51389
51470
|
--
|
|
51390
|
-
-- Also see the `
|
|
51391
|
-
|
|
51392
|
-
|
|
51393
|
-
|
|
51394
|
-
function
|
|
51395
|
-
|
|
51396
|
-
|
|
51397
|
-
|
|
51398
|
-
return
|
|
51471
|
+
-- Also see the `getAllNonStoryBosses` function.
|
|
51472
|
+
function ____exports.getAllBosses(self)
|
|
51473
|
+
return ALL_BOSSES
|
|
51474
|
+
end
|
|
51475
|
+
--- Helper function to get an array with every boss in the game. This is derived from the `BossID`
|
|
51476
|
+
-- enum. This is the same thing as the `getAllBosses` helper function, but with story bosses
|
|
51477
|
+
-- filtered out.
|
|
51478
|
+
function ____exports.getAllNonStoryBosses(self)
|
|
51479
|
+
return NON_STORY_BOSSES
|
|
51399
51480
|
end
|
|
51400
51481
|
--- Helper function to get the boss ID corresponding to the current room. Returns undefined if the
|
|
51401
51482
|
-- current room is not a Boss Room.
|
|
@@ -51423,18 +51504,26 @@ function ____exports.getBossIDFromEntityTypeVariant(self, entityType, variant)
|
|
|
51423
51504
|
local entityTypeVariant = (tostring(entityType) .. ".") .. tostring(variant)
|
|
51424
51505
|
return ENTITY_TYPE_VARIANT_TO_BOSS_ID_MAP:get(entityTypeVariant)
|
|
51425
51506
|
end
|
|
51507
|
+
--- Helper function to get the set of vanilla bosses for a particular stage across all of the stage
|
|
51508
|
+
-- types. For example, specifying `LevelStage.BASEMENT_2` will return a set with all of the bosses
|
|
51509
|
+
-- for Basement, Cellar, Burning Basement, Downpour, and Dross.
|
|
51510
|
+
--
|
|
51511
|
+
-- Also see the `getAllBossesSet` and `getBossIDsForStageID` functions.
|
|
51512
|
+
function ____exports.getBossIDsForStage(self, stage)
|
|
51513
|
+
return STAGE_TO_COMBINED_BOSS_SET_MAP:get(stage)
|
|
51514
|
+
end
|
|
51515
|
+
--- Helper function to get the set of vanilla bosses that can randomly appear on a particular stage
|
|
51516
|
+
-- ID.
|
|
51517
|
+
--
|
|
51518
|
+
-- Also see the `getAllBossesSet` and `getBossIDsForStage` functions.
|
|
51519
|
+
function ____exports.getBossIDsForStageID(self, stageID)
|
|
51520
|
+
return STAGE_ID_TO_BOSS_IDS:get(stageID)
|
|
51521
|
+
end
|
|
51426
51522
|
--- Helper function to get the proper English name for a boss. For example, the name for
|
|
51427
51523
|
-- `BossID.WRETCHED` (36) is "The Wretched".
|
|
51428
51524
|
function ____exports.getBossName(self, bossID)
|
|
51429
51525
|
return BOSS_NAMES[bossID] or DEFAULT_BOSS_NAME
|
|
51430
51526
|
end
|
|
51431
|
-
--- Helper function to get the set of vanilla bosses for a particular stage and stage type
|
|
51432
|
-
-- combination.
|
|
51433
|
-
--
|
|
51434
|
-
-- Also see the `getAllBossesSet` and `getCombinedBossSet` functions.
|
|
51435
|
-
function ____exports.getBossSet(self, stageID)
|
|
51436
|
-
return STAGE_ID_TO_BOSS_SET_MAP:get(stageID)
|
|
51437
|
-
end
|
|
51438
51527
|
--- Helper function to get the set of stage IDs that a particular boss naturally appears in.
|
|
51439
51528
|
function ____exports.getBossStageIDs(self, bossID)
|
|
51440
51529
|
return BOSS_ID_TO_STAGE_IDS[bossID]
|
|
@@ -51464,14 +51553,6 @@ function ____exports.getBosses(self, entityType, variant, subType, ignoreFriendl
|
|
|
51464
51553
|
function(____, npc) return npc:IsBoss() end
|
|
51465
51554
|
)
|
|
51466
51555
|
end
|
|
51467
|
-
--- Helper function to get the set of vanilla bosses for a particular stage across all of the stage
|
|
51468
|
-
-- types. For example, specifying `LevelStage.BASEMENT_2` will return a set with all of the bosses
|
|
51469
|
-
-- for Basement, Cellar, Burning Basement, Downpour, and Dross.
|
|
51470
|
-
--
|
|
51471
|
-
-- Also see the `getAllBossesSet` and `getBossSet` functions.
|
|
51472
|
-
function ____exports.getCombinedBossSet(self, stage)
|
|
51473
|
-
return STAGE_TO_COMBINED_BOSS_SET_MAP:get(stage)
|
|
51474
|
-
end
|
|
51475
51556
|
function ____exports.getEntityTypeVariantFromBossID(self, bossID)
|
|
51476
51557
|
return BOSS_ID_TO_ENTITY_TYPE_VARIANT[bossID]
|
|
51477
51558
|
end
|
|
@@ -51492,21 +51573,21 @@ local function getNumBossSegments(self, entityType, variant, numSegments)
|
|
|
51492
51573
|
return numSegments
|
|
51493
51574
|
end
|
|
51494
51575
|
repeat
|
|
51495
|
-
local
|
|
51496
|
-
local
|
|
51497
|
-
if
|
|
51576
|
+
local ____switch23 = entityType
|
|
51577
|
+
local ____cond23 = ____switch23 == EntityType.CHUB
|
|
51578
|
+
if ____cond23 then
|
|
51498
51579
|
do
|
|
51499
51580
|
return 3
|
|
51500
51581
|
end
|
|
51501
51582
|
end
|
|
51502
|
-
|
|
51503
|
-
if
|
|
51583
|
+
____cond23 = ____cond23 or ____switch23 == EntityType.LOKI
|
|
51584
|
+
if ____cond23 then
|
|
51504
51585
|
do
|
|
51505
51586
|
return variant == LokiVariant.LOKII and 2 or 1
|
|
51506
51587
|
end
|
|
51507
51588
|
end
|
|
51508
|
-
|
|
51509
|
-
if
|
|
51589
|
+
____cond23 = ____cond23 or ____switch23 == EntityType.GURGLING
|
|
51590
|
+
if ____cond23 then
|
|
51510
51591
|
do
|
|
51511
51592
|
return 2
|
|
51512
51593
|
end
|
package/dist/sets/bossSets.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { BossID, LevelStage, StageID } from "isaac-typescript-definitions";
|
|
2
|
-
export declare const
|
|
2
|
+
export declare const STAGE_ID_TO_BOSS_IDS: ReadonlyMap<StageID, readonly BossID[]>;
|
|
3
3
|
export declare const STAGE_TO_COMBINED_BOSS_SET_MAP: ReadonlyMap<LevelStage, ReadonlySet<BossID>>;
|
|
4
|
-
export declare const
|
|
5
|
-
export declare const
|
|
4
|
+
export declare const ALL_BOSSES: readonly BossID[];
|
|
5
|
+
export declare const NON_STORY_BOSSES: readonly BossID[];
|
|
6
6
|
export declare const BOSS_ID_TO_STAGE_IDS: Readonly<Record<BossID, ReadonlySet<StageID>>>;
|
|
7
7
|
//# sourceMappingURL=bossSets.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bossSets.d.ts","sourceRoot":"","sources":["../../src/sets/bossSets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"bossSets.d.ts","sourceRoot":"","sources":["../../src/sets/bossSets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAgb3E,eAAO,MAAM,oBAAoB,yCAiChC,CAAC;AAEF,eAAO,MAAM,8BAA8B,8CAiBzC,CAAC;AAEH,eAAO,MAAM,UAAU,EAAE,SAAS,MAAM,EAEvC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,SAAS,MAAM,EAE7C,CAAC;AAEF,eAAO,MAAM,oBAAoB,gDA+B7B,CAAC"}
|