Minor fixes

This commit is contained in:
sladecraven 2022-01-25 09:14:32 +01:00
parent 44707a6397
commit dd0d40efc8
4 changed files with 34 additions and 29 deletions

View File

@ -198,7 +198,7 @@ export class PegasusActor extends Actor {
await this.updateEmbeddedDocuments('Item', [update]); // Updates one EmbeddedEntity
}
}
/* -------------------------------------------- */
async activatePower(itemId) {
let item = this.data.items.find(item => item.id == itemId);
@ -488,16 +488,16 @@ export class PegasusActor extends Actor {
}
/* -------------------------------------------- */
getShieldDice() {
let shields = this.data.items.filter( item => item.type == "shield" && item.data.data.equipped)
let shields = this.data.items.filter(item => item.type == "shield" && item.data.data.equipped)
let def = 0
for ( let sh of shields) {
for (let sh of shields) {
def += sh.data.data.level
}
return def
}
/* -------------------------------------------- */
rollPool(statKey, useShield=false) {
rollPool(statKey, useShield = false) {
let stat = this.getStat(statKey);
if (stat) {
let rollData = this.getCommonRollData()
@ -505,7 +505,7 @@ export class PegasusActor extends Actor {
rollData.specList = this.getRelevantSpec(statKey)
rollData.selectedSpec = "0"
rollData.stat = stat;
if (useShield) {
rollData.otherDicesLevel = this.getShieldDice()
}
@ -572,9 +572,9 @@ export class PegasusActor extends Actor {
rollData.mode = "MR"
rollData.stat = mr
rollData.activePerks = duplicate(this.getActivePerks()),
rollData.specList = this.getRelevantSpec('mr'),
rollData.specList = this.getRelevantSpec('mr'),
this.startRoll(rollData);
this.startRoll(rollData);
} else {
ui.notifications.warn("MR not found !");
}
@ -596,7 +596,7 @@ export class PegasusActor extends Actor {
/* -------------------------------------------- */
async computeNRGHealth() {
if ( this.isOwner || game.user.isGM) {
if (this.isOwner || game.user.isGM) {
let updates = {}
let phyDiceValue = PegasusUtility.getDiceValue(this.data.data.statistics.phy.value) + this.data.data.secondary.health.bonus + this.data.data.statistics.phy.mod;
if (phyDiceValue != this.data.data.secondary.health.max) {
@ -608,18 +608,18 @@ export class PegasusActor extends Actor {
updates['data.secondary.delirium.max'] = mndDiceValue
updates['data.secondary.delirium.value'] = mndDiceValue
}
let stlDiceValue = PegasusUtility.getDiceValue(this.data.data.statistics.stl.value) + this.data.data.secondary.stealthhealth.bonus + this.data.data.statistics.stl.mod;
let stlDiceValue = PegasusUtility.getDiceValue(this.data.data.statistics.stl.value) + this.data.data.secondary.stealthhealth.bonus + this.data.data.statistics.stl.mod;
if (stlDiceValue != this.data.data.secondary.stealthhealth.max) {
updates['data.secondary.stealthhealth.max'] = stlDiceValue
updates['data.secondary.stealthhealth.value'] = stlDiceValue
updates['data.secondary.stealthhealth.max'] = stlDiceValue
updates['data.secondary.stealthhealth.value'] = stlDiceValue
}
let socDiceValue = PegasusUtility.getDiceValue(this.data.data.statistics.soc.value) + this.data.data.secondary.socialhealth.bonus + this.data.data.statistics.soc.mod;
if (socDiceValue != this.data.data.secondary.socialhealth.max) {
updates['data.secondary.socialhealth.max'] = socDiceValue
updates['data.secondary.socialhealth.value'] = socDiceValue
updates['data.secondary.socialhealth.value'] = socDiceValue
}
let nrgValue = PegasusUtility.getDiceValue(this.data.data.statistics.foc.value) + this.data.data.nrg.mod + this.data.data.statistics.foc.mod;
if (nrgValue != this.data.data.nrg.max) {
updates['data.nrg.max'] = nrgValue
@ -627,21 +627,27 @@ export class PegasusActor extends Actor {
}
nrgValue = PegasusUtility.getDiceValue(this.data.data.statistics.foc.value) + this.data.data.statistics.foc.mod;
if (nrgValue != this.data.data.combat.stunthreshold) {
updates['data.combat.stunthreshold'] = nrgValue
updates['data.combat.stunthreshold'] = nrgValue
}
let momentum = PegasusUtility.getDiceValue(this.data.data.statistics.foc.value) + this.data.data.statistics.foc.mod
if (momentum != this.data.data.momentum.max) {
updates['data.momentum.value'] = momentum
updates['data.momentum.max'] = momentum
updates['data.momentum.value'] = 0
updates['data.momentum.max'] = momentum
}
let mrLevel = (this.data.data.statistics.agi.value + this.data.data.statistics.str.value) - this.data.data.statistics.phy.value
mrLevel = (mrLevel < 1) ? 1 : mrLevel;
if (mrLevel != this.data.data.mr.value) {
updates['data.mr.value'] = mrLevel
}
let race = this.getRace()
if ( race && race.name && (race.name != this.data.data.biodata.racename) ) {
if (race && race.name && (race.name != this.data.data.biodata.racename)) {
updates['data.biodata.racename'] = race.name
}
let role = this.getRole()
if ( role && role.name && (role.name != this.data.data.biodata.rolename)) {
if (role && role.name && (role.name != this.data.data.biodata.rolename)) {
updates['data.biodata.rolename'] = role.name
}
//console.log("UPD", updates, this.data.data.biodata)
@ -844,7 +850,7 @@ export class PegasusActor extends Actor {
rollData.specList = this.getRelevantSpec(weapon.data.statistic)
rollData.activePerks = duplicate(this.getActivePerks())
if (damage) {
rollData.stat = this.getStat(weapon.data.damagestatistic)
rollData.stat = this.getStat(weapon.data.damagestatistic)
rollData.isDamage = true;
rollData.otherDicesLevel = weapon.data.damage
} else {
@ -878,5 +884,5 @@ export class PegasusActor extends Actor {
ui.notifications.warn("Power not found !", powerId);
}
}
}

View File

@ -41,7 +41,6 @@ export class PegasusRollDialog extends Dialog {
label: "Cancel",
callback: () => { this.close() }
} },
default: "roll",
close: close
}

View File

@ -163,6 +163,6 @@
"templateVersion": 63,
"title": "Pegasus RPG",
"url": "https://www.uberwald.me/data/files/fvtt-pegasus-rpg",
"version": "0.1.12",
"version": "0.1.13",
"background" : "./images/ui/pegasus_welcome_page.webp"
}

View File

@ -79,7 +79,7 @@
<li class="item flexrow list-item" data-key="nrg">
<span class="stat-label flexrow" name="nrg"> <h4>{{data.nrg.label}}</h4> </span>
<span class="small-label padd-right packed-left">Act</span><input type="text" class="padd-right" name="data.nrg.activated" value="{{data.nrg.activated}}" data-dtype="Number"/>
<span class="small-label padd-right packed-left">&nbsp;Val</span><input type="text" class="padd-right" name="data.nrg.value" value="{{data.nrg.value}}" data-dtype="Number"/>
<span class="small-label padd-right packed-left">&nbsp;Cur</span><input type="text" class="padd-right" name="data.nrg.value" value="{{data.nrg.value}}" data-dtype="Number"/>
<span class="small-label padd-right packed-left">&nbsp;Mod</span><input type="text" class="padd-right" name="data.nrg.mod" value="{{data.nrg.mod}}" data-dtype="Number"/>
<span class="small-label padd-right packed-left">&nbsp;Max</span><input type="text" class="padd-right" name="data.nrg.max" value="{{data.nrg.max}}" data-dtype="Number"/>
</li>
@ -169,7 +169,7 @@
<li class="item flexrow list-item" data-key="nrg">
<span class="stat-label flexrow" name="nrg"><h4>{{data.nrg.label}}</h4> </span>
<span class="small-label padd-right packed-left">Act</span><input type="text" class="padd-right update-field input-numeric-short" data-field-name="data.nrg.activated" value="{{data.nrg.activated}}" data-dtype="Number"/>
<span class="small-label padd-right packed-left">&nbsp;Val</span><input type="text" class="padd-right update-field input-numeric-short" data-field-name="data.nrg.value" value="{{data.nrg.value}}" data-dtype="Number"/>
<span class="small-label padd-right packed-left">&nbsp;Cur</span><input type="text" class="padd-right update-field input-numeric-short" data-field-name="data.nrg.value" value="{{data.nrg.value}}" data-dtype="Number"/>
<span class="small-label padd-right packed-left">&nbsp;Mod</span><input type="text" class="padd-right update-field input-numeric-short" data-field-name="data.nrg.mod" value="{{data.nrg.mod}}" data-dtype="Number"/>
<span class="small-label padd-right packed-left">&nbsp;Max</span><input type="text" class="padd-right update-field input-numeric-short" data-field-name="data.nrg.max" value="{{data.nrg.max}}" data-dtype="Number"/>
</li>
@ -179,7 +179,7 @@
<span class="stat-label flexrow" name="{{key}}">
<h4>{{stat2.label}}</h4>
</span>
<span class="small-label padd-right packed-left">Val</span><input type="text" class="padd-right update-field input-numeric-short" data-field-name="data.secondary.{{key}}.value" value="{{stat2.value}}" data-dtype="Number"/>
<span class="small-label padd-right packed-left">Cur</span><input type="text" class="padd-right update-field input-numeric-short" data-field-name="data.secondary.{{key}}.value" value="{{stat2.value}}" data-dtype="Number"/>
<span class="small-label padd-right packed-left">&nbsp;Bonus</span><input type="text" class="padd-right update-field input-numeric-short" data-field-name="data.secondary.{{key}}.bonus" value="{{stat2.bonus}}" data-dtype="Number"/>
<span class="small-label padd-right packed-left">&nbsp;Max</span><input type="text" class="padd-right update-field input-numeric-short" data-field-name="data.secondary.{{key}}.max" value="{{stat2.max}}" data-dtype="Number"/>
</li>
@ -187,7 +187,7 @@
{{/each}}
<li class="item flexrow list-item" data-key="momentum">
<span class="stat-label flexrow" name="momentum"><h4>{{data.momentum.label}}</h4></span>
<span class="small-label padd-right packed-left">Val</span><input type="text" class="padd-right update-field input-numeric-short" data-field-name="data.momentum.value" value="{{data.momentum.value}}" data-dtype="Number"/>
<span class="small-label padd-right packed-left">Cur</span><input type="text" class="padd-right update-field input-numeric-short" data-field-name="data.momentum.value" value="{{data.momentum.value}}" data-dtype="Number"/>
<span class="small-label padd-right packed-left">&nbsp;Max</span><input type="text" class="padd-right update-field input-numeric-short" data-field-name="data.momentum.max" value="{{data.momentum.max}}" data-dtype="Number"/>
</li>
</ul>
@ -326,7 +326,7 @@
<li class="item flexrow list-item" data-key="nrg">
<span class="stat-label flexrow" name="nrg"><h4>{{data.nrg.label}}</h4> </span>
<span class="small-label padd-right packed-left">Act</span><input type="text" class="padd-right update-field" data-field-name="data.nrg.activated" value="{{data.nrg.activated}}" data-dtype="Number"/>
<span class="small-label padd-right packed-left">&nbsp;Val</span><input type="text" class="padd-right update-field" data-field-name="data.nrg.value" value="{{data.nrg.value}}" data-dtype="Number"/>
<span class="small-label padd-right packed-left">&nbsp;Cur</span><input type="text" class="padd-right update-field" data-field-name="data.nrg.value" value="{{data.nrg.value}}" data-dtype="Number"/>
<span class="small-label padd-right packed-left">&nbsp;Mod</span><input type="text" class="padd-right update-field" data-field-name="data.nrg.mod" value="{{data.nrg.mod}}" data-dtype="Number"/>
<span class="small-label padd-right packed-left">&nbsp;Max</span><input type="text" class="padd-right update-field" data-field-name="data.nrg.max" value="{{data.nrg.max}}" data-dtype="Number"/>
</li>