maplestory-openapi
Version:
This JavaScript library enables the use of the MapleStory OpenAPI of Nexon.
1,207 lines (1,202 loc) • 31.2 kB
JavaScript
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
var characterItemEquipment = require('../../../common/dto/character/characterItemEquipment.js');
/**
* 캐릭터 장비 아이템 정보
*/
class CharacterItemEquipmentDto extends characterItemEquipment.CharacterItemEquipmentDto {
/**
* 조회 기준일 (KST, 일 단위 데이터로 시, 분은 일괄 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;
/**
* 칭호 유효 기간
*/
dateExpire = null;
/**
* 칭호 유효 기간 만료 여부
*/
isExpired = null;
/**
* 칭호 옵션 유효 기간
*/
dateOptionExpire = null;
/**
* 칭호 옵션 유효 기간 만료 여부
*/
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 {
/**
* 외형 설정에 등록한 훈장 장비 명
*/
medalShapeName;
/**
* 외형 설정에 등록한 훈장 아이콘
*/
medalShapeIcon;
/**
* 외형 설정에 등록한 훈장 설명
*/
medalShapeDescription;
/**
* 외형 설정에 등록한 훈장의 모루 적용 장비 명
*/
medalShapeChangedName;
/**
* 외형 설정에 등록한 훈장의 모루 적용 아이콘
*/
medalShapeChangedIcon;
/**
* 외형 설정에 등록한 훈장의 모루 적용 훈장 설명
*/
medalShapeChangedDescription;
constructor(obj) {
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;
/**
* 황금 망치 재련 적용 (1:적용, 이외 미 적용)
*/
goldenHammerFlag;
/**
* 복구 가능 횟수
*/
scrollResilienceCount;
/**
* 업그레이드 가능 횟수
*/
scrollUpgradeableCount;
/**
* 소울 명
*/
soulName;
/**
* 소울 옵션
*/
soulOption;
/**
* 장비 기타 옵션
*/
itemEtcOption;
/**
* 강화 단계
*/
starforce;
/**
* 놀라운 장비 강화 주문서 사용 여부 (0:미사용, 1:사용)
*/
starforceScrollFlag;
/**
* 장비 스타포스 옵션
*/
itemStarforceOption;
/**
* 특수 반지 레벨
*/
specialRingLevel;
/**
* 장비 유효 기간
*/
dateExpire = null;
/**
* 장비 유효 기간 만료 여부
*/
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;
/**
* 황금 망치 재련 적용 (1:적용, 이외 미 적용)
*/
goldenHammerFlag;
/**
* 복구 가능 횟수
*/
scrollResilienceCount;
/**
* 업그레이드 가능 횟수
*/
scrollUpgradeableCount;
/**
* 소울 명
*/
soulName;
/**
* 소울 옵션
*/
soulOption;
/**
* 장비 기타 옵션
*/
itemEtcOption;
/**
* 강화 단계
*/
starforce;
/**
* 놀라운 장비 강화 주문서 사용 여부 (0:미사용, 1:사용)
*/
starforceScrollFlag;
/**
* 장비 스타포스 옵션
*/
itemStarforceOption;
/**
* 특수 반지 레벨
*/
specialRingLevel;
/**
* 장비 유효 기간
*/
dateExpire = null;
/**
* 장비 유효 기간 만료 여부
*/
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;
/**
* 잠재능력 등급
*/
potentialOptionGrade;
/**
* 에디셔널 잠재능력 등급
*/
additionalPotentialOptionGrade;
/**
* 잠재능력 첫 번째 옵션
*/
potentialOption1;
/**
* 잠재능력 두 번째 옵션
*/
potentialOption2;
/**
* 잠재능력 세 번째 옵션
*/
potentialOption3;
/**
* 에디셔널 잠재능력 첫 번째 옵션
*/
additionalPotentialOption1;
/**
* 에디셔널 잠재능력 두 번째 옵션
*/
additionalPotentialOption2;
/**
* 에디셔널 잠재능력 세 번째 옵션
*/
additionalPotentialOption3;
/**
* 착용 레벨 증가
*/
equipmentLevelIncrease;
/**
* 장비 특별 옵션
*/
itemExceptionalOption;
/**
* 장비 추가 옵션
*/
itemAddOption;
/**
* 성장 경험치
*/
growthExp;
/**
* 성장 레벨
*/
growthLevel;
/**
* 업그레이드 횟수
*/
scrollUpgrade;
/**
* 가위 사용 가능 횟수 (교환 불가 장비, 가위 횟수가 없는 교환 가능 장비는 255)
*/
cuttableCount;
/**
* 황금 망치 재련 적용 (1:적용, 이외 미 적용)
*/
goldenHammerFlag;
/**
* 복구 가능 횟수
*/
scrollResilienceCount;
/**
* 업그레이드 가능 횟수
*/
scrollUpgradeableCount;
/**
* 소울 명
*/
soulName;
/**
* 소울 옵션
*/
soulOption;
/**
* 장비 기타 옵션
*/
itemEtcOption;
/**
* 강화 단계
*/
starforce;
/**
* 놀라운 장비 강화 주문서 사용 여부 (0:미사용, 1:사용)
*/
starforceScrollFlag;
/**
* 장비 스타포스 옵션
*/
itemStarforceOption;
/**
* 특수 반지 레벨
*/
specialRingLevel;
/**
* 장비 유효 기간
*/
dateExpire = null;
/**
* 장비 유효 기간 만료 여부
*/
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_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.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;