isaacscript-common 48.0.0 → 49.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.
@@ -132,7 +132,7 @@ end
132
132
  --- Helper function to check if the provided door is the one that leads to the off-grid room that
133
133
  -- contains the portal to The Void. (In vanilla, the door will only appear in the Hush Boss Room.)
134
134
  function ____exports.isVoidDoor(self, door)
135
- return door.TargetRoomIndex == asNumber(nil, GridRoom.THE_VOID)
135
+ return door.TargetRoomIndex == asNumber(nil, GridRoom.VOID)
136
136
  end
137
137
  --- Helper function to remove a single door.
138
138
  function ____exports.removeDoor(self, door)
@@ -2,13 +2,14 @@
2
2
  /// <reference types="isaac-typescript-definitions" />
3
3
  /// <reference types="isaac-typescript-definitions" />
4
4
  /**
5
- * TypeScriptToLua will transpile TypeScript enums to Lua tables that have a double mapping. Thus,
6
- * when you iterate over them, you will get both the names of the enums and the values of the enums,
7
- * in a random order. Use this helper function to get the entries of the enum with the reverse
8
- * mappings filtered out.
5
+ * TypeScriptToLua will transpile TypeScript number enums to Lua tables that have a double mapping.
6
+ * Thus, when you iterate over them, you will get both the names of the enums and the values of the
7
+ * enums, in a random order. Use this helper function to get the entries of the enum with the
8
+ * reverse mappings filtered out.
9
9
  *
10
10
  * This function will return the enum values in a sorted order, which may not necessarily be the
11
- * same order as which they were declared in.
11
+ * same order as which they were declared in. (It is impossible to get the declaration order at
12
+ * run-time.)
12
13
  *
13
14
  * This function will work properly for both number enums and string enums. (Reverse mappings are
14
15
  * not created for string enums.)
@@ -20,12 +21,13 @@
20
21
  */
21
22
  export declare function getEnumEntries<T>(transpiledEnum: T): Array<[key: string, value: T[keyof T]]>;
22
23
  /**
23
- * TypeScriptToLua will transpile TypeScript enums to Lua tables that have a double mapping. Thus,
24
- * when you iterate over them, you will get both the names of the enums and the values of the enums,
25
- * in a random order. If all you need are the keys of an enum, use this helper function.
24
+ * TypeScriptToLua will transpile TypeScript number enums to Lua tables that have a double mapping.
25
+ * Thus, when you iterate over them, you will get both the names of the enums and the values of the
26
+ * enums, in a random order. If all you need are the keys of an enum, use this helper function.
26
27
  *
27
28
  * This function will return the enum keys in a sorted order, which may not necessarily be the same
28
- * order as which they were declared in.
29
+ * order as which they were declared in. (It is impossible to get the declaration order at
30
+ * run-time.)
29
31
  *
30
32
  * This function will work properly for both number enums and string enums. (Reverse mappings are
31
33
  * not created for string enums.)
@@ -39,12 +41,31 @@ export declare function getEnumKeys(transpiledEnum: Record<string | number, stri
39
41
  /** Helper function to get the amount of entries inside of an enum. */
40
42
  export declare function getEnumLength(transpiledEnum: Record<string | number, string | number>): int;
41
43
  /**
42
- * TypeScriptToLua will transpile TypeScript enums to Lua tables that have a double mapping. Thus,
43
- * when you iterate over them, you will get both the names of the enums and the values of the enums,
44
- * in a random order. If all you need are the values of an enum, use this helper function.
44
+ * TypeScriptToLua will transpile TypeScript number enums to Lua tables that have a double mapping.
45
+ * Thus, when you iterate over them, you will get both the names of the enums and the values of the
46
+ * enums, in a random order. If all you need are the names of an enum from the reverse mapping, use
47
+ * this helper function.
48
+ *
49
+ * This function will return the enum names in a sorted order, which may not necessarily be the same
50
+ * order as which they were declared in. (It is impossible to get the declaration order at
51
+ * run-time.)
52
+ *
53
+ * This function will work properly for both number enums and string enums. (Reverse mappings are
54
+ * not created for string enums, so their names would be equivalent to what would be returned by the
55
+ * `getEnumKeys` function.)
56
+ *
57
+ * For a more in depth explanation, see:
58
+ * https://isaacscript.github.io/main/gotchas#iterating-over-enums
59
+ */
60
+ export declare function getEnumNames(transpiledEnum: Record<string | number, string | number>): string[];
61
+ /**
62
+ * TypeScriptToLua will transpile TypeScript number enums to Lua tables that have a double mapping.
63
+ * Thus, when you iterate over them, you will get both the names of the enums and the values of the
64
+ * enums, in a random order. If all you need are the values of an enum, use this helper function.
45
65
  *
46
66
  * This function will return the enum values in a sorted order, which may not necessarily be the
47
- * same order as which they were declared in.
67
+ * same order as which they were declared in. (It is impossible to get the declaration order at
68
+ * run-time.)
48
69
  *
49
70
  * This function will work properly for both number enums and string enums. (Reverse mappings are
50
71
  * not created for string enums.)
@@ -101,7 +122,7 @@ export declare function isEnumValue<T extends Record<string, number | string>>(v
101
122
  */
102
123
  export declare function validateCustomEnum(transpiledEnumName: string, transpiledEnum: unknown): void;
