[art] No mission thumbnails — 4 named missions render as text-only entries on title screen #12
Labels
No labels
blocked:needs-attention
blocked:needs-decision
blocked:needs-decompose
blocked:needs-design
blocked:needs-triage
blocked:unclassified
bug
documentation
enhancement
gsd-spec
in-progress
needs-decompose
priority:high
priority:low
priority:medium
quickfix
test
triage-approved
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Mark/cybertactics#12
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Asset gap.
web/js/maps.jsdefines 4 missions (Sector 7 Underworks, Rooftop Relay, The Foundry, Supply Cache) with detailed map definitions (MW × MHgrid +rows+walls+doors+props). The title screen shows the 4 missions in a vertical list as text only — no preview art.What's missing:
maps.jsdata at small scale, OR a hand-drawn mission thumbnailAcceptance:
Refs:
web/js/maps.jsmap definitions,web/index.htmlCAMPAIGN section.Fixed in commit
0cc0b0con main.Added renderMissionThumb(canvas, map, locked) in web/js/ui.js that paints a 320x180 top-down map preview per mission from the same rows/scenery/squad/enemies data the gameplay uses (no extra asset files). showTitle() injects one canvas per mission entry and paints after innerHTML is set.
Locked missions render a dim variant with a centred LOCKED badge band (CSS adds grayscale(0.4) as a secondary cue). The .mission button is now a flex row with the thumbnail on the left, name and objective on the right.
Playwright smoke grew three new assertions: one canvas per mission button, all canvases 320x180 with painted pixels, locked missions render the LOCKED overlay band. Verified live: 4/4 thumbs painted 320x180, 304 non-bg pixels in the locked-overlay centre row.
make ci: 7 node smokes + gdlint + Playwright + Godot import — all PASS.