diff --git a/assets/icons/broken-heart.svg b/assets/icons/broken-heart.svg
index 36b306e..69c9f0d 100644
--- a/assets/icons/broken-heart.svg
+++ b/assets/icons/broken-heart.svg
@@ -1 +1,7 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/assets/icons/health-increase.svg b/assets/icons/health-increase.svg
new file mode 100644
index 0000000..fe7843e
--- /dev/null
+++ b/assets/icons/health-increase.svg
@@ -0,0 +1,10 @@
+
\ No newline at end of file
diff --git a/css/fvtt-lethal-fantasy.css b/css/fvtt-lethal-fantasy.css
index f3ba267..0333b60 100644
--- a/css/fvtt-lethal-fantasy.css
+++ b/css/fvtt-lethal-fantasy.css
@@ -3956,3 +3956,41 @@ i.lethalfantasy {
padding-left: 8px;
font-size: 0.9rem;
}
+/* HP Gain Styles */
+#token-hud .hp-gain-wrap {
+ position: absolute;
+ left: 75px;
+ display: none;
+ top: 50%;
+ width: 48px;
+ text-align: start;
+ overflow-y: auto;
+}
+#token-hud .hp-gain-wrap-col1 {
+ transform: translate(-200%, -50%);
+}
+#token-hud .hp-gain-wrap-col2 {
+ transform: translate(-300%, -50%);
+}
+#token-hud .hp-gain-wrap-col3 {
+ transform: translate(-400%, -50%);
+}
+#token-hud .hp-gain-hud-active {
+ display: block;
+}
+#token-hud .hp-gain-hud-disabled {
+ display: none;
+}
+#token-hud .hud-gain-hp-button-select {
+ max-width: 40px;
+ background-image: var(--background-image-base);
+ padding-top: 0;
+ padding-bottom: 0;
+ width: max-content;
+ margin: 0;
+ color: #252424;
+}
+#token-hud .hp-gain-wrap .hud-gain-hp-button-select {
+ padding-left: 8px;
+ font-size: 0.9rem;
+}
diff --git a/module/utils.mjs b/module/utils.mjs
index 2c659d0..7b97d18 100644
--- a/module/utils.mjs
+++ b/module/utils.mjs
@@ -28,6 +28,7 @@ export default class LethalFantasyUtils {
static setHookListeners() {
Hooks.on('renderTokenHUD', async (hud, html, token) => {
+ // HP Loss Button (existing)
const lossHPButton = await foundry.applications.handlebars.renderTemplate('systems/fvtt-lethal-fantasy/templates/loss-hp-hud.hbs', {})
$(html).find('div.left').append(lossHPButton);
$(html).find('img.lethal-hp-loss-hud').click((event) => {
@@ -65,6 +66,45 @@ export default class LethalFantasyUtils {
$(html).find('.hp-loss-wrap')[2].classList.add('hp-loss-hud-disabled');
}
})
+
+ // HP Gain Button (new)
+ const gainHPButton = await foundry.applications.handlebars.renderTemplate('systems/fvtt-lethal-fantasy/templates/gain-hp-hud.hbs', {})
+ $(html).find('div.left').append(gainHPButton);
+ $(html).find('img.lethal-hp-gain-hud').click((event) => {
+ event.preventDefault();
+ let hpMenu = $(html).find('.hp-gain-wrap')[0]
+ if (hpMenu.classList.contains("hp-gain-hud-disabled")) {
+ $(html).find('.hp-gain-wrap')[0].classList.add('hp-gain-hud-active');
+ $(html).find('.hp-gain-wrap')[0].classList.remove('hp-gain-hud-disabled');
+ $(html).find('.hp-gain-wrap')[1].classList.add('hp-gain-hud-active');
+ $(html).find('.hp-gain-wrap')[1].classList.remove('hp-gain-hud-disabled');
+ $(html).find('.hp-gain-wrap')[2].classList.add('hp-gain-hud-active');
+ $(html).find('.hp-gain-wrap')[2].classList.remove('hp-gain-hud-disabled');
+ } else {
+ $(html).find('.hp-gain-wrap')[0].classList.remove('hp-gain-hud-active');
+ $(html).find('.hp-gain-wrap')[0].classList.add('hp-gain-hud-disabled');
+ $(html).find('.hp-gain-wrap')[1].classList.remove('hp-gain-hud-active');
+ $(html).find('.hp-gain-wrap')[1].classList.add('hp-gain-hud-disabled');
+ $(html).find('.hp-gain-wrap')[2].classList.remove('hp-gain-hud-active');
+ $(html).find('.hp-gain-wrap')[2].classList.add('hp-gain-hud-disabled');
+ }
+ })
+ $(html).find('.gain-hp-hud-click').click((event) => {
+ event.preventDefault();
+ let hpGain = event.currentTarget.dataset.hpValue;
+ if (token) {
+ let tokenFull = canvas.tokens.placeables.find(t => t.id === token._id);
+ console.log(tokenFull, token)
+ let actor = tokenFull.actor;
+ actor.applyDamage(Number(hpGain)); // Positive value to add HP
+ $(html).find('.hp-gain-wrap')[0].classList.remove('hp-gain-hud-active');
+ $(html).find('.hp-gain-wrap')[0].classList.add('hp-gain-hud-disabled');
+ $(html).find('.hp-gain-wrap')[1].classList.remove('hp-gain-hud-active');
+ $(html).find('.hp-gain-wrap')[1].classList.add('hp-gain-hud-disabled');
+ $(html).find('.hp-gain-wrap')[2].classList.remove('hp-gain-hud-active');
+ $(html).find('.hp-gain-wrap')[2].classList.add('hp-gain-hud-disabled');
+ }
+ })
})
}
@@ -168,7 +208,7 @@ export default class LethalFantasyUtils {
const isMonster = defender.type === "monster"
-// Pour les monstres, récupérer les attaques activées
+ // Pour les monstres, récupérer les attaques activées
if (isMonster) {
const enabledAttacks = Object.entries(defender.system.attacks).filter(([key, attack]) => attack.enabled)
@@ -527,9 +567,9 @@ export default class LethalFantasyUtils {
${isAttackWin ?
- ` ${data.attackerName} hits ${data.defenderName}!` :
- ` ${data.defenderName} parries the attack!`
- }
+ ` ${data.attackerName} hits ${data.defenderName}!` :
+ ` ${data.defenderName} parries the attack!`
+ }
${damageButton}
diff --git a/packs-system/lf-equipment/000529.log b/packs-system/lf-equipment/000541.log
similarity index 100%
rename from packs-system/lf-equipment/000529.log
rename to packs-system/lf-equipment/000541.log
diff --git a/packs-system/lf-equipment/CURRENT b/packs-system/lf-equipment/CURRENT
index e20a3af..c02f3d8 100644
--- a/packs-system/lf-equipment/CURRENT
+++ b/packs-system/lf-equipment/CURRENT
@@ -1 +1 @@
-MANIFEST-000527
+MANIFEST-000539
diff --git a/packs-system/lf-equipment/LOG b/packs-system/lf-equipment/LOG
index c5d290f..0a70b47 100644
--- a/packs-system/lf-equipment/LOG
+++ b/packs-system/lf-equipment/LOG
@@ -1,8 +1,8 @@
-2026/01/19-20:32:07.348929 7f14d8ff96c0 Recovering log #525
-2026/01/19-20:32:07.358983 7f14d8ff96c0 Delete type=3 #523
-2026/01/19-20:32:07.359059 7f14d8ff96c0 Delete type=0 #525
-2026/01/19-22:34:04.043006 7f1243fff6c0 Level-0 table #530: started
-2026/01/19-22:34:04.043050 7f1243fff6c0 Level-0 table #530: 0 bytes OK
-2026/01/19-22:34:04.052889 7f1243fff6c0 Delete type=0 #528
-2026/01/19-22:34:04.082744 7f1243fff6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
-2026/01/19-22:34:04.092309 7f1243fff6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
+2026/02/06-21:03:10.117032 7f71b6ffd6c0 Recovering log #537
+2026/02/06-21:03:10.127068 7f71b6ffd6c0 Delete type=3 #535
+2026/02/06-21:03:10.127128 7f71b6ffd6c0 Delete type=0 #537
+2026/02/06-21:51:23.216143 7f71b67fc6c0 Level-0 table #542: started
+2026/02/06-21:51:23.216190 7f71b67fc6c0 Level-0 table #542: 0 bytes OK
+2026/02/06-21:51:23.251149 7f71b67fc6c0 Delete type=0 #540
+2026/02/06-21:51:23.327713 7f71b67fc6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
+2026/02/06-21:51:23.327750 7f71b67fc6c0 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 c029838..4a1f76c 100644
--- a/packs-system/lf-equipment/LOG.old
+++ b/packs-system/lf-equipment/LOG.old
@@ -1,8 +1,8 @@
-2026/01/19-20:23:50.466717 7f14da7fc6c0 Recovering log #521
-2026/01/19-20:23:50.476745 7f14da7fc6c0 Delete type=3 #519
-2026/01/19-20:23:50.476798 7f14da7fc6c0 Delete type=0 #521
-2026/01/19-20:32:02.937243 7f1243fff6c0 Level-0 table #526: started
-2026/01/19-20:32:02.937265 7f1243fff6c0 Level-0 table #526: 0 bytes OK
-2026/01/19-20:32:02.943907 7f1243fff6c0 Delete type=0 #524
-2026/01/19-20:32:02.956456 7f1243fff6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
-2026/01/19-20:32:02.956498 7f1243fff6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
+2026/02/04-08:49:16.805619 7f3bddbff6c0 Recovering log #533
+2026/02/04-08:49:16.866468 7f3bddbff6c0 Delete type=3 #531
+2026/02/04-08:49:16.866605 7f3bddbff6c0 Delete type=0 #533
+2026/02/04-08:52:25.382505 7f3946fff6c0 Level-0 table #538: started
+2026/02/04-08:52:25.382568 7f3946fff6c0 Level-0 table #538: 0 bytes OK
+2026/02/04-08:52:25.390046 7f3946fff6c0 Delete type=0 #536
+2026/02/04-08:52:25.403667 7f3946fff6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
+2026/02/04-08:52:25.403757 7f3946fff6c0 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/MANIFEST-000527 b/packs-system/lf-equipment/MANIFEST-000539
similarity index 71%
rename from packs-system/lf-equipment/MANIFEST-000527
rename to packs-system/lf-equipment/MANIFEST-000539
index 21fb3e6..1971e95 100644
Binary files a/packs-system/lf-equipment/MANIFEST-000527 and b/packs-system/lf-equipment/MANIFEST-000539 differ
diff --git a/packs-system/lf-gifts/000526.log b/packs-system/lf-gifts/000538.log
similarity index 100%
rename from packs-system/lf-gifts/000526.log
rename to packs-system/lf-gifts/000538.log
diff --git a/packs-system/lf-gifts/CURRENT b/packs-system/lf-gifts/CURRENT
index f17feb2..1512908 100644
--- a/packs-system/lf-gifts/CURRENT
+++ b/packs-system/lf-gifts/CURRENT
@@ -1 +1 @@
-MANIFEST-000524
+MANIFEST-000536
diff --git a/packs-system/lf-gifts/LOG b/packs-system/lf-gifts/LOG
index 3abffa2..870a937 100644
--- a/packs-system/lf-gifts/LOG
+++ b/packs-system/lf-gifts/LOG
@@ -1,8 +1,8 @@
-2026/01/19-20:32:07.362345 7f14d9ffb6c0 Recovering log #522
-2026/01/19-20:32:07.372537 7f14d9ffb6c0 Delete type=3 #520
-2026/01/19-20:32:07.372596 7f14d9ffb6c0 Delete type=0 #522
-2026/01/19-22:34:04.165591 7f1243fff6c0 Level-0 table #527: started
-2026/01/19-22:34:04.165637 7f1243fff6c0 Level-0 table #527: 0 bytes OK
-2026/01/19-22:34:04.175509 7f1243fff6c0 Delete type=0 #525
-2026/01/19-22:34:04.175734 7f1243fff6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
-2026/01/19-22:34:04.175767 7f1243fff6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
+2026/02/06-21:03:10.133019 7f71b7fff6c0 Recovering log #534
+2026/02/06-21:03:10.144336 7f71b7fff6c0 Delete type=3 #532
+2026/02/06-21:03:10.144427 7f71b7fff6c0 Delete type=0 #534
+2026/02/06-21:51:23.291316 7f71b67fc6c0 Level-0 table #539: started
+2026/02/06-21:51:23.291356 7f71b67fc6c0 Level-0 table #539: 0 bytes OK
+2026/02/06-21:51:23.327518 7f71b67fc6c0 Delete type=0 #537
+2026/02/06-21:51:23.327733 7f71b67fc6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
+2026/02/06-21:51:23.327757 7f71b67fc6c0 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 dd912e9..c48cf90 100644
--- a/packs-system/lf-gifts/LOG.old
+++ b/packs-system/lf-gifts/LOG.old
@@ -1,8 +1,8 @@
-2026/01/19-20:23:50.482057 7f14d8ff96c0 Recovering log #518
-2026/01/19-20:23:50.491682 7f14d8ff96c0 Delete type=3 #516
-2026/01/19-20:23:50.491756 7f14d8ff96c0 Delete type=0 #518
-2026/01/19-20:32:02.944004 7f1243fff6c0 Level-0 table #523: started
-2026/01/19-20:32:02.944026 7f1243fff6c0 Level-0 table #523: 0 bytes OK
-2026/01/19-20:32:02.950204 7f1243fff6c0 Delete type=0 #521
-2026/01/19-20:32:02.956469 7f1243fff6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
-2026/01/19-20:32:02.956510 7f1243fff6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
+2026/02/04-08:49:16.884043 7f3bdd3fe6c0 Recovering log #530
+2026/02/04-08:49:16.942005 7f3bdd3fe6c0 Delete type=3 #528
+2026/02/04-08:49:16.942138 7f3bdd3fe6c0 Delete type=0 #530
+2026/02/04-08:52:25.418216 7f3946fff6c0 Level-0 table #535: started
+2026/02/04-08:52:25.418276 7f3946fff6c0 Level-0 table #535: 0 bytes OK
+2026/02/04-08:52:25.424939 7f3946fff6c0 Delete type=0 #533
+2026/02/04-08:52:25.432353 7f3946fff6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
+2026/02/04-08:52:25.432442 7f3946fff6c0 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-000524 b/packs-system/lf-gifts/MANIFEST-000536
similarity index 77%
rename from packs-system/lf-gifts/MANIFEST-000524
rename to packs-system/lf-gifts/MANIFEST-000536
index b1b9087..1d24bdc 100644
Binary files a/packs-system/lf-gifts/MANIFEST-000524 and b/packs-system/lf-gifts/MANIFEST-000536 differ
diff --git a/packs-system/lf-skills/000531.log b/packs-system/lf-skills/000543.log
similarity index 100%
rename from packs-system/lf-skills/000531.log
rename to packs-system/lf-skills/000543.log
diff --git a/packs-system/lf-skills/CURRENT b/packs-system/lf-skills/CURRENT
index b4b63bc..38bbe8d 100644
--- a/packs-system/lf-skills/CURRENT
+++ b/packs-system/lf-skills/CURRENT
@@ -1 +1 @@
-MANIFEST-000529
+MANIFEST-000541
diff --git a/packs-system/lf-skills/LOG b/packs-system/lf-skills/LOG
index 0baef5b..08838ff 100644
--- a/packs-system/lf-skills/LOG
+++ b/packs-system/lf-skills/LOG
@@ -1,8 +1,8 @@
-2026/01/19-20:32:07.335896 7f14d97fa6c0 Recovering log #527
-2026/01/19-20:32:07.346053 7f14d97fa6c0 Delete type=3 #525
-2026/01/19-20:32:07.346120 7f14d97fa6c0 Delete type=0 #527
-2026/01/19-22:34:04.092377 7f1243fff6c0 Level-0 table #532: started
-2026/01/19-22:34:04.092412 7f1243fff6c0 Level-0 table #532: 0 bytes OK
-2026/01/19-22:34:04.101864 7f1243fff6c0 Delete type=0 #530
-2026/01/19-22:34:04.133480 7f1243fff6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
-2026/01/19-22:34:04.133550 7f1243fff6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
+2026/02/06-21:03:10.101791 7f71b77fe6c0 Recovering log #539
+2026/02/06-21:03:10.111914 7f71b77fe6c0 Delete type=3 #537
+2026/02/06-21:03:10.111991 7f71b77fe6c0 Delete type=0 #539
+2026/02/06-21:51:23.251285 7f71b67fc6c0 Level-0 table #544: started
+2026/02/06-21:51:23.251325 7f71b67fc6c0 Level-0 table #544: 0 bytes OK
+2026/02/06-21:51:23.291180 7f71b67fc6c0 Delete type=0 #542
+2026/02/06-21:51:23.327724 7f71b67fc6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
+2026/02/06-21:51:23.327764 7f71b67fc6c0 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 166a01f..5df3f38 100644
--- a/packs-system/lf-skills/LOG.old
+++ b/packs-system/lf-skills/LOG.old
@@ -1,8 +1,8 @@
-2026/01/19-20:23:50.451679 7f14d9ffb6c0 Recovering log #523
-2026/01/19-20:23:50.462356 7f14d9ffb6c0 Delete type=3 #521
-2026/01/19-20:23:50.462416 7f14d9ffb6c0 Delete type=0 #523
-2026/01/19-20:32:02.930994 7f1243fff6c0 Level-0 table #528: started
-2026/01/19-20:32:02.931037 7f1243fff6c0 Level-0 table #528: 0 bytes OK
-2026/01/19-20:32:02.937118 7f1243fff6c0 Delete type=0 #526
-2026/01/19-20:32:02.956440 7f1243fff6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
-2026/01/19-20:32:02.956479 7f1243fff6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
+2026/02/04-08:49:16.723698 7f3bdcbfd6c0 Recovering log #535
+2026/02/04-08:49:16.780187 7f3bdcbfd6c0 Delete type=3 #533
+2026/02/04-08:49:16.780329 7f3bdcbfd6c0 Delete type=0 #535
+2026/02/04-08:52:25.375521 7f3946fff6c0 Level-0 table #540: started
+2026/02/04-08:52:25.375622 7f3946fff6c0 Level-0 table #540: 0 bytes OK
+2026/02/04-08:52:25.382202 7f3946fff6c0 Delete type=0 #538
+2026/02/04-08:52:25.403638 7f3946fff6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
+2026/02/04-08:52:25.403738 7f3946fff6c0 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-000529 b/packs-system/lf-skills/MANIFEST-000541
similarity index 71%
rename from packs-system/lf-skills/MANIFEST-000529
rename to packs-system/lf-skills/MANIFEST-000541
index 0526e99..248f65a 100644
Binary files a/packs-system/lf-skills/MANIFEST-000529 and b/packs-system/lf-skills/MANIFEST-000541 differ
diff --git a/packs-system/lf-spells-miracles/000226.log b/packs-system/lf-spells-miracles/000238.log
similarity index 100%
rename from packs-system/lf-spells-miracles/000226.log
rename to packs-system/lf-spells-miracles/000238.log
diff --git a/packs-system/lf-spells-miracles/CURRENT b/packs-system/lf-spells-miracles/CURRENT
index 4d5019e..470e565 100644
--- a/packs-system/lf-spells-miracles/CURRENT
+++ b/packs-system/lf-spells-miracles/CURRENT
@@ -1 +1 @@
-MANIFEST-000224
+MANIFEST-000236
diff --git a/packs-system/lf-spells-miracles/LOG b/packs-system/lf-spells-miracles/LOG
index 8f09a2a..fa08aab 100644
--- a/packs-system/lf-spells-miracles/LOG
+++ b/packs-system/lf-spells-miracles/LOG
@@ -1,8 +1,8 @@
-2026/01/19-20:32:07.386680 7f14d97fa6c0 Recovering log #222
-2026/01/19-20:32:07.397058 7f14d97fa6c0 Delete type=3 #220
-2026/01/19-20:32:07.397159 7f14d97fa6c0 Delete type=0 #222
-2026/01/19-22:34:04.082756 7f1243fff6c0 Level-0 table #227: started
-2026/01/19-22:34:04.082796 7f1243fff6c0 Level-0 table #227: 0 bytes OK
-2026/01/19-22:34:04.092156 7f1243fff6c0 Delete type=0 #225
-2026/01/19-22:34:04.092321 7f1243fff6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
-2026/01/19-22:34:04.092355 7f1243fff6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
+2026/02/06-21:03:10.160494 7f71b6ffd6c0 Recovering log #234
+2026/02/06-21:03:10.170771 7f71b6ffd6c0 Delete type=3 #232
+2026/02/06-21:03:10.170846 7f71b6ffd6c0 Delete type=0 #234
+2026/02/06-21:51:23.435610 7f71b67fc6c0 Level-0 table #239: started
+2026/02/06-21:51:23.435649 7f71b67fc6c0 Level-0 table #239: 0 bytes OK
+2026/02/06-21:51:23.473038 7f71b67fc6c0 Delete type=0 #237
+2026/02/06-21:51:23.473211 7f71b67fc6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
+2026/02/06-21:51:23.473250 7f71b67fc6c0 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 9759632..3e607a8 100644
--- a/packs-system/lf-spells-miracles/LOG.old
+++ b/packs-system/lf-spells-miracles/LOG.old
@@ -1,8 +1,8 @@
-2026/01/19-20:23:50.510934 7f14d97fa6c0 Recovering log #218
-2026/01/19-20:23:50.520501 7f14d97fa6c0 Delete type=3 #216
-2026/01/19-20:23:50.520578 7f14d97fa6c0 Delete type=0 #218
-2026/01/19-20:32:02.976313 7f1243fff6c0 Level-0 table #223: started
-2026/01/19-20:32:02.976359 7f1243fff6c0 Level-0 table #223: 0 bytes OK
-2026/01/19-20:32:02.982272 7f1243fff6c0 Delete type=0 #221
-2026/01/19-20:32:02.982509 7f1243fff6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
-2026/01/19-20:32:02.982604 7f1243fff6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
+2026/02/04-08:49:17.043224 7f3bc7fff6c0 Recovering log #230
+2026/02/04-08:49:17.105842 7f3bc7fff6c0 Delete type=3 #228
+2026/02/04-08:49:17.106088 7f3bc7fff6c0 Delete type=0 #230
+2026/02/04-08:52:25.396931 7f3946fff6c0 Level-0 table #235: started
+2026/02/04-08:52:25.396997 7f3946fff6c0 Level-0 table #235: 0 bytes OK
+2026/02/04-08:52:25.403390 7f3946fff6c0 Delete type=0 #233
+2026/02/04-08:52:25.403717 7f3946fff6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
+2026/02/04-08:52:25.403823 7f3946fff6c0 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-000224 b/packs-system/lf-spells-miracles/MANIFEST-000236
similarity index 72%
rename from packs-system/lf-spells-miracles/MANIFEST-000224
rename to packs-system/lf-spells-miracles/MANIFEST-000236
index d282505..bc71406 100644
Binary files a/packs-system/lf-spells-miracles/MANIFEST-000224 and b/packs-system/lf-spells-miracles/MANIFEST-000236 differ
diff --git a/packs-system/lf-vulnerabilities/000525.log b/packs-system/lf-vulnerabilities/000537.log
similarity index 100%
rename from packs-system/lf-vulnerabilities/000525.log
rename to packs-system/lf-vulnerabilities/000537.log
diff --git a/packs-system/lf-vulnerabilities/CURRENT b/packs-system/lf-vulnerabilities/CURRENT
index 26263b0..8f4e3da 100644
--- a/packs-system/lf-vulnerabilities/CURRENT
+++ b/packs-system/lf-vulnerabilities/CURRENT
@@ -1 +1 @@
-MANIFEST-000523
+MANIFEST-000535
diff --git a/packs-system/lf-vulnerabilities/LOG b/packs-system/lf-vulnerabilities/LOG
index 47ec9a3..dde7648 100644
--- a/packs-system/lf-vulnerabilities/LOG
+++ b/packs-system/lf-vulnerabilities/LOG
@@ -1,8 +1,8 @@
-2026/01/19-20:32:07.374730 7f14d8ff96c0 Recovering log #521
-2026/01/19-20:32:07.384387 7f14d8ff96c0 Delete type=3 #519
-2026/01/19-20:32:07.384466 7f14d8ff96c0 Delete type=0 #521
-2026/01/19-22:34:04.031975 7f1243fff6c0 Level-0 table #526: started
-2026/01/19-22:34:04.032019 7f1243fff6c0 Level-0 table #526: 0 bytes OK
-2026/01/19-22:34:04.042831 7f1243fff6c0 Delete type=0 #524
-2026/01/19-22:34:04.082725 7f1243fff6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
-2026/01/19-22:34:04.092294 7f1243fff6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
+2026/02/06-21:03:10.146976 7f71b77fe6c0 Recovering log #533
+2026/02/06-21:03:10.156549 7f71b77fe6c0 Delete type=3 #531
+2026/02/06-21:03:10.156610 7f71b77fe6c0 Delete type=0 #533
+2026/02/06-21:51:23.327858 7f71b67fc6c0 Level-0 table #538: started
+2026/02/06-21:51:23.327892 7f71b67fc6c0 Level-0 table #538: 0 bytes OK
+2026/02/06-21:51:23.359727 7f71b67fc6c0 Delete type=0 #536
+2026/02/06-21:51:23.473179 7f71b67fc6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
+2026/02/06-21:51:23.473221 7f71b67fc6c0 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 cd785fd..8b2c9b5 100644
--- a/packs-system/lf-vulnerabilities/LOG.old
+++ b/packs-system/lf-vulnerabilities/LOG.old
@@ -1,8 +1,8 @@
-2026/01/19-20:23:50.495445 7f14d9ffb6c0 Recovering log #517
-2026/01/19-20:23:50.506507 7f14d9ffb6c0 Delete type=3 #515
-2026/01/19-20:23:50.506583 7f14d9ffb6c0 Delete type=0 #517
-2026/01/19-20:32:02.950374 7f1243fff6c0 Level-0 table #522: started
-2026/01/19-20:32:02.950415 7f1243fff6c0 Level-0 table #522: 0 bytes OK
-2026/01/19-20:32:02.956303 7f1243fff6c0 Delete type=0 #520
-2026/01/19-20:32:02.956488 7f1243fff6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
-2026/01/19-20:32:02.956546 7f1243fff6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
+2026/02/04-08:49:16.956252 7f3bdcbfd6c0 Recovering log #529
+2026/02/04-08:49:17.018344 7f3bdcbfd6c0 Delete type=3 #527
+2026/02/04-08:49:17.018475 7f3bdcbfd6c0 Delete type=0 #529
+2026/02/04-08:52:25.390221 7f3946fff6c0 Level-0 table #534: started
+2026/02/04-08:52:25.390273 7f3946fff6c0 Level-0 table #534: 0 bytes OK
+2026/02/04-08:52:25.396704 7f3946fff6c0 Delete type=0 #532
+2026/02/04-08:52:25.403694 7f3946fff6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
+2026/02/04-08:52:25.403801 7f3946fff6c0 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-000523 b/packs-system/lf-vulnerabilities/MANIFEST-000535
similarity index 72%
rename from packs-system/lf-vulnerabilities/MANIFEST-000523
rename to packs-system/lf-vulnerabilities/MANIFEST-000535
index 50f611b..490e65f 100644
Binary files a/packs-system/lf-vulnerabilities/MANIFEST-000523 and b/packs-system/lf-vulnerabilities/MANIFEST-000535 differ
diff --git a/styles/hud.less b/styles/hud.less
index bfda17e..3034c4b 100644
--- a/styles/hud.less
+++ b/styles/hud.less
@@ -35,10 +35,56 @@
padding-bottom: 0;
width: max-content;
margin: 0;
- color:#252424;
+ color: #252424;
}
-#token-hud .hp-loss-wrap .hud-loss-hp-button-select {
+#token-hud .hp-loss-wrap .hud-loss-hp-button-select {
+ padding-left: 8px;
+ font-size: 0.9rem;
+}
+
+/* HP Gain Styles */
+#token-hud .hp-gain-wrap {
+ position: absolute;
+ left: 75px;
+ display: none;
+ top: 50%;
+ width: 48px;
+ text-align: start;
+ overflow-y: auto;
+}
+
+#token-hud .hp-gain-wrap-col1 {
+ transform: translate(-200%, -50%);
+}
+
+#token-hud .hp-gain-wrap-col2 {
+ transform: translate(-300%, -50%);
+}
+
+#token-hud .hp-gain-wrap-col3 {
+ transform: translate(-400%, -50%);
+}
+
+#token-hud .hp-gain-hud-active {
+ display: block;
+}
+
+#token-hud .hp-gain-hud-disabled {
+ display: none;
+}
+
+#token-hud .hud-gain-hp-button-select {
+ max-width: 40px;
+ background-image: var(--background-image-base);
+ padding-top: 0;
+ padding-bottom: 0;
+ width: max-content;
+ margin: 0;
+ color: #252424;
+}
+
+#token-hud .hp-gain-wrap .hud-gain-hp-button-select {
padding-left: 8px;
font-size: 0.9rem;
}
diff --git a/templates/gain-hp-hud.hbs b/templates/gain-hp-hud.hbs
new file mode 100644
index 0000000..f6198e7
--- /dev/null
+++ b/templates/gain-hp-hud.hbs
@@ -0,0 +1,43 @@
+
+

+
+
+ {{#for 1 11 1}}
+
+ {{/for}}
+
+
+
+ {{#for 11 21 1}}
+
+ {{/for}}
+
+
+
+ {{#for 21 31 1}}
+
+ {{/for}}
+
+
+
\ No newline at end of file