optolith-database-schema 0.31.1 → 0.31.3
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 +20 -0
- package/gen/types.d.ts +87 -4
- package/lib/types/Locale.d.ts +52 -0
- package/lib/types/Locale.js +56 -0
- package/lib/types/equipment/item/Elixir.js +1 -1
- package/lib/types/equipment/item/Poison.d.ts +108 -66
- package/lib/types/equipment/item/Poison.js +34 -4
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,26 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
## [0.31.3](https://github.com/elyukai/optolith-database-schema/compare/v0.31.2...v0.31.3) (2026-02-16)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
* interpretation and display of poisons/elixirs ([30a6a3c](https://github.com/elyukai/optolith-database-schema/commit/30a6a3c4262e2920f9100605faee8c426cd37491))
|
|
11
|
+
|
|
12
|
+
## [0.31.2](https://github.com/elyukai/optolith-database-schema/compare/v0.31.1...v0.31.2) (2026-02-15)
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### Features
|
|
16
|
+
|
|
17
|
+
* add translations for poisons, elixirs, sex practices, diseases and personality traits ([3561289](https://github.com/elyukai/optolith-database-schema/commit/3561289fc1283bcecde3065bee5850b166ba3270))
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Bug Fixes
|
|
21
|
+
|
|
22
|
+
* incorrect comment ([c3a6124](https://github.com/elyukai/optolith-database-schema/commit/c3a61244cec93af6396f723ee972e7911f98c1fa))
|
|
23
|
+
* poison addition interpretation ([a24aeb6](https://github.com/elyukai/optolith-database-schema/commit/a24aeb6dd1cf170afe0d7de1b23f5cdf0c11b5b3))
|
|
24
|
+
|
|
5
25
|
## [0.31.1](https://github.com/elyukai/optolith-database-schema/compare/v0.31.0...v0.31.1) (2026-02-15)
|
|
6
26
|
|
|
7
27
|
|
package/gen/types.d.ts
CHANGED
|
@@ -299,7 +299,7 @@ export type EnumMap = {
|
|
|
299
299
|
ImprovementCost: ImprovementCost
|
|
300
300
|
IndefiniteArcaneEnergyCostModifierArithmetic: IndefiniteArcaneEnergyCostModifierArithmetic
|
|
301
301
|
InfluencePrerequisiteGroup: InfluencePrerequisiteGroup
|
|
302
|
-
|
|
302
|
+
IntoxicantAddictionWithdrawalPreventionInterval: IntoxicantAddictionWithdrawalPreventionInterval
|
|
303
303
|
JesterTrickDuration: JesterTrickDuration
|
|
304
304
|
JesterTrickRange: JesterTrickRange
|
|
305
305
|
LaboratoryLevel: LaboratoryLevel
|
|
@@ -621,6 +621,8 @@ export type TypeAliasMap = {
|
|
|
621
621
|
IntervalArcaneEnergyCost: IntervalArcaneEnergyCost
|
|
622
622
|
Intoxicant: Intoxicant
|
|
623
623
|
IntoxicantAddiction: IntoxicantAddiction
|
|
624
|
+
IntoxicantAddictionCheck: IntoxicantAddictionCheck
|
|
625
|
+
IntoxicantAddictionWithdrawalPrevention: IntoxicantAddictionWithdrawalPrevention
|
|
624
626
|
IntoxicantLegality: IntoxicantLegality
|
|
625
627
|
JesterTrickCastingTime: JesterTrickCastingTime
|
|
626
628
|
JesterTrickCost: JesterTrickCost
|
|
@@ -2331,6 +2333,58 @@ export interface Locale {
|
|
|
2331
2333
|
"Structure Points": string
|
|
2332
2334
|
".input {$value :number} {{{$value} Structure Points}}": string & { __params: { "value": number } }
|
|
2333
2335
|
"{$value} Structure Points": string & { __params: { "value": StringableTranslationParameter } }
|
|
2336
|
+
"{$types} poison": string & { __params: { "types": StringableTranslationParameter } }
|
|
2337
|
+
"Weapon (poison)": string
|
|
2338
|
+
"Ingestion (poison)": string
|
|
2339
|
+
"Inhalation (poison)": string
|
|
2340
|
+
"Contact (poison)": string
|
|
2341
|
+
"Level": string
|
|
2342
|
+
"Type": string
|
|
2343
|
+
"animal venom": string
|
|
2344
|
+
"alchemical poison": string
|
|
2345
|
+
"mineral poison": string
|
|
2346
|
+
"plant poison": string
|
|
2347
|
+
"demonic poison": string
|
|
2348
|
+
"Archaic laboratory": string
|
|
2349
|
+
"Witch kitchen": string
|
|
2350
|
+
"Alchemist’s laboratory": string
|
|
2351
|
+
"Resistance": string
|
|
2352
|
+
"{$first} or {$second}, depending on which value is lower": string & { __params: { "first": StringableTranslationParameter; "second": StringableTranslationParameter } }
|
|
2353
|
+
"Start": string
|
|
2354
|
+
"immediate": string
|
|
2355
|
+
"instant": string
|
|
2356
|
+
"Typical Ingredients": string
|
|
2357
|
+
"Price of Ingredients/Level": string
|
|
2358
|
+
"Laboratory": string
|
|
2359
|
+
"Brewing Difficulty": string
|
|
2360
|
+
"Brewing Process": string
|
|
2361
|
+
"Trade Secret": string
|
|
2362
|
+
"The poison levels equals the QL.": string
|
|
2363
|
+
".input {$value :number} {{{$value} applications every {$interval}}}": string & { __params: { "value": number; "interval": StringableTranslationParameter } }
|
|
2364
|
+
"{$valueRange} on {$dice}": string & { __params: { "valueRange": StringableTranslationParameter; "dice": StringableTranslationParameter } }
|
|
2365
|
+
"Ingestion": string
|
|
2366
|
+
"Side Effect": string
|
|
2367
|
+
"Overdose": string
|
|
2368
|
+
"Legality": string
|
|
2369
|
+
"legal": string
|
|
2370
|
+
"illegal": string
|
|
2371
|
+
"Addiction": string
|
|
2372
|
+
"Value/Cost": string
|
|
2373
|
+
"cannot be extracted": string
|
|
2374
|
+
".input {$hiddenCount :number} {{Alternative Names}}": string & { __params: { "hiddenCount": number } }
|
|
2375
|
+
".input {$count :number} {{check required every {$count}. application}}": string & { __params: { "count": number } }
|
|
2376
|
+
".input {$count :number} {{check required every {$count}. application in the same month}}": string & { __params: { "count": number } }
|
|
2377
|
+
"Failed": string
|
|
2378
|
+
"Progress": string
|
|
2379
|
+
"Incubation Time": string
|
|
2380
|
+
"Damage": string
|
|
2381
|
+
"Causes": string
|
|
2382
|
+
"Treatment": string
|
|
2383
|
+
"Antidote": string
|
|
2384
|
+
".input {$value :number} {{{$value}%}}": string & { __params: { "value": number } }
|
|
2385
|
+
"Animal Types": string
|
|
2386
|
+
"Communicability to Intelligent Creatures": string
|
|
2387
|
+
"Can be combined with": string
|
|
2334
2388
|
}
|
|
2335
2389
|
}
|
|
2336
2390
|
|
|
@@ -20602,7 +20656,7 @@ export interface ElixirTranslationTranslation {
|
|
|
20602
20656
|
description?: string
|
|
20603
20657
|
|
|
20604
20658
|
/**
|
|
20605
|
-
*
|
|
20659
|
+
* Special information about the elixir.
|
|
20606
20660
|
*/
|
|
20607
20661
|
special?: string
|
|
20608
20662
|
|
|
@@ -21931,10 +21985,15 @@ export interface IntoxicantAddiction {
|
|
|
21931
21985
|
*/
|
|
21932
21986
|
chance?: number
|
|
21933
21987
|
|
|
21988
|
+
/**
|
|
21989
|
+
* The interval at which to check for addiction after an ingestion. If set to one, every ingestion has to be checked for addiction. If set to two, every second ingestion has to be checked, and so on.
|
|
21990
|
+
*/
|
|
21991
|
+
check?: IntoxicantAddictionCheck
|
|
21992
|
+
|
|
21934
21993
|
/**
|
|
21935
21994
|
* The maximum interval at which it, while addicted, must be ingested to not suffer from withdrawal symptoms.
|
|
21936
21995
|
*/
|
|
21937
|
-
|
|
21996
|
+
withdrawalPrevention: IntoxicantAddictionWithdrawalPrevention
|
|
21938
21997
|
|
|
21939
21998
|
/**
|
|
21940
21999
|
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
@@ -21951,10 +22010,34 @@ export interface IntoxicantAddictionTranslation {
|
|
|
21951
22010
|
chance: string
|
|
21952
22011
|
}
|
|
21953
22012
|
|
|
22013
|
+
/**
|
|
22014
|
+
* The interval at which to check for addiction after an ingestion. If set to one, every ingestion has to be checked for addiction. If set to two, every second ingestion has to be checked, and so on.
|
|
22015
|
+
*/
|
|
22016
|
+
export interface IntoxicantAddictionCheck {
|
|
22017
|
+
interval: number
|
|
22018
|
+
|
|
22019
|
+
/**
|
|
22020
|
+
* If true, only ingestions in the same month count for the check interval.
|
|
22021
|
+
*/
|
|
22022
|
+
onlySameMonth?: boolean
|
|
22023
|
+
}
|
|
22024
|
+
|
|
22025
|
+
export interface IntoxicantAddictionWithdrawalPrevention {
|
|
22026
|
+
/**
|
|
22027
|
+
* The amount that must be ingested within the interval to prevent withdrawal symptoms.
|
|
22028
|
+
*/
|
|
22029
|
+
amount: number
|
|
22030
|
+
|
|
22031
|
+
/**
|
|
22032
|
+
* The maximum interval at which it, while addicted, must be ingested to not suffer from withdrawal symptoms.
|
|
22033
|
+
*/
|
|
22034
|
+
interval: IntoxicantAddictionWithdrawalPreventionInterval
|
|
22035
|
+
}
|
|
22036
|
+
|
|
21954
22037
|
/**
|
|
21955
22038
|
* The maximum interval at which it, while addicted, must be ingested to not suffer from withdrawal symptoms.
|
|
21956
22039
|
*/
|
|
21957
|
-
export type
|
|
22040
|
+
export type IntoxicantAddictionWithdrawalPreventionInterval =
|
|
21958
22041
|
| {
|
|
21959
22042
|
kind: "Constant"
|
|
21960
22043
|
Constant: ConstantIntoxicantAddictionInterval
|
package/lib/types/Locale.d.ts
CHANGED
|
@@ -1414,6 +1414,58 @@ export declare const Locale: DB.Entity<"Locale", {
|
|
|
1414
1414
|
"Structure Points": null;
|
|
1415
1415
|
".input {$value :number} {{{$value} Structure Points}}": null;
|
|
1416
1416
|
"{$value} Structure Points": null;
|
|
1417
|
+
"{$types} poison": null;
|
|
1418
|
+
"Weapon (poison)": null;
|
|
1419
|
+
"Ingestion (poison)": null;
|
|
1420
|
+
"Inhalation (poison)": null;
|
|
1421
|
+
"Contact (poison)": null;
|
|
1422
|
+
Level: null;
|
|
1423
|
+
Type: null;
|
|
1424
|
+
"animal venom": null;
|
|
1425
|
+
"alchemical poison": null;
|
|
1426
|
+
"mineral poison": null;
|
|
1427
|
+
"plant poison": null;
|
|
1428
|
+
"demonic poison": null;
|
|
1429
|
+
"Archaic laboratory": null;
|
|
1430
|
+
"Witch kitchen": null;
|
|
1431
|
+
"Alchemist\u2019s laboratory": null;
|
|
1432
|
+
Resistance: null;
|
|
1433
|
+
"{$first} or {$second}, depending on which value is lower": null;
|
|
1434
|
+
Start: null;
|
|
1435
|
+
immediate: null;
|
|
1436
|
+
instant: null;
|
|
1437
|
+
"Typical Ingredients": null;
|
|
1438
|
+
"Price of Ingredients/Level": null;
|
|
1439
|
+
Laboratory: null;
|
|
1440
|
+
"Brewing Difficulty": null;
|
|
1441
|
+
"Brewing Process": null;
|
|
1442
|
+
"Trade Secret": null;
|
|
1443
|
+
"The poison levels equals the QL.": null;
|
|
1444
|
+
".input {$value :number} {{{$value} applications every {$interval}}}": null;
|
|
1445
|
+
"{$valueRange} on {$dice}": null;
|
|
1446
|
+
Ingestion: null;
|
|
1447
|
+
"Side Effect": null;
|
|
1448
|
+
Overdose: null;
|
|
1449
|
+
Legality: null;
|
|
1450
|
+
legal: null;
|
|
1451
|
+
illegal: null;
|
|
1452
|
+
Addiction: null;
|
|
1453
|
+
"Value/Cost": null;
|
|
1454
|
+
"cannot be extracted": null;
|
|
1455
|
+
".input {$hiddenCount :number} {{Alternative Names}}": null;
|
|
1456
|
+
".input {$count :number} {{check required every {$count}. application}}": null;
|
|
1457
|
+
".input {$count :number} {{check required every {$count}. application in the same month}}": null;
|
|
1458
|
+
Failed: null;
|
|
1459
|
+
Progress: null;
|
|
1460
|
+
"Incubation Time": null;
|
|
1461
|
+
Damage: null;
|
|
1462
|
+
Causes: null;
|
|
1463
|
+
Treatment: null;
|
|
1464
|
+
Antidote: null;
|
|
1465
|
+
".input {$value :number} {{{$value}%}}": null;
|
|
1466
|
+
"Animal Types": null;
|
|
1467
|
+
"Communicability to Intelligent Creatures": null;
|
|
1468
|
+
"Can be combined with": null;
|
|
1417
1469
|
}>, false>;
|
|
1418
1470
|
}, undefined>;
|
|
1419
1471
|
export declare const NestedTranslationMap: <Name extends string, T extends Record<string, DB.MemberDecl>, R extends boolean>(MemberDeclCreator: <T_1 extends DB.Type>(options: {
|
package/lib/types/Locale.js
CHANGED
|
@@ -1453,6 +1453,62 @@ export const Locale = DB.Entity(import.meta.url, {
|
|
|
1453
1453
|
"Structure Points": null,
|
|
1454
1454
|
".input {$value :number} {{{$value} Structure Points}}": null,
|
|
1455
1455
|
"{$value} Structure Points": null,
|
|
1456
|
+
// poisons/elixirs
|
|
1457
|
+
"{$types} poison": null,
|
|
1458
|
+
"Weapon (poison)": null,
|
|
1459
|
+
"Ingestion (poison)": null,
|
|
1460
|
+
"Inhalation (poison)": null,
|
|
1461
|
+
"Contact (poison)": null,
|
|
1462
|
+
"Level": null,
|
|
1463
|
+
"Type": null,
|
|
1464
|
+
"animal venom": null,
|
|
1465
|
+
"alchemical poison": null,
|
|
1466
|
+
"mineral poison": null,
|
|
1467
|
+
"plant poison": null,
|
|
1468
|
+
"demonic poison": null,
|
|
1469
|
+
"Archaic laboratory": null,
|
|
1470
|
+
"Witch kitchen": null,
|
|
1471
|
+
"Alchemist’s laboratory": null,
|
|
1472
|
+
"Resistance": null,
|
|
1473
|
+
"{$first} or {$second}, depending on which value is lower": null,
|
|
1474
|
+
"Start": null,
|
|
1475
|
+
"immediate": null,
|
|
1476
|
+
"instant": null,
|
|
1477
|
+
"Typical Ingredients": null,
|
|
1478
|
+
"Price of Ingredients/Level": null,
|
|
1479
|
+
"Laboratory": null,
|
|
1480
|
+
"Brewing Difficulty": null,
|
|
1481
|
+
"Brewing Process": null,
|
|
1482
|
+
"Trade Secret": null,
|
|
1483
|
+
"The poison levels equals the QL.": null,
|
|
1484
|
+
".input {$value :number} {{{$value} applications every {$interval}}}": null,
|
|
1485
|
+
"{$valueRange} on {$dice}": null,
|
|
1486
|
+
"Ingestion": null,
|
|
1487
|
+
"Side Effect": null,
|
|
1488
|
+
"Overdose": null,
|
|
1489
|
+
"Legality": null,
|
|
1490
|
+
"legal": null,
|
|
1491
|
+
"illegal": null,
|
|
1492
|
+
"Addiction": null,
|
|
1493
|
+
"Value/Cost": null,
|
|
1494
|
+
"cannot be extracted": null,
|
|
1495
|
+
".input {$hiddenCount :number} {{Alternative Names}}": null,
|
|
1496
|
+
".input {$count :number} {{check required every {$count}. application}}": null,
|
|
1497
|
+
".input {$count :number} {{check required every {$count}. application in the same month}}": null,
|
|
1498
|
+
// sex practices
|
|
1499
|
+
"Failed": null,
|
|
1500
|
+
// diseases
|
|
1501
|
+
"Progress": null,
|
|
1502
|
+
"Incubation Time": null,
|
|
1503
|
+
"Damage": null,
|
|
1504
|
+
"Causes": null,
|
|
1505
|
+
"Treatment": null,
|
|
1506
|
+
"Antidote": null,
|
|
1507
|
+
".input {$value :number} {{{$value}%}}": null,
|
|
1508
|
+
"Animal Types": null,
|
|
1509
|
+
"Communicability to Intelligent Creatures": null,
|
|
1510
|
+
// personality traits
|
|
1511
|
+
"Can be combined with": null,
|
|
1456
1512
|
}, { allKeysAreRequired: true }),
|
|
1457
1513
|
}),
|
|
1458
1514
|
}),
|
|
@@ -43,7 +43,7 @@ export const Elixir = DB.Entity(import.meta.url, {
|
|
|
43
43
|
type: DB.String({ minLength: 1 }),
|
|
44
44
|
}),
|
|
45
45
|
special: DB.Optional({
|
|
46
|
-
comment: "
|
|
46
|
+
comment: "Special information about the elixir.",
|
|
47
47
|
type: DB.String({ minLength: 1 }),
|
|
48
48
|
}),
|
|
49
49
|
alternative_names: DB.Optional({
|
|
@@ -98,17 +98,24 @@ export declare const Poison: DB.Entity<"Poison", {
|
|
|
98
98
|
}>, []>>, true>;
|
|
99
99
|
addiction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"IntoxicantAddiction", DB.Object<{
|
|
100
100
|
chance: DB.MemberDecl<DB.Integer, false>;
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
101
|
+
check: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"IntoxicantAddictionCheck", DB.Object<{
|
|
102
|
+
interval: DB.MemberDecl<DB.Integer, true>;
|
|
103
|
+
onlySameMonth: DB.MemberDecl<DB.Boolean, false>;
|
|
104
|
+
}>, []>>, false>;
|
|
105
|
+
withdrawalPrevention: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"IntoxicantAddictionWithdrawalPrevention", DB.Object<{
|
|
106
|
+
amount: DB.MemberDecl<DB.Integer, true>;
|
|
107
|
+
interval: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"IntoxicantAddictionWithdrawalPreventionInterval", {
|
|
108
|
+
Constant: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ConstantIntoxicantAddictionInterval", DB.Object<{
|
|
109
|
+
value: DB.MemberDecl<DB.Integer, true>;
|
|
110
|
+
}>, []>>>;
|
|
111
|
+
DiceBased: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"DiceBasedIntoxicantAddictionInterval", DB.Object<{
|
|
112
|
+
dice: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Dice", DB.Object<{
|
|
113
|
+
number: DB.MemberDecl<DB.Integer, true>;
|
|
114
|
+
sides: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"DieType", DB.Integer, []>>, true>;
|
|
115
|
+
}>, []>>, true>;
|
|
116
|
+
}>, []>>>;
|
|
117
|
+
}, []>>, true>;
|
|
118
|
+
}>, []>>, true>;
|
|
112
119
|
translations: DB.MemberDecl<DB.NestedEntityMap<"IntoxicantAddictionTranslation", {
|
|
113
120
|
chance: DB.MemberDecl<DB.String, true>;
|
|
114
121
|
}>, false>;
|
|
@@ -145,17 +152,24 @@ export declare const Poison: DB.Entity<"Poison", {
|
|
|
145
152
|
}>, []>>, true>;
|
|
146
153
|
addiction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"IntoxicantAddiction", DB.Object<{
|
|
147
154
|
chance: DB.MemberDecl<DB.Integer, false>;
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
155
|
+
check: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"IntoxicantAddictionCheck", DB.Object<{
|
|
156
|
+
interval: DB.MemberDecl<DB.Integer, true>;
|
|
157
|
+
onlySameMonth: DB.MemberDecl<DB.Boolean, false>;
|
|
158
|
+
}>, []>>, false>;
|
|
159
|
+
withdrawalPrevention: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"IntoxicantAddictionWithdrawalPrevention", DB.Object<{
|
|
160
|
+
amount: DB.MemberDecl<DB.Integer, true>;
|
|
161
|
+
interval: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"IntoxicantAddictionWithdrawalPreventionInterval", {
|
|
162
|
+
Constant: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ConstantIntoxicantAddictionInterval", DB.Object<{
|
|
163
|
+
value: DB.MemberDecl<DB.Integer, true>;
|
|
164
|
+
}>, []>>>;
|
|
165
|
+
DiceBased: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"DiceBasedIntoxicantAddictionInterval", DB.Object<{
|
|
166
|
+
dice: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Dice", DB.Object<{
|
|
167
|
+
number: DB.MemberDecl<DB.Integer, true>;
|
|
168
|
+
sides: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"DieType", DB.Integer, []>>, true>;
|
|
169
|
+
}>, []>>, true>;
|
|
170
|
+
}>, []>>>;
|
|
171
|
+
}, []>>, true>;
|
|
172
|
+
}>, []>>, true>;
|
|
159
173
|
translations: DB.MemberDecl<DB.NestedEntityMap<"IntoxicantAddictionTranslation", {
|
|
160
174
|
chance: DB.MemberDecl<DB.String, true>;
|
|
161
175
|
}>, false>;
|
|
@@ -440,17 +454,24 @@ export declare const AlchemicalPoison: DB.TypeAlias<"AlchemicalPoison", DB.Objec
|
|
|
440
454
|
}>, []>>, true>;
|
|
441
455
|
addiction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"IntoxicantAddiction", DB.Object<{
|
|
442
456
|
chance: DB.MemberDecl<DB.Integer, false>;
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
457
|
+
check: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"IntoxicantAddictionCheck", DB.Object<{
|
|
458
|
+
interval: DB.MemberDecl<DB.Integer, true>;
|
|
459
|
+
onlySameMonth: DB.MemberDecl<DB.Boolean, false>;
|
|
460
|
+
}>, []>>, false>;
|
|
461
|
+
withdrawalPrevention: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"IntoxicantAddictionWithdrawalPrevention", DB.Object<{
|
|
462
|
+
amount: DB.MemberDecl<DB.Integer, true>;
|
|
463
|
+
interval: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"IntoxicantAddictionWithdrawalPreventionInterval", {
|
|
464
|
+
Constant: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ConstantIntoxicantAddictionInterval", DB.Object<{
|
|
465
|
+
value: DB.MemberDecl<DB.Integer, true>;
|
|
466
|
+
}>, []>>>;
|
|
467
|
+
DiceBased: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"DiceBasedIntoxicantAddictionInterval", DB.Object<{
|
|
468
|
+
dice: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Dice", DB.Object<{
|
|
469
|
+
number: DB.MemberDecl<DB.Integer, true>;
|
|
470
|
+
sides: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"DieType", DB.Integer, []>>, true>;
|
|
471
|
+
}>, []>>, true>;
|
|
472
|
+
}>, []>>>;
|
|
473
|
+
}, []>>, true>;
|
|
474
|
+
}>, []>>, true>;
|
|
454
475
|
translations: DB.MemberDecl<DB.NestedEntityMap<"IntoxicantAddictionTranslation", {
|
|
455
476
|
chance: DB.MemberDecl<DB.String, true>;
|
|
456
477
|
}>, false>;
|
|
@@ -487,17 +508,24 @@ export declare const PlantPoison: DB.TypeAlias<"PlantPoison", DB.Object<{
|
|
|
487
508
|
}>, []>>, true>;
|
|
488
509
|
addiction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"IntoxicantAddiction", DB.Object<{
|
|
489
510
|
chance: DB.MemberDecl<DB.Integer, false>;
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
511
|
+
check: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"IntoxicantAddictionCheck", DB.Object<{
|
|
512
|
+
interval: DB.MemberDecl<DB.Integer, true>;
|
|
513
|
+
onlySameMonth: DB.MemberDecl<DB.Boolean, false>;
|
|
514
|
+
}>, []>>, false>;
|
|
515
|
+
withdrawalPrevention: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"IntoxicantAddictionWithdrawalPrevention", DB.Object<{
|
|
516
|
+
amount: DB.MemberDecl<DB.Integer, true>;
|
|
517
|
+
interval: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"IntoxicantAddictionWithdrawalPreventionInterval", {
|
|
518
|
+
Constant: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ConstantIntoxicantAddictionInterval", DB.Object<{
|
|
519
|
+
value: DB.MemberDecl<DB.Integer, true>;
|
|
520
|
+
}>, []>>>;
|
|
521
|
+
DiceBased: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"DiceBasedIntoxicantAddictionInterval", DB.Object<{
|
|
522
|
+
dice: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Dice", DB.Object<{
|
|
523
|
+
number: DB.MemberDecl<DB.Integer, true>;
|
|
524
|
+
sides: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"DieType", DB.Integer, []>>, true>;
|
|
525
|
+
}>, []>>, true>;
|
|
526
|
+
}>, []>>>;
|
|
527
|
+
}, []>>, true>;
|
|
528
|
+
}>, []>>, true>;
|
|
501
529
|
translations: DB.MemberDecl<DB.NestedEntityMap<"IntoxicantAddictionTranslation", {
|
|
502
530
|
chance: DB.MemberDecl<DB.String, true>;
|
|
503
531
|
}>, false>;
|
|
@@ -539,17 +567,24 @@ export declare const Intoxicant: DB.TypeAlias<"Intoxicant", DB.Object<{
|
|
|
539
567
|
}>, []>>, true>;
|
|
540
568
|
addiction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"IntoxicantAddiction", DB.Object<{
|
|
541
569
|
chance: DB.MemberDecl<DB.Integer, false>;
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
570
|
+
check: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"IntoxicantAddictionCheck", DB.Object<{
|
|
571
|
+
interval: DB.MemberDecl<DB.Integer, true>;
|
|
572
|
+
onlySameMonth: DB.MemberDecl<DB.Boolean, false>;
|
|
573
|
+
}>, []>>, false>;
|
|
574
|
+
withdrawalPrevention: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"IntoxicantAddictionWithdrawalPrevention", DB.Object<{
|
|
575
|
+
amount: DB.MemberDecl<DB.Integer, true>;
|
|
576
|
+
interval: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"IntoxicantAddictionWithdrawalPreventionInterval", {
|
|
577
|
+
Constant: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ConstantIntoxicantAddictionInterval", DB.Object<{
|
|
578
|
+
value: DB.MemberDecl<DB.Integer, true>;
|
|
579
|
+
}>, []>>>;
|
|
580
|
+
DiceBased: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"DiceBasedIntoxicantAddictionInterval", DB.Object<{
|
|
581
|
+
dice: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Dice", DB.Object<{
|
|
582
|
+
number: DB.MemberDecl<DB.Integer, true>;
|
|
583
|
+
sides: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"DieType", DB.Integer, []>>, true>;
|
|
584
|
+
}>, []>>, true>;
|
|
585
|
+
}>, []>>>;
|
|
586
|
+
}, []>>, true>;
|
|
587
|
+
}>, []>>, true>;
|
|
553
588
|
translations: DB.MemberDecl<DB.NestedEntityMap<"IntoxicantAddictionTranslation", {
|
|
554
589
|
chance: DB.MemberDecl<DB.String, true>;
|
|
555
590
|
}>, false>;
|
|
@@ -566,17 +601,24 @@ export declare const IntoxicantLegality: DB.TypeAlias<"IntoxicantLegality", DB.O
|
|
|
566
601
|
}>, []>;
|
|
567
602
|
export declare const IntoxicantAddiction: DB.TypeAlias<"IntoxicantAddiction", DB.Object<{
|
|
568
603
|
chance: DB.MemberDecl<DB.Integer, false>;
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
604
|
+
check: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"IntoxicantAddictionCheck", DB.Object<{
|
|
605
|
+
interval: DB.MemberDecl<DB.Integer, true>;
|
|
606
|
+
onlySameMonth: DB.MemberDecl<DB.Boolean, false>;
|
|
607
|
+
}>, []>>, false>;
|
|
608
|
+
withdrawalPrevention: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"IntoxicantAddictionWithdrawalPrevention", DB.Object<{
|
|
609
|
+
amount: DB.MemberDecl<DB.Integer, true>;
|
|
610
|
+
interval: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"IntoxicantAddictionWithdrawalPreventionInterval", {
|
|
611
|
+
Constant: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ConstantIntoxicantAddictionInterval", DB.Object<{
|
|
612
|
+
value: DB.MemberDecl<DB.Integer, true>;
|
|
613
|
+
}>, []>>>;
|
|
614
|
+
DiceBased: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"DiceBasedIntoxicantAddictionInterval", DB.Object<{
|
|
615
|
+
dice: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Dice", DB.Object<{
|
|
616
|
+
number: DB.MemberDecl<DB.Integer, true>;
|
|
617
|
+
sides: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"DieType", DB.Integer, []>>, true>;
|
|
618
|
+
}>, []>>, true>;
|
|
619
|
+
}>, []>>>;
|
|
620
|
+
}, []>>, true>;
|
|
621
|
+
}>, []>>, true>;
|
|
580
622
|
translations: DB.MemberDecl<DB.NestedEntityMap<"IntoxicantAddictionTranslation", {
|
|
581
623
|
chance: DB.MemberDecl<DB.String, true>;
|
|
582
624
|
}>, false>;
|
|
@@ -412,9 +412,13 @@ export const IntoxicantAddiction = DB.TypeAlias(import.meta.url, {
|
|
|
412
412
|
comment: "The chance of getting addicted after an ingestion in percent. Some intoxicants do not have a contant chance of addiction.",
|
|
413
413
|
type: DB.Integer({ minimum: 0, maximum: 100, multipleOf: 5 }),
|
|
414
414
|
}),
|
|
415
|
-
|
|
415
|
+
check: DB.Optional({
|
|
416
|
+
comment: "The interval at which to check for addiction after an ingestion. If set to one, every ingestion has to be checked for addiction. If set to two, every second ingestion has to be checked, and so on.",
|
|
417
|
+
type: DB.IncludeIdentifier(IntoxicantAddictionCheck),
|
|
418
|
+
}),
|
|
419
|
+
withdrawalPrevention: DB.Required({
|
|
416
420
|
comment: "The maximum interval at which it, while addicted, must be ingested to not suffer from withdrawal symptoms.",
|
|
417
|
-
type: DB.IncludeIdentifier(
|
|
421
|
+
type: DB.IncludeIdentifier(IntoxicantAddictionWithdrawalPrevention),
|
|
418
422
|
}),
|
|
419
423
|
translations: NestedTranslationMap(DB.Optional, "IntoxicantAddiction", DB.Object({
|
|
420
424
|
chance: DB.Required({
|
|
@@ -424,8 +428,34 @@ export const IntoxicantAddiction = DB.TypeAlias(import.meta.url, {
|
|
|
424
428
|
})),
|
|
425
429
|
}),
|
|
426
430
|
});
|
|
427
|
-
const
|
|
428
|
-
name: "
|
|
431
|
+
const IntoxicantAddictionCheck = DB.TypeAlias(import.meta.url, {
|
|
432
|
+
name: "IntoxicantAddictionCheck",
|
|
433
|
+
comment: "The interval at which to check for addiction after an ingestion. If set to one, every ingestion has to be checked for addiction. If set to two, every second ingestion has to be checked, and so on.",
|
|
434
|
+
type: () => DB.Object({
|
|
435
|
+
interval: DB.Required({
|
|
436
|
+
type: DB.Integer({ minimum: 1 }),
|
|
437
|
+
}),
|
|
438
|
+
onlySameMonth: DB.Optional({
|
|
439
|
+
comment: "If true, only ingestions in the same month count for the check interval.",
|
|
440
|
+
type: DB.Boolean(),
|
|
441
|
+
}),
|
|
442
|
+
}),
|
|
443
|
+
});
|
|
444
|
+
const IntoxicantAddictionWithdrawalPrevention = DB.TypeAlias(import.meta.url, {
|
|
445
|
+
name: "IntoxicantAddictionWithdrawalPrevention",
|
|
446
|
+
type: () => DB.Object({
|
|
447
|
+
amount: DB.Required({
|
|
448
|
+
comment: "The amount that must be ingested within the interval to prevent withdrawal symptoms.",
|
|
449
|
+
type: DB.Integer({ minimum: 1 }),
|
|
450
|
+
}),
|
|
451
|
+
interval: DB.Required({
|
|
452
|
+
comment: "The maximum interval at which it, while addicted, must be ingested to not suffer from withdrawal symptoms.",
|
|
453
|
+
type: DB.IncludeIdentifier(IntoxicantAddictionWithdrawalPreventionInterval),
|
|
454
|
+
}),
|
|
455
|
+
}),
|
|
456
|
+
});
|
|
457
|
+
const IntoxicantAddictionWithdrawalPreventionInterval = DB.Enum(import.meta.url, {
|
|
458
|
+
name: "IntoxicantAddictionWithdrawalPreventionInterval",
|
|
429
459
|
comment: "The maximum interval at which it, while addicted, must be ingested to not suffer from withdrawal symptoms.",
|
|
430
460
|
values: () => ({
|
|
431
461
|
Constant: DB.EnumCase({ type: DB.IncludeIdentifier(ConstantIntoxicantAddictionInterval) }),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "optolith-database-schema",
|
|
3
|
-
"version": "0.31.
|
|
3
|
+
"version": "0.31.3",
|
|
4
4
|
"description": "Definitions and utilities for the flat-file database of Optolith, a character creation tool for the Pen and Paper RPG “The Dark Eye 5”, and its external integrations into other software.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"tde",
|