narrat 2.14.3 → 2.15.0-alpha.2
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/config/config-input.d.ts +22 -6
- package/dist/config/config-output.d.ts +24 -6
- package/dist/config/skillchecks-config.d.ts +70 -0
- package/dist/config/skills-config.d.ts +0 -19
- package/dist/config.d.ts +30 -6
- package/dist/narrat.es.js +8531 -8443
- package/dist/narrat.es.js.map +1 -1
- package/dist/narrat.umd.js +89 -88
- package/dist/narrat.umd.js.map +1 -1
- package/dist/stores/main-store.d.ts +0 -12
- package/dist/utils/skillchecks.d.ts +10 -1
- package/dist/utils/skillchecks.test.d.ts +1 -0
- package/dist/vm/commands/choice.d.ts +3 -6
- package/dist/vm/commands/skill-commands.d.ts +2 -2
- package/dist/vm/vm-helpers.d.ts +2 -1
- package/package.json +1 -1
|
@@ -111,17 +111,33 @@ export declare const ConfigInputSchema: import("@sinclair/typebox").TObject<{
|
|
|
111
111
|
hidden: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
112
112
|
icon: import("@sinclair/typebox").TString;
|
|
113
113
|
}>>>;
|
|
114
|
-
skillChecks: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
115
|
-
rollRange: import("@sinclair/typebox").TNumber;
|
|
116
|
-
skillMultiplier: import("@sinclair/typebox").TNumber;
|
|
117
|
-
failureChance: import("@sinclair/typebox").TNumber;
|
|
118
|
-
difficultyText: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString]>>;
|
|
119
|
-
}>>;
|
|
120
114
|
skillOptions: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
121
115
|
xpPerLevel: import("@sinclair/typebox").TNumber;
|
|
122
116
|
notifyLevelUp: import("@sinclair/typebox").TBoolean;
|
|
123
117
|
}>>;
|
|
124
118
|
}>]>>;
|
|
119
|
+
skillChecks: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
120
|
+
options: import("@sinclair/typebox").TObject<{
|
|
121
|
+
diceRange: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TNumber]>;
|
|
122
|
+
diceCount: import("@sinclair/typebox").TNumber;
|
|
123
|
+
difficultyText: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString]>>;
|
|
124
|
+
extraPointsPerLevel: import("@sinclair/typebox").TNumber;
|
|
125
|
+
extraDicePerLevel: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
126
|
+
successOnRollsBelowThreshold: import("@sinclair/typebox").TBoolean;
|
|
127
|
+
showDifficultyText: import("@sinclair/typebox").TBoolean;
|
|
128
|
+
showDifficultyNumber: import("@sinclair/typebox").TBoolean;
|
|
129
|
+
showDifficultyWithoutModifiers: import("@sinclair/typebox").TBoolean;
|
|
130
|
+
finalRollIsHighest: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
131
|
+
finalRollIsLowest: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
132
|
+
}>;
|
|
133
|
+
skillChecks: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
134
|
+
skill: import("@sinclair/typebox").TString;
|
|
135
|
+
difficulty: import("@sinclair/typebox").TNumber;
|
|
136
|
+
winsNeeded: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
137
|
+
hideAfterRoll: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
138
|
+
repeatable: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
139
|
+
}>>;
|
|
140
|
+
}>]>>;
|
|
125
141
|
scripts: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>]>;
|
|
126
142
|
audio: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
127
143
|
files: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
@@ -9,6 +9,7 @@ import { CharactersFilesConfig } from './characters-config';
|
|
|
9
9
|
import { LayoutConfig } from './layout-config';
|
|
10
10
|
import { TooltipsConfig } from './tooltips-config';
|
|
11
11
|
import { AchievementsConfig } from './achievements-config';
|
|
12
|
+
import { SkillChecksConfig } from './skillchecks-config';
|
|
12
13
|
export interface Config {
|
|
13
14
|
baseAssetsPath: string;
|
|
14
15
|
baseDataPath: string;
|
|
@@ -26,6 +27,7 @@ export interface Config {
|
|
|
26
27
|
screens: ScreensConfig;
|
|
27
28
|
buttons: ButtonsConfig;
|
|
28
29
|
skills: SkillsConfig;
|
|
30
|
+
skillChecks: SkillChecksConfig;
|
|
29
31
|
scripts: string[];
|
|
30
32
|
audio: AudioConfig;
|
|
31
33
|
notifications: NotificationsConfig;
|
|
@@ -140,17 +142,33 @@ export declare const defaultConfig: {
|
|
|
140
142
|
startingLevel: number;
|
|
141
143
|
icon: string;
|
|
142
144
|
}>;
|
|
143
|
-
skillChecks: {
|
|
144
|
-
rollRange: number;
|
|
145
|
-
skillMultiplier: number;
|
|
146
|
-
failureChance: number;
|
|
147
|
-
difficultyText: [number, string][];
|
|
148
|
-
};
|
|
149
145
|
skillOptions: {
|
|
150
146
|
xpPerLevel: number;
|
|
151
147
|
notifyLevelUp: boolean;
|
|
152
148
|
};
|
|
153
149
|
};
|
|
150
|
+
skillChecks: {
|
|
151
|
+
options: {
|
|
152
|
+
extraDicePerLevel?: number | undefined;
|
|
153
|
+
finalRollIsHighest?: boolean | undefined;
|
|
154
|
+
finalRollIsLowest?: boolean | undefined;
|
|
155
|
+
diceRange: [number, number];
|
|
156
|
+
diceCount: number;
|
|
157
|
+
difficultyText: [number, string][];
|
|
158
|
+
extraPointsPerLevel: number;
|
|
159
|
+
successOnRollsBelowThreshold: boolean;
|
|
160
|
+
showDifficultyText: boolean;
|
|
161
|
+
showDifficultyNumber: boolean;
|
|
162
|
+
showDifficultyWithoutModifiers: boolean;
|
|
163
|
+
};
|
|
164
|
+
skillChecks: Record<string, {
|
|
165
|
+
winsNeeded?: number | undefined;
|
|
166
|
+
hideAfterRoll?: boolean | undefined;
|
|
167
|
+
repeatable?: boolean | undefined;
|
|
168
|
+
skill: string;
|
|
169
|
+
difficulty: number;
|
|
170
|
+
}>;
|
|
171
|
+
};
|
|
154
172
|
scripts: never[];
|
|
155
173
|
audio: AudioConfig;
|
|
156
174
|
notifications: {
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { Static } from '@sinclair/typebox';
|
|
2
|
+
export declare const SkillCheckOptionsConfigSchema: import("@sinclair/typebox").TObject<{
|
|
3
|
+
diceRange: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TNumber]>;
|
|
4
|
+
diceCount: import("@sinclair/typebox").TNumber;
|
|
5
|
+
difficultyText: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString]>>;
|
|
6
|
+
extraPointsPerLevel: import("@sinclair/typebox").TNumber;
|
|
7
|
+
extraDicePerLevel: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
8
|
+
successOnRollsBelowThreshold: import("@sinclair/typebox").TBoolean;
|
|
9
|
+
showDifficultyText: import("@sinclair/typebox").TBoolean;
|
|
10
|
+
showDifficultyNumber: import("@sinclair/typebox").TBoolean;
|
|
11
|
+
showDifficultyWithoutModifiers: import("@sinclair/typebox").TBoolean;
|
|
12
|
+
finalRollIsHighest: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
13
|
+
finalRollIsLowest: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
14
|
+
}>;
|
|
15
|
+
export type SkillCheckOptionsConfig = Static<typeof SkillCheckOptionsConfigSchema>;
|
|
16
|
+
export declare const SkillCheckConfigSchema: import("@sinclair/typebox").TObject<{
|
|
17
|
+
skill: import("@sinclair/typebox").TString;
|
|
18
|
+
difficulty: import("@sinclair/typebox").TNumber;
|
|
19
|
+
winsNeeded: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
20
|
+
hideAfterRoll: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
21
|
+
repeatable: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
22
|
+
}>;
|
|
23
|
+
export type SkillCheckConfig = Static<typeof SkillCheckConfigSchema>;
|
|
24
|
+
export declare const SkillChecksInputConfigSchema: import("@sinclair/typebox").TObject<{
|
|
25
|
+
options: import("@sinclair/typebox").TObject<{
|
|
26
|
+
diceRange: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TNumber]>;
|
|
27
|
+
diceCount: import("@sinclair/typebox").TNumber;
|
|
28
|
+
difficultyText: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString]>>;
|
|
29
|
+
extraPointsPerLevel: import("@sinclair/typebox").TNumber;
|
|
30
|
+
extraDicePerLevel: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
31
|
+
successOnRollsBelowThreshold: import("@sinclair/typebox").TBoolean;
|
|
32
|
+
showDifficultyText: import("@sinclair/typebox").TBoolean;
|
|
33
|
+
showDifficultyNumber: import("@sinclair/typebox").TBoolean;
|
|
34
|
+
showDifficultyWithoutModifiers: import("@sinclair/typebox").TBoolean;
|
|
35
|
+
finalRollIsHighest: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
36
|
+
finalRollIsLowest: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
37
|
+
}>;
|
|
38
|
+
skillChecks: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
39
|
+
skill: import("@sinclair/typebox").TString;
|
|
40
|
+
difficulty: import("@sinclair/typebox").TNumber;
|
|
41
|
+
winsNeeded: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
42
|
+
hideAfterRoll: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
43
|
+
repeatable: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
44
|
+
}>>;
|
|
45
|
+
}>;
|
|
46
|
+
export type SkillChecksInputConfig = Static<typeof SkillChecksInputConfigSchema>;
|
|
47
|
+
export declare const SkillChecksConfigSchema: import("@sinclair/typebox").TObject<{
|
|
48
|
+
options: import("@sinclair/typebox").TObject<{
|
|
49
|
+
diceRange: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TNumber]>;
|
|
50
|
+
diceCount: import("@sinclair/typebox").TNumber;
|
|
51
|
+
difficultyText: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString]>>;
|
|
52
|
+
extraPointsPerLevel: import("@sinclair/typebox").TNumber;
|
|
53
|
+
extraDicePerLevel: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
54
|
+
successOnRollsBelowThreshold: import("@sinclair/typebox").TBoolean;
|
|
55
|
+
showDifficultyText: import("@sinclair/typebox").TBoolean;
|
|
56
|
+
showDifficultyNumber: import("@sinclair/typebox").TBoolean;
|
|
57
|
+
showDifficultyWithoutModifiers: import("@sinclair/typebox").TBoolean;
|
|
58
|
+
finalRollIsHighest: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
59
|
+
finalRollIsLowest: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
60
|
+
}>;
|
|
61
|
+
skillChecks: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
62
|
+
skill: import("@sinclair/typebox").TString;
|
|
63
|
+
difficulty: import("@sinclair/typebox").TNumber;
|
|
64
|
+
winsNeeded: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
65
|
+
hideAfterRoll: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
66
|
+
repeatable: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
67
|
+
}>>;
|
|
68
|
+
}>;
|
|
69
|
+
export type SkillChecksConfig = Static<typeof SkillChecksConfigSchema>;
|
|
70
|
+
export declare const defaultSkillChecksConfig: SkillChecksConfig;
|
|
@@ -20,13 +20,6 @@ export declare const SkillOptionsSchema: import("@sinclair/typebox").TObject<{
|
|
|
20
20
|
notifyLevelUp: import("@sinclair/typebox").TBoolean;
|
|
21
21
|
}>;
|
|
22
22
|
export type SkillOptions = Static<typeof SkillOptionsSchema>;
|
|
23
|
-
export declare const SkillChecksConfigSchema: import("@sinclair/typebox").TObject<{
|
|
24
|
-
rollRange: import("@sinclair/typebox").TNumber;
|
|
25
|
-
skillMultiplier: import("@sinclair/typebox").TNumber;
|
|
26
|
-
failureChance: import("@sinclair/typebox").TNumber;
|
|
27
|
-
difficultyText: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString]>>;
|
|
28
|
-
}>;
|
|
29
|
-
export type SkillChecksConfig = Static<typeof SkillChecksConfigSchema>;
|
|
30
23
|
export declare const SkillsConfigSchema: import("@sinclair/typebox").TObject<{
|
|
31
24
|
skills: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
32
25
|
name: import("@sinclair/typebox").TString;
|
|
@@ -35,12 +28,6 @@ export declare const SkillsConfigSchema: import("@sinclair/typebox").TObject<{
|
|
|
35
28
|
hidden: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
36
29
|
icon: import("@sinclair/typebox").TString;
|
|
37
30
|
}>>;
|
|
38
|
-
skillChecks: import("@sinclair/typebox").TObject<{
|
|
39
|
-
rollRange: import("@sinclair/typebox").TNumber;
|
|
40
|
-
skillMultiplier: import("@sinclair/typebox").TNumber;
|
|
41
|
-
failureChance: import("@sinclair/typebox").TNumber;
|
|
42
|
-
difficultyText: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString]>>;
|
|
43
|
-
}>;
|
|
44
31
|
skillOptions: import("@sinclair/typebox").TObject<{
|
|
45
32
|
xpPerLevel: import("@sinclair/typebox").TNumber;
|
|
46
33
|
notifyLevelUp: import("@sinclair/typebox").TBoolean;
|
|
@@ -55,12 +42,6 @@ export declare const SkillsInputConfigSchema: import("@sinclair/typebox").TObjec
|
|
|
55
42
|
hidden: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
56
43
|
icon: import("@sinclair/typebox").TString;
|
|
57
44
|
}>>>;
|
|
58
|
-
skillChecks: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
59
|
-
rollRange: import("@sinclair/typebox").TNumber;
|
|
60
|
-
skillMultiplier: import("@sinclair/typebox").TNumber;
|
|
61
|
-
failureChance: import("@sinclair/typebox").TNumber;
|
|
62
|
-
difficultyText: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString]>>;
|
|
63
|
-
}>>;
|
|
64
45
|
skillOptions: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
65
46
|
xpPerLevel: import("@sinclair/typebox").TNumber;
|
|
66
47
|
notifyLevelUp: import("@sinclair/typebox").TBoolean;
|
package/dist/config.d.ts
CHANGED
|
@@ -15,17 +15,33 @@ export declare function skillsConfig(): {
|
|
|
15
15
|
startingLevel: number;
|
|
16
16
|
icon: string;
|
|
17
17
|
}>;
|
|
18
|
-
skillChecks: {
|
|
19
|
-
rollRange: number;
|
|
20
|
-
skillMultiplier: number;
|
|
21
|
-
failureChance: number;
|
|
22
|
-
difficultyText: [number, string][];
|
|
23
|
-
};
|
|
24
18
|
skillOptions: {
|
|
25
19
|
xpPerLevel: number;
|
|
26
20
|
notifyLevelUp: boolean;
|
|
27
21
|
};
|
|
28
22
|
};
|
|
23
|
+
export declare function skillChecksConfig(): {
|
|
24
|
+
options: {
|
|
25
|
+
extraDicePerLevel?: number | undefined;
|
|
26
|
+
finalRollIsHighest?: boolean | undefined;
|
|
27
|
+
finalRollIsLowest?: boolean | undefined;
|
|
28
|
+
diceRange: [number, number];
|
|
29
|
+
diceCount: number;
|
|
30
|
+
difficultyText: [number, string][];
|
|
31
|
+
extraPointsPerLevel: number;
|
|
32
|
+
successOnRollsBelowThreshold: boolean;
|
|
33
|
+
showDifficultyText: boolean;
|
|
34
|
+
showDifficultyNumber: boolean;
|
|
35
|
+
showDifficultyWithoutModifiers: boolean;
|
|
36
|
+
};
|
|
37
|
+
skillChecks: Record<string, {
|
|
38
|
+
winsNeeded?: number | undefined;
|
|
39
|
+
hideAfterRoll?: boolean | undefined;
|
|
40
|
+
repeatable?: boolean | undefined;
|
|
41
|
+
skill: string;
|
|
42
|
+
difficulty: number;
|
|
43
|
+
}>;
|
|
44
|
+
};
|
|
29
45
|
export declare function itemsConfig(): {
|
|
30
46
|
items: Record<string, {
|
|
31
47
|
category?: string | undefined;
|
|
@@ -149,6 +165,14 @@ export declare function getSkillConfig(id: string): {
|
|
|
149
165
|
startingLevel: number;
|
|
150
166
|
icon: string;
|
|
151
167
|
};
|
|
168
|
+
export declare function getSkillCheckConfig(id: string): {
|
|
169
|
+
winsNeeded?: number | undefined;
|
|
170
|
+
hideAfterRoll?: boolean | undefined;
|
|
171
|
+
repeatable?: boolean | undefined;
|
|
172
|
+
skill: string;
|
|
173
|
+
difficulty: number;
|
|
174
|
+
};
|
|
175
|
+
export declare function skillCheckConfigExists(id: string): boolean;
|
|
152
176
|
export declare function getImageUrl(imageKeyOrUrl: string): string;
|
|
153
177
|
export declare function getAssetUrl(assetPath: string): string;
|
|
154
178
|
export declare function getSplitConfigUrl(basePath: string, url: string): string;
|