maplestory-openapi
Version:
This JavaScript library enables the use of the MapleStory OpenAPI of Nexon.
109 lines (104 loc) • 2.95 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var characterAbility = require('../../../common/dto/character/characterAbility.js');
/**
* Character ability information
*/
class CharacterAbilityDto extends characterAbility.CharacterAbilityDto {
/**
* Reference date for query (SGT, daily data with hours and minutes set to 0)
*/
date;
/**
* Ability grade
*/
abilityGrade;
/**
* Ability information
*/
abilityInfo;
/**
* Owned Honor EXP
*/
remainFame;
/**
* Active ability preset number
*/
presetNo;
/**
* Complete information for Ability Preset 1
*/
abilityPreset1;
/**
* Complete information for Ability Preset 2
*/
abilityPreset2;
/**
* Complete information for Ability Preset 3
*/
abilityPreset3;
constructor(obj) {
super();
const { date, ability_grade, ability_info, remain_fame, preset_no, ability_preset_1, ability_preset_2, ability_preset_3, } = obj;
this.date = date ? new Date(date) : null;
this.abilityGrade = ability_grade;
this.abilityInfo = ability_info.map((info) => new CharacterAbilityInfoDto(info));
this.remainFame = remain_fame;
this.presetNo = preset_no;
this.abilityPreset1 = ability_preset_1
? new CharacterAbilityPresetDto(ability_preset_1)
: null;
this.abilityPreset2 = ability_preset_2
? new CharacterAbilityPresetDto(ability_preset_2)
: null;
this.abilityPreset3 = ability_preset_3
? new CharacterAbilityPresetDto(ability_preset_3)
: null;
}
}
/**
* Information for Ability Preset
*/
class CharacterAbilityInfoDto extends characterAbility.CharacterAbilityInfoDto {
/**
* Ability number
*/
abilityNo;
/**
* Ability grade
*/
abilityGrade;
/**
* Ability option and value
*/
abilityValue;
constructor(obj) {
super();
const { ability_no, ability_grade, ability_value } = obj;
this.abilityNo = ability_no;
this.abilityGrade = ability_grade;
this.abilityValue = ability_value;
}
}
/**
* Character ability preset information
*/
class CharacterAbilityPresetDto extends characterAbility.CharacterAbilityPresetDto {
/**
* Ability grade for Preset
*/
abilityPresetGrade;
/**
* Information for Ability Preset
*/
abilityInfo;
constructor(obj) {
super();
const { ability_preset_grade, ability_info } = obj;
this.abilityPresetGrade = ability_preset_grade;
this.abilityInfo = ability_info.map((info) => new CharacterAbilityInfoDto(info));
}
}
exports.CharacterAbilityDto = CharacterAbilityDto;
exports.CharacterAbilityInfoDto = CharacterAbilityInfoDto;
exports.CharacterAbilityPresetDto = CharacterAbilityPresetDto;