#65 Gestion parade entités/creatures
This commit is contained in:
parent
a263350b56
commit
399a7b2d30
@ -1547,18 +1547,27 @@ export class RdDActor extends Actor {
|
||||
difficultesLibres: CONFIG.RDD.difficultesLibres,
|
||||
etat: this.data.data.compteurs.etat.value,
|
||||
diffConditions: 0,
|
||||
forceValue :this.data.data.carac.force.value, // Utilisé pour le jet de recul
|
||||
forceValue : (this.data.data.carac.force) ? this.data.data.carac.force.value : 0, // Utilisé pour le jet de recul
|
||||
diffLibre: (attackerRoll) ? attackerRoll.diffLibre : 0,
|
||||
attackerRoll: attackerRoll,
|
||||
finalLevel: 0,
|
||||
coupsNonMortels: false,
|
||||
malusArmureValue: (this.data.data.attributs) ? this.data.data.attributs.malusarmure.value : 0,
|
||||
surencMalusFlag: (this.data.data.compteurs.surenc.value < 0),
|
||||
surencMalusValue: this.data.data.compteurs.surenc.value,
|
||||
malusArmureValue: 0,
|
||||
surencMalusFlag: false,
|
||||
surencMalusValue: 0,
|
||||
surencMalusApply: false,
|
||||
isNatation: name.toLowerCase().includes("natation"),
|
||||
isNatation: false,
|
||||
useEncForNatation: false,
|
||||
encValueForNatation: (this.encombrementTotal) ? Math.round(this.encombrementTotal) : 0
|
||||
encValueForNatation: 0
|
||||
}
|
||||
if ( this.type == 'personnage ') {
|
||||
rollData.malusArmureValue = (this.data.data.attributs) ? this.data.data.attributs.malusarmure.value : 0;
|
||||
rollData.surencMalusFlag = (this.data.data.compteurs.surenc.value < 0);
|
||||
rollData.surencMalusValue = this.data.data.compteurs.surenc.value;
|
||||
rollData.surencMalusApply = false;
|
||||
rollData.isNatation = name.toLowerCase().includes("natation");
|
||||
rollData.useEncForNatation = false;
|
||||
rollData.encValueForNatation = (this.encombrementTotal) ? Math.round(this.encombrementTotal) : 0;
|
||||
}
|
||||
|
||||
if ( competence.type == 'competencecreature') { // Specific case for Creatures
|
||||
@ -1696,7 +1705,11 @@ export class RdDActor extends Actor {
|
||||
{
|
||||
let armeItem = this.getOwnedItem(armeId); // Item.data.data !
|
||||
console.log("Going to PARY !!!!!!!!!", armeItem, attackerRoll.diffLibre);
|
||||
this.rollCompetence( armeItem.data.data.competence, armeItem.data, attackerRoll, attacker);
|
||||
if (armeItem.type == 'competencecreature') {
|
||||
this.rollCompetence( armeItem.name, armeItem.data, attackerRoll, attacker);
|
||||
} else {
|
||||
this.rollCompetence( armeItem.data.data.competence, armeItem.data, attackerRoll, attacker);
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
|
@ -631,6 +631,8 @@ export class RdDUtility {
|
||||
/* -------------------------------------------- */
|
||||
static getArmeCategory( arme )
|
||||
{
|
||||
if ( arme.data.competence == undefined) return 'competencecreature';
|
||||
|
||||
let compname = arme.data.competence.toLowerCase();
|
||||
if ( compname.match("hache") ) return "hache";
|
||||
if ( compname.match("hast") ) return "hast";
|
||||
@ -669,13 +671,17 @@ export class RdDUtility {
|
||||
rollMode: true
|
||||
};
|
||||
|
||||
if ( rollData.competence.data.categorie == 'melee' || rollData.competence.data.categorie == 'creature') { // Melee attack or creature
|
||||
if ( rollData.competence.data.categorie == 'melee' || rollData.competence.data.categorie == 'competencecreature') { // Melee attack or creature
|
||||
let defenderArmes = [];
|
||||
for (const arme of myTarget.data.items) {
|
||||
if (arme.type == "arme" && this.isArmeMelee(arme.data.competence)) {
|
||||
defenderArmes.push( arme );
|
||||
defenseMsg.content += "<br><a class='chat-card-button' id='parer-button' data-attackerid='"+attacker.data._id + "' data-defendertokenid='" + target.data._id + "' data-armeid='"+arme._id+"'>Parer avec " + arme.name + "</a></span>";
|
||||
}
|
||||
if (arme.type == "competencecreature" && arme.data.isparade) {
|
||||
defenderArmes.push( arme );
|
||||
defenseMsg.content += "<br><a class='chat-card-button' id='parer-button' data-attackerid='"+attacker.data._id + "' data-defendertokenid='" + target.data._id + "' data-armeid='"+arme._id+"'>Parer avec " + arme.name + "</a></span>";
|
||||
}
|
||||
}
|
||||
defenseMsg.content += "<br><a class='chat-card-button' id='esquiver-button' data-attackerid='"+attacker.data._id + "' data-defendertokenid='" + target.data._id + "'>Esquiver</a></span>";
|
||||
}
|
||||
|
@ -599,6 +599,7 @@
|
||||
"niveau": 0,
|
||||
"carac_value": 0,
|
||||
"iscombat": false,
|
||||
"isparade": false,
|
||||
"dommages": 0,
|
||||
"description": "Compétence : ..."
|
||||
},
|
||||
|
@ -20,6 +20,10 @@
|
||||
<label for="xp">Arme ? </label>
|
||||
<input class="attribute-value" type="checkbox" name="data.iscombat" {{#if data.iscombat}}checked{{/if}}/>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="xp">Parade ? </label>
|
||||
<input class="attribute-value" type="checkbox" name="data.isparade" {{#if data.isparade}}checked{{/if}}/>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="niveau">Dommages (+dom), si applicable </label>
|
||||
<input class="attribute-value" type="text" name="data.dommages" value="{{data.dommages}}" data-dtype="Number"/>
|
||||
|
Loading…
Reference in New Issue
Block a user