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.
Files changed (34) hide show
  1. package/README.md +1 -0
  2. package/dist/cjs/maplestory/api/kms/dto/battlePractice/battlePracticeCharacterInfo.js +2370 -0
  3. package/dist/cjs/maplestory/api/kms/dto/battlePractice/battlePracticeReplayId.js +41 -0
  4. package/dist/cjs/maplestory/api/kms/dto/battlePractice/battlePracticeResult.js +101 -0
  5. package/dist/cjs/maplestory/api/kms/dto/battlePractice/battlePracticeSkillTimeline.js +61 -0
  6. package/dist/cjs/maplestory/api/kms/dto/character/characterPetEquipment.js +6 -1
  7. package/dist/cjs/maplestory/api/kms/dto/character/characterRingReserveSkillEquipment.js +44 -0
  8. package/dist/cjs/maplestory/api/kms/kms.js +70 -0
  9. package/dist/cjs/maplestory/api/kms/mapleStoryApi.js +115 -1
  10. package/dist/esm/maplestory/api/kms/dto/battlePractice/battlePracticeCharacterInfo.js +2311 -0
  11. package/dist/esm/maplestory/api/kms/dto/battlePractice/battlePracticeReplayId.js +36 -0
  12. package/dist/esm/maplestory/api/kms/dto/battlePractice/battlePracticeResult.js +96 -0
  13. package/dist/esm/maplestory/api/kms/dto/battlePractice/battlePracticeSkillTimeline.js +56 -0
  14. package/dist/esm/maplestory/api/kms/dto/character/characterPetEquipment.js +6 -1
  15. package/dist/esm/maplestory/api/kms/dto/character/characterRingReserveSkillEquipment.js +40 -0
  16. package/dist/esm/maplestory/api/kms/kms.js +6 -0
  17. package/dist/esm/maplestory/api/kms/mapleStoryApi.js +115 -1
  18. package/package.json +4 -3
  19. package/types/maplestory/api/kms/dto/battlePractice/battlePracticeCharacterInfo.d.ts +1817 -0
  20. package/types/maplestory/api/kms/dto/battlePractice/battlePracticeReplayId.d.ts +29 -0
  21. package/types/maplestory/api/kms/dto/battlePractice/battlePracticeResult.d.ts +77 -0
  22. package/types/maplestory/api/kms/dto/battlePractice/battlePracticeSkillTimeline.d.ts +45 -0
  23. package/types/maplestory/api/kms/dto/character/characterPetEquipment.d.ts +4 -0
  24. package/types/maplestory/api/kms/dto/character/characterRingReserveSkillEquipment.d.ts +31 -0
  25. package/types/maplestory/api/kms/dto/history/starforceHistory.d.ts +1 -1
  26. package/types/maplestory/api/kms/index.d.ts +6 -0
  27. package/types/maplestory/api/kms/mapleStoryApi.d.ts +56 -1
  28. package/types/maplestory/api/kms/response/battlePractice/battlePracticeCharacterInfoBody.d.ts +482 -0
  29. package/types/maplestory/api/kms/response/battlePractice/battlePracticeReplayIdBody.d.ts +8 -0
  30. package/types/maplestory/api/kms/response/battlePractice/battlePracticeResultBody.d.ts +20 -0
  31. package/types/maplestory/api/kms/response/battlePractice/battlePracticeSkillTimelineBody.d.ts +12 -0
  32. package/types/maplestory/api/kms/response/character/characterPetEquipmentBody.d.ts +1 -0
  33. package/types/maplestory/api/kms/response/character/characterRingReserveSkillEquipmentBody.d.ts +8 -0
  34. package/types/maplestory/api/kms/response/history/starforceHistoryBody.d.ts +1 -1
