isaacscript-common
Version:
Helper functions and features for IsaacScript mods.
99 lines (88 loc) • 4.08 kB
text/typescript
import { LevelStage, Music, StageType } from "isaac-typescript-definitions";
const BASEMENT_TO_MUSIC = {
[]: Music.BASEMENT, // 0
[]: Music.CELLAR, // 1
[]: Music.BURNING_BASEMENT, // 2
[]: Music.BASEMENT, // 3
[]: Music.DOWNPOUR, // 4
[]: Music.DROSS, // 5
} as const satisfies Record<StageType, Music>;
const CAVES_TO_MUSIC = {
[]: Music.CAVES, // 0
[]: Music.CATACOMBS, // 1
[]: Music.FLOODED_CAVES, // 2
[]: Music.CAVES, // 3
[]: Music.MINES, // 4
[]: Music.ASHPIT, // 5
} as const satisfies Record<StageType, Music>;
const DEPTHS_TO_MUSIC = {
[]: Music.DEPTHS, // 0
[]: Music.NECROPOLIS, // 1
[]: Music.DANK_DEPTHS, // 2
[]: Music.DEPTHS, // 3
[]: Music.MAUSOLEUM, // 4
[]: Music.GEHENNA, // 5
} as const satisfies Record<StageType, Music>;
const WOMB_TO_MUSIC = {
[]: Music.WOMB, // 0
[]: Music.UTERO, // 1
[]: Music.SCARRED_WOMB, // 2
[]: Music.WOMB, // 3
[]: Music.CORPSE, // 4
[]: Music.MORTIS, // 5
} as const satisfies Record<StageType, Music>;
const BLUE_WOMB_TO_MUSIC = {
[]: Music.BLUE_WOMB, // 0
[]: Music.BLUE_WOMB, // 1
[]: Music.BLUE_WOMB, // 2
[]: Music.BLUE_WOMB, // 3
[]: Music.BLUE_WOMB, // 4
[]: Music.BLUE_WOMB, // 5
} as const satisfies Record<StageType, Music>;
const SHEOL_CATHEDRAL_TO_MUSIC = {
[]: Music.SHEOL, // 0
[]: Music.CATHEDRAL, // 1
[]: Music.SHEOL, // 2
[]: Music.SHEOL, // 3
[]: Music.SHEOL, // 4
[]: Music.SHEOL, // 5
} as const satisfies Record<StageType, Music>;
const DARK_ROOM_CHEST_TO_MUSIC = {
[]: Music.DARK_ROOM, // 0
[]: Music.CHEST, // 1
[]: Music.DARK_ROOM, // 2
[]: Music.DARK_ROOM, // 3
[]: Music.DARK_ROOM, // 4
[]: Music.DARK_ROOM, // 5
} as const satisfies Record<StageType, Music>;
const VOID_TO_MUSIC = {
[]: Music.VOID, // 0
[]: Music.VOID, // 1
[]: Music.VOID, // 2
[]: Music.VOID, // 3
[]: Music.VOID, // 4
[]: Music.VOID, // 5
} as const satisfies Record<StageType, Music>;
const HOME_TO_MUSIC = {
[]: Music.ISAACS_HOUSE, // 0
[]: Music.ISAACS_HOUSE, // 1
[]: Music.ISAACS_HOUSE, // 2
[]: Music.ISAACS_HOUSE, // 3
[]: Music.ISAACS_HOUSE, // 4
[]: Music.ISAACS_HOUSE, // 5
} as const satisfies Record<StageType, Music>;
export const STAGE_TO_MUSIC = {
[]: BASEMENT_TO_MUSIC, // 1
[]: BASEMENT_TO_MUSIC, // 2
[]: CAVES_TO_MUSIC, // 3
[]: CAVES_TO_MUSIC, // 4
[]: DEPTHS_TO_MUSIC, // 5
[]: DEPTHS_TO_MUSIC, // 6
[]: WOMB_TO_MUSIC, // 7
[]: WOMB_TO_MUSIC, // 8
[]: BLUE_WOMB_TO_MUSIC, // 9
[]: SHEOL_CATHEDRAL_TO_MUSIC, // 10
[]: DARK_ROOM_CHEST_TO_MUSIC, // 11
[]: VOID_TO_MUSIC, // 12
[]: HOME_TO_MUSIC, // 13
} as const satisfies Record<LevelStage, Record<StageType, Music>>;