isaacscript-common 37.0.1 → 38.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.
@@ -7963,6 +7963,13 @@ export declare function inRange(num: int, start: int, end: int): boolean;
7963
7963
  */
7964
7964
  export declare function inRectangle(position: Vector, topLeft: Vector, bottomRight: Vector): boolean;
7965
7965
 
7966
+ /**
7967
+ * Helper function to detect if the current room was created by the Red Key item.
7968
+ *
7969
+ * Under the hood, this checks for the `RoomDescriptorFlag.FLAG_RED_ROOM` flag.
7970
+ */
7971
+ export declare function inRedKeyRoom(): boolean;
7972
+
7966
7973
  /**
7967
7974
  * Helper function to check if the current room shape matches one of the given room shapes.
7968
7975
  *
@@ -8936,12 +8943,13 @@ export declare function isRedHeart(pickup: EntityPickup): boolean;
8936
8943
  export declare function isRedHeartSubType(heartSubType: HeartSubType): boolean;
8937
8944
 
8938
8945
  /**
8939
- * Helper function to detect if the provided room was created by the Red Key item. Under the hood,
8940
- * this checks for the `RoomDescriptorFlag.FLAG_RED_ROOM` flag.
8946
+ * Helper function to detect if the provided room was created by the Red Key item.
8947
+ *
8948
+ * Under the hood, this checks for the `RoomDescriptorFlag.FLAG_RED_ROOM` flag.
8941
8949
  *
8942
8950
  * @param roomGridIndex Optional. Default is the current room index.
8943
8951
  */
8944
- export declare function isRedKeyRoom(roomGridIndex?: int): boolean;
8952
+ export declare function isRedKeyRoom(roomGridIndex: int): boolean;
8945
8953
 
8946
8954
  /**
8947
8955
  * Helper function to see if the current render callback is rendering a water reflection.
@@ -1,6 +1,6 @@
1
1
  --[[
2
2
 
3
- isaacscript-common 37.0.1
3
+ isaacscript-common 38.0.0
4
4
 
5
5
  This is the "isaacscript-common" library, which was created with the IsaacScript tool.
6
6
 
@@ -9778,8 +9778,8 @@ ____exports.BossID.RAGLICH = 98
9778
9778
  ____exports.BossID[____exports.BossID.RAGLICH] = "RAGLICH"
9779
9779
  ____exports.BossID.DOGMA = 99
9780
9780
  ____exports.BossID[____exports.BossID.DOGMA] = "DOGMA"
9781
- ____exports.BossID.BEAST = 100
9782
- ____exports.BossID[____exports.BossID.BEAST] = "BEAST"
9781
+ ____exports.BossID.THE_BEAST = 100
9782
+ ____exports.BossID[____exports.BossID.THE_BEAST] = "THE_BEAST"
9783
9783
  ____exports.BossID.HORNY_BOYS = 101
9784
9784
  ____exports.BossID[____exports.BossID.HORNY_BOYS] = "HORNY_BOYS"
9785
9785
  ____exports.BossID.CLUTCH = 102
@@ -44484,7 +44484,7 @@ ____exports.BOSS_NAME_PNG_FILE_NAMES = {
44484
44484
  [BossID.TURDLET] = "bossname_turdlet.png",
44485
44485
  [BossID.RAGLICH] = "bossname_raglich.png",
44486
44486
  [BossID.DOGMA] = "bossname_dogma.png",
44487
- [BossID.BEAST] = "bossname_dogma.png",
44487
+ [BossID.THE_BEAST] = "bossname_dogma.png",
44488
44488
  [BossID.HORNY_BOYS] = "bossname_hornyboys.png",
44489
44489
  [BossID.CLUTCH] = "bossname_clutch.png"
44490
44490
  }
@@ -44593,7 +44593,7 @@ ____exports.BOSS_PORTRAIT_PNG_FILE_NAMES = {
44593
44593
  [BossID.TURDLET] = "portrait_turdlet.png",
44594
44594
  [BossID.RAGLICH] = "portrait_raglich.png",
44595
44595
  [BossID.DOGMA] = "portrait_dogma.png",
44596
- [BossID.BEAST] = "portrait_dogma.png",
44596
+ [BossID.THE_BEAST] = "portrait_dogma.png",
44597
44597
  [BossID.HORNY_BOYS] = "portrait_hornyboys.png",
44598
44598
  [BossID.CLUTCH] = "portrait_clutch.png"
44599
44599
  }
@@ -48282,6 +48282,10 @@ function ____exports.isDeadEnd(self, roomGridIndex)
48282
48282
  local adjacentExistingRoomGridIndexes = ____exports.getAdjacentExistingRoomGridIndexes(nil, roomGridIndex)
48283
48283
  return #adjacentExistingRoomGridIndexes == 1
48284
48284
  end
48285
+ function ____exports.isRedKeyRoom(self, roomGridIndex)
48286
+ local roomDescriptor = getRoomDescriptor(nil, roomGridIndex)
48287
+ return hasFlag(nil, roomDescriptor.Flags, RoomDescriptorFlag.RED_ROOM)
48288
+ end
48285
48289
  function ____exports.isRoomInsideGrid(self, roomGridIndex)
48286
48290
  if roomGridIndex == nil then
48287
48291
  roomGridIndex = getRoomGridIndex(nil)
@@ -48351,6 +48355,10 @@ function ____exports.getRoomGridIndexesForType(self, ...)
48351
48355
  function(____, roomDescriptor) return roomDescriptor.SafeGridIndex end
48352
48356
  )
48353
48357
  end
48358
+ function ____exports.inRedKeyRoom(self)
48359
+ local gridIndex = getRoomGridIndex(nil)
48360
+ return ____exports.isRedKeyRoom(nil, gridIndex)
48361
+ end
48354
48362
  function ____exports.isDoorSlotValidAtGridIndex(self, doorSlot, roomGridIndex)
48355
48363
  local allowedDoors = getRoomAllowedDoors(nil, roomGridIndex)
48356
48364
  return allowedDoors:has(doorSlot)
@@ -48371,10 +48379,6 @@ function ____exports.isDoorSlotValidAtGridIndexForRedRoom(self, doorSlot, roomGr
48371
48379
  local redRoomGridIndex = roomGridIndex + delta
48372
48380
  return not ____exports.roomExists(nil, redRoomGridIndex) and ____exports.isRoomInsideGrid(nil, redRoomGridIndex)
48373
48381
  end
48374
- function ____exports.isRedKeyRoom(self, roomGridIndex)
48375
- local roomDescriptor = getRoomDescriptor(nil, roomGridIndex)
48376
- return hasFlag(nil, roomDescriptor.Flags, RoomDescriptorFlag.RED_ROOM)
48377
- end
48378
48382
  function ____exports.newRoom(self, seedOrRNG, ensureDeadEnd, customRoomData)
48379
48383
  if ensureDeadEnd == nil then
48380
48384
  ensureDeadEnd = true
@@ -153,6 +153,12 @@ export declare function getRoomShapeAdjacentGridIndexes(safeRoomGridIndex: int,
153
153
  * that function for more information.
154
154
  */
155
155
  export declare function getRoomShapeAdjacentNonExistingGridIndexes(safeRoomGridIndex: int, roomShape: RoomShape): ReadonlyMap<DoorSlot, int>;
156
+ /**
157
+ * Helper function to detect if the current room was created by the Red Key item.
158
+ *
159
+ * Under the hood, this checks for the `RoomDescriptorFlag.FLAG_RED_ROOM` flag.
160
+ */
161
+ export declare function inRedKeyRoom(): boolean;
156
162
  /**
157
163
  * Helper function to check if the given room grid index is a dead end. Specifically, this is
158
164
  * defined as having only one adjacent room that exists.
@@ -169,12 +175,13 @@ export declare function isDeadEnd(roomGridIndex?: int): boolean;
169
175
  export declare function isDoorSlotValidAtGridIndex(doorSlot: DoorSlot, roomGridIndex: int): boolean;
170
176
  export declare function isDoorSlotValidAtGridIndexForRedRoom(doorSlot: DoorSlot, roomGridIndex: int): boolean;
171
177
  /**
172
- * Helper function to detect if the provided room was created by the Red Key item. Under the hood,
173
- * this checks for the `RoomDescriptorFlag.FLAG_RED_ROOM` flag.
178
+ * Helper function to detect if the provided room was created by the Red Key item.
179
+ *
180
+ * Under the hood, this checks for the `RoomDescriptorFlag.FLAG_RED_ROOM` flag.
174
181
  *
175
182
  * @param roomGridIndex Optional. Default is the current room index.
176
183
  */
