Source

SlayTheSpireAPI/MasterLists/PlayableCharacters.ts

/**
 * Types of playable characters
 * @enum
 * @type PlayableCharacter
 * @constant
 * @example
 * const ironclad: PlayableCharacter = PlayableCharacter.Ironclad;
 */
export enum PlayableCharacter {
    Ironclad,
    Silent,
    Defect,
    Watcher
}

/**
 * An array of {@link PlayableCharacter} names that can be used to convert a
 * {@link PlayableCharacter} to a human readable display name
 * @type CharacterDisplayNames<string>
 * @constant
 * @example
 * const ironcladName: string = CharacterDisplayNames[PlayableCharacter.Ironclad];
 */
export const CharacterDisplayNames: Array<string> = [
    'Ironclad',
    'Silent',
    'Defect',
    'Watcher',
];

/**
 * {@link PlayableCharacter} types in the form of an array. Used to convert an index
 * to a {@link PlayableCharacter}
 * @type Array<PlayableCharacter>
 * @constant
 * @example
 * const ironclad: PlayableCharacter = MasterCharacterList[0];
 */
export const MasterCharacterList: Array<PlayableCharacter> = [
    PlayableCharacter.Ironclad,
    PlayableCharacter.Silent,
    PlayableCharacter.Defect,
    PlayableCharacter.Watcher,
];