Commit Graph

4 Commits

Author SHA1 Message Date
Steve Biedermann 232305490d feat(tiled): paint objects with independent brush properties
Test / Clippy and tests (nextest) (push) Failing after 1m33s Details
Windows package / Build Windows package (push) Failing after 41s Details
Add a grid-snapped object brush with configurable per-tile defaults, drag previews, independently editable building properties and one-step stroke undo. Validate placement before changing the map, preserve integer properties and report mouse-callback errors without blocking the editor.

Ship a Tiled project that loads the bundled extensions after the standard trust prompt, ignore local editor sessions and document the painting workflow.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-21 23:36:34 +02:00
Steve Biedermann 402aa12043 fix(tiled): match default layer order and visibility
Place Objects above Ground Items and Triggers, with Floors and Wiring/Plumbing hidden by default. Apply the defaults to exports and newly created conversion layers while preserving existing layer visibility. Verify hidden layers still import gameplay entities.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-21 22:53:24 +02:00
Steve Biedermann 29275c38fc fix(tiled): enforce tmx exports and group objects by category
Normalize export filenames to .tmx and return the actual saved path in command replies. Separate floors, structures, ground items and spawn points into named object layers, with a reserved wiring/plumbing layer. Reuse the same categories in the Tiled converter and preserve undo behavior.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-21 22:20:13 +02:00
Steve Biedermann 8f24528304 feat(world)!: add layered floors and painted-tile conversion
Separate floors from structures for occupancy, rendering, interaction and deconstruction. Convert marked Tiled tiles to stateful gameplay buildings, retain a configurable default terrain tile, and preserve legacy saved terrain without reseeding it.

Bundle a Tiled conversion extension with editable per-object properties, conflict checks and single-step undo. Cover conversion, persistence, collision and gameplay in Rust tests and run the extension tests in CI.

BREAKING CHANGE: network protocol version 6 adds layered building state and default terrain metadata; clients and servers must be upgraded together.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-21 21:40:20 +02:00