Fixed so tokenPreview works with tokenSize

This commit is contained in:
WBHarry 2025-12-24 21:11:47 +01:00
parent f386076264
commit 40dda1067f
2 changed files with 23 additions and 1 deletions

View file

@ -53,6 +53,28 @@ export default class DhTokenConfig extends foundry.applications.sheets.TokenConf
} }
} }
/** @inheritDoc */
_previewChanges(changes) {
if (!changes || !this._preview) return;
const tokenSizeSelect = this.element?.querySelector('#dhTokenSize');
if (this.token.actor && tokenSizeSelect && tokenSizeSelect.value !== 'custom') {
const tokenSizes = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).tokenSizes;
const tokenSize = tokenSizes[tokenSizeSelect.value];
changes.width = tokenSize;
changes.height = tokenSize;
}
const deletions = { '-=actorId': null, '-=actorLink': null };
const mergeOptions = { inplace: false, performDeletions: true };
this._preview.updateSource(mergeObject(changes, deletions, mergeOptions));
if (this._preview?.object?.destroyed === false) {
this._preview.object.initializeSources();
this._preview.object.renderFlags.set({ refresh: true });
}
}
async onTokenSizeChange(event) { async onTokenSizeChange(event) {
const value = event.target.value; const value = event.target.value;
const tokenSizeDimensions = this.element.querySelector('#tokenSizeDimensions'); const tokenSizeDimensions = this.element.querySelector('#tokenSizeDimensions');

View file

@ -17,7 +17,7 @@
<div class="form-group lim"> <div class="form-group lim">
<label>{{localize "Size Category"}}</label> <label>{{localize "Size Category"}}</label>
<select id="dhTokenSize" name="actor.system.size"> <select id="dhTokenSize">
{{selectOptions tokenSizes selected=document.actor.system.size valueAttr="id" labelAttr="label" localize=true}} {{selectOptions tokenSizes selected=document.actor.system.size valueAttr="id" labelAttr="label" localize=true}}
</select> </select>
</div> </div>