Commit graph

26 commits

Author SHA1 Message Date
Your Name
7d84f595e4 Replace box variants with a moveable adhesion property
Collapse the spiky/sticky/skewer box-variant assets into a single per-
instance `adhesion` property on any moveable block, chosen in the editor
via a dropdown next to the colour picker and stored in the .sav alongside
the class.

- spiky -> sticky: soft grab on every true edge (goopy shader)
- skewer -> gluey: rigid weld on every true edge (spiked outline)
- old trailing-face sticky is removed; its saves fold into new sticky

Move the spike geometry + drawGlueySprite into shaders.lua, fold drawing
and the adhesion flag into GenericMoveable, and delete the three
Generic{Sticky,Spiky,Skewer} classes and box_variants.lua. Room:createEntity
normalises legacy spiky_/skewer_/sticky_ class prefixes so old saves load,
and serialization emits `adhesion`. World/map previews and the movement
proxy follow the rename.

Backfill rooms/*.sav to the new format via tools/backfill_adhesion.lua
(41 objects across 8 files). Update tests to the two-mode model; the two
tests asserting the removed lateral-shear limitation are dropped and a
legacy-load migration test added. 27/27 pass.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-21 16:34:01 -04:00
Your Name
c348b81a93 Add named Marks and cross-room NPC pathfinding
- Mark: a debug non-collidable named destination (pixel-art target icon),
  editor tool + name modal, globally-unique names, programmatic Room:addMark
- NPCs walk to Marks: each RGB copy is a per-room resident (like the player),
  running its own A* on its own colour layer, transferring rooms as it crosses
  seams; rendered and collided by the room it currently stands in
- Player copies are obstacles in NPC pathfinding
- A* is footprint-aware for multi-cell NPCs
- Editor: click an NPC to open a filterable destination picker
- Ink: Dialogue.open binds walk_to; Jorge can be sent to "end"/"begin"
- Fix: a blocked NPC now replans each tick and resumes instead of freezing
- [npc] move diagnostics under DEBUG (start/goal/route or block reason)
- Docs (adding-npcs) + CLAUDE.md LÖVE 11.x/float-colour corrections
- Fix test harness loadSprite stub; movement tests green (28)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-21 15:56:53 -04:00
Your Name
6d41894036 just some level things idk whats going on here 2026-08-15 09:05:42 -04:00
Your Name
d829b4972f note blocks and sticky test 2026-08-13 12:45:41 -04:00
Your Name
1bc1cdb11f cool ideas 2026-08-13 09:17:40 -04:00
Your Name
7c38a4f619 supposedly fix saving 2026-08-12 17:20:11 -04:00
Your Name
ec745f87ab Update authored puzzle levels 2026-08-12 14:52:06 -04:00
Your Name
38eaba2fa6 room changes 2026-08-12 09:00:44 -04:00
Your Name
e200ddcaad wire puzzle good 2026-08-12 00:22:04 -04:00
Your Name
6a5c2fc951 better wirer behavior etc 2026-08-12 00:12:26 -04:00
Your Name
bc4976b324 wired switches and doors 2026-08-11 22:55:58 -04:00
Your Name
a60f46d585 player blocker 2026-08-11 20:29:35 -04:00
Your Name
0618cfc51d jorge level update 2026-08-11 20:10:46 -04:00
Your Name
761214fe3e new level experiments 2026-08-11 19:16:22 -04:00
Your Name
4cb536d6c8 feat: add tetromino loop level 2026-08-11 15:07:46 -04:00
Your Name
c3f5aafd77 Add drag painting to level editor 2026-08-11 14:11:57 -04:00
Your Name
5413823b26 add dialog 2026-08-08 00:09:50 -04:00
Your Name
c92c0f6ff7 fix state thigns and port to love11 2026-08-07 20:56:55 -04:00
Your Name
1850737cf6 sav fixes 2026-08-07 17:49:13 -04:00
Your Name
b9b0726506 misc 2026-08-07 03:22:28 -04:00
Your Name
f8e3d78332 move repeatedly in direction 2026-08-07 02:01:39 -04:00
Your Name
e065ab83de we're back baby 2026-08-07 01:57:48 -04:00
Your Name
febaaaacc7 idk even anymore 2026-08-07 01:39:47 -04:00
Your Name
a8b469876d level editor improvements 2026-08-07 01:01:49 -04:00
Your Name
3ceb07f4d1 various fixes 2026-08-07 00:31:45 -04:00
0x81c
973a8ab25b basic serialization worx*
*
2015-03-17 01:59:14 -04:00