Skip to content

Commit

Permalink
v4.3.9
Browse files Browse the repository at this point in the history
MrPrimate committed Jun 18, 2024
1 parent 0443e6d commit 672e409
Showing 5 changed files with 71 additions and 34 deletions.
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
# Changelog

# [4.3.9]

- Fix for quick settings not always applying.
- Setting to enable dynamic token ring settings when saving a tokenizer token.

# [4.3.8]

- Enable Português (Brasil) in manifest :facepalm:
4 changes: 3 additions & 1 deletion lang/en.json
Original file line number Diff line number Diff line change
@@ -195,5 +195,7 @@
"label": "Nothing",
"description": "No ring, mask or background colour"
}
}
},
"vtta-tokenizer.auto-apply-dynamic-token-ring.name": "Auto Apply Dynamic Token Ring?",
"vtta-tokenizer.auto-apply-dynamic-token-ring.hint": "Automatically enable dyanmic token ring on edited tokens?"
}
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "tokenizer",
"version": "4.3.8",
"version": "4.3.9",
"license": "MIT",
"scripts": {
"lint": "npx eslint src/",
20 changes: 18 additions & 2 deletions src/hooks.js
Original file line number Diff line number Diff line change
@@ -86,9 +86,26 @@ async function updateActor(tokenizerResponse) {
update.token = {
img: `${options.current}/${actorName}.Token-*.${imageFormat}`,
};

}

if (game.settings.get(CONSTANTS.MODULE_ID, "auto-apply-dynamic-token-ring")) {
if (game.release.generation < 12) {
if (update.prototypeToken) {
foundry.utils.setProperty(update.prototypeToken, "flags.dnd5e.tokenRing.enabled", true);
}
if (update.token) {
foundry.utils.setProperty(update.token, "flags.dnd5e.tokenRing.enabled", true);
}
} else {
if (update.prototypeToken) {
foundry.utils.setProperty(update.prototypeToken, "ring.enabled", true);
}
if (update.token) {
foundry.utils.setProperty(update.token, "ring.enabled", true);
}
}
}

logger.debug("Updating with", update);
await tokenizerResponse.actor.update(update);
// if there is a scene token, lets update it
@@ -173,7 +190,6 @@ export async function autoToken(actor, options) {
isWildCard: actor.prototypeToken.randomImg,
auto: true,
updateActor: true,
// tokenOffset: { position: { x: -35, y: -35 } },
};
const mergedOptions = foundry.utils.mergeObject(defaultOptions, options);
const tokenizer = new Tokenizer(mergedOptions, updateActor);
74 changes: 44 additions & 30 deletions src/settings.js
Original file line number Diff line number Diff line change
@@ -113,52 +113,57 @@ class QuickSettings extends FormApplication {
async _updateObject(event) {
switch (event.submitter.id) {
case "tokenring-colour": {
game.settings.set(CONSTANTS.MODULE_ID, "add-frame-default", true);
game.settings.set(CONSTANTS.MODULE_ID, "default-color-layer", true);
game.settings.set(CONSTANTS.MODULE_ID, "add-mask-default", false);
game.settings.set(CONSTANTS.MODULE_ID, "enable-default-texture-layer", false);
game.settings.set(CONSTANTS.MODULE_ID, "default-token-offset", game.settings.settings.get(`${CONSTANTS.MODULE_ID}.default-token-offset`).default);
game.settings.set(CONSTANTS.MODULE_ID, "token-size", game.settings.settings.get(`${CONSTANTS.MODULE_ID}.token-size`).default);
await game.settings.set(CONSTANTS.MODULE_ID, "add-frame-default", true);
await game.settings.set(CONSTANTS.MODULE_ID, "default-color-layer", true);
await game.settings.set(CONSTANTS.MODULE_ID, "add-mask-default", false);
await game.settings.set(CONSTANTS.MODULE_ID, "enable-default-texture-layer", false);
await game.settings.set(CONSTANTS.MODULE_ID, "default-token-offset", game.settings.settings.get(`${CONSTANTS.MODULE_ID}.default-token-offset`).default);
await game.settings.set(CONSTANTS.MODULE_ID, "token-size", game.settings.settings.get(`${CONSTANTS.MODULE_ID}.token-size`).default);
await game.settings.set(CONSTANTS.MODULE_ID, "auto-apply-dynamic-token-ring", false);
// game.settings.set(CONSTANTS.MODULE_ID, "frame-tint", false);
break;
}
case "tokenring-texture": {
game.settings.set(CONSTANTS.MODULE_ID, "add-frame-default", true);
game.settings.set(CONSTANTS.MODULE_ID, "default-color-layer", false);
game.settings.set(CONSTANTS.MODULE_ID, "add-mask-default", false);
game.settings.set(CONSTANTS.MODULE_ID, "enable-default-texture-layer", true);
game.settings.set(CONSTANTS.MODULE_ID, "default-token-offset", game.settings.settings.get(`${CONSTANTS.MODULE_ID}.default-token-offset`).default);
game.settings.set(CONSTANTS.MODULE_ID, "token-size", game.settings.settings.get(`${CONSTANTS.MODULE_ID}.token-size`).default);
await game.settings.set(CONSTANTS.MODULE_ID, "add-frame-default", true);
await game.settings.set(CONSTANTS.MODULE_ID, "default-color-layer", false);
await game.settings.set(CONSTANTS.MODULE_ID, "add-mask-default", false);
await game.settings.set(CONSTANTS.MODULE_ID, "enable-default-texture-layer", true);
await game.settings.set(CONSTANTS.MODULE_ID, "default-token-offset", game.settings.settings.get(`${CONSTANTS.MODULE_ID}.default-token-offset`).default);
await game.settings.set(CONSTANTS.MODULE_ID, "token-size", game.settings.settings.get(`${CONSTANTS.MODULE_ID}.token-size`).default);
await game.settings.set(CONSTANTS.MODULE_ID, "auto-apply-dynamic-token-ring", false);
// game.settings.set(CONSTANTS.MODULE_ID, "frame-tint", false);
break;
}
case "tokenring-transparent": {
game.settings.set(CONSTANTS.MODULE_ID, "add-frame-default", true);
game.settings.set(CONSTANTS.MODULE_ID, "default-color-layer", false);
game.settings.set(CONSTANTS.MODULE_ID, "add-mask-default", false);
game.settings.set(CONSTANTS.MODULE_ID, "enable-default-texture-layer", false);
game.settings.set(CONSTANTS.MODULE_ID, "default-token-offset", game.settings.settings.get(`${CONSTANTS.MODULE_ID}.default-token-offset`).default);
game.settings.set(CONSTANTS.MODULE_ID, "token-size", game.settings.settings.get(`${CONSTANTS.MODULE_ID}.token-size`).default);
await game.settings.set(CONSTANTS.MODULE_ID, "add-frame-default", true);
await game.settings.set(CONSTANTS.MODULE_ID, "default-color-layer", false);
await game.settings.set(CONSTANTS.MODULE_ID, "add-mask-default", false);
await game.settings.set(CONSTANTS.MODULE_ID, "enable-default-texture-layer", false);
await game.settings.set(CONSTANTS.MODULE_ID, "default-token-offset", game.settings.settings.get(`${CONSTANTS.MODULE_ID}.default-token-offset`).default);
await game.settings.set(CONSTANTS.MODULE_ID, "token-size", game.settings.settings.get(`${CONSTANTS.MODULE_ID}.token-size`).default);
await game.settings.set(CONSTANTS.MODULE_ID, "auto-apply-dynamic-token-ring", false);
// game.settings.set(CONSTANTS.MODULE_ID, "frame-tint", false);
break;
}
case "dynamicring": {
game.settings.set(CONSTANTS.MODULE_ID, "add-frame-default", false);
game.settings.set(CONSTANTS.MODULE_ID, "default-color-layer", false);
game.settings.set(CONSTANTS.MODULE_ID, "add-mask-default", true);
game.settings.set(CONSTANTS.MODULE_ID, "enable-default-texture-layer", false);
game.settings.set(CONSTANTS.MODULE_ID, "default-token-offset", -65);
game.settings.set(CONSTANTS.MODULE_ID, "token-size", game.settings.settings.get(`${CONSTANTS.MODULE_ID}.token-size`).default);
await game.settings.set(CONSTANTS.MODULE_ID, "add-frame-default", false);
await game.settings.set(CONSTANTS.MODULE_ID, "default-color-layer", false);
await game.settings.set(CONSTANTS.MODULE_ID, "add-mask-default", true);
await game.settings.set(CONSTANTS.MODULE_ID, "enable-default-texture-layer", false);
await game.settings.set(CONSTANTS.MODULE_ID, "default-token-offset", -65);
await game.settings.set(CONSTANTS.MODULE_ID, "token-size", game.settings.settings.get(`${CONSTANTS.MODULE_ID}.token-size`).default);
await game.settings.set(CONSTANTS.MODULE_ID, "auto-apply-dynamic-token-ring", true);
// game.settings.set(CONSTANTS.MODULE_ID, "frame-tint", false);
break;
}
case "nothing": {
game.settings.set(CONSTANTS.MODULE_ID, "add-frame-default", false);
game.settings.set(CONSTANTS.MODULE_ID, "default-color-layer", false);
game.settings.set(CONSTANTS.MODULE_ID, "add-mask-default", false);
game.settings.set(CONSTANTS.MODULE_ID, "enable-default-texture-layer", false);
game.settings.set(CONSTANTS.MODULE_ID, "frame-tint", false);
game.settings.set(CONSTANTS.MODULE_ID, "default-token-offset", 0);
await game.settings.set(CONSTANTS.MODULE_ID, "add-frame-default", false);
await game.settings.set(CONSTANTS.MODULE_ID, "default-color-layer", false);
await game.settings.set(CONSTANTS.MODULE_ID, "add-mask-default", false);
await game.settings.set(CONSTANTS.MODULE_ID, "enable-default-texture-layer", false);
await game.settings.set(CONSTANTS.MODULE_ID, "frame-tint", false);
await game.settings.set(CONSTANTS.MODULE_ID, "default-token-offset", 0);
await game.settings.set(CONSTANTS.MODULE_ID, "auto-apply-dynamic-token-ring", false);
break;
}
// no default
@@ -358,6 +363,15 @@ export function registerSettings() {
default: "red",
});

game.settings.register(CONSTANTS.MODULE_ID, "auto-apply-dynamic-token-ring", {
name: `${CONSTANTS.MODULE_ID}.auto-apply-dynamic-token-ring.name`,
hint: `${CONSTANTS.MODULE_ID}.auto-apply-dynamic-token-ring.hint`,
scope: "player",
config: true,
type: Boolean,
default: false,
});

game.settings.register(CONSTANTS.MODULE_ID, "disable-omfg-frames", {
name: `${CONSTANTS.MODULE_ID}.disable-omfg-frames.name`,
scope: "player",

0 comments on commit 672e409

Please sign in to comment.