# Sprint 33: Pecunia — Client Tasks **Goal:** Full economics simulation running — Leontief production, spatial price equilibrium, currency zones, corporate behavioral agents across all three corporation tiers, stability tests passing. **Branch:** `sprint-33/client` **Agents:** Stig (UI dev) ## New Tickets | # | Title | Blocked by | |---|-------|------------| | #818 | Create icon_tint.gdshader for runtime icon recoloring | — | Use `tooling/db/ticket show ` for full ticket details. ## Key Decisions - `decisions/architecture.md` — D-169 (implant UI component library), D-170 (HUD visibility groups) ## Notes **#818 — Create icon_tint.gdshader for runtime icon recoloring** - The implant HUD icon set (D-086, #795) references `icon_tint.gdshader` for runtime color replacement via ShaderMaterial. This shader was assumed to exist but was not authored during Sprint 32. - The shader must handle two icon types: - **Stroke-based icons** (majority of the set) — the icon is drawn as colored outlines/strokes on a transparent background. Recolor by replacing the stroke color at runtime. - **Fill-based icons** (health cross, at minimum) — the icon is a solid filled shape. Recolor the fill. - Integration spec: `docs/design/icon-set-v01.md` section 3.2 details the Godot ShaderMaterial parameter interface. Read that section before writing the shader. - Placement: `client/ui/implant/` or `client/shaders/` — check where other shaders live in the client tree and follow the existing convention. - The shader takes a `ShaderMaterial` parameter (the tint color) and outputs a recolored version of the source texture, preserving alpha. The icon textures are single-color SVG exports — the shader replaces the source color, not a specific channel. - Test by attaching to an `ImplantDataRow` or standalone `TextureRect` with one of the HUD icon textures. Verify both stroke and fill icon types recolor correctly at all implant theme semantic colors (`ACCENT_ACTIVE`, `ACCENT_POSITIVE`, `ACCENT_NEGATIVE`, `ACCENT_WARNING`, per `client/ui/implant/default_implant.tres`). - This is a standalone task — no server-side dependencies. ## Dependency Chain ``` #818 (icon_tint.gdshader) → standalone ``` ## PR Workflow When ready to submit, create a PR with `tea` CLI. **All flags are required** to avoid TTY prompts (see CLAUDE.md "Gitea access" section): ```bash tea pr create --repo jpmschweitzer/settled-reach --login schweitz --title "feat(ui): description" --description "body" --base main --head sprint-33/client ```