switch to using TypeScript
This commit is contained in:
parent
1d120b273a
commit
d163fd27fe
53 changed files with 2875 additions and 1614 deletions
38
src/module/actor/actor.ts
Normal file
38
src/module/actor/actor.ts
Normal file
|
@ -0,0 +1,38 @@
|
|||
/**
|
||||
* Extend the base Actor entity by defining a custom roll data structure which is ideal for the Simple system.
|
||||
* @extends {Actor}
|
||||
*/
|
||||
export class DS4Actor extends Actor {
|
||||
/** @override */
|
||||
prepareDerivedData() {
|
||||
const data = this.data;
|
||||
this._prepareCombatValues(data);
|
||||
}
|
||||
|
||||
_prepareCombatValues(data) {
|
||||
const hitPointsModifier = getProperty(data, "data.combatValues.hitPoints.modifier") || 0;
|
||||
setProperty(
|
||||
data,
|
||||
"data.combatValues.hitPoints.max",
|
||||
data.data.attributes.body.initial + data.data.traits.constitution.initial + 10 + hitPointsModifier
|
||||
);
|
||||
|
||||
const defenseModifier = getProperty(data, "data.combatValues.defense.modifier") || 0;
|
||||
setProperty(
|
||||
data,
|
||||
"data.combatValues.defense.value",
|
||||
data.data.attributes.body.initial +
|
||||
data.data.traits.constitution.initial +
|
||||
this._getArmorValue() +
|
||||
defenseModifier
|
||||
);
|
||||
}
|
||||
|
||||
_getArmorValue() {
|
||||
return this.data["items"]
|
||||
.filter((item) => ["armor", "shield"].includes(item.type))
|
||||
.filter((item) => item.data.equipped)
|
||||
.map((item) => item.data.armorValue)
|
||||
.reduce((a, b) => a + b, 0);
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue