UNPKG

isaac-typescript-definitions

Version:

TypeScript definitions for The Binding of Isaac: Repentance.

394 lines (362 loc) 8.98 kB
/* eslint-disable sort-exports/sort-exports */ /** * For `StageID.SPECIAL_ROOMS` (0), `RoomType.SHOP` (2). * * This matches the sub-type in the "00.special rooms.stb" file. */ export enum ShopSubType { LEVEL_1 = 0, LEVEL_2 = 1, LEVEL_3 = 2, LEVEL_4 = 3, LEVEL_5 = 4, RARE_GOOD = 10, RARE_BAD = 11, TAINTED_KEEPER_LEVEL_1 = 100, TAINTED_KEEPER_LEVEL_2 = 101, TAINTED_KEEPER_LEVEL_3 = 102, TAINTED_KEEPER_LEVEL_4 = 103, TAINTED_KEEPER_LEVEL_5 = 104, TAINTED_KEEPER_RARE_GOOD = 110, TAINTED_KEEPER_RARE_BAD = 111, } /** * For `StageID.SPECIAL_ROOMS` (0), `RoomType.TREASURE` (4). * * This matches the sub-type in the "00.special rooms.stb" file and elsewhere. */ export enum TreasureRoomSubType { NORMAL = 0, MORE_OPTIONS = 1, PAY_TO_WIN = 2, MORE_OPTIONS_AND_PAY_TO_WIN = 3, KNIFE_PIECE = 34, } /** * For `StageID.SPECIAL_ROOMS` (0), `RoomType.BOSS` (5). * * This matches the "bossID" attribute in the "entities2.xml" file. It also matches the sub-type in * the "00.special rooms.stb" file. * * The enum is named `BossID` instead of `BossRoomSubType` in order to match the `Entity.GetBossID`, * `Room.GetBossID` and `Room.GetSecondBossID` methods. * * There is no BossID with a value of 0 because this is the default return value for "no boss ID" * when using the `Room.GetBossID` method. * * This enum is contiguous. (Every value is satisfied between 1 and 102, inclusive.) * * Also see the `MinibossID` enum. */ export enum BossID { MONSTRO = 1, LARRY_JR = 2, CHUB = 3, GURDY = 4, MONSTRO_2 = 5, MOM = 6, SCOLEX = 7, MOMS_HEART = 8, FAMINE = 9, PESTILENCE = 10, WAR = 11, DEATH = 12, DUKE_OF_FLIES = 13, PEEP = 14, LOKI = 15, BLASTOCYST = 16, GEMINI = 17, FISTULA = 18, GISH = 19, STEVEN = 20, CHAD = 21, HEADLESS_HORSEMAN = 22, FALLEN = 23, SATAN = 24, IT_LIVES = 25, HOLLOW = 26, CARRION_QUEEN = 27, GURDY_JR = 28, HUSK = 29, BLOAT = 30, LOKII = 31, BLIGHTED_OVUM = 32, TERATOMA = 33, WIDOW = 34, MASK_OF_INFAMY = 35, WRETCHED = 36, PIN = 37, CONQUEST = 38, ISAAC = 39, /** Also known as "???". */ BLUE_BABY = 40, DADDY_LONG_LEGS = 41, TRIACHNID = 42, HAUNT = 43, DINGLE = 44, MEGA_MAW = 45, GATE = 46, MEGA_FATTY = 47, CAGE = 48, MAMA_GURDY = 49, DARK_ONE = 50, ADVERSARY = 51, POLYCEPHALUS = 52, MR_FRED = 53, LAMB = 54, MEGA_SATAN = 55, GURGLING = 56, STAIN = 57, BROWNIE = 58, FORSAKEN = 59, LITTLE_HORN = 60, RAG_MAN = 61, ULTRA_GREED = 62, HUSH = 63, DANGLE = 64, TURDLING = 65, FRAIL = 66, RAG_MEGA = 67, SISTERS_VIS = 68, BIG_HORN = 69, DELIRIUM = 70, /** * Ultra Greedier does not have its own boss room; it appears in the normal Ultra Greed room. The * `Room.GetBossID` function returns `BossID.ULTRA_GREED` (62) when fighting Ultra Greedier, but * the boss ID can be successfully retrieved from the `Entity.GetBossID` method. */ ULTRA_GREEDIER = 71, MATRIARCH = 72, PILE = 73, REAP_CREEP = 74, LIL_BLUB = 75, WORMWOOD = 76, RAINMAKER = 77, VISAGE = 78, SIREN = 79, TUFF_TWINS = 80, HERETIC = 81, HORNFEL = 82, GREAT_GIDEON = 83, BABY_PLUM = 84, SCOURGE = 85, CHIMERA = 86, ROTGUT = 87, MOTHER = 88, MAUSOLEUM_MOM = 89, MAUSOLEUM_MOMS_HEART = 90, MIN_MIN = 91, CLOG = 92, SINGE = 93, BUMBINO = 94, COLOSTOMIA = 95, SHELL = 96, TURDLET = 97, /** * Raglich is currently unfinished and there are no boss rooms for it. However, the boss ID can be * successfully retrieved from the `Entity.GetBossID` method. This works for all variants of * `EntityType.RAGLICH` (919). */ RAGLICH = 98, /** * Dogma does not have its own boss rooms; it appears in a normal room. The `Room.GetBossID` * function returns 0 inside of the Dogma Boss Room. However, the boss ID can be successfully * retrieved from the `Entity.GetBossID` method. This works for all variants of `EntityType.DOGMA` * (950). */ DOGMA = 99, /** * The Beast does not have its own boss rooms; it appears in a crawl space. The `Room.GetBossID` * function returns 0 inside of The Beast Boss Room. However, the boss ID can be successfully * retrieved from the `Entity.GetBossID` method, but only if the variant is `BeastVariant.BEAST` * (0) or `BeastVariant.STALACTITE` (1). */ BEAST = 100, HORNY_BOYS = 101, CLUTCH = 102, /** * There is an entry for "Cadavra" in the "bossportraits.xml" file, but it is not present in the * game. * * @see https://bindingofisaacrebirth.fandom.com/wiki/Cut_Content */ // CADAVRA = 103, } /** * For `StageID.SPECIAL_ROOMS` (0), `RoomType.MINI_BOSS` (6). * * This matches the sub-type in the "00.special rooms.stb" file. * * The enum is named `MinibossID` instead of` MinibossRoomSubType` in order to match the `BossID` * enum. * * Also see the `BossID` enum. */ export enum MinibossID { SLOTH = 0, LUST = 1, WRATH = 2, GLUTTONY = 3, GREED = 4, ENVY = 5, PRIDE = 6, SUPER_SLOTH = 7, SUPER_LUST = 8, SUPER_WRATH = 9, SUPER_GLUTTONY = 10, SUPER_GREED = 11, SUPER_ENVY = 12, SUPER_PRIDE = 13, ULTRA_PRIDE = 14, KRAMPUS = 15, } // For `StageID.SPECIAL_ROOMS` (0), `RoomType.SUPER_SECRET` (8), the sub-type corresponds to the // `BackdropType` enum. /** * For `StageID.SPECIAL_ROOMS` (0), `RoomType.CURSE` (10). * * This matches the sub-type in the "00.special rooms.stb" file. */ export enum CurseRoomSubType { NORMAL = 0, VOODOO_HEAD = 1, } /** * For `StageID.SPECIAL_ROOMS` (0), `RoomType.CHALLENGE` (11). * * This matches the sub-type in the "00.special rooms.stb" file and elsewhere. */ export enum ChallengeRoomSubType { NORMAL = 0, BOSS = 1, NORMAL_WAVE = 10, BOSS_WAVE = 11, GREAT_GIDEON_WAVE = 12, } /** * For `StageID.SPECIAL_ROOMS` (0), `RoomType.LIBRARY` (12). * * This matches the sub-type in the "00.special rooms.stb" file. */ export enum LibrarySubType { LEVEL_1 = 0, LEVEL_2 = 1, LEVEL_3 = 2, LEVEL_4 = 3, LEVEL_5 = 4, EXTRA_GOOD = 10, EXTRA_BAD = 11, TAINTED_KEEPER_LEVEL_1 = 100, TAINTED_KEEPER_LEVEL_2 = 101, TAINTED_KEEPER_LEVEL_3 = 102, TAINTED_KEEPER_LEVEL_4 = 103, TAINTED_KEEPER_LEVEL_5 = 104, TAINTED_KEEPER_EXTRA_GOOD = 110, TAINTED_KEEPER_EXTRA_BAD = 111, } /** * For `StageID.SPECIAL_ROOMS` (0), `RoomType.DEVIL` (14). * * This matches the sub-type in the "00.special rooms.stb" file. */ export enum DevilRoomSubType { NORMAL = 0, NUMBER_SIX_TRINKET = 1, } /** * For `StageID.SPECIAL_ROOMS` (0), `RoomType.ANGEL` (15). * * This matches the sub-type in the "00.special rooms.stb" file. */ export enum AngelRoomSubType { NORMAL = 0, /** This is the kind of Angel Room that appears when players have The Stairway collectible. */ SHOP = 1, } /** * For `StageID.SPECIAL_ROOMS` (0), `RoomType.DUNGEON` (16). * * This matches the sub-type in the "00.special rooms.stb" file and elsewhere. */ export enum DungeonSubType { NORMAL = 0, /** This is the room uncovered by throwing a Chaos Card at Great Gideon. */ GIDEONS_GRAVE = 1, /** This is the room for the second phase of Rotgut. */ ROTGUT_MAGGOT = 2, /** This is the room for the third phase of Rotgut. */ ROTGUT_HEART = 3, BEAST_ROOM = 4, } /** * For `StageID.SPECIAL_ROOMS` (0), `RoomType.CLEAN_BEDROOM` (18). * * This matches the sub-type in the "00.special rooms.stb" file. */ export enum IsaacsRoomSubType { NORMAL = 0, GENESIS = 99, } /** * For `StageID.SPECIAL_ROOMS` (0), `RoomType.SECRET_EXIT` (27). * * This matches the sub-type in the "00.special rooms.stb" file. */ export enum SecretExitSubType { DOWNPOUR = 1, MINES = 2, MAUSOLEUM = 3, } /** * For `StageID.DOWNPOUR` (27) and `StageID.DROSS` (28), `RoomType.DEFAULT` (1). * * This matches the sub-type in the "27.downpour.stb" and "28.dross.stb" files. */ export enum DownpourRoomSubType { NORMAL = 0, WHITE_FIRE = 1, MIRROR = 34, } /** * For `StageID.MINES` (29) and `StageID.ASHPIT` (30), `RoomType.DEFAULT` (1). * * This matches the sub-type in the "29.mines.stb" and "30.ashpit.stb" files. */ export enum MinesRoomSubType { NORMAL = 0, BUTTON_ROOM = 1, MINESHAFT_ENTRANCE = 10, MINESHAFT_LOBBY = 11, MINESHAFT_KNIFE_PIECE = 20, MINESHAFT_ROOM_PRE_CHASE = 30, MINESHAFT_ROOM_POST_CHASE = 31, } /** * For `StageID.HOME` (35), `RoomType.DEFAULT` (1). * * This matches the sub-type in the "35.home.stb" file. */ export enum HomeRoomSubType { ISAACS_BEDROOM = 0, HALLWAY = 1, MOMS_BEDROOM = 2, LIVING_ROOM = 3, CLOSET_RIGHT = 10, CLOSET_LEFT = 11, DEATH_CERTIFICATE_ENTRANCE = 33, DEATH_CERTIFICATE_ITEMS = 34, } /** * For `StageID.BACKWARDS` (36), `RoomType.DEFAULT` (1). * * This matches the sub-type in the "36.backwards.stb" file. */ export enum BackwardsRoomSubType { EXIT = 0, BASEMENT = 1, CAVES = 4, DEPTHS = 7, DOWNPOUR = 27, MINES = 29, MAUSOLEUM = 31, }