Fix for Power DC's

beginning attempt at storing power DC's
This commit is contained in:
supervj 2021-02-01 12:33:51 -05:00
parent 18c626bd42
commit ac198745f1
2 changed files with 14 additions and 11 deletions

View file

@ -92,7 +92,10 @@ export default class Actor5e extends Actor {
init.total = init.mod + init.prof + init.bonus; init.total = init.mod + init.prof + init.bonus;
// Prepare power-casting data // Prepare power-casting data
data.attributes.powerdc = data.attributes.powercasting ? data.abilities[data.attributes.powercasting].dc : 10; data.attributes.powerForceLightDC = data.attributes[wis].dc ?? 10;
data.attributes.powerForceDarkDC = data.attributes[cha].dc ?? 10;
data.attributes.powerForceUniDC = floor.ceil(data.attributes.powerfldc,data.attributes.powerfddc) ?? 10;
data.attributes.powerTechDC = data.attributes[int].dc ?? 10;
this._computePowercastingProgression(this.data); this._computePowercastingProgression(this.data);
// Compute owned item attributes which depend on prepared Actor data // Compute owned item attributes which depend on prepared Actor data
@ -390,6 +393,7 @@ export default class Actor5e extends Actor {
// Tabulate the total power-casting progression // Tabulate the total power-casting progression
const classes = this.data.items.filter(i => i.type === "class"); const classes = this.data.items.filter(i => i.type === "class");
let priority = 0;
for ( let cls of classes ) { for ( let cls of classes ) {
const d = cls.data; const d = cls.data;
if ( d.powercasting === "none" ) continue; if ( d.powercasting === "none" ) continue;
@ -398,7 +402,7 @@ export default class Actor5e extends Actor {
switch (prog) { switch (prog) {
case 'consular': case 'consular':
let priority = 3; priority = 3;
forceProgression.levels += levels; forceProgression.levels += levels;
forceProgression.multi += (SW5E.powerMaxLevel['consular'][levels-1]/9)*levels; forceProgression.multi += (SW5E.powerMaxLevel['consular'][levels-1]/9)*levels;
forceProgression.classes++; forceProgression.classes++;
@ -414,7 +418,7 @@ export default class Actor5e extends Actor {
forceProgression.points += SW5E.powerPoints['consular'][Math.clamped((levels - 1), 0, 20)]; forceProgression.points += SW5E.powerPoints['consular'][Math.clamped((levels - 1), 0, 20)];
break; break;
case 'engineer': case 'engineer':
let priority = 2 priority = 2
techProgression.levels += levels; techProgression.levels += levels;
techProgression.multi += (SW5E.powerMaxLevel['engineer'][levels-1]/9)*levels; techProgression.multi += (SW5E.powerMaxLevel['engineer'][levels-1]/9)*levels;
techProgression.classes++; techProgression.classes++;
@ -429,7 +433,7 @@ export default class Actor5e extends Actor {
techProgression.points += SW5E.powerPoints['engineer'][Math.clamped((levels - 1), 0, 20)]; techProgression.points += SW5E.powerPoints['engineer'][Math.clamped((levels - 1), 0, 20)];
break; break;
case 'guardian': case 'guardian':
let priority = 1; priority = 1;
forceProgression.levels += levels; forceProgression.levels += levels;
forceProgression.multi += (SW5E.powerMaxLevel['guardian'][levels-1]/9)*levels; forceProgression.multi += (SW5E.powerMaxLevel['guardian'][levels-1]/9)*levels;
forceProgression.classes++; forceProgression.classes++;
@ -444,7 +448,7 @@ export default class Actor5e extends Actor {
forceProgression.points += SW5E.powerPoints['guardian'][Math.clamped((levels - 1), 0, 20)]; forceProgression.points += SW5E.powerPoints['guardian'][Math.clamped((levels - 1), 0, 20)];
break; break;
case 'scout': case 'scout':
let priority = 1; priority = 1;
techProgression.levels += levels; techProgression.levels += levels;
techProgression.multi += (SW5E.powerMaxLevel['scout'][levels-1]/9)*levels; techProgression.multi += (SW5E.powerMaxLevel['scout'][levels-1]/9)*levels;
techProgression.classes++; techProgression.classes++;
@ -459,7 +463,7 @@ export default class Actor5e extends Actor {
techProgression.points += SW5E.powerPoints['scout'][Math.clamped((levels - 1), 0, 20)]; techProgression.points += SW5E.powerPoints['scout'][Math.clamped((levels - 1), 0, 20)];
break; break;
case 'sentinel': case 'sentinel':
let priority = 2; priority = 2;
forceProgression.levels += levels; forceProgression.levels += levels;
forceProgression.multi += (SW5E.powerMaxLevel['sentinel'][levels-1]/9)*levels; forceProgression.multi += (SW5E.powerMaxLevel['sentinel'][levels-1]/9)*levels;
forceProgression.classes++; forceProgression.classes++;

View file

@ -241,10 +241,6 @@
"power9": { "power9": {
"value": 0, "value": 0,
"override": null "override": null
},
"pact": {
"value": 0,
"override": null
} }
}, },
"bonuses": { "bonuses": {
@ -270,7 +266,10 @@
"skill": "" "skill": ""
}, },
"power": { "power": {
"dc": "" "forceLightDC": "",
"forceUnivDC": "",
"forceDarkDC": "",
"techDC": ""
} }
} }
} }