use of min/max for fatigue/strife/void point for use on token bars
This commit is contained in:
@@ -61,20 +61,22 @@ export class ActorL5r5e extends Actor {
|
||||
prepareData() {
|
||||
super.prepareData();
|
||||
|
||||
const actorData = this.data;
|
||||
const data = actorData.data;
|
||||
const isCharacter = ["character", "npc"].includes(actorData.type);
|
||||
if (["character", "npc"].includes(this.data.type)) {
|
||||
const data = this.data.data;
|
||||
|
||||
if (isCharacter) {
|
||||
data.endurance = (Number(data.rings.earth) + Number(data.rings.fire)) * 2;
|
||||
data.composure = (Number(data.rings.earth) + Number(data.rings.water)) * 2;
|
||||
data.focus = Number(data.rings.air) + Number(data.rings.fire);
|
||||
data.vigilante = Math.floor((Number(data.rings.air) + Number(data.rings.water)) / 2);
|
||||
|
||||
// Attributes bars
|
||||
data.void_points.max = data.rings.void;
|
||||
data.fatigue.max = data.endurance;
|
||||
data.strife.max = data.composure;
|
||||
|
||||
// Make sure void points are never greater than max
|
||||
if (data.void_points.current > data.void_points.max) {
|
||||
data.void_points.current = data.void_points.max;
|
||||
if (data.void_points.value > data.void_points.max) {
|
||||
data.void_points.value = data.void_points.max;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -218,7 +218,7 @@ export class DicePickerDialog extends FormApplication {
|
||||
actor: this._actor,
|
||||
actorIsPc: !this._actor || this._actor.data?.type === "character",
|
||||
difficulty: this._difficulty,
|
||||
canUseVoidPoint: !this._actor || this._actor.data.data.void_points.current > 0,
|
||||
canUseVoidPoint: !this._actor || this._actor.data.data.void_points.value > 0,
|
||||
};
|
||||
}
|
||||
|
||||
@@ -362,15 +362,15 @@ export class DicePickerDialog extends FormApplication {
|
||||
|
||||
// If Void point is used, minus the actor
|
||||
if (formData.use_void_point) {
|
||||
this._actor.data.data.void_points.current = Math.max(this._actor.data.data.void_points.current - 1, 0);
|
||||
this._actor.data.data.void_points.value = Math.max(this._actor.data.data.void_points.value - 1, 0);
|
||||
}
|
||||
|
||||
// If hidden add void 1pt
|
||||
// this._difficulty.isHidden = !!formData.diff_hidden;
|
||||
// this._difficulty.difficulty = formData.diff;
|
||||
if (this._difficulty.isHidden) {
|
||||
this._actor.data.data.void_points.current = Math.min(
|
||||
this._actor.data.data.void_points.current + 1,
|
||||
this._actor.data.data.void_points.value = Math.min(
|
||||
this._actor.data.data.void_points.value + 1,
|
||||
this._actor.data.data.void_points.max
|
||||
);
|
||||
}
|
||||
|
||||
@@ -74,11 +74,17 @@
|
||||
"focus": 0,
|
||||
"vigilante": 0,
|
||||
"void_points": {
|
||||
"max": 0,
|
||||
"current": 0
|
||||
"max": 1,
|
||||
"value": 0
|
||||
},
|
||||
"fatigue": {
|
||||
"max": 1,
|
||||
"value": 0
|
||||
},
|
||||
"strife": {
|
||||
"max": 1,
|
||||
"value": 0
|
||||
},
|
||||
"fatigue": 0,
|
||||
"strife": 0,
|
||||
"stance": "void"
|
||||
},
|
||||
"advancement": {
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
</label>
|
||||
<label class="attribute-label">
|
||||
<strong>{{ localize 'l5r5e.attributes.fatigue' }}</strong>
|
||||
<input class="centered-input select-on-focus" type="number" name="data.fatigue" value="{{data.fatigue}}" data-dtype="Number" min="0" placeholder="0"/>
|
||||
<input class="centered-input select-on-focus" type="number" name="data.fatigue.value" value="{{data.fatigue.value}}" data-dtype="Number" min="0" placeholder="0"/>
|
||||
</label>
|
||||
<p class="quick-rules"> {{ localize 'l5r5e.attributes.endurancetip' }}</p>
|
||||
</li>
|
||||
@@ -17,7 +17,7 @@
|
||||
</label>
|
||||
<label class="attribute-label">
|
||||
<strong>{{ localize 'l5r5e.attributes.strife' }}</strong>
|
||||
<input class="centered-input select-on-focus" type="number" name="data.strife" value="{{data.strife}}" data-dtype="Number" min="0" placeholder="0"/>
|
||||
<input class="centered-input select-on-focus" type="number" name="data.strife.value" value="{{data.strife.value}}" data-dtype="Number" min="0" placeholder="0"/>
|
||||
</label>
|
||||
<p class="quick-rules"> {{ localize 'l5r5e.attributes.composuretip' }}</p>
|
||||
</li>
|
||||
@@ -38,7 +38,7 @@
|
||||
<li class="void-content">
|
||||
<label class="attribute-label">
|
||||
<strong>{{ localize 'l5r5e.attributes.voidpoints' }}</strong>
|
||||
<input class="centered-input select-on-focus" type="number" name="data.void_points.current" value="{{data.void_points.current}}" data-dtype="Number" placeholder="0" min="0" max="{{data.void_points.max}}"/>
|
||||
<input class="centered-input select-on-focus" type="number" name="data.void_points.value" value="{{data.void_points.value}}" data-dtype="Number" placeholder="0" min="0" max="{{data.void_points.max}}"/>
|
||||
<input class="centered-input" type="text" name="data.void_points.max" value="{{data.void_points.max}}" data-dtype="Number" disabled/>
|
||||
</label>
|
||||
</li>
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
</label>
|
||||
<label class="attribute-label">
|
||||
<strong>{{ localize 'l5r5e.attributes.fatigue' }}</strong>
|
||||
<input class="centered-input select-on-focus" type="number" name="data.fatigue" value="{{data.fatigue}}" data-dtype="Number" min="0" placeholder="0"/>
|
||||
<input class="centered-input select-on-focus" type="number" name="data.fatigue.value" value="{{data.fatigue.value}}" data-dtype="Number" min="0" placeholder="0"/>
|
||||
</label>
|
||||
<p class="quick-rules"> {{ localize 'l5r5e.attributes.endurancetip' }}</p>
|
||||
</li>
|
||||
@@ -17,7 +17,7 @@
|
||||
</label>
|
||||
<label class="attribute-label">
|
||||
<strong>{{ localize 'l5r5e.attributes.strife' }}</strong>
|
||||
<input class="centered-input select-on-focus" type="number" name="data.strife" value="{{data.strife}}" data-dtype="Number" min="0" placeholder="0"/>
|
||||
<input class="centered-input select-on-focus" type="number" name="data.strife.value" value="{{data.strife.value}}" data-dtype="Number" min="0" placeholder="0"/>
|
||||
</label>
|
||||
<p class="quick-rules"> {{ localize 'l5r5e.attributes.composuretip' }}</p>
|
||||
</li>
|
||||
@@ -38,7 +38,7 @@
|
||||
<li class="void-content">
|
||||
<label class="attribute-label">
|
||||
<strong>{{ localize 'l5r5e.attributes.voidpoints' }}</strong>
|
||||
<input class="centered-input select-on-focus" type="number" name="data.void_points.current" value="{{data.void_points.current}}" data-dtype="Number" placeholder="0" min="0" max="{{data.void_points.max}}"/>
|
||||
<input class="centered-input select-on-focus" type="number" name="data.void_points.value" value="{{data.void_points.value}}" data-dtype="Number" placeholder="0" min="0" max="{{data.void_points.max}}"/>
|
||||
<input class="centered-input" type="text" name="data.void_points.max" value="{{data.void_points.max}}" data-dtype="Number" disabled/>
|
||||
</label>
|
||||
</li>
|
||||
|
||||
Reference in New Issue
Block a user