From ee1c8bb8ae6fa44f5d09949ca30edc039a5a39a5 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Sun, 30 Aug 2026 22:17:20 -0700 Subject: Hat fitting, final millimetres: everything settles three pixels lower and one further left Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01MrkLsNScXe9b6BviUSdmMr --- src/features/hats.js | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'src') diff --git a/src/features/hats.js b/src/features/hats.js index 6d6b629..c0ea3cc 100644 --- a/src/features/hats.js +++ b/src/features/hats.js @@ -28,7 +28,7 @@ const ADMIN_PK = '98ae4da926c471c23fd12d1ebdd5839ba82917baa618e184e0c9916d93dcf4 const svg = (inner) => `${inner}`; const HATS = [ { - id: 'beanie', nameKey: 'hatBeanie', sat: 21, w: 92, b: 88, r: -8, + id: 'beanie', nameKey: 'hatBeanie', sat: 21, w: 92, b: 79, r: -8, art: svg(` @@ -36,7 +36,7 @@ const HATS = [ `), }, { - id: 'trucker', nameKey: 'hatTrucker', sat: 2100, w: 106, b: 78, r: -6, + id: 'trucker', nameKey: 'hatTrucker', sat: 2100, w: 106, b: 69, r: -6, art: svg(` ₿ @@ -45,7 +45,7 @@ const HATS = [ `), }, { - id: 'cowboy', nameKey: 'hatCowboy', sat: 21000, w: 122, b: 78, r: -7, + id: 'cowboy', nameKey: 'hatCowboy', sat: 21000, w: 122, b: 69, r: -7, art: svg(` @@ -53,27 +53,27 @@ const HATS = [ `), }, { - id: 'fedora', nameKey: 'hatFedora', sat: 21000, w: 118, b: 80, r: -8, + id: 'fedora', nameKey: 'hatFedora', sat: 21000, w: 118, b: 71, r: -8, art: svg(` `), }, { - id: 'bowler', nameKey: 'hatBowler', sat: 210000, w: 104, b: 80, r: -7, + id: 'bowler', nameKey: 'hatBowler', sat: 210000, w: 104, b: 71, r: -7, art: svg(` `), }, { - id: 'top', nameKey: 'hatTop', sat: 210000, w: 96, b: 82, r: -7, + id: 'top', nameKey: 'hatTop', sat: 210000, w: 96, b: 73, r: -7, art: svg(` `), }, { - id: 'wizard', nameKey: 'hatWizard', sat: 2100000, w: 112, b: 92, r: -4, dx: -8, + id: 'wizard', nameKey: 'hatWizard', sat: 2100000, w: 112, b: 83, r: -4, dx: -8, art: svg(` @@ -81,7 +81,7 @@ const HATS = [ `), }, { - id: 'crown', nameKey: 'hatCrown', sat: null, w: 86, b: 92, r: -7, + id: 'crown', nameKey: 'hatCrown', sat: null, w: 86, b: 83, r: -7, art: svg(` @@ -89,9 +89,9 @@ const HATS = [ }, ]; const hatById = (id) => HATS.find((x) => x.id === id) || null; -// -55, not -50: every hat rides a couple of pixels left of center — +// -58, not -50: every hat rides a couple of pixels left of center — // the art leans right and dead-center read as drifting off the head. -const posStyle = (hat) => `width:${hat.w}%;bottom:${hat.b}%;transform:translateX(${-55 + (hat.dx || 0)}%) rotate(${hat.r}deg)`; +const posStyle = (hat) => `width:${hat.w}%;bottom:${hat.b}%;transform:translateX(${-58 + (hat.dx || 0)}%) rotate(${hat.r}deg)`; export function hatsFeature(ctx) { const { h, ui, render, wallet, hook, toast, brandHeader } = ctx; -- cgit v1.2.3