diff --git a/lang/de.json b/lang/de.json
index d9e879e..ba113c8 100644
--- a/lang/de.json
+++ b/lang/de.json
@@ -379,6 +379,23 @@
"BOL.notification.MacroMultipleTokensSelected": "Du hast mehrere Token ausgewählt",
"BOL.notification.MacroNoActorAvailable": "Es konnte kein Akteur gefunden werden",
"BOL.notification.MacroNoTokenSelected": "Du musst einen Token auswählen",
+ "BOL.notification.MacroNoItemFound": "{actor} : kein(e) {type} gefunden.",
+ "BOL.notification.MacroSpecifyNameOrIndex": "Geben Sie einen Namen oder einen Index an : {names}",
+ "BOL.notification.MacroBadIndex": "{actor} : Index {index} für {type} ungültig.",
+ "BOL.notification.MacroItemNotFound": "{actor} : {type} \"{name}\" nicht gefunden.",
+ "BOL.notification.MacroUnknownAttribute": "Unbekanntes Attribut : \"{key}\". Werte : vigor, agility, mind, appeal",
+ "BOL.notification.MacroUnknownAptitude": "Unbekannte Fertigkeit : \"{key}\". Werte : init, melee, ranged, def",
+ "BOL.notification.MacroUnknownRollType": "Unbekannter Wurftyp : \"{type}\". Gültige Typen : attribute, aptitude, weapon, spell, alchemy, horoscope",
+ "BOL.notification.MacroNoPower": "Nicht genug Kraftpunkte !",
+ "BOL.notification.FullDefense": "{actor} ist in voller Verteidigung ! Er kann in dieser Runde nicht angreifen.",
+ "BOL.notification.WeaponNotFound": "Waffe nicht gefunden !",
+ "BOL.notification.AlchemyNotFound": "Alchemie nicht gefunden !",
+ "BOL.notification.SpellNotFound": "Diesen Zauber nicht gefunden !",
+ "BOL.notification.NotEnoughCreationPrep": "Nicht genug Schöpfungspunkte in die Vorbereitung investiert !",
+ "BOL.notification.NoPower": "Nicht genug Kraftpunkte !",
+ "BOL.notification.AttackNotFound": "Der entsprechende Angriff wurde nicht gefunden, Fehler bei der Kampfverfolgung.",
+ "BOL.notification.NoBirthHour": "{actor} hat keine Geburtsstunde, oder sie ist falsch : {hour}",
+ "BOL.notification.BadBirthHour": "{hour} entspricht keiner Geburtsstunde",
"BOL.size.tiny": "Winzig",
"BOL.size.verysmall": "Sehr klein",
@@ -469,6 +486,8 @@
"BOL.chat.welcome4": "Im Discord findet ihr Support für die FoundryVTT-Implementierung dieses Systems: https://discord.gg/pPSDNJk",
"BOL.chat.welcome5": "Auf ein gutes Spiel in Lemuria!",
"BOL.chat.welcome6": "",
+ "BOL.chat.msgonlygm": "Nachricht nur für den GM",
+ "BOL.chat.babelewarning": "⚠ WARNUNG ! Englisch ist ausgewählt, aber das Babele-Modul ist nicht installiert !
Bitte installieren Sie babele über den Modul-Reiter in der Foundry-Oberfläche.",
"BOL.chat.bolRulebookMessage": "Don't miss the premium Rulebook module (including Sagas), available on the Foundry website : https://foundryvtt.com/packages/bol-rulebook",
"BOL.chat.bolChroniclesMessage": "Discover the premium Chronicles of Lemuria module (vol. 1), available on the Foundry website : https://foundryvtt.com/packages/bol-chronicles-1",
diff --git a/lang/en.json b/lang/en.json
index 5c6cde3..bf1050d 100644
--- a/lang/en.json
+++ b/lang/en.json
@@ -445,6 +445,23 @@
"BOL.notification.MacroMultipleTokensSelected": "You have selected several tokens!",
"BOL.notification.MacroNoActorAvailable": "No actor could be targeted!",
"BOL.notification.MacroNoTokenSelected": "You must select a token!",
+ "BOL.notification.MacroNoItemFound": "{actor} : no {type} found.",
+ "BOL.notification.MacroSpecifyNameOrIndex": "Specify a name or an index : {names}",
+ "BOL.notification.MacroBadIndex": "{actor} : index {index} invalid for {type}.",
+ "BOL.notification.MacroItemNotFound": "{actor} : {type} \"{name}\" not found.",
+ "BOL.notification.MacroUnknownAttribute": "Unknown attribute : \"{key}\". Values : vigor, agility, mind, appeal",
+ "BOL.notification.MacroUnknownAptitude": "Unknown aptitude : \"{key}\". Values : init, melee, ranged, def",
+ "BOL.notification.MacroUnknownRollType": "Unknown roll type : \"{type}\". Valid types : attribute, aptitude, weapon, spell, alchemy, horoscope",
+ "BOL.notification.MacroNoPower": "Not enough Power points !",
+ "BOL.notification.FullDefense": "{actor} is in Full Defense ! He cannot attack this round.",
+ "BOL.notification.WeaponNotFound": "Unable to find weapon !",
+ "BOL.notification.AlchemyNotFound": "Unable to find Alchemy !",
+ "BOL.notification.SpellNotFound": "Unable to find this spell !",
+ "BOL.notification.NotEnoughCreationPrep": "Not enough Creation Points invested in the Preparation !",
+ "BOL.notification.NoPower": "Not enough Power points !",
+ "BOL.notification.AttackNotFound": "Unable to find the corresponding attack, combat tracking error.",
+ "BOL.notification.NoBirthHour": "{actor} has no birth hour, or it is incorrect : {hour}",
+ "BOL.notification.BadBirthHour": "{hour} does not correspond to a birth hour",
"BOL.size.tiny": "Tiny",
"BOL.size.verysmall": "Very Small",
@@ -594,6 +611,8 @@
"BOL.chat.welcome4": "All support for this system is available on this Discord server : https://discord.gg/pPSDNJk",
"BOL.chat.welcome5": "In order to see compendiums in English, you must install and enable the Babele module.",
"BOL.chat.welcome6": "Good game in Lemuria !",
+ "BOL.chat.msgonlygm": "Message only to the GM",
+ "BOL.chat.babelewarning": "⚠ WARNING ! English language selected, but Babele module is not installed !
Please install babele from the module tab in Foundry interface.",
"BOL.settings.rollArmor": "Roll for armor",
"BOL.settings.rollArmorTooltip": "Roll for armor value, fixed value if unchecked",
diff --git a/lang/es.json b/lang/es.json
index 43e846b..230de21 100644
--- a/lang/es.json
+++ b/lang/es.json
@@ -439,6 +439,23 @@
"BOL.notification.MacroMultipleTokensSelected": "¡Has seleccionado varios tokens!",
"BOL.notification.MacroNoActorAvailable": "¡No se pudo marcar el actor como objetivo!",
"BOL.notification.MacroNoTokenSelected": "¡Debes seleccionar un token!",
+ "BOL.notification.MacroNoItemFound": "{actor} : no se encontró ningún {type}.",
+ "BOL.notification.MacroSpecifyNameOrIndex": "Especifica un nombre o un índice : {names}",
+ "BOL.notification.MacroBadIndex": "{actor} : índice {index} no válido para {type}.",
+ "BOL.notification.MacroItemNotFound": "{actor} : {type} \"{name}\" no encontrado.",
+ "BOL.notification.MacroUnknownAttribute": "Atributo desconocido : \"{key}\". Valores : vigor, agility, mind, appeal",
+ "BOL.notification.MacroUnknownAptitude": "Aptitud desconocida : \"{key}\". Valores : init, melee, ranged, def",
+ "BOL.notification.MacroUnknownRollType": "Tipo de tirada desconocido : \"{type}\". Tipos válidos : attribute, aptitude, weapon, spell, alchemy, horoscope",
+ "BOL.notification.MacroNoPower": "¡No quedan suficientes puntos de Poder!",
+ "BOL.notification.FullDefense": "{actor} está en Defensa Total ! ¡No puede atacar este asalto!",
+ "BOL.notification.WeaponNotFound": "¡No se pudo encontrar el arma!",
+ "BOL.notification.AlchemyNotFound": "¡No se pudo encontrar la alquimia!",
+ "BOL.notification.SpellNotFound": "¡No se pudo encontrar este hechizo!",
+ "BOL.notification.NotEnoughCreationPrep": "¡No hay suficientes puntos de Creación invertidos en la Preparación!",
+ "BOL.notification.NoPower": "¡No quedan suficientes puntos de Poder!",
+ "BOL.notification.AttackNotFound": "No se pudo encontrar el ataque correspondiente, error de seguimiento de combate.",
+ "BOL.notification.NoBirthHour": "{actor} no tiene hora de nacimiento, o es incorrecta : {hour}",
+ "BOL.notification.BadBirthHour": "{hour} no corresponde a una hora de nacimiento",
"BOL.size.tiny": "Minúsculo",
"BOL.size.verysmall": "Muy pequeño",
@@ -578,6 +595,8 @@
"BOL.chat.welcome4": "Todo el soporte para el sistema es a través del servidor Discord: https://discord.gg/pPSDNJk",
"BOL.chat.welcome5": "¡Buena partida en Lemuria!",
"BOL.chat.welcome6": "",
+ "BOL.chat.msgonlygm": "Mensaje solo para el GM",
+ "BOL.chat.babelewarning": "⚠ ¡ADVERTENCIA! ¡El idioma inglés está seleccionado, pero el módulo Babele no está instalado!
Instale babele desde la pestaña de módulos en la interfaz de Foundry.",
"BOL.settings.rollArmor": "Tiradas de armadura",
"BOL.settings.rollArmorTooltip": "Tiradas de armadura, si no esta activo usará el valor fijo",
diff --git a/lang/fr.json b/lang/fr.json
index 5b5a1f7..3fa46cd 100644
--- a/lang/fr.json
+++ b/lang/fr.json
@@ -473,6 +473,23 @@
"BOL.notification.MacroMultipleTokensSelected": "Vous avez sélectionné plusieurs tokens",
"BOL.notification.MacroNoActorAvailable": "Aucun acteur n'a pu être ciblé",
"BOL.notification.MacroNoTokenSelected": "Vous devez sélectionner un token",
+ "BOL.notification.MacroNoItemFound": "{actor} : aucun(e) {type} trouvé(e).",
+ "BOL.notification.MacroSpecifyNameOrIndex": "Précisez le nom ou l'index : {names}",
+ "BOL.notification.MacroBadIndex": "{actor} : index {index} invalide pour {type}.",
+ "BOL.notification.MacroItemNotFound": "{actor} : {type} \"{name}\" introuvable.",
+ "BOL.notification.MacroUnknownAttribute": "Attribut inconnu : \"{key}\". Valeurs : vigor, agility, mind, appeal",
+ "BOL.notification.MacroUnknownAptitude": "Aptitude inconnue : \"{key}\". Valeurs : init, melee, ranged, def",
+ "BOL.notification.MacroUnknownRollType": "Type de jet inconnu : \"{type}\". Types valides : attribute, aptitude, weapon, spell, alchemy, horoscope",
+ "BOL.notification.MacroNoPower": "Plus assez de points de Pouvoir !",
+ "BOL.notification.FullDefense": "{actor} est en Défense Totale ! Il ne peut pas attaquer ce round.",
+ "BOL.notification.WeaponNotFound": "Impossible de trouver l'arme !",
+ "BOL.notification.AlchemyNotFound": "Impossible de trouver l'alchimie !",
+ "BOL.notification.SpellNotFound": "Impossible de trouver ce sort !",
+ "BOL.notification.NotEnoughCreationPrep": "Pas assez de Points de Création investis dans la Préparation !",
+ "BOL.notification.NoPower": "Plus assez de points de Pouvoir !",
+ "BOL.notification.AttackNotFound": "Impossible de trouver l'attaque correspondante, erreur de suivi de combat.",
+ "BOL.notification.NoBirthHour": "{actor} n'a pas d'heure de naissance, ou elle est incorrecte : {hour}",
+ "BOL.notification.BadBirthHour": "{hour} ne correspond pas à une heure de naissance",
"BOL.size.tiny": "Minuscule",
"BOL.size.verysmall": "Très petite",
@@ -632,6 +649,8 @@
"BOL.chat.pcwarningmsg": "ATTENTION Le joueur n'est relié à aucun personnage !",
"BOL.chat.pcnotlinked": "Le token du personnage joueur n'est pas relié à l'acteur",
"BOL.chat.pcnotlinkedmsg": "ATTENTION Le token du personnage joueur n'est pas relié à l'acteur !",
+ "BOL.chat.msgonlygm": "Message réservé au MJ uniquement",
+ "BOL.chat.babelewarning": "⚠ ATTENTION ! La langue anglaise est sélectionnée, mais le module Babele n'est pas installé !
Veuillez installer babele depuis l'onglet des modules dans l'interface de Foundry.",
"BOL.settings.rollArmor": "Effectuer des jets pour les armures",
"BOL.settings.rollArmorTooltip": "Effectue un jet de dés pour les armures (valeur fixe si désactivé)",
diff --git a/module/actor/horde-sheet.js b/module/actor/horde-sheet.js
index 598dffd..a82fe85 100644
--- a/module/actor/horde-sheet.js
+++ b/module/actor/horde-sheet.js
@@ -84,8 +84,8 @@ export class BoLHordeSheet extends foundry.appv1.sheets.ActorSheet {
// Delete Inventory Item
html.find('.item-delete').click(ev => {
Dialog.confirm({
- title: "Suppression",
- content: `Vous êtes sûr de vouloir supprimer cet item ?`,
+ title: game.i18n.localize("BOL.ui.deletetitle"),
+ content: game.i18n.localize("BOL.ui.confirmdelete"),
yes: () => {
const li = $(ev.currentTarget).parents(".item");
this.actor.deleteEmbeddedDocuments("Item", [li.data("itemId")])
diff --git a/module/actor/vehicle-sheet.js b/module/actor/vehicle-sheet.js
index afa4882..a8be6a5 100644
--- a/module/actor/vehicle-sheet.js
+++ b/module/actor/vehicle-sheet.js
@@ -94,8 +94,8 @@ export class BoLVehicleSheet extends foundry.appv1.sheets.ActorSheet {
// Delete Inventory Item
html.find('.item-delete').click(ev => {
Dialog.confirm({
- title: "Suppression",
- content: `Vous êtes sûr de vouloir supprimer cet item ?`,
+ title: game.i18n.localize("BOL.ui.deletetitle"),
+ content: game.i18n.localize("BOL.ui.confirmdelete"),
yes: () => {
const li = $(ev.currentTarget).parents(".item");
this.actor.deleteEmbeddedDocuments("Item", [li.data("itemId")])
diff --git a/module/bol.js b/module/bol.js
index c035d8c..42ac319 100644
--- a/module/bol.js
+++ b/module/bol.js
@@ -121,12 +121,13 @@ async function welcomeMessage() {
ChatMessage.create({ user: game.user.id, whisper: [game.user.id], content })
if (game.user.isGM && game.i18n.lang == 'en' && !game.modules.get("babele")?.active) {
+ const babeleWarning = game.i18n.localize("BOL.chat.babelewarning")
ChatMessage.create({
user: game.user.id,
whisper: [game.user.id],
- content: `
⚠ WARNING ! English language selected, but Babele module is not installed !
Please install babele from the module tab in Foundry interface.
${babeleWarning}