103
124
  /**
104
- * Helper function to validate if every value in an enum is contiguous, starting at 0.
125
+ * Helper function to validate if every value in a number enum is contiguous, starting at 0.
105
126
  *
106
127
  * This is useful to automate checking large enums for typos.
107
128
  */
@@ -1 +1 @@
1
- {"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../../src/functions/enums.ts"],"names":[],"mappings":";;;AAMA;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAC9B,cAAc,EAAE,CAAC,GAChB,KAAK,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAmBzC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,WAAW,CACzB,cAAc,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GACvD,MAAM,EAAE,CAGV;AAED,sEAAsE;AACtE,wBAAgB,aAAa,CAC3B,cAAc,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GACvD,GAAG,CAGL;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAGrE;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAUpE;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAUnE;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAClC,cAAc,EAAE,CAAC,EACjB,SAAS,GAAE,IAAI,GAAG,GAAqB,EACvC,UAAU,GAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAM,GAC7D,CAAC,CAAC,MAAM,CAAC,CAAC,CAGZ;AAED,oFAAoF;AACpF,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EACnE,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,cAAc,EAAE,CAAC,GAChB,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAGrB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,kBAAkB,EAAE,MAAM,EAC1B,cAAc,EAAE,OAAO,GACtB,IAAI,CAQN;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EACtC,kBAAkB,EAAE,MAAM,EAC1B,cAAc,EAAE,CAAC,GAChB,IAAI,CAsBN;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,4BAA4B,CAE1C,CAAC,SAAS,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,EAC/B,IAAI,SAAS,MAAM,GAAG,MAAM,KACzB,IAAI,CAAG"}
1
+ {"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../../src/functions/enums.ts"],"names":[],"mappings":";;;AAMA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAC9B,cAAc,EAAE,CAAC,GAChB,KAAK,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAmBzC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,WAAW,CACzB,cAAc,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GACvD,MAAM,EAAE,CAGV;AAED,sEAAsE;AACtE,wBAAgB,aAAa,CAC3B,cAAc,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GACvD,GAAG,CAGL;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,YAAY,CAC1B,cAAc,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GACvD,MAAM,EAAE,CAaV;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAGrE;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAUpE;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAUnE;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAClC,cAAc,EAAE,CAAC,EACjB,SAAS,GAAE,IAAI,GAAG,GAAqB,EACvC,UAAU,GAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAM,GAC7D,CAAC,CAAC,MAAM,CAAC,CAAC,CAGZ;AAED,oFAAoF;AACpF,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EACnE,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,cAAc,EAAE,CAAC,GAChB,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAGrB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,kBAAkB,EAAE,MAAM,EAC1B,cAAc,EAAE,OAAO,GACtB,IAAI,CAQN;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EACtC,kBAAkB,EAAE,MAAM,EAC1B,cAAc,EAAE,CAAC,GAChB,IAAI,CAsBN;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,4BAA4B,CAE1C,CAAC,SAAS,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,EAC/B,IAAI,SAAS,MAAM,GAAG,MAAM,KACzB,IAAI,CAAG"}
@@ -17,13 +17,14 @@ local isString = ____types.isString
17
17
  local ____utils = require("src.functions.utils")
18
18
  local assertDefined = ____utils.assertDefined
19
19
  local iRange = ____utils.iRange
20
- --- TypeScriptToLua will transpile TypeScript enums to Lua tables that have a double mapping. Thus,
21
- -- when you iterate over them, you will get both the names of the enums and the values of the enums,
22
- -- in a random order. Use this helper function to get the entries of the enum with the reverse
23
- -- mappings filtered out.
20
+ --- TypeScriptToLua will transpile TypeScript number enums to Lua tables that have a double mapping.
21
+ -- Thus, when you iterate over them, you will get both the names of the enums and the values of the
22
+ -- enums, in a random order. Use this helper function to get the entries of the enum with the
23
+ -- reverse mappings filtered out.
24
24
  --
25
25
  -- This function will return the enum values in a sorted order, which may not necessarily be the
26
- -- same order as which they were declared in.
26
+ -- same order as which they were declared in. (It is impossible to get the declaration order at
27
+ -- run-time.)
27
28
  --
28
29
  -- This function will work properly for both number enums and string enums. (Reverse mappings are
29
30
  -- not created for string enums.)
@@ -53,12 +54,13 @@ function ____exports.getEnumEntries(self, transpiledEnum)
53
54
  )
54
55
  return enumEntries
55
56
  end
56
- --- TypeScriptToLua will transpile TypeScript enums to Lua tables that have a double mapping. Thus,
57
- -- when you iterate over them, you will get both the names of the enums and the values of the enums,
58
- -- in a random order. If all you need are the keys of an enum, use this helper function.
57
+ --- TypeScriptToLua will transpile TypeScript number enums to Lua tables that have a double mapping.
58
+ -- Thus, when you iterate over them, you will get both the names of the enums and the values of the
59
+ -- enums, in a random order. If all you need are the keys of an enum, use this helper function.
59
60
  --
60
61
  -- This function will return the enum keys in a sorted order, which may not necessarily be the same
61
- -- order as which they were declared in.
62
+ -- order as which they were declared in. (It is impossible to get the declaration order at
63
+ -- run-time.)
62
64
  --
63
65
  -- This function will work properly for both number enums and string enums. (Reverse mappings are
64
66
  -- not created for string enums.)
@@ -84,12 +86,38 @@ function ____exports.getEnumLength(self, transpiledEnum)
84
86
  local enumEntries = ____exports.getEnumEntries(nil, transpiledEnum)
