Skip to content

Commit f4c33b2

Browse files
asimoneclaude
andcommitted
Add icons, fix pierce SVG, add movement cards
- Add favicon (gold snowflake) - Fix null card rule: x0 only nullifies damage, not attack effects (p. 26) - Add null.png and double.png badges for null/crit attack modifier cards - Fix pierce.svg rendering by removing broken clip-path - Add pierce icon alongside shield in Shield & Pierce card header - Add move/jump icons to Move & Jump card header - Add Teleport and Flying cards with icons and rules summaries - Use dark teal badge backgrounds for movement icons Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 16ae3b5 commit f4c33b2

4 files changed

Lines changed: 63 additions & 21 deletions

File tree

assets/icons/double.png

28.3 KB
Loading

assets/icons/null.png

28.5 KB
Loading

assets/icons/pierce.svg

Lines changed: 0 additions & 1 deletion
Loading

index.html

Lines changed: 63 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -599,13 +599,11 @@ <h2 class="section-header">Attack modifier rules</h2>
599599
<div class="card">
600600
<div class="card-header">
601601
<svg class="badge-svg" viewBox="0 0 40 40" aria-label="Advantage & Disadvantage badge">
602-
<polygon points="20,2 37,11 37,29 20,38 3,29 3,11" fill="#c8a84b" stroke="#a07820" stroke-width="1.5"/>
603-
<!-- two overlapping card rects -->
604-
<rect x="8" y="11" width="13" height="18" rx="2" fill="none" stroke="white" stroke-width="1.8"/>
605-
<rect x="15" y="9" width="13" height="18" rx="2" fill="#c8a84b" stroke="white" stroke-width="1.8"/>
606-
<!-- lines suggesting card face -->
607-
<line x1="18" y1="14" x2="25" y2="14" stroke="white" stroke-width="1.2" stroke-linecap="round"/>
608-
<line x1="18" y1="17" x2="25" y2="17" stroke="white" stroke-width="1.2" stroke-linecap="round"/>
602+
<!-- two overlapping landscape attack modifier cards -->
603+
<rect x="3" y="10" width="24" height="16" rx="2" fill="none" stroke="#c8a84b" stroke-width="1.8"/>
604+
<rect x="13" y="14" width="24" height="16" rx="2" fill="#c8a84b" stroke="#a07820" stroke-width="1.5"/>
605+
<line x1="17" y1="19" x2="33" y2="19" stroke="white" stroke-width="1.2" stroke-linecap="round"/>
606+
<line x1="17" y1="23" x2="33" y2="23" stroke="white" stroke-width="1.2" stroke-linecap="round"/>
609607
</svg>
610608
<div class="card-meta">
611609
<div class="card-title">Advantage &amp; Disadvantage</div>
@@ -637,12 +635,7 @@ <h2 class="section-header">Attack modifier rules</h2>
637635
<!-- NULL CARD ×0 -->
638636
<div class="card">
639637
<div class="card-header">
640-
<svg class="badge-svg" viewBox="0 0 40 40" aria-label="Null card badge">
641-
<polygon points="20,2 37,11 37,29 20,38 3,29 3,11" fill="#c0392b" stroke="#8a1a10" stroke-width="1.5"/>
642-
<!-- X shape -->
643-
<line x1="12" y1="12" x2="28" y2="28" stroke="white" stroke-width="3.2" stroke-linecap="round"/>
644-
<line x1="28" y1="12" x2="12" y2="28" stroke="white" stroke-width="3.2" stroke-linecap="round"/>
645-
</svg>
638+
<img src="assets/icons/null.png" class="badge-img" alt="Null card icon">
646639
<div class="card-meta">
647640
<div class="card-title">Null Card (×0)</div>
648641
<span class="card-sub">Attack modifier rule</span>
@@ -657,10 +650,7 @@ <h2 class="section-header">Attack modifier rules</h2>
657650
<!-- CRIT CARD ×2 -->
658651
<div class="card">
659652
<div class="card-header">
660-
<svg class="badge-svg" viewBox="0 0 40 40" aria-label="Crit card badge">
661-
<polygon points="20,2 37,11 37,29 20,38 3,29 3,11" fill="#c8a84b" stroke="#a07820" stroke-width="1.5"/>
662-
<text x="20" y="26" text-anchor="middle" fill="white" font-size="14" font-weight="700" font-family="Lato,sans-serif">×2</text>
663-
</svg>
653+
<img src="assets/icons/double.png" class="badge-img" alt="Double damage icon">
664654
<div class="card-meta">
665655
<div class="card-title">Crit Card (×2)</div>
666656
<span class="card-sub">Attack modifier rule</span>
@@ -699,8 +689,11 @@ <h2 class="section-header">Shield &amp; Pierce</h2>
699689
<!-- SHIELD & PIERCE -->
700690
<div class="card">
701691
<div class="card-header">
702-
<div class="badge-icon-wrap" style="background:#3a5a8a">
703-
<img src="assets/icons/shield.svg" alt="Shield icon">
692+
<div style="display:flex;gap:6px;flex-shrink:0">
693+
<div class="badge-icon-wrap" style="background:#3a5a8a">
694+
<img src="assets/icons/shield.svg" alt="Shield icon">
695+
</div>
696+
<img src="assets/icons/pierce.svg" class="badge-img" alt="Pierce icon">
704697
</div>
705698
<div class="card-meta">
706699
<div class="card-title">Shield &amp; Pierce</div>
@@ -743,15 +736,65 @@ <h2 class="section-header">Retaliate</h2>
743736

