forked from public/foundryvtt-reve-de-dragon
Continue fight tests
This commit is contained in:
@ -376,6 +376,38 @@ export class RdDUtility {
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static isArmeMelee( compName)
|
||||
{
|
||||
let comp = compName.toLowerCase();
|
||||
if (comp.match("epée") || comp.match("hache") || comp.match("fleau") || comp.match("mass") || comp.match("lance") || comp.match("hast") || comp == "dague" || comp=="bouclier")
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static buildDefenseChatCard( attacker, target, rollData )
|
||||
{
|
||||
console.log("Target", target);
|
||||
let defenseMsg = { title: "Défense en combat",
|
||||
content: "Action de défense en combat!<br><span class='chat-card-button-area'>" +
|
||||
"<a class='chat-card-button' id='encaisser-button' data-attackerid='"+attacker.data._id + "' data-defenderid='" + target.actor.data._id + "'>Encaisser !</a></span>",
|
||||
whisper: ChatMessage.getWhisperRecipients(target.actor.data.name) };
|
||||
|
||||
if ( rollData.competence.data.categorie == "melee" ) { // Melee attack
|
||||
let defenderArmes = [];
|
||||
for (const arme of target.actor.data.items) {
|
||||
if (arme.type == "arme" && isArmeMelee(arme.data.competence)) {
|
||||
defenderArmes.push( arme );
|
||||
defenseMsg.content += "<a class='chat-card-button' id='parer-button' data-attackerid='"+attacker.data._id + "' data-defenderid='" + target.actor.data._id + " data-armeid='"+arme._id+"'>Parer avec " + arme.name + "</a></span>";
|
||||
}
|
||||
}
|
||||
}
|
||||
// TODO - Tir + Lancer
|
||||
|
||||
return defenseMsg;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static async chatListeners( html )
|
||||
{
|
||||
@ -386,6 +418,16 @@ export class RdDUtility {
|
||||
let defenderActor = game.actors.get(event.currentTarget.attributes['data-defenderid'].value );
|
||||
defenderActor.encaisserDommages( attackerActor);
|
||||
});
|
||||
|
||||
html.on("click", '#parer-button', event => {
|
||||
event.preventDefault();
|
||||
console.log("Parer button", event);
|
||||
let attackerActor = game.actors.get(event.currentTarget.attributes['data-attackerid'].value );
|
||||
let defenderActor = game.actors.get(event.currentTarget.attributes['data-defenderid'].value );
|
||||
let armeId = event.currentTarget.attributes['data-armeid'].value;
|
||||
defenderActor.parerAttaque( attackerActor, armeId);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user