maplestory-openapi 3.8.1 → 3.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/dist/cjs/maplestory/api/kms/dto/battlePractice/battlePracticeCharacterInfo.js +2370 -0
- package/dist/cjs/maplestory/api/kms/dto/battlePractice/battlePracticeReplayId.js +41 -0
- package/dist/cjs/maplestory/api/kms/dto/battlePractice/battlePracticeResult.js +101 -0
- package/dist/cjs/maplestory/api/kms/dto/battlePractice/battlePracticeSkillTimeline.js +61 -0
- package/dist/cjs/maplestory/api/kms/dto/character/characterPetEquipment.js +6 -1
- package/dist/cjs/maplestory/api/kms/dto/character/characterRingReserveSkillEquipment.js +44 -0
- package/dist/cjs/maplestory/api/kms/kms.js +70 -0
- package/dist/cjs/maplestory/api/kms/mapleStoryApi.js +115 -1
- package/dist/esm/maplestory/api/kms/dto/battlePractice/battlePracticeCharacterInfo.js +2311 -0
- package/dist/esm/maplestory/api/kms/dto/battlePractice/battlePracticeReplayId.js +36 -0
- package/dist/esm/maplestory/api/kms/dto/battlePractice/battlePracticeResult.js +96 -0
- package/dist/esm/maplestory/api/kms/dto/battlePractice/battlePracticeSkillTimeline.js +56 -0
- package/dist/esm/maplestory/api/kms/dto/character/characterPetEquipment.js +6 -1
- package/dist/esm/maplestory/api/kms/dto/character/characterRingReserveSkillEquipment.js +40 -0
- package/dist/esm/maplestory/api/kms/kms.js +6 -0
- package/dist/esm/maplestory/api/kms/mapleStoryApi.js +115 -1
- package/package.json +4 -3
- package/types/maplestory/api/kms/dto/battlePractice/battlePracticeCharacterInfo.d.ts +1817 -0
- package/types/maplestory/api/kms/dto/battlePractice/battlePracticeReplayId.d.ts +29 -0
- package/types/maplestory/api/kms/dto/battlePractice/battlePracticeResult.d.ts +77 -0
- package/types/maplestory/api/kms/dto/battlePractice/battlePracticeSkillTimeline.d.ts +45 -0
- package/types/maplestory/api/kms/dto/character/characterPetEquipment.d.ts +4 -0
- package/types/maplestory/api/kms/dto/character/characterRingReserveSkillEquipment.d.ts +31 -0
- package/types/maplestory/api/kms/dto/history/starforceHistory.d.ts +1 -1
- package/types/maplestory/api/kms/index.d.ts +6 -0
- package/types/maplestory/api/kms/mapleStoryApi.d.ts +56 -1
- package/types/maplestory/api/kms/response/battlePractice/battlePracticeCharacterInfoBody.d.ts +482 -0
- package/types/maplestory/api/kms/response/battlePractice/battlePracticeReplayIdBody.d.ts +8 -0
- package/types/maplestory/api/kms/response/battlePractice/battlePracticeResultBody.d.ts +20 -0
- package/types/maplestory/api/kms/response/battlePractice/battlePracticeSkillTimelineBody.d.ts +12 -0
- package/types/maplestory/api/kms/response/character/characterPetEquipmentBody.d.ts +1 -0
- package/types/maplestory/api/kms/response/character/characterRingReserveSkillEquipmentBody.d.ts +8 -0
- package/types/maplestory/api/kms/response/history/starforceHistoryBody.d.ts +1 -1
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 연무장 리플레이 식별자 목록
|
|
3
|
+
*/
|
|
4
|
+
class BattlePracticeReplayIdDto {
|
|
5
|
+
/**
|
|
6
|
+
* 리플레이 목록
|
|
7
|
+
*/
|
|
8
|
+
replayList;
|
|
9
|
+
constructor(obj) {
|
|
10
|
+
this.replayList = obj.replay_list.map((r) => new BattlePracticeReplayIdInfoDto(r));
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* 연무장 리플레이 식별자 상세 정보
|
|
15
|
+
*/
|
|
16
|
+
class BattlePracticeReplayIdInfoDto {
|
|
17
|
+
/**
|
|
18
|
+
* 기간 번호 (연무장 초기화 시마다 1씩 증가됩니다.)
|
|
19
|
+
*/
|
|
20
|
+
periodNo;
|
|
21
|
+
/**
|
|
22
|
+
* 리플레이 등록 일시 (KST)
|
|
23
|
+
*/
|
|
24
|
+
registerDate;
|
|
25
|
+
/**
|
|
26
|
+
* 연무장 리플레이 고유 식별자
|
|
27
|
+
*/
|
|
28
|
+
replayId;
|
|
29
|
+
constructor(obj) {
|
|
30
|
+
this.periodNo = obj.period_no;
|
|
31
|
+
this.registerDate = new Date(obj.register_date);
|
|
32
|
+
this.replayId = obj.replay_id;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export { BattlePracticeReplayIdDto, BattlePracticeReplayIdInfoDto };
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 연무장 측정 결과 정보
|
|
3
|
+
*/
|
|
4
|
+
class BattlePracticeResultDto {
|
|
5
|
+
/**
|
|
6
|
+
* 리플레이 등록 일시 (KST)
|
|
7
|
+
*/
|
|
8
|
+
registerDate;
|
|
9
|
+
/**
|
|
10
|
+
* 총 연무 시간 (ms)
|
|
11
|
+
*/
|
|
12
|
+
totalPlayTime;
|
|
13
|
+
/**
|
|
14
|
+
* 총합 데미지
|
|
15
|
+
*/
|
|
16
|
+
totalDamage;
|
|
17
|
+
/**
|
|
18
|
+
* 초당 평균 데미지
|
|
19
|
+
*/
|
|
20
|
+
totalDps;
|
|
21
|
+
/**
|
|
22
|
+
* 종료 타입 (1:자동 종료, 2:수동 종료, 3:시간 초과, 9:기타 종료)
|
|
23
|
+
*/
|
|
24
|
+
endType;
|
|
25
|
+
/**
|
|
26
|
+
* 리플레이 추천 수
|
|
27
|
+
*/
|
|
28
|
+
likeCount;
|
|
29
|
+
/**
|
|
30
|
+
* 스킬 단위 전투 분석 정보
|
|
31
|
+
*/
|
|
32
|
+
skillStatistic;
|
|
33
|
+
constructor(obj) {
|
|
34
|
+
this.registerDate = new Date(obj.register_date);
|
|
35
|
+
this.totalPlayTime = obj.total_play_time;
|
|
36
|
+
this.totalDamage = obj.total_damage;
|
|
37
|
+
this.totalDps = obj.total_dps;
|
|
38
|
+
this.endType = obj.end_type;
|
|
39
|
+
this.likeCount = obj.like_count;
|
|
40
|
+
this.skillStatistic = obj.skill_statistic.map((s) => new BattlePracticeSkillStatisticDto(s));
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* 연무장 스킬 단위 전투 분석 정보
|
|
45
|
+
*/
|
|
46
|
+
class BattlePracticeSkillStatisticDto {
|
|
47
|
+
/**
|
|
48
|
+
* 스킬 명
|
|
49
|
+
*/
|
|
50
|
+
skillName;
|
|
51
|
+
/**
|
|
52
|
+
* 누적 데미지
|
|
53
|
+
*/
|
|
54
|
+
damage;
|
|
55
|
+
/**
|
|
56
|
+
* 데미지 점유율
|
|
57
|
+
*/
|
|
58
|
+
damagePercent;
|
|
59
|
+
/**
|
|
60
|
+
* 초당 평균 데미지
|
|
61
|
+
*/
|
|
62
|
+
dps;
|
|
63
|
+
/**
|
|
64
|
+
* 사용 횟수
|
|
65
|
+
*/
|
|
66
|
+
useCount;
|
|
67
|
+
/**
|
|
68
|
+
* 1회당 평균 데미지
|
|
69
|
+
*/
|
|
70
|
+
damagePerUse;
|
|
71
|
+
/**
|
|
72
|
+
* 공격 횟수
|
|
73
|
+
*/
|
|
74
|
+
attackCount;
|
|
75
|
+
/**
|
|
76
|
+
* 최대 데미지 (1타)
|
|
77
|
+
*/
|
|
78
|
+
maxDamage;
|
|
79
|
+
/**
|
|
80
|
+
* 최소 데미지 (1타)
|
|
81
|
+
*/
|
|
82
|
+
minDamage;
|
|
83
|
+
constructor(obj) {
|
|
84
|
+
this.skillName = obj.skill_name;
|
|
85
|
+
this.damage = obj.damage;
|
|
86
|
+
this.damagePercent = obj.damage_percent;
|
|
87
|
+
this.dps = obj.dps;
|
|
88
|
+
this.useCount = obj.use_count;
|
|
89
|
+
this.damagePerUse = obj.damage_per_use;
|
|
90
|
+
this.attackCount = obj.attack_count;
|
|
91
|
+
this.maxDamage = obj.max_damage;
|
|
92
|
+
this.minDamage = obj.min_damage;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
export { BattlePracticeResultDto, BattlePracticeSkillStatisticDto };
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 연무장 스킬 사용 내역
|
|
3
|
+
*/
|
|
4
|
+
class BattlePracticeSkillTimelineDto {
|
|
5
|
+
/**
|
|
6
|
+
* 조회된 페이지 번호
|
|
7
|
+
*/
|
|
8
|
+
pageNo;
|
|
9
|
+
/**
|
|
10
|
+
* 전체 페이지 번호
|
|
11
|
+
*/
|
|
12
|
+
totalPageNo;
|
|
13
|
+
/**
|
|
14
|
+
* 스킬 타임라인 정보
|
|
15
|
+
*/
|
|
16
|
+
skillTimeline;
|
|
17
|
+
constructor(obj) {
|
|
18
|
+
this.pageNo = obj.page_no;
|
|
19
|
+
this.totalPageNo = obj.total_page_no;
|
|
20
|
+
this.skillTimeline = obj.skill_timeline.map((event) => new BattlePracticeSkillTimelineEventDto(event));
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* 연무장 스킬 타임라인
|
|
25
|
+
*/
|
|
26
|
+
class BattlePracticeSkillTimelineEventDto {
|
|
27
|
+
/**
|
|
28
|
+
* 연무 시작 후 경과 시간 (ms)
|
|
29
|
+
*/
|
|
30
|
+
elapseTime;
|
|
31
|
+
/**
|
|
32
|
+
* 사용한 스킬 명
|
|
33
|
+
*/
|
|
34
|
+
skillName;
|
|
35
|
+
/**
|
|
36
|
+
* 헥사 스킬 특성 여부 (0:그 외 스킬, 1:오리진 스킬, 2:어센트 스킬)
|
|
37
|
+
*/
|
|
38
|
+
hexaSkillSpecificityFlag;
|
|
39
|
+
/**
|
|
40
|
+
* 시퀀스 명
|
|
41
|
+
*/
|
|
42
|
+
sequenceName;
|
|
43
|
+
/**
|
|
44
|
+
* 시퀀스 키
|
|
45
|
+
*/
|
|
46
|
+
sequenceKey;
|
|
47
|
+
constructor(obj) {
|
|
48
|
+
this.elapseTime = obj.elapse_time;
|
|
49
|
+
this.skillName = obj.skill_name;
|
|
50
|
+
this.hexaSkillSpecificityFlag = obj.hexa_skill_specificity_flag;
|
|
51
|
+
this.sequenceName = obj.sequence_name;
|
|
52
|
+
this.sequenceKey = obj.sequence_key;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export { BattlePracticeSkillTimelineDto, BattlePracticeSkillTimelineEventDto };
|
|
@@ -308,9 +308,13 @@ class CharacterPetEquipmentItemDto extends CharacterPetEquipmentItemDto$1 {
|
|
|
308
308
|
* 아이템 외형 아이콘
|
|
309
309
|
*/
|
|
310
310
|
itemShapeIcon;
|
|
311
|
+
/**
|
|
312
|
+
* 아이템 만료시간 (KST, 분 단위는 일괄 0으로 표기, null:무제한, -1:미착용)
|
|
313
|
+
*/
|
|
314
|
+
itemDateExpire;
|
|
311
315
|
constructor(obj) {
|
|
312
316
|
super();
|
|
313
|
-
const { item_name, item_icon, item_description, item_option, scroll_upgrade, scroll_upgradable, item_shape, item_shape_icon, } = obj;
|
|
317
|
+
const { item_name, item_icon, item_description, item_option, scroll_upgrade, scroll_upgradable, item_shape, item_shape_icon, item_date_expire, } = obj;
|
|
314
318
|
this.itemName = item_name;
|
|
315
319
|
this.itemIcon = item_icon;
|
|
316
320
|
this.itemDescription = item_description;
|
|
@@ -319,6 +323,7 @@ class CharacterPetEquipmentItemDto extends CharacterPetEquipmentItemDto$1 {
|
|
|
319
323
|
this.scrollUpgradable = scroll_upgradable;
|
|
320
324
|
this.itemShape = item_shape;
|
|
321
325
|
this.itemShapeIcon = item_shape_icon;
|
|
326
|
+
this.itemDateExpire = item_date_expire ? new Date(item_date_expire) : null;
|
|
322
327
|
}
|
|
323
328
|
}
|
|
324
329
|
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 캐릭터 예비 특수 반지 장착 정보
|
|
3
|
+
*/
|
|
4
|
+
class CharacterRingReserveSkillEquipmentDto {
|
|
5
|
+
/**
|
|
6
|
+
* 조회 기준일 (KST, 일 단위 데이터로 시, 분은 일괄 0으로 표기)
|
|
7
|
+
*/
|
|
8
|
+
date;
|
|
9
|
+
/**
|
|
10
|
+
* 캐릭터 직업
|
|
11
|
+
*/
|
|
12
|
+
characterClass;
|
|
13
|
+
/**
|
|
14
|
+
* 예비 특수 반지 슬롯에 장착한 특수 반지
|
|
15
|
+
*/
|
|
16
|
+
specialRingReserveName;
|
|
17
|
+
/**
|
|
18
|
+
* 예비 특수 반지 슬롯에 장착한 특수 반지 레벨
|
|
19
|
+
*/
|
|
20
|
+
specialRingReserveLevel;
|
|
21
|
+
/**
|
|
22
|
+
* 예비 특수 반지 슬롯에 장착한 특수 반지 아이콘
|
|
23
|
+
*/
|
|
24
|
+
specialRingReserveIcon;
|
|
25
|
+
/**
|
|
26
|
+
* 예비 특수 반지 슬롯에 장착한 특수 반지 설명
|
|
27
|
+
*/
|
|
28
|
+
specialRingReserveDescription;
|
|
29
|
+
constructor(obj) {
|
|
30
|
+
const { date, character_class, special_ring_reserve_name, special_ring_reserve_level, special_ring_reserve_icon, special_ring_reserve_description, } = obj;
|
|
31
|
+
this.date = date ? new Date(date) : null;
|
|
32
|
+
this.characterClass = character_class;
|
|
33
|
+
this.specialRingReserveName = special_ring_reserve_name;
|
|
34
|
+
this.specialRingReserveLevel = special_ring_reserve_level;
|
|
35
|
+
this.specialRingReserveIcon = special_ring_reserve_icon;
|
|
36
|
+
this.specialRingReserveDescription = special_ring_reserve_description;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export { CharacterRingReserveSkillEquipmentDto };
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
export { MapleStoryApi } from './mapleStoryApi.js';
|
|
2
2
|
export { MapleStoryFriendsApi } from './mapleStoryFriendsApi.js';
|
|
3
|
+
export { BattlePracticeCharacterAbilityInfoDto, BattlePracticeCharacterAbilityObjectDto, BattlePracticeCharacterBasicDto, BattlePracticeCharacterBasicStatDto, BattlePracticeCharacterCashItemEquipmentDto, BattlePracticeCharacterCashItemObjectDto, BattlePracticeCharacterCashItemOptionDto, BattlePracticeCharacterFinalStatDto, BattlePracticeCharacterHexaCoreEquipmentDto, BattlePracticeCharacterHexaCoreObjectDto, BattlePracticeCharacterHexaLinkedSkillDto, BattlePracticeCharacterHexaMatrixObjectDto, BattlePracticeCharacterHexaMatrixStatObjectDto, BattlePracticeCharacterHexaStatCoreDto, BattlePracticeCharacterHyperStatDto, BattlePracticeCharacterHyperStatObjectDto, BattlePracticeCharacterInfoDto, BattlePracticeCharacterItemAddOptionDto, BattlePracticeCharacterItemBaseOptionDto, BattlePracticeCharacterItemDragonEquipmentDto, BattlePracticeCharacterItemEquipmentDto, BattlePracticeCharacterItemEquipmentObjectDto, BattlePracticeCharacterItemEtcOptionDto, BattlePracticeCharacterItemExceptionalOptionDto, BattlePracticeCharacterItemMechanicEquipmentDto, BattlePracticeCharacterItemObjectDto, BattlePracticeCharacterItemStarforceOptionDto, BattlePracticeCharacterItemTitleDto, BattlePracticeCharacterItemTotalOptionDto, BattlePracticeCharacterLinkSkillObjectDto, BattlePracticeCharacterOtherStatDetailDto, BattlePracticeCharacterOtherStatDto, BattlePracticeCharacterOtherStatInfoDto, BattlePracticeCharacterPetAutoSkillDto, BattlePracticeCharacterPetEquipmentDto, BattlePracticeCharacterPetEquipmentItemOptionDto, BattlePracticeCharacterPetObjectDto, BattlePracticeCharacterPropensityDto, BattlePracticeCharacterRingReserveSkillObjectDto, BattlePracticeCharacterSetEffectDto, BattlePracticeCharacterSetEffectInfoDto, BattlePracticeCharacterSetEffectObjectDto, BattlePracticeCharacterSkillInfoDto, BattlePracticeCharacterSkillObjectDto, BattlePracticeCharacterStatDto, BattlePracticeCharacterSymbolDto, BattlePracticeCharacterSymbolStatDto, BattlePracticeCharacterVCoreDto, BattlePracticeCharacterVMatrixObjectDto, BattlePracticeGuildObjectDto, BattlePracticeGuildSkillDto, BattlePracticeUnionArtifactEffectDto, BattlePracticeUnionArtifactObjectDto, BattlePracticeUnionChampionBadgeDto, BattlePracticeUnionChampionObjectDto, BattlePracticeUnionRaiderObjectDto } from './dto/battlePractice/battlePracticeCharacterInfo.js';
|
|
4
|
+
export { BattlePracticeReplayIdDto, BattlePracticeReplayIdInfoDto } from './dto/battlePractice/battlePracticeReplayId.js';
|
|
5
|
+
export { BattlePracticeResultDto, BattlePracticeSkillStatisticDto } from './dto/battlePractice/battlePracticeResult.js';
|
|
6
|
+
export { BattlePracticeSkillTimelineDto, BattlePracticeSkillTimelineEventDto } from './dto/battlePractice/battlePracticeSkillTimeline.js';
|
|
3
7
|
export { CharacterDto } from './dto/character/character.js';
|
|
4
8
|
export { CharacterAbilityDto, CharacterAbilityInfoDto, CharacterAbilityPresetDto } from './dto/character/characterAbility.js';
|
|
5
9
|
export { CharacterAndroidCashItemEquipmentColoringPrismDto, CharacterAndroidCashItemEquipmentDto, CharacterAndroidCashItemEquipmentOptionDto, CharacterAndroidEquipmentDto, CharacterAndroidEquipmentFaceDto, CharacterAndroidEquipmentHairDto, CharacterAndroidEquipmentPresetDto, CharacterAndroidEquipmentSkinDto } from './dto/character/characterAndroidEquipment.js';
|
|
@@ -21,6 +25,8 @@ export { CharacterSetEffectDto, CharacterSetEffectInfoDto, CharacterSetEffectOpt
|
|
|
21
25
|
export { CharacterSkillDto, CharacterSkillInfoDto } from './dto/character/characterSkill.js';
|
|
22
26
|
export { CharacterFinalStatDto, CharacterStatDto } from './dto/character/characterStat.js';
|
|
23
27
|
export { CharacterSymbolEquipmentDto, CharacterSymbolEquipmentInfoDto } from './dto/character/characterSymbolEquipment.js';
|
|
28
|
+
export { CharacterRingExchangeSkillEquipmentDto } from './dto/character/characterRingExchangeSkillEquipment.js';
|
|
29
|
+
export { CharacterRingReserveSkillEquipmentDto } from './dto/character/characterRingReserveSkillEquipment.js';
|
|
24
30
|
export { CharacterVMatrixCodeEquipmentDto, CharacterVMatrixDto } from './dto/character/characterVMatrix.js';
|
|
25
31
|
export { GuildDto } from './dto/guild/guild.js';
|
|
26
32
|
export { GuildBasicDto, GuildSkillDto } from './dto/guild/guildBasic.js';
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import axios from 'axios';
|
|
2
2
|
import '../../../node_modules/buffer/index.js';
|
|
3
3
|
import xml2js from 'xml2js';
|
|
4
|
+
import { BattlePracticeCharacterInfoDto } from './dto/battlePractice/battlePracticeCharacterInfo.js';
|
|
5
|
+
import { BattlePracticeReplayIdDto } from './dto/battlePractice/battlePracticeReplayId.js';
|
|
6
|
+
import { BattlePracticeResultDto } from './dto/battlePractice/battlePracticeResult.js';
|
|
7
|
+
import { BattlePracticeSkillTimelineDto } from './dto/battlePractice/battlePracticeSkillTimeline.js';
|
|
4
8
|
import { CharacterDto } from './dto/character/character.js';
|
|
5
9
|
import { CharacterAbilityDto } from './dto/character/characterAbility.js';
|
|
6
10
|
import { CharacterAndroidEquipmentDto } from './dto/character/characterAndroidEquipment.js';
|
|
@@ -19,6 +23,7 @@ import { CharacterPetEquipmentDto } from './dto/character/characterPetEquipment.
|
|
|
19
23
|
import { CharacterPopularityDto } from './dto/character/characterPopularity.js';
|
|
20
24
|
import { CharacterPropensityDto } from './dto/character/characterPropensity.js';
|
|
21
25
|
import { CharacterRingExchangeSkillEquipmentDto } from './dto/character/characterRingExchangeSkillEquipment.js';
|
|
26
|
+
import { CharacterRingReserveSkillEquipmentDto } from './dto/character/characterRingReserveSkillEquipment.js';
|
|
22
27
|
import { CharacterSetEffectDto } from './dto/character/characterSetEffect.js';
|
|
23
28
|
import { CharacterSkillDto } from './dto/character/characterSkill.js';
|
|
24
29
|
import { CharacterStatDto } from './dto/character/characterStat.js';
|
|
@@ -818,7 +823,8 @@ class MapleStoryApi extends MapleStoryApi$1 {
|
|
|
818
823
|
/**
|
|
819
824
|
* 링 익스체인지 스킬 등록 장비를 조회합니다.
|
|
820
825
|
* - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
|
|
821
|
-
* - 2025년
|
|
826
|
+
* - 2025년 08월 21일부터 2026년 3월 18일까지의 데이터를 조회할 수 있습니다.
|
|
827
|
+
* - 2026년 3월 19일부터는 예비 특수 반지 장착 정보 조회를 사용해주세요.
|
|
822
828
|
* - 과거 데이터는 원하는 일자를 입력해 조회할 수 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 수 있습니다. (8월 22일 데이터 조회 시, 22일 00시부터 23일 00시 사이 데이터가 조회 됩니다.)
|
|
823
829
|
* - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
|
|
824
830
|
* - 해당 API는 메이플스토리 한국의 데이터가 제공됩니다.
|
|
@@ -847,6 +853,38 @@ class MapleStoryApi extends MapleStoryApi$1 {
|
|
|
847
853
|
}
|
|
848
854
|
return new CharacterRingExchangeSkillEquipmentDto(data);
|
|
849
855
|
}
|
|
856
|
+
/**
|
|
857
|
+
* 예비 특수 반지 장착 정보를 조회합니다.
|
|
858
|
+
* - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
|
|
859
|
+
* - 2026년 3월 19일 데이터부터 조회할 수 있습니다.
|
|
860
|
+
* - 과거 데이터는 원하는 일자를 입력해 조회할 수 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 수 있습니다. (3월 20일 데이터 조회 시, 20일 00시부터 21일 00시 사이 데이터가 조회 됩니다.)
|
|
861
|
+
* - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
|
|
862
|
+
* - 해당 API는 메이플스토리 한국의 데이터가 제공됩니다.
|
|
863
|
+
*
|
|
864
|
+
* @param ocid 캐릭터 식별자
|
|
865
|
+
* @param dateOptions 조회 기준일 (KST)
|
|
866
|
+
*/
|
|
867
|
+
async getCharacterRingReserveSkillEquipment(ocid, dateOptions) {
|
|
868
|
+
const path = `${this.subUrl}/v1/character/ring-reserve-skill-equipment`;
|
|
869
|
+
const date = dateOptions
|
|
870
|
+
? this.toDateString(dateOptions, {
|
|
871
|
+
year: 2026,
|
|
872
|
+
month: 3,
|
|
873
|
+
day: 19,
|
|
874
|
+
})
|
|
875
|
+
: undefined;
|
|
876
|
+
const query = {
|
|
877
|
+
ocid: ocid,
|
|
878
|
+
date: date,
|
|
879
|
+
};
|
|
880
|
+
const { data } = await this.client.get(path, {
|
|
881
|
+
params: query,
|
|
882
|
+
});
|
|
883
|
+
if (this.isEmptyResponse(data)) {
|
|
884
|
+
return null;
|
|
885
|
+
}
|
|
886
|
+
return new CharacterRingReserveSkillEquipmentDto(data);
|
|
887
|
+
}
|
|
850
888
|
//#endregion
|
|
851
889
|
//#region 유니온 정보 조회
|
|
852
890
|
/**
|
|
@@ -1036,6 +1074,82 @@ class MapleStoryApi extends MapleStoryApi$1 {
|
|
|
1036
1074
|
}
|
|
1037
1075
|
return new GuildBasicDto(data);
|
|
1038
1076
|
}
|
|
1077
|
+
//#endregion
|
|
1078
|
+
//#region 연무장 정보 조회
|
|
1079
|
+
/**
|
|
1080
|
+
* 캐릭터의 연무장 리플레이 식별자를 조회합니다. 리플레이를 등록한 캐릭터에 대해서만 조회가 가능합니다.
|
|
1081
|
+
* - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
|
|
1082
|
+
* - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
|
|
1083
|
+
* - 해당 API는 메이플스토리 한국의 데이터가 제공됩니다.
|
|
1084
|
+
*
|
|
1085
|
+
* @param ocid 캐릭터 식별자
|
|
1086
|
+
*/
|
|
1087
|
+
async getBattlePracticeReplayId(ocid) {
|
|
1088
|
+
const path = `${this.subUrl}/v1/battle-practice/replay-id`;
|
|
1089
|
+
const query = {
|
|
1090
|
+
ocid: ocid,
|
|
1091
|
+
};
|
|
1092
|
+
const { data } = await this.client.get(path, {
|
|
1093
|
+
params: query,
|
|
1094
|
+
});
|
|
1095
|
+
return new BattlePracticeReplayIdDto(data);
|
|
1096
|
+
}
|
|
1097
|
+
/**
|
|
1098
|
+
* 연무장 측정 결과 정보를 조회합니다.
|
|
1099
|
+
* - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
|
|
1100
|
+
* - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
|
|
1101
|
+
* - 해당 API는 메이플스토리 한국의 데이터가 제공됩니다.
|
|
1102
|
+
*
|
|
1103
|
+
* @param replayId 연무장 리플레이 고유 식별자
|
|
1104
|
+
*/
|
|
1105
|
+
async getBattlePracticeResult(replayId) {
|
|
1106
|
+
const path = `${this.subUrl}/v1/battle-practice/result`;
|
|
1107
|
+
const query = {
|
|
1108
|
+
replay_id: replayId,
|
|
1109
|
+
};
|
|
1110
|
+
const { data } = await this.client.get(path, {
|
|
1111
|
+
params: query,
|
|
1112
|
+
});
|
|
1113
|
+
return new BattlePracticeResultDto(data);
|
|
1114
|
+
}
|
|
1115
|
+
/**
|
|
1116
|
+
* 연무장 진행 간 스킬 사용 내역을 조회합니다.
|
|
1117
|
+
* - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
|
|
1118
|
+
* - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
|
|
1119
|
+
* - 해당 API는 메이플스토리 한국의 데이터가 제공됩니다.
|
|
1120
|
+
*
|
|
1121
|
+
* @param replayId 연무장 리플레이 고유 식별자
|
|
1122
|
+
* @param pageNo 페이지 번호 (미입력 시 1페이지 조회)
|
|
1123
|
+
*/
|
|
1124
|
+
async getBattlePracticeSkillTimeline(replayId, pageNo) {
|
|
1125
|
+
const path = `${this.subUrl}/v1/battle-practice/skill-timeline`;
|
|
1126
|
+
const query = {
|
|
1127
|
+
replay_id: replayId,
|
|
1128
|
+
page_no: pageNo,
|
|
1129
|
+
};
|
|
1130
|
+
const { data } = await this.client.get(path, {
|
|
1131
|
+
params: query,
|
|
1132
|
+
});
|
|
1133
|
+
return new BattlePracticeSkillTimelineDto(data);
|
|
1134
|
+
}
|
|
1135
|
+
/**
|
|
1136
|
+
* 연무장 입장 시의 캐릭터 능력치 관련 정보를 조회합니다.
|
|
1137
|
+
* - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
|
|
1138
|
+
* - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
|
|
1139
|
+
* - 해당 API는 메이플스토리 한국의 데이터가 제공됩니다.
|
|
1140
|
+
*
|
|
1141
|
+
* @param replayId 연무장 리플레이 고유 식별자
|
|
1142
|
+
*/
|
|
1143
|
+
async getBattlePracticeCharacterInfo(replayId) {
|
|
1144
|
+
const path = `${this.subUrl}/v1/battle-practice/character-info`;
|
|
1145
|
+
const query = {
|
|
1146
|
+
replay_id: replayId,
|
|
1147
|
+
};
|
|
1148
|
+
const { data } = await this.client.get(path, {
|
|
1149
|
+
params: query,
|
|
1150
|
+
});
|
|
1151
|
+
return new BattlePracticeCharacterInfoDto(data);
|
|
1152
|
+
}
|
|
1039
1153
|
async getStarforceHistory(count, parameter) {
|
|
1040
1154
|
const path = `${this.subUrl}/v1/history/starforce`;
|
|
1041
1155
|
const query = {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "maplestory-openapi",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.10.0",
|
|
4
4
|
"description": "This JavaScript library enables the use of the MapleStory OpenAPI of Nexon.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"maplestory",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"types"
|
|
54
54
|
],
|
|
55
55
|
"scripts": {
|
|
56
|
-
"build": "rollup -c",
|
|
56
|
+
"build": "rollup -c && tsc -p tsconfig.build.json --emitDeclarationOnly --rootDir src --outDir types",
|
|
57
57
|
"js_sample": "node sample/js_sample.js",
|
|
58
58
|
"lint": "eslint ./src/** --fix",
|
|
59
59
|
"format": "prettier --write ./**/*.{ts,js}",
|
|
@@ -70,6 +70,7 @@
|
|
|
70
70
|
"devDependencies": {
|
|
71
71
|
"@rollup/plugin-commonjs": "^21.1.0",
|
|
72
72
|
"@rollup/plugin-node-resolve": "13.1.3",
|
|
73
|
+
"@rollup/plugin-typescript": "^11.1.6",
|
|
73
74
|
"@types/jest": "^29.5.12",
|
|
74
75
|
"@types/xml2js": "^0.4.14",
|
|
75
76
|
"@typescript-eslint/eslint-plugin": "^6.15.0",
|
|
@@ -86,9 +87,9 @@
|
|
|
86
87
|
"prettier": "^3.1.1",
|
|
87
88
|
"rollup": "2.66.1",
|
|
88
89
|
"rollup-plugin-terser": "7.0.2",
|
|
89
|
-
"rollup-plugin-typescript2": "0.27.1",
|
|
90
90
|
"ts-jest": "^29.1.4",
|
|
91
91
|
"ts-node": "^10.9.1",
|
|
92
|
+
"tslib": "^2.8.1",
|
|
92
93
|
"tsm": "2.2.1",
|
|
93
94
|
"typescript": "^5.2.2"
|
|
94
95
|
},
|