-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Scratch pad map panel #3288
Comments
Some more thoughts on interacting with this panel. I fairly often right-click a tile to select it in its tileset, just as a way to quickly scroll to the relevant part of the tileset. For example, I'll right-click a chair to get to the other furniture tiles. I'd like to be able to do this with scratch pad maps as well. However, since a tile may be in multiple maps or even appear multiple times within a single map, and since users may scroll to a particular part of a scratch pad map on purpose, this behaviour isn't always desirable or even predictable. So, I think that selecting and scrolling to the relevant tile(s) in a scratch pad panel should be done only within the already active scratch pad map (should never change scratch pad tabs). If there are multiple instance(s) of some of the selected tiles, any already-selected instances should be prioritised for scrolling. Other than that, the first found instance could be selected. Selecting all instances would also be fine, if it can be done efficiently. It would also be fine if right-clicking tiles only selected tile(s) in the scratch pad panel if there's only a single selected tile and it's in the currently selected scratch pad map. This would still allow right-clicking as a shortcut, but without a lot of complicated logic. It should also be possible to lock the current scroll position in the scratch pad map to prevent unwanted auto-scrolling (see #2860). Switching tabs in this panel should never modify the user's current brush (see #3654). If a user wants to set their brush to the current tile selection in the scratch pad, they can do so by unselecting and reselecting any tile within the panel by ctrl+clicking it, same as they can within the Tilesets view. |
Another potential use for this came up on Discord: As a more compact, visual way to select Terrains. This would be a convenient work-around for the inability to reorder terrains, on top of letting users customise the overall presentation of their terrains. But what would the UI for this be? Having to change a toggle between tile selection and terrain selection modes would be inconvenient, I think. Left-click is reserved for selecting tiles, Tileset-style. Right-click is needed for a menu. Perhaps right-click specifically while a Terrain tool is active could be it? This would be close in behaviour for picking terrains from a regular map. |
Sometimes it is useful to have a custom arrangement of tiles, possibly from multiple tilesets, somewhere quickly accessible. A dedicated "scratch pad" panel that displays a map but only lets you pick tiles from it like from a tileset would be very helpful for this.
The panel itself should work a lot like the Tilesets panel:
Behaviour
Selecting a tile in the scratch pad should behave just like selecting a tile in the Map Editor, including bringing up the tileset of the selected tile(s) in the Tilesets panel, or selecting no tile if the cell is empty.
If a map has multiple layers, the top-most non-empty tile should be selected, if there is one. This would allow users to layer multiple tiles for clarity, but be unambiguous about which tile they'll pick.
The maps can inherit their tile grid display settings from the Map Editor. Using the same settings as the Tilesets Panel is also acceptable, if that's easier to implement.
The maps in the scratch pad should automatically update either immediately upon changes, or when the map file is saved, whichever is more convenient.
Optional: Let users drag a map document tab to the scratch pad panel to add that map to it.
Use scenarios
Objects
The feature as described above would treat Objects as entirely cosmetic and ignore them when selecting tiles.
It could also be cool to have both the default Tile selection mode, and an Object selection mode, toggleable via buttons at the bottom of the panel. In Object mode, you'd be able to select objects and these objects would be automatically copied. However, this would probably encourage blind copypasting instead of using Templates, so it might not be a good addition. Perhaps a separate visual Template Browser panel would be better.
The text was updated successfully, but these errors were encountered: