Fix after testing
This commit is contained in:
@@ -29,26 +29,16 @@ export class HeritiersRollDialog {
|
||||
// Préparer les boutons selon le mode et le niveau
|
||||
const buttons = this._prepareButtons(rollData)
|
||||
|
||||
// Lancer le dialog de manière asynchrone (sans attendre)
|
||||
setTimeout(() => {
|
||||
foundry.applications.api.DialogV2.wait({
|
||||
window: { title: "Test de Capacité", icon: "fa-solid fa-dice" },
|
||||
classes: ["heritiers-roll-dialog"],
|
||||
position: { width: 420, height: 'fit-content' },
|
||||
modal: false,
|
||||
content,
|
||||
buttons,
|
||||
rejectClose: false,
|
||||
render: (event, html) => {
|
||||
this._activateListeners(html, rollData)
|
||||
}
|
||||
})
|
||||
}, 0)
|
||||
|
||||
// Retourner un objet avec une méthode render() vide pour compatibilité
|
||||
return {
|
||||
render: () => {} // No-op for compatibility with old code
|
||||
}
|
||||
// Utiliser DialogV2.wait avec le HTML rendu
|
||||
return foundry.applications.api.DialogV2.wait({
|
||||
window: { title: "Test de Capacité", icon: "fa-solid fa-dice" },
|
||||
classes: ["heritiers-roll-dialog"],
|
||||
position: { width: 420 },
|
||||
modal: false,
|
||||
content,
|
||||
buttons,
|
||||
rejectClose: false
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -63,7 +53,7 @@ export class HeritiersRollDialog {
|
||||
// Bouton d8 toujours disponible
|
||||
buttons.push({
|
||||
action: "rolld8",
|
||||
label: "Lancer 1d8",
|
||||
label: "1d8",
|
||||
icon: "fa-solid fa-dice-d8",
|
||||
default: true,
|
||||
callback: (event, button, dialog) => {
|
||||
@@ -77,7 +67,7 @@ export class HeritiersRollDialog {
|
||||
if (enableD10) {
|
||||
buttons.push({
|
||||
action: "rolld10",
|
||||
label: "Lancer 1d10",
|
||||
label: "1d10",
|
||||
icon: "fa-solid fa-dice-d10",
|
||||
callback: (event, button, dialog) => {
|
||||
this._updateRollDataFromForm(rollData, button.form.elements)
|
||||
@@ -91,7 +81,7 @@ export class HeritiersRollDialog {
|
||||
if (enableD12) {
|
||||
buttons.push({
|
||||
action: "rolld12",
|
||||
label: "Lancer 1d12",
|
||||
label: "1d12",
|
||||
icon: "fa-solid fa-dice-d12",
|
||||
callback: (event, button, dialog) => {
|
||||
this._updateRollDataFromForm(rollData, button.form.elements)
|
||||
@@ -104,7 +94,7 @@ export class HeritiersRollDialog {
|
||||
if (rollData.tricherie) {
|
||||
buttons.push({
|
||||
action: "rollTricherie",
|
||||
label: "Lancer avec 1 Point de Tricherie",
|
||||
label: "Lancer 1 Tricherie",
|
||||
icon: "fa-solid fa-mask",
|
||||
callback: (event, button, dialog) => {
|
||||
this._updateRollDataFromForm(rollData, button.form.elements)
|
||||
@@ -117,7 +107,7 @@ export class HeritiersRollDialog {
|
||||
if (rollData.heritage) {
|
||||
buttons.push({
|
||||
action: "rollHeritage",
|
||||
label: "Lancer avec 1 Point d'Héritage",
|
||||
label: "Lancer 1 Héritage",
|
||||
icon: "fa-solid fa-crown",
|
||||
callback: (event, button, dialog) => {
|
||||
this._updateRollDataFromForm(rollData, button.form.elements)
|
||||
@@ -145,94 +135,6 @@ export class HeritiersRollDialog {
|
||||
return buttons
|
||||
}
|
||||
|
||||
/**
|
||||
* Activer les listeners sur le formulaire
|
||||
* @param {HTMLElement} html - L'élément HTML du dialog
|
||||
* @param {Object} rollData - Data for the roll
|
||||
* @private
|
||||
*/
|
||||
static _activateListeners(html, rollData) {
|
||||
// Seuil de Difficulté
|
||||
const sdValue = html.querySelector('#sdValue')
|
||||
if (sdValue) {
|
||||
sdValue.addEventListener('change', (event) => {
|
||||
rollData.sdValue = Number(event.currentTarget.value)
|
||||
})
|
||||
}
|
||||
|
||||
// Caractéristique
|
||||
const caracKey = html.querySelector('#caracKey')
|
||||
if (caracKey) {
|
||||
caracKey.addEventListener('change', (event) => {
|
||||
rollData.caracKey = String(event.currentTarget.value)
|
||||
})
|
||||
}
|
||||
|
||||
// Bonus/Malus contextuel
|
||||
const bonusMalusContext = html.querySelector('#bonus-malus-context')
|
||||
if (bonusMalusContext) {
|
||||
bonusMalusContext.addEventListener('change', (event) => {
|
||||
rollData.bonusMalusContext = Number(event.currentTarget.value)
|
||||
})
|
||||
}
|
||||
|
||||
// Attaque à plusieurs
|
||||
const bonusAttaquePlusieurs = html.querySelector('#bonus-attaque-plusieurs')
|
||||
if (bonusAttaquePlusieurs) {
|
||||
bonusAttaquePlusieurs.addEventListener('change', (event) => {
|
||||
rollData.bonusAttaquePlusieurs = Number(event.currentTarget.value)
|
||||
})
|
||||
}
|
||||
|
||||
// Spécialité
|
||||
const useSpecialite = html.querySelector('#useSpecialite')
|
||||
if (useSpecialite) {
|
||||
useSpecialite.addEventListener('change', (event) => {
|
||||
rollData.useSpecialite = event.currentTarget.checked
|
||||
})
|
||||
}
|
||||
|
||||
// Points d'usage du pouvoir
|
||||
const pouvoirPointsUsage = html.querySelector('#pouvoirPointsUsage')
|
||||
if (pouvoirPointsUsage) {
|
||||
pouvoirPointsUsage.addEventListener('change', (event) => {
|
||||
rollData.pouvoirPointsUsage = Number(event.currentTarget.value)
|
||||
})
|
||||
}
|
||||
|
||||
// Attaque dans le dos
|
||||
const attaqueDos = html.querySelector('#attaqueDos')
|
||||
if (attaqueDos) {
|
||||
attaqueDos.addEventListener('change', (event) => {
|
||||
rollData.attaqueDos = event.currentTarget.checked
|
||||
})
|
||||
}
|
||||
|
||||
// Seconde arme
|
||||
const secondeArme = html.querySelector('#bonus-attaque-seconde-arme')
|
||||
if (secondeArme) {
|
||||
secondeArme.addEventListener('change', (event) => {
|
||||
rollData.secondeArme = String(event.currentTarget.value)
|
||||
})
|
||||
}
|
||||
|
||||
// Attaque ciblée
|
||||
const attaqueCible = html.querySelector('#attaque-cible')
|
||||
if (attaqueCible) {
|
||||
attaqueCible.addEventListener('change', (event) => {
|
||||
rollData.attaqueCible = String(event.currentTarget.value)
|
||||
})
|
||||
}
|
||||
|
||||
// Attaque à deux armes
|
||||
const attaqueDeuxArmes = html.querySelector('#bonus-attaque-deux-armes')
|
||||
if (attaqueDeuxArmes) {
|
||||
attaqueDeuxArmes.addEventListener('change', (event) => {
|
||||
rollData.attaqueDeuxArmes = Number(event.currentTarget.value)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Mettre à jour rollData avec les valeurs du formulaire
|
||||
* @param {Object} rollData - L'objet rollData à mettre à jour
|
||||
@@ -305,7 +207,7 @@ export class HeritiersRollDialog {
|
||||
} else {
|
||||
rollData.mainDice = dice
|
||||
}
|
||||
|
||||
|
||||
HeritiersUtility.rollHeritiers(rollData)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user