maplestory-openapi
Version:
This JavaScript library enables the use of the MapleStory OpenAPI of Nexon.
1,218 lines (1,213 loc) • 31.6 kB
JavaScript
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
var characterItemEquipment = require('../../../common/dto/character/characterItemEquipment.js');
/**
* 角色已裝備道具資訊
*/
class CharacterItemEquipmentDto extends characterItemEquipment.CharacterItemEquipmentDto {
/**
* 要搜尋的日期 (TST,每日資料中的小時與分鐘將顯示為 0)
*/
date;
/**
* 角色性別
*/
characterGender;
/**
* 角色職業
*/
characterClass;
/**
* 目前套用的道具預設編號
*/
presetNo;
/**
* 道具資訊
*/
itemEquipment;
/**
* 預設 1 的道具資訊
*/
itemEquipmentPreset1;
/**
* 預設 2 的道具資訊
*/
itemEquipmentPreset2;
/**
* 預設 3 的道具資訊
*/
itemEquipmentPreset3;
/**
* 稱號資訊
*/
title;
/**
* 外型設定中已登錄勳章的外型資訊
*/
medalShape;
/**
* 龍魔導士的龍道具資訊 (僅在龍魔導士時回應)
*/
dragonEquipment;
/**
* 機甲戰神道具資訊 (僅在機甲戰神時回應)
*/
mechanicEquipment;
constructor(obj) {
super();
const { date, character_gender, character_class, preset_no, item_equipment, item_equipment_preset_1, item_equipment_preset_2, item_equipment_preset_3, title, medal_shape, dragon_equipment, mechanic_equipment, } = obj;
this.date = date ? new Date(date) : null;
this.characterGender = character_gender;
this.characterClass = character_class;
this.presetNo = preset_no;
this.itemEquipment = item_equipment.map((equipment) => new CharacterItemEquipmentInfoDto(equipment));
this.itemEquipmentPreset1 =
item_equipment_preset_1?.map((equipment) => new CharacterItemEquipmentInfoDto(equipment)) ?? [];
this.itemEquipmentPreset2 =
item_equipment_preset_2?.map((equipment) => new CharacterItemEquipmentInfoDto(equipment)) ?? [];
this.itemEquipmentPreset3 =
item_equipment_preset_3?.map((equipment) => new CharacterItemEquipmentInfoDto(equipment)) ?? [];
this.title = title ? new CharacterItemEquipmentTitleDto(title) : null;
this.medalShape = medal_shape
? new CharacterItemEquipmentMedalShapeDto(medal_shape)
: null;
this.dragonEquipment = dragon_equipment.map((equipment) => new CharacterItemEquipmentDragonInfoDto(equipment));
this.mechanicEquipment = mechanic_equipment.map((equipment) => new CharacterItemEquipmentMechanicInfoDto(equipment));
}
}
/**
* 稱號資訊
*/
class CharacterItemEquipmentTitleDto extends characterItemEquipment.CharacterItemEquipmentTitleDto {
/**
* 稱號道具名稱
*/
titleName;
/**
* 稱號圖示
*/
titleIcon;
/**
* 稱號描述
*/
titleDescription;
/**
* 稱號有效期間 (TST)
*/
dateExpire = null;
/**
* Whether the title is expired
*/
isExpired = null;
/**
* 稱號選項有效期間 (expired:已到期,null:無限期) (TST)
*/
dateOptionExpire = null;
/**
* Whether the title option is expired
*/
isOptionExpired = null;
/**
* 外型設定中已登錄稱號的道具名稱
*/
titleShapeName;
/**
* 外型設定中已登錄稱號的圖示
*/
titleShapeIcon;
/**
* 外型設定中已登錄稱號的描述
*/
titleShapeDescription;
constructor(obj) {
super();
const { title_name, title_icon, title_description, date_expire, date_option_expire, title_shape_name, title_shape_icon, title_shape_description, } = obj;
this.titleName = title_name;
this.titleIcon = title_icon;
this.titleDescription = title_description;
this.titleShapeName = title_shape_name;
this.titleShapeIcon = title_shape_icon;
this.titleShapeDescription = title_shape_description;
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;
}
}
}
/**
* 外型設定中已登錄勳章的外型資訊
*/
class CharacterItemEquipmentMedalShapeDto extends characterItemEquipment.CharacterItemEquipmentMedalShapeDto {
/**
* 外型設定中已登錄勳章的道具名稱
*/
medalShapeName;
/**
* 外型設定中已登錄勳章的圖示
*/
medalShapeIcon;
/**
* 外型設定中已登錄勳章的描述
*/
medalShapeDescription;
/**
* 外型設定中已登錄勳章的鐵砧套用道具名稱
*/
medalShapeChangedName;
/**
* 外型設定中已登錄勳章的鐵砧套用圖示
*/
medalShapeChangedIcon;
/**
* 外型設定中已登錄勳章的鐵砧套用勳章說明
*/
medalShapeChangedDescription;
constructor(obj) {
super();
const { medal_shape_name, medal_shape_icon, medal_shape_description, medal_shape_changed_name, medal_shape_changed_icon, medal_shape_changed_description, } = obj;
this.medalShapeName = medal_shape_name;
this.medalShapeIcon = medal_shape_icon;
this.medalShapeDescription = medal_shape_description;
this.medalShapeChangedName = medal_shape_changed_name;
this.medalShapeChangedIcon = medal_shape_changed_icon;
this.medalShapeChangedDescription = medal_shape_changed_description;
}
}
/**
* 附加道具選項
*/
class CharacterItemEquipmentAddOptionDto extends characterItemEquipment.CharacterItemEquipmentAddOptionDto {
/**
* 力量 (STR)
*/
str;
/**
* 敏捷 (DEX)
*/
dex;
/**
* 智力 (INT)
*/
int;
/**
* 幸運 (LUK)
*/
luk;
/**
* 最大體力 (HP)
*/
maxHp;
/**
* 最大 MP
*/
maxMp;
/**
* 攻擊力
*/
attackPower;
/**
* 魔力
*/
magicPower;
/**
* 防禦力
*/
armor;
/**
* 移動速度
*/
speed;
/**
* 跳躍力
*/
jump;
/**
* 對首領傷害增加 (%)
*/
bossDamage;
/**
* 傷害 (%)
*/
damage;
/**
* 全部能力值 (%)
*/
allStat;
/**
* 裝備等級減少
*/
equipmentLevelDecrease;
constructor(obj) {
super();
const { str, dex, int, luk, max_hp, max_mp, attack_power, magic_power, armor, speed, jump, boss_damage, damage, all_stat, equipment_level_decrease, } = obj;
this.str = str;
this.dex = dex;
this.int = int;
this.luk = luk;
this.maxHp = max_hp;
this.maxMp = max_mp;
this.attackPower = attack_power;
this.magicPower = magic_power;
this.armor = armor;
this.speed = speed;
this.jump = jump;
this.bossDamage = boss_damage;
this.damage = damage;
this.allStat = all_stat;
this.equipmentLevelDecrease = equipment_level_decrease;
}
}
/**
* 道具基本選項資訊
*/
class CharacterItemEquipmentBaseOptionDto extends characterItemEquipment.CharacterItemEquipmentBaseOptionDto {
/**
* 力量 (STR)
*/
str;
/**
* 敏捷 (DEX)
*/
dex;
/**
* 智力 (INT)
*/
int;
/**
* 幸運 (LUK)
*/
luk;
/**
* 最大體力 (HP)
*/
maxHp;
/**
* 最大 MP
*/
maxMp;
/**
* 攻擊力
*/
attackPower;
/**
* 魔力
*/
magicPower;
/**
* 防禦力
*/
armor;
/**
* 移動速度
*/
speed;
/**
* 跳躍力
*/
jump;
/**
* 對首領傷害增加 (%)
*/
bossDamage;
/**
* 無視怪物防禦力 (%)
*/
ignoreMonsterArmor;
/**
* 全部能力值 (%)
*/
allStat;
/**
* 最大體力 (HP) (%)
*/
maxHpRate;
/**
* 最大 MP (%)
*/
maxMpRate;
/**
* 裝備基本等級
*/
baseEquipmentLevel;
constructor(obj) {
super();
const { str, dex, int, luk, max_hp, max_mp, attack_power, magic_power, armor, speed, jump, boss_damage, ignore_monster_armor, all_stat, max_hp_rate, max_mp_rate, base_equipment_level, } = obj;
this.str = str;
this.dex = dex;
this.int = int;
this.luk = luk;
this.maxHp = max_hp;
this.maxMp = max_mp;
this.attackPower = attack_power;
this.magicPower = magic_power;
this.armor = armor;
this.speed = speed;
this.jump = jump;
this.bossDamage = boss_damage;
this.ignoreMonsterArmor = ignore_monster_armor;
this.allStat = all_stat;
this.maxHpRate = max_hp_rate;
this.maxMpRate = max_mp_rate;
this.baseEquipmentLevel = base_equipment_level;
}
}
/**
* 道具其他選項資訊
*/
class CharacterItemEquipmentEtcOptionDto extends characterItemEquipment.CharacterItemEquipmentEtcOptionDto {
/**
* 力量 (STR)
*/
str;
/**
* 敏捷 (DEX)
*/
dex;
/**
* 智力 (INT)
*/
int;
/**
* 幸運 (LUK)
*/
luk;
/**
* 最大體力 (HP)
*/
maxHp;
/**
* 最大 MP
*/
maxMp;
/**
* 攻擊力
*/
attackPower;
/**
* 魔力
*/
magicPower;
/**
* 防禦力
*/
armor;
/**
* 移動速度
*/
speed;
/**
* 跳躍力
*/
jump;
constructor(obj) {
super();
const { str, dex, int, luk, max_hp, max_mp, attack_power, magic_power, armor, speed, jump, } = obj;
this.str = str;
this.dex = dex;
this.int = int;
this.luk = luk;
this.maxHp = max_hp;
this.maxMp = max_mp;
this.attackPower = attack_power;
this.magicPower = magic_power;
this.armor = armor;
this.speed = speed;
this.jump = jump;
}
}
/**
* 道具特殊選項資訊
*/
class CharacterItemEquipmentExceptionalOptionDto extends characterItemEquipment.CharacterItemEquipmentExceptionalOptionDto {
/**
* 力量 (STR)
*/
str;
/**
* 敏捷 (DEX)
*/
dex;
/**
* 智力 (INT)
*/
int;
/**
* 幸運 (LUK)
*/
luk;
/**
* 最大體力 (HP)
*/
maxHp;
/**
* 最大 MP
*/
maxMp;
/**
* 攻擊力
*/
attackPower;
/**
* 魔力
*/
magicPower;
/**
* 已套用的卓越強化次數
*/
exceptionalUpgrade;
constructor(obj) {
super();
const { str, dex, int, luk, max_hp, max_mp, attack_power, magic_power, exceptional_upgrade, } = obj;
this.str = str;
this.dex = dex;
this.int = int;
this.luk = luk;
this.maxHp = max_hp;
this.maxMp = max_mp;
this.attackPower = attack_power;
this.magicPower = magic_power;
this.exceptionalUpgrade = exceptional_upgrade ?? 0;
}
}
/**
* 道具星星力量資訊
*/
class CharacterItemEquipmentStarforceOptionDto extends characterItemEquipment.CharacterItemEquipmentStarforceOptionDto {
/**
* 力量 (STR)
*/
str;
/**
* 敏捷 (DEX)
*/
dex;
/**
* 智力 (INT)
*/
int;
/**
* 幸運 (LUK)
*/
luk;
/**
* 最大體力 (HP)
*/
maxHp;
/**
* 最大 MP
*/
maxMp;
/**
* 攻擊力
*/
attackPower;
/**
* 魔力
*/
magicPower;
/**
* 防禦力
*/
armor;
/**
* 移動速度
*/
speed;
/**
* 跳躍力
*/
jump;
constructor(obj) {
super();
const { str, dex, int, luk, max_hp, max_mp, attack_power, magic_power, armor, speed, jump, } = obj;
this.str = str;
this.dex = dex;
this.int = int;
this.luk = luk;
this.maxHp = max_hp;
this.maxMp = max_mp;
this.attackPower = attack_power;
this.magicPower = magic_power;
this.armor = armor;
this.speed = speed;
this.jump = jump;
}
}
/**
* 道具最終選項資訊
*/
class CharacterItemEquipmentTotalOptionDto extends characterItemEquipment.CharacterItemEquipmentTotalOptionDto {
/**
* 力量 (STR)
*/
str;
/**
* 敏捷 (DEX)
*/
dex;
/**
* 智力 (INT)
*/
int;
/**
* 幸運 (LUK)
*/
luk;
/**
* 最大體力 (HP)
*/
maxHp;
/**
* 最大 MP
*/
maxMp;
/**
* 攻擊力
*/
attackPower;
/**
* 魔力
*/
magicPower;
/**
* 防禦力
*/
armor;
/**
* 移動速度
*/
speed;
/**
* 跳躍力
*/
jump;
/**
* 對首領傷害增加 (%)
*/
bossDamage;
/**
* 無視怪物防禦力 (%)
*/
ignoreMonsterArmor;
/**
* 全部能力值 (%)
*/
allStat;
/**
* 傷害 (%)
*/
damage;
/**
* 裝備等級減少
*/
equipmentLevelDecrease;
/**
* 最大體力 (HP) (%)
*/
maxHpRate;
/**
* 最大 MP (%)
*/
maxMpRate;
constructor(obj) {
super();
const { str, dex, int, luk, max_hp, max_mp, attack_power, magic_power, armor, speed, jump, boss_damage, ignore_monster_armor, all_stat, damage, equipment_level_decrease, max_hp_rate, max_mp_rate, } = obj;
this.str = str;
this.dex = dex;
this.int = int;
this.luk = luk;
this.maxHp = max_hp;
this.maxMp = max_mp;
this.attackPower = attack_power;
this.magicPower = magic_power;
this.armor = armor;
this.speed = speed;
this.jump = jump;
this.bossDamage = boss_damage;
this.ignoreMonsterArmor = ignore_monster_armor;
this.allStat = all_stat;
this.damage = damage;
this.equipmentLevelDecrease = equipment_level_decrease;
this.maxHpRate = max_hp_rate;
this.maxMpRate = max_mp_rate;
}
}
/**
* 龍魔導士的龍道具資訊
*/
class CharacterItemEquipmentDragonInfoDto extends characterItemEquipment.CharacterItemEquipmentDragonInfoDto {
/**
* 道具部位名稱
*/
itemEquipmentPart;
/**
* 道具欄位位置
*/
itemEquipmentSlot;
/**
* 道具名稱
*/
itemName;
/**
* 道具圖示
*/
itemIcon;
/**
* 道具描述
*/
itemDescription;
/**
* 道具外型
*/
itemShapeName;
/**
* 道具外型圖示
*/
itemShapeIcon;
/**
* 性別限定
*/
itemGender;
/**
* 道具最終選項資訊
*/
itemTotalOption;
/**
* 道具基本選項資訊
*/
itemBaseOption;
/**
* 裝備等級增加
*/
equipmentLevelIncrease;
/**
* 道具特殊選項資訊
*/
itemExceptionalOption;
/**
* 附加道具選項
*/
itemAddOption;
/**
* 成長經驗值
*/
growthExp;
/**
* 成長等級
*/
growthLevel;
/**
* 強化次數
*/
scrollUpgrade;
/**
* 可使用剪刀的次數 (不可交易道具、可交易但從未使用剪刀的道具:255)
*/
cuttableCount;
/**
* 黃金鐵鎚精煉 (true:已套用,false:未套用)
*/
goldenHammerFlag;
/**
* 道具可復原次數
*/
scrollResilienceCount;
/**
* 道具可升級次數
*/
scrollUpgradeableCount;
/**
* 靈魂名稱
*/
soulName;
/**
* 靈魂選項
*/
soulOption;
/**
* 道具其他選項資訊
*/
itemEtcOption;
/**
* 強化階級
*/
starforce;
/**
* 驚異道具強化卷軸 (true:已使用,false:未使用)
*/
starforceScrollFlag;
/**
* 道具星星力量資訊
*/
itemStarforceOption;
/**
* 特殊戒指等級
*/
specialRingLevel;
/**
* 道具有效期間 (TST)
*/
dateExpire = null;
/**
* Whether the equipment is expired
*/
isExpired = null;
/**
* 自由造型券 使用狀態(0:未使用,1:已使用)
*/
freestyleFlag;
constructor(obj) {
super();
const { item_equipment_part, item_equipment_slot, item_name, item_icon, item_description, item_shape_name, item_shape_icon, item_gender, item_total_option, item_base_option, equipment_level_increase, item_exceptional_option, item_add_option, growth_exp, growth_level, scroll_upgrade, cuttable_count, golden_hammer_flag, scroll_resilience_count, scroll_upgradeable_count, soul_name, soul_option, item_etc_option, starforce, starforce_scroll_flag, item_starforce_option, special_ring_level, date_expire, freestyle_flag, } = obj;
this.itemEquipmentPart = item_equipment_part;
this.itemEquipmentSlot = item_equipment_slot;
this.itemName = item_name;
this.itemIcon = item_icon;
this.itemDescription = item_description;
this.itemShapeName = item_shape_name;
this.itemShapeIcon = item_shape_icon;
this.itemGender = item_gender;
this.itemTotalOption = new CharacterItemEquipmentTotalOptionDto(item_total_option);
this.itemBaseOption = new CharacterItemEquipmentBaseOptionDto(item_base_option);
this.equipmentLevelIncrease = equipment_level_increase;
this.itemExceptionalOption = new CharacterItemEquipmentExceptionalOptionDto(item_exceptional_option);
this.itemAddOption = new CharacterItemEquipmentAddOptionDto(item_add_option);
this.growthExp = growth_exp;
this.growthLevel = growth_level;
this.scrollUpgrade = scroll_upgrade;
this.cuttableCount = cuttable_count;
this.goldenHammerFlag = golden_hammer_flag;
this.scrollResilienceCount = scroll_resilience_count;
this.scrollUpgradeableCount = scroll_upgradeable_count;
this.soulName = soul_name;
this.soulOption = soul_option;
this.itemEtcOption = new CharacterItemEquipmentEtcOptionDto(item_etc_option);
this.starforce = starforce;
this.starforceScrollFlag = starforce_scroll_flag;
this.itemStarforceOption = new CharacterItemEquipmentStarforceOptionDto(item_starforce_option);
this.specialRingLevel = special_ring_level;
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;
}
}
/**
* 自由造型券 使用狀態
*/
get isFreestyleFlag() {
return this.freestyleFlag === '1';
}
}
/**
* 機甲戰神道具資訊
*/
class CharacterItemEquipmentMechanicInfoDto extends characterItemEquipment.CharacterItemEquipmentMechanicInfoDto {
/**
* 道具部位名稱
*/
itemEquipmentPart;
/**
* 道具欄位位置
*/
itemEquipmentSlot;
/**
* 道具名稱
*/
itemName;
/**
* 道具圖示
*/
itemIcon;
/**
* 道具描述
*/
itemDescription;
/**
* 道具外型
*/
itemShapeName;
/**
* 道具外型圖示
*/
itemShapeIcon;
/**
* 性別限定
*/
itemGender;
/**
* 道具最終選項資訊
*/
itemTotalOption;
/**
* 道具基本選項資訊
*/
itemBaseOption;
/**
* 裝備等級增加
*/
equipmentLevelIncrease;
/**
* 道具特殊選項資訊
*/
itemExceptionalOption;
/**
* 附加道具選項
*/
itemAddOption;
/**
* 成長經驗值
*/
growthExp;
/**
* 成長等級
*/
growthLevel;
/**
* 強化次數
*/
scrollUpgrade;
/**
* 可使用剪刀的次數 (不可交易道具、可交易但從未使用剪刀的道具:255)
*/
cuttableCount;
/**
* 黃金鐵鎚精煉 (true:已套用,false:未套用)
*/
goldenHammerFlag;
/**
* 道具可復原次數
*/
scrollResilienceCount;
/**
* 道具可升級次數
*/
scrollUpgradeableCount;
/**
* 靈魂名稱
*/
soulName;
/**
* 靈魂選項
*/
soulOption;
/**
* 道具其他選項資訊
*/
itemEtcOption;
/**
* 強化階級
*/
starforce;
/**
* 驚異道具強化卷軸 (true:已使用,false:未使用)
*/
starforceScrollFlag;
/**
* 道具星星力量資訊
*/
itemStarforceOption;
/**
* 特殊戒指等級
*/
specialRingLevel;
/**
* 道具有效期間 (TST)
*/
dateExpire = null;
/**
* Whether the equipment is expired
*/
isExpired = null;
/**
* 自由造型券 使用狀態(0:未使用,1:已使用)
*/
freestyleFlag;
constructor(obj) {
super();
const { item_equipment_part, item_equipment_slot, item_name, item_icon, item_description, item_shape_name, item_shape_icon, item_gender, item_total_option, item_base_option, equipment_level_increase, item_exceptional_option, item_add_option, growth_exp, growth_level, scroll_upgrade, cuttable_count, golden_hammer_flag, scroll_resilience_count, scroll_upgradeable_count, soul_name, soul_option, item_etc_option, starforce, starforce_scroll_flag, item_starforce_option, special_ring_level, date_expire, freestyle_flag, } = obj;
this.itemEquipmentPart = item_equipment_part;
this.itemEquipmentSlot = item_equipment_slot;
this.itemName = item_name;
this.itemIcon = item_icon;
this.itemDescription = item_description;
this.itemShapeName = item_shape_name;
this.itemShapeIcon = item_shape_icon;
this.itemGender = item_gender;
this.itemTotalOption = new CharacterItemEquipmentTotalOptionDto(item_total_option);
this.itemBaseOption = new CharacterItemEquipmentBaseOptionDto(item_base_option);
this.equipmentLevelIncrease = equipment_level_increase;
this.itemExceptionalOption = new CharacterItemEquipmentExceptionalOptionDto(item_exceptional_option);
this.itemAddOption = new CharacterItemEquipmentAddOptionDto(item_add_option);
this.growthExp = growth_exp;
this.growthLevel = growth_level;
this.scrollUpgrade = scroll_upgrade;
this.cuttableCount = cuttable_count;
this.goldenHammerFlag = golden_hammer_flag;
this.scrollResilienceCount = scroll_resilience_count;
this.scrollUpgradeableCount = scroll_upgradeable_count;
this.soulName = soul_name;
this.soulOption = soul_option;
this.itemEtcOption = new CharacterItemEquipmentEtcOptionDto(item_etc_option);
this.starforce = starforce;
this.starforceScrollFlag = starforce_scroll_flag;
this.itemStarforceOption = new CharacterItemEquipmentStarforceOptionDto(item_starforce_option);
this.specialRingLevel = special_ring_level;
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;
}
}
/**
* 自由造型券 使用狀態
*/
get isFreestyleFlag() {
return this.freestyleFlag === '1';
}
}
/**
* 道具資訊
*/
class CharacterItemEquipmentInfoDto extends characterItemEquipment.CharacterItemEquipmentInfoDto {
/**
* 道具部位名稱
*/
itemEquipmentPart;
/**
* 道具欄位位置
*/
itemEquipmentSlot;
/**
* 道具名稱
*/
itemName;
/**
* 道具圖示
*/
itemIcon;
/**
* 道具描述
*/
itemDescription;
/**
* 道具外型
*/
itemShapeName;
/**
* 道具外型圖示
*/
itemShapeIcon;
/**
* 性別限定
*/
itemGender;
/**
* 道具最終選項資訊
*/
itemTotalOption;
/**
* 道具基本選項資訊
*/
itemBaseOption;
/**
* 潛在能力封印狀態 (true:已封印,false:未封印)
*/
potentialOptionFlag;
/**
* 附加潛在能力封印狀態 (true:已封印,false:未封印)
*/
additionalPotentialOptionFlag;
/**
* 潛在能力階級
*/
potentialOptionGrade;
/**
* 附加潛在能力階級
*/
additionalPotentialOptionGrade;
/**
* 第一潛在能力選項
*/
potentialOption1;
/**
* 第二潛在能力選項
*/
potentialOption2;
/**
* 第三潛在能力選項
*/
potentialOption3;
/**
* 第一附加潛在能力選項
*/
additionalPotentialOption1;
/**
* 第二附加潛在能力選項
*/
additionalPotentialOption2;
/**
* 第三附加潛在能力選項
*/
additionalPotentialOption3;
/**
* 裝備等級增加
*/
equipmentLevelIncrease;
/**
* 道具特殊選項資訊
*/
itemExceptionalOption;
/**
* 附加道具選項
*/
itemAddOption;
/**
* 成長經驗值
*/
growthExp;
/**
* 成長等級
*/
growthLevel;
/**
* 強化次數
*/
scrollUpgrade;
/**
* 可使用剪刀的次數 (不可交易道具、可交易但從未使用剪刀的道具:255)
*/
cuttableCount;
/**
* 黃金鐵鎚精煉 (true:已套用,false:未套用)
*/
goldenHammerFlag;
/**
* 道具可復原次數
*/
scrollResilienceCount;
/**
* 道具可升級次數
*/
scrollUpgradeableCount;
/**
* 靈魂名稱
*/
soulName;
/**
* 靈魂選項
*/
soulOption;
/**
* 道具其他選項資訊
*/
itemEtcOption;
/**
* 強化階級
*/
starforce;
/**
* 驚奇裝備強化卷軸 (true:已使用,false:未使用)
*/
starforceScrollFlag;
/**
* 道具星星力量資訊
*/
itemStarforceOption;
/**
* 特殊戒指等級
*/
specialRingLevel;
/**
* 道具有效期間 (TST)
*/
dateExpire = null;
/**
* Whether the equipment is expired
*/
isExpired = null;
/**
* 自由造型券 使用狀態(0:未使用,1:已使用)
*/
freestyleFlag;
constructor(obj) {
super();
const { item_equipment_part, item_equipment_slot, item_name, item_icon, item_description, item_shape_name, item_shape_icon, item_gender, item_total_option, item_base_option, potential_option_flag, additional_potential_option_flag, potential_option_grade, additional_potential_option_grade, potential_option_1, potential_option_2, potential_option_3, additional_potential_option_1, additional_potential_option_2, additional_potential_option_3, equipment_level_increase, item_exceptional_option, item_add_option, growth_exp, growth_level, scroll_upgrade, cuttable_count, golden_hammer_flag, scroll_resilience_count, scroll_upgradeable_count, soul_name, soul_option, item_etc_option, starforce, starforce_scroll_flag, item_starforce_option, special_ring_level, date_expire, freestyle_flag, } = obj;
this.itemEquipmentPart = item_equipment_part;
this.itemEquipmentSlot = item_equipment_slot;
this.itemName = item_name;
this.itemIcon = item_icon;
this.itemDescription = item_description;
this.itemShapeName = item_shape_name;
this.itemShapeIcon = item_shape_icon;
this.itemGender = item_gender;
this.itemTotalOption = new CharacterItemEquipmentTotalOptionDto(item_total_option);
this.itemBaseOption = new CharacterItemEquipmentBaseOptionDto(item_base_option);
this.potentialOptionFlag = potential_option_flag;
this.additionalPotentialOptionFlag = additional_potential_option_flag;
this.potentialOptionGrade = potential_option_grade;
this.additionalPotentialOptionGrade = additional_potential_option_grade;
this.potentialOption1 = potential_option_1;
this.potentialOption2 = potential_option_2;
this.potentialOption3 = potential_option_3;
this.additionalPotentialOption1 = additional_potential_option_1;
this.additionalPotentialOption2 = additional_potential_option_2;
this.additionalPotentialOption3 = additional_potential_option_3;
this.equipmentLevelIncrease = equipment_level_increase;
this.itemExceptionalOption = new CharacterItemEquipmentExceptionalOptionDto(item_exceptional_option);
this.itemAddOption = new CharacterItemEquipmentAddOptionDto(item_add_option);
this.growthExp = growth_exp;
this.growthLevel = growth_level;
this.scrollUpgrade = scroll_upgrade;
this.cuttableCount = cuttable_count;
this.goldenHammerFlag = golden_hammer_flag;
this.scrollResilienceCount = scroll_resilience_count;
this.scrollUpgradeableCount = scroll_upgradeable_count;
this.soulName = soul_name;
this.soulOption = soul_option;
this.itemEtcOption = new CharacterItemEquipmentEtcOptionDto(item_etc_option);
this.starforce = starforce;
this.starforceScrollFlag = starforce_scroll_flag;
this.itemStarforceOption = new CharacterItemEquipmentStarforceOptionDto(item_starforce_option);
this.specialRingLevel = special_ring_level;
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;
}
}
/**
* 自由造型券 使用狀態
*/
get isFreestyleFlag() {
return this.freestyleFlag === '1';
}
}
exports.CharacterItemEquipmentAddOptionDto = CharacterItemEquipmentAddOptionDto;
exports.CharacterItemEquipmentBaseOptionDto = CharacterItemEquipmentBaseOptionDto;
exports.CharacterItemEquipmentDragonInfoDto = CharacterItemEquipmentDragonInfoDto;
exports.CharacterItemEquipmentDto = CharacterItemEquipmentDto;
exports.CharacterItemEquipmentEtcOptionDto = CharacterItemEquipmentEtcOptionDto;
exports.CharacterItemEquipmentExceptionalOptionDto = CharacterItemEquipmentExceptionalOptionDto;
exports.CharacterItemEquipmentInfoDto = CharacterItemEquipmentInfoDto;
exports.CharacterItemEquipmentMechanicInfoDto = CharacterItemEquipmentMechanicInfoDto;
exports.CharacterItemEquipmentMedalShapeDto = CharacterItemEquipmentMedalShapeDto;
exports.CharacterItemEquipmentStarforceOptionDto = CharacterItemEquipmentStarforceOptionDto;
exports.CharacterItemEquipmentTitleDto = CharacterItemEquipmentTitleDto;
exports.CharacterItemEquipmentTotalOptionDto = CharacterItemEquipmentTotalOptionDto;