manually fix most of remaining ESLint errors;
everything still works in my testing
This commit is contained in:
@@ -10,7 +10,7 @@ import {
|
||||
* Extend the basic ActorSheet with some very simple modifications
|
||||
* @extends {ActorSheet}
|
||||
*/
|
||||
export class DeltaGreenActorSheet extends ActorSheet {
|
||||
export default class DeltaGreenActorSheet extends ActorSheet {
|
||||
/** @override */
|
||||
static get defaultOptions() {
|
||||
return mergeObject(super.defaultOptions, {
|
||||
@@ -62,7 +62,7 @@ export class DeltaGreenActorSheet extends ActorSheet {
|
||||
const data = super.getData();
|
||||
|
||||
// Prepare items.
|
||||
if (this.actor.type == "agent") {
|
||||
if (this.actor.type === "agent") {
|
||||
this._prepareCharacterItems(data);
|
||||
}
|
||||
|
||||
@@ -673,7 +673,8 @@ export class DeltaGreenActorSheet extends ActorSheet {
|
||||
if (
|
||||
newSkillLabel !== null &&
|
||||
newSkillLabel !== "" &&
|
||||
(newSkillGroup !== null) & (newSkillGroup !== "")
|
||||
newSkillGroup !== null &&
|
||||
newSkillGroup !== ""
|
||||
) {
|
||||
const updatedData = duplicate(this.actor.system);
|
||||
|
||||
@@ -710,13 +711,13 @@ export class DeltaGreenActorSheet extends ActorSheet {
|
||||
system: {},
|
||||
};
|
||||
|
||||
if (type == "weapon") {
|
||||
if (type === "weapon") {
|
||||
// itemData.system.skill = "firearms"; //default skill to firearms, since that will be most common
|
||||
// itemData.system.expense = "Standard";
|
||||
} else if (type == "armor") {
|
||||
} else if (type === "armor") {
|
||||
// itemData.system.armor = 3;
|
||||
// itemData.system.expense = "Standard";
|
||||
} else if (type == "bond") {
|
||||
} else if (type === "bond") {
|
||||
// try to default bonds for an agent to their current CHA
|
||||
itemData.system.score = this.object.system.statistics.cha.value; // Can vary, but at character creation starting bond score is usually agent's charisma
|
||||
// itemData.img = "icons/svg/mystery-man.svg"
|
||||
@@ -785,7 +786,7 @@ export class DeltaGreenActorSheet extends ActorSheet {
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return this.processRoll(event, roll, rollOptions);
|
||||
this.processRoll(event, roll, rollOptions);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -793,6 +794,8 @@ export class DeltaGreenActorSheet extends ActorSheet {
|
||||
* Broke this logic out from `_onRoll()` so that other files can call it,
|
||||
* namely the macro logic.
|
||||
*
|
||||
* TODO: Move this logic to the roll.js.
|
||||
*
|
||||
* @param {Event} event The originating click event
|
||||
* @param {Event} roll The roll to show a dialog for and then send to chat.
|
||||
* @async
|
||||
@@ -814,7 +817,7 @@ export class DeltaGreenActorSheet extends ActorSheet {
|
||||
// Evaluate the roll.
|
||||
await roll.evaluate({ async: true });
|
||||
// Send the roll to chat.
|
||||
return roll.toChat();
|
||||
roll.toChat();
|
||||
}
|
||||
|
||||
_resetBreakingPoint(event) {
|
||||
|
||||
@@ -1,8 +1,10 @@
|
||||
/* global Actor Item mergeObject game */
|
||||
|
||||
/**
|
||||
* Extend the base Actor entity by defining a custom roll data structure which is ideal for the Simple system.
|
||||
* @extends {Actor}
|
||||
*/
|
||||
export class DeltaGreenActor extends Actor {
|
||||
export default class DeltaGreenActor extends Actor {
|
||||
/**
|
||||
* Augment the basic actor data with additional dynamic data.
|
||||
*/
|
||||
|
||||
+88
-84
@@ -1,17 +1,17 @@
|
||||
/* globals $ Hooks game CONFIG Actors Items ActorSheet ItemSheet Handlebars Macro ChatMessage ui duplicate */
|
||||
/* globals $ Hooks game CONFIG Actors Items ActorSheet ItemSheet Handlebars Macro ChatMessage ui duplicate arguments */
|
||||
|
||||
// Import Modules
|
||||
import { DeltaGreenActor } from "./actor/actor.js";
|
||||
import { DeltaGreenActorSheet } from "./actor/actor-sheet.js";
|
||||
import { DeltaGreenItem } from "./item/item.js";
|
||||
import { DeltaGreenItemSheet } from "./item/item-sheet.js";
|
||||
import DeltaGreenActor from "./actor/actor.js";
|
||||
import DeltaGreenActorSheet from "./actor/actor-sheet.js";
|
||||
import DeltaGreenItem from "./item/item.js";
|
||||
import DeltaGreenItemSheet from "./item/item-sheet.js";
|
||||
import * as DGRolls from "./roll/roll.js";
|
||||
import { registerSystemSettings } from "./settings.js";
|
||||
import { preloadHandlebarsTemplates } from "./templates.js";
|
||||
import { ParseDeltaGreenStatBlock } from "./other/stat-parser-macro.js";
|
||||
import registerSystemSettings from "./settings.js";
|
||||
import preloadHandlebarsTemplates from "./templates.js";
|
||||
import ParseDeltaGreenStatBlock from "./other/stat-parser-macro.js";
|
||||
import DGUtils from "./other/utility-functions.js";
|
||||
|
||||
Hooks.once("init", async function () {
|
||||
Hooks.once("init", async () => {
|
||||
game.deltagreen = {
|
||||
DeltaGreenActor,
|
||||
DeltaGreenItem,
|
||||
@@ -59,17 +59,17 @@ Hooks.once("init", async function () {
|
||||
},
|
||||
);
|
||||
|
||||
Handlebars.registerHelper("concat", function () {
|
||||
Handlebars.registerHelper("concat", (...args) => {
|
||||
let outStr = "";
|
||||
for (let arg in arguments) {
|
||||
if (typeof arguments[arg] !== "object") {
|
||||
outStr += arguments[arg];
|
||||
for (const arg in args) {
|
||||
if (typeof args[arg] !== "object") {
|
||||
outStr += args[arg];
|
||||
}
|
||||
}
|
||||
return outStr;
|
||||
});
|
||||
|
||||
Handlebars.registerHelper("toLowerCase", function (str) {
|
||||
Handlebars.registerHelper("toLowerCase", (str) => {
|
||||
try {
|
||||
return str.toLowerCase();
|
||||
} catch (error) {
|
||||
@@ -77,7 +77,7 @@ Hooks.once("init", async function () {
|
||||
}
|
||||
});
|
||||
|
||||
Handlebars.registerHelper("toUpperCase", function (str) {
|
||||
Handlebars.registerHelper("toUpperCase", (str) => {
|
||||
try {
|
||||
return str.toUpperCase();
|
||||
} catch (error) {
|
||||
@@ -85,54 +85,50 @@ Hooks.once("init", async function () {
|
||||
}
|
||||
});
|
||||
|
||||
Handlebars.registerHelper("if_eq", function (a, b, opts) {
|
||||
if (a == b) {
|
||||
return opts.fn(this);
|
||||
} else {
|
||||
return opts.inverse(this);
|
||||
}
|
||||
});
|
||||
|
||||
Handlebars.registerHelper("if_not_eq", function (a, b, opts) {
|
||||
if (a != b) {
|
||||
Handlebars.registerHelper("if_eq", (a, b, opts) => {
|
||||
if (a === b) {
|
||||
return opts.fn(this);
|
||||
}
|
||||
return opts.inverse(this);
|
||||
});
|
||||
|
||||
Handlebars.registerHelper("if_gt", function (a, b, trueVal, falseVal) {
|
||||
if (a > b) {
|
||||
return trueVal;
|
||||
} else {
|
||||
return falseVal;
|
||||
Handlebars.registerHelper("if_not_eq", (a, b, opts) => {
|
||||
if (a !== b) {
|
||||
return opts.fn(this);
|
||||
}
|
||||
return opts.inverse(this);
|
||||
});
|
||||
|
||||
Handlebars.registerHelper("cite_ahb", function (page) {
|
||||
Handlebars.registerHelper("if_gt", (a, b, trueVal, falseVal) => {
|
||||
if (a > b) {
|
||||
return trueVal;
|
||||
}
|
||||
return falseVal;
|
||||
});
|
||||
|
||||
Handlebars.registerHelper("cite_ahb", (page) => {
|
||||
return `See page ${page} of the Agent's Handbook.`;
|
||||
});
|
||||
|
||||
Handlebars.registerHelper("formatLethality", function (lethality) {
|
||||
Handlebars.registerHelper("formatLethality", (lethality) => {
|
||||
if (lethality > 0) {
|
||||
return `${lethality.toString() }%`;
|
||||
} else {
|
||||
return "";
|
||||
return `${lethality.toString()}%`;
|
||||
}
|
||||
return "";
|
||||
});
|
||||
|
||||
// Is this used anywhere?
|
||||
Handlebars.registerHelper(
|
||||
"getActorSkillProp",
|
||||
function (actorData, skillName, prop) {
|
||||
(actorData, skillName, prop) => {
|
||||
try {
|
||||
if (skillName != "" && prop != "") {
|
||||
const skills = actorData.data.skills;
|
||||
let skill = skills[skillName];
|
||||
if (skillName !== "" && prop !== "") {
|
||||
const { skills } = actorData.data;
|
||||
const skill = skills[skillName];
|
||||
const propVal = skill[prop];
|
||||
return propVal;
|
||||
} else {
|
||||
return "";
|
||||
}
|
||||
return "";
|
||||
} catch (ex) {
|
||||
console.log(ex);
|
||||
return "";
|
||||
@@ -140,25 +136,25 @@ Hooks.once("init", async function () {
|
||||
},
|
||||
);
|
||||
|
||||
Handlebars.registerHelper("getAvailableRollModes", function () {
|
||||
Handlebars.registerHelper("getAvailableRollModes", () => {
|
||||
try {
|
||||
return CONFIG.Dice.rollModes;
|
||||
} catch (error) {
|
||||
console.log(error);
|
||||
return console.log(error);
|
||||
}
|
||||
});
|
||||
|
||||
Handlebars.registerHelper("getDefaultRollMode", function () {
|
||||
Handlebars.registerHelper("getDefaultRollMode", () => {
|
||||
try {
|
||||
return game.settings.get("core", "rollMode");
|
||||
} catch (error) {
|
||||
console.log(error);
|
||||
return console.log(error);
|
||||
}
|
||||
});
|
||||
|
||||
Handlebars.registerHelper(
|
||||
"calculateHandToHandCombatDamageFormulaBonus",
|
||||
function (strength) {
|
||||
(strength) => {
|
||||
try {
|
||||
let bonus = "";
|
||||
|
||||
@@ -174,12 +170,12 @@ Hooks.once("init", async function () {
|
||||
|
||||
return bonus;
|
||||
} catch (error) {
|
||||
console.log(error);
|
||||
return console.log(error);
|
||||
}
|
||||
},
|
||||
);
|
||||
|
||||
Handlebars.registerHelper("localizeWeaponSkill", function (skill) {
|
||||
Handlebars.registerHelper("localizeWeaponSkill", (skill) => {
|
||||
let label = skill;
|
||||
|
||||
try {
|
||||
@@ -189,7 +185,7 @@ Hooks.once("init", async function () {
|
||||
if (skill === "DG.Skills.custom") {
|
||||
label = game.i18n.localize("DG.ItemWindow.Custom");
|
||||
} else {
|
||||
label = game.i18n.localize(`DG.Skills.${ skill}`);
|
||||
label = game.i18n.localize(`DG.Skills.${skill}`);
|
||||
}
|
||||
} catch (error) {
|
||||
console.log(error);
|
||||
@@ -200,18 +196,16 @@ Hooks.once("init", async function () {
|
||||
|
||||
Handlebars.registerHelper(
|
||||
"hideSkillBasedOnProficiencyAndUserChoice",
|
||||
function (hideUntrainedSkills, proficiency) {
|
||||
(hideUntrainedSkills, proficiency) => {
|
||||
let showValue = true;
|
||||
|
||||
try {
|
||||
if (hideUntrainedSkills === false) {
|
||||
showValue = true;
|
||||
} else if (proficiency > 0) {
|
||||
showValue = true;
|
||||
} else {
|
||||
if (proficiency > 0) {
|
||||
showValue = true;
|
||||
} else {
|
||||
showValue = false;
|
||||
}
|
||||
showValue = false;
|
||||
}
|
||||
} catch (error) {
|
||||
console.log(error);
|
||||
@@ -223,10 +217,12 @@ Hooks.once("init", async function () {
|
||||
|
||||
// looks at system setting for what font to use and returns the class that is then used in the handlebars template that
|
||||
// generates the character sheet.
|
||||
Handlebars.registerHelper("getFontFamilySystemSettingClass", function () {
|
||||
Handlebars.registerHelper("getFontFamilySystemSettingClass", () => {
|
||||
const setting = game.settings.get("deltagreen", "characterSheetFont");
|
||||
|
||||
const characterSheetStyle = game.settings.get("deltagreen", "characterSheetStyle");
|
||||
const characterSheetStyle = game.settings.get(
|
||||
"deltagreen",
|
||||
"characterSheetStyle",
|
||||
);
|
||||
|
||||
/*
|
||||
@@ -263,20 +259,22 @@ Hooks.once("init", async function () {
|
||||
*/
|
||||
});
|
||||
|
||||
Handlebars.registerHelper("getCharacterSheetStyle", function () {
|
||||
const characterSheetStyle = game.settings.get("deltagreen", "characterSheetStyle");
|
||||
Handlebars.registerHelper("getCharacterSheetStyle", () => {
|
||||
const characterSheetStyle = game.settings.get(
|
||||
"deltagreen",
|
||||
"characterSheetStyle",
|
||||
);
|
||||
|
||||
if (characterSheetStyle === "cowboy") {
|
||||
return "cowboy-style";
|
||||
} else if (characterSheetStyle === "outlaw") {
|
||||
return "outlaw-style";
|
||||
} else {
|
||||
return "program-style";
|
||||
}
|
||||
if (characterSheetStyle === "outlaw") {
|
||||
return "outlaw-style";
|
||||
}
|
||||
return "program-style";
|
||||
});
|
||||
|
||||
Handlebars.registerHelper("keepSanityPrivate", function () {
|
||||
Handlebars.registerHelper("keepSanityPrivate", () => {
|
||||
let setting = false;
|
||||
|
||||
try {
|
||||
@@ -293,13 +291,16 @@ Hooks.once("init", async function () {
|
||||
});
|
||||
});
|
||||
|
||||
Handlebars.registerHelper("playerHasGamemasterPrivileges", function () {
|
||||
Handlebars.registerHelper("playerHasGamemasterPrivileges", () => {
|
||||
return game.user.isGM;
|
||||
});
|
||||
|
||||
Handlebars.registerHelper("showImpossibleLandscapesContent", function () {
|
||||
Handlebars.registerHelper("showImpossibleLandscapesContent", () => {
|
||||
let result = false;
|
||||
const setting = game.settings.get("deltagreen", "showImpossibleLandscapesContent");
|
||||
const setting = game.settings.get(
|
||||
"deltagreen",
|
||||
"showImpossibleLandscapesContent",
|
||||
);
|
||||
|
||||
if (game.user.isGM === true && setting === true) {
|
||||
result = true;
|
||||
@@ -308,7 +309,7 @@ Handlebars.registerHelper("showImpossibleLandscapesContent", function () {
|
||||
return result;
|
||||
});
|
||||
|
||||
Hooks.once("ready", async function () {
|
||||
Hooks.once("ready", async () => {
|
||||
// Wait to register hotbar drop hook on ready so that modules could register earlier if they want to
|
||||
Hooks.on("hotbarDrop", (bar, data, slot) =>
|
||||
createDeltaGreenMacro(data, slot),
|
||||
@@ -318,7 +319,7 @@ Hooks.once("ready", async function () {
|
||||
Hooks.on("ready", () => {
|
||||
// let backgroundImageSetting = game.settings.get("deltagreen", "characterSheetBackgroundImageSetting");
|
||||
// let characterSheetStyle = game.settings.get("deltagreen", "characterSheetStyle");
|
||||
//let customCss = "";
|
||||
// let customCss = "";
|
||||
// let customStyle = document.createElement("style");
|
||||
// customStyle.id = "dg-custom-css";
|
||||
/*
|
||||
@@ -372,10 +373,12 @@ Hooks.on("preCreateItem", (item) => {
|
||||
});
|
||||
|
||||
Hooks.on("renderSidebarTab", async (app, html) => {
|
||||
if (app.options.id == "actors") {
|
||||
const button = $("<button class='import-cd'><i class='fas fa-file-import'></i> Parse Stat Block</button>")
|
||||
if (app.options.id === "actors") {
|
||||
const button = $(
|
||||
"<button class='import-cd'><i class='fas fa-file-import'></i> Parse Stat Block</button>",
|
||||
);
|
||||
|
||||
button.click(function () {
|
||||
button.click(() => {
|
||||
ParseDeltaGreenStatBlock();
|
||||
});
|
||||
|
||||
@@ -384,7 +387,7 @@ Hooks.on("renderSidebarTab", async (app, html) => {
|
||||
});
|
||||
|
||||
// Note - this event is fired on ALL connected clients...
|
||||
Hooks.on("createActor", async function (actor, options, userId) {
|
||||
Hooks.on("createActor", async (actor, options, userId) => {
|
||||
try {
|
||||
// use this to trap on if this hook is firing for the same user that triggered the create
|
||||
// can put logic specific to a particular user session below
|
||||
@@ -397,7 +400,9 @@ Hooks.on("createActor", async function (actor, options, userId) {
|
||||
console.log("createActor Hook");
|
||||
|
||||
const artLabel = game.i18n.translations.DG?.TypeSkills?.Art ?? "Art";
|
||||
const paintingLabel = game.i18n.translations.DG?.TypeSkills?.Subskills?.Painting ?? "Painting";
|
||||
const paintingLabel =
|
||||
game.i18n.translations.DG?.TypeSkills?.Subskills?.Painting ??
|
||||
"Painting";
|
||||
|
||||
const updatedData = duplicate(actor.system);
|
||||
updatedData.typedSkills.tskill_01.group = artLabel;
|
||||
@@ -438,22 +443,21 @@ async function createDeltaGreenMacro(data, slot) {
|
||||
|
||||
// Create the macro command
|
||||
let command = "// Uncomment line below to also roll skill check if desired.";
|
||||
command += "\n" + `//game.deltagreen.rollItemSkillCheckMacro("${item._id}");`;
|
||||
command += "\n" + `game.deltagreen.rollItemMacro("${item._id}");`;
|
||||
command += `\n//game.deltagreen.rollItemSkillCheckMacro("${item._id}");`;
|
||||
command += `\ngame.deltagreen.rollItemMacro("${item._id}");`;
|
||||
|
||||
// let macro = game.macros.entities.find(m => (m.name === data.name) && (m.command === command));
|
||||
// if (!macro) {
|
||||
const macro = await Macro.create({
|
||||
name: data.itemData.name,
|
||||
type: "script",
|
||||
img: data.itemData.img,
|
||||
command: command,
|
||||
flags: { "deltagreen.itemMacro": true }
|
||||
});
|
||||
name: data.itemData.name,
|
||||
type: "script",
|
||||
img: data.itemData.img,
|
||||
command,
|
||||
flags: { "deltagreen.itemMacro": true },
|
||||
});
|
||||
// }
|
||||
|
||||
game.user.assignHotbarMacro(macro, slot);
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -538,6 +542,6 @@ function rollSkillMacro(skillName) {
|
||||
{},
|
||||
{ rollType: "skill", key: skillName, actor },
|
||||
);
|
||||
actor.sheet.processRoll({}, roll);
|
||||
return actor.sheet.processRoll({}, roll);
|
||||
// sendPercentileTestToChat(actor, translatedSkillLabel, skill.proficiency);
|
||||
}
|
||||
|
||||
@@ -1,8 +1,10 @@
|
||||
/* global ItemSheet mergeObject TextEditor */
|
||||
|
||||
/**
|
||||
* Extend the basic ItemSheet with some very simple modifications
|
||||
* @extends {ItemSheet}
|
||||
*/
|
||||
export class DeltaGreenItemSheet extends ItemSheet {
|
||||
export default class DeltaGreenItemSheet extends ItemSheet {
|
||||
/** @override */
|
||||
static get defaultOptions() {
|
||||
return mergeObject(super.defaultOptions, {
|
||||
@@ -57,6 +59,7 @@ export class DeltaGreenItemSheet extends ItemSheet {
|
||||
super.activateListeners(html);
|
||||
|
||||
// Everything below here is only needed if the sheet is editable
|
||||
// eslint-disable-next-line no-useless-return
|
||||
if (!this.options.editable) return;
|
||||
|
||||
// Roll handlers, click handlers, etc. would go here.
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@ import { DGDamageRoll, DGLethalityRoll } from "../roll/roll.js";
|
||||
* Extend the basic Item with some very simple modifications.
|
||||
* @extends {Item}
|
||||
*/
|
||||
export class DeltaGreenItem extends Item {
|
||||
export default class DeltaGreenItem extends Item {
|
||||
/**
|
||||
* Augment the basic Item data model with additional dynamic data.
|
||||
*/
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
/* global Dialog Actor */
|
||||
|
||||
// call this within a world as: game.deltagreen.ParseDeltaGreenStatBlock()
|
||||
function GetTypeSkillRatingsFromInput(inputText) {
|
||||
const matchStr =
|
||||
@@ -11,6 +13,9 @@ function GetTypeSkillRatingsFromInput(inputText) {
|
||||
let match;
|
||||
|
||||
try {
|
||||
// This is probably one of the few times where its recommended to assign within a while loop.
|
||||
// See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/exec
|
||||
// eslint-disable-next-line no-cond-assign
|
||||
while ((match = re.exec(inputText))) {
|
||||
matches.push({
|
||||
group: match[1],
|
||||
@@ -86,8 +91,7 @@ async function RegexParseNpcStatBlock(inputStr, actorType) {
|
||||
tempStr = inputStr.split(/\r?\n/);
|
||||
|
||||
if (tempStr.length > 1) {
|
||||
actorData.name = tempStr[0];
|
||||
shortDescription = tempStr[1];
|
||||
[actorData.name, shortDescription] = tempStr;
|
||||
} else {
|
||||
actorData.name = "Unknown";
|
||||
}
|
||||
@@ -353,7 +357,7 @@ async function RegexParseNpcStatBlock(inputStr, actorType) {
|
||||
|
||||
arr = GetTypeSkillRatingsFromInput(inputStr);
|
||||
|
||||
for (let index = 0; index < arr.length; ++index) {
|
||||
for (let index = 0; index < arr.length; index += 1) {
|
||||
const element = arr[index];
|
||||
actorData.data.typedSkills[`tskill_${index.toString()}`] = element;
|
||||
}
|
||||
@@ -403,6 +407,6 @@ async function GetUserInput() {
|
||||
}).render(true);
|
||||
}
|
||||
|
||||
export async function ParseDeltaGreenStatBlock() {
|
||||
export default async function ParseDeltaGreenStatBlock() {
|
||||
GetUserInput();
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ export default class DGUtils {
|
||||
static localizeWithFallback(key, fallback) {
|
||||
try {
|
||||
const translatedValue = game.i18n.localize(key);
|
||||
if (translatedValue != key) {
|
||||
if (translatedValue !== key) {
|
||||
return translatedValue;
|
||||
}
|
||||
console.warn(`Untranslated localization key '${key}'.`);
|
||||
|
||||
+11
-7
@@ -1,3 +1,4 @@
|
||||
/* eslint-disable max-classes-per-file */
|
||||
/* globals game Roll ChatMessage AudioHelper renderTemplate Dialog */
|
||||
|
||||
import DGUtils from "../other/utility-functions.js";
|
||||
@@ -151,10 +152,10 @@ export class DGPercentileRoll extends DGRoll {
|
||||
|
||||
const template =
|
||||
"systems/deltagreen/templates/dialog/modify-percentile-roll.html";
|
||||
const html = await renderTemplate(template, backingData);
|
||||
const content = await renderTemplate(template, backingData);
|
||||
return new Promise((resolve, reject) => {
|
||||
new Dialog({
|
||||
content: html,
|
||||
content,
|
||||
title: DGUtils.localizeWithFallback(
|
||||
"DG.ModifySkillRollDialogue.Title",
|
||||
"Modify Roll",
|
||||
@@ -171,11 +172,14 @@ export class DGPercentileRoll extends DGRoll {
|
||||
|
||||
const plusMinus = html.find("[name='plusOrMinus']").val();
|
||||
|
||||
if (targetModifier.trim() != "" && !isNaN(targetModifier)) {
|
||||
if (
|
||||
targetModifier.trim() !== "" &&
|
||||
!Number.isNaN(targetModifier)
|
||||
) {
|
||||
targetModifier = Math.abs(parseInt(targetModifier));
|
||||
|
||||
if (plusMinus === "-") {
|
||||
targetModifier = -1 * targetModifier;
|
||||
targetModifier *= -1;
|
||||
}
|
||||
}
|
||||
resolve({ targetModifier, rollMode });
|
||||
@@ -520,10 +524,10 @@ export class DGDamageRoll extends DGRoll {
|
||||
},
|
||||
};
|
||||
|
||||
const html = await renderTemplate(template, backingData);
|
||||
const content = await renderTemplate(template, backingData);
|
||||
return new Promise((resolve, reject) => {
|
||||
new Dialog({
|
||||
content: html,
|
||||
content,
|
||||
title: game.i18n.localize("DG.ModifySkillRollDialogue.Title"),
|
||||
default: "roll",
|
||||
buttons: {
|
||||
@@ -544,7 +548,7 @@ export class DGDamageRoll extends DGRoll {
|
||||
}
|
||||
|
||||
let newFormula = "";
|
||||
if (outerModifier.trim() != "") {
|
||||
if (outerModifier.trim() !== "") {
|
||||
newFormula += `${outerModifier}(${modifiedBaseRoll}${innerModifier.trim()})`;
|
||||
} else {
|
||||
newFormula += modifiedBaseRoll + innerModifier.trim();
|
||||
|
||||
+4
-2
@@ -1,4 +1,6 @@
|
||||
export const registerSystemSettings = function () {
|
||||
/* global game */
|
||||
|
||||
export default function registerSystemSettings() {
|
||||
game.settings.register("deltagreen", "characterSheetStyle", {
|
||||
name: "Character Sheet Style",
|
||||
hint: "Choose how actor sheets should be styled. 'Program' is a more modern government style, where 'Cowboy/Outlaw' is an older, grittier looking typewriter style.",
|
||||
@@ -99,4 +101,4 @@ export const registerSystemSettings = function () {
|
||||
// console.log(value)
|
||||
},
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
+4
-2
@@ -1,9 +1,11 @@
|
||||
/* global loadTemplates */
|
||||
|
||||
/**
|
||||
* Define a set of template paths to pre-load
|
||||
* Pre-loaded templates are compiled and cached for fast access when rendering
|
||||
* @return {Promise}
|
||||
*/
|
||||
export const preloadHandlebarsTemplates = async function () {
|
||||
export default async function preloadHandlebarsTemplates() {
|
||||
return loadTemplates([
|
||||
"systems/deltagreen/templates/actor/actor-sheet.html",
|
||||
"systems/deltagreen/templates/actor/limited-sheet.html",
|
||||
@@ -14,4 +16,4 @@ export const preloadHandlebarsTemplates = async function () {
|
||||
"systems/deltagreen/templates/actor/vehicle-sheet.html",
|
||||
"systems/deltagreen/templates/actor/help-and-licensing-partial.html",
|
||||
]);
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user