maplestory-openapi
Version:
This JavaScript library enables the use of the MapleStory OpenAPI of Nexon.
157 lines (153 loc) • 3.67 kB
JavaScript
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
/**
* 萌獸 資訊
*/
class CharacterFamiliarDto {
/**
* 要搜尋的日期 (TST,每日資料中的小時與分鐘將顯示為 0)
*/
date;
/**
* 萌獸 鏈路插槽資訊
*/
familiarLinkSlot;
/**
* 萌獸 細節
*/
familiarInfo;
constructor(obj) {
const { date, familiar_link_slot, familiar_info } = obj;
this.date = date ? new Date(date) : null;
this.familiarLinkSlot = familiar_link_slot.map((x) => new CharacterFamiliarLinkSlotDto(x));
this.familiarInfo = familiar_info.map((x) => new CharacterFamiliarInfoDto(x));
}
}
/**
* 萌獸 鏈路插槽資訊
*/
class CharacterFamiliarLinkSlotDto {
/**
* 插槽標識符 (1~3, vip)
*/
slotId;
/**
* 連結的 萌獸 名稱 (如果插槽中沒有任何關聯,則為 null)
*/
familiarName;
/**
* 已啟用還是未啟用 (true, false)
*/
activeFlag;
/**
* 截止日期
*/
expireDate;
constructor(obj) {
const { slot_id, familiar_name, active_flag, expire_date } = obj;
this.slotId = slot_id;
this.familiarName = familiar_name;
this.activeFlag = active_flag;
this.expireDate = expire_date ? new Date(expire_date) : null;
}
}
/**
* 萌獸 細節
*/
class CharacterFamiliarInfoDto {
/**
* 萌獸 名稱
*/
familiarName;
/**
* 萌獸 暱稱
*/
familiarNickname;
/**
* 特別與否
*/
familiarSpecialFlag;
/**
* 萌獸 情況
*/
familiarState;
/**
* 等級
*/
familiarLevel;
/**
* 經驗
*/
familiarExp;
/**
* 具備的技能
*/
skillName;
/**
* 選項等級
*/
optionLevel;
/**
* 選項訊息
*/
option;
/**
* 等級
*/
familiarGrade;
/**
* 外觀名稱
*/
lookName;
/**
* 當前是否已被召喚
*/
summonedFlag;
/**
* 連結槽索引 (1~3, vip, not link)
*/
slotId;
constructor(obj) {
const { familiar_name, familiar_nickname, familiar_special_flag, familiar_state, familiar_level, familiar_exp, skill_name, option_level, option, familiar_grade, look_name, summoned_flag, slot_id, } = obj;
this.familiarName = familiar_name;
this.familiarNickname = familiar_nickname;
this.familiarSpecialFlag = familiar_special_flag;
this.familiarState = familiar_state;
this.familiarLevel = familiar_level;
this.familiarExp = familiar_exp;
this.skillName = skill_name;
this.optionLevel = option_level;
this.option = option.map((x) => new CharacterFamiliarInfoOptionDto(x));
this.familiarGrade = familiar_grade;
this.lookName = look_name;
this.summonedFlag = summoned_flag;
this.slotId = slot_id;
}
}
/**
* 選項訊息
*/
class CharacterFamiliarInfoOptionDto {
/**
* 選項號
*/
optionNo;
/**
* 選項名稱
*/
optionName;
/**
* 選擇權價值
*/
optionValue;
constructor(obj) {
const { option_no, option_name, option_value } = obj;
this.optionNo = option_no;
this.optionName = option_name;
this.optionValue = option_value;
}
}
exports.CharacterFamiliarDto = CharacterFamiliarDto;
exports.CharacterFamiliarInfoDto = CharacterFamiliarInfoDto;
exports.CharacterFamiliarInfoOptionDto = CharacterFamiliarInfoOptionDto;
exports.CharacterFamiliarLinkSlotDto = CharacterFamiliarLinkSlotDto;