@@ -0,0 +1,41 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ /**
6
+ * 연무장 리플레이 식별자 목록
7
+ */
8
+ class BattlePracticeReplayIdDto {
9
+ /**
10
+ * 리플레이 목록
11
+ */
12
+ replayList;
13
+ constructor(obj) {
14
+ this.replayList = obj.replay_list.map((r) => new BattlePracticeReplayIdInfoDto(r));
15
+ }
16
+ }
17
+ /**
18
+ * 연무장 리플레이 식별자 상세 정보
19
+ */
20
+ class BattlePracticeReplayIdInfoDto {
21
+ /**
22
+ * 기간 번호 (연무장 초기화 시마다 1씩 증가됩니다.)
23
+ */
24
+ periodNo;
25
+ /**
26
+ * 리플레이 등록 일시 (KST)
27
+ */
28
+ registerDate;
29
+ /**
30
+ * 연무장 리플레이 고유 식별자
31
+ */
32
+ replayId;
33
+ constructor(obj) {
34
+ this.periodNo = obj.period_no;
35
+ this.registerDate = new Date(obj.register_date);
36
+ this.replayId = obj.replay_id;
37
+ }
38
+ }
39
+
40
+ exports.BattlePracticeReplayIdDto = BattlePracticeReplayIdDto;
41
+ exports.BattlePracticeReplayIdInfoDto = BattlePracticeReplayIdInfoDto;
@@ -0,0 +1,101 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ /**
6
+ * 연무장 측정 결과 정보
7
+ */
8
+ class BattlePracticeResultDto {
9
+ /**
10
+ * 리플레이 등록 일시 (KST)
11
+ */
12
+ registerDate;
13
+ /**
14
+ * 총 연무 시간 (ms)
15
+ */
16
+ totalPlayTime;
17
+ /**
18
+ * 총합 데미지
19
+ */
20
+ totalDamage;
21
+ /**
22
+ * 초당 평균 데미지
23
+ */
24
+ totalDps;
25
+ /**
26
+ * 종료 타입 (1:자동 종료, 2:수동 종료, 3:시간 초과, 9:기타 종료)
27
+ */
28
+ endType;
29
+ /**
30
+ * 리플레이 추천 수
31
+ */
32
+ likeCount;
33
+ /**
34
+ * 스킬 단위 전투 분석 정보
35
+ */
36
+ skillStatistic;
37
+ constructor(obj) {
38
+ this.registerDate = new Date(obj.register_date);
39
+ this.totalPlayTime = obj.total_play_time;
40
+ this.totalDamage = obj.total_damage;
41
+ this.totalDps = obj.total_dps;
42
+ this.endType = obj.end_type;
43
+ this.likeCount = obj.like_count;
44
+ this.skillStatistic = obj.skill_statistic.map((s) => new BattlePracticeSkillStatisticDto(s));
45
+ }
46
+ }
47
+ /**
48
+ * 연무장 스킬 단위 전투 분석 정보
49
+ */
50
+ class BattlePracticeSkillStatisticDto {
51
+ /**
52
+ * 스킬 명
53
+ */
54
+ skillName;
55
+ /**
56
+ * 누적 데미지
57
+ */
58
+ damage;
59
+ /**
60
+ * 데미지 점유율
61
+ */
62
+ damagePercent;
63
+ /**
64
+ * 초당 평균 데미지
65
+ */
66
+ dps;
67
+ /**
68
+ * 사용 횟수
69
+ */
70
+ useCount;
71
+ /**
72
+ * 1회당 평균 데미지
73
+ */
74
+ damagePerUse;
75
+ /**
76
+ * 공격 횟수
77
+ */
78
+ attackCount;
79
+ /**
80
+ * 최대 데미지 (1타)
81
+ */
82
+ maxDamage;
83
+ /**
84
+ * 최소 데미지 (1타)
85
+ */
86
+ minDamage;
87
+ constructor(obj) {
88
+ this.skillName = obj.skill_name;
89
+ this.damage = obj.damage;
90
+ this.damagePercent = obj.damage_percent;
91
+ this.dps = obj.dps;
92
+ this.useCount = obj.use_count;
93
+ this.damagePerUse = obj.damage_per_use;
94
+ this.attackCount = obj.attack_count;
95
+ this.maxDamage = obj.max_damage;
96
+ this.minDamage = obj.min_damage;
97
+ }
98
+ }
99
+
100
+ exports.BattlePracticeResultDto = BattlePracticeResultDto;
101
+ exports.BattlePracticeSkillStatisticDto = BattlePracticeSkillStatisticDto;
@@ -0,0 +1,61 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ /**
6
+ * 연무장 스킬 사용 내역
7
+ */
8
+ class BattlePracticeSkillTimelineDto {
9
+ /**
10
+ * 조회된 페이지 번호
11
+ */
12
+ pageNo;
13
+ /**
14
+ * 전체 페이지 번호
15
+ */
16
+ totalPageNo;
17
+ /**
18
+ * 스킬 타임라인 정보
19
+ */
20
+ skillTimeline;
21
+ constructor(obj) {
22
+ this.pageNo = obj.page_no;
23
+ this.totalPageNo = obj.total_page_no;
24
+ this.skillTimeline = obj.skill_timeline.map((event) => new BattlePracticeSkillTimelineEventDto(event));
25
+ }
26
+ }
27
+ /**
28
+ * 연무장 스킬 타임라인
29
+ */
30
+ class BattlePracticeSkillTimelineEventDto {
31
+ /**
32
+ * 연무 시작 후 경과 시간 (ms)
33
+ */
34
+ elapseTime;
35
+ /**
36
+ * 사용한 스킬 명
37
+ */
38
+ skillName;
39
+ /**
40
+ * 헥사 스킬 특성 여부 (0:그 외 스킬, 1:오리진 스킬, 2:어센트 스킬)
41
+ */
42
+ hexaSkillSpecificityFlag;
43
+ /**
44
+ * 시퀀스 명
45
+ */
46
+ sequenceName;
47
+ /**
48
+ * 시퀀스 키
49
+ */
50
+ sequenceKey;
51
+ constructor(obj) {
52
+ this.elapseTime = obj.elapse_time;
53
+ this.skillName = obj.skill_name;
54
+ this.hexaSkillSpecificityFlag = obj.hexa_skill_specificity_flag;
55
+ this.sequenceName = obj.sequence_name;
56
+ this.sequenceKey = obj.sequence_key;
57
+ }
58
+ }
59
+
60
+ exports.BattlePracticeSkillTimelineDto = BattlePracticeSkillTimelineDto;
61
+ exports.BattlePracticeSkillTimelineEventDto = BattlePracticeSkillTimelineEventDto;
@@ -312,9 +312,13 @@ class CharacterPetEquipmentItemDto extends characterPetEquipment.CharacterPetEqu
312
312
  * 아이템 외형 아이콘
