refactoring 1
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
|
||||
/**
|
||||
* Extend the base Actor document by defining a custom roll data structure which is ideal for the Simple system.
|
||||
* @extends {Actor}
|
||||
@@ -11,12 +12,19 @@ export class VermineActor extends Actor {
|
||||
// prepareBaseData(), prepareEmbeddedDocuments() (including active effects),
|
||||
// prepareDerivedData().
|
||||
super.prepareData();
|
||||
|
||||
}
|
||||
|
||||
/** @override */
|
||||
prepareBaseData() {
|
||||
// Data modifications in this step occur before processing embedded
|
||||
// documents or derived data.
|
||||
|
||||
if (this.type == 'character'){
|
||||
this._setCharacterEffort();
|
||||
this._setCharacterSelfControl();
|
||||
this._setCharacterThresholds();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -108,4 +116,64 @@ export class VermineActor extends Actor {
|
||||
// Process additional NPC data here.
|
||||
}
|
||||
|
||||
_setCharacterSelfControl() {
|
||||
let self_control = 0;
|
||||
|
||||
for(let i in actor.system.abilities){
|
||||
if (this.system.abilities[i].category == 'mental' || this.system.abilities[i].category == 'social'){
|
||||
self_control += this.system.abilities[i].value;
|
||||
}
|
||||
}
|
||||
/// gestion de l'age
|
||||
if (this.system.identity.ageType == 1){
|
||||
self_control--;
|
||||
}
|
||||
|
||||
this.system.attributes.self_control.max = self_control;
|
||||
}
|
||||
|
||||
_setCharacterEffort() {
|
||||
let effort = 0;
|
||||
|
||||
// calcul de l'effort
|
||||
for(let i in this.system.abilities){
|
||||
if (this.system.abilities[i].category == 'physical' || this.system.abilities[i].category == 'manual'){
|
||||
effort += this.system.abilities[i].value;
|
||||
}
|
||||
}
|
||||
|
||||
/// gestion de l'age
|
||||
if (this.system.identity.ageType == 1){
|
||||
effort--;
|
||||
} else if (this.system.identity.ageType == 3){
|
||||
effort -= 2;
|
||||
}
|
||||
|
||||
this.system.attributes.effort.max = effort;
|
||||
}
|
||||
|
||||
_setCharacterThresholds() {
|
||||
const health = this.system.abilities.health.value;
|
||||
|
||||
this.system.minorWound.threshold = health;
|
||||
this.system.majorWound.threshold = health + 3;
|
||||
this.system.deadlyWound.threshold = (health + 7 < 11) ? health + 7 : 10;
|
||||
|
||||
let lightWounds = 4;
|
||||
let heavyWounds = 3;
|
||||
let deadlyWounds = 2;
|
||||
|
||||
if (this.system.identity.ageType == 3){
|
||||
lightWounds--;
|
||||
heavyWounds--;
|
||||
deadlyWounds--;
|
||||
} else if (this.system.identity.ageType == 1){
|
||||
deadlyWounds--;
|
||||
}
|
||||
|
||||
this.system.minorWound.max = lightWounds;
|
||||
this.system.majorWound.max = heavyWounds;
|
||||
this.system.deadlyWound.max = deadlyWounds;
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user