@optolith/database-schema 0.106.0 → 0.106.1
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 +6 -0
- package/gen/types.d.ts +175 -0
- package/lib/types/_Prerequisite.d.ts +24 -0
- package/lib/types/_Prerequisite.js +5 -1
- package/lib/types/equipment/item/Ammunition.d.ts +24 -0
- package/lib/types/equipment/item/Ammunition.js +5 -0
- package/lib/types/equipment/item/Animal.d.ts +24 -0
- package/lib/types/equipment/item/Animal.js +5 -0
- package/lib/types/equipment/item/AnimalCare.d.ts +24 -0
- package/lib/types/equipment/item/AnimalCare.js +5 -0
- package/lib/types/equipment/item/Armor.d.ts +24 -0
- package/lib/types/equipment/item/Armor.js +5 -0
- package/lib/types/equipment/item/ArmorAccessory.d.ts +24 -0
- package/lib/types/equipment/item/ArmorAccessory.js +5 -0
- package/lib/types/equipment/item/BandageOrRemedy.d.ts +24 -0
- package/lib/types/equipment/item/BandageOrRemedy.js +5 -0
- package/lib/types/equipment/item/Book.d.ts +24 -0
- package/lib/types/equipment/item/Book.js +5 -1
- package/lib/types/equipment/item/CeremonialItem.d.ts +24 -0
- package/lib/types/equipment/item/CeremonialItem.js +5 -0
- package/lib/types/equipment/item/Clothes.d.ts +24 -0
- package/lib/types/equipment/item/Clothes.js +5 -0
- package/lib/types/equipment/item/Container.d.ts +24 -0
- package/lib/types/equipment/item/Container.js +5 -0
- package/lib/types/equipment/item/Elixir.d.ts +24 -0
- package/lib/types/equipment/item/Elixir.js +5 -0
- package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +24 -0
- package/lib/types/equipment/item/EquipmentOfBlessedOnes.js +5 -0
- package/lib/types/equipment/item/GemOrPreciousStone.d.ts +24 -0
- package/lib/types/equipment/item/GemOrPreciousStone.js +5 -0
- package/lib/types/equipment/item/IlluminationLightSource.d.ts +24 -0
- package/lib/types/equipment/item/IlluminationLightSource.js +5 -0
- package/lib/types/equipment/item/IlluminationRefillOrSupply.d.ts +24 -0
- package/lib/types/equipment/item/IlluminationRefillOrSupply.js +5 -0
- package/lib/types/equipment/item/Item.d.ts +24 -0
- package/lib/types/equipment/item/Item.js +5 -0
- package/lib/types/equipment/item/ItemComponent.d.ts +24 -0
- package/lib/types/equipment/item/ItemComponent.js +5 -0
- package/lib/types/equipment/item/Jewelry.d.ts +24 -0
- package/lib/types/equipment/item/Jewelry.js +5 -0
- package/lib/types/equipment/item/Laboratory.d.ts +24 -0
- package/lib/types/equipment/item/Laboratory.js +5 -0
- package/lib/types/equipment/item/Liebesspielzeug.d.ts +24 -0
- package/lib/types/equipment/item/Liebesspielzeug.js +5 -0
- package/lib/types/equipment/item/LuxuryGood.d.ts +24 -0
- package/lib/types/equipment/item/LuxuryGood.js +5 -0
- package/lib/types/equipment/item/MagicalArtifact.d.ts +24 -0
- package/lib/types/equipment/item/MagicalArtifact.js +5 -0
- package/lib/types/equipment/item/MusicalInstrument.d.ts +24 -0
- package/lib/types/equipment/item/MusicalInstrument.js +5 -0
- package/lib/types/equipment/item/OrienteeringAid.d.ts +24 -0
- package/lib/types/equipment/item/Poison.d.ts +24 -0
- package/lib/types/equipment/item/Poison.js +5 -0
- package/lib/types/equipment/item/RopeOrChain.d.ts +24 -0
- package/lib/types/equipment/item/Stationery.d.ts +24 -0
- package/lib/types/equipment/item/ThievesTool.d.ts +24 -0
- package/lib/types/equipment/item/ToolOfTheTrade.d.ts +24 -0
- package/lib/types/equipment/item/ToolOfTheTrade.js +5 -0
- package/lib/types/equipment/item/TravelGearOrTool.d.ts +24 -0
- package/lib/types/equipment/item/TravelGearOrTool.js +5 -0
- package/lib/types/equipment/item/Vehicle.d.ts +24 -0
- package/lib/types/equipment/item/Vehicle.js +5 -0
- package/lib/types/equipment/item/Weapon.d.ts +24 -0
- package/lib/types/equipment/item/Weapon.js +5 -0
- package/lib/types/equipment/item/WeaponAccessory.d.ts +24 -0
- package/lib/types/equipment/item/WeaponAccessory.js +5 -0
- package/lib/types/equipment/item/_Item.d.ts +24 -0
- package/lib/types/equipment/item/_Item.js +5 -1
- package/lib/types/prerequisites/PrerequisiteGroups.d.ts +21 -0
- package/lib/types/prerequisites/PrerequisiteGroups.js +6 -0
- package/package.json +1 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { isNotNullish } from "@elyukai/utils/nullable";
|
|
2
2
|
import * as DB from "tsondb/schema/dsl";
|
|
3
3
|
import { ArmorIdentifier } from "../../_Identifier.js";
|
|
4
|
+
import { EquipmentPrerequisites } from "../../_Prerequisite.js";
|
|
4
5
|
import { NestedTranslationMap } from "../../Locale.js";
|
|
5
6
|
import { Errata } from "../../source/_Erratum.js";
|
|
6
7
|
import { src } from "../../source/_PublicationRef.js";
|
|
@@ -49,6 +50,10 @@ export const Armor = DB.Entity(import.meta.url, {
|
|
|
49
50
|
comment: "The armor is a known item, which implies some additional values.",
|
|
50
51
|
type: DB.IncludeIdentifier(KnownItemSpecifics),
|
|
51
52
|
}),
|
|
53
|
+
prerequisites: DB.Optional({
|
|
54
|
+
comment: "The prerequisites of the item, if any. Note that this is fully separate from the prerequisites of the item’s trade secret, which are defined independently from this.",
|
|
55
|
+
type: DB.IncludeIdentifier(EquipmentPrerequisites),
|
|
56
|
+
}),
|
|
52
57
|
src,
|
|
53
58
|
translations: NestedTranslationMap(DB.Required, "Armor", DB.Object({
|
|
54
59
|
name: DB.Required({
|
|
@@ -271,6 +271,30 @@ export declare const ArmorAccessory: DB.Entity<"ArmorAccessory", {
|
|
|
271
271
|
}>, false>;
|
|
272
272
|
}>, []>>>;
|
|
273
273
|
}, []>>, false>;
|
|
274
|
+
prerequisites: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"EquipmentPrerequisites", DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PlainPrerequisites", DB.Array<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.Enum<"PrerequisitesElement", {
|
|
275
|
+
Single: DB.EnumCase<DB.TypeArgument<DB.Param<"T", DB.Type>>>;
|
|
276
|
+
Disjunction: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisitesDisjunction", DB.Object<{
|
|
277
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
278
|
+
display_option: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DisplayOption", {
|
|
279
|
+
Hide: DB.EnumCase<null>;
|
|
280
|
+
ReplaceWith: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ReplacementDisplayOption", DB.Object<{
|
|
281
|
+
sentence_type: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"SentenceType", {
|
|
282
|
+
Standalone: DB.EnumCase<null>;
|
|
283
|
+
Connected: DB.EnumCase<null>;
|
|
284
|
+
}, []>>, false>;
|
|
285
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"ReplacementDisplayOptionTranslation", {
|
|
286
|
+
replacement: DB.MemberDecl<DB.String, true>;
|
|
287
|
+
}>, true>;
|
|
288
|
+
}>, []>>>;
|
|
289
|
+
}, []>>, false>;
|
|
290
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
291
|
+
Group: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisiteGroup", DB.Object<{
|
|
292
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
293
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PrerequisiteGroupTranslation", {
|
|
294
|
+
text: DB.MemberDecl<DB.String, true>;
|
|
295
|
+
}>, true>;
|
|
296
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
297
|
+
}, [T: DB.Param<"T", DB.Type>]>>>, [T: DB.Param<"T", DB.Type>]>>, []>>, false>;
|
|
274
298
|
src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
|
|
275
299
|
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
276
300
|
occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
import { EquipmentPrerequisites } from "../../_Prerequisite.js";
|
|
2
3
|
import { src } from "../../source/_PublicationRef.js";
|
|
3
4
|
import { CombatUse, Complexity, Cost, DefaultItemTranslations, StructurePoints, Weight, } from "./_Item.js";
|
|
4
5
|
import { checkWeaponCombatTechniqueIntegrity } from "./_Weapon.js";
|
|
@@ -26,6 +27,10 @@ export const ArmorAccessory = DB.Entity(import.meta.url, {
|
|
|
26
27
|
comment: "The item can also be used either as an improvised weapon or as an armor, although this is not the primary use case of the item.",
|
|
27
28
|
type: DB.IncludeIdentifier(CombatUse),
|
|
28
29
|
}),
|
|
30
|
+
prerequisites: DB.Optional({
|
|
31
|
+
comment: "The prerequisites of the item, if any. Note that this is fully separate from the prerequisites of the item’s trade secret, which are defined independently from this.",
|
|
32
|
+
type: DB.IncludeIdentifier(EquipmentPrerequisites),
|
|
33
|
+
}),
|
|
29
34
|
src,
|
|
30
35
|
translations: DefaultItemTranslations("ArmorAccessory"),
|
|
31
36
|
}),
|
|
@@ -271,6 +271,30 @@ export declare const BandageOrRemedy: DB.Entity<"BandageOrRemedy", {
|
|
|
271
271
|
}>, false>;
|
|
272
272
|
}>, []>>>;
|
|
273
273
|
}, []>>, false>;
|
|
274
|
+
prerequisites: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"EquipmentPrerequisites", DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PlainPrerequisites", DB.Array<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.Enum<"PrerequisitesElement", {
|
|
275
|
+
Single: DB.EnumCase<DB.TypeArgument<DB.Param<"T", DB.Type>>>;
|
|
276
|
+
Disjunction: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisitesDisjunction", DB.Object<{
|
|
277
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
278
|
+
display_option: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DisplayOption", {
|
|
279
|
+
Hide: DB.EnumCase<null>;
|
|
280
|
+
ReplaceWith: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ReplacementDisplayOption", DB.Object<{
|
|
281
|
+
sentence_type: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"SentenceType", {
|
|
282
|
+
Standalone: DB.EnumCase<null>;
|
|
283
|
+
Connected: DB.EnumCase<null>;
|
|
284
|
+
}, []>>, false>;
|
|
285
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"ReplacementDisplayOptionTranslation", {
|
|
286
|
+
replacement: DB.MemberDecl<DB.String, true>;
|
|
287
|
+
}>, true>;
|
|
288
|
+
}>, []>>>;
|
|
289
|
+
}, []>>, false>;
|
|
290
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
291
|
+
Group: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisiteGroup", DB.Object<{
|
|
292
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
293
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PrerequisiteGroupTranslation", {
|
|
294
|
+
text: DB.MemberDecl<DB.String, true>;
|
|
295
|
+
}>, true>;
|
|
296
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
297
|
+
}, [T: DB.Param<"T", DB.Type>]>>>, [T: DB.Param<"T", DB.Type>]>>, []>>, false>;
|
|
274
298
|
src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
|
|
275
299
|
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
276
300
|
occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
import { EquipmentPrerequisites } from "../../_Prerequisite.js";
|
|
2
3
|
import { src } from "../../source/_PublicationRef.js";
|
|
3
4
|
import { CombatUse, Complexity, Cost, DefaultItemTranslations, StructurePoints, Weight, } from "./_Item.js";
|
|
4
5
|
import { checkWeaponCombatTechniqueIntegrity } from "./_Weapon.js";
|
|
@@ -26,6 +27,10 @@ export const BandageOrRemedy = DB.Entity(import.meta.url, {
|
|
|
26
27
|
comment: "The item can also be used either as an improvised weapon or as an armor, although this is not the primary use case of the item.",
|
|
27
28
|
type: DB.IncludeIdentifier(CombatUse),
|
|
28
29
|
}),
|
|
30
|
+
prerequisites: DB.Optional({
|
|
31
|
+
comment: "The prerequisites of the item, if any. Note that this is fully separate from the prerequisites of the item’s trade secret, which are defined independently from this.",
|
|
32
|
+
type: DB.IncludeIdentifier(EquipmentPrerequisites),
|
|
33
|
+
}),
|
|
29
34
|
src,
|
|
30
35
|
translations: DefaultItemTranslations("BandageOrRemedy"),
|
|
31
36
|
}),
|
|
@@ -242,6 +242,30 @@ export declare const Book: DB.Entity<"Book", {
|
|
|
242
242
|
}>, false>;
|
|
243
243
|
}>, []>>>;
|
|
244
244
|
}, []>>, false>;
|
|
245
|
+
prerequisites: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"EquipmentPrerequisites", DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PlainPrerequisites", DB.Array<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.Enum<"PrerequisitesElement", {
|
|
246
|
+
Single: DB.EnumCase<DB.TypeArgument<DB.Param<"T", DB.Type>>>;
|
|
247
|
+
Disjunction: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisitesDisjunction", DB.Object<{
|
|
248
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
249
|
+
display_option: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DisplayOption", {
|
|
250
|
+
Hide: DB.EnumCase<null>;
|
|
251
|
+
ReplaceWith: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ReplacementDisplayOption", DB.Object<{
|
|
252
|
+
sentence_type: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"SentenceType", {
|
|
253
|
+
Standalone: DB.EnumCase<null>;
|
|
254
|
+
Connected: DB.EnumCase<null>;
|
|
255
|
+
}, []>>, false>;
|
|
256
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"ReplacementDisplayOptionTranslation", {
|
|
257
|
+
replacement: DB.MemberDecl<DB.String, true>;
|
|
258
|
+
}>, true>;
|
|
259
|
+
}>, []>>>;
|
|
260
|
+
}, []>>, false>;
|
|
261
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
262
|
+
Group: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisiteGroup", DB.Object<{
|
|
263
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
264
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PrerequisiteGroupTranslation", {
|
|
265
|
+
text: DB.MemberDecl<DB.String, true>;
|
|
266
|
+
}>, true>;
|
|
267
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
268
|
+
}, [T: DB.Param<"T", DB.Type>]>>>, [T: DB.Param<"T", DB.Type>]>>, []>>, false>;
|
|
245
269
|
src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
|
|
246
270
|
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
247
271
|
occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as DB from "tsondb/schema/dsl";
|
|
2
2
|
import { SkillIdentifier } from "../../_Identifier.js";
|
|
3
|
-
import { BookPrerequisites } from "../../_Prerequisite.js";
|
|
3
|
+
import { BookPrerequisites, EquipmentPrerequisites } from "../../_Prerequisite.js";
|
|
4
4
|
import { NestedTranslationMap } from "../../Locale.js";
|
|
5
5
|
import { Errata } from "../../source/_Erratum.js";
|
|
6
6
|
import { src } from "../../source/_PublicationRef.js";
|
|
@@ -41,6 +41,10 @@ export const Book = DB.Entity(import.meta.url, {
|
|
|
41
41
|
comment: "Skills and abilities you can learn by reading the book, as well as any other rules and effects concerning the book.",
|
|
42
42
|
type: DB.IncludeIdentifier(BookRules),
|
|
43
43
|
}),
|
|
44
|
+
prerequisites: DB.Optional({
|
|
45
|
+
comment: "The prerequisites of the item, if any. Note that this is fully separate from the prerequisites of the item’s trade secret, which are defined independently from this.",
|
|
46
|
+
type: DB.IncludeIdentifier(EquipmentPrerequisites),
|
|
47
|
+
}),
|
|
44
48
|
src,
|
|
45
49
|
translations: NestedTranslationMap(DB.Required, "Book", DB.Object({
|
|
46
50
|
name: DB.Required({
|
|
@@ -276,6 +276,30 @@ export declare const CeremonialItem: DB.Entity<"CeremonialItem", {
|
|
|
276
276
|
}>, false>;
|
|
277
277
|
}>, []>>>;
|
|
278
278
|
}, []>>, false>;
|
|
279
|
+
prerequisites: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"EquipmentPrerequisites", DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PlainPrerequisites", DB.Array<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.Enum<"PrerequisitesElement", {
|
|
280
|
+
Single: DB.EnumCase<DB.TypeArgument<DB.Param<"T", DB.Type>>>;
|
|
281
|
+
Disjunction: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisitesDisjunction", DB.Object<{
|
|
282
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
283
|
+
display_option: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DisplayOption", {
|
|
284
|
+
Hide: DB.EnumCase<null>;
|
|
285
|
+
ReplaceWith: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ReplacementDisplayOption", DB.Object<{
|
|
286
|
+
sentence_type: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"SentenceType", {
|
|
287
|
+
Standalone: DB.EnumCase<null>;
|
|
288
|
+
Connected: DB.EnumCase<null>;
|
|
289
|
+
}, []>>, false>;
|
|
290
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"ReplacementDisplayOptionTranslation", {
|
|
291
|
+
replacement: DB.MemberDecl<DB.String, true>;
|
|
292
|
+
}>, true>;
|
|
293
|
+
}>, []>>>;
|
|
294
|
+
}, []>>, false>;
|
|
295
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
296
|
+
Group: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisiteGroup", DB.Object<{
|
|
297
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
298
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PrerequisiteGroupTranslation", {
|
|
299
|
+
text: DB.MemberDecl<DB.String, true>;
|
|
300
|
+
}>, true>;
|
|
301
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
302
|
+
}, [T: DB.Param<"T", DB.Type>]>>>, [T: DB.Param<"T", DB.Type>]>>, []>>, false>;
|
|
279
303
|
src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
|
|
280
304
|
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
281
305
|
occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
import { EquipmentPrerequisites } from "../../_Prerequisite.js";
|
|
2
3
|
import { src } from "../../source/_PublicationRef.js";
|
|
3
4
|
import { CombatUse, Complexity, Cost, DefaultItemTranslations, RestrictedToBlessedTraditionsScope, StructurePoints, Weight, } from "./_Item.js";
|
|
4
5
|
import { checkWeaponCombatTechniqueIntegrity } from "./_Weapon.js";
|
|
@@ -30,6 +31,10 @@ export const CeremonialItem = DB.Entity(import.meta.url, {
|
|
|
30
31
|
comment: "The item can also be used either as an improvised weapon or as an armor, although this is not the primary use case of the item.",
|
|
31
32
|
type: DB.IncludeIdentifier(CombatUse),
|
|
32
33
|
}),
|
|
34
|
+
prerequisites: DB.Optional({
|
|
35
|
+
comment: "The prerequisites of the item, if any. Note that this is fully separate from the prerequisites of the item’s trade secret, which are defined independently from this.",
|
|
36
|
+
type: DB.IncludeIdentifier(EquipmentPrerequisites),
|
|
37
|
+
}),
|
|
33
38
|
src,
|
|
34
39
|
translations: DefaultItemTranslations("CeremonialItem"),
|
|
35
40
|
}),
|
|
@@ -271,6 +271,30 @@ export declare const Clothes: DB.Entity<"Clothes", {
|
|
|
271
271
|
}>, false>;
|
|
272
272
|
}>, []>>>;
|
|
273
273
|
}, []>>, false>;
|
|
274
|
+
prerequisites: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"EquipmentPrerequisites", DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PlainPrerequisites", DB.Array<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.Enum<"PrerequisitesElement", {
|
|
275
|
+
Single: DB.EnumCase<DB.TypeArgument<DB.Param<"T", DB.Type>>>;
|
|
276
|
+
Disjunction: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisitesDisjunction", DB.Object<{
|
|
277
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
278
|
+
display_option: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DisplayOption", {
|
|
279
|
+
Hide: DB.EnumCase<null>;
|
|
280
|
+
ReplaceWith: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ReplacementDisplayOption", DB.Object<{
|
|
281
|
+
sentence_type: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"SentenceType", {
|
|
282
|
+
Standalone: DB.EnumCase<null>;
|
|
283
|
+
Connected: DB.EnumCase<null>;
|
|
284
|
+
}, []>>, false>;
|
|
285
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"ReplacementDisplayOptionTranslation", {
|
|
286
|
+
replacement: DB.MemberDecl<DB.String, true>;
|
|
287
|
+
}>, true>;
|
|
288
|
+
}>, []>>>;
|
|
289
|
+
}, []>>, false>;
|
|
290
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
291
|
+
Group: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisiteGroup", DB.Object<{
|
|
292
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
293
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PrerequisiteGroupTranslation", {
|
|
294
|
+
text: DB.MemberDecl<DB.String, true>;
|
|
295
|
+
}>, true>;
|
|
296
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
297
|
+
}, [T: DB.Param<"T", DB.Type>]>>>, [T: DB.Param<"T", DB.Type>]>>, []>>, false>;
|
|
274
298
|
src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
|
|
275
299
|
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
276
300
|
occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
import { EquipmentPrerequisites } from "../../_Prerequisite.js";
|
|
2
3
|
import { src } from "../../source/_PublicationRef.js";
|
|
3
4
|
import { CombatUse, Complexity, Cost, DefaultItemTranslations, StructurePoints, Weight, } from "./_Item.js";
|
|
4
5
|
import { checkWeaponCombatTechniqueIntegrity } from "./_Weapon.js";
|
|
@@ -26,6 +27,10 @@ export const Clothes = DB.Entity(import.meta.url, {
|
|
|
26
27
|
comment: "The item can also be used either as an improvised weapon or as an armor, although this is not the primary use case of the item.",
|
|
27
28
|
type: DB.IncludeIdentifier(CombatUse),
|
|
28
29
|
}),
|
|
30
|
+
prerequisites: DB.Optional({
|
|
31
|
+
comment: "The prerequisites of the item, if any. Note that this is fully separate from the prerequisites of the item’s trade secret, which are defined independently from this.",
|
|
32
|
+
type: DB.IncludeIdentifier(EquipmentPrerequisites),
|
|
33
|
+
}),
|
|
29
34
|
src,
|
|
30
35
|
translations: DefaultItemTranslations("Clothes"),
|
|
31
36
|
}),
|
|
@@ -271,6 +271,30 @@ export declare const Container: DB.Entity<"Container", {
|
|
|
271
271
|
}>, false>;
|
|
272
272
|
}>, []>>>;
|
|
273
273
|
}, []>>, false>;
|
|
274
|
+
prerequisites: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"EquipmentPrerequisites", DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PlainPrerequisites", DB.Array<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.Enum<"PrerequisitesElement", {
|
|
275
|
+
Single: DB.EnumCase<DB.TypeArgument<DB.Param<"T", DB.Type>>>;
|
|
276
|
+
Disjunction: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisitesDisjunction", DB.Object<{
|
|
277
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
278
|
+
display_option: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DisplayOption", {
|
|
279
|
+
Hide: DB.EnumCase<null>;
|
|
280
|
+
ReplaceWith: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ReplacementDisplayOption", DB.Object<{
|
|
281
|
+
sentence_type: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"SentenceType", {
|
|
282
|
+
Standalone: DB.EnumCase<null>;
|
|
283
|
+
Connected: DB.EnumCase<null>;
|
|
284
|
+
}, []>>, false>;
|
|
285
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"ReplacementDisplayOptionTranslation", {
|
|
286
|
+
replacement: DB.MemberDecl<DB.String, true>;
|
|
287
|
+
}>, true>;
|
|
288
|
+
}>, []>>>;
|
|
289
|
+
}, []>>, false>;
|
|
290
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
291
|
+
Group: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisiteGroup", DB.Object<{
|
|
292
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
293
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PrerequisiteGroupTranslation", {
|
|
294
|
+
text: DB.MemberDecl<DB.String, true>;
|
|
295
|
+
}>, true>;
|
|
296
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
297
|
+
}, [T: DB.Param<"T", DB.Type>]>>>, [T: DB.Param<"T", DB.Type>]>>, []>>, false>;
|
|
274
298
|
src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
|
|
275
299
|
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
276
300
|
occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
import { EquipmentPrerequisites } from "../../_Prerequisite.js";
|
|
2
3
|
import { src } from "../../source/_PublicationRef.js";
|
|
3
4
|
import { CombatUse, Complexity, Cost, DefaultItemTranslations, StructurePoints, Weight, } from "./_Item.js";
|
|
4
5
|
import { checkWeaponCombatTechniqueIntegrity } from "./_Weapon.js";
|
|
@@ -26,6 +27,10 @@ export const Container = DB.Entity(import.meta.url, {
|
|
|
26
27
|
comment: "The item can also be used either as an improvised weapon or as an armor, although this is not the primary use case of the item.",
|
|
27
28
|
type: DB.IncludeIdentifier(CombatUse),
|
|
28
29
|
}),
|
|
30
|
+
prerequisites: DB.Optional({
|
|
31
|
+
comment: "The prerequisites of the item, if any. Note that this is fully separate from the prerequisites of the item’s trade secret, which are defined independently from this.",
|
|
32
|
+
type: DB.IncludeIdentifier(EquipmentPrerequisites),
|
|
33
|
+
}),
|
|
29
34
|
src,
|
|
30
35
|
translations: DefaultItemTranslations("Container"),
|
|
31
36
|
}),
|
|
@@ -85,6 +85,30 @@ export declare const Elixir: DB.Entity<"Elixir", {
|
|
|
85
85
|
}>, true>;
|
|
86
86
|
}>, []>>>, []>>, false>;
|
|
87
87
|
}>, []>>, false>;
|
|
88
|
+
prerequisites: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"EquipmentPrerequisites", DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PlainPrerequisites", DB.Array<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.Enum<"PrerequisitesElement", {
|
|
89
|
+
Single: DB.EnumCase<DB.TypeArgument<DB.Param<"T", DB.Type>>>;
|
|
90
|
+
Disjunction: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisitesDisjunction", DB.Object<{
|
|
91
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
92
|
+
display_option: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DisplayOption", {
|
|
93
|
+
Hide: DB.EnumCase<null>;
|
|
94
|
+
ReplaceWith: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ReplacementDisplayOption", DB.Object<{
|
|
95
|
+
sentence_type: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"SentenceType", {
|
|
96
|
+
Standalone: DB.EnumCase<null>;
|
|
97
|
+
Connected: DB.EnumCase<null>;
|
|
98
|
+
}, []>>, false>;
|
|
99
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"ReplacementDisplayOptionTranslation", {
|
|
100
|
+
replacement: DB.MemberDecl<DB.String, true>;
|
|
101
|
+
}>, true>;
|
|
102
|
+
}>, []>>>;
|
|
103
|
+
}, []>>, false>;
|
|
104
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
105
|
+
Group: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisiteGroup", DB.Object<{
|
|
106
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
107
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PrerequisiteGroupTranslation", {
|
|
108
|
+
text: DB.MemberDecl<DB.String, true>;
|
|
109
|
+
}>, true>;
|
|
110
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
111
|
+
}, [T: DB.Param<"T", DB.Type>]>>>, [T: DB.Param<"T", DB.Type>]>>, []>>, false>;
|
|
88
112
|
src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
|
|
89
113
|
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
90
114
|
occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as DB from "tsondb/schema/dsl";
|
|
2
2
|
import { AlternativeName } from "../../_AlternativeNames.js";
|
|
3
|
+
import { EquipmentPrerequisites } from "../../_Prerequisite.js";
|
|
3
4
|
import { NestedTranslationMap } from "../../Locale.js";
|
|
4
5
|
import { Errata } from "../../source/_Erratum.js";
|
|
5
6
|
import { src } from "../../source/_PublicationRef.js";
|
|
@@ -32,6 +33,10 @@ export const Elixir = DB.Entity(import.meta.url, {
|
|
|
32
33
|
comment: "AP value and prerequisites of the elixir recipe’s trade secret.",
|
|
33
34
|
type: DB.IncludeIdentifier(RecipeTradeSecret),
|
|
34
35
|
}),
|
|
36
|
+
prerequisites: DB.Optional({
|
|
37
|
+
comment: "The prerequisites of the item, if any. Note that this is fully separate from the prerequisites of the item’s trade secret, which are defined independently from this.",
|
|
38
|
+
type: DB.IncludeIdentifier(EquipmentPrerequisites),
|
|
39
|
+
}),
|
|
35
40
|
src,
|
|
36
41
|
translations: NestedTranslationMap(DB.Required, "ElixirTranslation", DB.Object({
|
|
37
42
|
name: DB.Required({
|
|
@@ -202,6 +202,30 @@ export declare const EquipmentOfBlessedOnes: DB.Entity<"EquipmentOfBlessedOnes",
|
|
|
202
202
|
}>, false>;
|
|
203
203
|
}>, []>>>;
|
|
204
204
|
}, []>>, false>;
|
|
205
|
+
prerequisites: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"EquipmentPrerequisites", DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PlainPrerequisites", DB.Array<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.Enum<"PrerequisitesElement", {
|
|
206
|
+
Single: DB.EnumCase<DB.TypeArgument<DB.Param<"T", DB.Type>>>;
|
|
207
|
+
Disjunction: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisitesDisjunction", DB.Object<{
|
|
208
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
209
|
+
display_option: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DisplayOption", {
|
|
210
|
+
Hide: DB.EnumCase<null>;
|
|
211
|
+
ReplaceWith: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ReplacementDisplayOption", DB.Object<{
|
|
212
|
+
sentence_type: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"SentenceType", {
|
|
213
|
+
Standalone: DB.EnumCase<null>;
|
|
214
|
+
Connected: DB.EnumCase<null>;
|
|
215
|
+
}, []>>, false>;
|
|
216
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"ReplacementDisplayOptionTranslation", {
|
|
217
|
+
replacement: DB.MemberDecl<DB.String, true>;
|
|
218
|
+
}>, true>;
|
|
219
|
+
}>, []>>>;
|
|
220
|
+
}, []>>, false>;
|
|
221
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
222
|
+
Group: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisiteGroup", DB.Object<{
|
|
223
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
224
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PrerequisiteGroupTranslation", {
|
|
225
|
+
text: DB.MemberDecl<DB.String, true>;
|
|
226
|
+
}>, true>;
|
|
227
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
228
|
+
}, [T: DB.Param<"T", DB.Type>]>>>, [T: DB.Param<"T", DB.Type>]>>, []>>, false>;
|
|
205
229
|
src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
|
|
206
230
|
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
207
231
|
occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as DB from "tsondb/schema/dsl";
|
|
2
2
|
import { BlessedTraditionIdentifier } from "../../_Identifier.js";
|
|
3
|
+
import { EquipmentPrerequisites } from "../../_Prerequisite.js";
|
|
3
4
|
import { src } from "../../source/_PublicationRef.js";
|
|
4
5
|
import { CombatUse, Cost, DefaultItemTranslations, StructurePoints } from "./_Item.js";
|
|
5
6
|
import { checkWeaponCombatTechniqueIntegrity } from "./_Weapon.js";
|
|
@@ -26,6 +27,10 @@ export const EquipmentOfBlessedOnes = DB.Entity(import.meta.url, {
|
|
|
26
27
|
comment: "The item can also be used either as an improvised weapon or as an armor, although this is not the primary use case of the item.",
|
|
27
28
|
type: DB.IncludeIdentifier(CombatUse),
|
|
28
29
|
}),
|
|
30
|
+
prerequisites: DB.Optional({
|
|
31
|
+
comment: "The prerequisites of the item, if any. Note that this is fully separate from the prerequisites of the item’s trade secret, which are defined independently from this.",
|
|
32
|
+
type: DB.IncludeIdentifier(EquipmentPrerequisites),
|
|
33
|
+
}),
|
|
29
34
|
src,
|
|
30
35
|
translations: DefaultItemTranslations("EquipmentOfBlessedOnes"),
|
|
31
36
|
}),
|
|
@@ -23,6 +23,30 @@ export declare const GemOrPreciousStone: DB.Entity<"GemOrPreciousStone", {
|
|
|
23
23
|
}>, []>>>;
|
|
24
24
|
}, []>>, true>;
|
|
25
25
|
weight: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Weight", DB.Float, []>>, false>;
|
|
26
|
+
prerequisites: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"EquipmentPrerequisites", DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PlainPrerequisites", DB.Array<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.Enum<"PrerequisitesElement", {
|
|
27
|
+
Single: DB.EnumCase<DB.TypeArgument<DB.Param<"T", DB.Type>>>;
|
|
28
|
+
Disjunction: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisitesDisjunction", DB.Object<{
|
|
29
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
30
|
+
display_option: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DisplayOption", {
|
|
31
|
+
Hide: DB.EnumCase<null>;
|
|
32
|
+
ReplaceWith: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ReplacementDisplayOption", DB.Object<{
|
|
33
|
+
sentence_type: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"SentenceType", {
|
|
34
|
+
Standalone: DB.EnumCase<null>;
|
|
35
|
+
Connected: DB.EnumCase<null>;
|
|
36
|
+
}, []>>, false>;
|
|
37
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"ReplacementDisplayOptionTranslation", {
|
|
38
|
+
replacement: DB.MemberDecl<DB.String, true>;
|
|
39
|
+
}>, true>;
|
|
40
|
+
}>, []>>>;
|
|
41
|
+
}, []>>, false>;
|
|
42
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
43
|
+
Group: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisiteGroup", DB.Object<{
|
|
44
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
45
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PrerequisiteGroupTranslation", {
|
|
46
|
+
text: DB.MemberDecl<DB.String, true>;
|
|
47
|
+
}>, true>;
|
|
48
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
49
|
+
}, [T: DB.Param<"T", DB.Type>]>>>, [T: DB.Param<"T", DB.Type>]>>, []>>, false>;
|
|
26
50
|
src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
|
|
27
51
|
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
28
52
|
occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
import { EquipmentPrerequisites } from "../../_Prerequisite.js";
|
|
2
3
|
import { NestedTranslationMap } from "../../Locale.js";
|
|
3
4
|
import { Errata } from "../../source/_Erratum.js";
|
|
4
5
|
import { src } from "../../source/_PublicationRef.js";
|
|
@@ -15,6 +16,10 @@ export const GemOrPreciousStone = DB.Entity(import.meta.url, {
|
|
|
15
16
|
comment: "The weight in kg.",
|
|
16
17
|
type: DB.IncludeIdentifier(Weight),
|
|
17
18
|
}),
|
|
19
|
+
prerequisites: DB.Optional({
|
|
20
|
+
comment: "The prerequisites of the item, if any. Note that this is fully separate from the prerequisites of the item’s trade secret, which are defined independently from this.",
|
|
21
|
+
type: DB.IncludeIdentifier(EquipmentPrerequisites),
|
|
22
|
+
}),
|
|
18
23
|
src,
|
|
19
24
|
translations: NestedTranslationMap(DB.Required, "GemOrPreciousStone", DB.Object({
|
|
20
25
|
name: DB.Required({
|
|
@@ -280,6 +280,30 @@ export declare const IlluminationLightSource: DB.Entity<"IlluminationLightSource
|
|
|
280
280
|
}>, false>;
|
|
281
281
|
}>, []>>>;
|
|
282
282
|
}, []>>, false>;
|
|
283
|
+
prerequisites: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"EquipmentPrerequisites", DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PlainPrerequisites", DB.Array<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.Enum<"PrerequisitesElement", {
|
|
284
|
+
Single: DB.EnumCase<DB.TypeArgument<DB.Param<"T", DB.Type>>>;
|
|
285
|
+
Disjunction: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisitesDisjunction", DB.Object<{
|
|
286
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
287
|
+
display_option: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DisplayOption", {
|
|
288
|
+
Hide: DB.EnumCase<null>;
|
|
289
|
+
ReplaceWith: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ReplacementDisplayOption", DB.Object<{
|
|
290
|
+
sentence_type: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"SentenceType", {
|
|
291
|
+
Standalone: DB.EnumCase<null>;
|
|
292
|
+
Connected: DB.EnumCase<null>;
|
|
293
|
+
}, []>>, false>;
|
|
294
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"ReplacementDisplayOptionTranslation", {
|
|
295
|
+
replacement: DB.MemberDecl<DB.String, true>;
|
|
296
|
+
}>, true>;
|
|
297
|
+
}>, []>>>;
|
|
298
|
+
}, []>>, false>;
|
|
299
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
300
|
+
Group: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisiteGroup", DB.Object<{
|
|
301
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
302
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PrerequisiteGroupTranslation", {
|
|
303
|
+
text: DB.MemberDecl<DB.String, true>;
|
|
304
|
+
}>, true>;
|
|
305
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
306
|
+
}, [T: DB.Param<"T", DB.Type>]>>>, [T: DB.Param<"T", DB.Type>]>>, []>>, false>;
|
|
283
307
|
src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
|
|
284
308
|
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
285
309
|
occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
import { EquipmentPrerequisites } from "../../_Prerequisite.js";
|
|
2
3
|
import { src } from "../../source/_PublicationRef.js";
|
|
3
4
|
import { CombatUse, Complexity, Cost, DefaultItemTranslations, StructurePoints, Weight, } from "./_Item.js";
|
|
4
5
|
import { checkWeaponCombatTechniqueIntegrity } from "./_Weapon.js";
|
|
@@ -30,6 +31,10 @@ export const IlluminationLightSource = DB.Entity(import.meta.url, {
|
|
|
30
31
|
comment: "The item can also be used either as an improvised weapon or as an armor, although this is not the primary use case of the item.",
|
|
31
32
|
type: DB.IncludeIdentifier(CombatUse),
|
|
32
33
|
}),
|
|
34
|
+
prerequisites: DB.Optional({
|
|
35
|
+
comment: "The prerequisites of the item, if any. Note that this is fully separate from the prerequisites of the item’s trade secret, which are defined independently from this.",
|
|
36
|
+
type: DB.IncludeIdentifier(EquipmentPrerequisites),
|
|
37
|
+
}),
|
|
33
38
|
src,
|
|
34
39
|
translations: DefaultItemTranslations("IlluminationLightSource"),
|
|
35
40
|
}),
|
|
@@ -271,6 +271,30 @@ export declare const IlluminationRefillOrSupply: DB.Entity<"IlluminationRefillOr
|
|
|
271
271
|
}>, false>;
|
|
272
272
|
}>, []>>>;
|
|
273
273
|
}, []>>, false>;
|
|
274
|
+
prerequisites: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"EquipmentPrerequisites", DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PlainPrerequisites", DB.Array<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.Enum<"PrerequisitesElement", {
|
|
275
|
+
Single: DB.EnumCase<DB.TypeArgument<DB.Param<"T", DB.Type>>>;
|
|
276
|
+
Disjunction: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisitesDisjunction", DB.Object<{
|
|
277
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
278
|
+
display_option: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DisplayOption", {
|
|
279
|
+
Hide: DB.EnumCase<null>;
|
|
280
|
+
ReplaceWith: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ReplacementDisplayOption", DB.Object<{
|
|
281
|
+
sentence_type: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"SentenceType", {
|
|
282
|
+
Standalone: DB.EnumCase<null>;
|
|
283
|
+
Connected: DB.EnumCase<null>;
|
|
284
|
+
}, []>>, false>;
|
|
285
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"ReplacementDisplayOptionTranslation", {
|
|
286
|
+
replacement: DB.MemberDecl<DB.String, true>;
|
|
287
|
+
}>, true>;
|
|
288
|
+
}>, []>>>;
|
|
289
|
+
}, []>>, false>;
|
|
290
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
291
|
+
Group: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisiteGroup", DB.Object<{
|
|
292
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
293
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PrerequisiteGroupTranslation", {
|
|
294
|
+
text: DB.MemberDecl<DB.String, true>;
|
|
295
|
+
}>, true>;
|
|
296
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
297
|
+
}, [T: DB.Param<"T", DB.Type>]>>>, [T: DB.Param<"T", DB.Type>]>>, []>>, false>;
|
|
274
298
|
src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
|
|
275
299
|
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
276
300
|
occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
import { EquipmentPrerequisites } from "../../_Prerequisite.js";
|
|
2
3
|
import { src } from "../../source/_PublicationRef.js";
|
|
3
4
|
import { CombatUse, Complexity, Cost, DefaultItemTranslations, StructurePoints, Weight, } from "./_Item.js";
|
|
4
5
|
import { checkWeaponCombatTechniqueIntegrity } from "./_Weapon.js";
|
|
@@ -26,6 +27,10 @@ export const IlluminationRefillOrSupply = DB.Entity(import.meta.url, {
|
|
|
26
27
|
comment: "The item can also be used either as an improvised weapon or as an armor, although this is not the primary use case of the item.",
|
|
27
28
|
type: DB.IncludeIdentifier(CombatUse),
|
|
28
29
|
}),
|
|
30
|
+
prerequisites: DB.Optional({
|
|
31
|
+
comment: "The prerequisites of the item, if any. Note that this is fully separate from the prerequisites of the item’s trade secret, which are defined independently from this.",
|
|
32
|
+
type: DB.IncludeIdentifier(EquipmentPrerequisites),
|
|
33
|
+
}),
|
|
29
34
|
src,
|
|
30
35
|
translations: DefaultItemTranslations("IlluminationRefillOrSupply"),
|
|
31
36
|
}),
|
|
@@ -320,6 +320,30 @@ export declare const Item: DB.Entity<"Item", {
|
|
|
320
320
|
Invaluable: DB.EnumCase<null>;
|
|
321
321
|
}, []>>, true>;
|
|
322
322
|
}>, []>>, false>;
|
|
323
|
+
prerequisites: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"EquipmentPrerequisites", DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PlainPrerequisites", DB.Array<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.Enum<"PrerequisitesElement", {
|
|
324
|
+
Single: DB.EnumCase<DB.TypeArgument<DB.Param<"T", DB.Type>>>;
|
|
325
|
+
Disjunction: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisitesDisjunction", DB.Object<{
|
|
326
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
327
|
+
display_option: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DisplayOption", {
|
|
328
|
+
Hide: DB.EnumCase<null>;
|
|
329
|
+
ReplaceWith: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ReplacementDisplayOption", DB.Object<{
|
|
330
|
+
sentence_type: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"SentenceType", {
|
|
331
|
+
Standalone: DB.EnumCase<null>;
|
|
332
|
+
Connected: DB.EnumCase<null>;
|
|
333
|
+
}, []>>, false>;
|
|
334
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"ReplacementDisplayOptionTranslation", {
|
|
335
|
+
replacement: DB.MemberDecl<DB.String, true>;
|
|
336
|
+
}>, true>;
|
|
337
|
+
}>, []>>>;
|
|
338
|
+
}, []>>, false>;
|
|
339
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
340
|
+
Group: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PrerequisiteGroup", DB.Object<{
|
|
341
|
+
list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"T", DB.Type>>>, true>;
|
|
342
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PrerequisiteGroupTranslation", {
|
|
343
|
+
text: DB.MemberDecl<DB.String, true>;
|
|
344
|
+
}>, true>;
|
|
345
|
+
}>, [T: DB.Param<"T", DB.Type>]>>>;
|
|
346
|
+
}, [T: DB.Param<"T", DB.Type>]>>>, [T: DB.Param<"T", DB.Type>]>>, []>>, false>;
|
|
323
347
|
src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
|
|
324
348
|
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
325
349
|
occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
|