313
313
  */
314
314
  itemShapeIcon;
315
+ /**
316
+ * 아이템 만료시간 (KST, 분 단위는 일괄 0으로 표기, null:무제한, -1:미착용)
317
+ */
318
+ itemDateExpire;
315
319
  constructor(obj) {
316
320
  super();
317
- const { item_name, item_icon, item_description, item_option, scroll_upgrade, scroll_upgradable, item_shape, item_shape_icon, } = obj;
321
+ const { item_name, item_icon, item_description, item_option, scroll_upgrade, scroll_upgradable, item_shape, item_shape_icon, item_date_expire, } = obj;
318
322
  this.itemName = item_name;
319
323
  this.itemIcon = item_icon;
320
324
  this.itemDescription = item_description;
@@ -323,6 +327,7 @@ class CharacterPetEquipmentItemDto extends characterPetEquipment.CharacterPetEqu
323
327
  this.scrollUpgradable = scroll_upgradable;
324
328
  this.itemShape = item_shape;
325
329
  this.itemShapeIcon = item_shape_icon;
330
+ this.itemDateExpire = item_date_expire ? new Date(item_date_expire) : null;
326
331
  }
327
332
  }
328
333
 
@@ -0,0 +1,44 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ /**
6
+ * 캐릭터 예비 특수 반지 장착 정보
7
+ */
8
+ class CharacterRingReserveSkillEquipmentDto {
9
+ /**
10
+ * 조회 기준일 (KST, 일 단위 데이터로 시, 분은 일괄 0으로 표기)
11
+ */
12
+ date;
13
+ /**
14
+ * 캐릭터 직업
15
+ */
16
+ characterClass;
17
+ /**
18
+ * 예비 특수 반지 슬롯에 장착한 특수 반지
19
+ */
20
+ specialRingReserveName;
21
+ /**
22
+ * 예비 특수 반지 슬롯에 장착한 특수 반지 레벨
23
+ */
24
+ specialRingReserveLevel;
25
+ /**
26
+ * 예비 특수 반지 슬롯에 장착한 특수 반지 아이콘
27
+ */
28
+ specialRingReserveIcon;
29
+ /**
30
+ * 예비 특수 반지 슬롯에 장착한 특수 반지 설명
31
+ */
32
+ specialRingReserveDescription;
33
+ constructor(obj) {
34
+ const { date, character_class, special_ring_reserve_name, special_ring_reserve_level, special_ring_reserve_icon, special_ring_reserve_description, } = obj;
35
+ this.date = date ? new Date(date) : null;
36
+ this.characterClass = character_class;
37
+ this.specialRingReserveName = special_ring_reserve_name;
38
+ this.specialRingReserveLevel = special_ring_reserve_level;
39
+ this.specialRingReserveIcon = special_ring_reserve_icon;
40
+ this.specialRingReserveDescription = special_ring_reserve_description;
41
+ }
42
+ }
43
+
44
+ exports.CharacterRingReserveSkillEquipmentDto = CharacterRingReserveSkillEquipmentDto;
@@ -4,6 +4,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var mapleStoryApi = require('./mapleStoryApi.js');
6
6
  var mapleStoryFriendsApi = require('./mapleStoryFriendsApi.js');
