[PR][Feature] Actor Sizes (#1433)

* Added support for adversary actor sizes

* .

* .

* Finished token implementation

* Fixed token-config

* Updated SRD adversaries

* .

* Added size to Beastform tokenData

* Fixed sizing for evolved beastforms

* Beastform compendium update

* .
This commit is contained in:
WBHarry 2025-12-22 16:58:53 +01:00 committed by GitHub
parent 7926c614e3
commit 8178fa5738
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
176 changed files with 1198 additions and 203 deletions

View file

@ -0,0 +1,82 @@
<div class="tab scrollable{{#if tab.active}} active{{/if}}" data-group="{{tab.group}}" data-tab="{{tab.id}}">
{{formGroup fields.texture.fields.src value=source.texture.src rootId=rootId}}
{{#if randomImgEnabled}}
{{formGroup fields.randomImg value=source.randomImg classes="slim" rootId=rootId}}
{{else if hasAlternates}}
<div class="form-group">
<label for="{{rootId}}-alternateImages">{{localize "TOKEN.ImageAlts"}}</label>
<select id="{{rootId}}-alternateImages" class="alternate-images" name="alternateImages">
{{selectOptions alternateImages selected=source.texture.src blank=""}}
</select>
</div>
{{/if}}
<div class="form-group slim" {{#if actorSizeUsed}}data-tooltip="{{localize "DAGGERHEART.APPLICATIONS.TokenConfig.actorSizeUsed"}}"{{/if}}>
<label>
{{localize "TOKEN.Dimensions"}} <span class="units">({{localize "GridSpaces"}})</span>
{{#if actorSizeUsed}}
<i class="fa-solid fa-lock"></i>
{{/if}}
</label>
<div class="form-fields">
<label for="{{rootId}}-width">{{localize "DOCUMENT.FIELDS.width.label"}}</label>
{{formInput fields.width value=source.width id=(concat rootId "-width") disabled=actorSizeUsed}}
<label for="{{rootId}}-height">{{localize "DOCUMENT.FIELDS.height.label"}}</label>
{{formInput fields.height value=source.height id=(concat rootId "-height") disabled=actorSizeUsed}}
</div>
</div>
{{#if shapes}}
{{formGroup fields.shape value=source.shape choices=shapes classes="slim" rootId=rootId}}
{{/if}}
{{formGroup fields.texture.fields.fit value=source.texture.fit choices=textureFitModes classes="slim" rootId=rootId}}
<div class="form-group slim">
<label>{{localize "Anchor"}}</label>
<div class="form-fields">
<label for="{{rootId}}-anchorX">{{localize "TOKEN.FIELDS.texture.anchorX.label"}}</label>
{{formInput fields.texture.fields.anchorX value=source.texture.anchorX id=(concat rootId "-anchorX")
placeholder="0.5"}}
<label for="{{rootId}}-anchorY">{{localize "TOKEN.FIELDS.texture.anchorY.label"}}</label>
{{formInput fields.texture.fields.anchorY value=source.texture.anchorY id=(concat rootId "-anchorY")
placeholder="0.5"}}
</div>
<p class="hint">{{localize "TOKEN.AnchorHint"}}</p>
</div>
<div class="form-group">
<label for="{{rootId}}-scale">{{localize "Scale"}} <span class="units">({{localize "Ratio"}})</span></label>
<div class="form-fields">
<range-picker id="{{rootId}}-scale" name="scale" value={{scale}} min="0.2" max="3" step="0.05"></range-picker>
</div>
</div>
<div class="form-group slim">
<label>{{localize "TOKEN.Mirror"}}</label>
<div class="form-fields">
<label class="checkbox" for="{{rootId}}-mirrorX">
{{localize "TOKEN.MirrorX"}}
<input type="checkbox" id="{{rootId}}-mirrorX" name="mirrorX" {{checked mirrorX}}>
</label>
<label class="checkbox" for="{{rootId}}-mirrorY">
{{localize "TOKEN.MirrorY"}}
<input type="checkbox" id="{{rootId}}-mirrorY" name="mirrorY" {{checked mirrorY}}>
</label>
</div>
</div>
{{formGroup fields.texture.fields.tint value=source.texture.tint placeholder="#ffffff" rootId=rootId}}
{{formGroup fields.alpha value=source.alpha step=0.05 rootId=rootId}}
{{formGroup fields.lockRotation value=source.lockRotation rootId=rootId}}
<fieldset>
<legend>{{localize "TOKEN.RING.SHEET.legend"}}</legend>
{{formGroup fields.ring.fields.enabled value=source.ring.enabled rootId=rootId}}
{{formGroup fields.ring.fields.colors.fields.ring value=source.ring.colors.ring rootId=rootId}}
{{formGroup fields.ring.fields.colors.fields.background value=source.ring.colors.background rootId=rootId}}
{{formGroup fields.ring.fields.subject.fields.texture value=source.ring.subject.texture rootId=rootId}}
{{formGroup fields.ring.fields.subject.fields.scale value=source.ring.subject.scale max=3 step=0.02 rootId=rootId}}
{{formGroup fields.ring.fields.effects value=source.ring.effects input=ringEffectsInput stacked=true rootId=rootId}}
</fieldset>
</div>