UNPKG

maplestory-openapi

Version:

This JavaScript library enables the use of the MapleStory OpenAPI of Nexon.

240 lines (235 loc) 8.15 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var characterCashItemEquipment = require('../../../common/dto/character/characterCashItemEquipment.js'); /** * 캐릭터 캐시 장비 아이템 정보 */ class CharacterCashItemEquipmentDto extends characterCashItemEquipment.CharacterCashItemEquipmentDto { /** * 조회 기준일 (KST, 일 단위 데이터로 시, 분은 일괄 0으로 표기) */ date; /** * 캐릭터 성별 */ characterGender; /** * 캐릭터 직업 */ characterClass; /** * 캐릭터 외형 모드(0:일반 모드, 1:제로인 경우 베타, 엔젤릭버스터인 경우 드레스 업 모드) */ characterLookMode; /** * 적용 중인 캐시 장비 프리셋 번호 */ presetNo; /** * 장착 중인 캐시 장비 */ cashItemEquipmentBase; /** * 1번 코디 프리셋 */ cashItemEquipmentPreset1; /** * 2번 코디 프리셋 */ cashItemEquipmentPreset2; /** * 3번 코디 프리셋 */ cashItemEquipmentPreset3; /** * 제로인 경우 베타, 엔젤릭버스터인 경우 드레스 업 모드에서 장착 중인 캐시 장비 */ additionalCashItemEquipmentBase; /** * 제로인 경우 베타, 엔젤릭버스터인 경우 드레스 업 모드의 1번 코디 프리셋 */ additionalCashItemEquipmentPreset1; /** * 제로인 경우 베타, 엔젤릭버스터인 경우 드레스 업 모드의 2번 코디 프리셋 */ additionalCashItemEquipmentPreset2; /** * 제로인 경우 베타, 엔젤릭버스터인 경우 드레스 업 모드의 3번 코디 프리셋 */ additionalCashItemEquipmentPreset3; constructor(obj) { super(); const { date, character_gender, character_class, character_look_mode, preset_no, cash_item_equipment_base, cash_item_equipment_preset_1, cash_item_equipment_preset_2, cash_item_equipment_preset_3, additional_cash_item_equipment_base, additional_cash_item_equipment_preset_1, additional_cash_item_equipment_preset_2, additional_cash_item_equipment_preset_3, } = obj; this.date = date ? new Date(date) : null; this.characterGender = character_gender; this.characterClass = character_class; this.characterLookMode = character_look_mode; this.presetNo = preset_no; this.cashItemEquipmentBase = cash_item_equipment_base.map((preset) => new CharacterCashItemEquipmentPresetDto(preset)); this.cashItemEquipmentPreset1 = cash_item_equipment_preset_1.map((preset) => new CharacterCashItemEquipmentPresetDto(preset)); this.cashItemEquipmentPreset2 = cash_item_equipment_preset_2.map((preset) => new CharacterCashItemEquipmentPresetDto(preset)); this.cashItemEquipmentPreset3 = cash_item_equipment_preset_3.map((preset) => new CharacterCashItemEquipmentPresetDto(preset)); this.additionalCashItemEquipmentBase = additional_cash_item_equipment_base.map((preset) => new CharacterCashItemEquipmentPresetDto(preset)); this.additionalCashItemEquipmentPreset1 = additional_cash_item_equipment_preset_1.map((preset) => new CharacterCashItemEquipmentPresetDto(preset)); this.additionalCashItemEquipmentPreset2 = additional_cash_item_equipment_preset_2.map((preset) => new CharacterCashItemEquipmentPresetDto(preset)); this.additionalCashItemEquipmentPreset3 = additional_cash_item_equipment_preset_3.map((preset) => new CharacterCashItemEquipmentPresetDto(preset)); } } /** * 캐릭터 캐시 장비 컬러링프리즘 */ class CharacterCashItemEquipmentColoringPrismDto extends characterCashItemEquipment.CharacterCashItemEquipmentColoringPrismDto { /** * 컬러링프리즘 색상 범위 */ colorRange; /** * 컬러링프리즘 색조 */ hue; /** * 컬러링프리즘 채도 */ saturation; /** * 컬러링프리즘 명도 */ value; constructor(obj) { super(); const { color_range, hue, saturation, value } = obj; this.colorRange = color_range; this.hue = hue; this.saturation = saturation; this.value = value; } } /** * 캐릭터 캐시 장비 옵션 */ class CharacterCashItemEquipmentOptionDto extends characterCashItemEquipment.CharacterCashItemEquipmentOptionDto { /** * 옵션 타입 */ optionType; /** * 옵션 값 */ optionValue; constructor(obj) { super(); const { option_type, option_value } = obj; this.optionType = option_type; this.optionValue = option_value; } } /** * 캐릭터 프리셋 장착 캐시 장비 정보 */ class CharacterCashItemEquipmentPresetDto extends characterCashItemEquipment.CharacterCashItemEquipmentPresetDto { /** * 캐시 장비 부위 명 */ cashItemEquipmentPart; /** * 캐시 장비 슬롯 위치 */ cashItemEquipmentSlot; /** * 캐시 장비 명 */ cashItemName; /** * 캐시 장비 아이콘 */ cashItemIcon; /** * 캐시 장비 설명 */ cashItemDescription; /** * 캐시 장비 옵션 */ cashItemOption; /** * 캐시 장비 유효 기간 (KST) */ dateExpire = null; /** * 캐시 장비 유효 기간 만료 여부 */ isExpired = null; /** * 캐시 장비 옵션 유효 기간 (KST, 시간 단위 데이터로 분은 일괄 0으로 표기) */ dateOptionExpire = null; /** * 캐시 장비 옵션 유효 기간 만료 여부 */ isOptionExpired = null; /** * 캐시 장비 라벨 정보 */ cashItemLabel; /** * 캐시 장비 컬러링프리즘 정보 */ cashItemColoringPrism; /** * 아이템 장착 가능 성별 */ itemGender; /** * 스킬명 */ skills; /** * 프리스타일 쿠폰 적용 여부 (0:미적용, 1:적용) */ freestyleFlag; constructor(obj) { super(); const { cash_item_equipment_part, cash_item_equipment_slot, cash_item_name, cash_item_icon, cash_item_description, cash_item_option, date_expire, date_option_expire, cash_item_label, cash_item_coloring_prism, item_gender, skills, freestyle_flag, } = obj; this.cashItemEquipmentPart = cash_item_equipment_part; this.cashItemEquipmentSlot = cash_item_equipment_slot; this.cashItemName = cash_item_name; this.cashItemIcon = cash_item_icon; this.cashItemDescription = cash_item_description; this.cashItemOption = cash_item_option.map((option) => new CharacterCashItemEquipmentOptionDto(option)); this.cashItemLabel = cash_item_label; this.cashItemColoringPrism = cash_item_coloring_prism ? new CharacterCashItemEquipmentColoringPrismDto(cash_item_coloring_prism) : null; this.itemGender = item_gender; this.skills = skills; this.freestyleFlag = freestyle_flag; if (date_expire === 'expired') { this.isExpired = true; } else if (typeof date_expire === 'string') { this.dateExpire = date_expire ? new Date(date_expire) : null; } if (date_option_expire === 'expired') { this.isOptionExpired = true; } else if (typeof date_option_expire === 'string') { this.dateOptionExpire = date_option_expire ? new Date(date_option_expire) : null; } } /** * 프리스타일 쿠폰 적용 여부 */ get isFreestyleFlag() { return this.freestyleFlag === '1'; } } exports.CharacterCashItemEquipmentColoringPrismDto = CharacterCashItemEquipmentColoringPrismDto; exports.CharacterCashItemEquipmentDto = CharacterCashItemEquipmentDto; exports.CharacterCashItemEquipmentOptionDto = CharacterCashItemEquipmentOptionDto; exports.CharacterCashItemEquipmentPresetDto = CharacterCashItemEquipmentPresetDto;