7
+ var battlePracticeCharacterInfo = require('./dto/battlePractice/battlePracticeCharacterInfo.js');
8
+ var battlePracticeReplayId = require('./dto/battlePractice/battlePracticeReplayId.js');
9
+ var battlePracticeResult = require('./dto/battlePractice/battlePracticeResult.js');
10
+ var battlePracticeSkillTimeline = require('./dto/battlePractice/battlePracticeSkillTimeline.js');
7
11
  var character = require('./dto/character/character.js');
8
12
  var characterAbility = require('./dto/character/characterAbility.js');
9
13
  var characterAndroidEquipment = require('./dto/character/characterAndroidEquipment.js');
@@ -25,6 +29,8 @@ var characterSetEffect = require('./dto/character/characterSetEffect.js');
25
29
  var characterSkill = require('./dto/character/characterSkill.js');
26
30
  var characterStat = require('./dto/character/characterStat.js');
27
31
  var characterSymbolEquipment = require('./dto/character/characterSymbolEquipment.js');
32
+ var characterRingExchangeSkillEquipment = require('./dto/character/characterRingExchangeSkillEquipment.js');
33
+ var characterRingReserveSkillEquipment = require('./dto/character/characterRingReserveSkillEquipment.js');
28
34
  var characterVMatrix = require('./dto/character/characterVMatrix.js');
29
35
  var guild = require('./dto/guild/guild.js');
30
36
  var guildBasic = require('./dto/guild/guildBasic.js');
@@ -57,6 +63,68 @@ var inspectionInfo = require('./dto/inspectionInfo.js');
57
63
 
58
64
  exports.MapleStoryApi = mapleStoryApi.MapleStoryApi;
59
65
  exports.MapleStoryFriendsApi = mapleStoryFriendsApi.MapleStoryFriendsApi;