85
87
  return #enumEntries
86
88
  end
87
- --- TypeScriptToLua will transpile TypeScript enums to Lua tables that have a double mapping. Thus,
88
- -- when you iterate over them, you will get both the names of the enums and the values of the enums,
89
- -- in a random order. If all you need are the values of an enum, use this helper function.
89
+ --- TypeScriptToLua will transpile TypeScript number enums to Lua tables that have a double mapping.
90
+ -- Thus, when you iterate over them, you will get both the names of the enums and the values of the
91
+ -- enums, in a random order. If all you need are the names of an enum from the reverse mapping, use
92
+ -- this helper function.
93
+ --
94
+ -- This function will return the enum names in a sorted order, which may not necessarily be the same
95
+ -- order as which they were declared in. (It is impossible to get the declaration order at
96
+ -- run-time.)
97
+ --
98
+ -- This function will work properly for both number enums and string enums. (Reverse mappings are
99
+ -- not created for string enums, so their names would be equivalent to what would be returned by the
100
+ -- `getEnumKeys` function.)
101
+ --
102
+ -- For a more in depth explanation, see:
103
+ -- https://isaacscript.github.io/main/gotchas#iterating-over-enums
104
+ function ____exports.getEnumNames(self, transpiledEnum)
105
+ local enumNames = {}
106
+ for key, _value in pairs(transpiledEnum) do
107
+ if isString(nil, key) then
108
+ enumNames[#enumNames + 1] = key
109
+ end
110
+ end
111
+ __TS__ArraySort(enumNames)
112
+ return enumNames
113
+ end
114
+ --- TypeScriptToLua will transpile TypeScript number enums to Lua tables that have a double mapping.
115
+ -- Thus, when you iterate over them, you will get both the names of the enums and the values of the
116
+ -- enums, in a random order. If all you need are the values of an enum, use this helper function.
90
117
  --
91
118
  -- This function will return the enum values in a sorted order, which may not necessarily be the
92
- -- same order as which they were declared in.
119
+ -- same order as which they were declared in. (It is impossible to get the declaration order at
120
+ -- run-time.)
93
121
  --
94
122
  -- This function will work properly for both number enums and string enums. (Reverse mappings are
95
123
  -- not created for string enums.)
@@ -177,7 +205,7 @@ function ____exports.validateCustomEnum(self, transpiledEnumName, transpiledEnum
177
205
  end
178
206
  end
179
207
  end
180
- --- Helper function to validate if every value in an enum is contiguous, starting at 0.
208
+ --- Helper function to validate if every value in a number enum is contiguous, starting at 0.
181
209
  --
182
210
  -- This is useful to automate checking large enums for typos.
183
211
  function ____exports.validateEnumContiguous(self, transpiledEnumName, transpiledEnum)
@@ -39,10 +39,10 @@ function ____exports.getNextStage(self)
39
39
  return LevelStage.BLUE_WOMB
40
40
  end
41
41
  end
42
- ____cond4 = ____cond4 or ____switch4 == GridRoom.THE_VOID
42
+ ____cond4 = ____cond4 or ____switch4 == GridRoom.VOID
43
43
  if ____cond4 then
44
44
  do
45
- return LevelStage.THE_VOID
45
+ return LevelStage.VOID
46
46
  end
47
47
  end
48
48
  ____cond4 = ____cond4 or ____switch4 == GridRoom.SECRET_EXIT
@@ -76,8 +76,8 @@ function ____exports.getNextStage(self)
76
76
  if stage == LevelStage.DARK_ROOM_CHEST then
77
77
  return LevelStage.DARK_ROOM_CHEST
78
78
  end
79
- if stage == LevelStage.THE_VOID then
80
- return LevelStage.THE_VOID
79
+ if stage == LevelStage.VOID then
80
+ return LevelStage.VOID
81
81
  end
82
82
  return asNumber(nil, stage) + 1
83
83
  end
@@ -129,7 +129,7 @@ function ____exports.getNextStageType(self, upwards)
129
129
  end
130
130
  return StageType.WRATH_OF_THE_LAMB
131
131
  end
132
- if nextStage == LevelStage.THE_VOID then
132
+ if nextStage == LevelStage.VOID then
133
133
  return StageType.ORIGINAL
134
134
  end
135
135
  if nextStage == LevelStage.HOME then
@@ -170,7 +170,7 @@ end
170
170
  -- the Secret Room and a 50% chance of teleporting the player to the Super Secret Room, because the
171
171
  -- I AM ERROR room is never entered into the list of possibilities.
172
172
  function ____exports.isFinalFloor(self, stage, stageType)
173
- return stage == LevelStage.DARK_ROOM_CHEST or stage == LevelStage.THE_VOID or stage == LevelStage.HOME or stage == LevelStage.WOMB_2 and ____exports.isRepentanceStage(nil, stageType)
173
+ return stage == LevelStage.DARK_ROOM_CHEST or stage == LevelStage.VOID or stage == LevelStage.HOME or stage == LevelStage.WOMB_2 and ____exports.isRepentanceStage(nil, stageType)
174
174
  end
175
175
  --- Helper function to check if the provided effective stage is one that has the possibility to grant
176
176
  -- a natural Devil Room or Angel Room after killing the boss.
@@ -191,7 +191,7 @@ end
191
191
  -- considered to be a stage that has a random boss collectible since all of the non-Delirium Boss
192
192
  -- Rooms will drop random boss collectibles.
193
193
  function ____exports.isStageWithRandomBossCollectible(self, stage)
194
- return not ____exports.isStageWithStoryBoss(nil, stage) or stage == LevelStage.THE_VOID
194
+ return not ____exports.isStageWithStoryBoss(nil, stage) or stage == LevelStage.VOID
195
195
  end
196
196
  --- Helper function to check if the provided stage will spawn a locked door to Downpour/Dross after
197
197
  -- defeating the boss.
@@ -25,68 +25,68 @@ ____exports.BOSS_NAME_PNG_FILE_NAMES = {
25
25
  [BossID.STEVEN] = "bossname_79.1_steven.png",
26
26
  [BossID.CHAD] = "bossname_28.1_chad.png",
27
27
  [BossID.HEADLESS_HORSEMAN] = "bossname_82.0_headlesshorseman.png",
28
- [BossID.THE_FALLEN] = "bossname_81.0_thefallen.png",
28
+ [BossID.FALLEN] = "bossname_81.0_thefallen.png",
29
29
  [BossID.SATAN] = "bossname_84.0_satan.png",
30
30
  [BossID.IT_LIVES] = "bossname_78.1_itlives.png",
31
- [BossID.THE_HOLLOW] = "bossname_19.1_thehollow.png",
32
- [BossID.THE_CARRION_QUEEN] = "bossname_28.2_carrionqueen.png",
31
+ [BossID.HOLLOW] = "bossname_19.1_thehollow.png",
32
+ [BossID.CARRION_QUEEN] = "bossname_28.2_carrionqueen.png",
33
33
  [BossID.GURDY_JR] = "bossname_99.0_gurdyjr.png",
34
- [BossID.THE_HUSK] = "bossname_67.1_thehusk.png",
35
- [BossID.THE_BLOAT] = "bossname_68.1_bloat.png",
34
+ [BossID.HUSK] = "bossname_67.1_thehusk.png",
35
+ [BossID.BLOAT] = "bossname_68.1_bloat.png",
36
36
  [BossID.LOKII] = "bossname_69.1_lokii.png",
37
- [BossID.THE_BLIGHTED_OVUM] = "bossname_79.2_blightedovum.png",
37
+ [BossID.BLIGHTED_OVUM] = "bossname_79.2_blightedovum.png",
38
38
  [BossID.TERATOMA] = "bossname_71.1_teratoma.png",
39
- [BossID.THE_WIDOW] = "bossname_100.0_widow.png",
39
+ [BossID.WIDOW] = "bossname_100.0_widow.png",
40
40
  [BossID.MASK_OF_INFAMY] = "bossname_97.0_maskofinfamy.png",
41
- [BossID.THE_WRETCHED] = "bossname_100.1_thewretched.png",
41
+ [BossID.WRETCHED] = "bossname_100.1_thewretched.png",
42
42
  [BossID.PIN] = "bossname_62.0_pin.png",
43
43
  [BossID.CONQUEST] = "bossname_65.1_conquest.png",
44
44
  [BossID.ISAAC] = "playername_01_isaac.png",
45
45
  [BossID.BLUE_BABY] = "bossname_102.1_bluebaby.png",
46
46
  [BossID.DADDY_LONG_LEGS] = "bossname_101.0_daddylonglegs.png",
47
47
  [BossID.TRIACHNID] = "bossname_101.1_triachnid.png",
48
- [BossID.THE_HAUNT] = "bossname_260.0_thehaunt.png",
48
+ [BossID.HAUNT] = "bossname_260.0_thehaunt.png",
49
49
  [BossID.DINGLE] = "bossname_261.0_dingle.png",
50
50
  [BossID.MEGA_MAW] = "bossname_262.0_megamaw.png",
51
- [BossID.THE_GATE] = "bossname_263.0_megamaw2.png",
51
+ [BossID.GATE] = "bossname_263.0_megamaw2.png",
52
52
  [BossID.MEGA_FATTY] = "bossname_264.0_megafatty.png",
53
- [BossID.THE_CAGE] = "bossname_265.0_fatty2.png",
53
+ [BossID.CAGE] = "bossname_265.0_fatty2.png",
54
54
  [BossID.MAMA_GURDY] = "bossname_266.0_mamagurdy.png",
55
55
  [BossID.DARK_ONE] = "bossname_267.0_darkone.png",
56
- [BossID.THE_ADVERSARY] = "bossname_268.0_darkone2.png",
56
+ [BossID.ADVERSARY] = "bossname_268.0_darkone2.png",
57
57
  [BossID.POLYCEPHALUS] = "bossname_269.0_polycephalus.png",
58
58
  [BossID.MR_FRED] = "bossname_270.0_megafred.png",
59
- [BossID.THE_LAMB] = "bossname_273.0_thelamb.png",
59
+ [BossID.LAMB] = "bossname_273.0_thelamb.png",
60
60
  [BossID.MEGA_SATAN] = "bossname_274.0_megasatan.png",
61
61
  [BossID.GURGLINGS] = "bossname_276.0_gurglings.png",
62
- [BossID.THE_STAIN] = "bossname_401.0_thestain.png",
62
+ [BossID.STAIN] = "bossname_401.0_thestain.png",
63
63
  [BossID.BROWNIE] = "bossname_402.0_brownie.png",
64
- [BossID.THE_FORSAKEN] = "bossname_403.0_theforsaken.png",
64
+ [BossID.FORSAKEN] = "bossname_403.0_theforsaken.png",
65
65
  [BossID.LITTLE_HORN] = "bossname_404.0_littlehorn.png",
66
66
  [BossID.RAG_MAN] = "bossname_405.0_ragman.png",
67
67
  [BossID.ULTRA_GREED] = "bossname_406.0_ultragreed.png",
68
68
  [BossID.HUSH] = "bossname_407.0_hush.png",
69
69
  [BossID.DANGLE] = "bossname_dangle.png",
70
70
  [BossID.TURDLING] = "bossname_turdlings.png",
71
- [BossID.THE_FRAIL] = "bossname_thefrail.png",
71
+ [BossID.FRAIL] = "bossname_thefrail.png",
72
72
  [BossID.RAG_MEGA] = "bossname_ragmega.png",
73
73
  [BossID.SISTERS_VIS] = "bossname_sisterssvis.png",
74
74
  [BossID.BIG_HORN] = "bossname_bighorn.png",
75
75
  [BossID.DELIRIUM] = "bossname_delirium.png",
76
- [BossID.THE_MATRIARCH] = "bossname_matriarch.png",
77
- [BossID.THE_PILE] = "bossname_polycephalus2.png",
76
+ [BossID.MATRIARCH] = "bossname_matriarch.png",
77
+ [BossID.PILE] = "bossname_polycephalus2.png",
78
78
  [BossID.REAP_CREEP] = "bossname_reapcreep.png",
79
79
  [BossID.LIL_BLUB] = "bossname_beelzeblub.png",
80
80
  [BossID.WORMWOOD] = "bossname_wormwood.png",
81
81
  [BossID.RAINMAKER] = "bossname_rainmaker.png",
82
- [BossID.THE_VISAGE] = "bossname_visage.png",
83
- [BossID.THE_SIREN] = "bossname_siren.png",
82
+ [BossID.VISAGE] = "bossname_visage.png",
83
+ [BossID.SIREN] = "bossname_siren.png",
84
84
  [BossID.TUFF_TWINS] = "bossname_tufftwins.png",
85
- [BossID.THE_HERETIC] = "bossname_heretic.png",
85
+ [BossID.HERETIC] = "bossname_heretic.png",
86
86
  [BossID.HORNFEL] = "bossname_hornfel.png",
87
87
  [BossID.GREAT_GIDEON] = "bossname_gideon.png",
88
88
  [BossID.BABY_PLUM] = "bossname_babyplum.png",
89
- [BossID.THE_SCOURGE] = "bossname_scourge.png",
89
+ [BossID.SCOURGE] = "bossname_scourge.png",
90
90
  [BossID.CHIMERA] = "bossname_chimera.png",
91
91
  [BossID.ROTGUT] = "bossname_rotgut.png",
92
92
  [BossID.MOTHER] = "bossname_mother.png",
@@ -97,11 +97,11 @@ ____exports.BOSS_NAME_PNG_FILE_NAMES = {
97
97
  [BossID.SINGE] = "bossname_singe.png",
98
98
  [BossID.BUMBINO] = "bossname_bumbino.png",
99
99
  [BossID.COLOSTOMIA] = "bossname_colostomia.png",
100
- [BossID.THE_SHELL] = "bossname_shell.png",
100
+ [BossID.SHELL] = "bossname_shell.png",
101
101
  [BossID.TURDLET] = "bossname_turdlet.png",
102
102
  [BossID.RAGLICH] = "bossname_raglich.png",
103
103
  [BossID.DOGMA] = "bossname_dogma.png",
104
- [BossID.THE_BEAST] = "bossname_dogma.png",
104
+ [BossID.BEAST] = "bossname_dogma.png",
105
105
  [BossID.HORNY_BOYS] = "bossname_hornyboys.png",
106
106
  [BossID.CLUTCH] = "bossname_clutch.png"
107
107
  }
@@ -25,68 +25,68 @@ ____exports.BOSS_PORTRAIT_PNG_FILE_NAMES = {
25
25
  [BossID.STEVEN] = "portrait_79.1_steven.png",
26
26
  [BossID.CHAD] = "portrait_28.1_chad.png",
27
27
  [BossID.HEADLESS_HORSEMAN] = "portrait_82.0_headlesshorseman.png",
28
- [BossID.THE_FALLEN] = "portrait_81.0_thefallen.png",
28
+ [BossID.FALLEN] = "portrait_81.0_thefallen.png",
29
29
  [BossID.SATAN] = "portrait_84.0_satan.png",
30
30
  [BossID.IT_LIVES] = "portrait_78.1_itlives.png",
31
- [BossID.THE_HOLLOW] = "portrait_19.1_thehollow.png",
32
- [BossID.THE_CARRION_QUEEN] = "portrait_28.2_carrionqueen.png",
31
+ [BossID.HOLLOW] = "portrait_19.1_thehollow.png",
32
+ [BossID.CARRION_QUEEN] = "portrait_28.2_carrionqueen.png",
33
33
  [BossID.GURDY_JR] = "portrait_99.0_gurdyjr.png",
34
- [BossID.THE_HUSK] = "portrait_67.1_thehusk.png",
35
- [BossID.THE_BLOAT] = "portrait_68.1_bloat.png",
34
+ [BossID.HUSK] = "portrait_67.1_thehusk.png",
35
+ [BossID.BLOAT] = "portrait_68.1_bloat.png",
36
36
  [BossID.LOKII] = "portrait_69.1_lokii.png",
37
- [BossID.THE_BLIGHTED_OVUM] = "portrait_79.2_blightedovum.png",
37
+ [BossID.BLIGHTED_OVUM] = "portrait_79.2_blightedovum.png",
38
38
  [BossID.TERATOMA] = "portrait_71.1_teratoma.png",
39
- [BossID.THE_WIDOW] = "portrait_100.0_widow.png",
39
+ [BossID.WIDOW] = "portrait_100.0_widow.png",
40
40
  [BossID.MASK_OF_INFAMY] = "portrait_97.0_maskofinfamy.png",
41
- [BossID.THE_WRETCHED] = "portrait_100.1_thewretched.png",
41
+ [BossID.WRETCHED] = "portrait_100.1_thewretched.png",
42
42
  [BossID.PIN] = "portrait_62.0_pin.png",
43
43
  [BossID.CONQUEST] = "portrait_65.1_conquest.png",
44
44
  [BossID.ISAAC] = "portrait_102.0_isaac.png",
45
45
  [BossID.BLUE_BABY] = "portrait_102.1_bluebaby.png",
46
46
  [BossID.DADDY_LONG_LEGS] = "portrait_101.0_daddylonglegs.png",
47
47
  [BossID.TRIACHNID] = "portrait_101.1_triachnid.png",
48
- [BossID.THE_HAUNT] = "portrait_260.0_thehaunt.png",
48
+ [BossID.HAUNT] = "portrait_260.0_thehaunt.png",
49
49
  [BossID.DINGLE] = "portrait_261.0_dingle.png",
50
50
  [BossID.MEGA_MAW] = "portrait_262.0_megamaw.png",
51
- [BossID.THE_GATE] = "portrait_263.0_megamaw2.png",
51
+ [BossID.GATE] = "portrait_263.0_megamaw2.png",
52
52
  [BossID.MEGA_FATTY] = "portrait_264.0_megafatty.png",
53
- [BossID.THE_CAGE] = "portrait_265.0_fatty2.png",
53
+ [BossID.CAGE] = "portrait_265.0_fatty2.png",
54
54
  [BossID.MAMA_GURDY] = "portrait_266.0_mamagurdy.png",
55
55
  [BossID.DARK_ONE] = "portrait_267.0_darkone.png",
56
- [BossID.THE_ADVERSARY] = "portrait_268.0_darkone2.png",
56
+ [BossID.ADVERSARY] = "portrait_268.0_darkone2.png",
57
57
  [BossID.POLYCEPHALUS] = "portrait_269.0_polycephalus.png",
58
58
  [BossID.MR_FRED] = "portrait_270.0_megafred.png",
59
- [BossID.THE_LAMB] = "portrait_273.0_thelamb.png",
59
+ [BossID.LAMB] = "portrait_273.0_thelamb.png",
60
60
  [BossID.MEGA_SATAN] = "portrait_274.0_megasatan.png",
61
61
  [BossID.GURGLINGS] = "portrait_276.0_gurglings.png",
62
- [BossID.THE_STAIN] = "portrait_401.0_thestain.png",
62
+ [BossID.STAIN] = "portrait_401.0_thestain.png",
63
63
  [BossID.BROWNIE] = "portrait_402.0_brownie.png",
64
- [BossID.THE_FORSAKEN] = "portrait_403.0_theforsaken.png",
64
+ [BossID.FORSAKEN] = "portrait_403.0_theforsaken.png",
65
65
  [BossID.LITTLE_HORN] = "portrait_404.0_littlehorn.png",
66
66
  [BossID.RAG_MAN] = "portrait_405.0_ragman.png",
67
67
  [BossID.ULTRA_GREED] = "portrait_406.0_ultragreed.png",
68
68
  [BossID.HUSH] = "portrait_407.0_hush.png",
69
69
  [BossID.DANGLE] = "portrait_dangle.png",
70
70
  [BossID.TURDLING] = "portrait_turdlings.png",
71
- [BossID.THE_FRAIL] = "portrait_thefrail.png",
71
+ [BossID.FRAIL] = "portrait_thefrail.png",
72
72
  [BossID.RAG_MEGA] = "portrait_ragmega.png",
73
73
  [BossID.SISTERS_VIS] = "portrait_sistersvis.png",
74
74
  [BossID.BIG_HORN] = "portrait_bighorn.png",
75
75
  [BossID.DELIRIUM] = "portrait_delirium.png",
76
- [BossID.THE_MATRIARCH] = "portrait_matriarch.png",
77
- [BossID.THE_PILE] = "portrait_269.1_polycephalus2.png",
76
+ [BossID.MATRIARCH] = "portrait_matriarch.png",
77
+ [BossID.PILE] = "portrait_269.1_polycephalus2.png",
78
78
  [BossID.REAP_CREEP] = "portrait_900.0_reapcreep.png",
79
79
  [BossID.LIL_BLUB] = "portrait_901.0_beelzeblub.png",
80
80
  [BossID.WORMWOOD] = "portrait_902.0_wormwood.png",
81
81
  [BossID.RAINMAKER] = "portrait_902.0_rainmaker.png",
82
- [BossID.THE_VISAGE] = "portrait_903.0_visage.png",
83
- [BossID.THE_SIREN] = "portrait_904.0_siren.png",
82
+ [BossID.VISAGE] = "portrait_903.0_visage.png",
83
+ [BossID.SIREN] = "portrait_904.0_siren.png",
84
84
  [BossID.TUFF_TWINS] = "portrait_19.100_tufftwins.png",
85
- [BossID.THE_HERETIC] = "portrait_905.0_heretic.png",
85
+ [BossID.HERETIC] = "portrait_905.0_heretic.png",
86
86
  [BossID.HORNFEL] = "portrait_906.0_hornfel.png",
87
87
  [BossID.GREAT_GIDEON] = "portrait_907.0_gideon.png",
88
88
  [BossID.BABY_PLUM] = "portrait_908.0_babyplum.png",
89
- [BossID.THE_SCOURGE] = "portrait_909.0_scourge.png",
89
+ [BossID.SCOURGE] = "portrait_909.0_scourge.png",
90
90
  [BossID.CHIMERA] = "portrait_910.0_chimera.png",
91
91
  [BossID.ROTGUT] = "portrait_911.0_rotgut.png",
92
92
  [BossID.MOTHER] = "portrait_mother.png",
@@ -97,11 +97,11 @@ ____exports.BOSS_PORTRAIT_PNG_FILE_NAMES = {
97
97
  [BossID.SINGE] = "portrait_singe.png",
98
98
  [BossID.BUMBINO] = "portrait_bumbino.png",
99
99
  [BossID.COLOSTOMIA] = "portrait_colostomia.png",
100
- [BossID.THE_SHELL] = "portrait_shell.png",
100
+ [BossID.SHELL] = "portrait_shell.png",
101
101
  [BossID.TURDLET] = "portrait_turdlet.png",
102
102
  [BossID.RAGLICH] = "portrait_raglich.png",
103
103
  [BossID.DOGMA] = "portrait_dogma.png",
104
- [BossID.THE_BEAST] = "portrait_dogma.png",
104
+ [BossID.BEAST] = "portrait_dogma.png",
105
105
  [BossID.HORNY_BOYS] = "portrait_hornyboys.png",
106
106
  [BossID.CLUTCH] = "portrait_clutch.png"
107
107
  }
@@ -97,7 +97,7 @@ ____exports.LEVEL_NAMES = {
97
97
  [StageType.REPENTANCE] = "Undefined",
98
98
  [StageType.REPENTANCE_B] = "Undefined"
99
99
  },
100
- [LevelStage.THE_VOID] = {
100
+ [LevelStage.VOID] = {
101
101
  [StageType.ORIGINAL] = "The Void",
102
102
  [StageType.WRATH_OF_THE_LAMB] = "The Void",
103
103
  [StageType.AFTERBIRTH] = "The Void",
@@ -87,7 +87,7 @@ ____exports.STAGE_TO_MUSIC = {
87
87
  [LevelStage.BLUE_WOMB] = BLUE_WOMB_TO_MUSIC,
88
88
  [LevelStage.SHEOL_CATHEDRAL] = SHEOL_CATHEDRAL_TO_MUSIC,
89
89
  [LevelStage.DARK_ROOM_CHEST] = DARK_ROOM_CHEST_TO_MUSIC,
90
- [LevelStage.THE_VOID] = VOID_TO_MUSIC,
90
+ [LevelStage.VOID] = VOID_TO_MUSIC,
91
91
  [LevelStage.HOME] = HOME_TO_MUSIC
92
92
  }
93
93
  return ____exports
@@ -87,7 +87,7 @@ ____exports.STAGE_TO_STAGE_ID = {
87
87
  [LevelStage.BLUE_WOMB] = BLUE_WOMB_TO_STAGE_ID,
88
88
  [LevelStage.SHEOL_CATHEDRAL] = SHEOL_CATHEDRAL_TO_STAGE_ID,
89
89
  [LevelStage.DARK_ROOM_CHEST] = DARK_ROOM_CHEST_TO_STAGE_ID,
90
- [LevelStage.THE_VOID] = VOID_TO_STAGE_ID,
90
+ [LevelStage.VOID] = VOID_TO_STAGE_ID,
91
91
  [LevelStage.HOME] = HOME_TO_STAGE_ID
92
92
  }
93
93
  return ____exports
@@ -78,7 +78,7 @@ local CELLAR_BOSSES_SET = __TS__New(
78
78
  (tostring(EntityType.FALLEN) .. ".") .. tostring(FallenVariant.FALLEN),
79
79
  tostring(EntityType.HEADLESS_HORSEMAN) .. ".0",
80
80
  (tostring(EntityType.WIDOW) .. ".") .. tostring(WidowVariant.WIDOW),
81
- (tostring(EntityType.THE_HAUNT) .. ".") .. tostring(HauntVariant.HAUNT),
81
+ (tostring(EntityType.HAUNT) .. ".") .. tostring(HauntVariant.HAUNT),
82
82
  tostring(EntityType.LITTLE_HORN) .. ".0",
83
83
  (tostring(EntityType.RAG_MAN) .. ".") .. tostring(RagManVariant.RAG_MAN),
84
84
  tostring(EntityType.BABY_PLUM) .. ".0"
@@ -167,16 +167,16 @@ local CAVES_BOSSES_SET = __TS__New(
167
167
  local CATACOMBS_BOSSES_SET = __TS__New(
168
168
  ReadonlySet,
169
169
  {
170
- (tostring(EntityType.LARRY_JR) .. ".") .. tostring(LarryJrVariant.THE_HOLLOW),
170
+ (tostring(EntityType.LARRY_JR) .. ".") .. tostring(LarryJrVariant.HOLLOW),
171
171
  (tostring(EntityType.CHUB) .. ".") .. tostring(ChubVariant.CARRION_QUEEN),
172
172
  (tostring(EntityType.PIN) .. ".") .. tostring(PinVariant.FRAIL),
173
173
  tostring(EntityType.PESTILENCE) .. ".0",
174
- (tostring(EntityType.DUKE_OF_FLIES) .. ".") .. tostring(DukeOfFliesVariant.THE_HUSK),
174
+ (tostring(EntityType.DUKE_OF_FLIES) .. ".") .. tostring(DukeOfFliesVariant.HUSK),
175
175
  (tostring(EntityType.PEEP) .. ".") .. tostring(PeepVariant.PEEP),
176
176
  (tostring(EntityType.FALLEN) .. ".") .. tostring(FallenVariant.FALLEN),
177
177
  tostring(EntityType.HEADLESS_HORSEMAN) .. ".0",
178
178
  tostring(EntityType.GURDY_JR) .. ".0",
179
- (tostring(EntityType.WIDOW) .. ".") .. tostring(WidowVariant.THE_WRETCHED),
179
+ (tostring(EntityType.WIDOW) .. ".") .. tostring(WidowVariant.WRETCHED),
180
180
  tostring(EntityType.DARK_ONE) .. ".0",
181
181
  (tostring(EntityType.POLYCEPHALUS) .. ".") .. tostring(PolycephalusVariant.POLYCEPHALUS),
182
182
  tostring(EntityType.FORSAKEN) .. ".0",
@@ -222,8 +222,8 @@ local MINES_BOSSES_SET = __TS__New(
222
222
  local ASHPIT_BOSSES_SET = __TS__New(
223
223
  ReadonlySet,
224
224
  {
225
- (tostring(EntityType.LARRY_JR) .. ".") .. tostring(LarryJrVariant.THE_SHELL),
226
- (tostring(EntityType.POLYCEPHALUS) .. ".") .. tostring(PolycephalusVariant.THE_PILE),
225
+ (tostring(EntityType.LARRY_JR) .. ".") .. tostring(LarryJrVariant.SHELL),
226
+ (tostring(EntityType.POLYCEPHALUS) .. ".") .. tostring(PolycephalusVariant.PILE),
227
227
  tostring(EntityType.GREAT_GIDEON) .. ".0",
228
228
  tostring(EntityType.SINGE) .. ".0",
229
229
  tostring(EntityType.CLUTCH) .. ".0"
@@ -275,7 +275,7 @@ local NECROPOLIS_BOSSES_SET = __TS__New(
275
275
  tostring(EntityType.HEADLESS_HORSEMAN) .. ".0",
276
276
  tostring(EntityType.MASK_OF_INFAMY) .. ".0",
277
277
  tostring(EntityType.ADVERSARY) .. ".0",
278
- (tostring(EntityType.POLYCEPHALUS) .. ".") .. tostring(PolycephalusVariant.THE_PILE),
278
+ (tostring(EntityType.POLYCEPHALUS) .. ".") .. tostring(PolycephalusVariant.PILE),
279
279
  tostring(EntityType.BROWNIE) .. ".0",
280
280
  tostring(EntityType.SISTERS_VIS) .. ".0"
281
281
  }
@@ -424,7 +424,7 @@ local STAGE_10_STAGE_TYPE_TO_BOSS_SET_MAP = __TS__New(ReadonlyMap, {{StageType.O
424
424
  local DARK_ROOM_BOSSES_SET = __TS__New(
425
425
  ReadonlySet,
426
426
  {
427
- (tostring(EntityType.THE_LAMB) .. ".") .. tostring(LambVariant.LAMB),
427
+ (tostring(EntityType.LAMB) .. ".") .. tostring(LambVariant.LAMB),
428
428
  tostring(EntityType.MEGA_SATAN) .. ".0"
429
429
  }
430
430
  )
@@ -10,7 +10,7 @@ ____exports.STORY_BOSSES_SET = __TS__New(ReadonlySet, {
10
10
  EntityType.MOMS_HEART,
11
11
  EntityType.SATAN,
12
12
  EntityType.ISAAC,
13
- EntityType.THE_LAMB,
13
+ EntityType.LAMB,
14
14
  EntityType.MEGA_SATAN,
15
15
  EntityType.MEGA_SATAN_2,
16
16
  EntityType.ULTRA_GREED,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "isaacscript-common",
3
- "version": "48.0.0",
3
+ "version": "49.0.0",
4
4
  "description": "Helper functions and features for IsaacScript mods.",
5
5
  "keywords": [
6
6
  "isaac",
@@ -25,6 +25,6 @@
25
25
  "main": "dist/src/index",
26
26
  "types": "dist/index.rollup.d.ts",
27
27
  "dependencies": {
28
- "isaac-typescript-definitions": "^18.0.0"
28
+ "isaac-typescript-definitions": "^20.0.1"
29
29
  }
30
30
  }
@@ -521,7 +521,7 @@ export function isSecretRoomDoor(door: GridEntityDoor): boolean {
521
521
  * contains the portal to The Void. (In vanilla, the door will only appear in the Hush Boss Room.)
522
522
  */
523
523
  export function isVoidDoor(door: GridEntityDoor): boolean {
524
- return door.TargetRoomIndex === asNumber(GridRoom.THE_VOID);
524
+ return door.TargetRoomIndex === asNumber(GridRoom.VOID);
525
525
  }
526
526
 
527
527
  /**