177
- export declare function isRedKeyRoom(roomGridIndex?: int): boolean;
184
+ export declare function isRedKeyRoom(roomGridIndex: int): boolean;
178
185
  /**
179
186
  * Helper function to determine if a given room grid index is inside of the normal 13x13 level grid.
180
187
  *
@@ -1 +1 @@
1
- {"version":3,"file":"levelGrid.d.ts","sourceRoot":"","sources":["../../../src/functions/levelGrid.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAIL,QAAQ,EACT,MAAM,8BAA8B,CAAC;AAoCtC;;;;;GAKG;AACH,wBAAgB,kCAAkC,CAChD,aAAa,CAAC,EAAE,GAAG,GAClB,SAAS,GAAG,EAAE,CAKhB;AAED;;;;;;GAMG;AACH,wBAAgB,qCAAqC,CACnD,aAAa,CAAC,EAAE,GAAG,GAClB,SAAS,GAAG,EAAE,CAKhB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,0BAA0B,CACxC,aAAa,CAAC,EAAE,GAAG,GAClB,SAAS,GAAG,EAAE,CAchB;AAED,0FAA0F;AAC1F,wBAAgB,qBAAqB,IAAI,SAAS,GAAG,EAAE,CAGtD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,GAAE,IAAI,GAAG,GAAqB,EACvC,aAAa,UAAO,GAElB;IACE,QAAQ,CAAC,qBAAqB,EAAE,GAAG,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,gBAAgB,EAAE,GAAG,CAAC;CAChC,GACD,SAAS,CAOZ;AAED;;;;;;;;;GASG;AACH,wBAAgB,8BAA8B,CAC5C,aAAa,CAAC,EAAE,GAAG,EACnB,aAAa,UAAO,GACnB,aAAa,CAAC;IAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAA;CAAE,CAAC,CAiD7E;AAED;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAC1C,aAAa,UAAO,GACnB,aAAa,CAAC;IACf,QAAQ,CAAC,qBAAqB,EAAE,GAAG,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,gBAAgB,EAAE,GAAG,CAAC;CAChC,CAAC,CAoCD;AAED;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CACxC,aAAa,CAAC,EAAE,GAAG,GAClB,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAgB5B;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,SAAS,EAAE,QAAQ,EAAE,GACvB,cAAc,EAAE,CASlB;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,SAAS,EAAE,QAAQ,EAAE,GACvB,SAAS,GAAG,EAAE,CAGhB;AAED;;;;;;GAMG;AACH,wBAAgB,uCAAuC,CACrD,iBAAiB,EAAE,GAAG,EACtB,SAAS,EAAE,SAAS,GACnB,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAa5B;AAED;;;;;;;GAOG;AACH,wBAAgB,mCAAmC,CACjD,SAAS,EAAE,SAAS,GACnB,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAE5B;AAED;;;;;;;;GAQG;AACH,wBAAgB,+BAA+B,CAC7C,iBAAiB,EAAE,GAAG,EACtB,SAAS,EAAE,SAAS,GACnB,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAa5B;AAED;;;;;;GAMG;AACH,wBAAgB,0CAA0C,CACxD,iBAAiB,EAAE,GAAG,EACtB,SAAS,EAAE,SAAS,GACnB,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAa5B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,SAAS,CAAC,aAAa,CAAC,EAAE,GAAG,GAAG,OAAO,CAKtD;AAED,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,GAAG,GACjB,OAAO,CAGT;AAED,wBAAgB,oCAAoC,CAClD,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,GAAG,GACjB,OAAO,CAqBT;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,aAAa,CAAC,EAAE,GAAG,GAAG,OAAO,CAGzD;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,aAAa,CAAC,EAAE,GAAG,GAAG,OAAO,CAM7D;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,OAAO,CACrB,SAAS,CAAC,EAAE,IAAI,GAAG,GAAG,EACtB,aAAa,UAAO,EACpB,cAAc,CAAC,EAAE,UAAU,GAC1B,GAAG,GAAG,SAAS,CAuDjB;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,aAAa,EAAE,GAAG,GAAG,OAAO,CAGtD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAK1E;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,CAE7D"}
1
+ {"version":3,"file":"levelGrid.d.ts","sourceRoot":"","sources":["../../../src/functions/levelGrid.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAIL,QAAQ,EACT,MAAM,8BAA8B,CAAC;AAoCtC;;;;;GAKG;AACH,wBAAgB,kCAAkC,CAChD,aAAa,CAAC,EAAE,GAAG,GAClB,SAAS,GAAG,EAAE,CAKhB;AAED;;;;;;GAMG;AACH,wBAAgB,qCAAqC,CACnD,aAAa,CAAC,EAAE,GAAG,GAClB,SAAS,GAAG,EAAE,CAKhB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,0BAA0B,CACxC,aAAa,CAAC,EAAE,GAAG,GAClB,SAAS,GAAG,EAAE,CAchB;AAED,0FAA0F;AAC1F,wBAAgB,qBAAqB,IAAI,SAAS,GAAG,EAAE,CAGtD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,GAAE,IAAI,GAAG,GAAqB,EACvC,aAAa,UAAO,GAElB;IACE,QAAQ,CAAC,qBAAqB,EAAE,GAAG,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,gBAAgB,EAAE,GAAG,CAAC;CAChC,GACD,SAAS,CAOZ;AAED;;;;;;;;;GASG;AACH,wBAAgB,8BAA8B,CAC5C,aAAa,CAAC,EAAE,GAAG,EACnB,aAAa,UAAO,GACnB,aAAa,CAAC;IAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAA;CAAE,CAAC,CAiD7E;AAED;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAC1C,aAAa,UAAO,GACnB,aAAa,CAAC;IACf,QAAQ,CAAC,qBAAqB,EAAE,GAAG,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,gBAAgB,EAAE,GAAG,CAAC;CAChC,CAAC,CAoCD;AAED;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CACxC,aAAa,CAAC,EAAE,GAAG,GAClB,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAgB5B;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,SAAS,EAAE,QAAQ,EAAE,GACvB,cAAc,EAAE,CASlB;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,SAAS,EAAE,QAAQ,EAAE,GACvB,SAAS,GAAG,EAAE,CAGhB;AAED;;;;;;GAMG;AACH,wBAAgB,uCAAuC,CACrD,iBAAiB,EAAE,GAAG,EACtB,SAAS,EAAE,SAAS,GACnB,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAa5B;AAED;;;;;;;GAOG;AACH,wBAAgB,mCAAmC,CACjD,SAAS,EAAE,SAAS,GACnB,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAE5B;AAED;;;;;;;;GAQG;AACH,wBAAgB,+BAA+B,CAC7C,iBAAiB,EAAE,GAAG,EACtB,SAAS,EAAE,SAAS,GACnB,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAa5B;AAED;;;;;;GAMG;AACH,wBAAgB,0CAA0C,CACxD,iBAAiB,EAAE,GAAG,EACtB,SAAS,EAAE,SAAS,GACnB,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAa5B;AAED;;;;GAIG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAGtC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,SAAS,CAAC,aAAa,CAAC,EAAE,GAAG,GAAG,OAAO,CAKtD;AAED,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,GAAG,GACjB,OAAO,CAGT;AAED,wBAAgB,oCAAoC,CAClD,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,GAAG,GACjB,OAAO,CAqBT;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,aAAa,EAAE,GAAG,GAAG,OAAO,CAGxD;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,aAAa,CAAC,EAAE,GAAG,GAAG,OAAO,CAM7D;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,OAAO,CACrB,SAAS,CAAC,EAAE,IAAI,GAAG,GAAG,EACtB,aAAa,UAAO,EACpB,cAAc,CAAC,EAAE,UAAU,GAC1B,GAAG,GAAG,SAAS,CAuDjB;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,aAAa,EAAE,GAAG,GAAG,OAAO,CAGtD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAK1E;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,CAE7D"}
@@ -236,6 +236,15 @@ function ____exports.isDeadEnd(self, roomGridIndex)
236
236
  local adjacentExistingRoomGridIndexes = ____exports.getAdjacentExistingRoomGridIndexes(nil, roomGridIndex)
237
237
  return #adjacentExistingRoomGridIndexes == 1
238
238
  end
239
+ --- Helper function to detect if the provided room was created by the Red Key item.
240
+ --
241
+ -- Under the hood, this checks for the `RoomDescriptorFlag.FLAG_RED_ROOM` flag.
242
+ --
243
+ -- @param roomGridIndex Optional. Default is the current room index.
244
+ function ____exports.isRedKeyRoom(self, roomGridIndex)
245
+ local roomDescriptor = getRoomDescriptor(nil, roomGridIndex)
246
+ return hasFlag(nil, roomDescriptor.Flags, RoomDescriptorFlag.RED_ROOM)
247
+ end
239
248
  --- Helper function to determine if a given room grid index is inside of the normal 13x13 level grid.
240
249
  --
241
250
  -- For example, Devil Rooms and the Mega Satan room are not considered to be inside the grid.
@@ -351,6 +360,13 @@ function ____exports.getRoomGridIndexesForType(self, ...)
351
360
  function(____, roomDescriptor) return roomDescriptor.SafeGridIndex end
352
361
  )
353
362
  end
363
+ --- Helper function to detect if the current room was created by the Red Key item.
364
+ --
365
+ -- Under the hood, this checks for the `RoomDescriptorFlag.FLAG_RED_ROOM` flag.
366
+ function ____exports.inRedKeyRoom(self)
367
+ local gridIndex = getRoomGridIndex(nil)
368
+ return ____exports.isRedKeyRoom(nil, gridIndex)
369
+ end
354
370
  function ____exports.isDoorSlotValidAtGridIndex(self, doorSlot, roomGridIndex)
355
371
  local allowedDoors = getRoomAllowedDoors(nil, roomGridIndex)
356
372
  return allowedDoors:has(doorSlot)
@@ -371,14 +387,6 @@ function ____exports.isDoorSlotValidAtGridIndexForRedRoom(self, doorSlot, roomGr
371
387
  local redRoomGridIndex = roomGridIndex + delta
372
388
  return not ____exports.roomExists(nil, redRoomGridIndex) and ____exports.isRoomInsideGrid(nil, redRoomGridIndex)
373
389
  end
374
- --- Helper function to detect if the provided room was created by the Red Key item. Under the hood,
375
- -- this checks for the `RoomDescriptorFlag.FLAG_RED_ROOM` flag.
376
- --
377
- -- @param roomGridIndex Optional. Default is the current room index.
378
- function ____exports.isRedKeyRoom(self, roomGridIndex)
379
- local roomDescriptor = getRoomDescriptor(nil, roomGridIndex)
380
- return hasFlag(nil, roomDescriptor.Flags, RoomDescriptorFlag.RED_ROOM)
381
- end
382
390
  --- Helper function to generate a new room on the floor.
383
391
  --
384
392
  -- Under the hood, this function uses the `Level.MakeRedRoomDoor` method to create the room.
@@ -101,7 +101,7 @@ ____exports.BOSS_NAME_PNG_FILE_NAMES = {
101
101
  [BossID.TURDLET] = "bossname_turdlet.png",
102
102
  [BossID.RAGLICH] = "bossname_raglich.png",
103
103
  [BossID.DOGMA] = "bossname_dogma.png",
104
- [BossID.BEAST] = "bossname_dogma.png",
104
+ [BossID.THE_BEAST] = "bossname_dogma.png",
105
105
  [BossID.HORNY_BOYS] = "bossname_hornyboys.png",
106
106
  [BossID.CLUTCH] = "bossname_clutch.png"
107
107
  }
@@ -101,7 +101,7 @@ ____exports.BOSS_PORTRAIT_PNG_FILE_NAMES = {
101
101
  [BossID.TURDLET] = "portrait_turdlet.png",
102
102
  [BossID.RAGLICH] = "portrait_raglich.png",
103
103
  [BossID.DOGMA] = "portrait_dogma.png",
104
- [BossID.BEAST] = "portrait_dogma.png",
104
+ [BossID.THE_BEAST] = "portrait_dogma.png",
105
105
  [BossID.HORNY_BOYS] = "portrait_hornyboys.png",
106
106
  [BossID.CLUTCH] = "portrait_clutch.png"
107
107
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "isaacscript-common",
3
- "version": "37.0.1",
3
+ "version": "38.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": "^16.1.2"
28
+ "isaac-typescript-definitions": "^17.0.0"
29
29
  }
30
30
  }
@@ -426,6 +426,16 @@ export function getRoomShapeAdjacentNonExistingGridIndexes(
426
426
  return roomShapeAdjacentGridIndexes;
427
427
  }
428
428
 
429
+ /**
430
+ * Helper function to detect if the current room was created by the Red Key item.
431
+ *
432
+ * Under the hood, this checks for the `RoomDescriptorFlag.FLAG_RED_ROOM` flag.
433
+ */
434
+ export function inRedKeyRoom(): boolean {
435
+ const gridIndex = getRoomGridIndex();
436
+ return isRedKeyRoom(gridIndex);
437
+ }
438
+
429
439
  /**
430
440
  * Helper function to check if the given room grid index is a dead end. Specifically, this is
431
441
  * defined as having only one adjacent room that exists.
@@ -480,12 +490,13 @@ export function isDoorSlotValidAtGridIndexForRedRoom(
480
490
  }
481
491
 
482
492
  /**
483
- * Helper function to detect if the provided room was created by the Red Key item. Under the hood,
484
- * this checks for the `RoomDescriptorFlag.FLAG_RED_ROOM` flag.
493
+ * Helper function to detect if the provided room was created by the Red Key item.
494
+ *
495
+ * Under the hood, this checks for the `RoomDescriptorFlag.FLAG_RED_ROOM` flag.
485
496
  *
486
497
  * @param roomGridIndex Optional. Default is the current room index.
487
498
  */