66
+ exports.BattlePracticeCharacterAbilityInfoDto = battlePracticeCharacterInfo.BattlePracticeCharacterAbilityInfoDto;
67
+ exports.BattlePracticeCharacterAbilityObjectDto = battlePracticeCharacterInfo.BattlePracticeCharacterAbilityObjectDto;
68
+ exports.BattlePracticeCharacterBasicDto = battlePracticeCharacterInfo.BattlePracticeCharacterBasicDto;
69
+ exports.BattlePracticeCharacterBasicStatDto = battlePracticeCharacterInfo.BattlePracticeCharacterBasicStatDto;
70
+ exports.BattlePracticeCharacterCashItemEquipmentDto = battlePracticeCharacterInfo.BattlePracticeCharacterCashItemEquipmentDto;
71
+ exports.BattlePracticeCharacterCashItemObjectDto = battlePracticeCharacterInfo.BattlePracticeCharacterCashItemObjectDto;
72
+ exports.BattlePracticeCharacterCashItemOptionDto = battlePracticeCharacterInfo.BattlePracticeCharacterCashItemOptionDto;
73
+ exports.BattlePracticeCharacterFinalStatDto = battlePracticeCharacterInfo.BattlePracticeCharacterFinalStatDto;
74
+ exports.BattlePracticeCharacterHexaCoreEquipmentDto = battlePracticeCharacterInfo.BattlePracticeCharacterHexaCoreEquipmentDto;
75
+ exports.BattlePracticeCharacterHexaCoreObjectDto = battlePracticeCharacterInfo.BattlePracticeCharacterHexaCoreObjectDto;
76
+ exports.BattlePracticeCharacterHexaLinkedSkillDto = battlePracticeCharacterInfo.BattlePracticeCharacterHexaLinkedSkillDto;
77
+ exports.BattlePracticeCharacterHexaMatrixObjectDto = battlePracticeCharacterInfo.BattlePracticeCharacterHexaMatrixObjectDto;
78
+ exports.BattlePracticeCharacterHexaMatrixStatObjectDto = battlePracticeCharacterInfo.BattlePracticeCharacterHexaMatrixStatObjectDto;
79
+ exports.BattlePracticeCharacterHexaStatCoreDto = battlePracticeCharacterInfo.BattlePracticeCharacterHexaStatCoreDto;
80
+ exports.BattlePracticeCharacterHyperStatDto = battlePracticeCharacterInfo.BattlePracticeCharacterHyperStatDto;
81
+ exports.BattlePracticeCharacterHyperStatObjectDto = battlePracticeCharacterInfo.BattlePracticeCharacterHyperStatObjectDto;
82
+ exports.BattlePracticeCharacterInfoDto = battlePracticeCharacterInfo.BattlePracticeCharacterInfoDto;
83
+ exports.BattlePracticeCharacterItemAddOptionDto = battlePracticeCharacterInfo.BattlePracticeCharacterItemAddOptionDto;
84
+ exports.BattlePracticeCharacterItemBaseOptionDto = battlePracticeCharacterInfo.BattlePracticeCharacterItemBaseOptionDto;
85
+ exports.BattlePracticeCharacterItemDragonEquipmentDto = battlePracticeCharacterInfo.BattlePracticeCharacterItemDragonEquipmentDto;
86
+ exports.BattlePracticeCharacterItemEquipmentDto = battlePracticeCharacterInfo.BattlePracticeCharacterItemEquipmentDto;
87
+ exports.BattlePracticeCharacterItemEquipmentObjectDto = battlePracticeCharacterInfo.BattlePracticeCharacterItemEquipmentObjectDto;
88
+ exports.BattlePracticeCharacterItemEtcOptionDto = battlePracticeCharacterInfo.BattlePracticeCharacterItemEtcOptionDto;
89
+ exports.BattlePracticeCharacterItemExceptionalOptionDto = battlePracticeCharacterInfo.BattlePracticeCharacterItemExceptionalOptionDto;
90
+ exports.BattlePracticeCharacterItemMechanicEquipmentDto = battlePracticeCharacterInfo.BattlePracticeCharacterItemMechanicEquipmentDto;
91
+ exports.BattlePracticeCharacterItemObjectDto = battlePracticeCharacterInfo.BattlePracticeCharacterItemObjectDto;
92
+ exports.BattlePracticeCharacterItemStarforceOptionDto = battlePracticeCharacterInfo.BattlePracticeCharacterItemStarforceOptionDto;
93
+ exports.BattlePracticeCharacterItemTitleDto = battlePracticeCharacterInfo.BattlePracticeCharacterItemTitleDto;
94
+ exports.BattlePracticeCharacterItemTotalOptionDto = battlePracticeCharacterInfo.BattlePracticeCharacterItemTotalOptionDto;
95
+ exports.BattlePracticeCharacterLinkSkillObjectDto = battlePracticeCharacterInfo.BattlePracticeCharacterLinkSkillObjectDto;
96
+ exports.BattlePracticeCharacterOtherStatDetailDto = battlePracticeCharacterInfo.BattlePracticeCharacterOtherStatDetailDto;
97
+ exports.BattlePracticeCharacterOtherStatDto = battlePracticeCharacterInfo.BattlePracticeCharacterOtherStatDto;
98
+ exports.BattlePracticeCharacterOtherStatInfoDto = battlePracticeCharacterInfo.BattlePracticeCharacterOtherStatInfoDto;
99
+ exports.BattlePracticeCharacterPetAutoSkillDto = battlePracticeCharacterInfo.BattlePracticeCharacterPetAutoSkillDto;
100
+ exports.BattlePracticeCharacterPetEquipmentDto = battlePracticeCharacterInfo.BattlePracticeCharacterPetEquipmentDto;
101
+ exports.BattlePracticeCharacterPetEquipmentItemOptionDto = battlePracticeCharacterInfo.BattlePracticeCharacterPetEquipmentItemOptionDto;
102
+ exports.BattlePracticeCharacterPetObjectDto = battlePracticeCharacterInfo.BattlePracticeCharacterPetObjectDto;
103
+ exports.BattlePracticeCharacterPropensityDto = battlePracticeCharacterInfo.BattlePracticeCharacterPropensityDto;
104
+ exports.BattlePracticeCharacterRingReserveSkillObjectDto = battlePracticeCharacterInfo.BattlePracticeCharacterRingReserveSkillObjectDto;
105
+ exports.BattlePracticeCharacterSetEffectDto = battlePracticeCharacterInfo.BattlePracticeCharacterSetEffectDto;
106
+ exports.BattlePracticeCharacterSetEffectInfoDto = battlePracticeCharacterInfo.BattlePracticeCharacterSetEffectInfoDto;
107
+ exports.BattlePracticeCharacterSetEffectObjectDto = battlePracticeCharacterInfo.BattlePracticeCharacterSetEffectObjectDto;
108
+ exports.BattlePracticeCharacterSkillInfoDto = battlePracticeCharacterInfo.BattlePracticeCharacterSkillInfoDto;
109
+ exports.BattlePracticeCharacterSkillObjectDto = battlePracticeCharacterInfo.BattlePracticeCharacterSkillObjectDto;
110
+ exports.BattlePracticeCharacterStatDto = battlePracticeCharacterInfo.BattlePracticeCharacterStatDto;
111
+ exports.BattlePracticeCharacterSymbolDto = battlePracticeCharacterInfo.BattlePracticeCharacterSymbolDto;
112
+ exports.BattlePracticeCharacterSymbolStatDto = battlePracticeCharacterInfo.BattlePracticeCharacterSymbolStatDto;
113
+ exports.BattlePracticeCharacterVCoreDto = battlePracticeCharacterInfo.BattlePracticeCharacterVCoreDto;
114
+ exports.BattlePracticeCharacterVMatrixObjectDto = battlePracticeCharacterInfo.BattlePracticeCharacterVMatrixObjectDto;
115
+ exports.BattlePracticeGuildObjectDto = battlePracticeCharacterInfo.BattlePracticeGuildObjectDto;
116
+ exports.BattlePracticeGuildSkillDto = battlePracticeCharacterInfo.BattlePracticeGuildSkillDto;
117
+ exports.BattlePracticeUnionArtifactEffectDto = battlePracticeCharacterInfo.BattlePracticeUnionArtifactEffectDto;
118
+ exports.BattlePracticeUnionArtifactObjectDto = battlePracticeCharacterInfo.BattlePracticeUnionArtifactObjectDto;
119
+ exports.BattlePracticeUnionChampionBadgeDto = battlePracticeCharacterInfo.BattlePracticeUnionChampionBadgeDto;
120
+ exports.BattlePracticeUnionChampionObjectDto = battlePracticeCharacterInfo.BattlePracticeUnionChampionObjectDto;
121
+ exports.BattlePracticeUnionRaiderObjectDto = battlePracticeCharacterInfo.BattlePracticeUnionRaiderObjectDto;
122
+ exports.BattlePracticeReplayIdDto = battlePracticeReplayId.BattlePracticeReplayIdDto;
123
+ exports.BattlePracticeReplayIdInfoDto = battlePracticeReplayId.BattlePracticeReplayIdInfoDto;
124
+ exports.BattlePracticeResultDto = battlePracticeResult.BattlePracticeResultDto;
125
+ exports.BattlePracticeSkillStatisticDto = battlePracticeResult.BattlePracticeSkillStatisticDto;
126
+ exports.BattlePracticeSkillTimelineDto = battlePracticeSkillTimeline.BattlePracticeSkillTimelineDto;
127
+ exports.BattlePracticeSkillTimelineEventDto = battlePracticeSkillTimeline.BattlePracticeSkillTimelineEventDto;
60
128
  exports.CharacterDto = character.CharacterDto;
