Refactor spine-prototype to use lib-core.composition for the Sign:
template defines sprite_color + sprite_w + sprite_h + text + position;
create instantiates with per-instance position + text override.
Render switches from direct draw_rect to render.draw_entities{tag=
"renderable"}; interaction.register reads position from entity-properties.
Direct hardcoded `local sign = {x, y, text}` Lua-local + SIGN_R/G/B
constants entfernt. Sign demo-behavior identisch (12×12 yellow rect at
tile-center (4,4) = (144,144); E within 40px → print text).
Bumps: render dep 0.1.0 → 0.2.0; +composition v0.1.0; module 0.1.0 →
0.2.0.
Stones + Player bleiben Lua-locals (A.5/A.6 territory).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The launcher migrated from lib-sporel.launcher to lib-management.launcher
per ADR-0045 (three-tier library naming). Update the ESC handler to
target the new module id so quit-to-launcher continues to work.
Replaces the inline color-only demo_tilemap with a dep on the
prototype-fa-starter asset lib and its baked fa_terrain_v1 atlas.
The map atlases[] alias-string is updated to fa_terrain_v1; the
packed-u32 layer-tiles keep their numeric values because the baker
assigned the expected IDs (1 for grass_field surface tile, 2 for
stone_wall_brick wall tile). Adds maps.load_textures() call in init.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Surface + wall layers with entity slot between them. Uses
maps.draw_map_pre_entities and maps.draw_map_post_entities so character
sprites render between surface and wall layers.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Reorganized to follow the project's module documentation structure:
Abstract paragraph, Badges as bold key:value list, Topology section
with auto-generated mermaid graph, Controls describing player input,
Demonstrates listing the Sporel features showcased, References at
the end.
Install pre-commit hook via Sporel --install-hooks=.; topology is
auto-managed by Sporel --lint --fix.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
6 input.bind() calls migrated from engine.input.KEY_* integers to
lowercase string-keys. Module is now engine.input.KEY_*-free (audit-
I3 resolved).
deps[]: lib-core.input version 0.1.0 → 0.2.0.
I1: Removed actor inline-stub (functionless after actor-Deferral) and
its init-print line. spine-prototype no longer pretends a deferred lib
is loaded.
I2: 60-frame self-exit now CI-conditional via SPOREL_CI=1 env var.
Interactive dev-runs (without var) loop until ESC. Smoke.sh sets
SPOREL_CI=1 globally to preserve headless behavior.