Fix: Correction des clés i18n et affichage de l'onglet Effets
- Correction du namespace i18n: MOURNBLADECYD2.EFFECT → EFFECT
- Suppression de la condition {{#if item.effects.length}} dans tous les templates d'items
- Ajout de la clé EFFECT.noItemEffects pour les items sans effets
- Remplacement des textes en dur par des clés i18n dans les partials
- Mise à jour de toutes les références dans le code JavaScript
Cela corrige:
1. Les clés i18n manquantes (namespace incohérent)
2. L'onglet Effets des items qui était vide quand l'item n'avait pas d'effets
Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
@@ -332,7 +332,7 @@ export default class MournbladeCYD2ActorSheetV2 extends HandlebarsApplicationMix
|
||||
try {
|
||||
// Créer les données par défaut pour un nouvel effet
|
||||
const defaultEffectData = {
|
||||
name: game.i18n.localize("MOURNBLADECYD2.EFFECT.new") || "Nouvel Effet",
|
||||
name: game.i18n.localize("EFFECT.new") || "Nouvel Effet",
|
||||
icon: "systems/fvtt-mournblade-cyd-2-0/assets/icons/capacite.webp",
|
||||
description: "",
|
||||
changes: [],
|
||||
@@ -354,7 +354,7 @@ export default class MournbladeCYD2ActorSheetV2 extends HandlebarsApplicationMix
|
||||
} catch (error) {
|
||||
console.error("MournbladeCYD2 | Failed to create effect:", error);
|
||||
ui.notifications.error(
|
||||
game.i18n.localize("MOURNBLADECYD2.EFFECT.createError") ||
|
||||
game.i18n.localize("EFFECT.createError") ||
|
||||
"Erreur lors de la création de l'effet"
|
||||
);
|
||||
}
|
||||
@@ -397,8 +397,8 @@ export default class MournbladeCYD2ActorSheetV2 extends HandlebarsApplicationMix
|
||||
if (effect) {
|
||||
const effectName = effect.name;
|
||||
const confirmed = await foundry.applications.api.DialogV2.confirm({
|
||||
title: game.i18n.localize("MOURNBLADECYD2.EFFECT.deleteConfirm") || "Supprimer l'effet",
|
||||
content: game.i18n.localize("MOURNBLADECYD2.EFFECT.deleteConfirmText", {name: effectName}) ||
|
||||
title: game.i18n.localize("EFFECT.deleteConfirm") || "Supprimer l'effet",
|
||||
content: game.i18n.localize("EFFECT.deleteConfirmText", {name: effectName}) ||
|
||||
`Êtes-vous sûr de vouloir supprimer l'effet "${effectName}" ?`
|
||||
});
|
||||
|
||||
@@ -408,7 +408,7 @@ export default class MournbladeCYD2ActorSheetV2 extends HandlebarsApplicationMix
|
||||
} catch (error) {
|
||||
console.error("MournbladeCYD2 | Failed to delete effect:", error);
|
||||
ui.notifications.error(
|
||||
game.i18n.localize("MOURNBLADECYD2.EFFECT.deleteError") ||
|
||||
game.i18n.localize("EFFECT.deleteError") ||
|
||||
"Erreur lors de la suppression de l'effet"
|
||||
);
|
||||
}
|
||||
@@ -436,7 +436,7 @@ export default class MournbladeCYD2ActorSheetV2 extends HandlebarsApplicationMix
|
||||
} catch (error) {
|
||||
console.error("MournbladeCYD2 | Failed to toggle effect:", error);
|
||||
ui.notifications.error(
|
||||
game.i18n.localize("MOURNBLADECYD2.EFFECT.toggleError") ||
|
||||
game.i18n.localize("EFFECT.toggleError") ||
|
||||
"Erreur lors du basculement de l'effet"
|
||||
);
|
||||
}
|
||||
|
||||
@@ -193,7 +193,7 @@ export default class MournbladeCYD2ItemSheetV2 extends HandlebarsApplicationMixi
|
||||
try {
|
||||
// Créer les données par défaut pour un nouvel effet
|
||||
const defaultEffectData = {
|
||||
name: game.i18n.localize("MOURNBLADECYD2.EFFECT.new") || "Nouvel Effet",
|
||||
name: game.i18n.localize("EFFECT.new") || "Nouvel Effet",
|
||||
icon: "systems/fvtt-mournblade-cyd-2-0/assets/icons/capacite.webp",
|
||||
description: "",
|
||||
changes: [],
|
||||
@@ -215,7 +215,7 @@ export default class MournbladeCYD2ItemSheetV2 extends HandlebarsApplicationMixi
|
||||
} catch (error) {
|
||||
console.error("MournbladeCYD2 | Failed to create effect:", error);
|
||||
ui.notifications.error(
|
||||
game.i18n.localize("MOURNBLADECYD2.EFFECT.createError") ||
|
||||
game.i18n.localize("EFFECT.createError") ||
|
||||
"Erreur lors de la création de l'effet"
|
||||
);
|
||||
}
|
||||
@@ -258,8 +258,8 @@ export default class MournbladeCYD2ItemSheetV2 extends HandlebarsApplicationMixi
|
||||
if (effect) {
|
||||
const effectName = effect.name;
|
||||
const confirmed = await foundry.applications.api.DialogV2.confirm({
|
||||
title: game.i18n.localize("MOURNBLADECYD2.EFFECT.deleteConfirm") || "Supprimer l'effet",
|
||||
content: game.i18n.localize("MOURNBLADECYD2.EFFECT.deleteConfirmText", {name: effectName}) ||
|
||||
title: game.i18n.localize("EFFECT.deleteConfirm") || "Supprimer l'effet",
|
||||
content: game.i18n.localize("EFFECT.deleteConfirmText", {name: effectName}) ||
|
||||
`Êtes-vous sûr de vouloir supprimer l'effet "${effectName}" ?`
|
||||
});
|
||||
|
||||
@@ -269,7 +269,7 @@ export default class MournbladeCYD2ItemSheetV2 extends HandlebarsApplicationMixi
|
||||
} catch (error) {
|
||||
console.error("MournbladeCYD2 | Failed to delete effect:", error);
|
||||
ui.notifications.error(
|
||||
game.i18n.localize("MOURNBLADECYD2.EFFECT.deleteError") ||
|
||||
game.i18n.localize("EFFECT.deleteError") ||
|
||||
"Erreur lors de la suppression de l'effet"
|
||||
);
|
||||
}
|
||||
@@ -297,7 +297,7 @@ export default class MournbladeCYD2ItemSheetV2 extends HandlebarsApplicationMixi
|
||||
} catch (error) {
|
||||
console.error("MournbladeCYD2 | Failed to toggle effect:", error);
|
||||
ui.notifications.error(
|
||||
game.i18n.localize("MOURNBLADECYD2.EFFECT.toggleError") ||
|
||||
game.i18n.localize("EFFECT.toggleError") ||
|
||||
"Erreur lors du basculement de l'effet"
|
||||
);
|
||||
}
|
||||
@@ -326,7 +326,7 @@ export default class MournbladeCYD2ItemSheetV2 extends HandlebarsApplicationMixi
|
||||
// Cette méthode est placeholders - l'application devrait être gérée par drag-drop
|
||||
// ou par une action spécifique qui demande à l'utilisateur de sélectionner un acteur
|
||||
ui.notifications.warn(
|
||||
game.i18n.localize("MOURNBLADECYD2.EFFECT.selectActor") ||
|
||||
game.i18n.localize("EFFECT.selectActor") ||
|
||||
"Veuillez d'abord sélectionner un acteur pour appliquer cet effet."
|
||||
);
|
||||
}
|
||||
|
||||
@@ -221,7 +221,7 @@ export class MournbladeCYD2Effects {
|
||||
} catch (error) {
|
||||
console.error("MournbladeCYD2 | Failed to apply effect:", error);
|
||||
ui.notifications?.error(
|
||||
game.i18n?.localize("MOURNBLADECYD2.EFFECT.applyError") ||
|
||||
game.i18n?.localize("EFFECT.applyError") ||
|
||||
`Erreur: Impossible d'appliquer l'effet (${error.message})`
|
||||
);
|
||||
return null;
|
||||
@@ -259,7 +259,7 @@ export class MournbladeCYD2Effects {
|
||||
} catch (error) {
|
||||
console.error("MournbladeCYD2 | Failed to apply item effects:", error);
|
||||
ui.notifications?.error(
|
||||
game.i18n?.localize("MOURNBLADECYD2.EFFECT.applyItemError") ||
|
||||
game.i18n?.localize("EFFECT.applyItemError") ||
|
||||
`Erreur: Impossible d'appliquer les effets de l'item`
|
||||
);
|
||||
return [];
|
||||
|
||||
Reference in New Issue
Block a user