61
129
  exports.CharacterAbilityDto = characterAbility.CharacterAbilityDto;
62
130
  exports.CharacterAbilityInfoDto = characterAbility.CharacterAbilityInfoDto;
@@ -121,6 +189,8 @@ exports.CharacterFinalStatDto = characterStat.CharacterFinalStatDto;
121
189
  exports.CharacterStatDto = characterStat.CharacterStatDto;
122
190
  exports.CharacterSymbolEquipmentDto = characterSymbolEquipment.CharacterSymbolEquipmentDto;
123
191
  exports.CharacterSymbolEquipmentInfoDto = characterSymbolEquipment.CharacterSymbolEquipmentInfoDto;
192
+ exports.CharacterRingExchangeSkillEquipmentDto = characterRingExchangeSkillEquipment.CharacterRingExchangeSkillEquipmentDto;
193
+ exports.CharacterRingReserveSkillEquipmentDto = characterRingReserveSkillEquipment.CharacterRingReserveSkillEquipmentDto;
124
194
  exports.CharacterVMatrixCodeEquipmentDto = characterVMatrix.CharacterVMatrixCodeEquipmentDto;
125
195
  exports.CharacterVMatrixDto = characterVMatrix.CharacterVMatrixDto;
126
196
  exports.GuildDto = guild.GuildDto;
