@malib/gear 1.0.0-next.4 → 1.0.0-next.5
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/dist/index.cjs +1 -1
- package/dist/index.d.ts +7 -5
- package/dist/index.js +1 -1
- package/dist/lib/Gear.d.ts +25 -175
- package/dist/lib/GearAttribute.d.ts +18 -12
- package/dist/lib/GearReq.d.ts +3 -15
- package/dist/lib/ReadonlyGear.d.ts +177 -0
- package/dist/lib/data/AddOptionData.d.ts +62 -0
- package/dist/lib/data/GearAttributeData.d.ts +16 -22
- package/dist/lib/data/GearData.d.ts +6 -16
- package/dist/lib/data/GearOption.d.ts +0 -2
- package/dist/lib/data/PotentialData.d.ts +3 -0
- package/dist/lib/data/index.d.ts +1 -0
- package/dist/lib/enhance/addOption.d.ts +41 -52
- package/dist/lib/enhance/exceptional.d.ts +4 -3
- package/dist/lib/enhance/potential.d.ts +5 -6
- package/dist/lib/{soulSlot.d.ts → enhance/soulSlot.d.ts} +7 -6
- package/dist/lib/enhance/spellTrace.d.ts +7 -6
- package/dist/lib/enhance/starforce.d.ts +14 -5
- package/dist/lib/enhance/upgrade.d.ts +6 -19
- package/dist/lib/errors.d.ts +2 -0
- package/dist/lib/gearOption.d.ts +2 -0
- package/dist/lib/test/exceptionalFixture.d.ts +2 -0
- package/dist/lib/test/gearFixture.d.ts +13 -0
- package/dist/lib/test/gearFixtureResources.d.ts +886 -0
- package/dist/lib/test/gearPatch.d.ts +10 -0
- package/dist/lib/test/index.d.ts +6 -0
- package/dist/lib/test/potentialFixture.d.ts +2 -0
- package/dist/lib/test/scrollFixture.d.ts +2 -0
- package/dist/lib/test/soulFixture.d.ts +2 -0
- package/dist/lib/test/util.d.ts +1 -0
- package/package.json +9 -4
- package/src/index.ts +121 -0
- package/dist/lib/utils.d.ts +0 -3
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { PotentialData, PotentialGrade, PotentialOption } from '../data';
|
|
2
2
|
import { Gear } from '../Gear';
|
|
3
|
+
import { ReadonlyGear } from '../ReadonlyGear';
|
|
3
4
|
/**
|
|
4
5
|
* 잠재옵션 (읽기 전용)
|
|
5
6
|
*/
|
|
6
7
|
export interface ReadonlyPotential extends Readonly<PotentialData> {
|
|
7
|
-
/** 장비에 표시되는 이름 */
|
|
8
|
-
summary: string;
|
|
9
8
|
/** 잠재능력 옵션 */
|
|
10
9
|
option: Readonly<PotentialOption>;
|
|
11
10
|
}
|
|
@@ -14,13 +13,13 @@ export interface ReadonlyPotential extends Readonly<PotentialData> {
|
|
|
14
13
|
* @param gear 확인할 장비.
|
|
15
14
|
* @returns 지원할 경우 `true`; 아닐 경우 `false`.
|
|
16
15
|
*/
|
|
17
|
-
export declare function supportsPotential(gear:
|
|
16
|
+
export declare function supportsPotential(gear: ReadonlyGear): boolean;
|
|
18
17
|
/**
|
|
19
18
|
* 장비의 잠재능력을 설정할 수 있는지 여부를 확인합니다.
|
|
20
19
|
* @param gear 확인할 장비.
|
|
21
20
|
* @returns 설정할 수 있을 경우 `true`; 아닐 경우 `false`.
|
|
22
21
|
*/
|
|
23
|
-
export declare function canSetPotential(gear:
|
|
22
|
+
export declare function canSetPotential(gear: ReadonlyGear): boolean;
|
|
24
23
|
/**
|
|
25
24
|
* 장비의 잠재능력을 설정합니다.
|
|
26
25
|
* @param gear 설정할 장비.
|
|
@@ -52,13 +51,13 @@ export declare function resetPotential(gear: Gear): void;
|
|
|
52
51
|
* @param gear 확인할 장비.
|
|
53
52
|
* @returns 지원할 경우 `true`; 아닐 경우 `false`.
|
|
54
53
|
*/
|
|
55
|
-
export declare function supportsAdditionalPotential(gear:
|
|
54
|
+
export declare function supportsAdditionalPotential(gear: ReadonlyGear): boolean;
|
|
56
55
|
/**
|
|
57
56
|
* 장비의 에디셔널 잠재능력을 설정할 수 있는지 여부를 확인합니다.
|
|
58
57
|
* @param gear 확인할 장비.
|
|
59
58
|
* @returns 설정할 수 있을 경우 `true`; 아닐 경우 `false`.
|
|
60
59
|
*/
|
|
61
|
-
export declare function canSetAdditionalPotential(gear:
|
|
60
|
+
export declare function canSetAdditionalPotential(gear: ReadonlyGear): boolean;
|
|
62
61
|
/**
|
|
63
62
|
* 장비의 에디셔널 잠재능력을 설정합니다.
|
|
64
63
|
* @param gear 설정할 장비.
|
|
@@ -1,17 +1,18 @@
|
|
|
1
|
-
import { SoulData } from '
|
|
2
|
-
import { Gear } from '
|
|
1
|
+
import { SoulData } from '../data';
|
|
2
|
+
import { Gear } from '../Gear';
|
|
3
|
+
import { ReadonlyGear } from '../ReadonlyGear';
|
|
3
4
|
/**
|
|
4
5
|
* 장비가 소울웨폰을 지원하는지 여부를 확인합니다.
|
|
5
6
|
* @param gear 확인할 장비.
|
|
6
7
|
* @returns 지원할 경우 `true`; 아닐 경우 `false`.
|
|
7
8
|
*/
|
|
8
|
-
export declare function supportsSoul(gear:
|
|
9
|
+
export declare function supportsSoul(gear: ReadonlyGear): boolean;
|
|
9
10
|
/**
|
|
10
11
|
* 장비에 소울 인챈터를 적용할 수 있는 상태인지 여부를 확인합니다.
|
|
11
12
|
* @param gear 확인할 장비.
|
|
12
13
|
* @returns 적용할 수 있을 경우 `true`; 아닐 경우 `false`.
|
|
13
14
|
*/
|
|
14
|
-
export declare function canApplySoulEnchant(gear:
|
|
15
|
+
export declare function canApplySoulEnchant(gear: ReadonlyGear): boolean;
|
|
15
16
|
/**
|
|
16
17
|
* 장비에 소울 인챈터를 적용합니다.
|
|
17
18
|
* @param gear 적용할 장비.
|
|
@@ -25,7 +26,7 @@ export declare function applySoulEnchant(gear: Gear): void;
|
|
|
25
26
|
* @param gear 확인할 장비.
|
|
26
27
|
* @returns 장착할 수 있을 경우 `true`; 아닐 경우 `false`.
|
|
27
28
|
*/
|
|
28
|
-
export declare function canSetSoul(gear:
|
|
29
|
+
export declare function canSetSoul(gear: ReadonlyGear): boolean;
|
|
29
30
|
/**
|
|
30
31
|
* 장비에 소울을 장착합니다.
|
|
31
32
|
* @param gear 대상 장비.
|
|
@@ -40,7 +41,7 @@ export declare function setSoul(gear: Gear, soul: SoulData): void;
|
|
|
40
41
|
* @param gear 확인할 장비.
|
|
41
42
|
* @returns 설정할 수 있을 경우 `true`; 아닐 경우 `false`.
|
|
42
43
|
*/
|
|
43
|
-
export declare function canSetSoulCharge(gear:
|
|
44
|
+
export declare function canSetSoulCharge(gear: ReadonlyGear): boolean;
|
|
44
45
|
/**
|
|
45
46
|
* 장비의 소울 충전량을 설정합니다.
|
|
46
47
|
* @param gear 대상 장비.
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Gear } from '../Gear';
|
|
2
|
+
import { ReadonlyGear } from '../ReadonlyGear';
|
|
2
3
|
import { Scroll } from './upgrade';
|
|
3
4
|
/**
|
|
4
5
|
* 주문의 흔적 종류
|
|
@@ -51,9 +52,9 @@ export declare function applySpellTrace(gear: Gear, type: SpellTraceType, rate:
|
|
|
51
52
|
* @throws {@link TypeError}
|
|
52
53
|
* 주문의 흔적을 장비에 적용할 수 없는 경우.
|
|
53
54
|
*/
|
|
54
|
-
export declare function getSpellTraceScroll(gear:
|
|
55
|
-
export declare function _getWeaponSpellTrace(gear:
|
|
56
|
-
export declare function _getGloveSpellTrace(gear:
|
|
57
|
-
export declare function _getArmorSpellTrace(gear:
|
|
58
|
-
export declare function _getAccSpellTrace(gear:
|
|
59
|
-
export declare function _getHeartSpellTrace(gear:
|
|
55
|
+
export declare function getSpellTraceScroll(gear: ReadonlyGear, type: SpellTraceType, rate: SpellTraceRate): SpellTrace;
|
|
56
|
+
export declare function _getWeaponSpellTrace(gear: ReadonlyGear, type: SpellTraceType, rate: SpellTraceRate): SpellTrace;
|
|
57
|
+
export declare function _getGloveSpellTrace(gear: ReadonlyGear, type: SpellTraceType, rate: SpellTraceRate): SpellTrace;
|
|
58
|
+
export declare function _getArmorSpellTrace(gear: ReadonlyGear, type: SpellTraceType, rate: SpellTraceRate): SpellTrace;
|
|
59
|
+
export declare function _getAccSpellTrace(gear: ReadonlyGear, type: SpellTraceType, rate: SpellTraceRate): SpellTrace;
|
|
60
|
+
export declare function _getHeartSpellTrace(gear: ReadonlyGear, type: SpellTraceType, rate: SpellTraceRate): SpellTrace;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Gear } from '../Gear';
|
|
2
|
-
|
|
2
|
+
import { ReadonlyGear } from '../ReadonlyGear';
|
|
3
|
+
export declare const MAX_STARFORCE = 30;
|
|
3
4
|
export declare const MAX_STARSCROLL = 15;
|
|
4
5
|
export declare const MAX_SUPERIOR = 15;
|
|
5
6
|
export declare const MAX_REQLEVEL_STARSCROLL = 150;
|
|
@@ -8,7 +9,7 @@ export declare const MAX_REQLEVEL_STARSCROLL = 150;
|
|
|
8
9
|
* @param gear 확인할 장비.
|
|
9
10
|
* @returns 지원할 경우 `true`; 아닐 경우 `false`.
|
|
10
11
|
*/
|
|
11
|
-
export declare function supportsStarforce(gear:
|
|
12
|
+
export declare function supportsStarforce(gear: ReadonlyGear): boolean;
|
|
12
13
|
/**
|
|
13
14
|
* 장비에 스타포스 강화를 적용할 수 있는 상태인지 여부를 확인합니다.
|
|
14
15
|
*
|
|
@@ -17,7 +18,7 @@ export declare function supportsStarforce(gear: Gear): boolean;
|
|
|
17
18
|
* @param exceedMaxStar 장비의 최대 강화 단계를 초과하여 강화할 지 여부.
|
|
18
19
|
* @returns 적용할 수 있을 경우 `true`; 아닐 경우 `false`.
|
|
19
20
|
*/
|
|
20
|
-
export declare function canStarforce(gear:
|
|
21
|
+
export declare function canStarforce(gear: ReadonlyGear, exceedMaxStar?: boolean): boolean;
|
|
21
22
|
/**
|
|
22
23
|
* 장비에 스타포스 강화를 1회 적용합니다.
|
|
23
24
|
*
|
|
@@ -39,7 +40,7 @@ export declare function starforce(gear: Gear, exceedMaxStar?: boolean): void;
|
|
|
39
40
|
* @param exceedMaxStar 장비의 최대 강화 단계를 초과하여 강화할 지 여부.
|
|
40
41
|
* @returns 적용할 수 있을 경우 `true`; 아닐 경우 `false`.
|
|
41
42
|
*/
|
|
42
|
-
export declare function canStarScroll(gear:
|
|
43
|
+
export declare function canStarScroll(gear: ReadonlyGear, exceedMaxStar?: boolean): boolean;
|
|
43
44
|
/**
|
|
44
45
|
* 장비에 놀라운 장비 강화 주문서를 1회 적용합니다.
|
|
45
46
|
*
|
|
@@ -64,7 +65,7 @@ export declare function starScroll(gear: Gear, bonus?: boolean, exceedMaxStar?:
|
|
|
64
65
|
* @param gear 확인할 장비.
|
|
65
66
|
* @returns 초기화할 수 있을 경우 `true`; 아닐 경우 `false`.
|
|
66
67
|
*/
|
|
67
|
-
export declare function canResetStarforce(gear:
|
|
68
|
+
export declare function canResetStarforce(gear: ReadonlyGear): boolean;
|
|
68
69
|
/**
|
|
69
70
|
* 장비의 스타포스 강화를 초기화합니다.
|
|
70
71
|
* @param gear 초기화할 장비.
|
|
@@ -73,3 +74,11 @@ export declare function canResetStarforce(gear: Gear): boolean;
|
|
|
73
74
|
* 스타포스 강화를 초기화할 수 없는 장비일 경우.
|
|
74
75
|
*/
|
|
75
76
|
export declare function resetStarforce(gear: Gear): void;
|
|
77
|
+
/**
|
|
78
|
+
* 장비의 최대 스타포스 강화를 계산합니다.
|
|
79
|
+
*
|
|
80
|
+
* 놀라운 장비 강화 주문서가 사용되었을 경우 최대 `15`입니다.
|
|
81
|
+
* @param gear 계산할 장비.
|
|
82
|
+
* @returns 장비의 최대 스타포스 강화.
|
|
83
|
+
*/
|
|
84
|
+
export declare function getMaxStar(gear: ReadonlyGear): number;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { GearUpgradeOption } from '../data';
|
|
2
2
|
import { Gear } from '../Gear';
|
|
3
|
+
import { ReadonlyGear } from '../ReadonlyGear';
|
|
3
4
|
/**
|
|
4
5
|
* 주문서
|
|
5
6
|
*/
|
|
@@ -16,27 +17,13 @@ export interface Scroll {
|
|
|
16
17
|
* @param gear 확인할 장비.
|
|
17
18
|
* @returns 지원할 경우 `true`; 아닐 경우 `false`.
|
|
18
19
|
*/
|
|
19
|
-
export declare function supportsUpgrade(gear:
|
|
20
|
-
/**
|
|
21
|
-
* 장비에 황금 망치를 적용할 수 있는 상태인지 여부를 확인합니다.
|
|
22
|
-
* @param gear 확인할 장비.
|
|
23
|
-
* @returns 적용할 수 있을 경우 `true`; 아닐 경우 `false`.
|
|
24
|
-
*/
|
|
25
|
-
export declare function canGoldenHammer(gear: Gear): boolean;
|
|
26
|
-
/**
|
|
27
|
-
* 장비에 황금 망치를 적용합니다.
|
|
28
|
-
* @param gear 적용할 장비.
|
|
29
|
-
*
|
|
30
|
-
* @throws {@link TypeError}
|
|
31
|
-
* 황금 망치를 적용할 수 없는 상태의 장비일 경우.
|
|
32
|
-
*/
|
|
33
|
-
export declare function applyGoldenHammer(gear: Gear): void;
|
|
20
|
+
export declare function supportsUpgrade(gear: ReadonlyGear): boolean;
|
|
34
21
|
/**
|
|
35
22
|
* 장비에 주문서 실패를 적용할 수 있는 상태인지 여부를 확인합니다.
|
|
36
23
|
* @param gear 확인할 장비.
|
|
37
24
|
* @returns 적용할 수 있을 경우 `true`; 아닐 경우 `false`.
|
|
38
25
|
*/
|
|
39
|
-
export declare function canFailScroll(gear:
|
|
26
|
+
export declare function canFailScroll(gear: ReadonlyGear): boolean;
|
|
40
27
|
/**
|
|
41
28
|
* 장비에 주문서 실패를 적용합니다.
|
|
42
29
|
* @param gear 적용할 장비.
|
|
@@ -50,7 +37,7 @@ export declare function failScroll(gear: Gear): void;
|
|
|
50
37
|
* @param gear 확인할 장비.
|
|
51
38
|
* @returns 복구할 수 있을 경우 `true`; 아닐 경우 `false`.
|
|
52
39
|
*/
|
|
53
|
-
export declare function canResileScroll(gear:
|
|
40
|
+
export declare function canResileScroll(gear: ReadonlyGear): boolean;
|
|
54
41
|
/**
|
|
55
42
|
* 장비의 주문서 실패로 차감된 업그레이드 가능 횟수를 1회 복구합니다.
|
|
56
43
|
* @param gear 복구할 장비.
|
|
@@ -64,7 +51,7 @@ export declare function resileScroll(gear: Gear): void;
|
|
|
64
51
|
* @param gear 확인할 장비.
|
|
65
52
|
* @returns 초기화할 수 있을 경우 `true`; 아닐 경우 `false`.
|
|
66
53
|
*/
|
|
67
|
-
export declare function canResetUpgrade(gear:
|
|
54
|
+
export declare function canResetUpgrade(gear: ReadonlyGear): boolean;
|
|
68
55
|
/**
|
|
69
56
|
* 장비의 주문서 강화를 초기화합니다.
|
|
70
57
|
* @param gear 초기화할 장비.
|
|
@@ -78,7 +65,7 @@ export declare function resetUpgrade(gear: Gear): void;
|
|
|
78
65
|
* @param gear 확인할 장비.
|
|
79
66
|
* @returns 적용할 수 있을 경우 `true`; 아닐 경우 `false`.
|
|
80
67
|
*/
|
|
81
|
-
export declare function canApplyScroll(gear:
|
|
68
|
+
export declare function canApplyScroll(gear: ReadonlyGear): boolean;
|
|
82
69
|
/**
|
|
83
70
|
* 장비에 주문서를 적용합니다.
|
|
84
71
|
* @param gear 적용할 장비.
|
package/dist/lib/errors.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export declare const enum ErrorMessage {
|
|
2
|
+
AddOption_InvalidApplyGear = "\uCD94\uAC00 \uC635\uC158\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.",
|
|
3
|
+
AddOption_InvalidResetGear = "\uCD94\uAC00 \uC635\uC158\uC744 \uCD08\uAE30\uD654\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.",
|
|
2
4
|
AddOption_InvalidAttackPowerGear = "\uACF5\uACA9\uB825/\uB9C8\uB825 \uCD94\uAC00 \uC635\uC158\uC740 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8 60 \uC774\uC0C1\uC758 \uBB34\uAE30 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",
|
|
3
5
|
AddOption_UnknownLongSwordGear = "\uACF5\uACA9\uB825/\uB9C8\uB825 \uCD94\uAC00 \uC635\uC158\uC744 \uBD80\uC5EC\uD560 \uC218 \uC5C6\uB294 \uD0DC\uB3C4 \uC7A5\uBE44\uC785\uB2C8\uB2E4. (Please submit issue with the gear info)",
|
|
4
6
|
AddOption_InvalidSpeedGear = "\uC774\uB3D9\uC18D\uB3C4 \uCD94\uAC00 \uC635\uC158\uC740 \uBB34\uAE30\uAC00 \uC544\uB2CC \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",
|
package/dist/lib/gearOption.d.ts
CHANGED
|
@@ -7,3 +7,5 @@ import { GearOption } from './data';
|
|
|
7
7
|
* @returns 장비 옵션 프록시.
|
|
8
8
|
*/
|
|
9
9
|
export declare function toGearOption(option: Partial<GearOption>): GearOption;
|
|
10
|
+
export declare function addOptions(option: Partial<GearOption>, ...options: Partial<GearOption>[]): void;
|
|
11
|
+
export declare function sumOptions(...options: Partial<GearOption>[]): Partial<GearOption>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { GearData } from '../data';
|
|
2
|
+
import { Gear } from '../Gear';
|
|
3
|
+
import { ReadonlyGear } from '../ReadonlyGear';
|
|
4
|
+
import { resources } from './gearFixtureResources';
|
|
5
|
+
import { Patch } from './gearPatch';
|
|
6
|
+
type GearNames = keyof typeof resources;
|
|
7
|
+
export type CreateGearParams = [name?: GearNames, patches?: Patch[]] | [data: Partial<GearData>] | [name: GearNames, data: Partial<GearData>, patches?: Patch[]];
|
|
8
|
+
export declare function createGear(name?: GearNames, patches?: Patch[]): Gear;
|
|
9
|
+
export declare function createGear(data: Partial<GearData>): Gear;
|
|
10
|
+
export declare function createGear(name: GearNames, data: Partial<GearData>, patches?: Patch[]): Gear;
|
|
11
|
+
export declare function createReadonlyGear(name?: GearNames, data?: Partial<GearData>): ReadonlyGear;
|
|
12
|
+
export declare function createReadonlyGear(data: Partial<GearData>): ReadonlyGear;
|
|
13
|
+
export {};
|