@iamjameslennon/ddb-mcp 2.9.0 → 2.9.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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/tools/character/core.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAc,SAAS,EAAsB,MAAM,YAAY,CAAC;AAEtF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/tools/character/core.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAc,SAAS,EAAsB,MAAM,YAAY,CAAC;AAEtF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,CA4I1D"}
|
|
@@ -64,9 +64,31 @@ export function computeCoreStats(char) {
|
|
|
64
64
|
// them. We must too, or the race ASI gets double-counted against
|
|
65
65
|
// char.stats (which already includes it).
|
|
66
66
|
//
|
|
67
|
-
// 2014-
|
|
68
|
-
//
|
|
69
|
-
//
|
|
67
|
+
// EXCEPTION: 2014 Half-Elf grants +2 CHA fixed plus two player-chosen +1s.
|
|
68
|
+
// The chosen ones are ALSO emitted as race mods with `isGranted: false` —
|
|
69
|
+
// same flag the 2024 declined-ASIs use. Discriminator: 2014 Half-Elf pairs
|
|
70
|
+
// each chosen +1 with a `choices.race` entry whose `optionValue` is in the
|
|
71
|
+
// 3520..3525 range (STR..CHA) and whose `componentId` matches the mod's.
|
|
72
|
+
// Build a multiset of (componentId, abilityIdx) picks and consume one per
|
|
73
|
+
// matching mod so duplicate picks (Danyr's STR+STR) stack correctly.
|
|
74
|
+
const ABILITY_OPTION_BASE = 3520;
|
|
75
|
+
const playerRaceAbilityPicks = [];
|
|
76
|
+
for (const ch of arr(obj(char.choices).race)) {
|
|
77
|
+
const opt = num(ch.optionValue);
|
|
78
|
+
if (opt < ABILITY_OPTION_BASE || opt > ABILITY_OPTION_BASE + 5)
|
|
79
|
+
continue;
|
|
80
|
+
playerRaceAbilityPicks.push({
|
|
81
|
+
componentId: num(ch.componentId),
|
|
82
|
+
abilityIdx: opt - ABILITY_OPTION_BASE,
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
const consumeMatchingRacePick = (componentId, abilityIdx) => {
|
|
86
|
+
const i = playerRaceAbilityPicks.findIndex(p => p.componentId === componentId && p.abilityIdx === abilityIdx);
|
|
87
|
+
if (i < 0)
|
|
88
|
+
return false;
|
|
89
|
+
playerRaceAbilityPicks.splice(i, 1);
|
|
90
|
+
return true;
|
|
91
|
+
};
|
|
70
92
|
const scoreBonuses = {};
|
|
71
93
|
for (const [source, list] of Object.entries(obj(char.modifiers))) {
|
|
72
94
|
for (const m of arr(list)) {
|
|
@@ -74,11 +96,16 @@ export function computeCoreStats(char) {
|
|
|
74
96
|
continue;
|
|
75
97
|
if (!m.subType.endsWith("-score"))
|
|
76
98
|
continue;
|
|
77
|
-
if (source === "race" && m.isGranted === false)
|
|
78
|
-
continue;
|
|
79
99
|
const idx = statKeys.indexOf(m.subType.replace("-score", ""));
|
|
80
|
-
if (idx
|
|
81
|
-
|
|
100
|
+
if (idx < 0)
|
|
101
|
+
continue;
|
|
102
|
+
if (source === "race" && m.isGranted === false) {
|
|
103
|
+
// Allow through only if the player has a matching race-ability pick
|
|
104
|
+
// (2014 Half-Elf shape). Otherwise this is a declined 2024-style ASI.
|
|
105
|
+
if (!consumeMatchingRacePick(num(m.componentId), idx))
|
|
106
|
+
continue;
|
|
107
|
+
}
|
|
108
|
+
scoreBonuses[idx + 1] = (scoreBonuses[idx + 1] ?? 0) + num(m.fixedValue);
|
|
82
109
|
}
|
|
83
110
|
}
|
|
84
111
|
const scoreSetValues = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/tools/character/core.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC/F,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGtD,MAAM,UAAU,gBAAgB,CAAC,IAAc;IAC7C,MAAM,OAAO,GAAG,GAAG,CAAa,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAEvD,qEAAqE;IACrE,sEAAsE;IACtE,yEAAyE;IACzE,qEAAqE;IACrE,wEAAwE;IACxE,uDAAuD;IACvD,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,KAAK,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IAClF,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAU,CAAC;IAClD,IAAI,aAAa,EAAE,CAAC;QAClB,KAAK,MAAM,EAAE,IAAI,GAAG,CAA0B,aAAa,CAAC,aAAa,CAAC,EAAE,CAAC;YAC3E,MAAM,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;YACtC,IAAI,EAAE;gBAAE,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1C,CAAC;QACD,KAAK,MAAM,EAAE,IAAI,GAAG,CAA0B,GAAG,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC;YACnG,MAAM,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;YACtC,IAAI,EAAE;gBAAE,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IACD,MAAM,uBAAuB,GAAG,CAAC,CAAM,EAAW,EAAE;QAClD,IAAI,CAAC,CAAC,IAAI,KAAK,aAAa;YAAE,OAAO,IAAI,CAAC;QAC1C,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;YAAE,OAAO,IAAI,CAAC;QACvF,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAC/B,yEAAyE;QACzE,8DAA8D;QAC9D,OAAO,GAAG,KAAK,CAAC,IAAI,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACvD,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE;QAC7E,MAAM,IAAI,GAAG,GAAG,CAAM,IAAI,CAAC,CAAC;QAC5B,OAAO,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,UAAU;YAChD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC;YACtC,CAAC,CAAC,IAAI,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,8EAA8E;IAC9E,MAAM,SAAS,GAAG,GAAG,CAA0B,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3D,MAAM,UAAU,GAAG,GAAG,CAA0B,IAAI,CAAC,UAAU,CAAC,CAAC;IACjE,MAAM,aAAa,GAAG,GAAG,CAA0B,IAAI,CAAC,aAAa,CAAC,CAAC;IAEvE,wEAAwE;IACxE,sEAAsE;IACtE,sEAAsE;IACtE,wEAAwE;IACxE,sEAAsE;IACtE,iEAAiE;IACjE,0CAA0C;IAC1C,EAAE;IACF,
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/tools/character/core.ts"],"names":[],"mappings":"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"}
|