@@ -5,6 +5,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var axios = require('axios');
6
6
  require('../../../node_modules/buffer/index.js');
7
7
  var xml2js = require('xml2js');
8
+ var battlePracticeCharacterInfo = require('./dto/battlePractice/battlePracticeCharacterInfo.js');
9
+ var battlePracticeReplayId = require('./dto/battlePractice/battlePracticeReplayId.js');
10
+ var battlePracticeResult = require('./dto/battlePractice/battlePracticeResult.js');
11
+ var battlePracticeSkillTimeline = require('./dto/battlePractice/battlePracticeSkillTimeline.js');
8
12
  var character = require('./dto/character/character.js');
9
13
  var characterAbility = require('./dto/character/characterAbility.js');
10
14
  var characterAndroidEquipment = require('./dto/character/characterAndroidEquipment.js');
@@ -23,6 +27,7 @@ var characterPetEquipment = require('./dto/character/characterPetEquipment.js');
23
27
  var characterPopularity = require('./dto/character/characterPopularity.js');
24
28
  var characterPropensity = require('./dto/character/characterPropensity.js');
25
29
  var characterRingExchangeSkillEquipment = require('./dto/character/characterRingExchangeSkillEquipment.js');
30
+ var characterRingReserveSkillEquipment = require('./dto/character/characterRingReserveSkillEquipment.js');
26
31
  var characterSetEffect = require('./dto/character/characterSetEffect.js');
27
32
  var characterSkill = require('./dto/character/characterSkill.js');
28
33
  var characterStat = require('./dto/character/characterStat.js');
