Pen-and-ink art direction with stipple shading

- Cream paper, hand-drawn ink borders, engraving-era type
  (IM Fell English SC, EB Garamond)
- Stipple shadows from a seamless, randomly dotted tile (fixed seed)
- Trust badges are ink stars; Sentry and Elder marked by nameplate
- Smokey's crow art unchanged

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UQnSw4RRWp8uqpj3nsnnXF
This commit is contained in:
SmokeyandClaude Opus 5.5 committed 2026-10-27 11:58:32 -06:00
1 parent a89157803b
commit 1008683b1b
6 files changed
+127 -118

No files matched your search

+8 -2
View File
@@ -23,6 +23,9 @@ const ART = `
<path class="jaw" d="M193.912 193.978 C232.197 241.52 277.265 249.977 300.252 250.431 C277.193 225.895 274.197 220.917 228.645 169.687 Z"/>
</g>`;
// Trust badge: a pen-and-ink star. Outline at "regular", inked in at "trusted".
const STAR = `<path d="M12 1.8 L14.9 8.6 L22.2 9.2 L16.6 14 L18.3 21.2 L12 17.4 L5.7 21.2 L7.4 14 L1.8 9.2 L9.1 8.6 Z"/>`;
const REACTION_MS: Record<Reaction, number> = { cheer: 800, sulk: 800, levelUp: 2000, levelDown: 1000, prank: 2500 };
export function svgCrow(name: string, role: Role): CrowView {
@@ -38,8 +41,11 @@ export function svgCrow(name: string, role: Role): CrowView {
body.className = "crow-body";
body.append(svg);
const badge = document.createElement("span");
badge.className = "badge";
const badge = document.createElementNS(NS, "svg");
badge.setAttribute("class", "badge");
badge.setAttribute("viewBox", "0 0 24 24");
badge.setAttribute("aria-hidden", "true");
badge.innerHTML = STAR;
const cap = document.createElement("figcaption");
cap.textContent = name;
el.append(body, badge, cap);