optolith-database-schema 0.22.0 → 0.23.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/CHANGELOG.md +31 -0
- package/gen/types.d.ts +1295 -1182
- package/lib/types/Locale.d.ts +97 -133
- package/lib/types/Locale.js +147 -134
- package/lib/types/equipment/item/Animal.d.ts +1 -1
- package/lib/types/equipment/item/AnimalCare.d.ts +1 -1
- package/lib/types/equipment/item/Armor.d.ts +44 -0
- package/lib/types/equipment/item/Armor.js +9 -1
- package/lib/types/equipment/item/BandageOrRemedy.d.ts +45 -9
- package/lib/types/equipment/item/CeremonialItem.d.ts +45 -9
- package/lib/types/equipment/item/Clothes.d.ts +45 -9
- package/lib/types/equipment/item/Container.d.ts +45 -9
- package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +77 -20
- package/lib/types/equipment/item/EquipmentOfBlessedOnes.js +5 -6
- package/lib/types/equipment/item/IlluminationLightSource.d.ts +45 -9
- package/lib/types/equipment/item/IlluminationRefillOrSupply.d.ts +45 -9
- package/lib/types/equipment/item/Jewelry.d.ts +1 -1
- package/lib/types/equipment/item/Laboratory.d.ts +1 -1
- package/lib/types/equipment/item/Liebesspielzeug.d.ts +45 -9
- package/lib/types/equipment/item/LuxuryGood.d.ts +45 -9
- package/lib/types/equipment/item/MagicalArtifact.d.ts +61 -21
- package/lib/types/equipment/item/MagicalArtifact.js +33 -3
- package/lib/types/equipment/item/MusicalInstrument.d.ts +48 -9
- package/lib/types/equipment/item/MusicalInstrument.js +5 -1
- package/lib/types/equipment/item/OrienteeringAid.d.ts +45 -9
- package/lib/types/equipment/item/Poison.d.ts +41 -5
- package/lib/types/equipment/item/Poison.js +33 -1
- package/lib/types/equipment/item/RopeOrChain.d.ts +45 -9
- package/lib/types/equipment/item/Stationery.d.ts +45 -9
- package/lib/types/equipment/item/ThievesTool.d.ts +45 -9
- package/lib/types/equipment/item/ToolOfTheTrade.d.ts +1 -1
- package/lib/types/equipment/item/TravelGearOrTool.d.ts +45 -9
- package/lib/types/equipment/item/Vehicle.d.ts +1 -1
- package/lib/types/equipment/item/Weapon.d.ts +105 -78
- package/lib/types/equipment/item/Weapon.js +8 -46
- package/lib/types/equipment/item/WeaponAccessory.d.ts +45 -9
- package/lib/types/equipment/item/_Item.d.ts +148 -29
- package/lib/types/equipment/item/_Item.js +94 -2
- package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +52 -0
- package/lib/types/specialAbility/CombatStyleSpecialAbility.js +2 -1
- package/lib/types/specialAbility/MagicalSign.d.ts +75 -40
- package/lib/types/specialAbility/MagicalSign.js +23 -2
- package/package.json +2 -2
|
@@ -89,14 +89,28 @@ export declare const WeaponAccessory: Entity<"WeaponAccessory", {
|
|
|
89
89
|
length: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"Length", import("tsondb/schema/def").IntegerType, []>>, false>;
|
|
90
90
|
is_improvised_weapon: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
|
|
91
91
|
}>, false>;
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
92
|
+
restrictedTo: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedTo", Object<{
|
|
93
|
+
races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToRaces", Object<{
|
|
94
|
+
scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
95
|
+
}>, []>>, false>;
|
|
96
|
+
cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToCultures", Object<{
|
|
97
|
+
scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
98
|
+
}>, []>>, false>;
|
|
99
|
+
professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToProfessions", Object<{
|
|
100
|
+
scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
101
|
+
}>, []>>, false>;
|
|
102
|
+
magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToMagicalTraditions", Object<{
|
|
103
|
+
scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
104
|
+
}>, []>>, false>;
|
|
105
|
+
blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToBlessedTraditions", Object<{
|
|
106
|
+
scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"RestrictedToBlessedTraditionsScope", {
|
|
107
|
+
Specific: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>>;
|
|
108
|
+
Church: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
109
|
+
Shamanistic: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
110
|
+
}, []>>, true>;
|
|
111
|
+
isSanctifiedBy: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
|
|
112
|
+
}>, []>>, false>;
|
|
113
|
+
}>, []>>, false>;
|
|
100
114
|
translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"ImprovisedWeaponTranslation", {
|
|
101
115
|
advantage: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
|
|
102
116
|
disadvantage: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
|
|
@@ -118,6 +132,28 @@ export declare const WeaponAccessory: Entity<"WeaponAccessory", {
|
|
|
118
132
|
Arms: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
119
133
|
Legs: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
120
134
|
}, []>>, false>;
|
|
135
|
+
restrictedTo: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedTo", Object<{
|
|
136
|
+
races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToRaces", Object<{
|
|
137
|
+
scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
138
|
+
}>, []>>, false>;
|
|
139
|
+
cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToCultures", Object<{
|
|
140
|
+
scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
141
|
+
}>, []>>, false>;
|
|
142
|
+
professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToProfessions", Object<{
|
|
143
|
+
scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
144
|
+
}>, []>>, false>;
|
|
145
|
+
magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToMagicalTraditions", Object<{
|
|
146
|
+
scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
147
|
+
}>, []>>, false>;
|
|
148
|
+
blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToBlessedTraditions", Object<{
|
|
149
|
+
scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"RestrictedToBlessedTraditionsScope", {
|
|
150
|
+
Specific: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>>;
|
|
151
|
+
Church: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
152
|
+
Shamanistic: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
153
|
+
}, []>>, true>;
|
|
154
|
+
isSanctifiedBy: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
|
|
155
|
+
}>, []>>, false>;
|
|
156
|
+
}>, []>>, false>;
|
|
121
157
|
translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"SecondaryArmorTranslation", {
|
|
122
158
|
advantage: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
|
|
123
159
|
disadvantage: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
|
|
@@ -164,7 +200,7 @@ export declare const WeaponAccessory: Entity<"WeaponAccessory", {
|
|
|
164
200
|
}, []>>>, false>;
|
|
165
201
|
}>, true>;
|
|
166
202
|
}>, []>>>, []>>, true>;
|
|
167
|
-
translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}
|
|
203
|
+
translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}Translation`, {
|
|
168
204
|
name: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, true>;
|
|
169
205
|
secondary_name: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
|
|
170
206
|
note: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Array, Entity, Enum, EnumCase, Float, IncludeIdentifier, Integer, Object, String, TypeAlias } from "tsondb/schema/def";
|
|
1
|
+
import { Array, Boolean, Entity, Enum, EnumCase, Float, IncludeIdentifier, Integer, Object, String, TypeAlias } from "tsondb/schema/def";
|
|
2
2
|
export declare const DefaultItem: (sourceUrl: string, singularName: string, pluralName?: string) => Entity<string, {
|
|
3
3
|
cost: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"Cost", {
|
|
4
4
|
Free: EnumCase<null>;
|
|
@@ -61,9 +61,9 @@ export declare const DefaultItem: (sourceUrl: string, singularName: string, plur
|
|
|
61
61
|
attack_penalty: import("tsondb/schema/def").MemberDecl<Integer, false>;
|
|
62
62
|
}>, []>>>;
|
|
63
63
|
}, []>>, false>;
|
|
64
|
-
is_parrying_weapon: import("tsondb/schema/def").MemberDecl<
|
|
65
|
-
is_two_handed_weapon: import("tsondb/schema/def").MemberDecl<
|
|
66
|
-
is_improvised_weapon: import("tsondb/schema/def").MemberDecl<
|
|
64
|
+
is_parrying_weapon: import("tsondb/schema/def").MemberDecl<Boolean, true>;
|
|
65
|
+
is_two_handed_weapon: import("tsondb/schema/def").MemberDecl<Boolean, true>;
|
|
66
|
+
is_improvised_weapon: import("tsondb/schema/def").MemberDecl<Boolean, true>;
|
|
67
67
|
}>, false>;
|
|
68
68
|
ranged_uses: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
|
|
69
69
|
damage: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RangedDamage", {
|
|
@@ -87,16 +87,30 @@ export declare const DefaultItem: (sourceUrl: string, singularName: string, plur
|
|
|
87
87
|
}>, []>>, true>;
|
|
88
88
|
ammunition: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, false>;
|
|
89
89
|
length: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Length", Integer, []>>, false>;
|
|
90
|
-
is_improvised_weapon: import("tsondb/schema/def").MemberDecl<
|
|
90
|
+
is_improvised_weapon: import("tsondb/schema/def").MemberDecl<Boolean, true>;
|
|
91
91
|
}>, false>;
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
92
|
+
restrictedTo: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedTo", Object<{
|
|
93
|
+
races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToRaces", Object<{
|
|
94
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
95
|
+
}>, []>>, false>;
|
|
96
|
+
cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToCultures", Object<{
|
|
97
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
98
|
+
}>, []>>, false>;
|
|
99
|
+
professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToProfessions", Object<{
|
|
100
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
101
|
+
}>, []>>, false>;
|
|
102
|
+
magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToMagicalTraditions", Object<{
|
|
103
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
104
|
+
}>, []>>, false>;
|
|
105
|
+
blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToBlessedTraditions", Object<{
|
|
106
|
+
scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RestrictedToBlessedTraditionsScope", {
|
|
107
|
+
Specific: EnumCase<Array<import("tsondb/schema/def").ReferenceIdentifierType>>;
|
|
108
|
+
Church: EnumCase<null>;
|
|
109
|
+
Shamanistic: EnumCase<null>;
|
|
110
|
+
}, []>>, true>;
|
|
111
|
+
isSanctifiedBy: import("tsondb/schema/def").MemberDecl<Boolean, true>;
|
|
112
|
+
}>, []>>, false>;
|
|
113
|
+
}>, []>>, false>;
|
|
100
114
|
translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"ImprovisedWeaponTranslation", {
|
|
101
115
|
advantage: import("tsondb/schema/def").MemberDecl<String, false>;
|
|
102
116
|
disadvantage: import("tsondb/schema/def").MemberDecl<String, false>;
|
|
@@ -105,7 +119,7 @@ export declare const DefaultItem: (sourceUrl: string, singularName: string, plur
|
|
|
105
119
|
Armor: EnumCase<IncludeIdentifier<[], TypeAlias<"SecondaryArmor", Object<{
|
|
106
120
|
protection: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Protection", Integer, []>>, true>;
|
|
107
121
|
encumbrance: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Encumbrance", Integer, []>>, true>;
|
|
108
|
-
has_additional_penalties: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"HasAdditionalPenalties",
|
|
122
|
+
has_additional_penalties: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"HasAdditionalPenalties", Boolean, []>>, true>;
|
|
109
123
|
armor_type: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
|
|
110
124
|
hit_zone: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"HitZone", {
|
|
111
125
|
Head: EnumCase<IncludeIdentifier<[], TypeAlias<"HeadHitZone", Object<{
|
|
@@ -118,6 +132,28 @@ export declare const DefaultItem: (sourceUrl: string, singularName: string, plur
|
|
|
118
132
|
Arms: EnumCase<null>;
|
|
119
133
|
Legs: EnumCase<null>;
|
|
120
134
|
}, []>>, false>;
|
|
135
|
+
restrictedTo: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedTo", Object<{
|
|
136
|
+
races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToRaces", Object<{
|
|
137
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
138
|
+
}>, []>>, false>;
|
|
139
|
+
cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToCultures", Object<{
|
|
140
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
141
|
+
}>, []>>, false>;
|
|
142
|
+
professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToProfessions", Object<{
|
|
143
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
144
|
+
}>, []>>, false>;
|
|
145
|
+
magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToMagicalTraditions", Object<{
|
|
146
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
147
|
+
}>, []>>, false>;
|
|
148
|
+
blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToBlessedTraditions", Object<{
|
|
149
|
+
scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RestrictedToBlessedTraditionsScope", {
|
|
150
|
+
Specific: EnumCase<Array<import("tsondb/schema/def").ReferenceIdentifierType>>;
|
|
151
|
+
Church: EnumCase<null>;
|
|
152
|
+
Shamanistic: EnumCase<null>;
|
|
153
|
+
}, []>>, true>;
|
|
154
|
+
isSanctifiedBy: import("tsondb/schema/def").MemberDecl<Boolean, true>;
|
|
155
|
+
}>, []>>, false>;
|
|
156
|
+
}>, []>>, false>;
|
|
121
157
|
translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"SecondaryArmorTranslation", {
|
|
122
158
|
advantage: import("tsondb/schema/def").MemberDecl<String, false>;
|
|
123
159
|
disadvantage: import("tsondb/schema/def").MemberDecl<String, false>;
|
|
@@ -164,7 +200,7 @@ export declare const DefaultItem: (sourceUrl: string, singularName: string, plur
|
|
|
164
200
|
}, []>>>, false>;
|
|
165
201
|
}>, true>;
|
|
166
202
|
}>, []>>>, []>>, true>;
|
|
167
|
-
translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}
|
|
203
|
+
translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}Translation`, {
|
|
168
204
|
name: import("tsondb/schema/def").MemberDecl<String, true>;
|
|
169
205
|
secondary_name: import("tsondb/schema/def").MemberDecl<String, false>;
|
|
170
206
|
note: import("tsondb/schema/def").MemberDecl<String, false>;
|
|
@@ -175,7 +211,7 @@ export declare const DefaultItem: (sourceUrl: string, singularName: string, plur
|
|
|
175
211
|
}>, []>>>, []>>, false>;
|
|
176
212
|
}>, true>;
|
|
177
213
|
}, undefined>;
|
|
178
|
-
export declare const DefaultItemTranslations: (singularName: string) => import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}
|
|
214
|
+
export declare const DefaultItemTranslations: (singularName: string) => import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}Translation`, {
|
|
179
215
|
name: import("tsondb/schema/def").MemberDecl<String, true>;
|
|
180
216
|
secondary_name: import("tsondb/schema/def").MemberDecl<String, false>;
|
|
181
217
|
note: import("tsondb/schema/def").MemberDecl<String, false>;
|
|
@@ -217,9 +253,9 @@ export declare const CombatUse: Enum<"CombatUse", {
|
|
|
217
253
|
attack_penalty: import("tsondb/schema/def").MemberDecl<Integer, false>;
|
|
218
254
|
}>, []>>>;
|
|
219
255
|
}, []>>, false>;
|
|
220
|
-
is_parrying_weapon: import("tsondb/schema/def").MemberDecl<
|
|
221
|
-
is_two_handed_weapon: import("tsondb/schema/def").MemberDecl<
|
|
222
|
-
is_improvised_weapon: import("tsondb/schema/def").MemberDecl<
|
|
256
|
+
is_parrying_weapon: import("tsondb/schema/def").MemberDecl<Boolean, true>;
|
|
257
|
+
is_two_handed_weapon: import("tsondb/schema/def").MemberDecl<Boolean, true>;
|
|
258
|
+
is_improvised_weapon: import("tsondb/schema/def").MemberDecl<Boolean, true>;
|
|
223
259
|
}>, false>;
|
|
224
260
|
ranged_uses: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
|
|
225
261
|
damage: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RangedDamage", {
|
|
@@ -243,16 +279,30 @@ export declare const CombatUse: Enum<"CombatUse", {
|
|
|
243
279
|
}>, []>>, true>;
|
|
244
280
|
ammunition: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, false>;
|
|
245
281
|
length: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Length", Integer, []>>, false>;
|
|
246
|
-
is_improvised_weapon: import("tsondb/schema/def").MemberDecl<
|
|
282
|
+
is_improvised_weapon: import("tsondb/schema/def").MemberDecl<Boolean, true>;
|
|
247
283
|
}>, false>;
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
284
|
+
restrictedTo: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedTo", Object<{
|
|
285
|
+
races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToRaces", Object<{
|
|
286
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
287
|
+
}>, []>>, false>;
|
|
288
|
+
cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToCultures", Object<{
|
|
289
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
290
|
+
}>, []>>, false>;
|
|
291
|
+
professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToProfessions", Object<{
|
|
292
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
293
|
+
}>, []>>, false>;
|
|
294
|
+
magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToMagicalTraditions", Object<{
|
|
295
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
296
|
+
}>, []>>, false>;
|
|
297
|
+
blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToBlessedTraditions", Object<{
|
|
298
|
+
scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RestrictedToBlessedTraditionsScope", {
|
|
299
|
+
Specific: EnumCase<Array<import("tsondb/schema/def").ReferenceIdentifierType>>;
|
|
300
|
+
Church: EnumCase<null>;
|
|
301
|
+
Shamanistic: EnumCase<null>;
|
|
302
|
+
}, []>>, true>;
|
|
303
|
+
isSanctifiedBy: import("tsondb/schema/def").MemberDecl<Boolean, true>;
|
|
304
|
+
}>, []>>, false>;
|
|
305
|
+
}>, []>>, false>;
|
|
256
306
|
translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"ImprovisedWeaponTranslation", {
|
|
257
307
|
advantage: import("tsondb/schema/def").MemberDecl<String, false>;
|
|
258
308
|
disadvantage: import("tsondb/schema/def").MemberDecl<String, false>;
|
|
@@ -261,7 +311,7 @@ export declare const CombatUse: Enum<"CombatUse", {
|
|
|
261
311
|
Armor: EnumCase<IncludeIdentifier<[], TypeAlias<"SecondaryArmor", Object<{
|
|
262
312
|
protection: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Protection", Integer, []>>, true>;
|
|
263
313
|
encumbrance: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Encumbrance", Integer, []>>, true>;
|
|
264
|
-
has_additional_penalties: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"HasAdditionalPenalties",
|
|
314
|
+
has_additional_penalties: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"HasAdditionalPenalties", Boolean, []>>, true>;
|
|
265
315
|
armor_type: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
|
|
266
316
|
hit_zone: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"HitZone", {
|
|
267
317
|
Head: EnumCase<IncludeIdentifier<[], TypeAlias<"HeadHitZone", Object<{
|
|
@@ -274,6 +324,28 @@ export declare const CombatUse: Enum<"CombatUse", {
|
|
|
274
324
|
Arms: EnumCase<null>;
|
|
275
325
|
Legs: EnumCase<null>;
|
|
276
326
|
}, []>>, false>;
|
|
327
|
+
restrictedTo: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedTo", Object<{
|
|
328
|
+
races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToRaces", Object<{
|
|
329
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
330
|
+
}>, []>>, false>;
|
|
331
|
+
cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToCultures", Object<{
|
|
332
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
333
|
+
}>, []>>, false>;
|
|
334
|
+
professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToProfessions", Object<{
|
|
335
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
336
|
+
}>, []>>, false>;
|
|
337
|
+
magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToMagicalTraditions", Object<{
|
|
338
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
339
|
+
}>, []>>, false>;
|
|
340
|
+
blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToBlessedTraditions", Object<{
|
|
341
|
+
scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RestrictedToBlessedTraditionsScope", {
|
|
342
|
+
Specific: EnumCase<Array<import("tsondb/schema/def").ReferenceIdentifierType>>;
|
|
343
|
+
Church: EnumCase<null>;
|
|
344
|
+
Shamanistic: EnumCase<null>;
|
|
345
|
+
}, []>>, true>;
|
|
346
|
+
isSanctifiedBy: import("tsondb/schema/def").MemberDecl<Boolean, true>;
|
|
347
|
+
}>, []>>, false>;
|
|
348
|
+
}>, []>>, false>;
|
|
277
349
|
translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"SecondaryArmorTranslation", {
|
|
278
350
|
advantage: import("tsondb/schema/def").MemberDecl<String, false>;
|
|
279
351
|
disadvantage: import("tsondb/schema/def").MemberDecl<String, false>;
|
|
@@ -318,3 +390,50 @@ export declare const Complexity: Enum<"Complexity", {
|
|
|
318
390
|
export declare const ComplexComplexity: TypeAlias<"ComplexComplexity", Object<{
|
|
319
391
|
ap_value: import("tsondb/schema/def").MemberDecl<Integer, true>;
|
|
320
392
|
}>, []>;
|
|
393
|
+
export declare const RestrictedTo: TypeAlias<"RestrictedTo", Object<{
|
|
394
|
+
races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToRaces", Object<{
|
|
395
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
396
|
+
}>, []>>, false>;
|
|
397
|
+
cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToCultures", Object<{
|
|
398
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
399
|
+
}>, []>>, false>;
|
|
400
|
+
professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToProfessions", Object<{
|
|
401
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
402
|
+
}>, []>>, false>;
|
|
403
|
+
magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToMagicalTraditions", Object<{
|
|
404
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
405
|
+
}>, []>>, false>;
|
|
406
|
+
blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToBlessedTraditions", Object<{
|
|
407
|
+
scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RestrictedToBlessedTraditionsScope", {
|
|
408
|
+
Specific: EnumCase<Array<import("tsondb/schema/def").ReferenceIdentifierType>>;
|
|
409
|
+
Church: EnumCase<null>;
|
|
410
|
+
Shamanistic: EnumCase<null>;
|
|
411
|
+
}, []>>, true>;
|
|
412
|
+
isSanctifiedBy: import("tsondb/schema/def").MemberDecl<Boolean, true>;
|
|
413
|
+
}>, []>>, false>;
|
|
414
|
+
}>, []>;
|
|
415
|
+
export declare const RestrictedToRaces: TypeAlias<"RestrictedToRaces", Object<{
|
|
416
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
417
|
+
}>, []>;
|
|
418
|
+
export declare const RestrictedToCultures: TypeAlias<"RestrictedToCultures", Object<{
|
|
419
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
420
|
+
}>, []>;
|
|
421
|
+
export declare const RestrictedToProfessions: TypeAlias<"RestrictedToProfessions", Object<{
|
|
422
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
423
|
+
}>, []>;
|
|
424
|
+
export declare const RestrictedToMagicalTraditions: TypeAlias<"RestrictedToMagicalTraditions", Object<{
|
|
425
|
+
scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
|
|
426
|
+
}>, []>;
|
|
427
|
+
export declare const RestrictedToBlessedTraditions: TypeAlias<"RestrictedToBlessedTraditions", Object<{
|
|
428
|
+
scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RestrictedToBlessedTraditionsScope", {
|
|
429
|
+
Specific: EnumCase<Array<import("tsondb/schema/def").ReferenceIdentifierType>>;
|
|
430
|
+
Church: EnumCase<null>;
|
|
431
|
+
Shamanistic: EnumCase<null>;
|
|
432
|
+
}, []>>, true>;
|
|
433
|
+
isSanctifiedBy: import("tsondb/schema/def").MemberDecl<Boolean, true>;
|
|
434
|
+
}>, []>;
|
|
435
|
+
export declare const RestrictedToBlessedTraditionsScope: Enum<"RestrictedToBlessedTraditionsScope", {
|
|
436
|
+
Specific: EnumCase<Array<import("tsondb/schema/def").ReferenceIdentifierType>>;
|
|
437
|
+
Church: EnumCase<null>;
|
|
438
|
+
Shamanistic: EnumCase<null>;
|
|
439
|
+
}, []>;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { Array, Entity, Enum, EnumCase, Float, IncludeIdentifier, Integer, Object, Optional, Required, String, TypeAlias, } from "tsondb/schema/def";
|
|
1
|
+
import { Array, Boolean, Entity, Enum, EnumCase, Float, IncludeIdentifier, Integer, Object, Optional, Required, String, TypeAlias, } from "tsondb/schema/def";
|
|
2
|
+
import { BlessedTraditionIdentifier, MagicalTraditionIdentifier } from "../../_Identifier.js";
|
|
2
3
|
import { NestedTranslationMap } from "../../Locale.js";
|
|
3
4
|
import { Errata } from "../../source/_Erratum.js";
|
|
4
5
|
import { src } from "../../source/_PublicationRef.js";
|
|
@@ -33,7 +34,7 @@ export const DefaultItem = (sourceUrl, singularName, pluralName) => Entity(sourc
|
|
|
33
34
|
}),
|
|
34
35
|
displayName: {},
|
|
35
36
|
});
|
|
36
|
-
export const DefaultItemTranslations = (singularName) => NestedTranslationMap(Required,
|
|
37
|
+
export const DefaultItemTranslations = (singularName) => NestedTranslationMap(Required, singularName, Object({
|
|
37
38
|
name: Required({
|
|
38
39
|
comment: "The item’s name.",
|
|
39
40
|
type: String({ minLength: 1 }),
|
|
@@ -142,3 +143,94 @@ export const ComplexComplexity = TypeAlias(import.meta.url, {
|
|
|
142
143
|
}),
|
|
143
144
|
}),
|
|
144
145
|
});
|
|
146
|
+
export const RestrictedTo = TypeAlias(import.meta.url, {
|
|
147
|
+
name: "RestrictedTo",
|
|
148
|
+
comment: "If the item is in any case restricted to a subset of characters. The differenciating aspect may be tradition, race, culture, or a profession. Each element must be applicable to a character. ",
|
|
149
|
+
type: () => Object({
|
|
150
|
+
races: Optional({
|
|
151
|
+
comment: "The item is restricted to one of a list of races. If only one race is allowed, the list may only have a single element.",
|
|
152
|
+
type: IncludeIdentifier(RestrictedToRaces),
|
|
153
|
+
}),
|
|
154
|
+
cultures: Optional({
|
|
155
|
+
comment: "The item is restricted to one of a list of cultures. If only one culture is allowed, the list may only have a single element.",
|
|
156
|
+
type: IncludeIdentifier(RestrictedToCultures),
|
|
157
|
+
}),
|
|
158
|
+
professions: Optional({
|
|
159
|
+
comment: "The item is restricted to one of a list of professions. If only one profession is allowed, the list may only have a single element.",
|
|
160
|
+
type: IncludeIdentifier(RestrictedToProfessions),
|
|
161
|
+
}),
|
|
162
|
+
magicalTraditions: Optional({
|
|
163
|
+
comment: "The item is restricted to one of a list of magical traditions. If only one magical tradition is allowed, the list may only have a single element.",
|
|
164
|
+
type: IncludeIdentifier(RestrictedToMagicalTraditions),
|
|
165
|
+
}),
|
|
166
|
+
blessedTraditions: Optional({
|
|
167
|
+
comment: "The item is restricted to one of a list of blessed traditions. If only one blessed tradition is allowed, the list may only have a single element.",
|
|
168
|
+
type: IncludeIdentifier(RestrictedToBlessedTraditions),
|
|
169
|
+
}),
|
|
170
|
+
}, { minProperties: 1 }),
|
|
171
|
+
});
|
|
172
|
+
export const RestrictedToRaces = TypeAlias(import.meta.url, {
|
|
173
|
+
name: "RestrictedToRaces",
|
|
174
|
+
comment: "The item is restricted to one of a list of races. If only one race is allowed, the list may only have a single element.",
|
|
175
|
+
type: () => Object({
|
|
176
|
+
scope: Required({
|
|
177
|
+
comment: "The item is restricted to one of a list of races. If only one race is allowed, the list may only have a single element.",
|
|
178
|
+
type: Array(MagicalTraditionIdentifier(), { minItems: 1, uniqueItems: true }),
|
|
179
|
+
}),
|
|
180
|
+
}),
|
|
181
|
+
});
|
|
182
|
+
export const RestrictedToCultures = TypeAlias(import.meta.url, {
|
|
183
|
+
name: "RestrictedToCultures",
|
|
184
|
+
comment: "The item is restricted to one of a list of cultures. If only one culture is allowed, the list may only have a single element.",
|
|
185
|
+
type: () => Object({
|
|
186
|
+
scope: Required({
|
|
187
|
+
comment: "The item is restricted to one of a list of cultures. If only one culture is allowed, the list may only have a single element.",
|
|
188
|
+
type: Array(MagicalTraditionIdentifier(), { minItems: 1, uniqueItems: true }),
|
|
189
|
+
}),
|
|
190
|
+
}),
|
|
191
|
+
});
|
|
192
|
+
export const RestrictedToProfessions = TypeAlias(import.meta.url, {
|
|
193
|
+
name: "RestrictedToProfessions",
|
|
194
|
+
comment: "The item is restricted to one of a list of professions. If only one profession is allowed, the list may only have a single element.",
|
|
195
|
+
type: () => Object({
|
|
196
|
+
scope: Required({
|
|
197
|
+
comment: "The item is restricted to one of a list of professions. If only one profession is allowed, the list may only have a single element.",
|
|
198
|
+
type: Array(MagicalTraditionIdentifier(), { minItems: 1, uniqueItems: true }),
|
|
199
|
+
}),
|
|
200
|
+
}),
|
|
201
|
+
});
|
|
202
|
+
export const RestrictedToMagicalTraditions = TypeAlias(import.meta.url, {
|
|
203
|
+
name: "RestrictedToMagicalTraditions",
|
|
204
|
+
comment: "The item is restricted to one of a list of magical traditions. If only one magical tradition is allowed, the list may only have a single element.",
|
|
205
|
+
type: () => Object({
|
|
206
|
+
scope: Required({
|
|
207
|
+
comment: "The item is restricted to one of a list of magical traditions. If only one magical tradition is allowed, the list may only have a single element.",
|
|
208
|
+
type: Array(MagicalTraditionIdentifier(), { minItems: 1, uniqueItems: true }),
|
|
209
|
+
}),
|
|
210
|
+
}),
|
|
211
|
+
});
|
|
212
|
+
export const RestrictedToBlessedTraditions = TypeAlias(import.meta.url, {
|
|
213
|
+
name: "RestrictedToBlessedTraditions",
|
|
214
|
+
comment: "The item is restricted to one of a list of blessed traditions. If only one blessed tradition is allowed, the list may only have a single element. The item may also be declared as sanctified.",
|
|
215
|
+
type: () => Object({
|
|
216
|
+
scope: Required({
|
|
217
|
+
comment: "The item is restricted to one of a list of blessed traditions. If only one blessed tradition is allowed, the list may only have a single element.",
|
|
218
|
+
type: IncludeIdentifier(RestrictedToBlessedTraditionsScope),
|
|
219
|
+
}),
|
|
220
|
+
isSanctifiedBy: Required({
|
|
221
|
+
comment: "The item is sanctified by the applicable listed tradition.",
|
|
222
|
+
type: Boolean(),
|
|
223
|
+
}),
|
|
224
|
+
}),
|
|
225
|
+
});
|
|
226
|
+
export const RestrictedToBlessedTraditionsScope = Enum(import.meta.url, {
|
|
227
|
+
name: "RestrictedToBlessedTraditionsScope",
|
|
228
|
+
comment: "The item is restricted to one of a list of blessed traditions. If only one blessed tradition is allowed, the list may only have a single element. Instead of providing an specific set of traditions, the restriction may also cover a category of blessed traditions.",
|
|
229
|
+
values: () => ({
|
|
230
|
+
Specific: EnumCase({
|
|
231
|
+
type: Array(BlessedTraditionIdentifier(), { minItems: 1, uniqueItems: true }),
|
|
232
|
+
}),
|
|
233
|
+
Church: EnumCase({ type: null }),
|
|
234
|
+
Shamanistic: EnumCase({ type: null }),
|
|
235
|
+
}),
|
|
236
|
+
});
|
|
@@ -911,6 +911,58 @@ export declare const CombatStyleSpecialAbility: Entity<"CombatStyleSpecialAbilit
|
|
|
911
911
|
}>, false>;
|
|
912
912
|
}, "parent">>, true>;
|
|
913
913
|
maximum: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
|
|
914
|
+
penalty: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"Penalty", {
|
|
915
|
+
Single: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"SinglePenalty", Object<{
|
|
916
|
+
value: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
|
|
917
|
+
applies_to_parry: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, false>;
|
|
918
|
+
}>, []>>>;
|
|
919
|
+
ByHandedness: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PenaltyByHandedness", Object<{
|
|
920
|
+
one_handed: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
|
|
921
|
+
two_handed: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
|
|
922
|
+
applies_to_parry: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, false>;
|
|
923
|
+
}>, []>>>;
|
|
924
|
+
ByActivation: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PenaltyByActivation", Object<{
|
|
925
|
+
active: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
|
|
926
|
+
inactive: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
|
|
927
|
+
applies_to_parry: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, false>;
|
|
928
|
+
}>, []>>>;
|
|
929
|
+
Selection: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PenaltySelection", Object<{
|
|
930
|
+
options: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"PenaltySelectionOptions", {
|
|
931
|
+
Specific: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"SpecificPenaltySelectionOptions", Object<{
|
|
932
|
+
list: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"SpecificPenaltySelectionOption", Object<{
|
|
933
|
+
value: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
|
|
934
|
+
}>, []>>>, true>;
|
|
935
|
+
}>, []>>>;
|
|
936
|
+
Range: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PenaltySelectionOptionsRange", Object<{
|
|
937
|
+
minimum: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
|
|
938
|
+
maximum: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
|
|
939
|
+
}>, []>>>;
|
|
940
|
+
}, []>>, true>;
|
|
941
|
+
}>, []>>>;
|
|
942
|
+
ByLevel: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PenaltyByLevel", Object<{
|
|
943
|
+
levels: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PenaltyByLevelLevel", Object<{
|
|
944
|
+
value: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
|
|
945
|
+
}>, []>>>, true>;
|
|
946
|
+
external: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PenaltyByExternalLevel", Object<{
|
|
947
|
+
id: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"CombatRelatedSpecialAbilityIdentifier", {
|
|
948
|
+
CombatSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
|
|
949
|
+
CombatStyleSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
|
|
950
|
+
AdvancedCombatSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
|
|
951
|
+
CommandSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
|
|
952
|
+
}, []>>, true>;
|
|
953
|
+
}>, []>>, false>;
|
|
954
|
+
}>, []>>>;
|
|
955
|
+
ByAttack: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PenaltyByAttack", Object<{
|
|
956
|
+
list: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PenaltyByAttackOrderItem", Object<{
|
|
957
|
+
value: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
|
|
958
|
+
}>, []>>>, true>;
|
|
959
|
+
initial_order: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
|
|
960
|
+
attack_replacement: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"PenaltyByAttackReplacement", {
|
|
961
|
+
Throw: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
962
|
+
}, []>>, false>;
|
|
963
|
+
}>, []>>>;
|
|
964
|
+
DependsOnHitZone: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
965
|
+
}, []>>, false>;
|
|
914
966
|
advanced: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<import("tsondb/schema/def").TypeParameter<string, import("tsondb/schema/def").Type>[], import("tsondb/schema/def").EnumDecl<"AdvancedSpecialAbility", {
|
|
915
967
|
General: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").TypeArgumentType<import("tsondb/schema/def").TypeParameter<"Identifier", import("tsondb/schema/def").Type>>>;
|
|
916
968
|
RestrictOptions: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<import("tsondb/schema/def").TypeParameter<string, import("tsondb/schema/def").Type>[], import("tsondb/schema/def").TypeAliasDecl<"RestrictAdvancedSpecialAbilityOptions", Object<{
|
|
@@ -2,7 +2,7 @@ import { Entity, IncludeIdentifier, Object, Optional, Required } from "tsondb/sc
|
|
|
2
2
|
import { levels, maximum, name, name_in_library, rules } from "../_Activatable.js";
|
|
3
3
|
import { advanced } from "../_ActivatableAdvanced.js";
|
|
4
4
|
import { ap_value, ap_value_append, ap_value_l10n } from "../_ActivatableAdventurePointsValue.js";
|
|
5
|
-
import { combat_techniques, type, usage_type } from "../_ActivatableCombat.js";
|
|
5
|
+
import { combat_techniques, penalty, type, usage_type } from "../_ActivatableCombat.js";
|
|
6
6
|
import { explicit_select_options, select_options } from "../_ActivatableSelectOptions.js";
|
|
7
7
|
import { skill_applications, skill_uses } from "../_ActivatableSkillApplicationsAndUses.js";
|
|
8
8
|
import { AdvancedCombatSpecialAbilityIdentifier } from "../_Identifier.js";
|
|
@@ -22,6 +22,7 @@ export const CombatStyleSpecialAbility = Entity(import.meta.url, {
|
|
|
22
22
|
skill_applications,
|
|
23
23
|
skill_uses,
|
|
24
24
|
maximum,
|
|
25
|
+
penalty,
|
|
25
26
|
advanced: advanced(AdvancedCombatSpecialAbilityIdentifier()),
|
|
26
27
|
prerequisites: Optional({
|
|
27
28
|
type: IncludeIdentifier(GeneralPrerequisites),
|