@archivist-gg/dnd5e 0.3.10 → 0.3.13
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/LICENSES/SRD.md +38 -3
- package/dist/armor/armor.codec.js +3 -3
- package/dist/armor/armor.parser.js +2 -2
- package/dist/armor/armor.schema.d.ts +1 -0
- package/dist/armor/armor.schema.js +1 -1
- package/dist/armor/armor.types.d.ts +2 -0
- package/dist/background/background.codec.js +5 -5
- package/dist/background/background.parser.js +4 -4
- package/dist/background/background.schema.js +3 -3
- package/dist/chunk-2LULMQTF.js +14 -0
- package/dist/{chunk-CBEKVAX4.js → chunk-4BZ47YJ4.js} +10 -3
- package/dist/{chunk-22MOUU2G.js → chunk-4SLOJXJ4.js} +1 -1
- package/dist/{chunk-2DFENQIJ.js → chunk-5GKJAUMX.js} +2 -0
- package/dist/{chunk-J77CKYV3.js → chunk-5KGV6TF7.js} +1 -1
- package/dist/{chunk-3UNP3G4D.js → chunk-6ZY3U6BQ.js} +1 -1
- package/dist/{chunk-DNAJRMNN.js → chunk-A54HHCWW.js} +6 -7
- package/dist/{chunk-2M34FLAY.js → chunk-BRGLDWUP.js} +3 -1
- package/dist/chunk-CM5CWO4K.js +735 -0
- package/dist/{chunk-MI7P3NX3.js → chunk-DPM6V7YX.js} +2 -2
- package/dist/chunk-EJP263OP.js +186 -0
- package/dist/{chunk-G247QXWW.js → chunk-EL6QPF6I.js} +1 -1
- package/dist/{chunk-SMLXZUBH.js → chunk-EYX4JMAU.js} +4 -1
- package/dist/{chunk-AW3EHF3L.js → chunk-FC4IGH5Y.js} +1 -1
- package/dist/{chunk-PI4LLJG4.js → chunk-FPGXFD2M.js} +2 -2
- package/dist/{chunk-23LZLBJK.js → chunk-G6MHJDVT.js} +6 -2
- package/dist/{chunk-NWDF5HG3.js → chunk-G7ED5H2G.js} +1 -1
- package/dist/chunk-H5PTKYXL.js +101 -0
- package/dist/{chunk-LWFTHJIE.js → chunk-HHBD4SQ6.js} +1 -1
- package/dist/{chunk-PP2UHLBA.js → chunk-HJQNK3J5.js} +8 -0
- package/dist/{chunk-JC5UNIVM.js → chunk-HS6FIOLP.js} +2 -0
- package/dist/chunk-IHE6KVC3.js +13 -0
- package/dist/{chunk-BLRW2UU6.js → chunk-J53ERF6K.js} +2 -2
- package/dist/{chunk-MQ747UCR.js → chunk-JNNNBEUH.js} +65 -2
- package/dist/{chunk-LDDCNPHD.js → chunk-K5NJBTE2.js} +1 -1
- package/dist/{chunk-4ISR76DH.js → chunk-KSTV7J2U.js} +9 -3
- package/dist/chunk-LBEXLN6I.js +91 -0
- package/dist/{chunk-UBBKSYBY.js → chunk-LHZXYFBU.js} +30 -1
- package/dist/{chunk-OYUEUKKF.js → chunk-LVX6TQ3R.js} +12 -8
- package/dist/{chunk-R747YKS7.js → chunk-M2OWVAZG.js} +1 -1
- package/dist/{chunk-7YU4NPKR.js → chunk-MC5YJ4PB.js} +1 -1
- package/dist/{chunk-JCEV7KYN.js → chunk-MUIU7RZ3.js} +1 -1
- package/dist/{chunk-JSZ4H6AQ.js → chunk-MWCCGPG3.js} +1 -1
- package/dist/{chunk-R2ZV233X.js → chunk-MYY2C5MB.js} +3 -3
- package/dist/{chunk-S56D6B6C.js → chunk-PLOSP4XQ.js} +3 -3
- package/dist/{chunk-JANNRGJC.js → chunk-PX25R3DK.js} +1 -1
- package/dist/{chunk-V373TRJE.js → chunk-Q5XTEYHD.js} +191 -125
- package/dist/{chunk-MAH6DCRI.js → chunk-Q6UOHCCT.js} +1 -1
- package/dist/{chunk-HLQAFZKQ.js → chunk-QEO7LYTG.js} +216 -95
- package/dist/{chunk-PJMG5XV3.js → chunk-QSBJ6NEM.js} +1 -1
- package/dist/{chunk-BL3VELKP.js → chunk-R2V5LN3I.js} +1 -1
- package/dist/{chunk-4DOMDEBZ.js → chunk-RQNJXADQ.js} +1 -1
- package/dist/{chunk-GFZ7PITJ.js → chunk-S3YUXDSC.js} +6 -1
- package/dist/chunk-T5GZBKIQ.js +927 -0
- package/dist/{chunk-PZCE7DJM.js → chunk-UE6LKRXQ.js} +15 -1
- package/dist/{chunk-5N2GW72F.js → chunk-UZXG6QSY.js} +2 -1
- package/dist/{chunk-QHMWA3SZ.js → chunk-VDPRBUU5.js} +1 -1
- package/dist/{chunk-4XTNPNQB.js → chunk-VPYBK2MG.js} +1 -1
- package/dist/{chunk-V6LJFP4R.js → chunk-X7VZY4ON.js} +2 -2
- package/dist/{chunk-HZA7OE7N.js → chunk-XCFC7LGF.js} +2 -1
- package/dist/{chunk-BIA32MQ5.js → chunk-XJRNEQPD.js} +1 -1
- package/dist/{chunk-OZP6JFGT.js → chunk-XY6X2APM.js} +3 -1
- package/dist/{chunk-UIRMA5KM.js → chunk-YDGMBMYI.js} +1 -1
- package/dist/{chunk-6X4KUDMU.js → chunk-ZCTUYGNV.js} +7 -2
- package/dist/{chunk-VQAXTIBW.js → chunk-ZDAEGJH4.js} +2 -0
- package/dist/{chunk-XTRDCSJB.js → chunk-ZMJQUZQH.js} +4 -1
- package/dist/chunk-ZUQW5VBZ.js +89 -0
- package/dist/class/class.codec.js +7 -7
- package/dist/class/class.parser.js +6 -6
- package/dist/class/class.schema.d.ts +10 -0
- package/dist/class/class.schema.js +5 -5
- package/dist/entities/base-item-resolver.js +2 -2
- package/dist/entities/slug.d.ts +18 -8
- package/dist/entities/slug.js +3 -1
- package/dist/feat/feat.codec.js +5 -5
- package/dist/feat/feat.parser.js +4 -4
- package/dist/feat/feat.schema.d.ts +16 -3
- package/dist/feat/feat.schema.js +3 -3
- package/dist/index.js +5277 -2017
- package/dist/item/item.actions-map.d.ts +40 -5
- package/dist/item/item.actions-map.js +5 -84
- package/dist/item/item.attunement.js +3 -9
- package/dist/item/item.bonuses.js +5 -2
- package/dist/item/item.codec.js +3 -3
- package/dist/item/item.conditions.js +4 -1
- package/dist/item/item.conditions.types.d.ts +4 -0
- package/dist/item/item.cost.d.ts +3 -0
- package/dist/item/item.cost.js +29 -0
- package/dist/item/item.icon.d.ts +15 -0
- package/dist/item/item.icon.js +211 -0
- package/dist/item/item.parser.js +2 -2
- package/dist/item/item.schema.d.ts +16 -1
- package/dist/item/item.schema.js +3 -1
- package/dist/item/item.types.d.ts +9 -2
- package/dist/monster/monster.parser.js +5 -5
- package/dist/monster/monster.schema.js +4 -4
- package/dist/optional-feature/optional-feature.codec.js +4 -4
- package/dist/optional-feature/optional-feature.parser.js +3 -3
- package/dist/optional-feature/optional-feature.schema.d.ts +229 -3
- package/dist/optional-feature/optional-feature.schema.js +6 -2
- package/dist/pc/pc.additional-spells.js +4 -4
- package/dist/pc/pc.asi-flatten.d.ts +62 -1
- package/dist/pc/pc.asi-flatten.js +16 -0
- package/dist/pc/pc.conditions.js +1 -1
- package/dist/pc/pc.containment.d.ts +45 -0
- package/dist/pc/pc.containment.js +24 -0
- package/dist/pc/pc.decision-engine.d.ts +21 -3
- package/dist/pc/pc.decision-engine.js +23 -14
- package/dist/pc/pc.entry-overrides.d.ts +79 -0
- package/dist/pc/pc.entry-overrides.js +40 -0
- package/dist/pc/pc.equipment.d.ts +2 -2
- package/dist/pc/pc.equipment.js +18 -7
- package/dist/pc/pc.feature-effects.js +2 -2
- package/dist/pc/pc.infusions.d.ts +220 -0
- package/dist/pc/pc.infusions.js +64 -0
- package/dist/pc/pc.parser.js +18 -1
- package/dist/pc/pc.pools.d.ts +1 -1
- package/dist/pc/pc.pools.js +11 -3
- package/dist/pc/pc.proficiencies.js +21 -14
- package/dist/pc/pc.recalc.d.ts +39 -36
- package/dist/pc/pc.recalc.js +60 -32
- package/dist/pc/pc.resolver.js +21 -14
- package/dist/pc/pc.resource-seed.js +1 -1
- package/dist/pc/pc.resources.d.ts +6 -1
- package/dist/pc/pc.resources.js +3 -1
- package/dist/pc/pc.rest.d.ts +21 -1
- package/dist/pc/pc.rest.js +52 -19
- package/dist/pc/pc.schema.d.ts +14 -0
- package/dist/pc/pc.schema.js +1 -1
- package/dist/pc/pc.slotting.d.ts +36 -3
- package/dist/pc/pc.slotting.js +13 -5
- package/dist/pc/pc.tool-picks.d.ts +51 -0
- package/dist/pc/pc.tool-picks.js +18 -0
- package/dist/pc/pc.types.d.ts +70 -12
- package/dist/pc/pool-layout.d.ts +14 -0
- package/dist/pc/pool-layout.js +7 -3
- package/dist/race/race.codec.js +6 -6
- package/dist/race/race.parser.js +5 -5
- package/dist/race/race.schema.js +4 -4
- package/dist/schemas/attack-schema.d.ts +1 -1
- package/dist/schemas/choice-schema.js +2 -2
- package/dist/schemas/feature-effect-schema.d.ts +16 -3
- package/dist/schemas/feature-effect-schema.js +1 -1
- package/dist/schemas/feature-schema.js +3 -3
- package/dist/schemas/selection-pool-schema.d.ts +10 -0
- package/dist/schemas/selection-pool-schema.js +1 -1
- package/dist/spell/spell.codec.js +3 -3
- package/dist/spell/spell.parser.js +2 -2
- package/dist/spell/spell.scaling.d.ts +34 -10
- package/dist/spell/spell.scaling.js +36 -4
- package/dist/spell/spell.schema.d.ts +1 -0
- package/dist/spell/spell.schema.js +1 -1
- package/dist/spell/spell.types.d.ts +4 -0
- package/dist/srd/retired-items.d.ts +14 -0
- package/dist/srd/retired-items.js +11 -0
- package/dist/subclass/subclass.codec.js +7 -7
- package/dist/subclass/subclass.parser.js +6 -6
- package/dist/subclass/subclass.schema.d.ts +10 -0
- package/dist/subclass/subclass.schema.js +5 -5
- package/dist/types/choice.d.ts +8 -0
- package/dist/types/equipment-grant.d.ts +18 -1
- package/dist/types/equipment-grant.js +12 -0
- package/dist/types/feature-effect.d.ts +6 -1
- package/dist/types/optional-feature.types.d.ts +79 -1
- package/dist/types/selection-pool.d.ts +16 -1
- package/dist/weapon/weapon.classify.d.ts +10 -8
- package/dist/weapon/weapon.classify.js +2 -2
- package/dist/weapon/weapon.codec.js +3 -3
- package/dist/weapon/weapon.parser.js +2 -2
- package/dist/weapon/weapon.schema.d.ts +1 -0
- package/dist/weapon/weapon.schema.js +1 -1
- package/dist/weapon/weapon.types.d.ts +2 -0
- package/package.json +1 -1
- package/dist/chunk-O4SRD3J5.js +0 -165
- package/dist/chunk-WXWPK3LI.js +0 -55
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import {
|
|
2
|
+
bareEntitySlug
|
|
3
|
+
} from "./chunk-ZCTUYGNV.js";
|
|
4
|
+
import {
|
|
5
|
+
ABILITY_KEYS
|
|
6
|
+
} from "./chunk-WELIKLZF.js";
|
|
7
|
+
|
|
8
|
+
// src/pc/pc.asi-flatten.ts
|
|
9
|
+
function flattenAsiOrFeat(choice) {
|
|
10
|
+
var _a;
|
|
11
|
+
if (choice.kind !== "select-inline" || choice.id !== "asi-or-feat") return choice;
|
|
12
|
+
const featBranches = choice.options.filter((o) => {
|
|
13
|
+
var _a2;
|
|
14
|
+
return ((_a2 = o.choices) != null ? _a2 : []).some((c) => c.kind === "select-entity" && c.entity_type === "feat");
|
|
15
|
+
});
|
|
16
|
+
if (featBranches.length !== 1) return choice;
|
|
17
|
+
const inner = (_a = featBranches[0].choices) != null ? _a : [];
|
|
18
|
+
if (inner.length !== 1) return choice;
|
|
19
|
+
const only = inner[0];
|
|
20
|
+
if (only.kind !== "select-entity" || only.entity_type !== "feat") return choice;
|
|
21
|
+
return only;
|
|
22
|
+
}
|
|
23
|
+
var ASI_FEAT_BARE = "ability-score-improvement";
|
|
24
|
+
function legacyAsiBranch(block) {
|
|
25
|
+
if (!block || typeof block !== "object") return null;
|
|
26
|
+
const b = block;
|
|
27
|
+
if (typeof b.feat === "string") return null;
|
|
28
|
+
const asi = b.asi;
|
|
29
|
+
if (!asi || typeof asi !== "object" || Array.isArray(asi)) return null;
|
|
30
|
+
const out = {};
|
|
31
|
+
let any = false;
|
|
32
|
+
for (const ab of ABILITY_KEYS) {
|
|
33
|
+
const v = asi[ab];
|
|
34
|
+
if (typeof v === "number") {
|
|
35
|
+
out[ab] = v;
|
|
36
|
+
any = true;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
return any ? out : null;
|
|
40
|
+
}
|
|
41
|
+
function convertibleLegacyAsi(block) {
|
|
42
|
+
const alloc = legacyAsiBranch(block);
|
|
43
|
+
if (!alloc) return null;
|
|
44
|
+
const branch = block["asi-or-feat"];
|
|
45
|
+
return branch === void 0 || branch === "asi" ? alloc : null;
|
|
46
|
+
}
|
|
47
|
+
function resolveLegacyAsiFeat(registry, classEntity) {
|
|
48
|
+
if (!classEntity) return null;
|
|
49
|
+
const prefix = classEntity.slug.split("_")[0];
|
|
50
|
+
const ranked = [];
|
|
51
|
+
for (const e of registry.search("", "feat", Number.POSITIVE_INFINITY)) {
|
|
52
|
+
if (bareEntitySlug(e.slug) !== ASI_FEAT_BARE) continue;
|
|
53
|
+
const data = e.data;
|
|
54
|
+
const choices = Array.isArray(data == null ? void 0 : data.choices) ? data.choices : [];
|
|
55
|
+
const points = choices.find((c) => (c == null ? void 0 : c.kind) === "ability-points" && typeof c.id === "string");
|
|
56
|
+
if (!points) continue;
|
|
57
|
+
ranked.push({
|
|
58
|
+
slug: e.slug,
|
|
59
|
+
childId: points.id,
|
|
60
|
+
prefixHit: e.slug.split("_")[0] === prefix,
|
|
61
|
+
editionHit: classEntity.edition !== void 0 && (data == null ? void 0 : data.edition) === classEntity.edition
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
ranked.sort((a, b) => Number(b.prefixHit) - Number(a.prefixHit) || Number(b.editionHit) - Number(a.editionHit) || (a.slug < b.slug ? -1 : a.slug > b.slug ? 1 : 0));
|
|
65
|
+
return ranked.length ? { slug: ranked[0].slug, childId: ranked[0].childId } : null;
|
|
66
|
+
}
|
|
67
|
+
function migrateLegacyAsiLevel(block, key, value, registry, classEntity) {
|
|
68
|
+
if (key !== "feat" && !key.startsWith("feat:")) return null;
|
|
69
|
+
const alloc = convertibleLegacyAsi(block);
|
|
70
|
+
if (!alloc) return null;
|
|
71
|
+
const asi = resolveLegacyAsiFeat(registry, classEntity);
|
|
72
|
+
if (!asi) return null;
|
|
73
|
+
const childKey = `feat:${asi.childId}`;
|
|
74
|
+
const isSwitch = key === "feat" && value !== asi.slug;
|
|
75
|
+
const out = {};
|
|
76
|
+
for (const [k, v] of Object.entries(block)) {
|
|
77
|
+
if (k === "asi-or-feat" || k === "asi" || k === childKey) continue;
|
|
78
|
+
out[k] = v;
|
|
79
|
+
}
|
|
80
|
+
out.feat = asi.slug;
|
|
81
|
+
if (!isSwitch) out[childKey] = alloc;
|
|
82
|
+
return out;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export {
|
|
86
|
+
flattenAsiOrFeat,
|
|
87
|
+
legacyAsiBranch,
|
|
88
|
+
convertibleLegacyAsi,
|
|
89
|
+
resolveLegacyAsiFeat,
|
|
90
|
+
migrateLegacyAsiLevel
|
|
91
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
resolveBaseItem
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-CM5CWO4K.js";
|
|
4
4
|
|
|
5
5
|
// src/pc/pc.slotting.ts
|
|
6
6
|
function isItemEntity(e) {
|
|
@@ -38,6 +38,31 @@ function effectiveArmor(entity, registry) {
|
|
|
38
38
|
}
|
|
39
39
|
return null;
|
|
40
40
|
}
|
|
41
|
+
function effectiveWeapon(entity, registry) {
|
|
42
|
+
if (isWeaponEntity(entity)) return entity;
|
|
43
|
+
if (isItemEntity(entity) && typeof entity.base_item === "string") {
|
|
44
|
+
const base = resolveBaseItem(entity.base_item, registry);
|
|
45
|
+
if ((base == null ? void 0 : base.entityType) === "weapon" && isWeaponEntity(base.data)) return base.data;
|
|
46
|
+
}
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
function isTwoHandedWeapon(entity, registry) {
|
|
50
|
+
if (!entity || typeof entity !== "object") return false;
|
|
51
|
+
const own = entity.properties;
|
|
52
|
+
if (Array.isArray(own) && own.length > 0) return own.some((p) => p === "two_handed");
|
|
53
|
+
if (!registry) return false;
|
|
54
|
+
const weapon = effectiveWeapon(entity, registry);
|
|
55
|
+
return !!weapon && Array.isArray(weapon.properties) && weapon.properties.some((p) => p === "two_handed");
|
|
56
|
+
}
|
|
57
|
+
function armorAcTerm(armor) {
|
|
58
|
+
var _a;
|
|
59
|
+
return armor.ac.base + ((_a = armor.ac.flat) != null ? _a : 0);
|
|
60
|
+
}
|
|
61
|
+
function slotAcTerms(armor, entry) {
|
|
62
|
+
var _a;
|
|
63
|
+
const bonus = (_a = entry == null ? void 0 : entry.overrides) == null ? void 0 : _a.ac_bonus;
|
|
64
|
+
return { armor: armor ? armorAcTerm(armor) : null, override: typeof bonus === "number" ? bonus : 0 };
|
|
65
|
+
}
|
|
41
66
|
function defaultSlotForType(entityType, entity, registry) {
|
|
42
67
|
if (entityType === "weapon") return "mainhand";
|
|
43
68
|
if (entityType === "armor") {
|
|
@@ -61,5 +86,9 @@ export {
|
|
|
61
86
|
resolveEntityForEntry,
|
|
62
87
|
isShieldArmor,
|
|
63
88
|
effectiveArmor,
|
|
89
|
+
effectiveWeapon,
|
|
90
|
+
isTwoHandedWeapon,
|
|
91
|
+
armorAcTerm,
|
|
92
|
+
slotAcTerms,
|
|
64
93
|
defaultSlotForType
|
|
65
94
|
};
|
|
@@ -4,10 +4,10 @@ import {
|
|
|
4
4
|
} from "./chunk-ZJXSXVFP.js";
|
|
5
5
|
import {
|
|
6
6
|
choiceSchema
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-BRGLDWUP.js";
|
|
8
8
|
import {
|
|
9
9
|
featureEffectSchema
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-ZMJQUZQH.js";
|
|
11
11
|
import {
|
|
12
12
|
additionalSpellsEntrySchema,
|
|
13
13
|
imageField,
|
|
@@ -69,13 +69,17 @@ var featEntitySchema = z.object({
|
|
|
69
69
|
optionalfeature_progression: z.array(progressionSchema).optional(),
|
|
70
70
|
// 4
|
|
71
71
|
resources: z.array(resourceSchema).optional(),
|
|
72
|
-
// closes the feat.types.ts `Feat.resources` schema/type asymmetry (C)
|
|
73
|
-
//
|
|
74
|
-
//
|
|
72
|
+
// closes the feat.types.ts `Feat.resources` schema/type asymmetry (C).
|
|
73
|
+
// CONVERTER carriers since import-5etools cb382b6 (feat-mapper `mapFeatEconomy`): 69 of 287 feat docs,
|
|
74
|
+
// 72 entries (41 `prof`, 29 `1`, Lucky PHB `3`, Boon of Recovery `10` + die d10), ids owner-namespaced
|
|
75
|
+
// `<feat-slug-tail>:<tracker-slug>`; 0 SRD-bundle carriers. The resolver carries them onto the
|
|
76
|
+
// synthesized feat feature, so each draws a tracker. Import resourceSchema.
|
|
75
77
|
action_cost: actionCostEnum.optional(),
|
|
76
|
-
// ruling R-G1b-5 (gate1-r1 f1): a TOP-LEVEL
|
|
77
|
-
// feat (`SRD 2024/Feats/Boon of the Night Spirit.md
|
|
78
|
-
//
|
|
78
|
+
// ruling R-G1b-5 (gate1-r1 f1): a TOP-LEVEL entity key. SRD bundle:
|
|
79
|
+
// one feat per edition (`SRD 2024/Feats/Boon of the Night Spirit.md` bonus-action; SRD 5e Grappler
|
|
80
|
+
// `action` through the `feat_features` overlay since 0.3.11). CONVERTER: 76 of 287 feat docs since
|
|
81
|
+
// import-5etools 1002a6c (31 bonus-action, 34 reaction, 11 action). Top-level at entity level
|
|
82
|
+
// — the ninth SRD-control non-kept row: top-level on the ENTITY, not featureSchema-shaped
|
|
79
83
|
// (finding 14's nine rows split 4 featureSchema / 4 §2.8-arity / this one, which needed its own
|
|
80
84
|
// declaration — gate1-r4 R4-1). `actionCostEnum` is exported from
|
|
81
85
|
// `schemas/resource-schema.ts` (optionalFeatureEntitySchema already imports it). MAPPED since
|
|
@@ -132,7 +132,7 @@ var CONDITION_TOOLTIPS_2014 = {
|
|
|
132
132
|
paralyzed: [
|
|
133
133
|
"Incapacitated. Speed 0.",
|
|
134
134
|
"Auto-fail STR/DEX saves.",
|
|
135
|
-
"Attacks against have advantage; melee within
|
|
135
|
+
"Attacks against have advantage; melee within 5 ft. auto-crit."
|
|
136
136
|
],
|
|
137
137
|
petrified: [
|
|
138
138
|
"Incapacitated. Speed 0.",
|
|
@@ -141,7 +141,7 @@ var CONDITION_TOOLTIPS_2014 = {
|
|
|
141
141
|
],
|
|
142
142
|
poisoned: ["Disadvantage on attack rolls and ability checks."],
|
|
143
143
|
prone: [
|
|
144
|
-
"Attacks against within
|
|
144
|
+
"Attacks against within 5 ft. have advantage; beyond 5 ft. have disadvantage.",
|
|
145
145
|
"Your attacks have disadvantage."
|
|
146
146
|
],
|
|
147
147
|
restrained: [
|
|
@@ -155,7 +155,7 @@ var CONDITION_TOOLTIPS_2014 = {
|
|
|
155
155
|
unconscious: [
|
|
156
156
|
"Incapacitated, prone, dropped held items. Speed 0.",
|
|
157
157
|
"Auto-fail STR/DEX saves.",
|
|
158
|
-
"Attacks against have advantage; melee within
|
|
158
|
+
"Attacks against have advantage; melee within 5 ft. auto-crit."
|
|
159
159
|
]
|
|
160
160
|
};
|
|
161
161
|
var CONDITION_TOOLTIPS_2024 = {
|
|
@@ -2,13 +2,13 @@ import {
|
|
|
2
2
|
poolGrantSchema,
|
|
3
3
|
selectionPoolSchema,
|
|
4
4
|
tabDeclSchema
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-G6MHJDVT.js";
|
|
6
6
|
import {
|
|
7
7
|
casterTypeEnum
|
|
8
8
|
} from "./chunk-CJYCVNW2.js";
|
|
9
9
|
import {
|
|
10
10
|
featureSchema
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-FPGXFD2M.js";
|
|
12
12
|
import {
|
|
13
13
|
resourceSchema
|
|
14
14
|
} from "./chunk-ZJXSXVFP.js";
|
|
@@ -18,7 +18,7 @@ import {
|
|
|
18
18
|
} from "./chunk-IN4M4X7P.js";
|
|
19
19
|
import {
|
|
20
20
|
choiceSchema
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-BRGLDWUP.js";
|
|
22
22
|
import {
|
|
23
23
|
additionalSpellsEntrySchema,
|
|
24
24
|
imageField,
|