Describe the shared lists with drag and drop, + and x

- Pixel Art, Tilemaps and Vector Art explain reordering by drag and
  drop, the eye, the + in the list header and the x per row.
- Development carries the new check total 1266.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
adminandClaude Opus 5 committed 2026-09-21 21:18:27 +02:00
1 parent d63d71d1a1
commit 0698fea522
4 files changed
+29 -20

No files matched your search

+1 -1
@@ -13,7 +13,7 @@ npm run check # typecheck + lint + format:check + tests, the gate CI runs
npm run build # writes dist/ and regenerates index.html
./build.sh # the same under `set -o pipefail`, for callers that pipe the output
php tools/make-user.php <name> <password> # an account; every tool signs in (see Accounts)
node tools/seed-e2e.mjs && node tools/e2e.mjs # 1259 editor checks, screenshots in /tmp/gm-e2e-*.png
node tools/seed-e2e.mjs && node tools/e2e.mjs # 1266 editor checks, screenshots in /tmp/gm-e2e-*.png
GM_STEPS=20 node tools/e2e.mjs # or 1-12, or 6,20 — a subset while working on one step
./e2e.sh start [GM_STEPS] # the same run detached, see below
./e2e.sh status # live progress, or the last run's result
+12 -9
@@ -64,12 +64,14 @@ replacing a colour) are [#200](https://git.nockal.com/meleki/game-maker/issues/2
## Layers
The **LAYERS** list shows the top layer first. A click on a row picks the layer the tools paint on.
The **LAYERS** list shows the top layer first. Each row pictures its layer alone on the frame being
painted. A click on a row picks the layer the tools paint on.
- **Add** puts a new empty layer above the picked one, **Delete** takes the picked one out. The last
layer stays.
- **Up** and **Down** move it in the drawing order.
- **Hide** leaves it out of the picture, **Show** puts it back. A hidden layer cannot be painted on.
- **Dragging** a row moves the layer to another place in the drawing order.
- The **eye** next to a row's ✕ leaves the layer out of the picture, and puts it back. A
hidden layer cannot be painted on.
- The **+** in the list's header puts a new empty layer above the picked one. The **✕** at the right
end of a row takes that layer out. The last layer has no ✕, it stays.
- **Name** and **Opacity** (0 to 1) edit the picked layer.
- **Merge down** lays the layer onto the one below it, on every frame, and takes it out. Every pixel
it paints covers the one below. Its opacity is **not** kept: an indexed picture has no colour
@@ -77,11 +79,12 @@ The **LAYERS** list shows the top layer first. A click on a row picks the layer
## Frames
Every frame has the same layers. The **FRAMES** list shows them in order; a click picks the frame
the canvas shows and paints on.
Every frame has the same layers. The **FRAMES** list shows them in order, first on top, each row with
a picture of the whole frame; a click picks the frame the canvas shows and paints on.
- **Add** puts an empty frame after the picked one, **Duplicate** a copy of it. The last frame stays.
- **Earlier** and **Later** move the picked frame.
- **Dragging** a row moves the frame to another place in the order.
- The **+** in the list's header puts an empty frame after the picked one, **Duplicate** below the
list a copy of it. The **✕** on a row takes that frame out. The last frame has no ✕, it stays.
- **Onion skin** (in the **VIEW** block) shows the frames before and after the picked one faintly
under it.
- **PREVIEW** plays the frames in a loop. **Frames per second** belongs to the preview only; how long
+9 -7
@@ -99,12 +99,13 @@ itself. Without one chosen, painting says so instead of quietly doing nothing.
## Layers
A tilemap holds one or more layers, listed under **LAYERS**, the topmost row being the one drawn
last (over the others). Per row there is:
last (over the others). The list works like every layer list of the editor (the shapes of
[Vector Art](Vector-Art), the layers and frames of [Pixel Art](Pixel-Art)):
- a **switch**: a layer switched off keeps its cells and is left out of the drawing, in the editor
and in the game alike;
- its **name**, which is also how it is chosen to paint on;
- **↑ / ↓** to move it in the drawing order and **✕** to remove it, cells and all.
- a click on a row chooses the layer to paint on;
- **dragging** a row moves the layer to another place in the drawing order, one undo step;
- the **eye** next to the ✕ switches the layer off and on: a layer switched off keeps its cells
and is left out of the drawing, in the editor and in the game alike.
Below the list (#138):
@@ -124,8 +125,9 @@ Below the list (#138):
paint, not a property of the map: it touches neither the project nor the game, a map that is not
selected is always drawn whole, and the layer switches above stay as they are.
**Add layer** appends one on top. A tilemap always keeps at least one layer — there has to be
something to paint on.
The **+** in the header of the list appends a layer on top. The **✕** at the right end of a row
removes that layer, cells and all. A tilemap always keeps at least one layer — there has to be
something to paint on, so the last one has no ✕.
## In the running game
+7 -3
@@ -105,14 +105,18 @@ Selecting a shape — in the tab or in the list — gives it its own rows:
**topmost row is drawn last**, the way a layer list reads.
Ctrl or Shift on a row adds its shape to the selection, as Ctrl+click does in the tab.
- **Forward / To front / Backward / To back** move the selected shape through that order, and a row
can be **dragged** to another place in the list.
can be **dragged** to another place in the list, also one that was not selected before: it is
selected when the mouse button goes up. The **✕** at the right end of a row removes that shape.
The same list is used for the layers of a [tilemap](Tilemaps) and the layers and frames of
[pixel art](Pixel-Art); there its header also has a **+** that adds one. Shapes have none, they
are drawn with the Pen.
- **COMBINE** holds the four boolean operations, see [below](#combining-shapes).
- **VECTOR SHAPE** carries Name, **Fill type** with what that type needs, Opacity and an
**Outline** switch; with the switch on, **Line type** and Line width appear. The switch *gives and
takes away* the outline rather than hiding it, and a width of zero is no outline, so the row stops
at 0.1.
- **Delete shape** and **Add shape** sit below; with several shapes selected it reads **Delete
shapes** and removes them all.
- **Add shape** sits below. With several shapes selected, **Delete shapes** next to it removes
them all.
With several shapes selected, the order buttons and the style rows are those of the one clicked
last. A dragged colour or opacity slider is one undo step, not one per pixel of the drag. Selecting