Source

cacheTypes/IndexType.js

import FramemapLoader from '../loaders/FramemapLoader.js';
import FramesLoader from '../loaders/FramesLoader.js';
import MapLoader from '../loaders/MapLoader.js';
import ModelLoader from '../loaders/ModelLoader.js'
import SpriteLoader from '../loaders/SpriteLoader.js';
import TextureLoader from '../loaders/TextureLoader.js';

/**
 * @readonly
 * @enum {IndexType}
 */
const IndexType = {
    /** Animations */          
    FRAMES: { id: 0, loader: FramesLoader },
    /** Skeletons */          
    FRAMEMAPS: { id: 1, loader: FramemapLoader },
    /** Configs */          
    CONFIGS: { id: 2, loader: undefined },
    /** Interfaces */          
    INTERFACES: { id: 3, loader: undefined },
    /** Sound FX */          
    SOUNDEFFECTS: { id: 4, loader: undefined }, 
    /** Maps */          
    MAPS: { id: 5, loader: MapLoader }, 
    /** Music Tracks */          
    TRACK1: { id: 6, loader: undefined }, 
    /** Models */          
    MODELS: { id: 7, loader: ModelLoader }, 
    /** Sprites */          
    SPRITES: { id: 8, loader: SpriteLoader }, 
    /** Textures */          
    TEXTURES: { id: 9, loader: TextureLoader }, 
    /** Title screen & Huffman? */          
    BINARY: { id: 10, loader: undefined }, 
    /** Music Jingles */          
    TRACK2: { id: 11, loader: undefined }, 
    /** Interface Scripts */          
    CLIENTSCRIPT: { id: 12, loader: undefined }, 
    /** Interface Fonts */          
    FONTS: { id: 13, loader: undefined }, 
    /** Music Samples */          
    VORBIS: { id: 14, loader: undefined }, 
    /** Music Patches */          
    INSTRUMENTS: { id: 15, loader: undefined }, 
    /** World Locations */          
    WORLDMAP: { id: 16, loader: undefined }, 
    /** Sprite IDs? */          
    UKNOWN1: { id: 17, loader: undefined }, 
    /** World Map Geography? */                      
    UKNOWN2: { id: 18, loader: undefined }, 
    /**World Map? */                          
    UKNOWN3: { id: 19, loader: undefined }, 
    /** World Map Ground? */                    
    UKNOWN4: { id: 20, loader: undefined },      


};

IndexType.valueOf = (id) => {
    var values = Object.values(IndexType);
    var keys = Object.keys(IndexType);
    for (var i = 0; i < values.length; i++) {
        if (id == values[i].id)
            return IndexType[keys[i]];
    }
    return undefined;
}

Object.freeze(IndexType);

export default IndexType;