744737
<h2 class="section-header">Move &amp; Jump</h2>
745738

746-
<!-- MOVE & JUMP — text-only -->
739+
<!-- MOVE & JUMP -->
747740
<div class="card">
741+
<div class="card-header">
742+
<div style="display:flex;gap:6px;flex-shrink:0">
743+
<div class="badge-icon-wrap" style="background:#2a5a4a">
744+
<img src="assets/icons/move.svg" alt="Move icon">
745+
</div>
746+
<div class="badge-icon-wrap" style="background:#2a5a4a">
747+
<img src="assets/icons/jump.svg" alt="Jump icon">
748+
</div>
749+
</div>
750+
<div class="card-meta">
751+
<div class="card-title">Move &amp; Jump</div>
752+
<span class="card-sub">Movement rules</span>
753+
</div>
754+
</div>
748755
<div class="card-body">
749756
<p><strong>Move X</strong> allows you to move up to X hexes. Each hex entered costs 1 movement, except difficult terrain which costs 2.</p>
750757
<p><strong>Jump</strong> (as part of a Move ability) ignores all terrain and figures <em>along the path</em>. The final hex still costs 1 movement, still obeys occupancy rules, and still triggers hazardous terrain on landing.</p>
751758
<div class="callout"><span class="callout-icon"></span><span>You cannot end your movement on an occupied hex — whether ally, enemy, or obstacle — unless it is an empty hex you can legally enter. <em>(p. 24)</em></span></div>
752759
</div>
753760
</div>
754761

762+
<!-- TELEPORT -->
763+
<div class="card">
764+
<div class="card-header">
765+
<div class="badge-icon-wrap" style="background:#2a5a4a">
766+
<img src="assets/icons/teleport.svg" alt="Teleport icon">
767+
</div>
768+
<div class="card-meta">
769+
<div class="card-title">Teleport</div>
770+
<span class="card-sub">Movement rules</span>
771+
</div>
772+
</div>
773+
<div class="card-body">
774+
<p><strong>Teleport X</strong> places the figure on any empty hex within range X. No path is taken — walls, obstacles, terrain, and figures between origin and destination are all ignored.</p>
775+
<p>Teleport is not movement. It is not prevented by Immobilize and does not trigger abilities that react to movement.</p>
776+
<div class="callout"><span class="callout-icon"></span><span>No terrain effects apply along the way, but hazardous terrain on the <em>destination</em> hex still deals damage on arrival. <em>(p. 24)</em></span></div>
777+
</div>
778+
</div>
779+
780+
<!-- FLYING -->
781+
<div class="card">
782+
<div class="card-header">
783+
<div class="badge-icon-wrap" style="background:#2a5a4a">
784+
<img src="assets/icons/fly.svg" alt="Flying icon">
785+
</div>
786+
<div class="card-meta">
787+
<div class="card-title">Flying</div>
788+
<span class="card-sub">Movement rules</span>
789+
</div>
790+
</div>
791+
<div class="card-body">
792+
<p><strong>Flying</strong> allows a figure to ignore all terrain costs and effects <em>along the path</em>, including difficult terrain, hazardous terrain, and obstacles. The figure may pass through hexes occupied by other figures.</p>
793+
<p>The destination hex must still be empty, and hazardous terrain on the landing hex still deals damage.</p>
794+
<div class="callout"><span class="callout-icon"></span><span>Unlike Jump, Flying applies to the <em>entire</em> move — not just a single ability. It also avoids hazardous terrain damage on every hex passed through, not just the destination. <em>(p. 24)</em></span></div>
795+
</div>
796+
</div>
797+
755798
<h2 class="section-header">Terrain types</h2>
756799

757800
<!-- TERRAIN — text-only with table -->

0 commit comments

Comments
 (0)