@@ -827,7 +832,8 @@ class MapleStoryApi extends mapleStoryApi.MapleStoryApi {
827
832
  /**
828
833
  * 링 익스체인지 스킬 등록 장비를 조회합니다.
829
834
  * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
830
- * - 2025년 8월 21 데이터부터 조회할 수 있습니다.
835
+ * - 2025년 08월 21일부터 2026년 3월 18일까지의 데이터를 조회할 수 있습니다.
836
+ * - 2026년 3월 19일부터는 예비 특수 반지 장착 정보 조회를 사용해주세요.
831
837
  * - 과거 데이터는 원하는 일자를 입력해 조회할 수 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 수 있습니다. (8월 22일 데이터 조회 시, 22일 00시부터 23일 00시 사이 데이터가 조회 됩니다.)
832
838
  * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
833
839
  * - 해당 API는 메이플스토리 한국의 데이터가 제공됩니다.
@@ -856,6 +862,38 @@ class MapleStoryApi extends mapleStoryApi.MapleStoryApi {
856
862
  }
857
863
  return new characterRingExchangeSkillEquipment.CharacterRingExchangeSkillEquipmentDto(data);
858
864
  }
865
+ /**
866
+ * 예비 특수 반지 장착 정보를 조회합니다.
867
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
868
+ * - 2026년 3월 19일 데이터부터 조회할 수 있습니다.
869
+ * - 과거 데이터는 원하는 일자를 입력해 조회할 수 있으며, 전일 데이터는 다음날 오전 2시부터 확인할 수 있습니다. (3월 20일 데이터 조회 시, 20일 00시부터 21일 00시 사이 데이터가 조회 됩니다.)
870
+ * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
871
+ * - 해당 API는 메이플스토리 한국의 데이터가 제공됩니다.
872
+ *
873
+ * @param ocid 캐릭터 식별자
874
+ * @param dateOptions 조회 기준일 (KST)
875
+ */
876
+ async getCharacterRingReserveSkillEquipment(ocid, dateOptions) {
877
+ const path = `${this.subUrl}/v1/character/ring-reserve-skill-equipment`;
878
+ const date = dateOptions
879
+ ? this.toDateString(dateOptions, {
880
+ year: 2026,
881
+ month: 3,
882
+ day: 19,
883
+ })
884
+ : undefined;
885
+ const query = {
886
+ ocid: ocid,
887
+ date: date,
888
+ };
889
+ const { data } = await this.client.get(path, {
890
+ params: query,
891
+ });
892
+ if (this.isEmptyResponse(data)) {
893
+ return null;
894
+ }
895
+ return new characterRingReserveSkillEquipment.CharacterRingReserveSkillEquipmentDto(data);
896
+ }
859
897
  //#endregion
860
898
  //#region 유니온 정보 조회
861
899
  /**
@@ -1045,6 +1083,82 @@ class MapleStoryApi extends mapleStoryApi.MapleStoryApi {
1045
1083
  }
1046
1084
  return new guildBasic.GuildBasicDto(data);
1047
1085
  }
1086
+ //#endregion
1087
+ //#region 연무장 정보 조회
1088
+ /**
1089
+ * 캐릭터의 연무장 리플레이 식별자를 조회합니다. 리플레이를 등록한 캐릭터에 대해서만 조회가 가능합니다.
1090
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
1091
+ * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
1092
+ * - 해당 API는 메이플스토리 한국의 데이터가 제공됩니다.
1093
+ *
1094
+ * @param ocid 캐릭터 식별자
1095
+ */
1096
+ async getBattlePracticeReplayId(ocid) {
1097
+ const path = `${this.subUrl}/v1/battle-practice/replay-id`;
1098
+ const query = {
1099
+ ocid: ocid,
1100
+ };
1101
+ const { data } = await this.client.get(path, {
1102
+ params: query,
1103
+ });
1104
+ return new battlePracticeReplayId.BattlePracticeReplayIdDto(data);
1105
+ }
1106
+ /**
1107
+ * 연무장 측정 결과 정보를 조회합니다.
1108
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
1109
+ * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
1110
+ * - 해당 API는 메이플스토리 한국의 데이터가 제공됩니다.
1111
+ *
1112
+ * @param replayId 연무장 리플레이 고유 식별자
1113
+ */
1114
+ async getBattlePracticeResult(replayId) {
1115
+ const path = `${this.subUrl}/v1/battle-practice/result`;
1116
+ const query = {
1117
+ replay_id: replayId,
1118
+ };
1119
+ const { data } = await this.client.get(path, {
1120
+ params: query,
1121
+ });
1122
+ return new battlePracticeResult.BattlePracticeResultDto(data);
1123
+ }
1124
+ /**
1125
+ * 연무장 진행 간 스킬 사용 내역을 조회합니다.
1126
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
1127
+ * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
1128
+ * - 해당 API는 메이플스토리 한국의 데이터가 제공됩니다.
1129
+ *
1130
+ * @param replayId 연무장 리플레이 고유 식별자
1131
+ * @param pageNo 페이지 번호 (미입력 시 1페이지 조회)
1132
+ */
1133
+ async getBattlePracticeSkillTimeline(replayId, pageNo) {
1134
+ const path = `${this.subUrl}/v1/battle-practice/skill-timeline`;
1135
+ const query = {
1136
+ replay_id: replayId,
1137
+ page_no: pageNo,
1138
+ };
1139
+ const { data } = await this.client.get(path, {
1140
+ params: query,
1141
+ });
1142
+ return new battlePracticeSkillTimeline.BattlePracticeSkillTimelineDto(data);
1143
+ }
1144
+ /**
1145
+ * 연무장 입장 시의 캐릭터 능력치 관련 정보를 조회합니다.
1146
+ * - 메이플스토리 게임 데이터는 평균 15분 후 확인 가능합니다.
1147
+ * - 게임 콘텐츠 변경으로 ocid가 변경될 수 있습니다. ocid 기반 서비스 갱신 시 유의해 주시길 바랍니다.
1148
+ * - 해당 API는 메이플스토리 한국의 데이터가 제공됩니다.
1149
+ *
1150
+ * @param replayId 연무장 리플레이 고유 식별자
1151
+ */
1152
+ async getBattlePracticeCharacterInfo(replayId) {
1153
+ const path = `${this.subUrl}/v1/battle-practice/character-info`;
1154
+ const query = {
1155
+ replay_id: replayId,
1156
+ };
1157
+ const { data } = await this.client.get(path, {
1158
+ params: query,
1159
+ });
1160
+ return new battlePracticeCharacterInfo.BattlePracticeCharacterInfoDto(data);
1161
+ }
1048
1162
  async getStarforceHistory(count, parameter) {
1049
1163
  const path = `${this.subUrl}/v1/history/starforce`;
1050
1164
  const query = {