Allow localized labels in the roll listener and add labels for stat rolls

This commit is contained in:
Oliver-Akins 2023-12-31 13:32:58 -07:00
parent c957903a4f
commit df13498927
3 changed files with 20 additions and 5 deletions

View file

@ -20,7 +20,14 @@
},
"dotdungeon": {
"rolls": {
"stats": "@actor.name: @stat"
"stats": {
"build": "Stat Check : Build",
"meta": "Stat Check : Meta",
"presence": "Stat Check : Presence",
"hands": "Stat Check : Hands",
"tilt": "Stat Check : Tilt",
"rng": "Stat Check : RNG"
}
},
"settings": {
"showAvatarOnSheet": {

View file

@ -40,15 +40,22 @@ export class GenericActorSheet extends ActorSheet {
async _handleRoll($e) {
let data = $e.target.dataset;
if (!data.roll) return;
console.debug(`.dungeon | Attempting to roll with formula "${data.roll}"`);
if (!data.rollFormula) {
console.warn(`.dungeon | Element has .roll class with no roll formula`, $e.target);
return;
};
console.debug(`.dungeon | Attempting to roll with formula "${data.rollFormula}"`);
game.i18n
let flavor;
if (data.rollLabel) {
flavor = game.i18n.localize(data.rollLabel);
};
let roll = new Roll(data.roll);
let roll = new Roll(data.rollFormula);
await roll.evaluate();
await roll.toMessage({
speaker: ChatMessage.getSpeaker({ actor: this.actor }),
flavor,
});
};

View file

@ -3,6 +3,7 @@
class="roll"
data-stat="{{name}}"
data-roll-formula="1{{value}}"
data-roll-label="dotdungeon.rolls.stats.{{name}}"
{{disabled (dd-negate (dd-objectValue system (concat "stats." name)))}}
>
{{localize (concat "dotdungeon.actor.pc.stat." name)}}