UNPKG

genshin-manager

Version:

<div align="center"> <p> <a href="https://www.npmjs.com/package/genshin-manager"><img src="https://img.shields.io/npm/v/genshin-manager.svg?maxAge=3600" alt="npm version" /></a> <a href="https://www.npmjs.com/package/genshin-manager"><img src="https:

51 lines (50 loc) 2.13 kB
"use strict"; var _a; Object.defineProperty(exports, "__esModule", { value: true }); exports.CharacterCostume = void 0; const Client_1 = require("../../client/Client"); const ImageAssets_1 = require("../../models/assets/ImageAssets"); /** * Class of character's costume */ class CharacterCostume { /** * Create a Costume * @param costumeId Costume ID */ constructor(costumeId) { this.id = costumeId; const costumeJson = Client_1.Client._getJsonFromCachedExcelBinOutput('AvatarCostumeExcelConfigData', this.id); this.characterId = costumeJson.characterId; const avatarJson = Client_1.Client._getJsonFromCachedExcelBinOutput('AvatarExcelConfigData', this.characterId); this.name = Client_1.Client._cachedTextMap.get(String(costumeJson.nameTextMapHash)) || ''; this.description = Client_1.Client._cachedTextMap.get(String(costumeJson.descTextMapHash)) || ''; this.quality = costumeJson.quality || 0; const sideIconName = costumeJson.quality && typeof avatarJson != 'undefined' ? costumeJson.sideIconName : avatarJson.sideIconName; this.sideIcon = new ImageAssets_1.ImageAssets(sideIconName); const nameParts = this.sideIcon.name.split('_'); const avatarTag = nameParts[nameParts.length - 1]; this.icon = new ImageAssets_1.ImageAssets('UI_AvatarIcon_' + avatarTag); this.art = new ImageAssets_1.ImageAssets(costumeJson.quality ? 'UI_Costume_' + avatarTag : 'UI_Gacha_AvatarImg_' + avatarTag); this.card = new ImageAssets_1.ImageAssets('UI_AvatarIcon_' + avatarTag + '_Card'); } /** * Get all costume IDs * @returns All costume IDs */ static get allCostumeIds() { const costumeDatas = Object.values(Client_1.Client._getCachedExcelBinOutputByName('AvatarCostumeExcelConfigData')); return costumeDatas.map((k) => k.skinId); } } exports.CharacterCostume = CharacterCostume; _a = CharacterCostume; (() => { Client_1.Client._addExcelBinOutputKeyFromClassPrototype(_a.prototype); })();