move ritual activation from skills to ritual item section

This commit is contained in:
TheLastScrub
2024-08-03 22:03:04 -07:00
parent 5a17f26010
commit bfaf27d9f7
5 changed files with 42 additions and 5 deletions
+2
View File
@@ -135,6 +135,8 @@ export default class DeltaGreenActorSheet extends ActorSheet {
return data;
}
// some handlers may wish to avoid leading players to think they should be seeking out magic
// so control whether an actor sheet shows the hypergeometry (rituals and tomes) section
shouldShowHyperGeometrySection(actor) {
// always show for GM
if (game.user.isGM) {
+32 -2
View File
@@ -80,12 +80,13 @@ export default class DeltaGreenActor extends Actor {
system.health.max = 10;
}
/*
system.skills.ritual = {
label: "Ritual",
proficiency: 99 - system.sanity.value,
cannotBeImprovedByFailure: true,
failure: false,
};
};
if (system.skills.ritual.proficiency > 99) {
system.skills.ritual.proficiency = 99;
@@ -93,6 +94,20 @@ export default class DeltaGreenActor extends Actor {
system.skills.ritual.proficiency = 1;
}
*/
try {
delete system.skills.ritual; // try to remove legacy skill for ritual if it exists
} catch {}
system.sanity.ritual = 99 - system.sanity.value;
if (system.sanity.ritual > 99) {
system.sanity.ritual = 99;
} else if (system.sanity.ritual < 1) {
system.sanity.ritual = 1;
}
// calculate total armor rating
let protection = 0;
for (const i of actor.items) {
@@ -152,12 +167,13 @@ export default class DeltaGreenActor extends Actor {
// The ritual skill is from the Handler's Guide, it is for activating a ritual and is always equal to 99 - current sanity.
// The rules can be found on page 166, under 'Ritual Activation'.
/*
system.skills.ritual = {
label: "Ritual",
proficiency: 99 - system.sanity.value,
cannotBeImprovedByFailure: true,
failure: false,
};
};
if (system.skills.ritual.proficiency > 99) {
system.skills.ritual.proficiency = 99;
@@ -165,6 +181,20 @@ export default class DeltaGreenActor extends Actor {
system.skills.ritual.proficiency = 1;
}
*/
try {
delete system.skills.ritual; // try to remove legacy skill for ritual if it exists
} catch {}
system.sanity.ritual = 99 - system.sanity.value;
if (system.sanity.ritual > 99) {
system.sanity.ritual = 99;
} else if (system.sanity.ritual < 1) {
system.sanity.ritual = 1;
}
// The unnatural skill is sort of special
// It cannot be improved via failure, so add in a special property to reflect this
// Mostly to make it easy to deactivate the failure checkbox in the GUI
+5 -1
View File
@@ -396,6 +396,10 @@ export class DGPercentileRoll extends DGRoll {
target = skill.proficiency;
localizedKey = `${skill.group} (${skill.label})`;
}
if (this.key === "ritual") {
target = actorData.sanity.ritual;
localizedKey = game.i18n.localize(`DG.Skills.ritual`);
}
return { target, localizedKey };
}
@@ -411,7 +415,7 @@ export class DGPercentileRoll extends DGRoll {
get isInhuman() {
/*
Changing this to only consider the base x5 stat target for whether something is 'inhuman'
beecause I do not think the intent was an Agent with a high strength getting a +40% bonus to be considered 'inhuman'
because I do not think the intent was an Agent with a high strength getting a +40% bonus to be considered 'inhuman'
and therefore benefit from the increased crit threshold, although could be wrong about this.
*/
if (this.target > 99 && this.type === "stat") {