isaacscript-common 82.0.2 → 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 +232 -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/package.json +1 -1
- 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
|
|
|
@@ -50697,10 +50697,13 @@ return ____exports
|
|
|
50697
50697
|
end,
|
|
50698
50698
|
["sets.bossSets"] = function(...)
|
|
50699
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
|
|
50700
50703
|
local __TS__New = ____lualib.__TS__New
|
|
50701
50704
|
local __TS__ArrayFilter = ____lualib.__TS__ArrayFilter
|
|
50702
|
-
local __TS__Spread = ____lualib.__TS__Spread
|
|
50703
50705
|
local Set = ____lualib.Set
|
|
50706
|
+
local __TS__ArrayIncludes = ____lualib.__TS__ArrayIncludes
|
|
50704
50707
|
local __TS__Iterator = ____lualib.__TS__Iterator
|
|
50705
50708
|
local ____exports = {}
|
|
50706
50709
|
local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.index")
|
|
@@ -50709,8 +50712,6 @@ local LevelStage = ____isaac_2Dtypescript_2Ddefinitions.LevelStage
|
|
|
50709
50712
|
local StageID = ____isaac_2Dtypescript_2Ddefinitions.StageID
|
|
50710
50713
|
local ____cachedEnumValues = require("arrays.cachedEnumValues")
|
|
50711
50714
|
local BOSS_ID_VALUES = ____cachedEnumValues.BOSS_ID_VALUES
|
|
50712
|
-
local ____set = require("functions.set")
|
|
50713
|
-
local combineSets = ____set.combineSets
|
|
50714
50715
|
local ____storyBosses = require("functions.storyBosses")
|
|
50715
50716
|
local isStoryBossID = ____storyBosses.isStoryBossID
|
|
50716
50717
|
local ____ReadonlyMap = require("types.ReadonlyMap")
|
|
@@ -50718,7 +50719,7 @@ local ReadonlyMap = ____ReadonlyMap.ReadonlyMap
|
|
|
50718
50719
|
local ____ReadonlySet = require("types.ReadonlySet")
|
|
50719
50720
|
local ReadonlySet = ____ReadonlySet.ReadonlySet
|
|
50720
50721
|
--- For `StageID.BASEMENT` (1).
|
|
50721
|
-
local
|
|
50722
|
+
local BASEMENT_BOSSES = {
|
|
50722
50723
|
BossID.MONSTRO,
|
|
50723
50724
|
BossID.LARRY_JR,
|
|
50724
50725
|
BossID.FAMINE,
|
|
@@ -50733,9 +50734,9 @@ local BASEMENT_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50733
50734
|
BossID.DANGLE,
|
|
50734
50735
|
BossID.TURDLING,
|
|
50735
50736
|
BossID.BABY_PLUM
|
|
50736
|
-
}
|
|
50737
|
+
}
|
|
50737
50738
|
--- For `StageID.CELLAR` (2).
|
|
50738
|
-
local
|
|
50739
|
+
local CELLAR_BOSSES = {
|
|
50739
50740
|
BossID.FAMINE,
|
|
50740
50741
|
BossID.DUKE_OF_FLIES,
|
|
50741
50742
|
BossID.HEADLESS_HORSEMAN,
|
|
@@ -50747,9 +50748,9 @@ local CELLAR_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50747
50748
|
BossID.LITTLE_HORN,
|
|
50748
50749
|
BossID.RAG_MAN,
|
|
50749
50750
|
BossID.BABY_PLUM
|
|
50750
|
-
}
|
|
50751
|
+
}
|
|
50751
50752
|
--- For `StageID.BURNING_BASEMENT` (3).
|
|
50752
|
-
local
|
|
50753
|
+
local BURNING_BASEMENT_BOSSES = {
|
|
50753
50754
|
BossID.MONSTRO,
|
|
50754
50755
|
BossID.LARRY_JR,
|
|
50755
50756
|
BossID.FAMINE,
|
|
@@ -50765,28 +50766,42 @@ local BURNING_BASEMENT_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50765
50766
|
BossID.DANGLE,
|
|
50766
50767
|
BossID.TURDLING,
|
|
50767
50768
|
BossID.BABY_PLUM
|
|
50768
|
-
}
|
|
50769
|
+
}
|
|
50769
50770
|
--- For `StageID.DOWNPOUR` (27).
|
|
50770
|
-
local
|
|
50771
|
+
local DOWNPOUR_BOSSES = {BossID.LIL_BLUB, BossID.WORMWOOD, BossID.RAINMAKER, BossID.MIN_MIN}
|
|
50771
50772
|
--- For `StageID.DROSS` (28).
|
|
50772
|
-
local
|
|
50773
|
+
local DROSS_BOSSES = {
|
|
50773
50774
|
BossID.LIL_BLUB,
|
|
50774
50775
|
BossID.WORMWOOD,
|
|
50775
50776
|
BossID.CLOG,
|
|
50776
50777
|
BossID.COLOSTOMIA,
|
|
50777
50778
|
BossID.TURDLET
|
|
50778
|
-
}
|
|
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
|
+
)
|
|
50779
50798
|
--- The set of unique bosses for Basement, Cellar, Burning Basement, Downpour, and Dross.
|
|
50780
|
-
local ALL_BASEMENT_BOSSES_SET =
|
|
50781
|
-
|
|
50782
|
-
|
|
50783
|
-
CELLAR_BOSSES_SET,
|
|
50784
|
-
BURNING_BASEMENT_BOSSES_SET,
|
|
50785
|
-
DOWNPOUR_BOSSES_SET,
|
|
50786
|
-
DROSS_BOSSES_SET
|
|
50799
|
+
local ALL_BASEMENT_BOSSES_SET = __TS__New(
|
|
50800
|
+
____ReadonlySet_1,
|
|
50801
|
+
{__TS__SparseArraySpread(____array_0)}
|
|
50787
50802
|
)
|
|
50788
50803
|
--- For `StageID.CAVES` (4).
|
|
50789
|
-
local
|
|
50804
|
+
local CAVES_BOSSES = {
|
|
50790
50805
|
BossID.CHUB,
|
|
50791
50806
|
BossID.GURDY,
|
|
50792
50807
|
BossID.PESTILENCE,
|
|
@@ -50802,9 +50817,9 @@ local CAVES_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50802
50817
|
BossID.RAG_MEGA,
|
|
50803
50818
|
BossID.BIG_HORN,
|
|
50804
50819
|
BossID.BUMBINO
|
|
50805
|
-
}
|
|
50820
|
+
}
|
|
50806
50821
|
--- For `StageID.CATACOMBS` (5).
|
|
50807
|
-
local
|
|
50822
|
+
local CATACOMBS_BOSSES = {
|
|
50808
50823
|
BossID.PESTILENCE,
|
|
50809
50824
|
BossID.PEEP,
|
|
50810
50825
|
BossID.HEADLESS_HORSEMAN,
|
|
@@ -50821,9 +50836,9 @@ local CATACOMBS_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50821
50836
|
BossID.RAG_MEGA,
|
|
50822
50837
|
BossID.BIG_HORN,
|
|
50823
50838
|
BossID.BUMBINO
|
|
50824
|
-
}
|
|
50839
|
+
}
|
|
50825
50840
|
--- For `StageID.FLOODED_CAVES` (6).
|
|
50826
|
-
local
|
|
50841
|
+
local FLOODED_CAVES_BOSSES = {
|
|
50827
50842
|
BossID.CHUB,
|
|
50828
50843
|
BossID.GURDY,
|
|
50829
50844
|
BossID.PESTILENCE,
|
|
@@ -50841,30 +50856,44 @@ local FLOODED_CAVES_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50841
50856
|
BossID.RAG_MEGA,
|
|
50842
50857
|
BossID.BIG_HORN,
|
|
50843
50858
|
BossID.BUMBINO
|
|
50844
|
-
}
|
|
50859
|
+
}
|
|
50845
50860
|
--- For `StageID.MINES` (29).
|
|
50846
|
-
local
|
|
50861
|
+
local MINES_BOSSES = {BossID.REAP_CREEP, BossID.TUFF_TWINS, BossID.HORNFEL, BossID.GREAT_GIDEON}
|
|
50847
50862
|
--- For `StageID.ASHPIT` (30).
|
|
50848
|
-
local
|
|
50863
|
+
local ASHPIT_BOSSES = {
|
|
50849
50864
|
BossID.PILE,
|
|
50850
50865
|
BossID.GREAT_GIDEON,
|
|
50851
50866
|
BossID.SINGE,
|
|
50852
50867
|
BossID.SHELL,
|
|
50853
50868
|
BossID.CLUTCH
|
|
50854
|
-
}
|
|
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
|
+
)
|
|
50855
50888
|
--- The set of unique bosses for Caves, Catacombs, Flooded Caves, Mines, and Ashpit.
|
|
50856
|
-
local ALL_CAVES_BOSSES_SET =
|
|
50857
|
-
|
|
50858
|
-
|
|
50859
|
-
CATACOMBS_BOSSES_SET,
|
|
50860
|
-
FLOODED_CAVES_BOSSES_SET,
|
|
50861
|
-
MINES_BOSSES_SET,
|
|
50862
|
-
ASHPIT_BOSSES_SET
|
|
50889
|
+
local ALL_CAVES_BOSSES_SET = __TS__New(
|
|
50890
|
+
____ReadonlySet_3,
|
|
50891
|
+
{__TS__SparseArraySpread(____array_2)}
|
|
50863
50892
|
)
|
|
50864
50893
|
--- For `StageID.DEPTHS` (7).
|
|
50865
50894
|
--
|
|
50866
50895
|
-- Note that this set includes Mom, even though they are not technically in the boss pool.
|
|
50867
|
-
local
|
|
50896
|
+
local DEPTHS_BOSSES = {
|
|
50868
50897
|
BossID.MONSTRO_2,
|
|
50869
50898
|
BossID.MOM,
|
|
50870
50899
|
BossID.WAR,
|
|
@@ -50877,11 +50906,11 @@ local DEPTHS_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50877
50906
|
BossID.BROWNIE,
|
|
50878
50907
|
BossID.SISTERS_VIS,
|
|
50879
50908
|
BossID.REAP_CREEP
|
|
50880
|
-
}
|
|
50909
|
+
}
|
|
50881
50910
|
--- For `StageID.NECROPOLIS` (8).
|
|
50882
50911
|
--
|
|
50883
50912
|
-- Note that this set includes Mom, even though they are not technically in the boss pool.
|
|
50884
|
-
local
|
|
50913
|
+
local NECROPOLIS_BOSSES = {
|
|
50885
50914
|
BossID.MOM,
|
|
50886
50915
|
BossID.WAR,
|
|
50887
50916
|
BossID.LOKI,
|
|
@@ -50893,11 +50922,11 @@ local NECROPOLIS_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50893
50922
|
BossID.BROWNIE,
|
|
50894
50923
|
BossID.SISTERS_VIS,
|
|
50895
50924
|
BossID.PILE
|
|
50896
|
-
}
|
|
50925
|
+
}
|
|
50897
50926
|
--- For `StageID.DANK_DEPTHS` (9).
|
|
50898
50927
|
--
|
|
50899
50928
|
-- Note that this set includes Mom, even though they are not technically in the boss pool.
|
|
50900
|
-
local
|
|
50929
|
+
local DANK_DEPTHS_BOSSES = {
|
|
50901
50930
|
BossID.MONSTRO_2,
|
|
50902
50931
|
BossID.MOM,
|
|
50903
50932
|
BossID.WAR,
|
|
@@ -50910,29 +50939,43 @@ local DANK_DEPTHS_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50910
50939
|
BossID.BROWNIE,
|
|
50911
50940
|
BossID.SISTERS_VIS,
|
|
50912
50941
|
BossID.REAP_CREEP
|
|
50913
|
-
}
|
|
50942
|
+
}
|
|
50914
50943
|
--- For `StageID.MAUSOLEUM` (31).
|
|
50915
50944
|
--
|
|
50916
50945
|
-- Note that this set includes Mausoleum Mom, even though they are not technically in the boss pool.
|
|
50917
|
-
local
|
|
50946
|
+
local MAUSOLEUM_BOSSES = {BossID.SIREN, BossID.HERETIC, BossID.MAUSOLEUM_MOM}
|
|
50918
50947
|
--- For `StageID.GEHENNA` (32).
|
|
50919
50948
|
--
|
|
50920
50949
|
-- Note that this set includes Mausoleum Mom, even though they are not technically in the boss pool.
|
|
50921
|
-
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
|
+
)
|
|
50922
50969
|
--- The set of unique bosses for Depths, Necropolis, Dank Depths, Mausoleum, and Gehenna.
|
|
50923
|
-
local ALL_DEPTHS_BOSSES_SET =
|
|
50924
|
-
|
|
50925
|
-
|
|
50926
|
-
NECROPOLIS_BOSSES_SET,
|
|
50927
|
-
DANK_DEPTHS_BOSSES_SET,
|
|
50928
|
-
MAUSOLEUM_BOSSES_SET,
|
|
50929
|
-
GEHENNA_BOSSES_SET
|
|
50970
|
+
local ALL_DEPTHS_BOSSES_SET = __TS__New(
|
|
50971
|
+
____ReadonlySet_5,
|
|
50972
|
+
{__TS__SparseArraySpread(____array_4)}
|
|
50930
50973
|
)
|
|
50931
50974
|
--- For `StageID.WOMB` (10).
|
|
50932
50975
|
--
|
|
50933
50976
|
-- Note that this set includes Mom's Heart & It Lives, even though they are not technically in the
|
|
50934
50977
|
-- boss pool.
|
|
50935
|
-
local
|
|
50978
|
+
local WOMB_BOSSES = {
|
|
50936
50979
|
BossID.SCOLEX,
|
|
50937
50980
|
BossID.MOMS_HEART,
|
|
50938
50981
|
BossID.DEATH,
|
|
@@ -50945,12 +50988,12 @@ local WOMB_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50945
50988
|
BossID.MAMA_GURDY,
|
|
50946
50989
|
BossID.MR_FRED,
|
|
50947
50990
|
BossID.MATRIARCH
|
|
50948
|
-
}
|
|
50991
|
+
}
|
|
50949
50992
|
--- For `StageID.UTERO` (11).
|
|
50950
50993
|
--
|
|
50951
50994
|
-- Note that this set includes Mom's Heart & It Lives, even though they are not technically in the
|
|
50952
50995
|
-- boss pool.
|
|
50953
|
-
local
|
|
50996
|
+
local UTERO_BOSSES = {
|
|
50954
50997
|
BossID.MOMS_HEART,
|
|
50955
50998
|
BossID.DEATH,
|
|
50956
50999
|
BossID.HEADLESS_HORSEMAN,
|
|
@@ -50962,12 +51005,12 @@ local UTERO_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50962
51005
|
BossID.CONQUEST,
|
|
50963
51006
|
BossID.DADDY_LONG_LEGS,
|
|
50964
51007
|
BossID.TRIACHNID
|
|
50965
|
-
}
|
|
51008
|
+
}
|
|
50966
51009
|
--- For `StageID.SCARRED_WOMB` (12).
|
|
50967
51010
|
--
|
|
50968
51011
|
-- Note that this set includes Mom's Heart & It Lives, even though they are not technically in the
|
|
50969
51012
|
-- boss pool.
|
|
50970
|
-
local
|
|
51013
|
+
local SCARRED_WOMB_BOSSES = {
|
|
50971
51014
|
BossID.SCOLEX,
|
|
50972
51015
|
BossID.MOMS_HEART,
|
|
50973
51016
|
BossID.DEATH,
|
|
@@ -50981,59 +51024,100 @@ local SCARRED_WOMB_BOSSES_SET = __TS__New(ReadonlySet, {
|
|
|
50981
51024
|
BossID.MAMA_GURDY,
|
|
50982
51025
|
BossID.MR_FRED,
|
|
50983
51026
|
BossID.MATRIARCH
|
|
50984
|
-
}
|
|
51027
|
+
}
|
|
50985
51028
|
--- For `StageID.CORPSE` (33).
|
|
50986
51029
|
--
|
|
50987
51030
|
-- Note that this set includes Mother, even though she is not technically in the boss pool.
|
|
50988
|
-
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
|
+
)
|
|
50989
51046
|
--- The set of unique bosses for Womb, Utero, Scarred Womb, and Corpse.
|
|
50990
|
-
local ALL_WOMB_BOSSES_SET =
|
|
50991
|
-
|
|
50992
|
-
|
|
50993
|
-
|
|
50994
|
-
|
|
50995
|
-
|
|
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)}
|
|
50996
51067
|
)
|
|
50997
|
-
local BLUE_WOMB_BOSSES_SET = __TS__New(ReadonlySet, {BossID.HUSH})
|
|
50998
|
-
local SHEOL_BOSSES_SET = __TS__New(ReadonlySet, {BossID.SATAN})
|
|
50999
|
-
local CATHEDRAL_BOSSES_SET = __TS__New(ReadonlySet, {BossID.ISAAC})
|
|
51000
|
-
local ALL_STAGE_10_BOSSES_SET = combineSets(nil, SHEOL_BOSSES_SET, CATHEDRAL_BOSSES_SET)
|
|
51001
51068
|
--- Note that this set includes Mega Satan, even though they are not technically in the boss pool.
|
|
51002
|
-
local
|
|
51069
|
+
local DARK_ROOM_BOSSES = {BossID.LAMB, BossID.MEGA_SATAN}
|
|
51003
51070
|
--- Note that this set includes Mega Satan, even though they are not technically in the boss pool.
|
|
51004
|
-
local
|
|
51005
|
-
local
|
|
51006
|
-
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
|
+
)
|
|
51007
51087
|
--- Includes Dogma and The Beast. Does not include Ultra Famine, Ultra Pestilence, Ultra War, and
|
|
51008
51088
|
-- Ultra Death (since they do not have boss IDs).
|
|
51009
|
-
local
|
|
51010
|
-
|
|
51011
|
-
|
|
51012
|
-
{
|
|
51013
|
-
|
|
51014
|
-
|
|
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.
|
|
51034
|
-
{StageID.
|
|
51035
|
-
{StageID.
|
|
51036
|
-
{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}
|
|
51037
51121
|
})
|
|
51038
51122
|
____exports.STAGE_TO_COMBINED_BOSS_SET_MAP = __TS__New(ReadonlyMap, {
|
|
51039
51123
|
{LevelStage.BASEMENT_1, ALL_BASEMENT_BOSSES_SET},
|
|
@@ -51044,34 +51128,28 @@ ____exports.STAGE_TO_COMBINED_BOSS_SET_MAP = __TS__New(ReadonlyMap, {
|
|
|
51044
51128
|
{LevelStage.DEPTHS_2, ALL_DEPTHS_BOSSES_SET},
|
|
51045
51129
|
{LevelStage.WOMB_1, ALL_WOMB_BOSSES_SET},
|
|
51046
51130
|
{LevelStage.WOMB_2, ALL_WOMB_BOSSES_SET},
|
|
51047
|
-
{LevelStage.BLUE_WOMB,
|
|
51131
|
+
{LevelStage.BLUE_WOMB, ALL_BLUE_WOMB_BOSSES_SET},
|
|
51048
51132
|
{LevelStage.SHEOL_CATHEDRAL, ALL_STAGE_10_BOSSES_SET},
|
|
51049
51133
|
{LevelStage.DARK_ROOM_CHEST, ALL_STAGE_11_BOSSES_SET},
|
|
51050
|
-
{LevelStage.VOID,
|
|
51051
|
-
{LevelStage.HOME,
|
|
51134
|
+
{LevelStage.VOID, ALL_VOID_BOSSES_SET},
|
|
51135
|
+
{LevelStage.HOME, ALL_HOME_BOSSES_SET}
|
|
51052
51136
|
})
|
|
51053
|
-
____exports.
|
|
51054
|
-
|
|
51055
|
-
|
|
51056
|
-
BOSS_ID_VALUES,
|
|
51057
|
-
function(____, bossID) return bossID ~= BossID.RAGLICH end
|
|
51058
|
-
)
|
|
51137
|
+
____exports.ALL_BOSSES = __TS__ArrayFilter(
|
|
51138
|
+
BOSS_ID_VALUES,
|
|
51139
|
+
function(____, bossID) return bossID ~= BossID.RAGLICH end
|
|
51059
51140
|
)
|
|
51060
|
-
____exports.
|
|
51061
|
-
|
|
51062
|
-
|
|
51063
|
-
{__TS__Spread(____exports.ALL_BOSSES_SET)},
|
|
51064
|
-
function(____, bossID) return not isStoryBossID(nil, bossID) end
|
|
51065
|
-
)
|
|
51141
|
+
____exports.NON_STORY_BOSSES = __TS__ArrayFilter(
|
|
51142
|
+
____exports.ALL_BOSSES,
|
|
51143
|
+
function(____, bossID) return not isStoryBossID(nil, bossID) end
|
|
51066
51144
|
)
|
|
51067
51145
|
____exports.BOSS_ID_TO_STAGE_IDS = (function()
|
|
51068
51146
|
local partialBossIDsToStageIDs = {}
|
|
51069
51147
|
for ____, bossID in ipairs(BOSS_ID_VALUES) do
|
|
51070
51148
|
local stageIDs = __TS__New(Set)
|
|
51071
|
-
for ____, ____value in __TS__Iterator(____exports.
|
|
51149
|
+
for ____, ____value in __TS__Iterator(____exports.STAGE_ID_TO_BOSS_IDS) do
|
|
51072
51150
|
local stageID = ____value[1]
|
|
51073
|
-
local
|
|
51074
|
-
if
|
|
51151
|
+
local bossIDs = ____value[2]
|
|
51152
|
+
if __TS__ArrayIncludes(bossIDs, bossID) then
|
|
51075
51153
|
stageIDs:add(stageID)
|
|
51076
51154
|
end
|
|
51077
51155
|
end
|
|
@@ -51306,10 +51384,10 @@ local ____bossNames = require("objects.bossNames")
|
|
|
51306
51384
|
local BOSS_NAMES = ____bossNames.BOSS_NAMES
|
|
51307
51385
|
local DEFAULT_BOSS_NAME = ____bossNames.DEFAULT_BOSS_NAME
|
|
51308
51386
|
local ____bossSets = require("sets.bossSets")
|
|
51309
|
-
local
|
|
51310
|
-
local ALL_BOSSES_SET = ____bossSets.ALL_BOSSES_SET
|
|
51387
|
+
local ALL_BOSSES = ____bossSets.ALL_BOSSES
|
|
51311
51388
|
local BOSS_ID_TO_STAGE_IDS = ____bossSets.BOSS_ID_TO_STAGE_IDS
|
|
51312
|
-
local
|
|
51389
|
+
local NON_STORY_BOSSES = ____bossSets.NON_STORY_BOSSES
|
|
51390
|
+
local STAGE_ID_TO_BOSS_IDS = ____bossSets.STAGE_ID_TO_BOSS_IDS
|
|
51313
51391
|
local STAGE_TO_COMBINED_BOSS_SET_MAP = ____bossSets.STAGE_TO_COMBINED_BOSS_SET_MAP
|
|
51314
51392
|
local ____repentanceBossIDsSet = require("sets.repentanceBossIDsSet")
|
|
51315
51393
|
local REPENTANCE_ONLY_BOSS_IDS_SET = ____repentanceBossIDsSet.REPENTANCE_ONLY_BOSS_IDS_SET
|
|
@@ -51376,8 +51454,8 @@ function ____exports.getAliveBosses(self, entityType, variant, subType, ignoreFr
|
|
|
51376
51454
|
function(____, aliveNPC) return aliveNPC:IsBoss() end
|
|
51377
51455
|
)
|
|
51378
51456
|
end
|
|
51379
|
-
--- Helper function to get
|
|
51380
|
-
-- enum
|
|
51457
|
+
--- Helper function to get an array with every boss in the game. This is derived from the `BossID`
|
|
51458
|
+
-- enum.
|
|
51381
51459
|
--
|
|
51382
51460
|
-- This includes:
|
|
51383
51461
|
-- - Ultra Greed
|
|
@@ -51390,15 +51468,15 @@ end
|
|
|
51390
51468
|
-- - sub-bosses of The Beast fight (e.g. Ultra Famine, Ultra Pestilence, Ultra War, Ultra Death)
|
|
51391
51469
|
-- - bosses that do not have any Boss Rooms defined due to being unfinished (e.g. Raglich)
|
|
51392
51470
|
--
|
|
51393
|
-
-- Also see the `
|
|
51394
|
-
|
|
51395
|
-
|
|
51396
|
-
|
|
51397
|
-
function
|
|
51398
|
-
|
|
51399
|
-
|
|
51400
|
-
|
|
51401
|
-
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
|
|
51402
51480
|
end
|
|
51403
51481
|
--- Helper function to get the boss ID corresponding to the current room. Returns undefined if the
|
|
51404
51482
|
-- current room is not a Boss Room.
|
|
@@ -51426,18 +51504,26 @@ function ____exports.getBossIDFromEntityTypeVariant(self, entityType, variant)
|
|
|
51426
51504
|
local entityTypeVariant = (tostring(entityType) .. ".") .. tostring(variant)
|
|
51427
51505
|
return ENTITY_TYPE_VARIANT_TO_BOSS_ID_MAP:get(entityTypeVariant)
|
|
51428
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
|
|
51429
51522
|
--- Helper function to get the proper English name for a boss. For example, the name for
|
|
51430
51523
|
-- `BossID.WRETCHED` (36) is "The Wretched".
|
|
51431
51524
|
function ____exports.getBossName(self, bossID)
|
|
51432
51525
|
return BOSS_NAMES[bossID] or DEFAULT_BOSS_NAME
|
|
51433
51526
|
end
|
|
51434
|
-
--- Helper function to get the set of vanilla bosses for a particular stage and stage type
|
|
51435
|
-
-- combination.
|
|
51436
|
-
--
|
|
51437
|
-
-- Also see the `getAllBossesSet` and `getCombinedBossSet` functions.
|
|
51438
|
-
function ____exports.getBossSet(self, stageID)
|
|
51439
|
-
return STAGE_ID_TO_BOSS_SET_MAP:get(stageID)
|
|
51440
|
-
end
|
|
51441
51527
|
--- Helper function to get the set of stage IDs that a particular boss naturally appears in.
|
|
51442
51528
|
function ____exports.getBossStageIDs(self, bossID)
|
|
51443
51529
|
return BOSS_ID_TO_STAGE_IDS[bossID]
|
|
@@ -51467,14 +51553,6 @@ function ____exports.getBosses(self, entityType, variant, subType, ignoreFriendl
|
|
|
51467
51553
|
function(____, npc) return npc:IsBoss() end
|
|
51468
51554
|
)
|
|
51469
51555
|
end
|
|
51470
|
-
--- Helper function to get the set of vanilla bosses for a particular stage across all of the stage
|
|
51471
|
-
-- types. For example, specifying `LevelStage.BASEMENT_2` will return a set with all of the bosses
|
|
51472
|
-
-- for Basement, Cellar, Burning Basement, Downpour, and Dross.
|
|
51473
|
-
--
|
|
51474
|
-
-- Also see the `getAllBossesSet` and `getBossSet` functions.
|
|
51475
|
-
function ____exports.getCombinedBossSet(self, stage)
|
|
51476
|
-
return STAGE_TO_COMBINED_BOSS_SET_MAP:get(stage)
|
|
51477
|
-
end
|
|
51478
51556
|
function ____exports.getEntityTypeVariantFromBossID(self, bossID)
|
|
51479
51557
|
return BOSS_ID_TO_ENTITY_TYPE_VARIANT[bossID]
|
|
51480
51558
|
end
|
|
@@ -51495,21 +51573,21 @@ local function getNumBossSegments(self, entityType, variant, numSegments)
|
|
|
51495
51573
|
return numSegments
|
|
51496
51574
|
end
|
|
51497
51575
|
repeat
|
|
51498
|
-
local
|
|
51499
|
-
local
|
|
51500
|
-
if
|
|
51576
|
+
local ____switch23 = entityType
|
|
51577
|
+
local ____cond23 = ____switch23 == EntityType.CHUB
|
|
51578
|
+
if ____cond23 then
|
|
51501
51579
|
do
|
|
51502
51580
|
return 3
|
|
51503
51581
|
end
|
|
51504
51582
|
end
|
|
51505
|
-
|
|
51506
|
-
if
|
|
51583
|
+
____cond23 = ____cond23 or ____switch23 == EntityType.LOKI
|
|
51584
|
+
if ____cond23 then
|
|
51507
51585
|
do
|
|
51508
51586
|
return variant == LokiVariant.LOKII and 2 or 1
|
|
51509
51587
|
end
|
|
51510
51588
|
end
|
|
51511
|
-
|
|
51512
|
-
if
|
|
51589
|
+
____cond23 = ____cond23 or ____switch23 == EntityType.GURGLING
|
|
51590
|
+
if ____cond23 then
|
|
51513
51591
|
do
|
|
51514
51592
|
return 2
|
|
51515
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"}
|