Merge pull request 'Version 12.0.21' (#722) from VincentVk/foundryvtt-reve-de-dragon:v11 into v11
All checks were successful
Release Creation / build (release) Successful in 2m8s
All checks were successful
Release Creation / build (release) Successful in 2m8s
Reviewed-on: #722
This commit is contained in:
commit
830cd1c200
@ -1,4 +1,11 @@
|
|||||||
# 12.0
|
# 12.0
|
||||||
|
## 12.0.21 - La nomination d'Astrobazzarh
|
||||||
|
- Les noms pour les messages dans le tchat sont maintenant ceux des tokens plutôt que ceux des acteurs
|
||||||
|
- Fix: le choix des effets dans les options s'affiche correctement
|
||||||
|
|
||||||
|
## 12.0.20 - Le tableau d'Astrobazzarh
|
||||||
|
- Ecran d'accueil officiel Scriptarium
|
||||||
|
|
||||||
## 12.0.19 - La témérité d'Astrobazzarh
|
## 12.0.19 - La témérité d'Astrobazzarh
|
||||||
- Fix
|
- Fix
|
||||||
- les défenses des créatures sont correctement filtrées
|
- les défenses des créatures sont correctement filtrées
|
||||||
|
@ -181,7 +181,7 @@ export class RdDActor extends RdDBaseActorSang {
|
|||||||
whisper: ChatUtility.getOwners(this),
|
whisper: ChatUtility.getOwners(this),
|
||||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-potionenchantee-chateaudormant.html`, {
|
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-potionenchantee-chateaudormant.html`, {
|
||||||
pr: nouveauReve,
|
pr: nouveauReve,
|
||||||
alias: this.name,
|
alias: this.getAlias(),
|
||||||
potionName: it.name,
|
potionName: it.name,
|
||||||
potionImg: it.img
|
potionImg: it.img
|
||||||
})
|
})
|
||||||
@ -1341,7 +1341,7 @@ export class RdDActor extends RdDBaseActorSang {
|
|||||||
const etat = this.getEtatGeneral({ ethylisme: true });
|
const etat = this.getEtatGeneral({ ethylisme: true });
|
||||||
const nbDoses = Number(this.system.compteurs.ethylisme.nb_doses || 0);
|
const nbDoses = Number(this.system.compteurs.ethylisme.nb_doses || 0);
|
||||||
const ethylismeData = {
|
const ethylismeData = {
|
||||||
alias: this.name,
|
alias: this.getAlias(),
|
||||||
actor: this,
|
actor: this,
|
||||||
vie: this.system.sante.vie.max,
|
vie: this.system.sante.vie.max,
|
||||||
alcool: alcool,
|
alcool: alcool,
|
||||||
@ -1426,7 +1426,7 @@ export class RdDActor extends RdDBaseActorSang {
|
|||||||
const perteDissolution = Math.max(0, Math.min(dissolution, conversion));
|
const perteDissolution = Math.max(0, Math.min(dissolution, conversion));
|
||||||
|
|
||||||
let stressRollData = {
|
let stressRollData = {
|
||||||
alias: this.name,
|
alias: this.getAlias(),
|
||||||
selectedCarac: this.system.carac.reve,
|
selectedCarac: this.system.carac.reve,
|
||||||
rolled: stressRoll,
|
rolled: stressRoll,
|
||||||
stress: fromStress,
|
stress: fromStress,
|
||||||
@ -1517,7 +1517,7 @@ export class RdDActor extends RdDBaseActorSang {
|
|||||||
carac.value = niveauSuivant;
|
carac.value = niveauSuivant;
|
||||||
|
|
||||||
let checkXp = {
|
let checkXp = {
|
||||||
alias: this.name,
|
alias: this.getAlias(),
|
||||||
carac: caracName,
|
carac: caracName,
|
||||||
value: niveauSuivant,
|
value: niveauSuivant,
|
||||||
xp: carac.xp
|
xp: carac.xp
|
||||||
@ -1547,7 +1547,7 @@ export class RdDActor extends RdDBaseActorSang {
|
|||||||
newCompData.system.niveau += 1;
|
newCompData.system.niveau += 1;
|
||||||
newCompData.system.xp = newXP;
|
newCompData.system.xp = newXP;
|
||||||
let checkXp = {
|
let checkXp = {
|
||||||
alias: this.name,
|
alias: this.getAlias(),
|
||||||
competence: newCompData.name,
|
competence: newCompData.name,
|
||||||
niveau: newCompData.system.niveau,
|
niveau: newCompData.system.niveau,
|
||||||
xp: newCompData.system.xp,
|
xp: newCompData.system.xp,
|
||||||
@ -1784,7 +1784,7 @@ export class RdDActor extends RdDBaseActorSang {
|
|||||||
}
|
}
|
||||||
const competence = this.getCompetence(compName);
|
const competence = this.getCompetence(compName);
|
||||||
let rollData = {
|
let rollData = {
|
||||||
alias: this.name,
|
alias: this.getAlias(),
|
||||||
caracValue: Number(carac.value),
|
caracValue: Number(carac.value),
|
||||||
selectedCarac: carac,
|
selectedCarac: carac,
|
||||||
competence: competence,
|
competence: competence,
|
||||||
@ -1857,7 +1857,7 @@ export class RdDActor extends RdDBaseActorSang {
|
|||||||
label: 'Jet ' + Grammar.apostrophe('de', competence.name),
|
label: 'Jet ' + Grammar.apostrophe('de', competence.name),
|
||||||
template: 'systems/foundryvtt-reve-de-dragon/templates/dialog-roll-competence.html',
|
template: 'systems/foundryvtt-reve-de-dragon/templates/dialog-roll-competence.html',
|
||||||
rollData: {
|
rollData: {
|
||||||
alias: this.name,
|
alias: this.getAlias(),
|
||||||
carac: this.system.carac,
|
carac: this.system.carac,
|
||||||
selectedCarac: this.getCaracByName(caracName),
|
selectedCarac: this.getCaracByName(caracName),
|
||||||
selectedCaracName: caracName,
|
selectedCaracName: caracName,
|
||||||
@ -2930,7 +2930,7 @@ export class RdDActor extends RdDBaseActorSang {
|
|||||||
|
|
||||||
let newQuantite = herbeData.system.quantite - herbeData.nbBrins;
|
let newQuantite = herbeData.system.quantite - herbeData.nbBrins;
|
||||||
let messageData = {
|
let messageData = {
|
||||||
alias: this.name,
|
alias: this.getAlias(),
|
||||||
nbBrinsReste: newQuantite,
|
nbBrinsReste: newQuantite,
|
||||||
potion: newPotion,
|
potion: newPotion,
|
||||||
herbe: herbeData
|
herbe: herbeData
|
||||||
|
@ -117,7 +117,7 @@ export class RdDBaseActorReve extends RdDBaseActor {
|
|||||||
for (let effect of this.getEffects()) {
|
for (let effect of this.getEffects()) {
|
||||||
if (effect.duration.type !== 'none' && (effect.duration.remaining <= 0 || options.terminer)) {
|
if (effect.duration.type !== 'none' && (effect.duration.remaining <= 0 || options.terminer)) {
|
||||||
await effect.delete();
|
await effect.delete();
|
||||||
ChatMessage.create({ content: `${this.name} n'est plus ${Misc.lowerFirst(game.i18n.localize(effect.system.label))} !` });
|
ChatMessage.create({ content: `${this.getAlias()} n'est plus ${Misc.lowerFirst(game.i18n.localize(effect.system.label))} !` });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -288,7 +288,7 @@ export class RdDBaseActorReve extends RdDBaseActor {
|
|||||||
|
|
||||||
await this.openRollDialog({
|
await this.openRollDialog({
|
||||||
name: `jet-${this.id}`,
|
name: `jet-${this.id}`,
|
||||||
label: `Jet de ${this.name}`,
|
label: `Jet de ${this.getAlias()}`,
|
||||||
template: 'systems/foundryvtt-reve-de-dragon/templates/dialog-roll.html',
|
template: 'systems/foundryvtt-reve-de-dragon/templates/dialog-roll.html',
|
||||||
rollData: {
|
rollData: {
|
||||||
carac: carac,
|
carac: carac,
|
||||||
@ -463,7 +463,7 @@ export class RdDBaseActorReve extends RdDBaseActor {
|
|||||||
|
|
||||||
async $afficherEncaissement(encaissement, show, defenderToken) {
|
async $afficherEncaissement(encaissement, show, defenderToken) {
|
||||||
foundry.utils.mergeObject(encaissement, {
|
foundry.utils.mergeObject(encaissement, {
|
||||||
alias: defenderToken?.name ?? this.name,
|
alias: defenderToken?.name ?? this.getAlias(),
|
||||||
hasPlayerOwner: this.hasPlayerOwner,
|
hasPlayerOwner: this.hasPlayerOwner,
|
||||||
show: show ?? {}
|
show: show ?? {}
|
||||||
}, { overwrite: false });
|
}, { overwrite: false });
|
||||||
@ -496,7 +496,7 @@ export class RdDBaseActorReve extends RdDBaseActor {
|
|||||||
}
|
}
|
||||||
const rolled = await RdDResolutionTable.roll(this.getReveActuel(), - Number(entite.system.carac.niveau.value));
|
const rolled = await RdDResolutionTable.roll(this.getReveActuel(), - Number(entite.system.carac.niveau.value));
|
||||||
const rollData = {
|
const rollData = {
|
||||||
alias: this.name,
|
alias: this.getAlias(),
|
||||||
rolled: rolled,
|
rolled: rolled,
|
||||||
entite: entite.name,
|
entite: entite.name,
|
||||||
selectedCarac: this.system.carac.reve
|
selectedCarac: this.system.carac.reve
|
||||||
@ -516,7 +516,7 @@ export class RdDBaseActorReve extends RdDBaseActor {
|
|||||||
isEntiteAccordee(attacker) { return true }
|
isEntiteAccordee(attacker) { return true }
|
||||||
|
|
||||||
async setEntiteReveAccordee(actor) {
|
async setEntiteReveAccordee(actor) {
|
||||||
ui.notifications.error("Impossible de s'accorder à " + this.name + ": ce n'est pas une entité incarnée");
|
ui.notifications.error("Impossible de s'accorder à " + this.getAlias() + ": ce n'est pas une entité incarnée");
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -191,7 +191,7 @@ export class RdDBaseActorSang extends RdDBaseActorReve {
|
|||||||
encaissement.mort = true;
|
encaissement.mort = true;
|
||||||
ChatMessage.create({
|
ChatMessage.create({
|
||||||
content: `<img class="chat-icon" src="icons/svg/skull.svg" data-tooltip="charge" />
|
content: `<img class="chat-icon" src="icons/svg/skull.svg" data-tooltip="charge" />
|
||||||
<strong>${this.name} vient de succomber à une seconde blessure critique ! Que les Dragons gardent son Archétype en paix !</strong>`
|
<strong>${this.getAlias()} vient de succomber à une seconde blessure critique ! Que les Dragons gardent son Archétype en paix !</strong>`
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
return blessure;
|
return blessure;
|
||||||
@ -218,7 +218,7 @@ export class RdDBaseActorSang extends RdDBaseActorReve {
|
|||||||
async jetDeVie() {
|
async jetDeVie() {
|
||||||
if (this.isDead()) {
|
if (this.isDead()) {
|
||||||
ChatMessage.create({
|
ChatMessage.create({
|
||||||
content: `Jet de Vie: ${this.name} est déjà mort, ce n'est pas la peine d'en rajouter !!!!!`,
|
content: `Jet de Vie: ${this.getAlias()} est déjà mort, ce n'est pas la peine d'en rajouter !!!!!`,
|
||||||
whisper: ChatUtility.getOwners(this)
|
whisper: ChatUtility.getOwners(this)
|
||||||
})
|
})
|
||||||
return
|
return
|
||||||
@ -242,7 +242,7 @@ export class RdDBaseActorSang extends RdDBaseActorReve {
|
|||||||
await this.santeIncDec("vie", -perte);
|
await this.santeIncDec("vie", -perte);
|
||||||
}
|
}
|
||||||
if (this.isDead()) {
|
if (this.isDead()) {
|
||||||
msgText += `<br><strong>${this.name} est mort !!!!</strong>`;
|
msgText += `<br><strong>${this.getAlias()} est mort !!!!</strong>`;
|
||||||
}
|
}
|
||||||
else if (prochainJet > 0) {
|
else if (prochainJet > 0) {
|
||||||
msgText += `<br>Prochain jet de vie dans ${prochainJet} ${isCritique ? 'round' : 'minute'}${prochainJet > 1 ? 's' : ''} ${isCritique ? '(état critique)' : '(état grave)'}`
|
msgText += `<br>Prochain jet de vie dans ${prochainJet} ${isCritique ? 'round' : 'minute'}${prochainJet > 1 ? 's' : ''} ${isCritique ? '(état critique)' : '(état grave)'}`
|
||||||
@ -273,7 +273,7 @@ export class RdDBaseActorSang extends RdDBaseActorReve {
|
|||||||
|
|
||||||
async setSonne(sonne = true) {
|
async setSonne(sonne = true) {
|
||||||
if (!game.combat && sonne) {
|
if (!game.combat && sonne) {
|
||||||
ui.notifications.info(`${this.name} est hors combat, il ne reste donc pas sonné`);
|
ui.notifications.info(`${this.getAlias()} est hors combat, il ne reste donc pas sonné`);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
await this.setEffect(STATUSES.StatusStunned, sonne)
|
await this.setEffect(STATUSES.StatusStunned, sonne)
|
||||||
|
@ -78,6 +78,13 @@ export class RdDBaseActor extends Actor {
|
|||||||
return game.actors.get(actorId)
|
return game.actors.get(actorId)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getAlias() {
|
||||||
|
if (this.token?.name != null && this.token != this.prototypeToken) {
|
||||||
|
return this.token.name
|
||||||
|
}
|
||||||
|
return this.name
|
||||||
|
}
|
||||||
|
|
||||||
isPersonnageJoueur() { return false }
|
isPersonnageJoueur() { return false }
|
||||||
|
|
||||||
static extractActorMin = (actor) => { return { id: actor?.id, type: actor?.type, name: actor?.name, img: actor?.img }; };
|
static extractActorMin = (actor) => { return { id: actor?.id, type: actor?.type, name: actor?.name, img: actor?.img }; };
|
||||||
@ -367,7 +374,7 @@ export class RdDBaseActor extends Actor {
|
|||||||
chatAchatItem.quantiteTotal = quantite;
|
chatAchatItem.quantiteTotal = quantite;
|
||||||
ChatMessage.create({
|
ChatMessage.create({
|
||||||
user: achat.userId,
|
user: achat.userId,
|
||||||
speaker: { alias: (acheteur ?? vendeur).name },
|
speaker: { alias: (acheteur ?? vendeur).getAlias() },
|
||||||
whisper: ChatUtility.getOwners(this),
|
whisper: ChatUtility.getOwners(this),
|
||||||
content: await renderTemplate('systems/foundryvtt-reve-de-dragon/templates/chat-achat-item.html', chatAchatItem)
|
content: await renderTemplate('systems/foundryvtt-reve-de-dragon/templates/chat-achat-item.html', chatAchatItem)
|
||||||
});
|
});
|
||||||
@ -683,7 +690,7 @@ export class RdDBaseActor extends Actor {
|
|||||||
type: this.type,
|
type: this.type,
|
||||||
img: this.img,
|
img: this.img,
|
||||||
pack: this.pack,
|
pack: this.pack,
|
||||||
name: this.name,
|
name: this.getAlias(),
|
||||||
system: { description: this.system.description }
|
system: { description: this.system.description }
|
||||||
}
|
}
|
||||||
renderTemplate('systems/foundryvtt-reve-de-dragon/templates/post-actor.html', chatData)
|
renderTemplate('systems/foundryvtt-reve-de-dragon/templates/post-actor.html', chatData)
|
||||||
@ -691,10 +698,10 @@ export class RdDBaseActor extends Actor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
actionImpossible(action) {
|
actionImpossible(action) {
|
||||||
ui.notifications.info(`${this.name} ne peut pas faire cette action: ${action}`)
|
ui.notifications.info(`${this.getAlias()} ne peut pas faire cette action: ${action}`)
|
||||||
|
|
||||||
}
|
}
|
||||||
async roll() { this.actionImpossible("jet de caractéristiques") }
|
|
||||||
async jetEthylisme() { this.actionImpossible("jet d'éthylisme") }
|
async jetEthylisme() { this.actionImpossible("jet d'éthylisme") }
|
||||||
async rollAppelChance() { this.actionImpossible("appel à la chance") }
|
async rollAppelChance() { this.actionImpossible("appel à la chance") }
|
||||||
async jetDeMoral() { this.actionImpossible("jet de moral") }
|
async jetDeMoral() { this.actionImpossible("jet de moral") }
|
||||||
|
@ -73,7 +73,7 @@ export class RdDCommerceSheet extends RdDBaseActorSheet {
|
|||||||
}
|
}
|
||||||
const disponible = this.actor.getQuantiteDisponible(item)
|
const disponible = this.actor.getQuantiteDisponible(item)
|
||||||
if (disponible == 0) {
|
if (disponible == 0) {
|
||||||
ui.notifications.warn(`${this.name} n'a plus de ${item.name} en vente`);
|
ui.notifications.warn(`${this.getAlias()} n'a plus de ${item.name} en vente`);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -19,7 +19,7 @@ const PATHS = [
|
|||||||
|
|
||||||
const RANDOM_VALUES = {
|
const RANDOM_VALUES = {
|
||||||
'system.sexe': { 'masculin': 1, 'féminin': 1 },
|
'system.sexe': { 'masculin': 1, 'féminin': 1 },
|
||||||
'system.main': { 'droitier': 51, 'gaucher': 15, 'ambidectre': 6 },
|
'system.main': { 'droitier': 51, 'gaucher': 15, 'ambidextre': 6 },
|
||||||
'system.cheveux': { 'noirs': 2, 'bruns': 5, 'châtains clair': 5, 'blonds': 4, 'blonds très clair': 1, 'roux carotte': 1, 'roux cuivré': 3 },
|
'system.cheveux': { 'noirs': 2, 'bruns': 5, 'châtains clair': 5, 'blonds': 4, 'blonds très clair': 1, 'roux carotte': 1, 'roux cuivré': 3 },
|
||||||
'system.yeux': { 'noirs': 2, 'noisettes': 3, 'bruns vert': 4, 'verts': 3, 'bleus clair': 3, 'bleus gris': 2, 'gris': 1, 'mauves': 1, 'indigos': 1 },
|
'system.yeux': { 'noirs': 2, 'noisettes': 3, 'bruns vert': 4, 'verts': 3, 'bleus clair': 3, 'bleus gris': 2, 'gris': 1, 'mauves': 1, 'indigos': 1 },
|
||||||
}
|
}
|
||||||
|
@ -51,7 +51,7 @@ export class DialogCreateSigneDraconique extends Dialog {
|
|||||||
whisper: ChatUtility.getOwners(actor),
|
whisper: ChatUtility.getOwners(actor),
|
||||||
content: await renderTemplate("systems/foundryvtt-reve-de-dragon/templates/chat-signe-draconique-actor.html", {
|
content: await renderTemplate("systems/foundryvtt-reve-de-dragon/templates/chat-signe-draconique-actor.html", {
|
||||||
signe: signe,
|
signe: signe,
|
||||||
alias: actor.name
|
alias: actor.getAlias()
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -133,10 +133,10 @@ export class RdDCombatManager extends Combat {
|
|||||||
scene: canvas.scene._id,
|
scene: canvas.scene._id,
|
||||||
actor: combatant.actor?._id,
|
actor: combatant.actor?._id,
|
||||||
token: combatant.token._id,
|
token: combatant.token._id,
|
||||||
alias: combatant.token.name,
|
alias: combatant.token?.name,
|
||||||
sound: CONFIG.sounds.dice,
|
sound: CONFIG.sounds.dice,
|
||||||
},
|
},
|
||||||
flavor: `${combatant.token.name} a fait son jet d'Initiative (${messageOptions.info})<br>`
|
flavor: `${combatant.token?.name} a fait son jet d'Initiative (${messageOptions.info})<br>`
|
||||||
},
|
},
|
||||||
messageOptions);
|
messageOptions);
|
||||||
roll.toMessage(messageData, { rollMode, create: true });
|
roll.toMessage(messageData, { rollMode, create: true });
|
||||||
@ -252,7 +252,7 @@ export class RdDCombatManager extends Combat {
|
|||||||
if (action && action.type == "arme") {
|
if (action && action.type == "arme") {
|
||||||
for (let initData of premierRoundInit) {
|
for (let initData of premierRoundInit) {
|
||||||
if (Grammar.toLowerCaseNoAccentNoSpace(action.system.initpremierround).includes(initData.pattern)) {
|
if (Grammar.toLowerCaseNoAccentNoSpace(action.system.initpremierround).includes(initData.pattern)) {
|
||||||
let msg = `<h4>L'initiative de ${combatant.actor.name} a été modifiée !</h4>
|
let msg = `<h4>L'initiative de ${combatant.actor.getAlias()} a été modifiée !</h4>
|
||||||
<hr>
|
<hr>
|
||||||
<div>
|
<div>
|
||||||
Etant donné son ${action.name}, son initative pour ce premier round est désormais de ${initData.init}.
|
Etant donné son ${action.name}, son initative pour ce premier round est désormais de ${initData.init}.
|
||||||
@ -754,7 +754,7 @@ export class RdDCombat {
|
|||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
_prepareAttaque(competence, arme) {
|
_prepareAttaque(competence, arme) {
|
||||||
let rollData = {
|
let rollData = {
|
||||||
alias: this.attackerToken.name,
|
alias: this.attacker?.getAlias(),
|
||||||
passeArme: foundry.utils.randomID(16),
|
passeArme: foundry.utils.randomID(16),
|
||||||
mortalite: arme?.system.mortalite,
|
mortalite: arme?.system.mortalite,
|
||||||
competence: competence,
|
competence: competence,
|
||||||
@ -803,10 +803,10 @@ export class RdDCombat {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const choixParticuliere = await ChatMessage.create({
|
const choixParticuliere = await ChatMessage.create({
|
||||||
alias: this.attacker.name,
|
alias: this.attacker.getAlias(),
|
||||||
whisper: ChatUtility.getOwners(this.attacker),
|
whisper: ChatUtility.getOwners(this.attacker),
|
||||||
content: await renderTemplate('systems/foundryvtt-reve-de-dragon/templates/chat-demande-attaque-particuliere.html', {
|
content: await renderTemplate('systems/foundryvtt-reve-de-dragon/templates/chat-demande-attaque-particuliere.html', {
|
||||||
alias: this.attackerToken.name,
|
alias: this.attacker.getAlias(),
|
||||||
attackerId: this.attackerId,
|
attackerId: this.attackerId,
|
||||||
attackerToken: this.attackerToken,
|
attackerToken: this.attackerToken,
|
||||||
defenderToken: this.defenderToken,
|
defenderToken: this.defenderToken,
|
||||||
@ -826,7 +826,7 @@ export class RdDCombat {
|
|||||||
attackerRoll.dmg = RdDBonus.dmg(attackerRoll, this.attacker, this.defender.isEntite());
|
attackerRoll.dmg = RdDBonus.dmg(attackerRoll, this.attacker, this.defender.isEntite());
|
||||||
let defenderRoll = { attackerRoll: attackerRoll, passeArme: attackerRoll.passeArme, show: {} }
|
let defenderRoll = { attackerRoll: attackerRoll, passeArme: attackerRoll.passeArme, show: {} }
|
||||||
attackerRoll.show = {
|
attackerRoll.show = {
|
||||||
cible: this.defenderToken?.name ?? 'la cible',
|
cible: this.defender?.getAlias() ?? 'la cible',
|
||||||
isRecul: (attackerRoll.particuliere == 'force' || attackerRoll.tactique == 'charge')
|
isRecul: (attackerRoll.particuliere == 'force' || attackerRoll.tactique == 'charge')
|
||||||
}
|
}
|
||||||
await RdDResolutionTable.displayRollData(attackerRoll, this.attacker, 'chat-resultat-attaque.html');
|
await RdDResolutionTable.displayRollData(attackerRoll, this.attacker, 'chat-resultat-attaque.html');
|
||||||
@ -892,7 +892,7 @@ export class RdDCombat {
|
|||||||
const choixDefense = await ChatMessage.create({
|
const choixDefense = await ChatMessage.create({
|
||||||
// message privé: du défenseur à lui même (et aux GMs)
|
// message privé: du défenseur à lui même (et aux GMs)
|
||||||
speaker: ChatMessage.getSpeaker(this.defender, canvas.tokens.get(this.defenderTokenId)),
|
speaker: ChatMessage.getSpeaker(this.defender, canvas.tokens.get(this.defenderTokenId)),
|
||||||
alias: this.attackerToken.name,
|
alias: this.attacker?.getAlias(),
|
||||||
whisper: ChatUtility.getOwners(this.defender),
|
whisper: ChatUtility.getOwners(this.defender),
|
||||||
content: await renderTemplate('systems/foundryvtt-reve-de-dragon/templates/chat-demande-defense.html', paramDemandeDefense),
|
content: await renderTemplate('systems/foundryvtt-reve-de-dragon/templates/chat-demande-defense.html', paramDemandeDefense),
|
||||||
});
|
});
|
||||||
@ -1015,7 +1015,7 @@ export class RdDCombat {
|
|||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
_prepareParade(attackerRoll, armeParade, competenceParade) {
|
_prepareParade(attackerRoll, armeParade, competenceParade) {
|
||||||
let defenderRoll = {
|
let defenderRoll = {
|
||||||
alias: this.defenderToken?.name,
|
alias: this.defender?.getAlias(),
|
||||||
passeArme: attackerRoll.passeArme,
|
passeArme: attackerRoll.passeArme,
|
||||||
diffLibre: attackerRoll.diffLibre,
|
diffLibre: attackerRoll.diffLibre,
|
||||||
attackerToken: this.attackerToken,
|
attackerToken: this.attackerToken,
|
||||||
@ -1072,7 +1072,7 @@ export class RdDCombat {
|
|||||||
async esquive(attackerRoll, compId, compName) {
|
async esquive(attackerRoll, compId, compName) {
|
||||||
const esquive = this.defender.getCompetence(compId) ?? this.defender.getCompetence(compName)
|
const esquive = this.defender.getCompetence(compId) ?? this.defender.getCompetence(compName)
|
||||||
if (esquive == undefined) {
|
if (esquive == undefined) {
|
||||||
ui.notifications.error(this.defender.name + " n'a pas de compétence " + compName);
|
ui.notifications.error(this.defender.getAlias() + " n'a pas de compétence " + compName);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
console.log("RdDCombat.esquive >>>", attackerRoll, esquive);
|
console.log("RdDCombat.esquive >>>", attackerRoll, esquive);
|
||||||
@ -1099,7 +1099,7 @@ export class RdDCombat {
|
|||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
_prepareEsquive(attackerRoll, competence) {
|
_prepareEsquive(attackerRoll, competence) {
|
||||||
let rollData = {
|
let rollData = {
|
||||||
alias: this.defenderToken?.name,
|
alias: this.defender.getAlias(),
|
||||||
passeArme: attackerRoll.passeArme,
|
passeArme: attackerRoll.passeArme,
|
||||||
diffLibre: attackerRoll.diffLibre,
|
diffLibre: attackerRoll.diffLibre,
|
||||||
attackerToken: this.attackerToken,
|
attackerToken: this.attackerToken,
|
||||||
@ -1278,9 +1278,10 @@ export class RdDCombat {
|
|||||||
if (!actor?.isActorCombat()) {
|
if (!actor?.isActorCombat()) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
const alias = token?.name ?? actor.getAlias();
|
||||||
const formData = {
|
const formData = {
|
||||||
combatId: combat._id,
|
combatId: combat._id,
|
||||||
alias: token.name ?? actor.name,
|
alias: alias,
|
||||||
etatGeneral: actor.getEtatGeneral(),
|
etatGeneral: actor.getEtatGeneral(),
|
||||||
isSonne: actor.isSonne(),
|
isSonne: actor.isSonne(),
|
||||||
blessuresStatus: actor.computeResumeBlessure(),
|
blessuresStatus: actor.computeResumeBlessure(),
|
||||||
@ -1293,12 +1294,12 @@ export class RdDCombat {
|
|||||||
}
|
}
|
||||||
await ChatMessage.create({
|
await ChatMessage.create({
|
||||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-actor-turn-acteur.hbs`, formData),
|
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-actor-turn-acteur.hbs`, formData),
|
||||||
alias: token.name ?? actor.name
|
alias: alias
|
||||||
})
|
})
|
||||||
await ChatMessage.create({
|
await ChatMessage.create({
|
||||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-actor-turn-sante.hbs`, formData),
|
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-actor-turn-sante.hbs`, formData),
|
||||||
whisper: ChatUtility.getOwners(actor),
|
whisper: ChatUtility.getOwners(actor),
|
||||||
alias: token.name ?? actor.name
|
alias: alias
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -32,7 +32,7 @@ export class RdDRoll extends Dialog {
|
|||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
static _setDefaultOptions(actor, rollData) {
|
static _setDefaultOptions(actor, rollData) {
|
||||||
let defaultRollData = {
|
let defaultRollData = {
|
||||||
alias: actor.name,
|
alias: actor.getAlias(),
|
||||||
ajustementsConditions: CONFIG.RDD.ajustementsConditions,
|
ajustementsConditions: CONFIG.RDD.ajustementsConditions,
|
||||||
difficultesLibres: CONFIG.RDD.difficultesLibres,
|
difficultesLibres: CONFIG.RDD.difficultesLibres,
|
||||||
etat: actor.getEtatGeneral(),
|
etat: actor.getEtatGeneral(),
|
||||||
@ -345,24 +345,25 @@ export class RdDRoll extends Dialog {
|
|||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
_getTitle(rollData) {
|
_getTitle(rollData) {
|
||||||
|
const alias = rollData.alias
|
||||||
const carac = rollData.selectedCarac.label;
|
const carac = rollData.selectedCarac.label;
|
||||||
if (!rollData.competence) {
|
if (!rollData.competence) {
|
||||||
return carac;
|
return `${alias}: ${carac}`
|
||||||
}
|
}
|
||||||
const compName = rollData.competence.name;
|
const compName = rollData.competence.name;
|
||||||
const niveau = Misc.toSignedString(rollData.competence.system.niveau)
|
const niveau = Misc.toSignedString(rollData.competence.system.niveau)
|
||||||
if (compName == carac) {
|
if (compName == carac) {
|
||||||
// cas des créatures
|
// cas des créatures
|
||||||
return `${carac} Niveau ${niveau}`
|
return `${alias}: ${carac} Niveau ${niveau}`
|
||||||
}
|
}
|
||||||
if (rollData.draconicList && rollData.selectedSort) {
|
if (rollData.draconicList && rollData.selectedSort) {
|
||||||
// cas de lancer de sort
|
// cas de lancer de sort
|
||||||
return `${rollData.competence.name} Niveau ${niveau} ${rollData.selectedSort.name}`
|
return `${alias}: ${rollData.competence.name} Niveau ${niveau} ${rollData.selectedSort.name}`
|
||||||
}
|
}
|
||||||
if (rollData.arme && rollData.arme.name != compName) {
|
if (rollData.arme && rollData.arme.name != compName) {
|
||||||
// ajouter l'arme au titre si son nom n'est pas la compétence
|
// ajouter l'arme au titre si son nom n'est pas la compétence
|
||||||
return `${carac} / ${compName} (${rollData.arme.name}) Niveau ${niveau}`
|
return `${alias}: ${carac} / ${compName} (${rollData.arme.name}) Niveau ${niveau}`
|
||||||
}
|
}
|
||||||
return `${carac} / ${compName} Niveau ${niveau}`
|
return `${alias}: ${carac} / ${compName} Niveau ${niveau}`
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
import { Grammar } from "./grammar.js";
|
|
||||||
import { CompendiumTable, CompendiumTableHelpers, SystemCompendiums } from "./settings/system-compendiums.js";
|
import { CompendiumTable, CompendiumTableHelpers, SystemCompendiums } from "./settings/system-compendiums.js";
|
||||||
|
|
||||||
export class RdDRollTables {
|
export class RdDRollTables {
|
||||||
|
@ -460,7 +460,7 @@ export class RdDTMRDialog extends Dialog {
|
|||||||
|
|
||||||
let rencontreData = {
|
let rencontreData = {
|
||||||
actor: this.actor,
|
actor: this.actor,
|
||||||
alias: this.actor.name,
|
alias: this.actor.getAlias(),
|
||||||
reveDepart: this.actor.getReveActuel(),
|
reveDepart: this.actor.getReveActuel(),
|
||||||
competence: this.actor.getBestDraconic(),
|
competence: this.actor.getBestDraconic(),
|
||||||
rencontre: this.currentRencontre,
|
rencontre: this.currentRencontre,
|
||||||
@ -641,7 +641,7 @@ export class RdDTMRDialog extends Dialog {
|
|||||||
// simuler une rencontre
|
// simuler une rencontre
|
||||||
let rencontreData = {
|
let rencontreData = {
|
||||||
actor: this.actor,
|
actor: this.actor,
|
||||||
alias: this.actor.name,
|
alias: this.actor.getAlias(),
|
||||||
reveDepart: this.actor.getReveActuel(),
|
reveDepart: this.actor.getReveActuel(),
|
||||||
competence: this.actor.getBestDraconic(),
|
competence: this.actor.getBestDraconic(),
|
||||||
rencontre: this.currentRencontre,
|
rencontre: this.currentRencontre,
|
||||||
@ -1098,7 +1098,10 @@ export class RdDTMRDialog extends Dialog {
|
|||||||
if (!this.viewOnly && this.actor.isResonanceSigneDraconique(coord)) {
|
if (!this.viewOnly && this.actor.isResonanceSigneDraconique(coord)) {
|
||||||
ChatMessage.create({
|
ChatMessage.create({
|
||||||
whisper: ChatUtility.getOwners(this.actor),
|
whisper: ChatUtility.getOwners(this.actor),
|
||||||
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-signe-draconique-resonance.html`, { alias: this.actor.name, typeTMR: TMRUtility.getTMRType(coord) })
|
content: await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-signe-draconique-resonance.html`, {
|
||||||
|
alias: this.actor.getAlias(),
|
||||||
|
typeTMR: TMRUtility.getTMRType(coord)
|
||||||
|
})
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -15,17 +15,17 @@ export const STATUSES = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const rddStatusEffects = [
|
const rddStatusEffects = [
|
||||||
{ rdd: true, id: STATUSES.StatusStunned, label: 'EFFECT.StatusStunned', icon: 'icons/svg/stoned.svg', "duration.rounds": 1 },
|
{ rdd: true, id: STATUSES.StatusStunned, name: 'EFFECT.StatusStunned', img: 'icons/svg/stoned.svg', "duration.rounds": 1 },
|
||||||
{ rdd: true, id: STATUSES.StatusBleeding, label: 'EFFECT.StatusBleeding', icon: 'icons/svg/blood.svg' },
|
{ rdd: true, id: STATUSES.StatusBleeding, name: 'EFFECT.StatusBleeding', img: 'icons/svg/blood.svg' },
|
||||||
{ rdd: true, id: STATUSES.StatusProne, label: 'EFFECT.StatusProne', icon: 'icons/svg/falling.svg' },
|
{ rdd: true, id: STATUSES.StatusProne, name: 'EFFECT.StatusProne', img: 'icons/svg/falling.svg' },
|
||||||
{ rdd: true, id: STATUSES.StatusGrappling, tint: '#33cc33', label: 'EFFECT.StatusGrappling', icon: 'systems/foundryvtt-reve-de-dragon/icons/empoignade.webp' },
|
{ rdd: true, id: STATUSES.StatusGrappling, tint: '#33cc33', name: 'EFFECT.StatusGrappling', img: 'systems/foundryvtt-reve-de-dragon/icons/empoignade.webp' },
|
||||||
{ rdd: true, id: STATUSES.StatusGrappled, tint: '#ff9900', label: 'EFFECT.StatusGrappled', icon: 'systems/foundryvtt-reve-de-dragon/icons/empoignade.webp' },
|
{ rdd: true, id: STATUSES.StatusGrappled, tint: '#ff9900', name: 'EFFECT.StatusGrappled', img: 'systems/foundryvtt-reve-de-dragon/icons/empoignade.webp' },
|
||||||
{ rdd: true, id: STATUSES.StatusRestrained, label: 'EFFECT.StatusRestrained', icon: 'icons/svg/net.svg' },
|
{ rdd: true, id: STATUSES.StatusRestrained, name: 'EFFECT.StatusRestrained', img: 'icons/svg/net.svg' },
|
||||||
{ rdd: true, id: STATUSES.StatusUnconscious, label: 'EFFECT.StatusUnconscious', icon: 'icons/svg/unconscious.svg' },
|
{ rdd: true, id: STATUSES.StatusUnconscious, name: 'EFFECT.StatusUnconscious', img: 'icons/svg/unconscious.svg' },
|
||||||
{ rdd: true, id: STATUSES.StatusBlind, label: 'EFFECT.StatusBlind', icon: 'icons/svg/blind.svg' },
|
{ rdd: true, id: STATUSES.StatusBlind, name: 'EFFECT.StatusBlind', img: 'icons/svg/blind.svg' },
|
||||||
{ rdd: true, id: STATUSES.StatusComma, label: 'EFFECT.StatusComma', icon: 'icons/svg/skull.svg' },
|
{ rdd: true, id: STATUSES.StatusComma, name: 'EFFECT.StatusComma', img: 'icons/svg/skull.svg' },
|
||||||
{ rdd: true, id: STATUSES.StatusDead, label: 'EFFECT.StatusDead', icon: 'icons/svg/skull.svg' },
|
{ rdd: true, id: STATUSES.StatusDead, name: 'EFFECT.StatusDead', img: 'icons/svg/skull.svg' },
|
||||||
{ rdd: true, id: STATUSES.StatusDemiReve, label: 'EFFECT.StatusDemiReve', icon: 'systems/foundryvtt-reve-de-dragon/icons/heures/hd12.svg' }
|
{ rdd: true, id: STATUSES.StatusDemiReve, name: 'EFFECT.StatusDemiReve', img: 'systems/foundryvtt-reve-de-dragon/icons/heures/hd12.svg' }
|
||||||
];
|
];
|
||||||
const demiReveStatusEffect = rddStatusEffects.find(it => it.id == STATUSES.StatusDemiReve);
|
const demiReveStatusEffect = rddStatusEffects.find(it => it.id == STATUSES.StatusDemiReve);
|
||||||
|
|
||||||
@ -57,7 +57,7 @@ export class StatusEffects extends FormApplication {
|
|||||||
restricted: true
|
restricted: true
|
||||||
});
|
});
|
||||||
|
|
||||||
CONFIG.RDD.allEffects = rddStatusEffects.concat(CONFIG.statusEffects.filter(it => !rddEffectIds.includes(it.id)));
|
CONFIG.RDD.allEffects = rddStatusEffects.concat(CONFIG.statusEffects.filter(it => !rddEffectIds.includes(it.id)))
|
||||||
|
|
||||||
StatusEffects._setUseStatusEffects(StatusEffects._getUseStatusEffects());
|
StatusEffects._setUseStatusEffects(StatusEffects._getUseStatusEffects());
|
||||||
console.log('statusEffects', CONFIG.statusEffects);
|
console.log('statusEffects', CONFIG.statusEffects);
|
||||||
|
@ -613,6 +613,14 @@ input:is(.blessure-premiers_soins, .blessure-soins_complets) {
|
|||||||
max-height: 16px;
|
max-height: 16px;
|
||||||
border-width: 0;
|
border-width: 0;
|
||||||
}
|
}
|
||||||
|
.button-effect-info {
|
||||||
|
vertical-align: baseline;
|
||||||
|
width: 1.4rem;
|
||||||
|
height: 1.4rem;
|
||||||
|
background-color: var(--color-tooltip);
|
||||||
|
padding: 0.2em;
|
||||||
|
border-width: 0;
|
||||||
|
}
|
||||||
.small-button-direction {
|
.small-button-direction {
|
||||||
max-height: 32px;
|
max-height: 32px;
|
||||||
max-width: 32px;
|
max-width: 32px;
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
{
|
{
|
||||||
"id": "foundryvtt-reve-de-dragon",
|
"id": "foundryvtt-reve-de-dragon",
|
||||||
"title": "Rêve de Dragon",
|
"title": "Rêve de Dragon",
|
||||||
"version": "12.0.20",
|
"version": "12.0.21",
|
||||||
"download": "https://www.uberwald.me/gitea/public/foundryvtt-reve-de-dragon/archive/foundryvtt-reve-de-dragon-12.0.20.zip",
|
"download": "https://www.uberwald.me/gitea/public/foundryvtt-reve-de-dragon/archive/foundryvtt-reve-de-dragon-12.0.21.zip",
|
||||||
"manifest": "https://www.uberwald.me/gitea/public/foundryvtt-reve-de-dragon/raw/v11/system.json",
|
"manifest": "https://www.uberwald.me/gitea/public/foundryvtt-reve-de-dragon/raw/v11/system.json",
|
||||||
"changelog": "https://www.uberwald.me/gitea/public/foundryvtt-reve-de-dragon/raw/branch/v11/changelog.md",
|
"changelog": "https://www.uberwald.me/gitea/public/foundryvtt-reve-de-dragon/raw/branch/v11/changelog.md",
|
||||||
"compatibility": {
|
"compatibility": {
|
||||||
|
@ -89,11 +89,12 @@
|
|||||||
<div>
|
<div>
|
||||||
{{>"systems/foundryvtt-reve-de-dragon/templates/actor/export-scriptarium/competences.hbs" competences=competences}}
|
{{>"systems/foundryvtt-reve-de-dragon/templates/actor/export-scriptarium/competences.hbs" competences=competences}}
|
||||||
</div>
|
</div>
|
||||||
|
{{#if system.attributs.hautrevant.value}}
|
||||||
<hr>
|
<hr>
|
||||||
<div>
|
<div>
|
||||||
{{>"systems/foundryvtt-reve-de-dragon/templates/actor/export-scriptarium/competences.hbs" competences=draconic }}
|
{{>"systems/foundryvtt-reve-de-dragon/templates/actor/export-scriptarium/competences.hbs" competences=draconic }}
|
||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<div>
|
<div>
|
||||||
{{>"systems/foundryvtt-reve-de-dragon/templates/actor/export-scriptarium/sort.hbs" voie=export.sort_voie_0.value description=export.sort_description_0.value bonus=export.sort_bonus_0.value}}
|
{{>"systems/foundryvtt-reve-de-dragon/templates/actor/export-scriptarium/sort.hbs" voie=export.sort_voie_0.value description=export.sort_description_0.value bonus=export.sort_bonus_0.value}}
|
||||||
{{>"systems/foundryvtt-reve-de-dragon/templates/actor/export-scriptarium/sort.hbs" voie=export.sort_voie_1.value description=export.sort_description_1.value bonus=export.sort_bonus_1.value}}
|
{{>"systems/foundryvtt-reve-de-dragon/templates/actor/export-scriptarium/sort.hbs" voie=export.sort_voie_1.value description=export.sort_description_1.value bonus=export.sort_bonus_1.value}}
|
||||||
@ -128,5 +129,6 @@
|
|||||||
<div> </div>
|
<div> </div>
|
||||||
<div> </div>
|
<div> </div>
|
||||||
</div>
|
</div>
|
||||||
|
{{/if}}
|
||||||
</section>
|
</section>
|
||||||
</form>
|
</form>
|
@ -1,5 +1,5 @@
|
|||||||
<form class="rdd-roll-dialog">
|
<form class="rdd-roll-dialog">
|
||||||
<h2>Fabrication: {{recette.name}}</h2>
|
<h2>Fabrication: {{recette.name}} par {{alias}}</h2>
|
||||||
<div class="grid grid-2col">
|
<div class="grid grid-2col">
|
||||||
<div class="flex-group-left">
|
<div class="flex-group-left">
|
||||||
<img class="chat-icon" src="{{competence.img}}" data-tooltip="{{competence.name}}"/>
|
<img class="chat-icon" src="{{competence.img}}" data-tooltip="{{competence.name}}"/>
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
<form class="skill-roll-dialog">
|
<form class="skill-roll-dialog">
|
||||||
<h2 class="dialog-roll-title"></h2>
|
<h2 class="dialog-roll-title"></h2>
|
||||||
|
|
||||||
<div class="grid grid-2col">
|
<div class="grid grid-2col">
|
||||||
<div class="flex-group-left">
|
<div class="flex-group-left">
|
||||||
<div class="flexrow">
|
<div class="flexrow">
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<form class="rdd-roll-dialog">
|
<form class="rdd-roll-dialog">
|
||||||
<h2>Chanter: {{oeuvre.name}}</h2>
|
<h2>{{alias}} chante {{oeuvre.name}}</h2>
|
||||||
|
|
||||||
<div class="grid grid-2col">
|
<div class="grid grid-2col">
|
||||||
<div class="flex-group-left">
|
<div class="flex-group-left">
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<form class="dialog-roll-danse">
|
<form class="dialog-roll-danse">
|
||||||
<h2>Danser: {{oeuvre.name}}</h2>
|
<h2>{{alias}} danse {{oeuvre.name}}</h2>
|
||||||
|
|
||||||
<div class="grid grid-2col">
|
<div class="grid grid-2col">
|
||||||
<div class="flex-group-left">
|
<div class="flex-group-left">
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<form class="rdd-roll-dialog">
|
<form class="rdd-roll-dialog">
|
||||||
<h2>Jouer à : {{oeuvre.name}}</h2>
|
<h2>{{alias}} jouer à {{oeuvre.name}}</h2>
|
||||||
|
|
||||||
<div class="grid grid-2col">
|
<div class="grid grid-2col">
|
||||||
<div class="flex-group-left">
|
<div class="flex-group-left">
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<form class="skill-roll-dialog">
|
<form class="skill-roll-dialog">
|
||||||
<h2>Maîtrise {{#if isTMRCache}}
|
<h2>{{alias}} maîtrise {{#if isTMRCache}}
|
||||||
{{tmr.type}}
|
{{tmr.type}}
|
||||||
{{else}}
|
{{else}}
|
||||||
{{tmr.label}} ({{tmr.coord}})
|
{{tmr.label}} ({{tmr.coord}})
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<form class="dialog-roll-meditation">
|
<form class="dialog-roll-meditation">
|
||||||
<h2>{{meditation.name}}</h2>
|
<h2>{{alias}} effectue une {{meditation.name}}</h2>
|
||||||
<div class="grid grid-2col">
|
<div class="grid grid-2col">
|
||||||
<div class="flex-group-left">
|
<div class="flex-group-left">
|
||||||
<img class="chat-icon" src="{{competence.img}}" data-tooltip="{{competence.name}}" />
|
<img class="chat-icon" src="{{competence.img}}" data-tooltip="{{competence.name}}" />
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<form class="rdd-roll-dialog">
|
<form class="rdd-roll-dialog">
|
||||||
<h2>Interpréter la mélodie: {{oeuvre.name}}</h2>
|
<h2>{{alias}} interpréte la mélodie {{oeuvre.name}}</h2>
|
||||||
|
|
||||||
<div class="grid grid-2col">
|
<div class="grid grid-2col">
|
||||||
<div class="flex-group-left">
|
<div class="flex-group-left">
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<form class="rdd-roll-dialog">
|
<form class="rdd-roll-dialog">
|
||||||
<h2>Interpréter une Œuvre: {{oeuvre.name}}</h2>
|
<h2>{{alias}} interpréte une Œuvre: {{oeuvre.name}}</h2>
|
||||||
|
|
||||||
<div class="grid grid-2col">
|
<div class="grid grid-2col">
|
||||||
<div class="flex-group-left">
|
<div class="flex-group-left">
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<form class="rdd-roll-dialog">
|
<form class="rdd-roll-dialog">
|
||||||
<h2>Cuisiner: {{oeuvre.name}}</h2>
|
<h2>{{alias}} cuisine {{oeuvre.name}}</h2>
|
||||||
|
|
||||||
<div class="grid grid-2col">
|
<div class="grid grid-2col">
|
||||||
<div class="flex-group-left">
|
<div class="flex-group-left">
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<form class="skill-roll-dialog">
|
<form class="skill-roll-dialog">
|
||||||
<h2>{{rencontre.name}} de force {{rencontre.system.force}}!</h2>
|
<h2>{{alias}} rencontre: {{rencontre.name}} de force {{rencontre.system.force}}!</h2>
|
||||||
<div class="grid grid-2col">
|
<div class="grid grid-2col">
|
||||||
<div class="flex-group-left">
|
<div class="flex-group-left">
|
||||||
<img class="chat-icon" src="{{competence.img}}" data-tooltip="{{competence.name}}"/>
|
<img class="chat-icon" src="{{competence.img}}" data-tooltip="{{competence.name}}"/>
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
<form class="dialog-roll-signedraconique">
|
<form class="dialog-roll-signedraconique">
|
||||||
<h2>Lire le signe draconique
|
<h2>{{alias}} lit le signe draconique
|
||||||
<select name="signe-draconique" class="roll-signedraconique flex-grow" data-dtype="String">
|
<select name="signe-draconique" class="roll-signedraconique flex-grow" data-dtype="String">
|
||||||
{{#select signe}}
|
{{#select signe}}
|
||||||
{{#each signes as |signe key|}}
|
{{#each signes as |signe key|}}
|
||||||
<option value={{key}}>{{this.name}}</option>
|
<option value={{key}}>{{signe.name}}</option>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
{{/select}}
|
{{/select}}
|
||||||
</select>
|
</select>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<form class="dialog-roll-sort">
|
<form class="dialog-roll-sort">
|
||||||
<img class="chat-icon" src="{{competence.img}}" data-tooltip="{{competence.name}}" />
|
<img class="chat-icon" src="{{competence.img}}" data-tooltip="{{competence.name}}" />
|
||||||
<div>
|
<div>
|
||||||
<h2 class="flexrow">Lancer le {{#if sort.system.isrituel}}rituel{{else}}sort{{/if}}</h2>
|
<h2 class="flexrow">{{alias}} lance le {{#if sort.system.isrituel}}rituel{{else}}sort{{/if}}</h2>
|
||||||
<select name="sort" class="roll-sort" data-dtype="String">
|
<select name="sort" class="roll-sort" data-dtype="String">
|
||||||
{{#select sort}}
|
{{#select sort}}
|
||||||
{{#each sortList as |choix key|}}
|
{{#each sortList as |choix key|}}
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
<form autocomplete="off" onsubmit="event.preventDefault();">
|
<form autocomplete="off" onsubmit="event.preventDefault();">
|
||||||
<ul>
|
<ul>
|
||||||
{{#each effects as |effect key|}}
|
{{#each effects as |effect key|}}
|
||||||
<li>
|
<li >
|
||||||
{{#if effect.rdd}}
|
{{#if effect.rdd}}
|
||||||
<input class="resource-content" type="checkbox" checked disabled/>
|
<input type="checkbox" checked disabled/>
|
||||||
{{else}}
|
{{else}}
|
||||||
<input class="resource-content select-effect" type="checkbox" name="{{effect.id}}" {{#if effect.active}}checked{{/if}}/>
|
<input class="resource-content select-effect" type="checkbox" name="{{effect.id}}" {{#if effect.active}}checked{{/if}}/>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
<img class="button-effect-img" height="16" width="16" src="{{effect.img}}" data-tooltip="{{localize effect.name}}" />
|
<img class="button-effect-info" height="16" width="16" src="{{effect.img}}" data-tooltip="{{localize effect.name}}" />
|
||||||
<label>{{localize effect.name}}</label>
|
<label>{{localize effect.name}}</label>
|
||||||
</li>
|
</li>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
|
Loading…
Reference in New Issue
Block a user