488
- export function isRedKeyRoom(roomGridIndex?: int): boolean {
499
+ export function isRedKeyRoom(roomGridIndex: int): boolean {
489
500
  const roomDescriptor = getRoomDescriptor(roomGridIndex);
490
501
  return hasFlag(roomDescriptor.Flags, RoomDescriptorFlag.RED_ROOM);
491
502
  }
@@ -107,7 +107,7 @@ export const BOSS_NAME_PNG_FILE_NAMES = {
107
107
  [BossID.RAGLICH]: "bossname_raglich.png", // 98
108
108
  [BossID.DOGMA]: "bossname_dogma.png", // 99
109
109
  // There is no versus-screen for The Beast, so use Dogma instead.
110
- [BossID.BEAST]: "bossname_dogma.png", // 100
110
+ [BossID.THE_BEAST]: "bossname_dogma.png", // 100
111
111
  [BossID.HORNY_BOYS]: "bossname_hornyboys.png", // 101
112
112
  [BossID.CLUTCH]: "bossname_clutch.png", // 102
113
113
  } as const satisfies Record<BossID, string>;
@@ -110,7 +110,7 @@ export const BOSS_PORTRAIT_PNG_FILE_NAMES = {
110
110
  [BossID.RAGLICH]: "portrait_raglich.png", // 98
111
111
  [BossID.DOGMA]: "portrait_dogma.png", // 99
112
112
  // There is no versus-screen for The Beast, so use Dogma instead.
113
- [BossID.BEAST]: "portrait_dogma.png", // 100
113
+ [BossID.THE_BEAST]: "portrait_dogma.png", // 100
114
114
  [BossID.HORNY_BOYS]: "portrait_hornyboys.png", // 101
115
115
  [BossID.CLUTCH]: "portrait_clutch.png", // 102
116
116
  } as const satisfies Record<BossID, string>;