diff --git a/css/fvtt-lethal-fantasy.css b/css/fvtt-lethal-fantasy.css index b8d2145..e9c2002 100644 --- a/css/fvtt-lethal-fantasy.css +++ b/css/fvtt-lethal-fantasy.css @@ -2411,6 +2411,55 @@ i.lethalfantasy { font-size: calc(var(--font-size-standard) * 1); text-shadow: 0 0 10px var(--color-shadow-primary); } +.dice-roll .damage-buttons { + width: 100%; + padding: 8px; + margin-top: 8px; +} +.dice-roll .damage-buttons .damage-buttons-title { + font-weight: bold; + margin-bottom: 8px; + font-size: calc(var(--font-size-standard) * 0.95); + text-align: center; +} +.dice-roll .damage-buttons .damage-buttons-grid { + display: grid; + grid-template-columns: repeat(2, 1fr); + gap: 6px; + padding: 8px; + background-color: rgba(0, 0, 0, 0.1); + border-radius: 5px; +} +.dice-roll .damage-buttons .damage-buttons-grid .damage-roll-btn { + padding: 6px 10px; + background: linear-gradient(to bottom, #8b4513 0%, #6b3410 100%); + border: 1px solid #4b2408; + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3); + color: #f0f0e0; + cursor: pointer; + border-radius: 4px; + font-size: calc(var(--font-size-standard) * 0.85); + font-weight: 500; + text-align: center; + transition: all 0.2s ease; + display: flex; + align-items: center; + justify-content: center; + gap: 4px; +} +.dice-roll .damage-buttons .damage-buttons-grid .damage-roll-btn i { + font-size: calc(var(--font-size-standard) * 1); +} +.dice-roll .damage-buttons .damage-buttons-grid .damage-roll-btn:hover { + background: linear-gradient(to bottom, #9b5523 0%, #7b4420 100%); + box-shadow: 0 3px 6px rgba(0, 0, 0, 0.4); + transform: translateY(-1px); + border-color: #5b3418; +} +.dice-roll .damage-buttons .damage-buttons-grid .damage-roll-btn:active { + transform: translateY(0); + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); +} .dice-roll .damage-result { width: 100%; padding: 8px; diff --git a/lang/en.json b/lang/en.json index 6b92bf7..2e2a605 100644 --- a/lang/en.json +++ b/lang/en.json @@ -283,6 +283,7 @@ "Label": { "agility": "Dexterity", "applyDamage": "Apply damage to:", + "rollDamage": "Roll Damage", "gotoToken": "Go to token", "combatAction": "Combat action", "currentAction": "Current ongoing action", diff --git a/lethal-fantasy.mjs b/lethal-fantasy.mjs index 7f25888..1075a95 100644 --- a/lethal-fantasy.mjs +++ b/lethal-fantasy.mjs @@ -185,6 +185,32 @@ Hooks.on(hookName, (message, html, data) => { LethalFantasyUtils.applyDamage(message, event) }) } + + // Gestionnaire pour les boutons de jet de dégâts + $(html).find(".damage-roll-btn").click(async (event) => { + const button = $(event.currentTarget) + const weaponId = button.data("weapon-id") + const damageType = button.data("damage-type") + const damageFormula = button.data("damage-formula") + + // Récupérer l'acteur qui a fait le jet initial + const actor = game.actors.get(message.rolls[0]?.actorId) + if (!actor) { + ui.notifications.error("Actor not found") + return + } + + // Récupérer l'arme + const weapon = actor.items.get(weaponId) + if (!weapon) { + ui.notifications.error("Weapon not found") + return + } + + // Lancer les dégâts avec la bonne méthode + const rollType = damageType === "small" ? "weapon-damage-small" : "weapon-damage-medium" + await actor.prepareRoll(rollType, weaponId) + }) }) Hooks.on("getCombatTrackerEntryContext", (html, options) => { diff --git a/module/documents/actor.mjs b/module/documents/actor.mjs index 688f3cf..26d9e9b 100644 --- a/module/documents/actor.mjs +++ b/module/documents/actor.mjs @@ -120,7 +120,7 @@ export default class LethalFantasyActor extends Actor { } /* *************************************************/ - fuzzyNameSearchWeaponSkills(weaponName, weaponClass=null) { + fuzzyNameSearchWeaponSkills(weaponName, weaponClass = null) { // Get all weapon skills without the " skill" suffix let skills = this.items.filter((i) => i.type === "skill" && i.system.weaponClass === weaponClass && i.system.category === "weapon") // Remove parenthesis in the weapon name for better matching @@ -227,11 +227,14 @@ export default class LethalFantasyActor extends Actor { ui.notifications.warn(game.i18n.localize("LETHALFANTASY.Notifications.skillNotFound")) return } - rollTarget = skill - rollTarget.weapon = weapon - rollTarget.weaponSkillModifier = skill.weaponSkillModifier - rollTarget.rollKey = rollKey - rollTarget.combat = foundry.utils.duplicate(this.system.combat) + // Créer un objet plain au lieu de modifier directement le skill + rollTarget = { + ...skill, + weapon: weapon, + weaponSkillModifier: skill.weaponSkillModifier, + rollKey: rollKey, + combat: foundry.utils.duplicate(this.system.combat) + } if (rollType === "weapon-damage-small" || rollType === "weapon-damage-medium") { rollTarget.grantedDice = this.system.granted.damageDice } diff --git a/module/documents/roll.mjs b/module/documents/roll.mjs index b698335..771121f 100644 --- a/module/documents/roll.mjs +++ b/module/documents/roll.mjs @@ -1139,6 +1139,20 @@ export default class LethalFantasyRoll extends Roll { } } + // Récupérer les informations de l'arme pour les attaques réussies + let weaponDamageOptions = null + console.log("Roll type:", this.type, "rollTarget:", this.rollTarget, "Has weapon:", !!this.rollTarget?.weapon) + if (this.type === "weapon-attack" && this.rollTarget?.weapon) { + const weapon = this.rollTarget.weapon + weaponDamageOptions = { + weaponId: weapon._id || weapon.id, + weaponName: weapon.name, + damageS: weapon.system?.damage?.damageS, + damageM: weapon.system?.damage?.damageM + } + console.log("Weapon damage options:", weaponDamageOptions) + } + const cardData = { css: [SYSTEM.id, "dice-roll"], data: this.data, @@ -1163,7 +1177,8 @@ export default class LethalFantasyRoll extends Roll { badResult: this.badResult, rollData: this.rollData, isPrivate: isPrivate, - combatants: combatants + combatants: combatants, + weaponDamageOptions: weaponDamageOptions } cardData.cssClass = cardData.css.join(" ") cardData.tooltip = isPrivate ? "" : await this.getTooltip() diff --git a/module/utils.mjs b/module/utils.mjs index eb1206a..a282176 100644 --- a/module/utils.mjs +++ b/module/utils.mjs @@ -269,7 +269,7 @@ export default class LethalFantasyUtils { // Récupérer les données de dégâts du message let damageTotal = message.rolls[0]?.total || 0 - let weaponName = message.rolls[0]?.options?.rollTarget?.weapon?.name || "Unknown Weapon" + let weaponName = message.rolls[0]?.options?.rollName || "Unknown Weapon" // Calculer les DR let armorDR = targetActor.computeDamageReduction() || 0 diff --git a/packs-system/lf-equipment/000462.log b/packs-system/lf-equipment/000467.log similarity index 100% rename from packs-system/lf-equipment/000462.log rename to packs-system/lf-equipment/000467.log diff --git a/packs-system/lf-equipment/CURRENT b/packs-system/lf-equipment/CURRENT index bc93ad8..9801903 100644 --- a/packs-system/lf-equipment/CURRENT +++ b/packs-system/lf-equipment/CURRENT @@ -1 +1 @@ -MANIFEST-000460 +MANIFEST-000465 diff --git a/packs-system/lf-equipment/LOG b/packs-system/lf-equipment/LOG index 51883e3..b82a122 100644 --- a/packs-system/lf-equipment/LOG +++ b/packs-system/lf-equipment/LOG @@ -1,15 +1,8 @@ -2025/12/14-09:09:25.826835 7f17053ff6c0 Recovering log #458 -2025/12/14-09:09:25.838032 7f17053ff6c0 Delete type=3 #456 -2025/12/14-09:09:25.838116 7f17053ff6c0 Delete type=0 #458 -2025/12/14-20:45:56.707785 7f16eeffd6c0 Level-0 table #463: started -2025/12/14-20:45:56.710879 7f16eeffd6c0 Level-0 table #463: 1677 bytes OK -2025/12/14-20:45:56.716936 7f16eeffd6c0 Delete type=0 #461 -2025/12/14-20:45:56.730287 7f16eeffd6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end) -2025/12/14-20:45:56.730345 7f16eeffd6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at '!items!VFHTlDVKj2yNJEWi' @ 1129 : 1 -2025/12/14-20:45:56.730356 7f16eeffd6c0 Compacting 1@1 + 1@2 files -2025/12/14-20:45:56.736659 7f16eeffd6c0 Generated table #464@1: 485 keys, 217363 bytes -2025/12/14-20:45:56.736680 7f16eeffd6c0 Compacted 1@1 + 1@2 files => 217363 bytes -2025/12/14-20:45:56.742890 7f16eeffd6c0 compacted to: files[ 0 0 1 0 0 0 0 ] -2025/12/14-20:45:56.742996 7f16eeffd6c0 Delete type=2 #323 -2025/12/14-20:45:56.743249 7f16eeffd6c0 Delete type=2 #463 -2025/12/14-20:45:56.750017 7f16eeffd6c0 Manual compaction at level-1 from '!items!VFHTlDVKj2yNJEWi' @ 1129 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end) +2025/12/14-20:51:28.512263 7f17053ff6c0 Recovering log #462 +2025/12/14-20:51:28.522433 7f17053ff6c0 Delete type=3 #460 +2025/12/14-20:51:28.522511 7f17053ff6c0 Delete type=0 #462 +2025/12/14-21:17:40.691121 7f16eeffd6c0 Level-0 table #468: started +2025/12/14-21:17:40.691177 7f16eeffd6c0 Level-0 table #468: 0 bytes OK +2025/12/14-21:17:40.697563 7f16eeffd6c0 Delete type=0 #466 +2025/12/14-21:17:40.718082 7f16eeffd6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end) +2025/12/14-21:17:40.718119 7f16eeffd6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end) diff --git a/packs-system/lf-equipment/LOG.old b/packs-system/lf-equipment/LOG.old index 878967b..51883e3 100644 --- a/packs-system/lf-equipment/LOG.old +++ b/packs-system/lf-equipment/LOG.old @@ -1,8 +1,15 @@ -2025/12/06-15:17:13.631288 7f19dd7fa6c0 Recovering log #454 -2025/12/06-15:17:13.737044 7f19dd7fa6c0 Delete type=3 #452 -2025/12/06-15:17:13.737119 7f19dd7fa6c0 Delete type=0 #454 -2025/12/06-16:41:02.244527 7f19dbff76c0 Level-0 table #459: started -2025/12/06-16:41:02.244570 7f19dbff76c0 Level-0 table #459: 0 bytes OK -2025/12/06-16:41:02.281825 7f19dbff76c0 Delete type=0 #457 -2025/12/06-16:41:02.281990 7f19dbff76c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end) -2025/12/06-16:41:02.282024 7f19dbff76c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end) +2025/12/14-09:09:25.826835 7f17053ff6c0 Recovering log #458 +2025/12/14-09:09:25.838032 7f17053ff6c0 Delete type=3 #456 +2025/12/14-09:09:25.838116 7f17053ff6c0 Delete type=0 #458 +2025/12/14-20:45:56.707785 7f16eeffd6c0 Level-0 table #463: started +2025/12/14-20:45:56.710879 7f16eeffd6c0 Level-0 table #463: 1677 bytes OK +2025/12/14-20:45:56.716936 7f16eeffd6c0 Delete type=0 #461 +2025/12/14-20:45:56.730287 7f16eeffd6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end) +2025/12/14-20:45:56.730345 7f16eeffd6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at '!items!VFHTlDVKj2yNJEWi' @ 1129 : 1 +2025/12/14-20:45:56.730356 7f16eeffd6c0 Compacting 1@1 + 1@2 files +2025/12/14-20:45:56.736659 7f16eeffd6c0 Generated table #464@1: 485 keys, 217363 bytes +2025/12/14-20:45:56.736680 7f16eeffd6c0 Compacted 1@1 + 1@2 files => 217363 bytes +2025/12/14-20:45:56.742890 7f16eeffd6c0 compacted to: files[ 0 0 1 0 0 0 0 ] +2025/12/14-20:45:56.742996 7f16eeffd6c0 Delete type=2 #323 +2025/12/14-20:45:56.743249 7f16eeffd6c0 Delete type=2 #463 +2025/12/14-20:45:56.750017 7f16eeffd6c0 Manual compaction at level-1 from '!items!VFHTlDVKj2yNJEWi' @ 1129 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end) diff --git a/packs-system/lf-equipment/MANIFEST-000460 b/packs-system/lf-equipment/MANIFEST-000460 deleted file mode 100644 index 7b92e01..0000000 Binary files a/packs-system/lf-equipment/MANIFEST-000460 and /dev/null differ diff --git a/packs-system/lf-equipment/MANIFEST-000465 b/packs-system/lf-equipment/MANIFEST-000465 new file mode 100644 index 0000000..3125f87 Binary files /dev/null and b/packs-system/lf-equipment/MANIFEST-000465 differ diff --git a/packs-system/lf-gifts/000462.log b/packs-system/lf-gifts/000466.log similarity index 100% rename from packs-system/lf-gifts/000462.log rename to packs-system/lf-gifts/000466.log diff --git a/packs-system/lf-gifts/CURRENT b/packs-system/lf-gifts/CURRENT index bc93ad8..22a6199 100644 --- a/packs-system/lf-gifts/CURRENT +++ b/packs-system/lf-gifts/CURRENT @@ -1 +1 @@ -MANIFEST-000460 +MANIFEST-000464 diff --git a/packs-system/lf-gifts/LOG b/packs-system/lf-gifts/LOG index 633e808..3848a06 100644 --- a/packs-system/lf-gifts/LOG +++ b/packs-system/lf-gifts/LOG @@ -1,8 +1,8 @@ -2025/12/14-09:09:25.859023 7f16ef7fe6c0 Recovering log #458 -2025/12/14-09:09:25.869163 7f16ef7fe6c0 Delete type=3 #456 -2025/12/14-09:09:25.869258 7f16ef7fe6c0 Delete type=0 #458 -2025/12/14-20:45:56.717084 7f16eeffd6c0 Level-0 table #463: started -2025/12/14-20:45:56.717117 7f16eeffd6c0 Level-0 table #463: 0 bytes OK -2025/12/14-20:45:56.723011 7f16eeffd6c0 Delete type=0 #461 -2025/12/14-20:45:56.730301 7f16eeffd6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end) -2025/12/14-20:45:56.743359 7f16eeffd6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end) +2025/12/14-20:51:28.526428 7f16effff6c0 Recovering log #462 +2025/12/14-20:51:28.536097 7f16effff6c0 Delete type=3 #460 +2025/12/14-20:51:28.536151 7f16effff6c0 Delete type=0 #462 +2025/12/14-21:17:40.711547 7f16eeffd6c0 Level-0 table #467: started +2025/12/14-21:17:40.711584 7f16eeffd6c0 Level-0 table #467: 0 bytes OK +2025/12/14-21:17:40.717934 7f16eeffd6c0 Delete type=0 #465 +2025/12/14-21:17:40.718128 7f16eeffd6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end) +2025/12/14-21:17:40.718154 7f16eeffd6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end) diff --git a/packs-system/lf-gifts/LOG.old b/packs-system/lf-gifts/LOG.old index 1ffd2ad..633e808 100644 --- a/packs-system/lf-gifts/LOG.old +++ b/packs-system/lf-gifts/LOG.old @@ -1,8 +1,8 @@ -2025/12/06-15:17:13.747297 7f19dc7f86c0 Recovering log #454 -2025/12/06-15:17:13.857630 7f19dc7f86c0 Delete type=3 #452 -2025/12/06-15:17:13.857707 7f19dc7f86c0 Delete type=0 #454 -2025/12/06-16:41:02.159042 7f19dbff76c0 Level-0 table #459: started -2025/12/06-16:41:02.159069 7f19dbff76c0 Level-0 table #459: 0 bytes OK -2025/12/06-16:41:02.201619 7f19dbff76c0 Delete type=0 #457 -2025/12/06-16:41:02.281970 7f19dbff76c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end) -2025/12/06-16:41:02.282008 7f19dbff76c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end) +2025/12/14-09:09:25.859023 7f16ef7fe6c0 Recovering log #458 +2025/12/14-09:09:25.869163 7f16ef7fe6c0 Delete type=3 #456 +2025/12/14-09:09:25.869258 7f16ef7fe6c0 Delete type=0 #458 +2025/12/14-20:45:56.717084 7f16eeffd6c0 Level-0 table #463: started +2025/12/14-20:45:56.717117 7f16eeffd6c0 Level-0 table #463: 0 bytes OK +2025/12/14-20:45:56.723011 7f16eeffd6c0 Delete type=0 #461 +2025/12/14-20:45:56.730301 7f16eeffd6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end) +2025/12/14-20:45:56.743359 7f16eeffd6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end) diff --git a/packs-system/lf-gifts/MANIFEST-000460 b/packs-system/lf-gifts/MANIFEST-000464 similarity index 77% rename from packs-system/lf-gifts/MANIFEST-000460 rename to packs-system/lf-gifts/MANIFEST-000464 index c0e2be4..ff49dda 100644 Binary files a/packs-system/lf-gifts/MANIFEST-000460 and b/packs-system/lf-gifts/MANIFEST-000464 differ diff --git a/packs-system/lf-skills/000464.log b/packs-system/lf-skills/000468.log similarity index 100% rename from packs-system/lf-skills/000464.log rename to packs-system/lf-skills/000468.log diff --git a/packs-system/lf-skills/CURRENT b/packs-system/lf-skills/CURRENT index dd4dce9..98d8b49 100644 --- a/packs-system/lf-skills/CURRENT +++ b/packs-system/lf-skills/CURRENT @@ -1 +1 @@ -MANIFEST-000462 +MANIFEST-000466 diff --git a/packs-system/lf-skills/LOG b/packs-system/lf-skills/LOG index 4b5027d..21d55e4 100644 --- a/packs-system/lf-skills/LOG +++ b/packs-system/lf-skills/LOG @@ -1,8 +1,8 @@ -2025/12/14-09:09:25.806646 7f16effff6c0 Recovering log #460 -2025/12/14-09:09:25.817606 7f16effff6c0 Delete type=3 #458 -2025/12/14-09:09:25.817666 7f16effff6c0 Delete type=0 #460 -2025/12/14-20:45:56.701142 7f16eeffd6c0 Level-0 table #465: started -2025/12/14-20:45:56.701194 7f16eeffd6c0 Level-0 table #465: 0 bytes OK -2025/12/14-20:45:56.707652 7f16eeffd6c0 Delete type=0 #463 -2025/12/14-20:45:56.730266 7f16eeffd6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end) -2025/12/14-20:45:56.730327 7f16eeffd6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end) +2025/12/14-20:51:28.497448 7f1704bfe6c0 Recovering log #464 +2025/12/14-20:51:28.507553 7f1704bfe6c0 Delete type=3 #462 +2025/12/14-20:51:28.507622 7f1704bfe6c0 Delete type=0 #464 +2025/12/14-21:17:40.697721 7f16eeffd6c0 Level-0 table #469: started +2025/12/14-21:17:40.697764 7f16eeffd6c0 Level-0 table #469: 0 bytes OK +2025/12/14-21:17:40.703907 7f16eeffd6c0 Delete type=0 #467 +2025/12/14-21:17:40.718096 7f16eeffd6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end) +2025/12/14-21:17:40.718137 7f16eeffd6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end) diff --git a/packs-system/lf-skills/LOG.old b/packs-system/lf-skills/LOG.old index 440ac03..4b5027d 100644 --- a/packs-system/lf-skills/LOG.old +++ b/packs-system/lf-skills/LOG.old @@ -1,8 +1,8 @@ -2025/12/06-15:17:13.504137 7f19ddffb6c0 Recovering log #456 -2025/12/06-15:17:13.609897 7f19ddffb6c0 Delete type=3 #454 -2025/12/06-15:17:13.609952 7f19ddffb6c0 Delete type=0 #456 -2025/12/06-16:41:02.201733 7f19dbff76c0 Level-0 table #461: started -2025/12/06-16:41:02.201761 7f19dbff76c0 Level-0 table #461: 0 bytes OK -2025/12/06-16:41:02.244399 7f19dbff76c0 Delete type=0 #459 -2025/12/06-16:41:02.281980 7f19dbff76c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end) -2025/12/06-16:41:02.282016 7f19dbff76c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end) +2025/12/14-09:09:25.806646 7f16effff6c0 Recovering log #460 +2025/12/14-09:09:25.817606 7f16effff6c0 Delete type=3 #458 +2025/12/14-09:09:25.817666 7f16effff6c0 Delete type=0 #460 +2025/12/14-20:45:56.701142 7f16eeffd6c0 Level-0 table #465: started +2025/12/14-20:45:56.701194 7f16eeffd6c0 Level-0 table #465: 0 bytes OK +2025/12/14-20:45:56.707652 7f16eeffd6c0 Delete type=0 #463 +2025/12/14-20:45:56.730266 7f16eeffd6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end) +2025/12/14-20:45:56.730327 7f16eeffd6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end) diff --git a/packs-system/lf-skills/MANIFEST-000462 b/packs-system/lf-skills/MANIFEST-000466 similarity index 71% rename from packs-system/lf-skills/MANIFEST-000462 rename to packs-system/lf-skills/MANIFEST-000466 index 3f05c72..b65bf8c 100644 Binary files a/packs-system/lf-skills/MANIFEST-000462 and b/packs-system/lf-skills/MANIFEST-000466 differ diff --git a/packs-system/lf-spells-miracles/000162.log b/packs-system/lf-spells-miracles/000166.log similarity index 100% rename from packs-system/lf-spells-miracles/000162.log rename to packs-system/lf-spells-miracles/000166.log diff --git a/packs-system/lf-spells-miracles/CURRENT b/packs-system/lf-spells-miracles/CURRENT index a437bda..be35511 100644 --- a/packs-system/lf-spells-miracles/CURRENT +++ b/packs-system/lf-spells-miracles/CURRENT @@ -1 +1 @@ -MANIFEST-000160 +MANIFEST-000164 diff --git a/packs-system/lf-spells-miracles/LOG b/packs-system/lf-spells-miracles/LOG index cf28379..a908ff6 100644 --- a/packs-system/lf-spells-miracles/LOG +++ b/packs-system/lf-spells-miracles/LOG @@ -1,8 +1,8 @@ -2025/12/14-09:09:25.891410 7f17053ff6c0 Recovering log #158 -2025/12/14-09:09:25.901634 7f17053ff6c0 Delete type=3 #156 -2025/12/14-09:09:25.901690 7f17053ff6c0 Delete type=0 #158 -2025/12/14-20:45:56.743394 7f16eeffd6c0 Level-0 table #163: started -2025/12/14-20:45:56.743431 7f16eeffd6c0 Level-0 table #163: 0 bytes OK -2025/12/14-20:45:56.749813 7f16eeffd6c0 Delete type=0 #161 -2025/12/14-20:45:56.767206 7f16eeffd6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end) -2025/12/14-20:45:56.791687 7f16eeffd6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end) +2025/12/14-20:51:28.551833 7f16ef7fe6c0 Recovering log #162 +2025/12/14-20:51:28.562344 7f16ef7fe6c0 Delete type=3 #160 +2025/12/14-20:51:28.562406 7f16ef7fe6c0 Delete type=0 #162 +2025/12/14-21:17:40.735101 7f16eeffd6c0 Level-0 table #167: started +2025/12/14-21:17:40.735151 7f16eeffd6c0 Level-0 table #167: 0 bytes OK +2025/12/14-21:17:40.741604 7f16eeffd6c0 Delete type=0 #165 +2025/12/14-21:17:40.771470 7f16eeffd6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end) +2025/12/14-21:17:40.781560 7f16eeffd6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end) diff --git a/packs-system/lf-spells-miracles/LOG.old b/packs-system/lf-spells-miracles/LOG.old index 8690b9a..cf28379 100644 --- a/packs-system/lf-spells-miracles/LOG.old +++ b/packs-system/lf-spells-miracles/LOG.old @@ -1,8 +1,8 @@ -2025/12/06-15:17:13.990000 7f19dcff96c0 Recovering log #154 -2025/12/06-15:17:14.078163 7f19dcff96c0 Delete type=3 #152 -2025/12/06-15:17:14.078227 7f19dcff96c0 Delete type=0 #154 -2025/12/06-16:41:02.444766 7f19dbff76c0 Level-0 table #159: started -2025/12/06-16:41:02.444810 7f19dbff76c0 Level-0 table #159: 0 bytes OK -2025/12/06-16:41:02.474131 7f19dbff76c0 Delete type=0 #157 -2025/12/06-16:41:02.619626 7f19dbff76c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end) -2025/12/06-16:41:02.668537 7f19dbff76c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end) +2025/12/14-09:09:25.891410 7f17053ff6c0 Recovering log #158 +2025/12/14-09:09:25.901634 7f17053ff6c0 Delete type=3 #156 +2025/12/14-09:09:25.901690 7f17053ff6c0 Delete type=0 #158 +2025/12/14-20:45:56.743394 7f16eeffd6c0 Level-0 table #163: started +2025/12/14-20:45:56.743431 7f16eeffd6c0 Level-0 table #163: 0 bytes OK +2025/12/14-20:45:56.749813 7f16eeffd6c0 Delete type=0 #161 +2025/12/14-20:45:56.767206 7f16eeffd6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end) +2025/12/14-20:45:56.791687 7f16eeffd6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end) diff --git a/packs-system/lf-spells-miracles/MANIFEST-000160 b/packs-system/lf-spells-miracles/MANIFEST-000164 similarity index 72% rename from packs-system/lf-spells-miracles/MANIFEST-000160 rename to packs-system/lf-spells-miracles/MANIFEST-000164 index 5ec6a10..eab0852 100644 Binary files a/packs-system/lf-spells-miracles/MANIFEST-000160 and b/packs-system/lf-spells-miracles/MANIFEST-000164 differ diff --git a/packs-system/lf-vulnerabilities/000461.log b/packs-system/lf-vulnerabilities/000465.log similarity index 100% rename from packs-system/lf-vulnerabilities/000461.log rename to packs-system/lf-vulnerabilities/000465.log diff --git a/packs-system/lf-vulnerabilities/CURRENT b/packs-system/lf-vulnerabilities/CURRENT index 896b93a..43c162f 100644 --- a/packs-system/lf-vulnerabilities/CURRENT +++ b/packs-system/lf-vulnerabilities/CURRENT @@ -1 +1 @@ -MANIFEST-000459 +MANIFEST-000463 diff --git a/packs-system/lf-vulnerabilities/LOG b/packs-system/lf-vulnerabilities/LOG index bafd4d9..3c6cbd1 100644 --- a/packs-system/lf-vulnerabilities/LOG +++ b/packs-system/lf-vulnerabilities/LOG @@ -1,8 +1,8 @@ -2025/12/14-09:09:25.874671 7f16effff6c0 Recovering log #457 -2025/12/14-09:09:25.886173 7f16effff6c0 Delete type=3 #455 -2025/12/14-09:09:25.886272 7f16effff6c0 Delete type=0 #457 -2025/12/14-20:45:56.723132 7f16eeffd6c0 Level-0 table #462: started -2025/12/14-20:45:56.723164 7f16eeffd6c0 Level-0 table #462: 0 bytes OK -2025/12/14-20:45:56.730108 7f16eeffd6c0 Delete type=0 #460 -2025/12/14-20:45:56.730316 7f16eeffd6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end) -2025/12/14-20:45:56.743378 7f16eeffd6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end) +2025/12/14-20:51:28.538266 7f1704bfe6c0 Recovering log #461 +2025/12/14-20:51:28.549289 7f1704bfe6c0 Delete type=3 #459 +2025/12/14-20:51:28.549364 7f1704bfe6c0 Delete type=0 #461 +2025/12/14-21:17:40.704054 7f16eeffd6c0 Level-0 table #466: started +2025/12/14-21:17:40.704085 7f16eeffd6c0 Level-0 table #466: 0 bytes OK +2025/12/14-21:17:40.711382 7f16eeffd6c0 Delete type=0 #464 +2025/12/14-21:17:40.718108 7f16eeffd6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end) +2025/12/14-21:17:40.718145 7f16eeffd6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end) diff --git a/packs-system/lf-vulnerabilities/LOG.old b/packs-system/lf-vulnerabilities/LOG.old index 6c07c05..bafd4d9 100644 --- a/packs-system/lf-vulnerabilities/LOG.old +++ b/packs-system/lf-vulnerabilities/LOG.old @@ -1,8 +1,8 @@ -2025/12/06-15:17:13.870724 7f19ddffb6c0 Recovering log #453 -2025/12/06-15:17:13.958289 7f19ddffb6c0 Delete type=3 #451 -2025/12/06-15:17:13.958388 7f19ddffb6c0 Delete type=0 #453 -2025/12/06-16:41:02.118716 7f19dbff76c0 Level-0 table #458: started -2025/12/06-16:41:02.121944 7f19dbff76c0 Level-0 table #458: 0 bytes OK -2025/12/06-16:41:02.158936 7f19dbff76c0 Delete type=0 #456 -2025/12/06-16:41:02.281954 7f19dbff76c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end) -2025/12/06-16:41:02.282000 7f19dbff76c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end) +2025/12/14-09:09:25.874671 7f16effff6c0 Recovering log #457 +2025/12/14-09:09:25.886173 7f16effff6c0 Delete type=3 #455 +2025/12/14-09:09:25.886272 7f16effff6c0 Delete type=0 #457 +2025/12/14-20:45:56.723132 7f16eeffd6c0 Level-0 table #462: started +2025/12/14-20:45:56.723164 7f16eeffd6c0 Level-0 table #462: 0 bytes OK +2025/12/14-20:45:56.730108 7f16eeffd6c0 Delete type=0 #460 +2025/12/14-20:45:56.730316 7f16eeffd6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end) +2025/12/14-20:45:56.743378 7f16eeffd6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end) diff --git a/packs-system/lf-vulnerabilities/MANIFEST-000459 b/packs-system/lf-vulnerabilities/MANIFEST-000463 similarity index 72% rename from packs-system/lf-vulnerabilities/MANIFEST-000459 rename to packs-system/lf-vulnerabilities/MANIFEST-000463 index d285989..80a3f8c 100644 Binary files a/packs-system/lf-vulnerabilities/MANIFEST-000459 and b/packs-system/lf-vulnerabilities/MANIFEST-000463 differ diff --git a/styles/roll.less b/styles/roll.less index c9317c6..6fb3bd9 100644 --- a/styles/roll.less +++ b/styles/roll.less @@ -221,6 +221,62 @@ text-shadow: 0 0 10px var(--color-shadow-primary); } + .damage-buttons { + width: 100%; + padding: 8px; + margin-top: 8px; + + .damage-buttons-title { + font-weight: bold; + margin-bottom: 8px; + font-size: calc(var(--font-size-standard) * 0.95); + text-align: center; + } + + .damage-buttons-grid { + display: grid; + grid-template-columns: repeat(2, 1fr); + gap: 6px; + padding: 8px; + background-color: rgba(0, 0, 0, 0.1); + border-radius: 5px; + + .damage-roll-btn { + padding: 6px 10px; + background: linear-gradient(to bottom, #8b4513 0%, #6b3410 100%); + border: 1px solid #4b2408; + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3); + color: #f0f0e0; + cursor: pointer; + border-radius: 4px; + font-size: calc(var(--font-size-standard) * 0.85); + font-weight: 500; + text-align: center; + transition: all 0.2s ease; + display: flex; + align-items: center; + justify-content: center; + gap: 4px; + + i { + font-size: calc(var(--font-size-standard) * 1); + } + + &:hover { + background: linear-gradient(to bottom, #9b5523 0%, #7b4420 100%); + box-shadow: 0 3px 6px rgba(0, 0, 0, 0.4); + transform: translateY(-1px); + border-color: #5b3418; + } + + &:active { + transform: translateY(0); + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); + } + } + } + } + .damage-result { width: 100%; padding: 8px; diff --git a/templates/chat-message.hbs b/templates/chat-message.hbs index 46a73f4..2fc69c0 100644 --- a/templates/chat-message.hbs +++ b/templates/chat-message.hbs @@ -1,4 +1,5 @@ {{!log 'chat-message' this}} +{{!log 'weaponDamageOptions' weaponDamageOptions}}