From 936d52550374a3119253bdd51dfbb2c9bb4b82d8 Mon Sep 17 00:00:00 2001 From: LeRatierBretonnien Date: Sat, 10 Jan 2026 22:35:39 +0100 Subject: [PATCH] Fix after testing --- less/simple-converted.less | 1260 ++++++++++++++++- .../applications/heritiers-roll-dialog.mjs | 130 +- .../applications/sheets/accessoire-sheet.mjs | 2 +- modules/applications/sheets/arme-sheet.mjs | 2 +- .../sheets/atoutfeerique-sheet.mjs | 2 +- .../applications/sheets/avantage-sheet.mjs | 2 +- .../applications/sheets/base-actor-sheet.mjs | 71 +- .../sheets/capacitenaturelle-sheet.mjs | 2 +- .../applications/sheets/competence-sheet.mjs | 48 +- modules/applications/sheets/contact-sheet.mjs | 2 +- .../applications/sheets/desavantage-sheet.mjs | 2 +- .../applications/sheets/equipement-sheet.mjs | 2 +- modules/applications/sheets/fee-sheet.mjs | 2 +- .../applications/sheets/personnage-sheet.mjs | 4 +- modules/applications/sheets/pnj-sheet.mjs | 4 +- modules/applications/sheets/pouvoir-sheet.mjs | 2 +- modules/applications/sheets/profil-sheet.mjs | 2 +- .../applications/sheets/protection-sheet.mjs | 2 +- modules/applications/sheets/sort-sheet.mjs | 10 +- modules/heritiers-actor-sheet.js | 14 + modules/heritiers-actor.js | 58 +- modules/heritiers-item-sheet.js | 31 +- modules/heritiers-main.js | 38 +- modules/heritiers-roll-dialog.js | 4 +- modules/heritiers-utility.js | 34 +- modules/models/competence.mjs | 2 +- modules/models/contact.mjs | 2 +- .../{000302.log => 000310.log} | 0 packs/archetypes-fees/CURRENT | 2 +- packs/archetypes-fees/LOG | 16 +- packs/archetypes-fees/LOG.old | 16 +- .../{MANIFEST-000300 => MANIFEST-000308} | Bin 174 -> 174 bytes .../{000302.log => 000310.log} | 0 packs/armes-et-protection/CURRENT | 2 +- packs/armes-et-protection/LOG | 16 +- packs/armes-et-protection/LOG.old | 16 +- .../{MANIFEST-000300 => MANIFEST-000308} | Bin 176 -> 176 bytes .../{000302.log => 000310.log} | 0 packs/atouts-feeriques/CURRENT | 2 +- packs/atouts-feeriques/LOG | 16 +- packs/atouts-feeriques/LOG.old | 16 +- .../{MANIFEST-000300 => MANIFEST-000308} | Bin 176 -> 176 bytes packs/avantages/{000302.log => 000310.log} | 0 packs/avantages/CURRENT | 2 +- packs/avantages/LOG | 16 +- packs/avantages/LOG.old | 16 +- .../{MANIFEST-000300 => MANIFEST-000308} | Bin 176 -> 176 bytes packs/capacites/{000302.log => 000310.log} | 0 packs/capacites/CURRENT | 2 +- packs/capacites/LOG | 16 +- packs/capacites/LOG.old | 16 +- .../{MANIFEST-000300 => MANIFEST-000308} | Bin 174 -> 174 bytes packs/competences/{000308.log => 000316.log} | 0 packs/competences/CURRENT | 2 +- packs/competences/LOG | 16 +- packs/competences/LOG.old | 16 +- .../{MANIFEST-000306 => MANIFEST-000314} | Bin 178 -> 178 bytes packs/desavantages/{000302.log => 000310.log} | 0 packs/desavantages/CURRENT | 2 +- packs/desavantages/LOG | 16 +- packs/desavantages/LOG.old | 16 +- .../{MANIFEST-000300 => MANIFEST-000308} | Bin 176 -> 176 bytes packs/journaux/{000020.log => 000028.log} | 0 packs/journaux/CURRENT | 2 +- packs/journaux/LOG | 16 +- packs/journaux/LOG.old | 16 +- .../{MANIFEST-000018 => MANIFEST-000026} | Bin 161 -> 161 bytes packs/magie-sorts/{000105.log => 000114.log} | 0 packs/magie-sorts/CURRENT | 2 +- packs/magie-sorts/LOG | 23 +- packs/magie-sorts/LOG.old | 16 +- packs/magie-sorts/MANIFEST-000103 | Bin 373 -> 0 bytes packs/magie-sorts/MANIFEST-000112 | Bin 0 -> 173 bytes packs/pouvoirs/{000303.log => 000311.log} | 0 packs/pouvoirs/CURRENT | 2 +- packs/pouvoirs/LOG | 16 +- packs/pouvoirs/LOG.old | 16 +- .../{MANIFEST-000301 => MANIFEST-000309} | Bin 176 -> 176 bytes packs/profils/{000300.log => 000308.log} | 0 packs/profils/CURRENT | 2 +- packs/profils/LOG | 14 +- packs/profils/LOG.old | 14 +- packs/profils/MANIFEST-000298 | Bin 69 -> 0 bytes packs/profils/MANIFEST-000306 | Bin 0 -> 69 bytes packs/scenes/{000271.log => 000279.log} | 0 packs/scenes/CURRENT | 2 +- packs/scenes/LOG | 16 +- packs/scenes/LOG.old | 16 +- .../{MANIFEST-000269 => MANIFEST-000277} | Bin 176 -> 176 bytes system.json | 62 + template.json.backup | 420 ++++++ templates/actor-pnj-sheet.hbs | 243 ++-- templates/actor-sheet.hbs | 467 +++--- templates/chat-generic-result-old.hbs | 176 +++ templates/chat-generic-result.hbs | 299 ++-- templates/item-accessoire-sheet.hbs | 6 +- ... => item-accessoire-sheet_deprecated.html} | 4 +- ...t.html => item-arme-sheet_deprecated.html} | 4 +- ... item-atoutfeerique-sheet_deprecated.html} | 4 +- ...ml => item-avantage-sheet_deprecated.html} | 4 +- ...m-capacitenaturelle-sheet_deprecated.html} | 4 +- templates/item-competence-sheet.hbs | 22 +- ... => item-competence-sheet_deprecated.html} | 4 +- ...tml => item-contact-sheet_deprecated.html} | 4 +- ...=> item-desavantage-sheet_deprecated.html} | 4 +- ... => item-equipement-sheet_deprecated.html} | 4 +- ...et.html => item-fee-sheet_deprecated.html} | 4 +- ...tml => item-pouvoir-sheet_deprecated.html} | 4 +- ...html => item-profil-sheet_deprecated.html} | 4 +- ... => item-protection-sheet_deprecated.html} | 4 +- ...t.html => item-sort-sheet_deprecated.html} | 4 +- templates/partial-actor-equipment.hbs | 1 - templates/partial-actor-equipment.html | 23 - templates/partial-item-description.hbs | 5 +- templates/partial-item-header.hbs | 15 +- templates/partial-item-nav.hbs | 1 - templates/partial-utile-skills.hbs | 13 +- templates/partial-utile-skills.html | 48 - templates/roll-dialog-generic.hbs | 287 ++-- 119 files changed, 3193 insertions(+), 1096 deletions(-) rename packs/archetypes-fees/{000302.log => 000310.log} (100%) rename packs/archetypes-fees/{MANIFEST-000300 => MANIFEST-000308} (73%) rename packs/armes-et-protection/{000302.log => 000310.log} (100%) rename packs/armes-et-protection/{MANIFEST-000300 => MANIFEST-000308} (72%) rename packs/atouts-feeriques/{000302.log => 000310.log} (100%) rename packs/atouts-feeriques/{MANIFEST-000300 => MANIFEST-000308} (72%) rename packs/avantages/{000302.log => 000310.log} (100%) rename packs/avantages/{MANIFEST-000300 => MANIFEST-000308} (72%) rename packs/capacites/{000302.log => 000310.log} (100%) rename packs/capacites/{MANIFEST-000300 => MANIFEST-000308} (73%) rename packs/competences/{000308.log => 000316.log} (100%) rename packs/competences/{MANIFEST-000306 => MANIFEST-000314} (71%) rename packs/desavantages/{000302.log => 000310.log} (100%) rename packs/desavantages/{MANIFEST-000300 => MANIFEST-000308} (72%) rename packs/journaux/{000020.log => 000028.log} (100%) rename packs/journaux/{MANIFEST-000018 => MANIFEST-000026} (79%) rename packs/magie-sorts/{000105.log => 000114.log} (100%) delete mode 100644 packs/magie-sorts/MANIFEST-000103 create mode 100644 packs/magie-sorts/MANIFEST-000112 rename packs/pouvoirs/{000303.log => 000311.log} (100%) rename packs/pouvoirs/{MANIFEST-000301 => MANIFEST-000309} (72%) rename packs/profils/{000300.log => 000308.log} (100%) delete mode 100644 packs/profils/MANIFEST-000298 create mode 100644 packs/profils/MANIFEST-000306 rename packs/scenes/{000271.log => 000279.log} (100%) rename packs/scenes/{MANIFEST-000269 => MANIFEST-000277} (72%) create mode 100644 template.json.backup create mode 100644 templates/chat-generic-result-old.hbs rename templates/{item-accessoire-sheet.html => item-accessoire-sheet_deprecated.html} (96%) rename templates/{item-arme-sheet.html => item-arme-sheet_deprecated.html} (98%) rename templates/{item-atoutfeerique-sheet.html => item-atoutfeerique-sheet_deprecated.html} (88%) rename templates/{item-avantage-sheet.html => item-avantage-sheet_deprecated.html} (88%) rename templates/{item-capacitenaturelle-sheet.html => item-capacitenaturelle-sheet_deprecated.html} (98%) rename templates/{item-competence-sheet.html => item-competence-sheet_deprecated.html} (98%) rename templates/{item-contact-sheet.html => item-contact-sheet_deprecated.html} (96%) rename templates/{item-desavantage-sheet.html => item-desavantage-sheet_deprecated.html} (88%) rename templates/{item-equipement-sheet.html => item-equipement-sheet_deprecated.html} (96%) rename templates/{item-fee-sheet.html => item-fee-sheet_deprecated.html} (98%) rename templates/{item-pouvoir-sheet.html => item-pouvoir-sheet_deprecated.html} (99%) rename templates/{item-profil-sheet.html => item-profil-sheet_deprecated.html} (93%) rename templates/{item-protection-sheet.html => item-protection-sheet_deprecated.html} (97%) rename templates/{item-sort-sheet.html => item-sort-sheet_deprecated.html} (99%) delete mode 100644 templates/partial-actor-equipment.html delete mode 100644 templates/partial-utile-skills.html diff --git a/less/simple-converted.less b/less/simple-converted.less index 81165f3..6c9857a 100644 --- a/less/simple-converted.less +++ b/less/simple-converted.less @@ -49,17 +49,107 @@ --debug-box-shadow-red: inset 0 0 2px red; --debug-box-shadow-blue: inset 0 0 2px blue; --debug-box-shadow-green: inset 0 0 2px green; + + /* =================== 3. OVERRIDE FOUNDRY BACKGROUND ======= */ + --background: #e8e4d8; + } + + body { + --input-height: 1.8rem; } /*@import url("https://fonts.googleapis.com/css2?family=Martel:wght@400;800&family=Roboto:wght@300;400;500&display=swap");*/ + + /* Override Foundry's .application background and remove all padding */ + .application.sheet.item, + .application.sheet.actor { + background: #e8e4d8 url("../assets/ui/fiche_background_simple_01.webp") repeat !important; + padding: 0 !important; + margin: 0 !important; + } + + /* Remove ALL margins from forms, sections, headers in sheets */ + .application.sheet.item form, + .application.sheet.actor form, + .window-app.sheet.item form, + .window-app.sheet.actor form, + .application.sheet.item > section, + .application.sheet.actor > section, + .window-app.sheet.item > section, + .window-app.sheet.actor > section { + margin: 0 !important; + padding: 0 !important; + } + + /* Remove all margins and padding from item sheet headers */ + .application.sheet.item .sheet-header, + .application.sheet.actor .sheet-header, + .window-app.sheet.item .sheet-header, + .window-app.sheet.actor .sheet-header { + margin: 0 !important; + padding: 0 !important; + } + + /* Fix item sheet image size */ + .application.sheet.item header.sheet-header img.item-sheet-img, + .window-app.sheet.item header.sheet-header img.item-sheet-img { + flex: 0 0 64px; + width: 64px; + height: 64px; + max-width: 64px; + max-height: 64px; + margin: 4px; + object-fit: cover; + } + + /* Adjust header fields width */ + .application.sheet.item .header-fields, + .window-app.sheet.item .header-fields { + flex: 0 0 30rem; + width: 30rem; + margin-right: 10px; + } + + /* Style chat button in item header */ + .application.sheet.item .header-actions, + .window-app.sheet.item .header-actions { + display: flex; + align-items: center; + gap: 5px; + margin-left: auto; + } + + .application.sheet.item .header-actions button, + .window-app.sheet.item .header-actions button { + background: rgba(0, 0, 0, 0.1); + border: 1px solid #999; + border-radius: 3px; + padding: 5px 10px; + cursor: pointer; + } + + .application.sheet.item .header-actions button:hover, + .window-app.sheet.item .header-actions button:hover { + background: rgba(0, 0, 0, 0.2); + } + /* Global styles & Font */ .window-app { font-family: GismondaFG; text-align: justify; font-size: 12px; letter-spacing: 1px; - background-image: url("../assets/ui/fiche_background_simple_01.webp"); - background-repeat: repeat; + background: #e8e4d8 url("../assets/ui/fiche_background_simple_01.webp") repeat !important; + } + + /* Ensure item sheets also have the background */ + .window-app.sheet.item { + background: #e8e4d8 url("../assets/ui/fiche_background_simple_01.webp") repeat !important; + } + + /* Ensure actor sheets also have the background */ + .window-app.sheet.actor { + background: #e8e4d8 url("../assets/ui/fiche_background_simple_01.webp") repeat !important; } /* Fonts */ @@ -107,6 +197,15 @@ background: rgba(0, 0, 0, 0.75); } + /* Better backgrounds for sheet windows */ + .window-app.sheet.item .window-header, + .window-app.sheet.actor .window-header { + background-image: url("../assets/ui/fiche_background_simple_01.webp") !important; + background-repeat: repeat !important; + background-color: rgba(0, 0, 0, 0.3) !important; + background-blend-mode: multiply; + } + .page-heading { color: #151c1f; } @@ -114,8 +213,22 @@ .window-app.sheet .window-content { margin: 0; padding: 0; - background-image: url("../assets/ui/fiche_background_simple_01.webp"); - background-repeat: repeat; + background-image: url("../assets/ui/fiche_background_simple_01.webp") !important; + background-repeat: repeat !important; + } + + /* Ensure item sheets window-content also has the background */ + .window-app.sheet.item .window-content, + .window-app.sheet.item form { + background-image: url("../assets/ui/fiche_background_simple_01.webp") !important; + background-repeat: repeat !important; + } + + /* Ensure actor sheets window-content and form also have the background */ + .window-app.sheet.actor .window-content, + .window-app.sheet.actor form { + background-image: url("../assets/ui/fiche_background_simple_01.webp") !important; + background-repeat: repeat !important; } .strong-text { @@ -277,7 +390,8 @@ -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; - margin-bottom: 10px; + margin: 0; + padding: 0; background-image: url("../assets/ui/fiche_background_simple_01.webp"); } @@ -362,7 +476,6 @@ } .fvtt-les-heritiers .sheet-body, - .fvtt-les-heritiers .sheet-body .tab, .fvtt-les-heritiers .sheet-body .tab .editor { height: 100%; font-size: 0.9rem; @@ -539,8 +652,256 @@ width: 1px; } - .sheet .tab[data-tab] { + .fvtt-les-heritiers.sheet .tab[data-tab] { padding: 0; + background-image: url("../assets/ui/fiche_background_simple_01.webp"); + background-repeat: repeat; + color: #000; + } + + /* Spécialités title should be black */ + .fvtt-les-heritiers.sheet h3.specialites-title { + color: #000; + } + + /* Add padding to description tab */ + .fvtt-les-heritiers.sheet .tab[data-tab="description"] { + padding: 0.5rem; + } + + /* AppV2 Item Sheets - Flex Container Setup */ + .fvtt-les-heritiers.item section { + display: flex; + flex-direction: column; + height: 100%; + overflow: hidden; + padding: 0; + margin: 0; + } + + /* AppV2 Item Sheets - Header and Nav */ + .fvtt-les-heritiers.item header.sheet-header { + flex: 0 0 auto; + } + + .fvtt-les-heritiers.item nav.sheet-tabs, + .fvtt-les-heritiers.item nav.tabs { + flex: 0 0 auto; + } + + /* AppV2 Item Sheets - Tabs with scrolling */ + .fvtt-les-heritiers.item .tab[data-tab] { + display: none; + padding: 0.5rem; + overflow-y: auto; + flex: 1 1 auto; + } + + .fvtt-les-heritiers.item .tab[data-tab].active { + display: block; + } + + /* AppV2 Actor Sheets - Flex Container Setup */ + .fvtt-les-heritiers.actor section { + display: flex; + flex-direction: column; + height: 100%; + overflow: hidden; + padding: 0; + margin: 0; + } + + /* AppV2 Actor Sheets - Header and Nav */ + .fvtt-les-heritiers.actor header.sheet-header { + flex: 0 0 auto; + } + + .fvtt-les-heritiers.actor nav.sheet-tabs, + .fvtt-les-heritiers.actor nav.tabs { + flex: 0 0 auto; + } + + /* AppV2 Actor Sheets - Tabs with scrolling */ + .fvtt-les-heritiers.actor .tab[data-tab] { + display: none; + padding: 0.5rem; + overflow-y: auto; + flex: 1 1 auto; + } + + .fvtt-les-heritiers.actor .tab[data-tab].active { + display: block; + } + + /* Redesigned skill category headers */ + .fvtt-les-heritiers.actor .sheet-box { + margin-bottom: 0.5rem; + } + + .fvtt-les-heritiers.actor .items-title-text { + font-size: 0.95rem; + font-weight: bold; + font-family: GismondaFG; + color: #2c1810; + padding: 1px 4px; + background: linear-gradient(to right, rgba(139, 90, 43, 0.3), transparent); + border-left: 3px solid #8b5a2b; + display: inline-block; + margin: 0; + line-height: 1.1; + } + + .fvtt-les-heritiers.actor .items-title-text:parent(h3) { + margin: 0; + line-height: 1.2; + } + + .fvtt-les-heritiers.actor .sheet-box h3 { + margin: 0; + padding: 0; + line-height: 1.2; + } + + /* Compact the category header row */ + .fvtt-les-heritiers.actor .sheet-box .item-list > li:first-child { + padding: 0; + margin-bottom: 2px; + border-bottom: 1px solid rgba(139, 90, 43, 0.3); + min-height: auto; + } + + /* Style "Niveau" label in category headers */ + .fvtt-les-heritiers.actor .sheet-box .short-label { + font-size: 0.65rem; + font-weight: 600; + color: #2c1810; + text-transform: uppercase; + line-height: 1.2; + margin-left: 0.5rem; + } + + /* Magie section headers - make them prominent */ + .fvtt-les-heritiers.actor .magie-section-header { + background: linear-gradient(to right, rgba(139, 105, 20, 0.15), rgba(139, 105, 20, 0.05)); + border-left: 4px solid #8b6914; + padding: 0.4rem 0.5rem; + margin-bottom: 0.3rem; + margin-top: 0.5rem; + border-radius: 3px; + } + + .fvtt-les-heritiers.actor .magie-section-title { + display: flex; + align-items: center; + gap: 0.5rem; + flex: 1; + margin: 0; + padding: 0; + white-space: nowrap; + overflow: visible; + + .items-title-text { + font-size: 1.2rem; + padding: 3px 8px; + background: none; + border-left: none; + white-space: nowrap; + + a { + color: #8b6914; + font-weight: bold; + white-space: nowrap; + } + } + } + + .fvtt-les-heritiers.actor .magie-rang-name { + font-size: 0.85rem; + color: #6d5410; + font-style: italic; + margin-left: 0.3rem; + white-space: nowrap; + } + + + /* Force dark text color for labels and inputs in item sheets */ + .application.sheet.item .tab label, + .application.sheet.item .tab input, + .application.sheet.item .tab select, + .application.sheet.item .tab textarea, + .window-app.sheet.item .tab label, + .window-app.sheet.item .tab input, + .window-app.sheet.item .tab select, + .window-app.sheet.item .tab textarea { + color: #000 !important; + } + + /* Force dark text color for labels and inputs in actor sheets */ + .application.sheet.actor label, + .application.sheet.actor input, + .application.sheet.actor select, + .application.sheet.actor textarea, + .window-app.sheet.actor label, + .window-app.sheet.actor input, + .window-app.sheet.actor select, + .window-app.sheet.actor textarea { + color: #000 !important; + } + + /* Add light background to inputs and selects in item sheets */ + .application.sheet.item .tab input:not([type="checkbox"]):not([type="radio"]), + .application.sheet.item .tab select, + .application.sheet.item .tab textarea, + .window-app.sheet.item .tab input:not([type="checkbox"]):not([type="radio"]), + .window-app.sheet.item .tab select, + .window-app.sheet.item .tab textarea, + .application.sheet.item .sheet-header input:not([type="checkbox"]):not([type="radio"]), + .application.sheet.item .sheet-header select, + .window-app.sheet.item .sheet-header input:not([type="checkbox"]):not([type="radio"]), + .window-app.sheet.item .sheet-header select { + background: rgba(252, 248, 240, 0.95) !important; + border: 1px solid #999 !important; + color: #000 !important; + } + + /* Add light background to inputs and selects in actor sheets */ + .application.sheet.actor input:not([type="checkbox"]):not([type="radio"]), + .application.sheet.actor select, + .application.sheet.actor textarea, + .window-app.sheet.actor input:not([type="checkbox"]):not([type="radio"]), + .window-app.sheet.actor select, + .window-app.sheet.actor textarea { + background: rgba(252, 248, 240, 0.95) !important; + border: 1px solid #999 !important; + color: #000 !important; + } + + /* Center number inputs in all sheets */ + .application.sheet input[type="number"], + .application.sheet input[data-dtype="Number"], + .window-app.sheet input[type="number"], + .window-app.sheet input[data-dtype="Number"] { + text-align: center; + } + + /* Ensure checkboxes don't get background */ + .application.sheet.item input[type="checkbox"], + .application.sheet.item input[type="radio"], + .window-app.sheet.item input[type="checkbox"], + .window-app.sheet.item input[type="radio"], + .application.sheet.actor input[type="checkbox"], + .application.sheet.actor input[type="radio"], + .window-app.sheet.actor input[type="checkbox"], + .window-app.sheet.actor input[type="radio"] { + background: transparent !important; + width: auto !important; + } + + /* Ensure all tabs in item and actor sheets have backgrounds */ + .fvtt-les-heritiers .sheet-body .tab { + background-image: url("../assets/ui/fiche_background_simple_01.webp") !important; + background-repeat: repeat !important; + color: #000 !important; } section.sheet-body:after { @@ -715,11 +1076,359 @@ padding-top: 7px; } + /* Roll Dialog Window Styling */ + .application.heritiers-roll-dialog .window-content { + padding: 0; + } + + .window-app.heritiers-roll-dialog .window-content { + margin: 0; + padding: 0; + } + + /* Roll Dialog Main Styling */ + .heritiers-roll-dialog { + background: #e8e4d8 url("../assets/ui/fiche_background_simple_01.webp") repeat !important; + font-family: GismondaFG; + + * { + color: #2a2a2a; + } + + /* Header */ + .dialog-header { + display: flex; + align-items: center; + gap: 8px; + padding: 6px; + background: rgba(139, 105, 20, 0.15); + border-bottom: 2px solid #8b6914; + margin-bottom: 0; + + .actor-icon { + width: 40px; + height: 40px; + border-radius: 4px; + border: 2px solid #8b6914; + object-fit: cover; + } + + .dialog-title { + flex: 1; + + h3 { + margin: 0; + font-size: 1rem; + color: #8b6914; + text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.8); + } + + .competence-name { + font-size: 0.8rem; + color: #6d5410; + margin-top: 2px; + font-style: italic; + } + } + } + + /* Content */ + .dialog-content { + padding: 6px; + max-height: 650px; + overflow-y: auto; + } + + /* Form Groups */ + .form-group { + margin-bottom: 6px; + + label { + display: block; + font-weight: bold; + color: #8b6914; + text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.5); + margin-bottom: 2px; + font-size: 0.85rem; + } + + input:not([type="checkbox"]), + select { + width: 100%; + padding: 4px 6px; + background: rgba(255, 255, 255, 0.8); + border: 1px solid rgba(100, 100, 100, 0.5); + border-radius: 3px; + color: #2a2a2a; + font-size: 0.9rem; + font-family: GismondaFG; + } + + input:not([type="checkbox"]):focus, + select:focus { + outline: none; + border-color: #8b6914; + box-shadow: 0 0 5px rgba(139, 105, 20, 0.6); + background: #ffffff; + } + + input:not([type="checkbox"]):disabled { + opacity: 0.7; + cursor: not-allowed; + background: rgba(200, 200, 200, 0.8); + color: #555; + } + + input[type="checkbox"] { + width: auto; + height: auto; + cursor: pointer; + accent-color: #8b6914; + margin: 0; + padding: 0; + } + } + + /* Info messages */ + .info-message { + padding: 5px 8px; + background: rgba(139, 105, 20, 0.1); + border-left: 3px solid #8b6914; + border-radius: 3px; + font-size: 0.8rem; + color: #2a2a2a; + margin-bottom: 6px; + font-style: italic; + } + + /* Special sections */ + .weapon-section, + .combat-modifiers { + background: rgba(139, 105, 20, 0.1); + padding: 6px; + border-radius: 4px; + border: 1px solid #8b6914; + margin-bottom: 8px; + } + + /* Dialog buttons */ + .dialog-buttons { + display: flex; + flex-wrap: wrap; + gap: 8px; + padding: 8px; + border-top: 2px solid #8b6914; + background: rgba(139, 105, 20, 0.1); + + button { + flex: 1 1 auto; + min-width: 100px; + padding: 6px 10px; + border: none; + border-radius: 4px; + font-weight: bold; + cursor: pointer; + transition: all 0.2s ease; + font-size: 0.8rem; + font-family: GismondaFG; + background: linear-gradient(135deg, #8b6914 0%, #6d5410 100%); + color: #f5f5f5; + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3); + white-space: normal; + line-height: 1.2; + + &:hover { + background: linear-gradient(135deg, #a07a18 0%, #8b6914 100%); + transform: translateY(-2px); + box-shadow: 0 4px 8px rgba(139, 105, 20, 0.5); + } + + &.full-width-button, + &[data-action="rollTricherie"], + &[data-action="rollHeritage"] { + flex: 1 1 100%; + width: 100%; + } + + &[data-action="cancel"] { + background: rgba(100, 100, 100, 0.3); + color: #f5f5f5; + + &:hover { + background: rgba(100, 100, 100, 0.5); + } + } + + i { + margin-right: 4px; + } + } + } + } + + .skill-roll-dialog, + form.skill-roll-dialog { + background: transparent; + + .roll-dialog-header { + display: flex; + align-items: center; + gap: 1rem; + padding: 0.75rem; + background: rgba(56, 32, 32, 0.4); + border-bottom: 2px solid #8b6914; + margin-bottom: 0.5rem; + + .actor-icon { + width: 48px; + height: 48px; + border-radius: 4px; + border: 2px solid #8b6914; + } + + .dialog-roll-title { + margin: 0; + color: #d4a574; + font-size: 1.3rem; + flex: 1; + } + } + + .roll-dialog-content { + padding: 0.5rem; + display: flex; + flex-direction: column; + gap: 0.4rem; + } + + .roll-dialog-row { + display: flex; + align-items: center; + justify-content: space-between; + padding: 0.3rem 0.5rem; + background: rgba(56, 32, 32, 0.2); + border-radius: 4px; + gap: 1rem; + min-height: 2rem; + } + + .roll-dialog-section { + background: rgba(56, 32, 32, 0.3); + border-radius: 4px; + padding: 0.5rem; + margin: 0.2rem 0; + display: flex; + flex-direction: column; + gap: 0.3rem; + border-left: 3px solid #8b6914; + } + + .roll-dialog-label-left { + color: #d4a574; + font-weight: bold; + flex: 1; + min-width: 120px; + } + + .roll-dialog-value { + color: #fff; + text-align: right; + font-weight: normal; + } + + .roll-dialog-info { + color: #bbb; + font-style: italic; + font-size: 0.9rem; + } + + .roll-dialog-select { + background: rgba(0, 0, 0, 0.3); + border: 1px solid #666; + border-radius: 3px; + color: #fff; + padding: 0.2rem 0.4rem; + min-width: 150px; + } + + input[type="checkbox"] { + width: 1.2rem; + height: 1.2rem; + cursor: pointer; + } + } + .roll-style { background-color: rgba(56, 32, 32, 0.4); border-radius: 0.25rem; - padding-left: 0.25rem; + padding: 0.25rem 0.25rem 0.25rem 0.5rem; margin-right: 0.25rem; + cursor: pointer; + transition: all 0.2s ease; + display: flex; + align-items: center; + } + + .roll-style a { + line-height: 1; + display: flex; + align-items: center; + } + + /* Enhanced button styling for clickable elements */ + .fvtt-les-heritiers.actor .roll-style a, + .fvtt-les-heritiers.actor .roll-competence, + .fvtt-les-heritiers.actor .roll-carac, + .fvtt-les-heritiers.actor .roll-root-competence, + .fvtt-les-heritiers.actor .roll-pouvoir, + .fvtt-les-heritiers.actor .roll-sort, + .fvtt-les-heritiers.actor a[data-action^="roll"], + .fvtt-les-heritiers.actor .chat-card-button { + cursor: pointer; + transition: all 0.15s ease; + text-decoration: none; + } + + /* Hover effects for clickable buttons */ + .fvtt-les-heritiers.actor .roll-style:hover { + background-color: rgba(139, 90, 43, 0.5); + box-shadow: 0 0 5px rgba(139, 90, 43, 0.4); + transform: translateY(-1px); + } + + .fvtt-les-heritiers.actor .roll-style:hover a { + color: #fff; + text-shadow: 0 0 3px rgba(0, 0, 0, 0.5); + } + + .fvtt-les-heritiers.actor .roll-style:active { + transform: translateY(0); + box-shadow: 0 0 2px rgba(139, 90, 43, 0.3); + } + + /* Style for chat-card-button */ + .fvtt-les-heritiers.actor .chat-card-button { + background: linear-gradient(to bottom, rgba(139, 90, 43, 0.6), rgba(139, 90, 43, 0.4)); + border: 1px solid rgba(139, 90, 43, 0.8); + border-radius: 4px; + padding: 4px 12px; + color: #2c1810; + font-weight: 600; + text-align: center; + display: inline-block; + } + + .fvtt-les-heritiers.actor .chat-card-button:hover { + background: linear-gradient(to bottom, rgba(139, 90, 43, 0.8), rgba(139, 90, 43, 0.6)); + border-color: rgba(139, 90, 43, 1); + color: #000; + box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); + transform: translateY(-1px); + } + + .fvtt-les-heritiers.actor .chat-card-button:active { + transform: translateY(0); + box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3); } .specialisarion-margin { @@ -962,7 +1671,8 @@ } .chat-message-header { - background: rgba(220, 220, 210, 0.5); + background: linear-gradient(135deg, rgba(139, 105, 20, 0.3) 0%, rgba(139, 105, 20, 0.15) 100%); + border-bottom: 2px solid #8b6914; font-size: 1.1rem; height: 48px; text-align: center; @@ -974,10 +1684,14 @@ .chat-message .message-header .flavor-text, .chat-message .message-header .whisper-to { font-size: 0.9rem; + color: #6d5410; + font-style: italic; } .chat-actor-name { padding: 4px; + color: #8b6914; + font-weight: bold; } .chat-img { @@ -1082,21 +1796,27 @@ } .chat-message { - background: rgba(220, 220, 210, 0.5); + font-family: GismondaFG; + background: #e8e4d8 url("../assets/ui/fiche_background_simple_01.webp") repeat; + border: 2px solid #8b6914; + border-radius: 6px; font-size: 0.9rem; } .chat-message.whisper { - background: rgba(220, 220, 210, 0.75); + background: #e8e4d8 url("../assets/ui/fiche_background_simple_01.webp") repeat; border: 2px solid #545469; + box-shadow: 0 0 8px rgba(84, 84, 105, 0.5); } .chat-message .chat-icon { - border: 0; - padding: 2px 6px 2px 2px; + border: 2px solid #8b6914; + border-radius: 4px; + padding: 2px; float: left; - width: 64px; - height: 64px; + width: 40px; + height: 40px; + object-fit: cover; } #sidebar-tabs { @@ -1131,21 +1851,7 @@ border-radius: 0; background: rgba(30, 25, 20, 1); background-origin: padding-box; - border-image: url(img/ui/footer-button.png) 10 repeat; - border-image-width: 4px; - border-image-outset: 0px; - } - - #controls .scene-control.active, - #controls .control-tool.active, - #controls .scene-control:hover, - #controls .control-tool:hover { - background: rgba(72, 46, 28, 1); - background-origin: padding-box; - border-image: url(img/ui/footer-button.png) 10 repeat; - border-image-width: 4px; - border-image-outset: 0px; - box-shadow: 0 0 3px #ff6400; + border: 4px solid rgba(72, 46, 28, 0.5); } #hotbar #action-bar #macro-list { @@ -1167,9 +1873,7 @@ } #players { - border-image: url(img/ui/footer-button.png) 10 repeat; - border-image-width: 4px; - border-image-outset: 0px; + border: 4px solid rgba(72, 46, 28, 0.5); background: rgba(30, 25, 20, 1); } @@ -1180,27 +1884,21 @@ #navigation #scene-list .scene.nav-item { background: rgba(30, 25, 20, 1); background-origin: padding-box; - border-image: url(img/ui/footer-button.png) 10 repeat; - border-image-width: 4px; - border-image-outset: 0px; + border: 4px solid rgba(72, 46, 28, 0.5); } #navigation #scene-list .scene.view, #navigation #scene-list .scene.context { background: rgba(72, 46, 28, 1); background-origin: padding-box; - border-image: url(img/ui/footer-button.png) 10 repeat; - border-image-width: 4px; - border-image-outset: 0px; + border: 4px solid rgba(72, 46, 28, 1); box-shadow: 0 0 3px #ff6400; } #navigation #nav-toggle { background: rgba(30, 25, 20, 1); background-origin: padding-box; - border-image: url(img/ui/footer-button.png) 10 repeat; - border-image-width: 4px; - border-image-outset: 0px; + border: 4px solid rgba(72, 46, 28, 0.5); } /* Tooltip container */ @@ -1326,8 +2024,8 @@ position: relative; max-height: 1.7rem; flex-grow: 1; - max-width: 3.9rem; - min-width: 3.9rem; + max-width: 4.5rem; + min-width: 4.5rem; } .sheet.journal-entry.application .journal-sidebar .toc .page-heading .page-title { @@ -1458,6 +2156,99 @@ flex-grow: 2; } + /* Adjust characteristics in actor sheet header */ + .application.sheet.actor .sheet-header .competence-name, + .window-app.sheet.actor .sheet-header .competence-name, + .application.sheet.actor .sheet-header .item-name-label, + .window-app.sheet.actor .sheet-header .item-name-label { + font-size: 1rem; + padding-top: 6px; + margin-top: 0; + margin-bottom: 0; + line-height: 1.2; + display: flex; + align-items: center; + } + + /* Center the link/text inside the characteristic label */ + .application.sheet.actor .sheet-header .competence-name a, + .window-app.sheet.actor .sheet-header .competence-name a, + .application.sheet.actor .sheet-header .item-name-label a, + .window-app.sheet.actor .sheet-header .item-name-label a { + display: block; + width: 100%; + } + + /* Reduce padding/margin for inputs in actor sheet header */ + .application.sheet.actor .sheet-header input, + .application.sheet.actor .sheet-header select, + .window-app.sheet.actor .sheet-header input, + .window-app.sheet.actor .sheet-header select { + padding: 1px 4px; + margin: 1px 2px; + line-height: 1.2; + } + + .application.sheet.actor .sheet-header .padd-right, + .window-app.sheet.actor .sheet-header .padd-right { + margin-right: 4px; + } + + /* Compact PV line in actor header - redesigned */ + .application.sheet.actor .sheet-header .item-field-label-short, + .window-app.sheet.actor .sheet-header .item-field-label-short { + max-width: 2.8rem; + min-width: 2.8rem; + padding: 2px 3px; + margin: 0 1px; + } + + /* Wider width for Tricherie label specifically */ + .application.sheet.actor .sheet-header label.item-field-label-short:has(+ input[name="system.rang.tricherie.value"]), + .window-app.sheet.actor .sheet-header label.item-field-label-short:has(+ input[name="system.rang.tricherie.value"]) { + max-width: 4.8rem; + min-width: 4.8rem; + } + + .application.sheet.actor .sheet-header .item-field-label-short-num, + .window-app.sheet.actor .sheet-header .item-field-label-short-num { + max-width: 2rem; + min-width: 2rem; + padding: 2px 3px; + margin: 0 1px; + } + + .application.sheet.actor .sheet-header .item-field-label-medium, + .window-app.sheet.actor .sheet-header .item-field-label-medium { + max-width: 6rem; + min-width: 6rem; + padding: 2px 3px; + margin: 0 4px; + } + + /* Remove spacing spans and use gap instead */ + .application.sheet.actor .sheet-header .flexrow > span, + .window-app.sheet.actor .sheet-header .flexrow > span { + display: none; + } + + .application.sheet.actor .sheet-header .flexrow, + .window-app.sheet.actor .sheet-header .flexrow { + gap: 2px; + } + + /* Add spacing between characteristics and PV line */ + .application.sheet.actor .sheet-header .flexrow:has(> label:first-child:contains("PV")), + .window-app.sheet.actor .sheet-header .flexrow:has(> label:first-child) { + margin-top: 6px; + } + + /* More specific: target the PV line directly */ + .application.sheet.actor .sheet-header .flexcol > .flexrow:last-child, + .window-app.sheet.actor .sheet-header .flexcol > .flexrow:last-child { + margin-top: 6px; + } + /*************************************************************/ .competence-niveau { flex-grow: 1; @@ -1628,6 +2419,387 @@ color: darkred; } + /* ==================== New Chat Card Styling ==================== */ + .heritiers-chat-card { + font-family: GismondaFG; + background: #e8e4d8 url("../assets/ui/fiche_background_simple_01.webp") repeat; + border: 2px solid #8b6914; + border-radius: 6px; + overflow: hidden; + margin: 0; + + /* Header */ + .chat-card-header { + display: flex; + align-items: center; + gap: 10px; + padding: 8px; + background: linear-gradient(135deg, rgba(139, 105, 20, 0.3) 0%, rgba(139, 105, 20, 0.15) 100%); + border-bottom: 2px solid #8b6914; + } + + .chat-actor-avatar { + width: 40px; + height: 40px; + border-radius: 4px; + border: 2px solid #8b6914; + object-fit: cover; + } + + .chat-actor-info { + flex: 1; + } + + .chat-actor-name { + margin: 0; + font-size: 0.9rem; + color: #8b6914; + font-weight: bold; + } + + .chat-action-name { + font-size: 0.75rem; + color: #6d5410; + font-style: italic; + } + + .chat-action-icon { + width: 36px; + height: 36px; + border-radius: 4px; + border: 1px solid #8b6914; + object-fit: cover; + } + + /* Attack Type Badge */ + .chat-attack-badge { + background: #8b6914; + color: #fff; + padding: 4px 12px; + text-align: center; + font-weight: bold; + font-size: 0.75rem; + text-transform: uppercase; + } + + /* Roll Calculation Grid */ + .chat-roll-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); + gap: 6px; + padding: 8px; + background: rgba(255, 255, 255, 0.3); + } + + .chat-roll-item { + display: flex; + flex-direction: column; + gap: 2px; + padding: 4px 6px; + background: rgba(255, 255, 255, 0.6); + border-left: 3px solid #8b6914; + border-radius: 3px; + } + + .chat-roll-label { + font-size: 0.65rem; + color: #6d5410; + font-weight: bold; + text-transform: uppercase; + } + + .chat-roll-value { + font-size: 0.85rem; + color: #2a2a2a; + font-weight: bold; + } + + .chat-dice-result { + color: #8b6914; + font-size: 1rem; + } + + .chat-tricherie-used { + background: rgba(139, 105, 20, 0.2); + border-left-color: #d4a574; + border-left-width: 4px; + + .chat-roll-value { + color: #8b6914; + font-weight: bold; + font-style: italic; + } + } + + /* Result Box */ + .chat-result-box { + padding: 6px; + margin: 4px; + border-radius: 6px; + text-align: center; + + &.success { + background: linear-gradient(135deg, rgba(51, 170, 51, 0.2) 0%, rgba(51, 170, 51, 0.1) 100%); + border: 2px solid #33aa33; + } + + &.failure { + background: linear-gradient(135deg, rgba(170, 51, 51, 0.2) 0%, rgba(170, 51, 51, 0.1) 100%); + border: 2px solid #aa3333; + } + + &.critical-failure { + background: linear-gradient(135deg, rgba(139, 0, 0, 0.3) 0%, rgba(139, 0, 0, 0.15) 100%); + border: 2px solid #8b0000; + } + } + + .chat-result-total { + display: flex; + justify-content: center; + align-items: baseline; + gap: 4px; + margin-bottom: 3px; + } + + .chat-result-label { + font-size: 0.9rem; + color: #6d5410; + font-weight: bold; + text-transform: uppercase; + } + + .chat-result-number { + font-size: 1.35rem; + font-weight: bold; + color: #8b6914; + } + + .chat-result-details { + display: flex; + justify-content: center; + gap: 16px; + margin-bottom: 6px; + font-size: 0.85rem; + color: #6d5410; + } + + .chat-result-status { + font-size: 1.2rem; + font-weight: bold; + padding: 4px; + + i { + margin-right: 4px; + } + + .success & { + color: #33aa33; + } + + .failure & { + color: #aa3333; + } + + .critical-failure & { + color: #8b0000; + } + } + + .chat-special-result { + margin-top: 6px; + font-size: 0.9rem; + color: #d4a574; + font-weight: bold; + + i { + margin-right: 4px; + } + } + + .chat-damage-display { + margin-top: 6px; + padding: 4px 8px; + background: rgba(139, 105, 20, 0.15); + border-radius: 3px; + font-size: 0.85rem; + color: #8b6914; + + i { + margin-right: 4px; + } + + strong { + font-size: 0.95rem; + } + } + + /* Tricherie Box */ + .chat-tricherie-box { + background: rgba(139, 105, 20, 0.15); + padding: 8px; + border-top: 1px solid #8b6914; + } + + .chat-tricherie-label { + display: block; + font-size: 0.75rem; + color: #6d5410; + font-weight: bold; + margin-bottom: 6px; + } + + .chat-tricherie-faces { + display: flex; + gap: 6px; + justify-content: center; + } + + .chat-tricherie-face { + background: #8b6914; + color: #fff; + padding: 8px 12px; + border-radius: 4px; + font-weight: bold; + font-size: 1.1rem; + cursor: pointer; + transition: all 0.2s ease; + text-decoration: none; + + &:hover { + background: #a07a18; + transform: translateY(-2px); + box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3); + } + } + + /* Details Section (Collapsible) */ + .chat-details-section { + border-top: 1px solid #8b6914; + } + + .chat-details-summary { + padding: 8px; + background: rgba(139, 105, 20, 0.1); + cursor: pointer; + font-weight: bold; + color: #8b6914; + font-size: 0.9rem; + user-select: none; + + &:hover { + background: rgba(139, 105, 20, 0.2); + } + + i { + margin-right: 6px; + } + } + + .chat-details-content { + padding: 8px; + background: rgba(255, 255, 255, 0.3); + font-size: 0.85rem; + + div { + margin-bottom: 4px; + + &:last-child { + margin-bottom: 0; + } + } + + strong { + color: #8b6914; + } + } + } + + /* Welcome Message Styling */ + .heritiers-welcome-card { + .welcome-header { + padding: 12px; + background: linear-gradient(135deg, rgba(139, 105, 20, 0.4) 0%, rgba(139, 105, 20, 0.2) 100%); + border-bottom: 3px solid #8b6914; + } + + .welcome-icon-wrapper { + width: 48px; + height: 48px; + display: flex; + align-items: center; + justify-content: center; + background: rgba(139, 105, 20, 0.2); + border-radius: 50%; + border: 2px solid #8b6914; + } + + .welcome-icon { + font-size: 1.5rem; + color: #8b6914; + } + + .welcome-content { + padding: 12px; + } + + .welcome-section { + margin-bottom: 12px; + padding: 10px; + background: rgba(139, 105, 20, 0.08); + border-left: 3px solid #8b6914; + border-radius: 3px; + + &:last-child { + margin-bottom: 0; + } + + > i { + font-size: 1rem; + color: #8b6914; + margin-right: 8px; + float: left; + margin-top: 2px; + } + + p { + margin: 4px 0; + font-size: 0.9rem; + line-height: 1.4; + + &:last-child { + margin-bottom: 0; + } + } + + a { + color: #8b6914; + font-weight: bold; + text-decoration: none; + border-bottom: 1px solid transparent; + transition: border-bottom 0.2s; + + &:hover { + border-bottom-color: #8b6914; + } + + i { + font-size: 0.85rem; + margin-right: 4px; + } + } + + strong { + color: #8b6914; + font-weight: bold; + } + + em { + font-style: italic; + } + } + } + .adversite-modify { margin-top: 12px; } diff --git a/modules/applications/heritiers-roll-dialog.mjs b/modules/applications/heritiers-roll-dialog.mjs index 53203e5..ae52803 100644 --- a/modules/applications/heritiers-roll-dialog.mjs +++ b/modules/applications/heritiers-roll-dialog.mjs @@ -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) } } diff --git a/modules/applications/sheets/accessoire-sheet.mjs b/modules/applications/sheets/accessoire-sheet.mjs index 40f4ae1..268a337 100644 --- a/modules/applications/sheets/accessoire-sheet.mjs +++ b/modules/applications/sheets/accessoire-sheet.mjs @@ -13,7 +13,7 @@ export default class HeritiersAccessoireSheet extends HeritiersItemSheet { /** @override */ static PARTS = { sheet: { - template: "systems/fvtt-les-heritiers/templates/item-accessoire-sheet.html", + template: "systems/fvtt-les-heritiers/templates/item-accessoire-sheet.hbs", }, } } diff --git a/modules/applications/sheets/arme-sheet.mjs b/modules/applications/sheets/arme-sheet.mjs index abe514c..2aa0b0d 100644 --- a/modules/applications/sheets/arme-sheet.mjs +++ b/modules/applications/sheets/arme-sheet.mjs @@ -13,7 +13,7 @@ export default class HeritiersArmeSheet extends HeritiersItemSheet { /** @override */ static PARTS = { sheet: { - template: "systems/fvtt-les-heritiers/templates/item-arme-sheet.html", + template: "systems/fvtt-les-heritiers/templates/item-arme-sheet.hbs", }, } } diff --git a/modules/applications/sheets/atoutfeerique-sheet.mjs b/modules/applications/sheets/atoutfeerique-sheet.mjs index 3c35a2b..df6edec 100644 --- a/modules/applications/sheets/atoutfeerique-sheet.mjs +++ b/modules/applications/sheets/atoutfeerique-sheet.mjs @@ -13,7 +13,7 @@ export default class HeritiersAtoutFeeriqueSheet extends HeritiersItemSheet { /** @override */ static PARTS = { sheet: { - template: "systems/fvtt-les-heritiers/templates/item-atoutfeerique-sheet.html", + template: "systems/fvtt-les-heritiers/templates/item-atoutfeerique-sheet.hbs", }, } } diff --git a/modules/applications/sheets/avantage-sheet.mjs b/modules/applications/sheets/avantage-sheet.mjs index 448a574..c329881 100644 --- a/modules/applications/sheets/avantage-sheet.mjs +++ b/modules/applications/sheets/avantage-sheet.mjs @@ -13,7 +13,7 @@ export default class HeritiersAvantageSheet extends HeritiersItemSheet { /** @override */ static PARTS = { sheet: { - template: "systems/fvtt-les-heritiers/templates/item-avantage-sheet.html", + template: "systems/fvtt-les-heritiers/templates/item-avantage-sheet.hbs", }, } } diff --git a/modules/applications/sheets/base-actor-sheet.mjs b/modules/applications/sheets/base-actor-sheet.mjs index 4109f2c..0051882 100644 --- a/modules/applications/sheets/base-actor-sheet.mjs +++ b/modules/applications/sheets/base-actor-sheet.mjs @@ -40,6 +40,10 @@ export default class HeritiersActorSheet extends HandlebarsApplicationMixin(foun createItem: HeritiersActorSheet.#onCreateItem, equipItem: HeritiersActorSheet.#onEquipItem, modifyQuantity: HeritiersActorSheet.#onModifyQuantity, + quantityIncrease: HeritiersActorSheet.#onQuantityIncrease, + quantityDecrease: HeritiersActorSheet.#onQuantityDecrease, + pvIncrease: HeritiersActorSheet.#onPvIncrease, + pvDecrease: HeritiersActorSheet.#onPvDecrease, rollInitiative: HeritiersActorSheet.#onRollInitiative, rollCarac: HeritiersActorSheet.#onRollCarac, rollRang: HeritiersActorSheet.#onRollRang, @@ -78,7 +82,7 @@ export default class HeritiersActorSheet extends HandlebarsApplicationMixin(foun * Tab groups state * @type {object} */ - tabGroups = { primary: "stats" } + tabGroups = { primary: "competences" } /** @override */ async _prepareContext() { @@ -370,18 +374,18 @@ export default class HeritiersActorSheet extends HandlebarsApplicationMixin(foun */ static async #onCreateItem(event, target) { const itemType = target.dataset.type - + // Cas spécial pour les sorts avec une compétence spécifique if (itemType === "sort" && target.dataset.sortCompetence) { const sortCompetence = target.dataset.sortCompetence - await this.actor.createEmbeddedDocuments('Item', [{ - name: `Nouveau ${itemType} de ${sortCompetence}`, - type: itemType, - system: { competence: sortCompetence } + await this.actor.createEmbeddedDocuments('Item', [{ + name: `Nouveau ${itemType} de ${sortCompetence}`, + type: itemType, + system: { competence: sortCompetence } }], { renderSheet: true }) return } - + await this.actor.createEmbeddedDocuments("Item", [{ name: `Nouveau ${itemType}`, type: itemType }], { renderSheet: true }) } @@ -415,6 +419,59 @@ export default class HeritiersActorSheet extends HandlebarsApplicationMixin(foun } } + /** + * Increase item quantity + * @param {Event} event + * @param {HTMLElement} target + * @private + */ + static async #onQuantityIncrease(event, target) { + const li = target.closest(".item") + const itemId = li?.dataset.itemId + if (itemId) { + await this.actor.incDecQuantity(itemId, 1) + } + } + + /** + * Decrease item quantity + * @param {Event} event + * @param {HTMLElement} target + * @private + */ + static async #onQuantityDecrease(event, target) { + const li = target.closest(".item") + const itemId = li?.dataset.itemId + if (itemId) { + await this.actor.incDecQuantity(itemId, -1) + } + } + + /** + * Increase PV + * @param {Event} event + * @param {HTMLElement} target + * @private + */ + static async #onPvIncrease(event, target) { + const currentPv = this.actor.system.pv.value || 0 + const maxPv = this.actor.system.pv.max || 0 + const newPv = Math.min(currentPv + 1, maxPv) + await this.actor.update({ 'system.pv.value': newPv }) + } + + /** + * Decrease PV + * @param {Event} event + * @param {HTMLElement} target + * @private + */ + static async #onPvDecrease(event, target) { + const currentPv = this.actor.system.pv.value || 0 + const newPv = Math.max(currentPv - 1, 0) + await this.actor.update({ 'system.pv.value': newPv }) + } + /** * Roll initiative * @param {Event} event diff --git a/modules/applications/sheets/capacitenaturelle-sheet.mjs b/modules/applications/sheets/capacitenaturelle-sheet.mjs index 806ebad..617f880 100644 --- a/modules/applications/sheets/capacitenaturelle-sheet.mjs +++ b/modules/applications/sheets/capacitenaturelle-sheet.mjs @@ -13,7 +13,7 @@ export default class HeritiersCapaciteNaturelleSheet extends HeritiersItemSheet /** @override */ static PARTS = { sheet: { - template: "systems/fvtt-les-heritiers/templates/item-capacitenaturelle-sheet.html", + template: "systems/fvtt-les-heritiers/templates/item-capacitenaturelle-sheet.hbs", }, } } diff --git a/modules/applications/sheets/competence-sheet.mjs b/modules/applications/sheets/competence-sheet.mjs index c1d1e4d..fabf42d 100644 --- a/modules/applications/sheets/competence-sheet.mjs +++ b/modules/applications/sheets/competence-sheet.mjs @@ -8,12 +8,58 @@ export default class HeritiersCompetenceSheet extends HeritiersItemSheet { ...super.DEFAULT_OPTIONS.window, title: "SHEETS.Item.competence", }, + actions: { + addSpecialite: HeritiersCompetenceSheet.#onAddSpecialite, + deleteSpecialite: HeritiersCompetenceSheet.#onDeleteSpecialite, + editSpecialite: HeritiersCompetenceSheet.#onEditSpecialite, + editSpecialiteDescription: HeritiersCompetenceSheet.#onEditSpecialiteDescription, + } } /** @override */ static PARTS = { sheet: { - template: "systems/fvtt-les-heritiers/templates/item-competence-sheet.html", + template: "systems/fvtt-les-heritiers/templates/item-competence-sheet.hbs", }, } + + /* -------------------------------------------- */ + /* Event Handlers */ + /* -------------------------------------------- */ + + static async #onAddSpecialite(event, target) { + let spec = foundry.utils.duplicate(this.item.system.specialites) || [] + spec.push({ name: "Nouvelle Spécialité", id: foundry.utils.randomID(16), used: false }) + await this.item.update({ 'system.specialites': spec }) + } + + static async #onDeleteSpecialite(event, target) { + const li = target.closest(".specialite-item") + let index = parseInt(li.dataset.specialiteIndex) + let spec = foundry.utils.duplicate(this.item.system.specialites) || [] + spec.splice(index, 1) + await this.item.update({ 'system.specialites': spec }) + } + + static async #onEditSpecialite(event, target) { + const li = target.closest(".specialite-item") + let index = parseInt(li.dataset.specialiteIndex) + let spec = foundry.utils.duplicate(this.item.system.specialites) || [] + if (spec[index]) { + spec[index].name = target.value + spec[index].id = spec[index].id || foundry.utils.randomID(16) + await this.item.update({ 'system.specialites': spec }) + } + } + + static async #onEditSpecialiteDescription(event, target) { + const li = target.closest(".specialite-item") + let index = parseInt(li.dataset.specialiteIndex) + let spec = foundry.utils.duplicate(this.item.system.specialites) || [] + if (spec[index]) { + spec[index].description = target.value + spec[index].id = spec[index].id || foundry.utils.randomID(16) + await this.item.update({ 'system.specialites': spec }) + } + } } diff --git a/modules/applications/sheets/contact-sheet.mjs b/modules/applications/sheets/contact-sheet.mjs index c58dea5..87b7a8c 100644 --- a/modules/applications/sheets/contact-sheet.mjs +++ b/modules/applications/sheets/contact-sheet.mjs @@ -13,7 +13,7 @@ export default class HeritiersContactSheet extends HeritiersItemSheet { /** @override */ static PARTS = { sheet: { - template: "systems/fvtt-les-heritiers/templates/item-contact-sheet.html", + template: "systems/fvtt-les-heritiers/templates/item-contact-sheet.hbs", }, } } diff --git a/modules/applications/sheets/desavantage-sheet.mjs b/modules/applications/sheets/desavantage-sheet.mjs index 8d0585e..c5a92fa 100644 --- a/modules/applications/sheets/desavantage-sheet.mjs +++ b/modules/applications/sheets/desavantage-sheet.mjs @@ -13,7 +13,7 @@ export default class HeritiersDesavantageSheet extends HeritiersItemSheet { /** @override */ static PARTS = { sheet: { - template: "systems/fvtt-les-heritiers/templates/item-desavantage-sheet.html", + template: "systems/fvtt-les-heritiers/templates/item-desavantage-sheet.hbs", }, } } diff --git a/modules/applications/sheets/equipement-sheet.mjs b/modules/applications/sheets/equipement-sheet.mjs index e9ee534..c844962 100644 --- a/modules/applications/sheets/equipement-sheet.mjs +++ b/modules/applications/sheets/equipement-sheet.mjs @@ -13,7 +13,7 @@ export default class HeritiersEquipementSheet extends HeritiersItemSheet { /** @override */ static PARTS = { sheet: { - template: "systems/fvtt-les-heritiers/templates/item-equipement-sheet.html", + template: "systems/fvtt-les-heritiers/templates/item-equipement-sheet.hbs", }, } } diff --git a/modules/applications/sheets/fee-sheet.mjs b/modules/applications/sheets/fee-sheet.mjs index 179f634..1246e1e 100644 --- a/modules/applications/sheets/fee-sheet.mjs +++ b/modules/applications/sheets/fee-sheet.mjs @@ -13,7 +13,7 @@ export default class HeritiersFeeSheet extends HeritiersItemSheet { /** @override */ static PARTS = { sheet: { - template: "systems/fvtt-les-heritiers/templates/item-fee-sheet.html", + template: "systems/fvtt-les-heritiers/templates/item-fee-sheet.hbs", }, } } diff --git a/modules/applications/sheets/personnage-sheet.mjs b/modules/applications/sheets/personnage-sheet.mjs index 6b8481b..351dc71 100644 --- a/modules/applications/sheets/personnage-sheet.mjs +++ b/modules/applications/sheets/personnage-sheet.mjs @@ -17,12 +17,12 @@ export default class HeritiersPersonnageSheet extends HeritiersActorSheet { /** @override */ static PARTS = { sheet: { - template: "systems/fvtt-les-heritiers/templates/actor-sheet.html", + template: "systems/fvtt-les-heritiers/templates/actor-sheet.hbs", }, } /** @override */ - tabGroups = { primary: "stats" } + tabGroups = { primary: "competences" } /** @override */ async _prepareContext() { diff --git a/modules/applications/sheets/pnj-sheet.mjs b/modules/applications/sheets/pnj-sheet.mjs index 0d013f3..0c4d498 100644 --- a/modules/applications/sheets/pnj-sheet.mjs +++ b/modules/applications/sheets/pnj-sheet.mjs @@ -17,12 +17,12 @@ export default class HeritiersPnjSheet extends HeritiersActorSheet { /** @override */ static PARTS = { sheet: { - template: "systems/fvtt-les-heritiers/templates/actor-pnj-sheet.html", + template: "systems/fvtt-les-heritiers/templates/actor-pnj-sheet.hbs", }, } /** @override */ - tabGroups = { primary: "stats" } + tabGroups = { primary: "competences" } /** @override */ async _prepareContext() { diff --git a/modules/applications/sheets/pouvoir-sheet.mjs b/modules/applications/sheets/pouvoir-sheet.mjs index ed136fc..008e480 100644 --- a/modules/applications/sheets/pouvoir-sheet.mjs +++ b/modules/applications/sheets/pouvoir-sheet.mjs @@ -13,7 +13,7 @@ export default class HeritiersPouvoirSheet extends HeritiersItemSheet { /** @override */ static PARTS = { sheet: { - template: "systems/fvtt-les-heritiers/templates/item-pouvoir-sheet.html", + template: "systems/fvtt-les-heritiers/templates/item-pouvoir-sheet.hbs", }, } } diff --git a/modules/applications/sheets/profil-sheet.mjs b/modules/applications/sheets/profil-sheet.mjs index 0534574..0d4beb9 100644 --- a/modules/applications/sheets/profil-sheet.mjs +++ b/modules/applications/sheets/profil-sheet.mjs @@ -13,7 +13,7 @@ export default class HeritiersProfilSheet extends HeritiersItemSheet { /** @override */ static PARTS = { sheet: { - template: "systems/fvtt-les-heritiers/templates/item-profil-sheet.html", + template: "systems/fvtt-les-heritiers/templates/item-profil-sheet.hbs", }, } } diff --git a/modules/applications/sheets/protection-sheet.mjs b/modules/applications/sheets/protection-sheet.mjs index 121f948..ea5035b 100644 --- a/modules/applications/sheets/protection-sheet.mjs +++ b/modules/applications/sheets/protection-sheet.mjs @@ -13,7 +13,7 @@ export default class HeritiersProtectionSheet extends HeritiersItemSheet { /** @override */ static PARTS = { sheet: { - template: "systems/fvtt-les-heritiers/templates/item-protection-sheet.html", + template: "systems/fvtt-les-heritiers/templates/item-protection-sheet.hbs", }, } } diff --git a/modules/applications/sheets/sort-sheet.mjs b/modules/applications/sheets/sort-sheet.mjs index 8e483a5..8297d79 100644 --- a/modules/applications/sheets/sort-sheet.mjs +++ b/modules/applications/sheets/sort-sheet.mjs @@ -1,4 +1,5 @@ import HeritiersItemSheet from "./base-item-sheet.mjs" +import { HeritiersUtility } from "../../heritiers-utility.js" export default class HeritiersSortSheet extends HeritiersItemSheet { /** @override */ @@ -13,7 +14,14 @@ export default class HeritiersSortSheet extends HeritiersItemSheet { /** @override */ static PARTS = { sheet: { - template: "systems/fvtt-les-heritiers/templates/item-sort-sheet.html", + template: "systems/fvtt-les-heritiers/templates/item-sort-sheet.hbs", }, } + + /** @override */ + async _prepareContext() { + const context = await super._prepareContext() + context.competencesMagie = HeritiersUtility.getCompetencesMagie() || [] + return context + } } diff --git a/modules/heritiers-actor-sheet.js b/modules/heritiers-actor-sheet.js index 7367954..bd6f847 100644 --- a/modules/heritiers-actor-sheet.js +++ b/modules/heritiers-actor-sheet.js @@ -158,6 +158,20 @@ export class HeritiersActorSheet extends foundry.appv1.sheets.ActorSheet { this.actor.incDecQuantity(li.data("item-id"), value); }) + html.find('[data-action="quantityIncrease"]').click(event => { + event.preventDefault() + event.stopPropagation() + const li = $(event.currentTarget).parents(".item") + this.actor.incDecQuantity(li.data("item-id"), 1); + }) + + html.find('[data-action="quantityDecrease"]').click(event => { + event.preventDefault() + event.stopPropagation() + const li = $(event.currentTarget).parents(".item") + this.actor.incDecQuantity(li.data("item-id"), -1); + }) + html.find('.roll-initiative').click((event) => { this.actor.rollInitiative() }) diff --git a/modules/heritiers-actor.js b/modules/heritiers-actor.js index 7ab6e15..e4125fc 100644 --- a/modules/heritiers-actor.js +++ b/modules/heritiers-actor.js @@ -360,18 +360,6 @@ export class HeritiersActor extends Actor { /* -------------------------------------------- */ async prepareData() { - - let pvMax = (this.system.caracteristiques.con.rang * 3) + 9 + this.system.pv.mod - if (this.system.pv.max != pvMax) { - this.update({ 'system.pv.max': pvMax }) - } - if (this.system.biodata.magie || this.type == "pnj") { - let pointsAmes = this.system.caracteristiques.esp.rang + this.system.caracteristiques.san.rang + this.getMaxRangMagie() - if (this.system.magie.pointsame.max != pointsAmes) { - this.update({ 'system.magie.pointsame.max': pointsAmes }) - } - } - super.prepareData(); } @@ -395,6 +383,15 @@ export class HeritiersActor extends Actor { /* -------------------------------------------- */ prepareDerivedData() { + // Calculate derived PV max + let pvMax = (this.system.caracteristiques.con.rang * 3) + 9 + this.system.pv.mod + this.system.pv.max = pvMax + + // Calculate derived Points d'Âme max + if (this.system.biodata.magie || this.type == "pnj") { + let pointsAmes = this.system.caracteristiques.esp.rang + this.system.caracteristiques.san.rang + this.getMaxRangMagie() + this.system.magie.pointsame.max = pointsAmes + } if (this.type == 'personnage') { } @@ -713,8 +710,7 @@ export class HeritiersActor extends Actor { rollData.caracKey = "per" } rollData.carac = this.system.caracteristiques[rollData.caracKey] - let rollDialog = await HeritiersRollDialog.create(this, rollData) - rollDialog.render(true) + await HeritiersRollDialog.create(this, rollData) } /* -------------------------------------------- */ @@ -723,8 +719,7 @@ export class HeritiersActor extends Actor { rollData.mode = "carac" rollData.carac = this.system.caracteristiques[key] rollData.caracKey = key - let rollDialog = await HeritiersRollDialog.create(this, rollData) - rollDialog.render(true) + await HeritiersRollDialog.create(this, rollData) } /* -------------------------------------------- */ @@ -733,8 +728,7 @@ export class HeritiersActor extends Actor { rollData.mode = "rang" rollData.rang = this.system.rang[key] rollData.rangKey = key - let rollDialog = await HeritiersRollDialog.create(this, rollData) - rollDialog.render(true) + await HeritiersRollDialog.create(this, rollData) } /* -------------------------------------------- */ async rollRootCompetence(compKey) { @@ -742,8 +736,7 @@ export class HeritiersActor extends Actor { rollData.mode = "competence" rollData.competence = { name: this.system.competences[compKey].label, system: { niveau: this.system.competences[compKey].niveau } } console.log("RollDatra", rollData) - let rollDialog = await HeritiersRollDialog.create(this, rollData) - rollDialog.render(true) + await HeritiersRollDialog.create(this, rollData) } /* -------------------------------------------- */ @@ -751,8 +744,7 @@ export class HeritiersActor extends Actor { let rollData = this.getCommonRollData(compId) rollData.mode = "competence" console.log("RollDatra", rollData) - let rollDialog = await HeritiersRollDialog.create(this, rollData) - rollDialog.render(true) + await HeritiersRollDialog.create(this, rollData) } /* -------------------------------------------- */ @@ -824,8 +816,7 @@ export class HeritiersActor extends Actor { rollData.caracKey = sort.system.carac1 } console.log("RollData", rollData) - let rollDialog = await HeritiersRollDialog.create(this, rollData) - rollDialog.render(true) + await HeritiersRollDialog.create(this, rollData) } @@ -846,13 +837,13 @@ export class HeritiersActor extends Actor { rollData.caracKey = key rollData.arme = arme rollData.mode = "arme" + rollData.attackType = "Attaque normale" rollData.armes = this.getOtherMeleeWeapons(arme) if (rollData.defenderTokenId && arme.system.isMelee) { rollData.cacheDifficulte = true } console.log(">>>> ARME", rollData) - let rollDialog = await HeritiersRollDialog.create(this, rollData) - rollDialog.render(true) + await HeritiersRollDialog.create(this, rollData) } } @@ -868,10 +859,10 @@ export class HeritiersActor extends Actor { rollData.caracKey = key rollData.arme = foundry.utils.duplicate(arme) rollData.mode = "attaquebrutale" + rollData.attackType = "Attaque brutale" rollData.armes = this.getOtherMeleeWeapons(arme) rollData.rulesMalus.push({ name: "Attaque brutale", value: -2 }) - let rollDialog = await HeritiersRollDialog.create(this, rollData) - rollDialog.render(true) + await HeritiersRollDialog.create(this, rollData) } } /* -------------------------------------------- */ @@ -887,8 +878,8 @@ export class HeritiersActor extends Actor { rollData.arme = foundry.utils.duplicate(arme) rollData.armes = this.getOtherMeleeWeapons(arme) rollData.mode = "attaquecharge" - let rollDialog = await HeritiersRollDialog.create(this, rollData) - rollDialog.render(true) + rollData.attackType = "Attaque en charge" + await HeritiersRollDialog.create(this, rollData) } } @@ -903,11 +894,11 @@ export class HeritiersActor extends Actor { rollData.caracKey = "agi" rollData.arme = foundry.utils.duplicate(arme) rollData.mode = "assommer" + rollData.attackType = "Assommer" if (rollData.defenderTokenId) { rollData.cacheDifficulte = true } - let rollDialog = await HeritiersRollDialog.create(this, rollData) - rollDialog.render(true) + await HeritiersRollDialog.create(this, rollData) } } @@ -1001,8 +992,7 @@ export class HeritiersActor extends Actor { //ui.notifications.warn("Le pouvoir actif " + pouvoir.name + " a été utilisé, dépense de " + pouvoirPointsUsage + " points d'usage") } } - let rollDialog = await HeritiersRollDialog.create(this, rollData) - rollDialog.render(true) + await HeritiersRollDialog.create(this, rollData) } } diff --git a/modules/heritiers-item-sheet.js b/modules/heritiers-item-sheet.js index 20d00e4..78896e0 100644 --- a/modules/heritiers-item-sheet.js +++ b/modules/heritiers-item-sheet.js @@ -11,7 +11,6 @@ export class HeritiersItemSheet extends foundry.appv1.sheets.ItemSheet { return foundry.utils.mergeObject(super.defaultOptions, { classes: ["fvtt-les-heritiers", "sheet", "item"], - template: "systems/fvtt-les-heritiers/templates/item-sheet.html", dragDrop: [{ dragSelector: null, dropSelector: null }], width: 620, height: 550, @@ -142,32 +141,36 @@ export class HeritiersItemSheet extends foundry.appv1.sheets.ItemSheet { }) html.find('#add-specialite').click(ev => { - let spec = foundry.utils.duplicate(this.object.system.specialites) + let spec = foundry.utils.duplicate(this.item.system.specialites) || [] spec.push({ name: "Nouvelle Spécialité", id: foundry.utils.randomID(16), used: false }) - this.object.update({ 'system.specialites': spec }) + this.item.update({ 'system.specialites': spec }) }) html.find('.delete-specialite').click(ev => { const li = $(ev.currentTarget).parents(".specialite-item") let index = li.data("specialite-index") - let spec = foundry.utils.duplicate(this.object.system.specialites) + let spec = foundry.utils.duplicate(this.item.system.specialites) || [] spec.splice(index, 1) - this.object.update({ 'system.specialites': spec }) + this.item.update({ 'system.specialites': spec }) }) html.find('.edit-specialite').change(ev => { const li = $(ev.currentTarget).parents(".specialite-item") let index = li.data("specialite-index") - let spec = foundry.utils.duplicate(this.object.system.specialites) - spec[index].name = ev.currentTarget.value - spec[index].id = spec[index].id || foundry.utils.randomID(16) - this.object.update({ 'system.specialites': spec }) + let spec = foundry.utils.duplicate(this.item.system.specialites) || [] + if (spec[index]) { + spec[index].name = ev.currentTarget.value + spec[index].id = spec[index].id || foundry.utils.randomID(16) + this.item.update({ 'system.specialites': spec }) + } }) html.find('.edit-specialite-description').change(ev => { const li = $(ev.currentTarget).parents(".specialite-item") let index = li.data("specialite-index") - let spec = foundry.utils.duplicate(this.object.system.specialites) - spec[index].description = ev.currentTarget.value - spec[index].id = spec[index].id || foundry.utils.randomID(16) - this.object.update({ 'system.specialites': spec }) + let spec = foundry.utils.duplicate(this.item.system.specialites) || [] + if (spec[index]) { + spec[index].description = ev.currentTarget.value + spec[index].id = spec[index].id || foundry.utils.randomID(16) + this.item.update({ 'system.specialites': spec }) + } }) html.find('#add-automation').click(ev => { @@ -203,7 +206,7 @@ export class HeritiersItemSheet extends foundry.appv1.sheets.ItemSheet { /* -------------------------------------------- */ get template() { let type = this.item.type; - return `systems/fvtt-les-heritiers/templates/item-${type}-sheet.html`; + return `systems/fvtt-les-heritiers/templates/item-${type}-sheet.hbs`; } /* -------------------------------------------- */ diff --git a/modules/heritiers-main.js b/modules/heritiers-main.js index 56e6d4c..38672f9 100644 --- a/modules/heritiers-main.js +++ b/modules/heritiers-main.js @@ -114,12 +114,38 @@ function welcomeMessage() { ChatMessage.create({ user: game.user.id, whisper: [game.user.id], - content: `
- Bienvenue dans Les Heritiers et la Belle Epoque ! -

