This commit is contained in:
2022-01-21 10:57:09 +01:00
parent 35f2f4c815
commit d776c219a8
13 changed files with 94 additions and 331 deletions

View File

@ -143,7 +143,7 @@ export class VadentisActor extends Actor {
isSort: true
}
if (myRoll.results[0] > 1 && myRoll.total >= devotionSort.data.difficulty) {
if (myRoll.dice[0].results[0].result > 1 && myRoll.total >= devotionSort.data.difficulty) {
msgData.img = 'systems/foundryvtt-vadentis/images/icons/tchat_sort_réussi.webp';
msgData.msg = `${this.name} a réussi son ${name} et perd ${devotionSort.data.pe} Points d'Energie (lancer : ${formulaFull} => <strong>${myRoll.total} / ${devotionSort.data.difficulty}</strong>).`;
@ -155,7 +155,7 @@ export class VadentisActor extends Actor {
let newEnergie = this.data.data.stats.pointsenergie.value - devotionSort.data.pe;
await this.update( {'data.stats.pointsenergie.value': newEnergie });
if (myRoll.results[0] >= devotionSort.data.valuecritical ) { // Critique ?
if (myRoll.dice[0].results[0].result >= devotionSort.data.valuecritical ) { // Critique ?
msgData.img = 'systems/foundryvtt-vadentis/images/icons/tchat_réussite_critique.webp';
msgData.msg += "<br>C'est une <strong>réussite critique</strong> !";
msgData.msg += `<br><strong>Effet critique : </strong>${devotionSort.data.criticaleffect.replace(/<\/?[^>]+(>|$)/g, "")}`;
@ -165,7 +165,7 @@ export class VadentisActor extends Actor {
if ( devotionSort.data.damage != "") {
let formula = devotionSort.data.damage;
if (myRoll.results[0] >= devotionSort.data.valuecritical ) { // Critique ?
if (myRoll.dice[0].results[0].result >= devotionSort.data.valuecritical ) { // Critique ?
msgData.msg += `<br>Et provoque les dégats critiques suivants : [[/roll ${devotionSort.data.damagecritical}]]`;
formula = devotionSort.data.damagecritical;
} else {
@ -177,7 +177,7 @@ export class VadentisActor extends Actor {
}
} else {
msgData.img = 'systems/foundryvtt-vadentis/images/icons/tchat_sort_échoué.webp';
if (myRoll.results[0] == 1 ) { // Critique ?
if (myRoll.dice[0].results[0].result == 1 ) { // Critique ?
msgData.img = 'systems/foundryvtt-vadentis/images/icons/tchat_échec_critique.webp';
msgData.msg = `${this.name} a fait un <strong>échec critique</strong> à son lancer de ${name}`;
} else {
@ -393,11 +393,11 @@ export class VadentisActor extends Actor {
msg: `${formulaFull} => <strong>${myRoll.total}</strong>`
}
if (myRoll.results[0] == 1 ) { // Critique ?
if (myRoll.dice[0].results[0].result == 1 ) { // Critique ?
msgData.img = 'systems/foundryvtt-vadentis/images/icons/tchat_échec_critique.webp';
msgData.msg += `<br>C'est un <strong>échec critique</strong> !`;
}
if (myRoll.results[0] == 20 ) { // Critique ?
if (myRoll.dice[0].results[0].result == 20 ) { // Critique ?
msgData.img = 'systems/foundryvtt-vadentis/images/icons/tchat_réussite_critique.webp';
msgData.msg += `<br>C'est une <strong>réussite critique</strong> !`;
}
@ -486,7 +486,7 @@ export class VadentisActor extends Actor {
let target = VadentisUtility.getTarget();
if ( target ) {
let arme = this.data.items.find( item => (item.type == 'armecc' || item.type == 'tir') && item._id == armeId);
let arme = this.data.items.find( item => (item.type == 'armecc' || item.type == 'tir') && item.id == armeId);
if (arme) {
arme = duplicate(arme)
if ( arme.type == 'tir' && arme.data.munition <= 0 ) {
@ -494,8 +494,8 @@ export class VadentisActor extends Actor {
return;
}
let combatData = {
attackerActorId: this._id,
targetActorId: target.actor._id,
attackerActorId: this.id,
targetActorId: target.actor.id,
arme: duplicate(arme)
}
if (game.user.isGM) {

View File

@ -58,7 +58,8 @@ export class VadentisTokenHud {
} );
let combatIcon = html.find('.control-icon.combat');
if ( combatIcon[0].className.includes('active') ) {
//console.log("COMBAT ICON", combatIcon)
if ( combatIcon[0] && combatIcon[0].className.includes('active') ) {
VadentisTokenHud.addExtensionHud( app, html, tokenId);
}
}

View File

@ -119,13 +119,13 @@ export class VadentisUtility {
let formulaTouche = "1d20+"+attaque;
let formulaFull = attacker.buildTexteFormula( attacker.data.data.combat.attaque );
let myRoll = await this.processRoll(formulaTouche);
if (myRoll.results[0] > 1 && myRoll.total >= defense) { // Success !
if (myRoll.dice[0].results[0].result > 1 && myRoll.total >= defense) { // Success !
let degats = `normaux : ${combatData.arme.data.damage}`;
let formula = combatData.arme.data.damage.toLowerCase();
msgData.msg = `${attacker.name} a réussi son attaque sur ${defender.name} (${formulaFull} => ${myRoll.total} / ${defense}) !<br> Les dégâts sont ${degats}.`;
msgData.msg += tirMsg;
if ( myRoll.results[0] >= combatData.arme.data.valuecritical ) {
if ( myRoll.dice[0].results[0].result >= combatData.arme.data.valuecritical ) {
degats = `critiques : ${combatData.arme.data.criticaldamage}`;
formula = combatData.arme.data.criticaldamage.toLowerCase();
msgData.msg += `<br>C'est une <strong>réussite critique</strong> !`;
@ -138,7 +138,7 @@ export class VadentisUtility {
defender.applyDamage( degatsRoll.total );
} else { //Echec
msgData.img = 'systems/foundryvtt-vadentis/images/icons/tchat_attaque_échouée.webp';
if ( myRoll.results[0] == 1) {
if ( myRoll.dice[0].results[0].result == 1) {
msgData.msg = `${attacker.name} a fait un <strong>échec critique</strong> et a raté son attaque sur ${defender.name} (${myRoll.total} / ${defense}) !`;
} else {
msgData.msg = `${attacker.name} a raté son attaque sur ${defender.name} (${myRoll.total} / ${defense}) !`;