UNPKG

maplestory-openapi

Version:

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

150 lines (148 loc) 3.45 kB
/** * 萌獸 資訊 */ 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; } } export { CharacterFamiliarDto, CharacterFamiliarInfoDto, CharacterFamiliarInfoOptionDto, CharacterFamiliarLinkSlotDto };