Les livres du JDR Les Heritiers sont nécessaires pour jouer : https://www.titam-france.fr

-

Les Heritiers est jeu de rôle publié par Titam France/Sombres projets, tout les droits leur appartiennent.

-

Système développé par LeRatierBretonnien, support sur le Discord FR de Foundry.

- ` }); + content: ` +
+
+
+ +
+
+

Bienvenue dans Les Héritiers !

+
et la Belle Époque
+
+
+ +
+
+ +

Les livres du JDR Les Héritiers sont nécessaires pour jouer.

+
+ +
+ +

Les Héritiers est un jeu de rôle publié par Titam France / Sombres Projets. Tous les droits leur appartiennent.

+
+ +
+ +

Système développé par LeRatierBretonnien

+

Support sur le Discord FR de Foundry

+
+
+
+ ` + }); } /* -------------------------------------------- */ diff --git a/modules/heritiers-roll-dialog.js b/modules/heritiers-roll-dialog.js index 7dd7831..50a27dd 100644 --- a/modules/heritiers-roll-dialog.js +++ b/modules/heritiers-roll-dialog.js @@ -46,14 +46,14 @@ export class HeritiersRollDialog extends Dialog { if (rollData.tricherie) { buttons["rollTricherie"] = { icon: '', - label: "Lancer avec 1 Point de Tricherie", + label: "Avec 1 Tricherie", callback: () => { this.roll("tricherie") } } } if (rollData.heritage) { buttons["rollHeritage"] = { icon: '', - label: "Lancer avec 1 Point d'Héritage", + label: "Avec 1 Héritage", callback: () => { this.roll("heritage") } } } diff --git a/modules/heritiers-utility.js b/modules/heritiers-utility.js index e78b922..48c2503 100644 --- a/modules/heritiers-utility.js +++ b/modules/heritiers-utility.js @@ -76,6 +76,10 @@ export class HeritiersUtility { Handlebars.registerHelper('mul', function (a, b) { return parseInt(a) * parseInt(b); }) + Handlebars.registerHelper('and', function (...args) { + // Last argument is Handlebars options object, ignore it + return args.slice(0, -1).every(Boolean); + }) } @@ -197,10 +201,11 @@ export class HeritiersUtility { const templatePaths = [ 'systems/fvtt-les-heritiers/templates/editor-notes-gm.html', - 'systems/fvtt-les-heritiers/templates/partial-item-header.html', - 'systems/fvtt-les-heritiers/templates/partial-item-description.html', - 'systems/fvtt-les-heritiers/templates/partial-item-nav.html', - 'systems/fvtt-les-heritiers/templates/partial-utile-skills.html' + 'systems/fvtt-les-heritiers/templates/partial-item-header.hbs', + 'systems/fvtt-les-heritiers/templates/partial-item-description.hbs', + 'systems/fvtt-les-heritiers/templates/partial-item-nav.hbs', + 'systems/fvtt-les-heritiers/templates/partial-utile-skills.hbs', + 'systems/fvtt-les-heritiers/templates/partial-actor-equipment.hbs' ] return foundry.applications.handlebars.loadTemplates(templatePaths); } @@ -478,7 +483,7 @@ export class HeritiersUtility { this.computeArmeDegats(rollData, actor) } this.createChatWithRollMode(rollData.alias, { - content: await foundry.applications.handlebars.renderTemplate(`systems/fvtt-les-heritiers/templates/chat-cc-result.html`, rollData) + content: await foundry.applications.handlebars.renderTemplate(`systems/fvtt-les-heritiers/templates/chat-cc-result.hbs`, rollData) }, rollData, "selfroll") } /* -------------------------------------------- */ @@ -490,7 +495,7 @@ export class HeritiersUtility { this.computeMarge(rollData, valeurDefense) rollData.dureeAssommer = (rollData.marge) ? rollData.marge * 2 : 1 this.createChatWithRollMode(rollData.alias, { - content: await foundry.applications.handlebars.renderTemplate(`systems/fvtt-les-heritiers/templates/chat-assommer-result.html`, rollData) + content: await foundry.applications.handlebars.renderTemplate(`systems/fvtt-les-heritiers/templates/chat-assommer-result.hbs`, rollData) }, rollData, "selfroll") } /* -------------------------------------------- */ @@ -570,6 +575,10 @@ export class HeritiersUtility { console.log(">>>> ", myRoll) this.computeResult(actor, rollData) this.computeMarge(rollData, rollData.sdValue) // Calcul de la marge si seuil présent + // Compute weapon damage for successful attacks + if (rollData.arme && rollData.isSuccess) { + this.computeArmeDegats(rollData, actor) + } } if (rollData.mode == "init") { @@ -593,7 +602,7 @@ export class HeritiersUtility { } this.createChatWithRollMode(rollData.alias, { - content: await foundry.applications.handlebars.renderTemplate(`systems/fvtt-les-heritiers/templates/chat-generic-result.html`, rollData) + content: await foundry.applications.handlebars.renderTemplate(`systems/fvtt-les-heritiers/templates/chat-generic-result.hbs`, rollData) }, rollData) // Gestion attaque standard @@ -631,7 +640,7 @@ export class HeritiersUtility { this.computeResult(rollData) this.createChatWithRollMode(rollData.alias, { - content: await foundry.applications.handlebars.renderTemplate(`systems/fvtt-les-heritiers/templates/chat-generic-result.html`, rollData) + content: await foundry.applications.handlebars.renderTemplate(`systems/fvtt-les-heritiers/templates/chat-generic-result.hbs`, rollData) }, rollData) } @@ -844,7 +853,8 @@ export class HeritiersUtility { /* -------------------------------------------- */ static async confirmDelete(actorSheet, li) { - let itemId = li.data("item-id"); + // Support both jQuery and native elements + let itemId = li.dataset ? li.dataset.itemId : li.data("item-id"); let msgTxt = "

Certain de supprimer cet item ?"; let buttons = { delete: { @@ -852,7 +862,11 @@ export class HeritiersUtility { label: "Oui !", callback: () => { actorSheet.actor.deleteEmbeddedDocuments("Item", [itemId]); - li.slideUp(200, () => actorSheet.render(false)); + if (li.slideUp) { + li.slideUp(200, () => actorSheet.render(false)); + } else { + actorSheet.render(false); + } } }, cancel: { diff --git a/modules/models/competence.mjs b/modules/models/competence.mjs index 89d279c..7f47241 100644 --- a/modules/models/competence.mjs +++ b/modules/models/competence.mjs @@ -23,7 +23,7 @@ export default class CompetenceDataModel extends foundry.abstract.TypeDataModel }), soufflemouvement: new fields.SchemaField({ 1: new fields.StringField({ initial: "" }), - 2: new fields.NumberField({ initial: 0, integer: true }), + 2: new fields.StringField({ initial: "" }), 3: new fields.StringField({ initial: "" }), 4: new fields.StringField({ initial: "" }) }), diff --git a/modules/models/contact.mjs b/modules/models/contact.mjs index 5c9661a..648f73b 100644 --- a/modules/models/contact.mjs +++ b/modules/models/contact.mjs @@ -5,7 +5,7 @@ export default class ContactDataModel extends foundry.abstract.TypeDataModel { static defineSchema() { const fields = foundry.data.fields; return { - contacttype: new fields.StringField({ initial: "" }), + contacttype: new fields.StringField({ initial: "contact" }), description: new fields.HTMLField({ initial: "" }) }; } diff --git a/packs/archetypes-fees/000302.log b/packs/archetypes-fees/000310.log similarity index 100% rename from packs/archetypes-fees/000302.log rename to packs/archetypes-fees/000310.log diff --git a/packs/archetypes-fees/CURRENT b/packs/archetypes-fees/CURRENT index 16abe4a..43585a4 100644 --- a/packs/archetypes-fees/CURRENT +++ b/packs/archetypes-fees/CURRENT @@ -1 +1 @@ -MANIFEST-000300 +MANIFEST-000308 diff --git a/packs/archetypes-fees/LOG b/packs/archetypes-fees/LOG index ca1d648..8180810 100644 --- a/packs/archetypes-fees/LOG +++ b/packs/archetypes-fees/LOG @@ -1,8 +1,8 @@ -2025/09/15-22:15:24.823326 7f307affd6c0 Recovering log #298 -2025/09/15-22:15:24.833041 7f307affd6c0 Delete type=3 #296 -2025/09/15-22:15:24.833115 7f307affd6c0 Delete type=0 #298 -2025/09/15-22:23:01.584235 7f307a7fc6c0 Level-0 table #303: started -2025/09/15-22:23:01.584266 7f307a7fc6c0 Level-0 table #303: 0 bytes OK -2025/09/15-22:23:01.590949 7f307a7fc6c0 Delete type=0 #301 -2025/09/15-22:23:01.597083 7f307a7fc6c0 Manual compaction at level-0 from '!items!1NhJH4IJpxsGmLB8' @ 72057594037927935 : 1 .. '!items!y1yOenfAJTsb3r6e' @ 0 : 0; will stop at (end) -2025/09/15-22:23:01.597126 7f307a7fc6c0 Manual compaction at level-1 from '!items!1NhJH4IJpxsGmLB8' @ 72057594037927935 : 1 .. '!items!y1yOenfAJTsb3r6e' @ 0 : 0; will stop at (end) +2026/01/10-17:13:21.499762 7fd462ffd6c0 Recovering log #306 +2026/01/10-17:13:21.510831 7fd462ffd6c0 Delete type=3 #304 +2026/01/10-17:13:21.511011 7fd462ffd6c0 Delete type=0 #306 +2026/01/10-22:35:10.944218 7fd4627fc6c0 Level-0 table #311: started +2026/01/10-22:35:10.944249 7fd4627fc6c0 Level-0 table #311: 0 bytes OK +2026/01/10-22:35:10.950116 7fd4627fc6c0 Delete type=0 #309 +2026/01/10-22:35:10.963623 7fd4627fc6c0 Manual compaction at level-0 from '!items!1NhJH4IJpxsGmLB8' @ 72057594037927935 : 1 .. '!items!y1yOenfAJTsb3r6e' @ 0 : 0; will stop at (end) +2026/01/10-22:35:10.963688 7fd4627fc6c0 Manual compaction at level-1 from '!items!1NhJH4IJpxsGmLB8' @ 72057594037927935 : 1 .. '!items!y1yOenfAJTsb3r6e' @ 0 : 0; will stop at (end) diff --git a/packs/archetypes-fees/LOG.old b/packs/archetypes-fees/LOG.old index 3017f76..f3288b9 100644 --- a/packs/archetypes-fees/LOG.old +++ b/packs/archetypes-fees/LOG.old @@ -1,8 +1,8 @@ -2025/09/15-21:06:27.325495 7f307affd6c0 Recovering log #294 -2025/09/15-21:06:27.335836 7f307affd6c0 Delete type=3 #292 -2025/09/15-21:06:27.335957 7f307affd6c0 Delete type=0 #294 -2025/09/15-21:08:54.705256 7f307a7fc6c0 Level-0 table #299: started -2025/09/15-21:08:54.705333 7f307a7fc6c0 Level-0 table #299: 0 bytes OK -2025/09/15-21:08:54.712270 7f307a7fc6c0 Delete type=0 #297 -2025/09/15-21:08:54.731675 7f307a7fc6c0 Manual compaction at level-0 from '!items!1NhJH4IJpxsGmLB8' @ 72057594037927935 : 1 .. '!items!y1yOenfAJTsb3r6e' @ 0 : 0; will stop at (end) -2025/09/15-21:08:54.731735 7f307a7fc6c0 Manual compaction at level-1 from '!items!1NhJH4IJpxsGmLB8' @ 72057594037927935 : 1 .. '!items!y1yOenfAJTsb3r6e' @ 0 : 0; will stop at (end) +2026/01/10-16:36:53.969467 7fd4637fe6c0 Recovering log #302 +2026/01/10-16:36:53.980503 7fd4637fe6c0 Delete type=3 #300 +2026/01/10-16:36:53.980609 7fd4637fe6c0 Delete type=0 #302 +2026/01/10-17:13:09.472065 7fd4627fc6c0 Level-0 table #307: started +2026/01/10-17:13:09.472120 7fd4627fc6c0 Level-0 table #307: 0 bytes OK +2026/01/10-17:13:09.478554 7fd4627fc6c0 Delete type=0 #305 +2026/01/10-17:13:09.492266 7fd4627fc6c0 Manual compaction at level-0 from '!items!1NhJH4IJpxsGmLB8' @ 72057594037927935 : 1 .. '!items!y1yOenfAJTsb3r6e' @ 0 : 0; will stop at (end) +2026/01/10-17:13:09.492326 7fd4627fc6c0 Manual compaction at level-1 from '!items!1NhJH4IJpxsGmLB8' @ 72057594037927935 : 1 .. '!items!y1yOenfAJTsb3r6e' @ 0 : 0; will stop at (end) diff --git a/packs/archetypes-fees/MANIFEST-000300 b/packs/archetypes-fees/MANIFEST-000308 similarity index 73% rename from packs/archetypes-fees/MANIFEST-000300 rename to packs/archetypes-fees/MANIFEST-000308 index d484fe564530b82a3b7bca43fced757e40d71993..8c50b2997abfa1a071081c49ea50389d09b396e7 100644 GIT binary patch delta 41 scmZ3-xQ=l`k5a++qPJWOj7(dZI2o9?F|owXapMgE32Xxi>;MV?00)%{djJ3c delta 41 scmZ3-xQ=l`j}qhLs0&;Sj7)2pI2oANF|ou>k%$Zj39JJNYyb)X0OYp`YybcN diff --git a/packs/armes-et-protection/000302.log b/packs/armes-et-protection/000310.log similarity index 100% rename from packs/armes-et-protection/000302.log rename to packs/armes-et-protection/000310.log diff --git a/packs/armes-et-protection/CURRENT b/packs/armes-et-protection/CURRENT index 16abe4a..43585a4 100644 --- a/packs/armes-et-protection/CURRENT +++ b/packs/armes-et-protection/CURRENT @@ -1 +1 @@ -MANIFEST-000300 +MANIFEST-000308 diff --git a/packs/armes-et-protection/LOG b/packs/armes-et-protection/LOG index ebd833e..65442e4 100644 --- a/packs/armes-et-protection/LOG +++ b/packs/armes-et-protection/LOG @@ -1,8 +1,8 @@ -2025/09/15-22:15:24.848609 7f307b7fe6c0 Recovering log #298 -2025/09/15-22:15:24.859061 7f307b7fe6c0 Delete type=3 #296 -2025/09/15-22:15:24.859140 7f307b7fe6c0 Delete type=0 #298 -2025/09/15-22:23:01.577999 7f307a7fc6c0 Level-0 table #303: started -2025/09/15-22:23:01.578051 7f307a7fc6c0 Level-0 table #303: 0 bytes OK -2025/09/15-22:23:01.584148 7f307a7fc6c0 Delete type=0 #301 -2025/09/15-22:23:01.597073 7f307a7fc6c0 Manual compaction at level-0 from '!items!1ETVaPBtjDtzelK1' @ 72057594037927935 : 1 .. '!items!zbsVCsWxRzkzzG1N' @ 0 : 0; will stop at (end) -2025/09/15-22:23:01.597114 7f307a7fc6c0 Manual compaction at level-1 from '!items!1ETVaPBtjDtzelK1' @ 72057594037927935 : 1 .. '!items!zbsVCsWxRzkzzG1N' @ 0 : 0; will stop at (end) +2026/01/10-17:13:21.528896 7fd478fff6c0 Recovering log #306 +2026/01/10-17:13:21.539812 7fd478fff6c0 Delete type=3 #304 +2026/01/10-17:13:21.539902 7fd478fff6c0 Delete type=0 #306 +2026/01/10-22:35:10.963778 7fd4627fc6c0 Level-0 table #311: started +2026/01/10-22:35:10.963855 7fd4627fc6c0 Level-0 table #311: 0 bytes OK +2026/01/10-22:35:10.969945 7fd4627fc6c0 Delete type=0 #309 +2026/01/10-22:35:10.989919 7fd4627fc6c0 Manual compaction at level-0 from '!items!1ETVaPBtjDtzelK1' @ 72057594037927935 : 1 .. '!items!zbsVCsWxRzkzzG1N' @ 0 : 0; will stop at (end) +2026/01/10-22:35:10.989967 7fd4627fc6c0 Manual compaction at level-1 from '!items!1ETVaPBtjDtzelK1' @ 72057594037927935 : 1 .. '!items!zbsVCsWxRzkzzG1N' @ 0 : 0; will stop at (end) diff --git a/packs/armes-et-protection/LOG.old b/packs/armes-et-protection/LOG.old index 5ba6530..234f79d 100644 --- a/packs/armes-et-protection/LOG.old +++ b/packs/armes-et-protection/LOG.old @@ -1,8 +1,8 @@ -2025/09/15-21:06:27.351420 7f307bfff6c0 Recovering log #294 -2025/09/15-21:06:27.362201 7f307bfff6c0 Delete type=3 #292 -2025/09/15-21:06:27.362258 7f307bfff6c0 Delete type=0 #294 -2025/09/15-21:08:54.712395 7f307a7fc6c0 Level-0 table #299: started -2025/09/15-21:08:54.712426 7f307a7fc6c0 Level-0 table #299: 0 bytes OK -2025/09/15-21:08:54.718406 7f307a7fc6c0 Delete type=0 #297 -2025/09/15-21:08:54.731696 7f307a7fc6c0 Manual compaction at level-0 from '!items!1ETVaPBtjDtzelK1' @ 72057594037927935 : 1 .. '!items!zbsVCsWxRzkzzG1N' @ 0 : 0; will stop at (end) -2025/09/15-21:08:54.731747 7f307a7fc6c0 Manual compaction at level-1 from '!items!1ETVaPBtjDtzelK1' @ 72057594037927935 : 1 .. '!items!zbsVCsWxRzkzzG1N' @ 0 : 0; will stop at (end) +2026/01/10-16:36:54.002327 7fd462ffd6c0 Recovering log #302 +2026/01/10-16:36:54.012517 7fd462ffd6c0 Delete type=3 #300 +2026/01/10-16:36:54.012642 7fd462ffd6c0 Delete type=0 #302 +2026/01/10-17:13:09.492537 7fd4627fc6c0 Level-0 table #307: started +2026/01/10-17:13:09.492568 7fd4627fc6c0 Level-0 table #307: 0 bytes OK +2026/01/10-17:13:09.498555 7fd4627fc6c0 Delete type=0 #305 +2026/01/10-17:13:09.518553 7fd4627fc6c0 Manual compaction at level-0 from '!items!1ETVaPBtjDtzelK1' @ 72057594037927935 : 1 .. '!items!zbsVCsWxRzkzzG1N' @ 0 : 0; will stop at (end) +2026/01/10-17:13:09.518642 7fd4627fc6c0 Manual compaction at level-1 from '!items!1ETVaPBtjDtzelK1' @ 72057594037927935 : 1 .. '!items!zbsVCsWxRzkzzG1N' @ 0 : 0; will stop at (end) diff --git a/packs/armes-et-protection/MANIFEST-000300 b/packs/armes-et-protection/MANIFEST-000308 similarity index 72% rename from packs/armes-et-protection/MANIFEST-000300 rename to packs/armes-et-protection/MANIFEST-000308 index 6f33a566d0902396a33c978fef45ea5245f7ca59..e7115efc7ed05a48c373a45e7e99c080101e079b 100644 GIT binary patch delta 43 tcmdnMxPfs(kBaZJpi|roj7(dZI2o9?F|piWG&s|;5+t$>B(eh}0stb}3+ey> delta 43 tcmdnMxPfs(kIK)-AGNs|7@5{GaWXKkV`90%sPLkT2PCo%B(eb{0st`>3+Mm< diff --git a/packs/atouts-feeriques/000302.log b/packs/atouts-feeriques/000310.log similarity index 100% rename from packs/atouts-feeriques/000302.log rename to packs/atouts-feeriques/000310.log diff --git a/packs/atouts-feeriques/CURRENT b/packs/atouts-feeriques/CURRENT index 16abe4a..43585a4 100644 --- a/packs/atouts-feeriques/CURRENT +++ b/packs/atouts-feeriques/CURRENT @@ -1 +1 @@ -MANIFEST-000300 +MANIFEST-000308 diff --git a/packs/atouts-feeriques/LOG b/packs/atouts-feeriques/LOG index 2cd064b..ad3e71f 100644 --- a/packs/atouts-feeriques/LOG +++ b/packs/atouts-feeriques/LOG @@ -1,8 +1,8 @@ -2025/09/15-22:15:24.798700 7f307bfff6c0 Recovering log #298 -2025/09/15-22:15:24.808066 7f307bfff6c0 Delete type=3 #296 -2025/09/15-22:15:24.808115 7f307bfff6c0 Delete type=0 #298 -2025/09/15-22:23:01.541562 7f307a7fc6c0 Level-0 table #303: started -2025/09/15-22:23:01.541615 7f307a7fc6c0 Level-0 table #303: 0 bytes OK -2025/09/15-22:23:01.547814 7f307a7fc6c0 Delete type=0 #301 -2025/09/15-22:23:01.565908 7f307a7fc6c0 Manual compaction at level-0 from '!items!0fPXtA5LkLgG8uDj' @ 72057594037927935 : 1 .. '!items!zvtBlG6KCIn0oCVk' @ 0 : 0; will stop at (end) -2025/09/15-22:23:01.565949 7f307a7fc6c0 Manual compaction at level-1 from '!items!0fPXtA5LkLgG8uDj' @ 72057594037927935 : 1 .. '!items!zvtBlG6KCIn0oCVk' @ 0 : 0; will stop at (end) +2026/01/10-17:13:21.469395 7fd4637fe6c0 Recovering log #306 +2026/01/10-17:13:21.479611 7fd4637fe6c0 Delete type=3 #304 +2026/01/10-17:13:21.479687 7fd4637fe6c0 Delete type=0 #306 +2026/01/10-22:35:10.919012 7fd4627fc6c0 Level-0 table #311: started +2026/01/10-22:35:10.919040 7fd4627fc6c0 Level-0 table #311: 0 bytes OK +2026/01/10-22:35:10.924958 7fd4627fc6c0 Delete type=0 #309 +2026/01/10-22:35:10.937993 7fd4627fc6c0 Manual compaction at level-0 from '!items!0fPXtA5LkLgG8uDj' @ 72057594037927935 : 1 .. '!items!zvtBlG6KCIn0oCVk' @ 0 : 0; will stop at (end) +2026/01/10-22:35:10.938027 7fd4627fc6c0 Manual compaction at level-1 from '!items!0fPXtA5LkLgG8uDj' @ 72057594037927935 : 1 .. '!items!zvtBlG6KCIn0oCVk' @ 0 : 0; will stop at (end) diff --git a/packs/atouts-feeriques/LOG.old b/packs/atouts-feeriques/LOG.old index 73dcf6d..9b0fe35 100644 --- a/packs/atouts-feeriques/LOG.old +++ b/packs/atouts-feeriques/LOG.old @@ -1,8 +1,8 @@ -2025/09/15-21:06:27.300488 7f307bfff6c0 Recovering log #294 -2025/09/15-21:06:27.310028 7f307bfff6c0 Delete type=3 #292 -2025/09/15-21:06:27.310094 7f307bfff6c0 Delete type=0 #294 -2025/09/15-21:08:54.685417 7f307a7fc6c0 Level-0 table #299: started -2025/09/15-21:08:54.685439 7f307a7fc6c0 Level-0 table #299: 0 bytes OK -2025/09/15-21:08:54.692723 7f307a7fc6c0 Delete type=0 #297 -2025/09/15-21:08:54.705096 7f307a7fc6c0 Manual compaction at level-0 from '!items!0fPXtA5LkLgG8uDj' @ 72057594037927935 : 1 .. '!items!zvtBlG6KCIn0oCVk' @ 0 : 0; will stop at (end) -2025/09/15-21:08:54.705139 7f307a7fc6c0 Manual compaction at level-1 from '!items!0fPXtA5LkLgG8uDj' @ 72057594037927935 : 1 .. '!items!zvtBlG6KCIn0oCVk' @ 0 : 0; will stop at (end) +2026/01/10-16:36:53.937580 7fd463fff6c0 Recovering log #302 +2026/01/10-16:36:53.948656 7fd463fff6c0 Delete type=3 #300 +2026/01/10-16:36:53.948746 7fd463fff6c0 Delete type=0 #302 +2026/01/10-17:13:09.478691 7fd4627fc6c0 Level-0 table #307: started +2026/01/10-17:13:09.478722 7fd4627fc6c0 Level-0 table #307: 0 bytes OK +2026/01/10-17:13:09.485719 7fd4627fc6c0 Delete type=0 #305 +2026/01/10-17:13:09.492280 7fd4627fc6c0 Manual compaction at level-0 from '!items!0fPXtA5LkLgG8uDj' @ 72057594037927935 : 1 .. '!items!zvtBlG6KCIn0oCVk' @ 0 : 0; will stop at (end) +2026/01/10-17:13:09.492336 7fd4627fc6c0 Manual compaction at level-1 from '!items!0fPXtA5LkLgG8uDj' @ 72057594037927935 : 1 .. '!items!zvtBlG6KCIn0oCVk' @ 0 : 0; will stop at (end) diff --git a/packs/atouts-feeriques/MANIFEST-000300 b/packs/atouts-feeriques/MANIFEST-000308 similarity index 72% rename from packs/atouts-feeriques/MANIFEST-000300 rename to packs/atouts-feeriques/MANIFEST-000308 index f7e3f78bc9526ff0e1277b3ee0a875c82ea7a003..26866ef375107d9a40178b3e06c50b2322b21cdc 100644 GIT binary patch delta 43 tcmdnMxPfs(kBYq1WHD|AMy9PyoD9s{m{?9TJ1Hc72Z?M0iR=K0008MA3HSg2 delta 43 tcmdnMxPfs(kIHLtlUi;DMy9n)oD9tCm{?9T2Z==A0g0>wiEIFg0007R3XA{% diff --git a/packs/avantages/000302.log b/packs/avantages/000310.log similarity index 100% rename from packs/avantages/000302.log rename to packs/avantages/000310.log diff --git a/packs/avantages/CURRENT b/packs/avantages/CURRENT index 16abe4a..43585a4 100644 --- a/packs/avantages/CURRENT +++ b/packs/avantages/CURRENT @@ -1 +1 @@ -MANIFEST-000300 +MANIFEST-000308 diff --git a/packs/avantages/LOG b/packs/avantages/LOG index 5dac42a..3f6beba 100644 --- a/packs/avantages/LOG +++ b/packs/avantages/LOG @@ -1,8 +1,8 @@ -2025/09/15-22:15:24.760919 7f3080dfa6c0 Recovering log #298 -2025/09/15-22:15:24.770694 7f3080dfa6c0 Delete type=3 #296 -2025/09/15-22:15:24.770767 7f3080dfa6c0 Delete type=0 #298 -2025/09/15-22:23:01.521581 7f307a7fc6c0 Level-0 table #303: started -2025/09/15-22:23:01.521642 7f307a7fc6c0 Level-0 table #303: 0 bytes OK -2025/09/15-22:23:01.528012 7f307a7fc6c0 Delete type=0 #301 -2025/09/15-22:23:01.534278 7f307a7fc6c0 Manual compaction at level-0 from '!items!0EAAt0qSzcD9VRBH' @ 72057594037927935 : 1 .. '!items!zfpjROW9LDAlXUkN' @ 0 : 0; will stop at (end) -2025/09/15-22:23:01.534315 7f307a7fc6c0 Manual compaction at level-1 from '!items!0EAAt0qSzcD9VRBH' @ 72057594037927935 : 1 .. '!items!zfpjROW9LDAlXUkN' @ 0 : 0; will stop at (end) +2026/01/10-17:13:21.429229 7fd463fff6c0 Recovering log #306 +2026/01/10-17:13:21.439355 7fd463fff6c0 Delete type=3 #304 +2026/01/10-17:13:21.439437 7fd463fff6c0 Delete type=0 #306 +2026/01/10-22:35:10.925075 7fd4627fc6c0 Level-0 table #311: started +2026/01/10-22:35:10.925115 7fd4627fc6c0 Level-0 table #311: 0 bytes OK +2026/01/10-22:35:10.931575 7fd4627fc6c0 Delete type=0 #309 +2026/01/10-22:35:10.938004 7fd4627fc6c0 Manual compaction at level-0 from '!items!0EAAt0qSzcD9VRBH' @ 72057594037927935 : 1 .. '!items!zfpjROW9LDAlXUkN' @ 0 : 0; will stop at (end) +2026/01/10-22:35:10.938039 7fd4627fc6c0 Manual compaction at level-1 from '!items!0EAAt0qSzcD9VRBH' @ 72057594037927935 : 1 .. '!items!zfpjROW9LDAlXUkN' @ 0 : 0; will stop at (end) diff --git a/packs/avantages/LOG.old b/packs/avantages/LOG.old index 8756198..b1751c8 100644 --- a/packs/avantages/LOG.old +++ b/packs/avantages/LOG.old @@ -1,8 +1,8 @@ -2025/09/15-21:06:27.262631 7f307bfff6c0 Recovering log #294 -2025/09/15-21:06:27.272396 7f307bfff6c0 Delete type=3 #292 -2025/09/15-21:06:27.272468 7f307bfff6c0 Delete type=0 #294 -2025/09/15-21:08:54.666847 7f307a7fc6c0 Level-0 table #299: started -2025/09/15-21:08:54.666873 7f307a7fc6c0 Level-0 table #299: 0 bytes OK -2025/09/15-21:08:54.672959 7f307a7fc6c0 Delete type=0 #297 -2025/09/15-21:08:54.679358 7f307a7fc6c0 Manual compaction at level-0 from '!items!0EAAt0qSzcD9VRBH' @ 72057594037927935 : 1 .. '!items!zfpjROW9LDAlXUkN' @ 0 : 0; will stop at (end) -2025/09/15-21:08:54.679384 7f307a7fc6c0 Manual compaction at level-1 from '!items!0EAAt0qSzcD9VRBH' @ 72057594037927935 : 1 .. '!items!zfpjROW9LDAlXUkN' @ 0 : 0; will stop at (end) +2026/01/10-16:36:53.884816 7fd463fff6c0 Recovering log #302 +2026/01/10-16:36:53.895475 7fd463fff6c0 Delete type=3 #300 +2026/01/10-16:36:53.895553 7fd463fff6c0 Delete type=0 #302 +2026/01/10-17:13:09.459290 7fd4627fc6c0 Level-0 table #307: started +2026/01/10-17:13:09.459318 7fd4627fc6c0 Level-0 table #307: 0 bytes OK +2026/01/10-17:13:09.465368 7fd4627fc6c0 Delete type=0 #305 +2026/01/10-17:13:09.465682 7fd4627fc6c0 Manual compaction at level-0 from '!items!0EAAt0qSzcD9VRBH' @ 72057594037927935 : 1 .. '!items!zfpjROW9LDAlXUkN' @ 0 : 0; will stop at (end) +2026/01/10-17:13:09.465759 7fd4627fc6c0 Manual compaction at level-1 from '!items!0EAAt0qSzcD9VRBH' @ 72057594037927935 : 1 .. '!items!zfpjROW9LDAlXUkN' @ 0 : 0; will stop at (end) diff --git a/packs/avantages/MANIFEST-000300 b/packs/avantages/MANIFEST-000308 similarity index 72% rename from packs/avantages/MANIFEST-000300 rename to packs/avantages/MANIFEST-000308 index 2169a5e8fad4788b9189de48f8f86adff30470e0..55e4bc9ef96d98e13366894fe5d14c98683740e7 100644 GIT binary patch delta 43 tcmdnMxPfs(kIEM;MV?0P_pGv6Bqov#oj7+pUORl$0^(lj7*!EI2o9?FtPk+>d{VR1Bq+_iEIOj000`#3r7F| diff --git a/packs/desavantages/000302.log b/packs/desavantages/000310.log similarity index 100% rename from packs/desavantages/000302.log rename to packs/desavantages/000310.log diff --git a/packs/desavantages/CURRENT b/packs/desavantages/CURRENT index 16abe4a..43585a4 100644 --- a/packs/desavantages/CURRENT +++ b/packs/desavantages/CURRENT @@ -1 +1 @@ -MANIFEST-000300 +MANIFEST-000308 diff --git a/packs/desavantages/LOG b/packs/desavantages/LOG index 7dfd09b..0961145 100644 --- a/packs/desavantages/LOG +++ b/packs/desavantages/LOG @@ -1,8 +1,8 @@ -2025/09/15-22:15:24.773117 7f307b7fe6c0 Recovering log #298 -2025/09/15-22:15:24.783458 7f307b7fe6c0 Delete type=3 #296 -2025/09/15-22:15:24.783520 7f307b7fe6c0 Delete type=0 #298 -2025/09/15-22:23:01.559017 7f307a7fc6c0 Level-0 table #303: started -2025/09/15-22:23:01.559048 7f307a7fc6c0 Level-0 table #303: 0 bytes OK -2025/09/15-22:23:01.565802 7f307a7fc6c0 Delete type=0 #301 -2025/09/15-22:23:01.565930 7f307a7fc6c0 Manual compaction at level-0 from '!items!2QqvtClSVnh5ejXu' @ 72057594037927935 : 1 .. '!items!xzRJ6JP1HqoqxLdj' @ 0 : 0; will stop at (end) -2025/09/15-22:23:01.565957 7f307a7fc6c0 Manual compaction at level-1 from '!items!2QqvtClSVnh5ejXu' @ 72057594037927935 : 1 .. '!items!xzRJ6JP1HqoqxLdj' @ 0 : 0; will stop at (end) +2026/01/10-17:13:21.442425 7fd478fff6c0 Recovering log #306 +2026/01/10-17:13:21.453357 7fd478fff6c0 Delete type=3 #304 +2026/01/10-17:13:21.453438 7fd478fff6c0 Delete type=0 #306 +2026/01/10-22:35:10.950222 7fd4627fc6c0 Level-0 table #311: started +2026/01/10-22:35:10.950248 7fd4627fc6c0 Level-0 table #311: 0 bytes OK +2026/01/10-22:35:10.957326 7fd4627fc6c0 Delete type=0 #309 +2026/01/10-22:35:10.963639 7fd4627fc6c0 Manual compaction at level-0 from '!items!2QqvtClSVnh5ejXu' @ 72057594037927935 : 1 .. '!items!xzRJ6JP1HqoqxLdj' @ 0 : 0; will stop at (end) +2026/01/10-22:35:10.963675 7fd4627fc6c0 Manual compaction at level-1 from '!items!2QqvtClSVnh5ejXu' @ 72057594037927935 : 1 .. '!items!xzRJ6JP1HqoqxLdj' @ 0 : 0; will stop at (end) diff --git a/packs/desavantages/LOG.old b/packs/desavantages/LOG.old index e1b6740..14f7b1c 100644 --- a/packs/desavantages/LOG.old +++ b/packs/desavantages/LOG.old @@ -1,8 +1,8 @@ -2025/09/15-21:06:27.274645 7f3080dfa6c0 Recovering log #294 -2025/09/15-21:06:27.285405 7f3080dfa6c0 Delete type=3 #292 -2025/09/15-21:06:27.285486 7f3080dfa6c0 Delete type=0 #294 -2025/09/15-21:08:54.679508 7f307a7fc6c0 Level-0 table #299: started -2025/09/15-21:08:54.679542 7f307a7fc6c0 Level-0 table #299: 0 bytes OK -2025/09/15-21:08:54.685322 7f307a7fc6c0 Delete type=0 #297 -2025/09/15-21:08:54.705080 7f307a7fc6c0 Manual compaction at level-0 from '!items!2QqvtClSVnh5ejXu' @ 72057594037927935 : 1 .. '!items!xzRJ6JP1HqoqxLdj' @ 0 : 0; will stop at (end) -2025/09/15-21:08:54.705123 7f307a7fc6c0 Manual compaction at level-1 from '!items!2QqvtClSVnh5ejXu' @ 72057594037927935 : 1 .. '!items!xzRJ6JP1HqoqxLdj' @ 0 : 0; will stop at (end) +2026/01/10-16:36:53.901069 7fd462ffd6c0 Recovering log #302 +2026/01/10-16:36:53.911601 7fd462ffd6c0 Delete type=3 #300 +2026/01/10-16:36:53.911674 7fd462ffd6c0 Delete type=0 #302 +2026/01/10-17:13:09.445468 7fd4627fc6c0 Level-0 table #307: started +2026/01/10-17:13:09.445527 7fd4627fc6c0 Level-0 table #307: 0 bytes OK +2026/01/10-17:13:09.451617 7fd4627fc6c0 Delete type=0 #305 +2026/01/10-17:13:09.465640 7fd4627fc6c0 Manual compaction at level-0 from '!items!2QqvtClSVnh5ejXu' @ 72057594037927935 : 1 .. '!items!xzRJ6JP1HqoqxLdj' @ 0 : 0; will stop at (end) +2026/01/10-17:13:09.465701 7fd4627fc6c0 Manual compaction at level-1 from '!items!2QqvtClSVnh5ejXu' @ 72057594037927935 : 1 .. '!items!xzRJ6JP1HqoqxLdj' @ 0 : 0; will stop at (end) diff --git a/packs/desavantages/MANIFEST-000300 b/packs/desavantages/MANIFEST-000308 similarity index 72% rename from packs/desavantages/MANIFEST-000300 rename to packs/desavantages/MANIFEST-000308 index 553f35a7e7915970651a38035d08c896ad85f35f..b6f12892597d952d000728ca5bcdb7f3c4a58bfd 100644 GIT binary patch delta 43 tcmdnMxPfs(kIILGf?K&67@4**aWXJ(V`4eX$h+h46_Cg_kjM^@2mmTP3>yFd delta 43 tcmdnMxPfs(kBZ8HO>x`|j7)2pI2oANF|izG{JZ-kBS>T&NMr*@1OOVE3!VS~ diff --git a/packs/journaux/000020.log b/packs/journaux/000028.log similarity index 100% rename from packs/journaux/000020.log rename to packs/journaux/000028.log diff --git a/packs/journaux/CURRENT b/packs/journaux/CURRENT index e417a51..8b15215 100644 --- a/packs/journaux/CURRENT +++ b/packs/journaux/CURRENT @@ -1 +1 @@ -MANIFEST-000018 +MANIFEST-000026 diff --git a/packs/journaux/LOG b/packs/journaux/LOG index 07797bb..b8715be 100644 --- a/packs/journaux/LOG +++ b/packs/journaux/LOG @@ -1,8 +1,8 @@ -2025/09/15-22:15:24.887393 7f3080dfa6c0 Recovering log #16 -2025/09/15-22:15:24.897947 7f3080dfa6c0 Delete type=3 #14 -2025/09/15-22:15:24.898013 7f3080dfa6c0 Delete type=0 #16 -2025/09/15-22:23:01.610372 7f307a7fc6c0 Level-0 table #21: started -2025/09/15-22:23:01.610444 7f307a7fc6c0 Level-0 table #21: 0 bytes OK -2025/09/15-22:23:01.616579 7f307a7fc6c0 Delete type=0 #19 -2025/09/15-22:23:01.623474 7f307a7fc6c0 Manual compaction at level-0 from '!journal!QZDy8zwSVh7t4meA' @ 72057594037927935 : 1 .. '!journal.pages!QZDy8zwSVh7t4meA.gdXBDBkPlBjfmTy7' @ 0 : 0; will stop at (end) -2025/09/15-22:23:01.623518 7f307a7fc6c0 Manual compaction at level-1 from '!journal!QZDy8zwSVh7t4meA' @ 72057594037927935 : 1 .. '!journal.pages!QZDy8zwSVh7t4meA.gdXBDBkPlBjfmTy7' @ 0 : 0; will stop at (end) +2026/01/10-17:13:21.571878 7fd462ffd6c0 Recovering log #24 +2026/01/10-17:13:21.582771 7fd462ffd6c0 Delete type=3 #22 +2026/01/10-17:13:21.582857 7fd462ffd6c0 Delete type=0 #24 +2026/01/10-22:35:10.976802 7fd4627fc6c0 Level-0 table #29: started +2026/01/10-22:35:10.976847 7fd4627fc6c0 Level-0 table #29: 0 bytes OK +2026/01/10-22:35:10.983280 7fd4627fc6c0 Delete type=0 #27 +2026/01/10-22:35:10.989948 7fd4627fc6c0 Manual compaction at level-0 from '!journal!QZDy8zwSVh7t4meA' @ 72057594037927935 : 1 .. '!journal.pages!QZDy8zwSVh7t4meA.gdXBDBkPlBjfmTy7' @ 0 : 0; will stop at (end) +2026/01/10-22:35:10.989976 7fd4627fc6c0 Manual compaction at level-1 from '!journal!QZDy8zwSVh7t4meA' @ 72057594037927935 : 1 .. '!journal.pages!QZDy8zwSVh7t4meA.gdXBDBkPlBjfmTy7' @ 0 : 0; will stop at (end) diff --git a/packs/journaux/LOG.old b/packs/journaux/LOG.old index 2b83ea9..a5a8000 100644 --- a/packs/journaux/LOG.old +++ b/packs/journaux/LOG.old @@ -1,8 +1,8 @@ -2025/09/15-21:06:27.389764 7f307affd6c0 Recovering log #12 -2025/09/15-21:06:27.400118 7f307affd6c0 Delete type=3 #10 -2025/09/15-21:06:27.400175 7f307affd6c0 Delete type=0 #12 -2025/09/15-21:08:54.731831 7f307a7fc6c0 Level-0 table #17: started -2025/09/15-21:08:54.731879 7f307a7fc6c0 Level-0 table #17: 0 bytes OK -2025/09/15-21:08:54.738151 7f307a7fc6c0 Delete type=0 #15 -2025/09/15-21:08:54.758915 7f307a7fc6c0 Manual compaction at level-0 from '!journal!QZDy8zwSVh7t4meA' @ 72057594037927935 : 1 .. '!journal.pages!QZDy8zwSVh7t4meA.gdXBDBkPlBjfmTy7' @ 0 : 0; will stop at (end) -2025/09/15-21:08:54.758952 7f307a7fc6c0 Manual compaction at level-1 from '!journal!QZDy8zwSVh7t4meA' @ 72057594037927935 : 1 .. '!journal.pages!QZDy8zwSVh7t4meA.gdXBDBkPlBjfmTy7' @ 0 : 0; will stop at (end) +2026/01/10-16:36:54.053637 7fd4637fe6c0 Recovering log #20 +2026/01/10-16:36:54.063508 7fd4637fe6c0 Delete type=3 #18 +2026/01/10-16:36:54.063638 7fd4637fe6c0 Delete type=0 #20 +2026/01/10-17:13:09.505493 7fd4627fc6c0 Level-0 table #25: started +2026/01/10-17:13:09.505547 7fd4627fc6c0 Level-0 table #25: 0 bytes OK +2026/01/10-17:13:09.512124 7fd4627fc6c0 Delete type=0 #23 +2026/01/10-17:13:09.518599 7fd4627fc6c0 Manual compaction at level-0 from '!journal!QZDy8zwSVh7t4meA' @ 72057594037927935 : 1 .. '!journal.pages!QZDy8zwSVh7t4meA.gdXBDBkPlBjfmTy7' @ 0 : 0; will stop at (end) +2026/01/10-17:13:09.518680 7fd4627fc6c0 Manual compaction at level-1 from '!journal!QZDy8zwSVh7t4meA' @ 72057594037927935 : 1 .. '!journal.pages!QZDy8zwSVh7t4meA.gdXBDBkPlBjfmTy7' @ 0 : 0; will stop at (end) diff --git a/packs/journaux/MANIFEST-000018 b/packs/journaux/MANIFEST-000026 similarity index 79% rename from packs/journaux/MANIFEST-000018 rename to packs/journaux/MANIFEST-000026 index 525f36293c79467221ce063b853a6a1c9feea997..225be5ffa48e0ec6326e8953ca43c013b614cf5c 100644 GIT binary patch delta 37 pcmZ3;xR7x|vs{Ovs5l1$Ba<{I1G5YZQ|&p~5D-@e$dzMZ0sxN?1;PLT delta 37 pcmZ3;xR7x|vz+2o$7vi4j7-9u49p@dOeVi9Zi2WXK&}`I69A;M2F(Bf diff --git a/packs/magie-sorts/000105.log b/packs/magie-sorts/000114.log similarity index 100% rename from packs/magie-sorts/000105.log rename to packs/magie-sorts/000114.log diff --git a/packs/magie-sorts/CURRENT b/packs/magie-sorts/CURRENT index 1fb45e8..b59a6ba 100644 --- a/packs/magie-sorts/CURRENT +++ b/packs/magie-sorts/CURRENT @@ -1 +1 @@ -MANIFEST-000103 +MANIFEST-000112 diff --git a/packs/magie-sorts/LOG b/packs/magie-sorts/LOG index 310cca0..d7176e4 100644 --- a/packs/magie-sorts/LOG +++ b/packs/magie-sorts/LOG @@ -1,15 +1,8 @@ -2025/09/15-22:15:24.810480 7f307b7fe6c0 Recovering log #101 -2025/09/15-22:15:24.820390 7f307b7fe6c0 Delete type=3 #99 -2025/09/15-22:15:24.820446 7f307b7fe6c0 Delete type=0 #101 -2025/09/15-22:23:01.547894 7f307a7fc6c0 Level-0 table #106: started -2025/09/15-22:23:01.552623 7f307a7fc6c0 Level-0 table #106: 132165 bytes OK -2025/09/15-22:23:01.558854 7f307a7fc6c0 Delete type=0 #104 -2025/09/15-22:23:01.565921 7f307a7fc6c0 Manual compaction at level-0 from '!folders!5pCYN0vTiCKOHrXM' @ 72057594037927935 : 1 .. '!items!zbZ88BQkH9ZCYlDK' @ 0 : 0; will stop at (end) -2025/09/15-22:23:01.565970 7f307a7fc6c0 Manual compaction at level-1 from '!folders!5pCYN0vTiCKOHrXM' @ 72057594037927935 : 1 .. '!items!zbZ88BQkH9ZCYlDK' @ 0 : 0; will stop at '!items!zbZ88BQkH9ZCYlDK' @ 457 : 0 -2025/09/15-22:23:01.565979 7f307a7fc6c0 Compacting 1@1 + 1@2 files -2025/09/15-22:23:01.571458 7f307a7fc6c0 Generated table #107@1: 146 keys, 129863 bytes -2025/09/15-22:23:01.571503 7f307a7fc6c0 Compacted 1@1 + 1@2 files => 129863 bytes -2025/09/15-22:23:01.577463 7f307a7fc6c0 compacted to: files[ 0 0 1 0 0 0 0 ] -2025/09/15-22:23:01.577659 7f307a7fc6c0 Delete type=2 #86 -2025/09/15-22:23:01.577865 7f307a7fc6c0 Delete type=2 #106 -2025/09/15-22:23:01.597062 7f307a7fc6c0 Manual compaction at level-1 from '!items!zbZ88BQkH9ZCYlDK' @ 457 : 0 .. '!items!zbZ88BQkH9ZCYlDK' @ 0 : 0; will stop at (end) +2026/01/10-17:13:21.484535 7fd478fff6c0 Recovering log #110 +2026/01/10-17:13:21.495192 7fd478fff6c0 Delete type=3 #108 +2026/01/10-17:13:21.495268 7fd478fff6c0 Delete type=0 #110 +2026/01/10-22:35:10.938160 7fd4627fc6c0 Level-0 table #115: started +2026/01/10-22:35:10.938192 7fd4627fc6c0 Level-0 table #115: 0 bytes OK +2026/01/10-22:35:10.944117 7fd4627fc6c0 Delete type=0 #113 +2026/01/10-22:35:10.963606 7fd4627fc6c0 Manual compaction at level-0 from '!folders!5pCYN0vTiCKOHrXM' @ 72057594037927935 : 1 .. '!items!zbZ88BQkH9ZCYlDK' @ 0 : 0; will stop at (end) +2026/01/10-22:35:10.963664 7fd4627fc6c0 Manual compaction at level-1 from '!folders!5pCYN0vTiCKOHrXM' @ 72057594037927935 : 1 .. '!items!zbZ88BQkH9ZCYlDK' @ 0 : 0; will stop at (end) diff --git a/packs/magie-sorts/LOG.old b/packs/magie-sorts/LOG.old index 378e60d..4dd2479 100644 --- a/packs/magie-sorts/LOG.old +++ b/packs/magie-sorts/LOG.old @@ -1,8 +1,8 @@ -2025/09/15-21:06:27.312840 7f3080dfa6c0 Recovering log #97 -2025/09/15-21:06:27.322814 7f3080dfa6c0 Delete type=3 #95 -2025/09/15-21:06:27.322901 7f3080dfa6c0 Delete type=0 #97 -2025/09/15-21:08:54.698842 7f307a7fc6c0 Level-0 table #102: started -2025/09/15-21:08:54.698870 7f307a7fc6c0 Level-0 table #102: 0 bytes OK -2025/09/15-21:08:54.704908 7f307a7fc6c0 Delete type=0 #100 -2025/09/15-21:08:54.705132 7f307a7fc6c0 Manual compaction at level-0 from '!folders!1ENmqNfRLUTmKPc6' @ 72057594037927935 : 1 .. '!items!zbZ88BQkH9ZCYlDK' @ 0 : 0; will stop at (end) -2025/09/15-21:08:54.705168 7f307a7fc6c0 Manual compaction at level-1 from '!folders!1ENmqNfRLUTmKPc6' @ 72057594037927935 : 1 .. '!items!zbZ88BQkH9ZCYlDK' @ 0 : 0; will stop at (end) +2026/01/10-16:36:53.954476 7fd462ffd6c0 Recovering log #105 +2026/01/10-16:36:53.964579 7fd462ffd6c0 Delete type=3 #103 +2026/01/10-16:36:53.964711 7fd462ffd6c0 Delete type=0 #105 +2026/01/10-17:13:09.485886 7fd4627fc6c0 Level-0 table #111: started +2026/01/10-17:13:09.485937 7fd4627fc6c0 Level-0 table #111: 0 bytes OK +2026/01/10-17:13:09.492028 7fd4627fc6c0 Delete type=0 #109 +2026/01/10-17:13:09.492315 7fd4627fc6c0 Manual compaction at level-0 from '!folders!5pCYN0vTiCKOHrXM' @ 72057594037927935 : 1 .. '!items!zbZ88BQkH9ZCYlDK' @ 0 : 0; will stop at (end) +2026/01/10-17:13:09.492345 7fd4627fc6c0 Manual compaction at level-1 from '!folders!5pCYN0vTiCKOHrXM' @ 72057594037927935 : 1 .. '!items!zbZ88BQkH9ZCYlDK' @ 0 : 0; will stop at (end) diff --git a/packs/magie-sorts/MANIFEST-000103 b/packs/magie-sorts/MANIFEST-000103 deleted file mode 100644 index 0fbde547e210a25ddd7b96c2dab3bffb16639d81..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 373 zcmX@1C1}~kz{n_-lUkOVlai$8R9TW*o>`pgoS$2eSd>_jU&P8Nub5eqnp><`l@%D6 z;Z;zYRgjY8Zc>%Q@RI=y*qOrq-DFo(Ov}$nNi8Z?G<5aLE%ZwZ@(B&e^$tijW1I$2 z2RA1v%EH1aFx$g2$~iK}#hcNQ5v*Y8rSu+721cd~P6p;omNm@J5{1780{NLhem2WV zR(8g$qa7T$?O}KgF$b4D3@0J-&1;ujtAv`H12h-OhiEQ?>0o2bVq*$pXUabQ4auLT f1`pgoS$2eSd>_jU&P8Nub5eqnp><`l@w)R z;S`wdVHxEdnd9QkaFUS$1lXCfkAGuVR7}gyNl7g#Rx~Yej`TAq3(0i$_V*}?@MWxH p0;|Ji4x=wb{^tGNS)2@vOof~b%tb6GS#NEf*aG4g0r@3BJ^;CZF)aW9 literal 0 HcmV?d00001 diff --git a/packs/pouvoirs/000303.log b/packs/pouvoirs/000311.log similarity index 100% rename from packs/pouvoirs/000303.log rename to packs/pouvoirs/000311.log diff --git a/packs/pouvoirs/CURRENT b/packs/pouvoirs/CURRENT index 066a17b..e61ecf2 100644 --- a/packs/pouvoirs/CURRENT +++ b/packs/pouvoirs/CURRENT @@ -1 +1 @@ -MANIFEST-000301 +MANIFEST-000309 diff --git a/packs/pouvoirs/LOG b/packs/pouvoirs/LOG index 4e36e46..7e2b8f1 100644 --- a/packs/pouvoirs/LOG +++ b/packs/pouvoirs/LOG @@ -1,8 +1,8 @@ -2025/09/15-22:15:24.835820 7f307bfff6c0 Recovering log #299 -2025/09/15-22:15:24.845487 7f307bfff6c0 Delete type=3 #297 -2025/09/15-22:15:24.845568 7f307bfff6c0 Delete type=0 #299 -2025/09/15-22:23:01.591108 7f307a7fc6c0 Level-0 table #304: started -2025/09/15-22:23:01.591136 7f307a7fc6c0 Level-0 table #304: 0 bytes OK -2025/09/15-22:23:01.596986 7f307a7fc6c0 Delete type=0 #302 -2025/09/15-22:23:01.597090 7f307a7fc6c0 Manual compaction at level-0 from '!items!19r9ijZUyvnlIqgm' @ 72057594037927935 : 1 .. '!items!zON0h5SjFyANjPnA' @ 0 : 0; will stop at (end) -2025/09/15-22:23:01.597120 7f307a7fc6c0 Manual compaction at level-1 from '!items!19r9ijZUyvnlIqgm' @ 72057594037927935 : 1 .. '!items!zON0h5SjFyANjPnA' @ 0 : 0; will stop at (end) +2026/01/10-17:13:21.514326 7fd4637fe6c0 Recovering log #307 +2026/01/10-17:13:21.524571 7fd4637fe6c0 Delete type=3 #305 +2026/01/10-17:13:21.524713 7fd4637fe6c0 Delete type=0 #307 +2026/01/10-22:35:10.957462 7fd4627fc6c0 Level-0 table #312: started +2026/01/10-22:35:10.957496 7fd4627fc6c0 Level-0 table #312: 0 bytes OK +2026/01/10-22:35:10.963461 7fd4627fc6c0 Delete type=0 #310 +2026/01/10-22:35:10.963651 7fd4627fc6c0 Manual compaction at level-0 from '!items!19r9ijZUyvnlIqgm' @ 72057594037927935 : 1 .. '!items!zON0h5SjFyANjPnA' @ 0 : 0; will stop at (end) +2026/01/10-22:35:10.963700 7fd4627fc6c0 Manual compaction at level-1 from '!items!19r9ijZUyvnlIqgm' @ 72057594037927935 : 1 .. '!items!zON0h5SjFyANjPnA' @ 0 : 0; will stop at (end) diff --git a/packs/pouvoirs/LOG.old b/packs/pouvoirs/LOG.old index ec2af18..3448ff1 100644 --- a/packs/pouvoirs/LOG.old +++ b/packs/pouvoirs/LOG.old @@ -1,8 +1,8 @@ -2025/09/15-21:06:27.338726 7f307b7fe6c0 Recovering log #295 -2025/09/15-21:06:27.348432 7f307b7fe6c0 Delete type=3 #293 -2025/09/15-21:06:27.348491 7f307b7fe6c0 Delete type=0 #295 -2025/09/15-21:08:54.718495 7f307a7fc6c0 Level-0 table #300: started -2025/09/15-21:08:54.718519 7f307a7fc6c0 Level-0 table #300: 0 bytes OK -2025/09/15-21:08:54.724957 7f307a7fc6c0 Delete type=0 #298 -2025/09/15-21:08:54.731709 7f307a7fc6c0 Manual compaction at level-0 from '!items!19r9ijZUyvnlIqgm' @ 72057594037927935 : 1 .. '!items!zON0h5SjFyANjPnA' @ 0 : 0; will stop at (end) -2025/09/15-21:08:54.731758 7f307a7fc6c0 Manual compaction at level-1 from '!items!19r9ijZUyvnlIqgm' @ 72057594037927935 : 1 .. '!items!zON0h5SjFyANjPnA' @ 0 : 0; will stop at (end) +2026/01/10-16:36:53.985018 7fd463fff6c0 Recovering log #303 +2026/01/10-16:36:53.995735 7fd463fff6c0 Delete type=3 #301 +2026/01/10-16:36:53.995805 7fd463fff6c0 Delete type=0 #303 +2026/01/10-17:13:09.498747 7fd4627fc6c0 Level-0 table #308: started +2026/01/10-17:13:09.498805 7fd4627fc6c0 Level-0 table #308: 0 bytes OK +2026/01/10-17:13:09.505290 7fd4627fc6c0 Delete type=0 #306 +2026/01/10-17:13:09.518578 7fd4627fc6c0 Manual compaction at level-0 from '!items!19r9ijZUyvnlIqgm' @ 72057594037927935 : 1 .. '!items!zON0h5SjFyANjPnA' @ 0 : 0; will stop at (end) +2026/01/10-17:13:09.518661 7fd4627fc6c0 Manual compaction at level-1 from '!items!19r9ijZUyvnlIqgm' @ 72057594037927935 : 1 .. '!items!zON0h5SjFyANjPnA' @ 0 : 0; will stop at (end) diff --git a/packs/pouvoirs/MANIFEST-000301 b/packs/pouvoirs/MANIFEST-000309 similarity index 72% rename from packs/pouvoirs/MANIFEST-000301 rename to packs/pouvoirs/MANIFEST-000309 index b4319141fed2484a3aa6ba2354f5b59dd251b02f..19c436f0cbd0d114be6e9774581cdbf239e9bc0e 100644 GIT binary patch delta 43 tcmdnMxPfs(k4m-NQeJKbMy72{oD9s{nONqqJpU>C8YHqEB(f7E0ssj?3pW4& delta 43 tcmdnMxPfs(kIH!&whV3tMy7R4oD9tCnONqqeE%zd0wl5?B(f1C0ssil3m5i^X0C~C=3jhEB literal 0 HcmV?d00001 diff --git a/packs/scenes/000271.log b/packs/scenes/000279.log similarity index 100% rename from packs/scenes/000271.log rename to packs/scenes/000279.log diff --git a/packs/scenes/CURRENT b/packs/scenes/CURRENT index 2a5d6f7..3a0724c 100644 --- a/packs/scenes/CURRENT +++ b/packs/scenes/CURRENT @@ -1 +1 @@ -MANIFEST-000269 +MANIFEST-000277 diff --git a/packs/scenes/LOG b/packs/scenes/LOG index 2c02f8c..6862bb0 100644 --- a/packs/scenes/LOG +++ b/packs/scenes/LOG @@ -1,8 +1,8 @@ -2025/09/15-22:15:24.873861 7f307affd6c0 Recovering log #267 -2025/09/15-22:15:24.883924 7f307affd6c0 Delete type=3 #265 -2025/09/15-22:15:24.884000 7f307affd6c0 Delete type=0 #267 -2025/09/15-22:23:01.616718 7f307a7fc6c0 Level-0 table #272: started -2025/09/15-22:23:01.616761 7f307a7fc6c0 Level-0 table #272: 0 bytes OK -2025/09/15-22:23:01.623192 7f307a7fc6c0 Delete type=0 #270 -2025/09/15-22:23:01.623491 7f307a7fc6c0 Manual compaction at level-0 from '!scenes!8DjkNeeujp2qff1N' @ 72057594037927935 : 1 .. '!scenes!ypDutqjqZcr7lx6I' @ 0 : 0; will stop at (end) -2025/09/15-22:23:01.623509 7f307a7fc6c0 Manual compaction at level-1 from '!scenes!8DjkNeeujp2qff1N' @ 72057594037927935 : 1 .. '!scenes!ypDutqjqZcr7lx6I' @ 0 : 0; will stop at (end) +2026/01/10-17:13:21.556875 7fd4637fe6c0 Recovering log #275 +2026/01/10-17:13:21.568002 7fd4637fe6c0 Delete type=3 #273 +2026/01/10-17:13:21.568079 7fd4637fe6c0 Delete type=0 #275 +2026/01/10-22:35:10.983465 7fd4627fc6c0 Level-0 table #280: started +2026/01/10-22:35:10.983518 7fd4627fc6c0 Level-0 table #280: 0 bytes OK +2026/01/10-22:35:10.989758 7fd4627fc6c0 Delete type=0 #278 +2026/01/10-22:35:10.989959 7fd4627fc6c0 Manual compaction at level-0 from '!scenes!8DjkNeeujp2qff1N' @ 72057594037927935 : 1 .. '!scenes!ypDutqjqZcr7lx6I' @ 0 : 0; will stop at (end) +2026/01/10-22:35:10.989984 7fd4627fc6c0 Manual compaction at level-1 from '!scenes!8DjkNeeujp2qff1N' @ 72057594037927935 : 1 .. '!scenes!ypDutqjqZcr7lx6I' @ 0 : 0; will stop at (end) diff --git a/packs/scenes/LOG.old b/packs/scenes/LOG.old index c80b4eb..6101b22 100644 --- a/packs/scenes/LOG.old +++ b/packs/scenes/LOG.old @@ -1,8 +1,8 @@ -2025/09/15-21:06:27.376909 7f307b7fe6c0 Recovering log #263 -2025/09/15-21:06:27.386759 7f307b7fe6c0 Delete type=3 #261 -2025/09/15-21:06:27.386852 7f307b7fe6c0 Delete type=0 #263 -2025/09/15-21:08:54.752330 7f307a7fc6c0 Level-0 table #268: started -2025/09/15-21:08:54.752369 7f307a7fc6c0 Level-0 table #268: 0 bytes OK -2025/09/15-21:08:54.758780 7f307a7fc6c0 Delete type=0 #266 -2025/09/15-21:08:54.758945 7f307a7fc6c0 Manual compaction at level-0 from '!scenes!8DjkNeeujp2qff1N' @ 72057594037927935 : 1 .. '!scenes!ypDutqjqZcr7lx6I' @ 0 : 0; will stop at (end) -2025/09/15-21:08:54.758971 7f307a7fc6c0 Manual compaction at level-1 from '!scenes!8DjkNeeujp2qff1N' @ 72057594037927935 : 1 .. '!scenes!ypDutqjqZcr7lx6I' @ 0 : 0; will stop at (end) +2026/01/10-16:36:54.030870 7fd463fff6c0 Recovering log #271 +2026/01/10-16:36:54.048804 7fd463fff6c0 Delete type=3 #269 +2026/01/10-16:36:54.048881 7fd463fff6c0 Delete type=0 #271 +2026/01/10-17:13:09.512260 7fd4627fc6c0 Level-0 table #276: started +2026/01/10-17:13:09.512293 7fd4627fc6c0 Level-0 table #276: 0 bytes OK +2026/01/10-17:13:09.518322 7fd4627fc6c0 Delete type=0 #274 +2026/01/10-17:13:09.518622 7fd4627fc6c0 Manual compaction at level-0 from '!scenes!8DjkNeeujp2qff1N' @ 72057594037927935 : 1 .. '!scenes!ypDutqjqZcr7lx6I' @ 0 : 0; will stop at (end) +2026/01/10-17:13:09.518702 7fd4627fc6c0 Manual compaction at level-1 from '!scenes!8DjkNeeujp2qff1N' @ 72057594037927935 : 1 .. '!scenes!ypDutqjqZcr7lx6I' @ 0 : 0; will stop at (end) diff --git a/packs/scenes/MANIFEST-000269 b/packs/scenes/MANIFEST-000277 similarity index 72% rename from packs/scenes/MANIFEST-000269 rename to packs/scenes/MANIFEST-000277 index 5dcf196b7ba51cabae9d56d4da112da136f82505..dcb5de911071e3244ef8e076b7051353eb3d40e9 100644 GIT binary patch delta 41 scmdnMxPfs(pVFlAJN;Y?j7-y*I2o9yGqH%weVybA5||DWm

{{carac.label}}

+ name="system.caracteristiques.{{key}}.value" data-tooltip="Valeur actuelle" value="{{carac.value}}" + data-dtype="Number" /> + name="system.caracteristiques.{{key}}.rang" data-tooltip="Rang" value="{{carac.rang}}" + data-dtype="Number" /> {{/if}} {{/each}} @@ -32,9 +34,11 @@
  • {{carac.label}}

    + name="system.caracteristiques.{{key}}.value" value="{{carac.value}}" data-tooltip="Valeur actuelle" + data-dtype="Number" /> + name="system.caracteristiques.{{key}}.rang" value="{{carac.rang}}" data-tooltip="Rang" + data-dtype="Number" />
  • {{/if}} {{/each}} @@ -42,24 +46,33 @@
    - -
    - - - - - -    - - - -    - - - +
    + +
    + + + + / +
    + + +    + + + +    + + + +
    @@ -85,13 +98,13 @@
    {{#each utileSkillsPhysical as |skillDef keyProfil|}} - {{> systems/fvtt-les-heritiers/templates/partial-utile-skills.hbs skillDef=skillDef keyProfil=keyProfil isPNJ=true}} + {{> systems/fvtt-les-heritiers/templates/partial-utile-skills.hbs skillDef=skillDef keyProfil=keyProfil isPNJ=true config=config}} {{/each}}
    {{#each utileSkillsMental as |skillDef keyProfil|}} - {{> systems/fvtt-les-heritiers/templates/partial-utile-skills.hbs skillDef=skillDef keyProfil=keyProfil isPNJ=true}} + {{> systems/fvtt-les-heritiers/templates/partial-utile-skills.hbs skillDef=skillDef keyProfil=keyProfil isPNJ=true config=config}} {{/each}}
    @@ -127,9 +140,8 @@ - -
  • -

    Magie

    +
  • +

    Magie

  • @@ -146,14 +158,19 @@
    {{#each magieList as |magie idx|}} -
  • -

    +
  • + +
     
    -
  • @@ -193,55 +210,92 @@
    - {{!-- Equipement Tab --}} + {{!-- Combat Tab --}}
    +
    + +
    +
    Esquive
    +
    + + + + +
    +
    + + +
    +
    Parade
    +
    + + + + +
    +
    +
    + +
    + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    +
    + +
    + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    +
    +
    -
    +
    - - +
    + + + + / + +
    + data-dtype="Number" data-tooltip="Modificateur de PV" style="text-align: center; width: 3rem;" /> - +    + value="{{system.rang.tricherie.value}}" data-dtype="Number" data-tooltip="Points de tricherie actuels" /> + value="{{system.rang.tricherie.max}}" data-dtype="Number" data-tooltip="Points de tricherie maximum" />
    @@ -134,8 +139,7 @@ {{#each futileSkills as |skill key|}}
  • - {{skill.name}} + {{skill.name}} - - - - - - - - -
  • -
  • - - - - - - - - -
  • -
  • - - - - - -
  • +
    + +
    +
    Esquive
    +
    + + + + +
    +
    + + +
    +
    Parade
    +
    + + + + +
    +
    +
    + +
    + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    +
    + +
    + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    +
    +
    @@ -224,7 +266,7 @@
    {{#each armes as |arme key|}} -
  • +
  • {{arme.name}} @@ -232,21 +274,20 @@ {{arme.system.degats}} - + - + {{#if arme.system.isMelee}} - + - - + + {{/if}} @@ -282,7 +323,7 @@ {{protection.name}} + class="arme-defensif">{{protection.system.points}}
     
    @@ -313,24 +354,48 @@
    -
    @@ -506,16 +571,20 @@
  • {{#each magieList as |magie idx|}} -
  • -

    - - {{magie.rangSpecificName}} -
    - - -
    -

    +
  • +
    + + {{magie.rangSpecificName}} +
    +
     
    +
    + + +
  • {{#if (eq magie.name "Magie du Clan")}} @@ -667,9 +736,16 @@
    -
    -
    +
    + +
    +
    Identité
    • - + +
    • - + +
    • - + +
    • - + +
    +
    + + +
    +
    Traits & Langues
    • - + +
    • - -
    • -
    • - -
    • -
    • - + +
    -
    -
    +
    + +
    +
    Informations générales
    • + data-dtype="String" style="flex: 1;" />
    • + data-dtype="String" style="flex: 1;" />
    • + data-dtype="String" style="flex: 1;" /> +
    • +
    • + +
    • {{#if isGM}} -
    • +
    • @@ -842,53 +930,86 @@
    -
    + +
    +
    Apparence Masquée
      +
    • + + +
    • - + + data-dtype="String" style="flex: 1;" />
    • - - + +
    • -
    • - - -
    • -
    • - - -
    • -
    -
    + +
    +
    Apparence Démasquée
      -
    • - - +
    • + +
    • - + + +
    • +
    • + + value="{{system.biodata.poidsdemasquee}}" data-dtype="String" style="flex: 1;" />
    • +
    +
    +
    + +
    + +
    +
    Expérience
    +
    • + data-dtype="String" style="flex: 1;" />
    • + value="{{system.experience.pourtricher}}" data-dtype="String" style="flex: 1;" /> +
    • +
    +
    + + +
    +
    Héritage
    +
      +
    • + + +
    • +
    +
    +
    + +
    +
    +
      +
    @@ -906,40 +1027,40 @@
    - -

    Historique

    -
    -
    - {{editor description target="system.biodata.description" button=true owner=owner editable=editable}} + +
    +

    Historique

    +
    + {{formInput systemFields.biodata.fields.description enriched=enrichedDescription value=system.biodata.description name="system.biodata.description" toggled=true}} +
    - -

    Notes diverses

    -
    -
    - {{editor playernotes target="system.biodata.playernotes" button=true owner=owner editable=editable}} +
    +

    Notes diverses

    +
    + {{formInput systemFields.biodata.fields.playernotes enriched=enrichedPlayernotes value=system.biodata.playernotes name="system.biodata.playernotes" toggled=true}} +
    - -

    Rêves étranges

    -
    -
    - {{editor revesetranges target="system.biodata.revesetranges" button=true owner=owner editable=editable}} +
    +

    Rêves étranges

    +
    + {{formInput systemFields.biodata.fields.revesetranges enriched=enrichedRevesetranges value=system.biodata.revesetranges name="system.biodata.revesetranges" toggled=true}} +
    - -

    Secrets découverts

    -
    -
    - {{editor secretsdecouverts target="system.biodata.secretsdecouverts" button=true owner=owner - editable=editable}} +
    +

    Secrets découverts

    +
    + {{formInput systemFields.biodata.fields.secretsdecouverts enriched=enrichedSecretsdecouverts value=system.biodata.secretsdecouverts name="system.biodata.secretsdecouverts" toggled=true}} +
    - -

    Questions en suspens

    -
    -
    - {{editor questions target="system.biodata.questions" button=true owner=owner editable=editable}} +
    +

    Questions en suspens

    +
    + {{formInput systemFields.biodata.fields.questions enriched=enrichedQuestions value=system.biodata.questions name="system.biodata.questions" toggled=true}} +
    diff --git a/templates/chat-generic-result-old.hbs b/templates/chat-generic-result-old.hbs new file mode 100644 index 0000000..99472b4 --- /dev/null +++ b/templates/chat-generic-result-old.hbs @@ -0,0 +1,176 @@ +{{!-- Chat Card for Roll Results --}} +
    + + {{!-- Header --}} +
    + {{#if actorImg}} + {{alias}} + {{/if}} +
    +

    {{alias}}

    + {{#if competence}} +
    {{competence.name}}{{#if arme}} - {{arme.name}}{{/if}}
    + {{else if pouvoir}} +
    {{pouvoir.name}}
    + {{else if sort}} +
    {{sort.name}}
    + {{else if rang}} +
    {{rang.label}}
    + {{else}} +
    {{carac.label}}
    + {{/if}} +
    + {{#if actionImg}} + {{name}} + {{/if}} +
    + + {{!-- Attack Type Badge --}} + {{#if attackType}} +
    {{attackType}}
    + {{/if}} + + {{!-- Roll Calculation Grid --}} + {{#unless noRoll}} +
    +
    + Carac + {{carac.label}} ({{carac.value}}) +
    + + {{#if rang}} +
    + Rang + {{rang.value}} +
    + {{/if}} + + {{#if competence}} +
    + Compétence + {{competence.system.niveau}} +
    + {{/if}} + + {{#if useSpecialite}} +
    + Spécialité + +1 +
    + {{/if}} + +
    + Formule + {{diceFormula}} +
    + +
    + + {{diceResult}} +
    +
    + {{/unless}} + + {{!-- Result Display --}} + {{#unless noRoll}} +
    +
    + Total + {{finalResult}} +
    + + {{#if (gt sdValue "-1")}} +
    + SD: {{sdValue}} + Marge: {{marge}} +
    +
    + {{#if isCriticalSuccess}} + RÉUSSITE CRITIQUE ! + {{else if isCriticalFailure}} + ÉCHEC CRITIQUE ! + {{else if isSuccess}} + Succès + {{else}} + Échec + {{/if}} +
    + {{/if}} + + {{#if isBrelan}} +
    Brelan !
    + {{/if}} + {{#if isSuite}} +
    Suite !
    + {{/if}} +
    + {{/unless}} + + {{!-- Tricherie Adjacent Faces --}} + {{#if adjacentFaces}} +
    + Faces adjacentes (2 pts Tricherie) : +
    + {{#each adjacentFaces as |value key|}} + {{value}} + {{/each}} +
    +
    + {{/if}} + + {{!-- Details Section (Collapsible) --}} + {{#if pouvoir}} +
    + Détails du pouvoir +
    +
    Effet : {{pouvoir.system.effet}}
    + {{#if (ne pouvoir.system.duree "")}} +
    Durée : {{pouvoir.system.duree}}
    + {{/if}} + {{#if (ne pouvoir.system.portee "")}} +
    Portée : {{pouvoir.system.portee}}
    + {{/if}} + {{#if (ne pouvoir.system.resistance "")}} +
    Résistance : {{pouvoir.system.resistance}}
    + {{/if}} + {{#if (ne pouvoir.system.zoneeffet "")}} +
    Zone d'effet : {{pouvoir.system.zoneeffet}}
    + {{/if}} + {{#if (ne pouvoir.system.cibles "")}} +
    Cibles : {{pouvoir.system.cibles}}
    + {{/if}} +
    Points d'usage : {{pouvoirPointsUsage}}
    +
    +
    + {{/if}} + + {{#if sort}} +
    + Détails du sort +
    + {{#if (ne sort.system.duree "")}} +
    Durée : {{sort.system.duree}}
    + {{/if}} + {{#if (ne sort.system.portee "")}} +
    Portée : {{sort.system.portee}}
    + {{/if}} + {{#if (ne sort.system.ingredients "")}} +
    Ingrédients : {{sort.system.ingredients}}
    + {{/if}} + {{#if (ne sort.system.resistance "")}} +
    Résistance : {{sort.system.resistance}}
    + {{/if}} + {{#if spendEsprit}} +
    Points d'Esprit : 1
    + {{else}} +
    Points d'Âme : {{sortPointsAme}}
    + {{#if (eq sort.system.competence "Magie du Clan")}} +
    Souffle : {{sort.system.souffle}}
    +
    Coût PV : 2
    + {{/if}} + {{/if}} +
    +
    + {{/if}} + +
    diff --git a/templates/chat-generic-result.hbs b/templates/chat-generic-result.hbs index b9d3b52..8079be4 100644 --- a/templates/chat-generic-result.hbs +++ b/templates/chat-generic-result.hbs @@ -1,145 +1,190 @@ -
    - {{#if actorImg}} - {{alias}} +{{!-- Chat Card for Roll Results --}} +
    + + {{!-- Header --}} +
    + {{#if actorImg}} + {{alias}} + {{/if}} +
    +

    {{alias}}

    + {{#if competence}} +
    {{competence.name}}{{#if arme}} - {{arme.name}}{{/if}}
    + {{else if pouvoir}} +
    {{pouvoir.name}}
    + {{else if sort}} +
    {{sort.name}}
    + {{else if rang}} +
    {{rang.label}}
    + {{else}} +
    {{carac.label}}
    + {{/if}} +
    + {{#if actionImg}} + {{name}} + {{/if}} +
    + + {{!-- Attack Type Badge --}} + {{#if attackType}} +
    {{attackType}}
    {{/if}} -

    {{alias}}

    -
    - -
    - -{{#if actionImg}} -
    - {{name}} -
    -{{/if}} - -
    -
    - -
    -
      -
    • Caractéristique : {{carac.label}} ({{carac.value}})
    • + {{!-- Roll Calculation Grid --}} + {{#unless noRoll}} +
      +
      + Carac + {{carac.label}} {{carac.value}} +
      + {{#if rang}} -
    • {{rang.label}} : {{rang.value}}
    • +
      + Rang + {{rang.value}} +
      {{/if}} - + {{#if competence}} -
    • Compétence : {{competence.name}} ({{competence.system.niveau}})
    • +
      + Compétence + {{competence.name}} {{competence.system.niveau}} +
      + {{/if}} + {{#if useSpecialite}} -
    • Bonus de spécialité +1
    • +
      + Spécialité + +1 +
      {{/if}} - {{/if}} - - {{#if arme}} -
    • Attaque avec : {{arme.name}}
    • - {{#if (eq mode "assommer")}} -
    • Attaque pour assommer
    • - {{/if}} - {{/if}} - - {{#if pouvoir}} -
    • Pouvoir : {{pouvoir.name}}
    • -
    • Effet : {{pouvoir.system.effet}}
    • - {{#if (ne pouvoir.system.duree "")}} -
    • Durée : {{pouvoir.system.duree}}
    • - {{/if}} - {{#if (ne pouvoir.system.portee "")}} -
    • Portée : {{pouvoir.system.portee}}
    • - {{/if}} - {{#if (ne pouvoir.system.resistance "")}} -
    • Résistance : {{pouvoir.system.resistance}}
    • - {{/if}} - {{#if (ne pouvoir.system.resistanceautre "")}} -
    • Résistance autre : {{pouvoir.system.resistanceautre}}
    • - {{/if}} - {{#if (ne pouvoir.system.zoneeffet "")}} -
    • Zone d'effet : {{pouvoir.system.zoneeffet}}
    • - {{/if}} - {{#if (ne pouvoir.system.cibles "")}} -
    • Cibles : {{pouvoir.system.cibles}}
    • - {{/if}} - {{#if (ne pouvoir.system.virulence "")}} -
    • Virulence : {{pouvoir.system.virulence}}
    • - {{/if}} -
    • Points d'usage consommés : {{pouvoirPointsUsage}}
    • - {{/if}} - - {{#if sort}} -
    • Sort : {{sort.name}}
    • - {{#if (ne sort.system.resistance "")}} -
    • Résistance : {{sort.system.resistance}}
    • - {{/if}} - {{#if (ne sort.system.concentration "")}} -
    • Concentration : {{sort.system.concentration}}
    • - {{/if}} - {{#if (ne sort.system.duree "")}} -
    • Durée : {{sort.system.duree}}
    • - {{/if}} - {{#if (ne sort.system.portee "")}} -
    • Portée : {{sort.system.portee}}
    • - {{/if}} - {{#if (ne sort.system.ingredients "")}} -
    • Ingrédients : {{sort.system.ingredients}}
    • - {{/if}} - {{#if (ne sort.system.coutactivation "")}} -
    • Coût d'activation : {{sort.system.coutactivation}}
    • - {{/if}} - {{#if spendEsprit}} -
    • Points d'Esprit dépensé : 1
    • - {{else}} -
    • Coût en points d'Âme : {{sortPointsAme}}
    • - {{#if (eq sort.system.competence "Magie du Clan")}} -
    • Souffle : {{sort.system.souffle}}
    • -
    • Cout en PV : 2
    • - {{/if}} - {{/if}} - {{/if}} - + +
      + Formule + {{diceFormula}} +
      + +
      + + {{mainDice}} ({{diceValue}}) +
      + {{#if forcedValue}} -
    • Vous dépensez 2 points de Tricherie et utilisez une face adjacente du dé !
    • +
      + Tricherie + Face {{forcedValue}} utilisée (2 pts) +
      {{/if}} +
      + {{/unless}} - {{#if noRoll}} - {{else}} -
    • Formule : {{diceFormula}}
    • -
    • Résultat du dé : {{diceResult}}
    • - - {{#if adjacentFaces}} -
    • Faces adjacentes : - {{#each adjacentFaces as |value key|}} - {{value}} - {{/each}} -
    • - {{/if}} - -
    • Total : {{finalResult}} {{#if (gt sdValue "-1")}}(Marge : {{marge}}){{/if}}
    • - - + {{!-- Result Display --}} + {{#unless noRoll}} +
      +
      + Total + {{finalResult}} +
      + {{#if (gt sdValue "-1")}} -
    • Seuil de difficulté : {{sdValue}}
    • - {{#if isSuccess}} -
    • Succès... -
    • - {{else}} -
    • Echec...
    • +
      + SD: {{sdValue}} + Marge: {{marge}} +
      +
      + {{#if isCriticalSuccess}} + RÉUSSITE CRITIQUE ! + {{else if isCriticalFailure}} + ÉCHEC CRITIQUE ! + {{else if isSuccess}} + Succès + {{else}} + Échec + {{/if}} +
      {{/if}} - {{/if}} - + {{#if isBrelan}} -
    • Brelan sur 3 dés !
    • +
      Brelan !
      {{/if}} {{#if isSuite}} -
    • Suite sur 3 dés !
    • +
      Suite !
      {{/if}} + + {{!-- Damage display for successful weapon attacks --}} + {{#if (and arme isSuccess degatsArme)}} +
      + Dégâts : {{degatsArme}} +
      + {{/if}} +
      + {{/unless}} - {{#if isCriticalSuccess}} -
    • Réussite Critique !!!
    • - {{/if}} - {{#if isCriticalFailure}} -
    • Echec Critique !!!
    • - {{/if}} - {{/if}} + {{!-- Tricherie Adjacent Faces --}} + {{#if (and adjacentFaces (not forcedValue))}} +
      + Faces adjacentes (2 pts Tricherie) : +
      + {{#each adjacentFaces as |value key|}} + {{value}} + {{/each}} +
      +
      + {{/if}} -
    -
    \ No newline at end of file + {{!-- Details Section (Collapsible) --}} + {{#if pouvoir}} +
    + Détails du pouvoir +
    +
    Effet : {{pouvoir.system.effet}}
    + {{#if (ne pouvoir.system.duree "")}} +
    Durée : {{pouvoir.system.duree}}
    + {{/if}} + {{#if (ne pouvoir.system.portee "")}} +
    Portée : {{pouvoir.system.portee}}
    + {{/if}} + {{#if (ne pouvoir.system.resistance "")}} +
    Résistance : {{pouvoir.system.resistance}}
    + {{/if}} + {{#if (ne pouvoir.system.zoneeffet "")}} +
    Zone d'effet : {{pouvoir.system.zoneeffet}}
    + {{/if}} + {{#if (ne pouvoir.system.cibles "")}} +
    Cibles : {{pouvoir.system.cibles}}
    + {{/if}} +
    Points d'usage : {{pouvoirPointsUsage}}
    +
    +
    + {{/if}} + + {{#if sort}} +
    + Détails du sort +
    + {{#if (ne sort.system.duree "")}} +
    Durée : {{sort.system.duree}}
    + {{/if}} + {{#if (ne sort.system.portee "")}} +
    Portée : {{sort.system.portee}}
    + {{/if}} + {{#if (ne sort.system.ingredients "")}} +
    Ingrédients : {{sort.system.ingredients}}
    + {{/if}} + {{#if (ne sort.system.resistance "")}} +
    Résistance : {{sort.system.resistance}}
    + {{/if}} + {{#if spendEsprit}} +
    Points d'Esprit : 1
    + {{else}} +
    Points d'Âme : {{sortPointsAme}}
    + {{#if (eq sort.system.competence "Magie du Clan")}} +
    Souffle : {{sort.system.souffle}}
    +
    Coût PV : 2
    + {{/if}} + {{/if}} +
    +
    + {{/if}} + +
    diff --git a/templates/item-accessoire-sheet.hbs b/templates/item-accessoire-sheet.hbs index ba28fdf..e75e738 100644 --- a/templates/item-accessoire-sheet.hbs +++ b/templates/item-accessoire-sheet.hbs @@ -1,10 +1,10 @@
    - {{> systems/fvtt-les-heritiers/templates/partial-item-header.hbs this}} + {{> systems/fvtt-les-heritiers/templates/partial-item-header.hbs }} - {{> systems/fvtt-les-heritiers/templates/partial-item-nav.hbs this}} + {{> systems/fvtt-les-heritiers/templates/partial-item-nav.hbs }} - {{> systems/fvtt-les-heritiers/templates/partial-item-description.hbs this}} + {{> systems/fvtt-les-heritiers/templates/partial-item-description.hbs }}
      diff --git a/templates/item-accessoire-sheet.html b/templates/item-accessoire-sheet_deprecated.html similarity index 96% rename from templates/item-accessoire-sheet.html rename to templates/item-accessoire-sheet_deprecated.html index fff340e..8a25697 100644 --- a/templates/item-accessoire-sheet.html +++ b/templates/item-accessoire-sheet_deprecated.html @@ -1,4 +1,4 @@ -
      +
      {{> systems/fvtt-les-heritiers/templates/partial-item-header.html}} {{> systems/fvtt-les-heritiers/templates/partial-item-nav.html}} @@ -37,4 +37,4 @@
    - \ No newline at end of file + \ No newline at end of file diff --git a/templates/item-arme-sheet.html b/templates/item-arme-sheet_deprecated.html similarity index 98% rename from templates/item-arme-sheet.html rename to templates/item-arme-sheet_deprecated.html index af88fbf..add00f6 100644 --- a/templates/item-arme-sheet.html +++ b/templates/item-arme-sheet_deprecated.html @@ -1,4 +1,4 @@ -
    +
    {{> systems/fvtt-les-heritiers/templates/partial-item-header.html}} {{> systems/fvtt-les-heritiers/templates/partial-item-nav.html}} @@ -118,4 +118,4 @@
    - \ No newline at end of file + \ No newline at end of file diff --git a/templates/item-atoutfeerique-sheet.html b/templates/item-atoutfeerique-sheet_deprecated.html similarity index 88% rename from templates/item-atoutfeerique-sheet.html rename to templates/item-atoutfeerique-sheet_deprecated.html index ff384b5..69dfb2f 100644 --- a/templates/item-atoutfeerique-sheet.html +++ b/templates/item-atoutfeerique-sheet_deprecated.html @@ -1,4 +1,4 @@ -
    +
    {{> systems/fvtt-les-heritiers/templates/partial-item-header.html}} {{> systems/fvtt-les-heritiers/templates/partial-item-nav.html}} @@ -17,4 +17,4 @@
    - + diff --git a/templates/item-avantage-sheet.html b/templates/item-avantage-sheet_deprecated.html similarity index 88% rename from templates/item-avantage-sheet.html rename to templates/item-avantage-sheet_deprecated.html index b75198d..9577673 100644 --- a/templates/item-avantage-sheet.html +++ b/templates/item-avantage-sheet_deprecated.html @@ -1,4 +1,4 @@ -
    +
    {{> systems/fvtt-les-heritiers/templates/partial-item-header.html}} {{> systems/fvtt-les-heritiers/templates/partial-item-nav.html}} @@ -19,4 +19,4 @@
    - + diff --git a/templates/item-capacitenaturelle-sheet.html b/templates/item-capacitenaturelle-sheet_deprecated.html similarity index 98% rename from templates/item-capacitenaturelle-sheet.html rename to templates/item-capacitenaturelle-sheet_deprecated.html index 700265f..80b5362 100644 --- a/templates/item-capacitenaturelle-sheet.html +++ b/templates/item-capacitenaturelle-sheet_deprecated.html @@ -1,4 +1,4 @@ -
    +
    {{> systems/fvtt-les-heritiers/templates/partial-item-header.html}} {{> systems/fvtt-les-heritiers/templates/partial-item-nav.html}} @@ -78,4 +78,4 @@
    - \ No newline at end of file + \ No newline at end of file diff --git a/templates/item-competence-sheet.hbs b/templates/item-competence-sheet.hbs index 0ff60bb..f971b9a 100644 --- a/templates/item-competence-sheet.hbs +++ b/templates/item-competence-sheet.hbs @@ -73,7 +73,27 @@ {{/if}}
  • -

    Spécialités

    +

    Spécialités

    +
  • +
  • +
      + {{#each system.specialites as |specialite key|}} +
    • + + +
    • +
    • + +
    • +
      + {{/each}} +
    +
  • +
  • +
  • diff --git a/templates/item-competence-sheet.html b/templates/item-competence-sheet_deprecated.html similarity index 98% rename from templates/item-competence-sheet.html rename to templates/item-competence-sheet_deprecated.html index abd8934..66e281a 100644 --- a/templates/item-competence-sheet.html +++ b/templates/item-competence-sheet_deprecated.html @@ -1,4 +1,4 @@ -
    +
    {{> systems/fvtt-les-heritiers/templates/partial-item-header.html}} {{> systems/fvtt-les-heritiers/templates/partial-item-nav.html}} @@ -101,4 +101,4 @@
    - \ No newline at end of file + \ No newline at end of file diff --git a/templates/item-contact-sheet.html b/templates/item-contact-sheet_deprecated.html similarity index 96% rename from templates/item-contact-sheet.html rename to templates/item-contact-sheet_deprecated.html index c77a697..566b6fc 100644 --- a/templates/item-contact-sheet.html +++ b/templates/item-contact-sheet_deprecated.html @@ -1,4 +1,4 @@ -
    +
    {{> systems/fvtt-les-heritiers/templates/partial-item-header.html}} {{> systems/fvtt-les-heritiers/templates/partial-item-nav.html}} @@ -37,4 +37,4 @@
    - \ No newline at end of file + \ No newline at end of file diff --git a/templates/item-desavantage-sheet.html b/templates/item-desavantage-sheet_deprecated.html similarity index 88% rename from templates/item-desavantage-sheet.html rename to templates/item-desavantage-sheet_deprecated.html index b75198d..9577673 100644 --- a/templates/item-desavantage-sheet.html +++ b/templates/item-desavantage-sheet_deprecated.html @@ -1,4 +1,4 @@ -
    +
    {{> systems/fvtt-les-heritiers/templates/partial-item-header.html}} {{> systems/fvtt-les-heritiers/templates/partial-item-nav.html}} @@ -19,4 +19,4 @@
    - + diff --git a/templates/item-equipement-sheet.html b/templates/item-equipement-sheet_deprecated.html similarity index 96% rename from templates/item-equipement-sheet.html rename to templates/item-equipement-sheet_deprecated.html index fff340e..8a25697 100644 --- a/templates/item-equipement-sheet.html +++ b/templates/item-equipement-sheet_deprecated.html @@ -1,4 +1,4 @@ -
    +
    {{> systems/fvtt-les-heritiers/templates/partial-item-header.html}} {{> systems/fvtt-les-heritiers/templates/partial-item-nav.html}} @@ -37,4 +37,4 @@
    - \ No newline at end of file + \ No newline at end of file diff --git a/templates/item-fee-sheet.html b/templates/item-fee-sheet_deprecated.html similarity index 98% rename from templates/item-fee-sheet.html rename to templates/item-fee-sheet_deprecated.html index 1419d10..237e7cf 100644 --- a/templates/item-fee-sheet.html +++ b/templates/item-fee-sheet_deprecated.html @@ -1,4 +1,4 @@ -
    +
    {{> systems/fvtt-les-heritiers/templates/partial-item-header.html}} {{> systems/fvtt-les-heritiers/templates/partial-item-nav.html}} @@ -76,4 +76,4 @@
    - + diff --git a/templates/item-pouvoir-sheet.html b/templates/item-pouvoir-sheet_deprecated.html similarity index 99% rename from templates/item-pouvoir-sheet.html rename to templates/item-pouvoir-sheet_deprecated.html index 534ae1e..da2a7ab 100644 --- a/templates/item-pouvoir-sheet.html +++ b/templates/item-pouvoir-sheet_deprecated.html @@ -1,4 +1,4 @@ -
    +
    {{> systems/fvtt-les-heritiers/templates/partial-item-header.html}} {{> systems/fvtt-les-heritiers/templates/partial-item-nav.html}} @@ -156,4 +156,4 @@
    - \ No newline at end of file + \ No newline at end of file diff --git a/templates/item-profil-sheet.html b/templates/item-profil-sheet_deprecated.html similarity index 93% rename from templates/item-profil-sheet.html rename to templates/item-profil-sheet_deprecated.html index 176a0f6..d17d4f1 100644 --- a/templates/item-profil-sheet.html +++ b/templates/item-profil-sheet_deprecated.html @@ -1,4 +1,4 @@ -
    +
    {{> systems/fvtt-les-heritiers/templates/partial-item-header.html}} {{> systems/fvtt-les-heritiers/templates/partial-item-nav.html}} @@ -23,4 +23,4 @@
    - + diff --git a/templates/item-protection-sheet.html b/templates/item-protection-sheet_deprecated.html similarity index 97% rename from templates/item-protection-sheet.html rename to templates/item-protection-sheet_deprecated.html index 7789026..87ef6ee 100644 --- a/templates/item-protection-sheet.html +++ b/templates/item-protection-sheet_deprecated.html @@ -1,4 +1,4 @@ -
    +
    {{> systems/fvtt-les-heritiers/templates/partial-item-header.html}} {{> systems/fvtt-les-heritiers/templates/partial-item-nav.html}} @@ -61,4 +61,4 @@ c
  • - \ No newline at end of file + \ No newline at end of file diff --git a/templates/item-sort-sheet.html b/templates/item-sort-sheet_deprecated.html similarity index 99% rename from templates/item-sort-sheet.html rename to templates/item-sort-sheet_deprecated.html index e9263b1..ae9a241 100644 --- a/templates/item-sort-sheet.html +++ b/templates/item-sort-sheet_deprecated.html @@ -1,4 +1,4 @@ -
    +
    {{> systems/fvtt-les-heritiers/templates/partial-item-header.html}} {{> systems/fvtt-les-heritiers/templates/partial-item-nav.html}} @@ -133,4 +133,4 @@
    - \ No newline at end of file + \ No newline at end of file diff --git a/templates/partial-actor-equipment.hbs b/templates/partial-actor-equipment.hbs index 43e5106..1e18b27 100644 --- a/templates/partial-actor-equipment.hbs +++ b/templates/partial-actor-equipment.hbs @@ -21,4 +21,3 @@ - diff --git a/templates/partial-actor-equipment.html b/templates/partial-actor-equipment.html deleted file mode 100644 index 1e18b27..0000000 --- a/templates/partial-actor-equipment.html +++ /dev/null @@ -1,23 +0,0 @@ -
  • - - {{#if (eq level 1)}} - {{equip.name}} - {{else}} - {{equip.name}} - {{/if}} - - - - -
     
    -
    - {{#if (eq level 1)}} - {{#if equip.system.equipped}}{{else}}{{/if}} - {{/if}} - -
    -
  • diff --git a/templates/partial-item-description.hbs b/templates/partial-item-description.hbs index e8fe08a..6b0179b 100644 --- a/templates/partial-item-description.hbs +++ b/templates/partial-item-description.hbs @@ -1,6 +1,3 @@
    -
    - {{editor description target="system.description" button=true owner=owner editable=editable}} -
    + {{formInput systemFields.description enriched=enrichedDescription value=system.description name="system.description" toggled=true}}
    - diff --git a/templates/partial-item-header.hbs b/templates/partial-item-header.hbs index f1757ac..90883c4 100644 --- a/templates/partial-item-header.hbs +++ b/templates/partial-item-header.hbs @@ -1,9 +1,18 @@
    - +
    -

    +

    +
    +
    +
    - diff --git a/templates/partial-item-nav.hbs b/templates/partial-item-nav.hbs index 42f8709..95b52cd 100644 --- a/templates/partial-item-nav.hbs +++ b/templates/partial-item-nav.hbs @@ -3,4 +3,3 @@ Description Details - diff --git a/templates/partial-utile-skills.hbs b/templates/partial-utile-skills.hbs index f350475..a616e9e 100644 --- a/templates/partial-utile-skills.hbs +++ b/templates/partial-utile-skills.hbs @@ -3,7 +3,7 @@
  • {{#if isPNJ}} - +

    @@ -19,7 +19,7 @@ {{#if isPNJ}} + name="system.competences.{{keyProfil}}.niveau" value="{{skillDef.niveau}}" style="text-align: center;"> {{/if}}
     
    @@ -27,7 +27,7 @@ {{#each skillDef.skills as |skill key|}}
  • {{skill.name}} + data-action="rollCompetence" data-attr-key="tochoose">{{skill.name}}
    - - + +
  • {{#if (count skill.specList)}} @@ -45,5 +45,4 @@ {{/each}} - - + \ No newline at end of file diff --git a/templates/partial-utile-skills.html b/templates/partial-utile-skills.html deleted file mode 100644 index 0516bf8..0000000 --- a/templates/partial-utile-skills.html +++ /dev/null @@ -1,48 +0,0 @@ -
    -
      -
    • - {{#if isPNJ}} - - -

      -
      -
      - {{else}} - -

      -
      - {{/if}} - - - - - {{#if isPNJ}} - - - - {{/if}} -
       
      -
    • - {{#each skillDef.skills as |skill key|}} -
    • - {{skill.name}} - - -
      - - -
      -
    • - {{#if (count skill.specList)}} - {{skill.specList}} - {{/if}} - - {{/each}} -
    -
    \ No newline at end of file diff --git a/templates/roll-dialog-generic.hbs b/templates/roll-dialog-generic.hbs index b2f51fb..75b4741 100644 --- a/templates/roll-dialog-generic.hbs +++ b/templates/roll-dialog-generic.hbs @@ -1,168 +1,189 @@ -
    -
    - {{#if img}} - +{{!-- Header --}} +
    + {{#if img}} + {{name}} + {{/if}} +
    +

    {{name}}

    + {{#if competence}} +
    + {{competence.name}} + {{#if arme}} + - {{arme.name}} + {{#if attackType}} + ({{attackType}}) + {{/if}} + {{/if}} +
    + {{else if pouvoir}} +
    + {{pouvoir.name}} +
    + {{else if sort}} +
    + {{sort.name}} +
    + {{else if title}} +
    + {{title}} +
    {{/if}} -

    {{title}}

    -
    + + -
    +{{!-- Main Content --}} +
    {{#if (eq mode "rang")}} -
    - {{rang.label}} - {{rang.value}} -
    - {{/if}} +
    + + +
    + {{/if}} - {{#if (eq mode "carac")}} -
    - Caracteristique - {{carac.label}} ({{carac.value}}) -
    - {{else}} -
    - Caracteristique - -
    - {{/if}} + {{#if (eq mode "carac")}} +
    + + +
    + {{else}} +
    + + +
    + {{/if}} - {{#if caracMessage}} -
    - {{caracMessage}} -
    - {{/if}} + {{#if caracMessage}} +
    + {{caracMessage}} +
    + {{/if}} - {{#if competence}} -
    - {{competence.name}} - {{competence.system.niveau}} -
    - {{#if competence.nbSpec}} -
    - Spécialités : {{competence.specList}} -
    -
    - Bonus de spécialité ? - -
    - {{/if}} - {{/if}} + {{#if competence}} +
    + + +
    + {{#if competence.nbSpec}} +
    + Spécialités : {{competence.specList}} +
    +
    + + +
    + {{/if}} + {{/if}} - {{#if pouvoir}} -
    - Pouvoir : - {{pouvoir.name}} + {{#if pouvoir}} +
    +
    + +
    -
    - Activation : - {{pouvoir.system.activation}} +
    + +
    {{#if pouvoirBase}} -
    - {{pouvoirBase.label}} : - {{pouvoirBase.value}} +
    + +
    {{/if}} -
    - Points d'usage consommés : - {{selectOptions config.pointsUsageList selected=pouvoirPointsUsage}}
    - {{/if}} +
    + {{/if}} - {{#each rulesMalus as |malus key|}} -
    - {{malus.name}} - {{malus.value}} -
    - {{/each}} + {{#each rulesMalus as |malus key|}} +
    + + +
    + {{/each}} - {{#if (and arme arme.system.isMelee)}} -
    - Attaque à plusieurs - + {{selectOptions config.attaquePlusieursList selected=bonusAttaquePlusieurs}}
    -
    - Attaque dans le dos ? - +
    + +
    -
    - Attaque à deux armes - + {{selectOptions config.attaque2ArmesListe selected=attaqueDeuxArmes valueAttr="value" nameAttr="value" labelAttr="label"}}
    -
    - Seconde arme - {{selectOptions armes selected=secondeArme valueAttr="id" nameAttr="id" labelAttr="name"}}
    - {{/if}} +
    + {{/if}} - {{#if arme}} -
  • - - -
  • - {{/if}} + {{#if arme}} +
    + + +
    + {{/if}} - {{#if sort}} -
    - Sort : - {{sort.name}} ({{sort.system.niveau}}) + {{#if sort}} +
    +
    + +
    -
    - Duree : - {{sort.system.duree}} +
    + +
    -
    - Portee : - {{sort.system.portee}} +
    + +
    -
    - Ingrédients : - {{sort.system.ingredients}} +
    + +
    - {{/if}} - -
    - Bonus/Malus - -
    - - {{#if cacheDifficulte}} -
    - Difficulté Cachée/Inconnue -
    - {{else}} -
    - Difficulté - -
    - {{/if}} +
    + {{/if}} +
    + +
    - \ No newline at end of file + {{#if cacheDifficulte}} +
    + Difficulté Cachée/Inconnue +
    + {{else}} +
    + + +
    + {{/if}} + +
    \ No newline at end of file