diff --git a/images/icons/opposition.webp b/images/icons/opposition.webp new file mode 100644 index 0000000..76f7401 Binary files /dev/null and b/images/icons/opposition.webp differ diff --git a/lang/fr.json b/lang/fr.json index 9691f70..c6a51db 100644 --- a/lang/fr.json +++ b/lang/fr.json @@ -1,175 +1,17 @@ { "TYPES": { "Actor":{ - "pc": "Personnage Joueur", - "npc": "Personnage Non Joueur", - "annency": "Anence" + "pj": "Personnage Joueur", + "pnj": "Personnage Non Joueur" }, "Item": { - "trait": "Trait", - "weapon": "Arme", - "equipment": "Equipement", - "maneuver": "Manoeuvre", - "specialization": "Spécialisation" - } - }, - "ECRY": { - "settings": { - "cogs": "Engrenages", - "cephaly": "Céphalie", - "boheme": "Bohême", - "amertume": "Amertume", - "gamelevel": "Niveau de jeu" - }, - "chat": { - "formula": "Formule", - "difficulty": "Difficulté", - "dicesum": "Dés", - "result": "Resultat", - "margin": "Marge", - "success": "Succés!", - "failure": "Echec!", - "specialization": "Spécialisation", - "traitbonus": "Trait bonus", - "traitmalus": "Trait malus", - "bonusmalustraits": "Bonus/Malus des Traits", - "spectranscend": "Dépassement de soi : ", - "confrontselected": "Confrontation selectionnée", - "sentogm": "La confrontation a été envoyée au MJ" - }, - "rule": { - "cephaly-success-12": "Durée : 1 scène - Impact : Superficiel - Bonus : 1 - Elegie : 1", - "cephaly-success-4": "Durée : 1 semaine - Impact : Léger - Bonus : 2 - Elegie : 2", - "cephaly-success-6": "Durée : 1 mois - Impact : Grave - Bonus : 3 - Elegie : 3", - "cephaly-success-8": "Durée : 1 année - Impact : Majeur - Bonus : 4 - Elegie : 4", - "cephaly-success-10": "Durée : Permanent - Impact : Mort - Bonus : 5 - Elegie : 5", - "cephaly-failure-2": "Durée : 1 scène - Impact : Superficiel - Malus : 1 - Symptôme non visible et sans gravité - Altération bégigne difficilement repérable", - "cephaly-failure-4": "Durée : 1 semaine - Impact : Léger - Malus : 2 - Symptôme visible non incapacitant - Altération repérable", - "cephaly-failure-6": "Durée : 1 mois - Impact : Grave - Malus : 3 - Symptôme incapacitant - Altération repérable et fâcheuse", - "cephaly-failure-8": "Durée : 1 année - Impact : Majeur - Malus : 4 - Symptôme très incapacitant - Altération dangereuse", - "cephaly-failure-10": "Durée : Permanent - Impact : Mort/Folie - Malus : 5 - Symptôme spectaculaire et repoussant - Altération dangereuse globalement" - - }, - "warn": { - "notenoughdice": "L'Accomplissement et la Préservation doivent avoir 2 dés chacun" - }, - "ui": { - "equipmentfree": "Equipements (saisie libre)", - "traitType": "Type de trait", - "niveauTrait": "Niveau du trait", - "effect": "Incidence", - "weight": "Poids", - "cost": "Prix", - "costUnit": "Unité", - "ingot": "Lingot", - "ingotin": "Lingotin", - "goldcoin": "Pièce d'or", - "lige": "Lige", - "hurle": "Hurle", - "coin": "Sous", - "notes": "Notes", - "bio": "Bio", - "bionotes": "Bio&Notes", - "skills": "Compétences", - "traits": "Traits", - "equipment": "Equipement", - "physical": "Physiques", - "mental": "Mentales", - "social": "Sociales", - "athletics": "Athlétisme", - "driving": "Conduite", - "fencing": "Escrime", - "brawling": "Pugilat", - "shooting": "Tir", - "anthropomecanology": "Anthropo-Mécanologie", - "ecrymology": "Écrymologie", - "traumatology": "Traumatologie", - "traversology": "Traversologie", - "urbatechnology": "Urbatechnologie", - "quibbling": "Argutie", - "creativity": "Créativité", - "loquacity": "Faconde", - "guile": "Maraude", - "performance" :"Représentation", - "skill": "Compétence", - "troublesome": "Malaisé", - "occasional": "Peu frequent", - "difficult": "Difficile", - "uncommon": "Atypique", - "verydifficult": "Très difficile", - "rare": "Rare", - "extremdifficult": "Extrêmement difficile", - "veryrare": "Très rare", - "increddifficult": "Incroyable", - "exceptrare": "Exceptionnel", - "none": "Aucun", - "roll": "Lancer les dés !", - "cancel": "Annuler", - "rolltitle": "Ou l'on teste ses compétences", - "spec": "Spécialisation", - "traitbonus": "Traits bonus", - "traitmalus": "Traits malus", - "applyideal": "Utiliser l'idéal", - "applyspleen": "Utiliser le spleen", - "skilltranscendence": "Dépassement de soi", - "confrontation": "Confrontation", - "rollnormal": "Normal (4d6)", - "rollspleen": "Avec le Spleen (5d6, 4 plus bas conservés)", - "rollideal": "Avec l'Idéal (5d6, 4 plus haut conservés)", - "superficial": "Superficiel", - "light": "Léger", - "serious": "Grave", - "major": "Majeur", - "impactType": "Type d'Impact", - "impactLevel": "Niveau d'impact", - "impactphysical": "Physique", - "impactmental": "Mental", - "impactsocial": "Social", - "impactmalus": "Malus d'Impact", - "ongoingconfront": "Confrontations en cours", - "confront":"Confrontation", - "launchconfront": "Lancer la confrontation", - "execution": "Accomplissement", - "preservation": "Préservation", - "dicepool": "Dés disponibles", - "selectconfront": "Sélectionner pour la Confrontation", - "transcendapply": "Appliquer la Transcendence à ", - "healthcombat": "Santé&Combat", - "name": "Nom", - "weapons": "Armes", - "weapon": "Arme", - "melee": "Mêlée", - "ranged": "A Distance", - "weapontype": "Type d'arme", - "type": "Type", - "applyimpact": "Appliquer l'impact", - "applybonus": "Appliquer le bonus", - "bonuspool": "Bonus disponibles", - "cephaly": "Cephalie", - "elegy": "Elégie", - "entelechy": "Entéléchie", - "mekany": "Mekanë", - "psyche": "Psyché", - "scoria": "Scorie", - "cephalydifficulty": "Difficulté de la Céphalie", - "maneuvers": "Manoeuvres", - "annency": "Anence", - "iscollective": "Collective", - "ismultiple": "Multiple", - "description": "Description", - "location": "Lieu", - "characters": "Personnages", - "enhancements": "Améliorations", - "oniricform": "Forme Onorique (Bohême)", - "ideals": "Idéaux", - "politic": "Idéaux politiques", - "boheme": "Bohême", - "annencybonus": "Bonus d'Anence", - "bornplace": "Lieu de naissance", - "residence": "Résidence", - "origin": "Origine", - "childhood": "Enfance", - "bonus": "Bonus" + "competence": "Competence", + "arme": "Arme", + "equipement": "Equipement", + "armure": "Armure", + "grace": "Grace", + "origine": "Origine", + "education": "Education" } } } \ No newline at end of file diff --git a/modules/actors/tedeum-actor-sheet.js b/modules/actors/tedeum-actor-sheet.js index c636aae..3d57e54 100644 --- a/modules/actors/tedeum-actor-sheet.js +++ b/modules/actors/tedeum-actor-sheet.js @@ -42,6 +42,7 @@ export class TeDeumActorPJSheet extends ActorSheet { providence: this.actor.prepareProvidence(), arbreCompetences: this.actor.prepareArbreCompetences(), equipements: this.actor.getEquipements(), + armures: this.actor.getArmures(), graces: this.actor.getGraces(), description: await TextEditor.enrichHTML(this.object.system.description, { async: true }), notes: await TextEditor.enrichHTML(this.object.system.notes, { async: true }), diff --git a/modules/actors/tedeum-actor.js b/modules/actors/tedeum-actor.js index acac15c..e4042c2 100644 --- a/modules/actors/tedeum-actor.js +++ b/modules/actors/tedeum-actor.js @@ -34,6 +34,16 @@ export class TeDeumActor extends Actor { return actor; } + if (data.type == 'pj') { + const skills = await TeDeumUtility.loadCompendium("fvtt-te-deum.competences") + data.items = data.items || [] + for (let skill of skills) { + if (skill.system.isBase || skill.system.score == 1) { + data.items.push(skill.toObject()) + } + } + } + return super.create(data, options); } diff --git a/modules/common/tedeum-config.js b/modules/common/tedeum-config.js index 0ebd6e7..4ce4df2 100644 --- a/modules/common/tedeum-config.js +++ b/modules/common/tedeum-config.js @@ -123,7 +123,7 @@ export const TEDEUM_CONFIG = { facile: { label: "Facile", value: 5 }, pardefaut: { label: "Par Défaut", value: 7 }, malaise: { label: "Malaisé", value: 9 }, - difficile: { label: "difficile", value: 11 }, + difficile: { label: "Difficile", value: 11 }, perilleux: { label: "Perilleux", value: 13 }, desespere: { label: "Désespéré", value: 15 } }, diff --git a/modules/common/tedeum-utility.js b/modules/common/tedeum-utility.js index 1410c08..a1896b8 100644 --- a/modules/common/tedeum-utility.js +++ b/modules/common/tedeum-utility.js @@ -133,36 +133,44 @@ export class TeDeumUtility { return actor } + /* -------------------------------------------- */ /* -------------------------------------------- */ + static async manageOpposition(rollData) { + if (!this.currentOpposition) { + // Store rollData as current GM opposition + this.currentOpposition = rollData + ui.notifications.info("Opposition démarrée avec " + rollData.alias ); + } else { + // Perform the opposition + let rWinner = this.currentOpposition + let rLooser = rollData + if (rWinner.total < rLooser.total) { + rWinner = rollData + rLooser = this.currentOpposition + } + this.currentOpposition = undefined // Reset opposition + let oppositionData = { + winner: rWinner, + looser: rLooser + } + let msg = await this.createChatWithRollMode(rollData.alias, { + content: await renderTemplate(`systems/fvtt-te-deum/templates/chat/chat-opposition-result.hbs`, oppositionData) + }) + await msg.setFlag("world", "te-deum-rolldata", rollData) + console.log("Rolldata result", rollData) + } + } + /* -------------------------------------------- */ /* -------------------------------------------- */ static async chatListeners(html) { - html.on("click", '.button-select-confront', event => { + html.on("click", '.chat-command-button', event => { let messageId = TeDeumUtility.findChatMessageId(event.currentTarget) let message = game.messages.get(messageId) let rollData = message.getFlag("world", "te-deum-rolldata") - ui.notifications.info( game.i18n.localize("ECRY.chat.confrontselect")) - TeDeumUtility.manageConfrontation(rollData) + if (rollData) { + TeDeumUtility.manageOpposition(rollData, messageId) + } }) - html.on("click", '.button-apply-cephaly-difficulty', event => { - let messageId = TeDeumUtility.findChatMessageId(event.currentTarget) - let message = game.messages.get(messageId) - let rollData = message.getFlag("world", "te-deum-rolldata") - let difficulty = $("#" + rollData.rollId + "-cephaly-difficulty").val() - TeDeumUtility.manageCephalyDifficulty(rollData, difficulty) - }) - html.on("click", '.button-apply-impact', event => { - let messageId = TeDeumUtility.findChatMessageId(event.currentTarget) - let message = game.messages.get(messageId) - let actor = game.actors.get($(event.currentTarget).data("actor-id")) - actor.modifyImpact($(event.currentTarget).data("impact-type"), $(event.currentTarget).data("impact"), 1) - }) - html.on("click", '.button-apply-bonus', event => { - let messageId = TeDeumUtility.findChatMessageId(event.currentTarget) - let message = game.messages.get(messageId) - let actor = game.actors.get($(event.currentTarget).data("actor-id")) - actor.modifyConfrontBonus($(event.currentTarget).data("bonus")) - }) - } /* -------------------------------------------- */ diff --git a/modules/data/tedeum-schema-pj.js b/modules/data/tedeum-schema-pj.js index bb1c458..c826f17 100644 --- a/modules/data/tedeum-schema-pj.js +++ b/modules/data/tedeum-schema-pj.js @@ -46,7 +46,9 @@ export class TeDeumPJSchema extends foundry.abstract.TypeDataModel { schema.statutocial = new fields.StringField({ required: false, blank: true, initial: undefined }); schema.chargestitre = new fields.StringField({ required: false, blank: true, initial: undefined }); schema.charges = new fields.StringField({ required: false, blank: true, initial: undefined }); - + schema.religion = new fields.StringField({ required: false, blank: true, initial: undefined }); + schema.lieunaissance = new fields.StringField({ required: false, blank: true, initial: undefined }); + return schema; } } diff --git a/packs/competences/000099.log b/packs/competences/000106.log similarity index 100% rename from packs/competences/000099.log rename to packs/competences/000106.log diff --git a/packs/competences/CURRENT b/packs/competences/CURRENT index af00d34..2a5d251 100644 --- a/packs/competences/CURRENT +++ b/packs/competences/CURRENT @@ -1 +1 @@ -MANIFEST-000097 +MANIFEST-000105 diff --git a/packs/competences/LOG b/packs/competences/LOG index a8643ff..69298a0 100644 --- a/packs/competences/LOG +++ b/packs/competences/LOG @@ -1,8 +1,3 @@ -2024/06/04-21:04:01.195163 7f1e64e006c0 Recovering log #94 -2024/06/04-21:04:01.205547 7f1e64e006c0 Delete type=3 #92 -2024/06/04-21:04:01.205638 7f1e64e006c0 Delete type=0 #94 -2024/06/04-21:04:48.464146 7f1e5da006c0 Level-0 table #100: started -2024/06/04-21:04:48.464176 7f1e5da006c0 Level-0 table #100: 0 bytes OK -2024/06/04-21:04:48.500422 7f1e5da006c0 Delete type=0 #98 -2024/06/04-21:04:48.500602 7f1e5da006c0 Manual compaction at level-0 from '!folders!4OPhigzcPv46qbWW' @ 72057594037927935 : 1 .. '!items!zwC0H39ar5Pl1l92' @ 0 : 0; will stop at (end) -2024/06/04-21:04:48.500619 7f1e5da006c0 Manual compaction at level-1 from '!folders!4OPhigzcPv46qbWW' @ 72057594037927935 : 1 .. '!items!zwC0H39ar5Pl1l92' @ 0 : 0; will stop at (end) +2024/06/06-16:27:16.818495 7fcfb2a006c0 Recovering log #103 +2024/06/06-16:27:16.829929 7fcfb2a006c0 Delete type=3 #101 +2024/06/06-16:27:16.830004 7fcfb2a006c0 Delete type=0 #103 diff --git a/packs/competences/LOG.old b/packs/competences/LOG.old index d3b58a1..dbb5ef9 100644 --- a/packs/competences/LOG.old +++ b/packs/competences/LOG.old @@ -1,15 +1,8 @@ -2024/06/02-20:22:04.658032 7f2f302006c0 Recovering log #90 -2024/06/02-20:22:04.712047 7f2f302006c0 Delete type=3 #88 -2024/06/02-20:22:04.712099 7f2f302006c0 Delete type=0 #90 -2024/06/02-20:58:31.396230 7f2f2ee006c0 Level-0 table #95: started -2024/06/02-20:58:31.399756 7f2f2ee006c0 Level-0 table #95: 28482 bytes OK -2024/06/02-20:58:31.406774 7f2f2ee006c0 Delete type=0 #93 -2024/06/02-20:58:31.406940 7f2f2ee006c0 Manual compaction at level-0 from '!folders!4OPhigzcPv46qbWW' @ 72057594037927935 : 1 .. '!items!zwC0H39ar5Pl1l92' @ 0 : 0; will stop at (end) -2024/06/02-20:58:31.406967 7f2f2ee006c0 Manual compaction at level-1 from '!folders!4OPhigzcPv46qbWW' @ 72057594037927935 : 1 .. '!items!zwC0H39ar5Pl1l92' @ 0 : 0; will stop at '!items!zwC0H39ar5Pl1l92' @ 390 : 1 -2024/06/02-20:58:31.406972 7f2f2ee006c0 Compacting 1@1 + 1@2 files -2024/06/02-20:58:31.410472 7f2f2ee006c0 Generated table #96@1: 113 keys, 15164 bytes -2024/06/02-20:58:31.410495 7f2f2ee006c0 Compacted 1@1 + 1@2 files => 15164 bytes -2024/06/02-20:58:31.416350 7f2f2ee006c0 compacted to: files[ 0 0 1 0 0 0 0 ] -2024/06/02-20:58:31.416439 7f2f2ee006c0 Delete type=2 #5 -2024/06/02-20:58:31.416583 7f2f2ee006c0 Delete type=2 #95 -2024/06/02-20:58:31.416682 7f2f2ee006c0 Manual compaction at level-1 from '!items!zwC0H39ar5Pl1l92' @ 390 : 1 .. '!items!zwC0H39ar5Pl1l92' @ 0 : 0; will stop at (end) +2024/06/05-23:00:55.185946 7f1e64e006c0 Recovering log #99 +2024/06/05-23:00:55.196553 7f1e64e006c0 Delete type=3 #97 +2024/06/05-23:00:55.196655 7f1e64e006c0 Delete type=0 #99 +2024/06/05-23:35:36.332443 7f1e5da006c0 Level-0 table #104: started +2024/06/05-23:35:36.332474 7f1e5da006c0 Level-0 table #104: 0 bytes OK +2024/06/05-23:35:36.338443 7f1e5da006c0 Delete type=0 #102 +2024/06/05-23:35:36.338563 7f1e5da006c0 Manual compaction at level-0 from '!folders!4OPhigzcPv46qbWW' @ 72057594037927935 : 1 .. '!items!zwC0H39ar5Pl1l92' @ 0 : 0; will stop at (end) +2024/06/05-23:35:36.338586 7f1e5da006c0 Manual compaction at level-1 from '!folders!4OPhigzcPv46qbWW' @ 72057594037927935 : 1 .. '!items!zwC0H39ar5Pl1l92' @ 0 : 0; will stop at (end) diff --git a/packs/competences/MANIFEST-000097 b/packs/competences/MANIFEST-000105 similarity index 74% rename from packs/competences/MANIFEST-000097 rename to packs/competences/MANIFEST-000105 index 54b0efd..cda02fd 100644 Binary files a/packs/competences/MANIFEST-000097 and b/packs/competences/MANIFEST-000105 differ diff --git a/packs/equipment/000160.log b/packs/equipment/000167.log similarity index 100% rename from packs/equipment/000160.log rename to packs/equipment/000167.log diff --git a/packs/equipment/CURRENT b/packs/equipment/CURRENT index 9bad6d5..830373b 100644 --- a/packs/equipment/CURRENT +++ b/packs/equipment/CURRENT @@ -1 +1 @@ -MANIFEST-000158 +MANIFEST-000166 diff --git a/packs/equipment/LOG b/packs/equipment/LOG index 1aac040..62b44b7 100644 --- a/packs/equipment/LOG +++ b/packs/equipment/LOG @@ -1,7 +1,3 @@ -2024/06/04-21:04:01.182320 7f1e5f4006c0 Recovering log #156 -2024/06/04-21:04:01.193373 7f1e5f4006c0 Delete type=3 #154 -2024/06/04-21:04:01.193473 7f1e5f4006c0 Delete type=0 #156 -2024/06/04-21:04:48.422044 7f1e5da006c0 Level-0 table #161: started -2024/06/04-21:04:48.422074 7f1e5da006c0 Level-0 table #161: 0 bytes OK -2024/06/04-21:04:48.463998 7f1e5da006c0 Delete type=0 #159 -2024/06/04-21:04:48.500588 7f1e5da006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end) +2024/06/06-16:27:16.805501 7fcfb8e006c0 Recovering log #164 +2024/06/06-16:27:16.816044 7fcfb8e006c0 Delete type=3 #162 +2024/06/06-16:27:16.816128 7fcfb8e006c0 Delete type=0 #164 diff --git a/packs/equipment/LOG.old b/packs/equipment/LOG.old index f07c042..2425f32 100644 --- a/packs/equipment/LOG.old +++ b/packs/equipment/LOG.old @@ -1,7 +1,7 @@ -2024/06/02-20:22:04.602737 7f2f2f8006c0 Recovering log #152 -2024/06/02-20:22:04.655957 7f2f2f8006c0 Delete type=3 #150 -2024/06/02-20:22:04.656073 7f2f2f8006c0 Delete type=0 #152 -2024/06/02-20:58:31.369733 7f2f2ee006c0 Level-0 table #157: started -2024/06/02-20:58:31.369760 7f2f2ee006c0 Level-0 table #157: 0 bytes OK -2024/06/02-20:58:31.376040 7f2f2ee006c0 Delete type=0 #155 -2024/06/02-20:58:31.376155 7f2f2ee006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end) +2024/06/05-23:00:55.173863 7f1e5ea006c0 Recovering log #160 +2024/06/05-23:00:55.183501 7f1e5ea006c0 Delete type=3 #158 +2024/06/05-23:00:55.183581 7f1e5ea006c0 Delete type=0 #160 +2024/06/05-23:35:36.305356 7f1e5da006c0 Level-0 table #165: started +2024/06/05-23:35:36.305385 7f1e5da006c0 Level-0 table #165: 0 bytes OK +2024/06/05-23:35:36.311763 7f1e5da006c0 Delete type=0 #163 +2024/06/05-23:35:36.321710 7f1e5da006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end) diff --git a/packs/equipment/MANIFEST-000158 b/packs/equipment/MANIFEST-000158 deleted file mode 100644 index 530327a..0000000 Binary files a/packs/equipment/MANIFEST-000158 and /dev/null differ diff --git a/packs/equipment/MANIFEST-000166 b/packs/equipment/MANIFEST-000166 new file mode 100644 index 0000000..d0677a5 Binary files /dev/null and b/packs/equipment/MANIFEST-000166 differ diff --git a/postcss/tedeum.css b/postcss/tedeum.css index e019393..ed6a86e 100644 --- a/postcss/tedeum.css +++ b/postcss/tedeum.css @@ -757,6 +757,12 @@ ul, li { font-size: 1.2rem; padding: 4px; } +.chat-actor-name-opposition { + font-weight: bold; + font-family: MailartRubberstamp; + font-size: 0.9rem; + padding: 4px; +} .chat-result-success { color: darkgreen; } @@ -767,6 +773,15 @@ ul, li { width: 64px; height: 64px; } +.chat-command-img { + border: 0px; + width: 32px; + height: 32px; +} +.chat-result-column { + min-width: 70%; + width: 70%; +} .roll-dialog-header { height: 52px; } diff --git a/styles/tedeum.css b/styles/tedeum.css index a14251a..98c0beb 100644 --- a/styles/tedeum.css +++ b/styles/tedeum.css @@ -701,6 +701,12 @@ ul, li { font-size: 1.2rem; padding: 4px; } +.chat-actor-name-opposition { + font-weight: bold; + font-family: MailartRubberstamp; + font-size: 0.9rem; + padding: 4px; +} .chat-result-success { color: darkgreen; } @@ -711,6 +717,15 @@ ul, li { width: 64px; height: 64px; } +.chat-command-img { + border: 0px; + width: 32px; + height: 32px; +} +.chat-result-column { + min-width: 70%; + width: 70%; +} .roll-dialog-header { height: 52px; } diff --git a/system.json b/system.json index 855b726..e97f6b9 100644 --- a/system.json +++ b/system.json @@ -49,7 +49,7 @@ "manifest": "https://www.uberwald.me/gitea/public/fvtt-te-deum/raw/branch/master/system.json", "compatibility": { "minimum": "11", - "verified": "11" + "verified": "12" }, "id": "fvtt-te-deum", "primaryTokenAttribute": "secondary.health", @@ -62,7 +62,22 @@ }, "title": "Te Deum pour Un Massacre, le Jeu de Rôles", "url": "https://www.uberwald.me/gitea/public/fvtt-te-deum", - "version": "11.0.1", - "download": "https://www.uberwald.me/gitea/public/fvtt-te-deum/archive/fvtt-te-deum-v11.0.0.zip", - "background": "" + "version": "12.0.0", + "download": "https://www.uberwald.me/gitea/public/fvtt-te-deum/archive/fvtt-te-deum-v12.0.0.zip", + "background": "", + "flags": { + "hotReload": { + "extensions": [ + "css", + "hbs", + "json" + ], + "paths": [ + "styles/", + "lang/", + "assets/", + "templates/" + ] + } + } } \ No newline at end of file diff --git a/templates/actors/actor-sheet.hbs b/templates/actors/actor-sheet.hbs index f954800..fcb93dd 100644 --- a/templates/actors/actor-sheet.hbs +++ b/templates/actors/actor-sheet.hbs @@ -108,7 +108,7 @@ -