diff --git a/.project/designs/combat-preview-sketch.html b/.project/designs/combat-preview-sketch.html index 2806e409..5ee78632 100644 --- a/.project/designs/combat-preview-sketch.html +++ b/.project/designs/combat-preview-sketch.html @@ -325,18 +325,33 @@ margin-top: 2px; } - /* Expected table */ - .expected-grid { - display: grid; grid-template-columns: 1fr auto 1fr; gap: 8px; align-items: center; - } - .exp-block { + /* HP-after bars */ + .hp-after-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; } + .hp-after-block { background: rgba(31,23,51,0.6); border: 1px solid var(--border); - border-radius: 3px; padding: 8px 12px; text-align: center; + border-radius: 3px; padding: 10px 12px; } - .exp-label { font-size: 10px; color: var(--muted); text-transform: uppercase; letter-spacing: 0.06em; margin-bottom: 3px; } - .exp-val { font-size: 20px; font-weight: bold; font-family: monospace; } - .exp-sub { font-size: 10px; color: var(--muted); margin-top: 2px; } - .exp-arrow { text-align: center; color: var(--muted); font-size: 18px; } + .hp-after-label { font-size: 10px; color: var(--muted); text-transform: uppercase; letter-spacing: 0.06em; margin-bottom: 6px; display: flex; justify-content: space-between; align-items: center; } + .hp-after-label .death-badge { background: #3d0a08; border: 1px solid var(--neg); border-radius: 2px; padding: 1px 5px; font-size: 9px; color: var(--neg); letter-spacing: 0.06em; } + .hp-track-outer { + height: 20px; background: #ffffff08; border-radius: 2px; position: relative; overflow: hidden; + border: 1px solid #73591f33; + } + /* green: guaranteed surviving HP */ + .hp-sure { position: absolute; top: 0; bottom: 0; left: 0; background: #66b86666; } + /* yellow: possible HP zone */ + .hp-maybe { position: absolute; top: 0; bottom: 0; background: #e6993344; } + /* red: death zone (below 0) capped at left edge */ + .hp-dead { position: absolute; top: 0; bottom: 0; left: 0; background: #d9594044; border-right: 2px solid var(--neg); } + /* current HP marker */ + .hp-cur { position: absolute; top: 0; bottom: 0; width: 2px; background: #ffffff66; } + .hp-zero { position: absolute; top: 0; bottom: 0; left: 0; width: 2px; background: var(--neg); } + .hp-nums { display: flex; justify-content: space-between; font-size: 10px; font-family: monospace; margin-top: 4px; } + .hp-n-min { color: var(--neg); } + .hp-n-avg { color: var(--warn); } + .hp-n-max { color: var(--sage); } + .hp-n-dead { color: var(--neg); font-weight: bold; } + .death-prob { font-size: 11px; color: var(--neg); margin-top: 5px; font-family: monospace; } /* Action row */ .action-row { @@ -612,17 +627,38 @@ -
-
-
Warrior HP after
-
56–60
-
likely survives
+ +
+
+
Warrior HP after (68 now)
+
+ +
+ +
+ +
+
+
+ min 52 + avg 56 + max 60 · no death risk +
-
-
-
Pikeman HP after
-
75–86
-
damaged, survives
+
+
Pikeman HP after (100 now)
+
+ +
+ +
+
+
+
+ min 75 + avg 80 + max 86 · no death risk +
@@ -752,17 +788,33 @@
min 10avg 17max 22
-
-
-
Berserker HP after
-
68–80
-
survives (DEF 6 is fragile)
+ +
+
+
Berserker HP after (90 now)
+
+
+
+
+
+
+ min 68 + avg 73 + max 80 · cannot die +
-
-
-
Warrior HP after
-
42–55
-
likely survives, heavily wounded
+
+
Warrior HP after (80 now)
+
+
+
+
+
+
+ min 42 + avg 49 + max 55 · cannot die +
@@ -900,17 +952,54 @@
min 10avg 15max 20
-
-
-
Ironwarden HP after
-
90–100
-
barely scratched
+ +
+
+
Ironwarden HP after (110 now)
+
+
+
+
+
+
+ min 90 + avg 95 + max 100 · cannot die +
-
-
-
Berserker HP after
-
33–54
-
critical / likely dead
+
+
+ Berserker HP after (wounded 45/90) + ⚠ DEATH POSSIBLE +
+
+ +
+ +
+ + + + + + +
+
+ +
+
+
+
+ 💀 min −12 (dead) + avg −1 (dead) + max 9 HP +
+
death probability: (57−45)÷(57−36) = 12/21 ≈ 57%
@@ -1046,17 +1135,44 @@
min 18avg 25max 32 💀
-
-
-
Cavalry HP after
-
38–52
-
wounded / dead next hit
+ +
+
+
+ Cavalry HP after (wounded 28/70) + ⚠ DEATH POSSIBLE +
+
+ +
+
+
+
+
+
+ 💀 min −4 (dead) + avg 3 + max 10 HP +
+
death probability: (32−28)÷(32−18) = 4/14 ≈ 29%
-
-
-
Spearmen HP after
-
37–48
-
damaged but survives
+
+
Spearmen HP after (60 now)
+
+
+
+
+
+
+ min 37 + avg 42 + max 48 · cannot die +