Skip to content

Editor Manager

Andrew Hernandez edited this page Jun 4, 2026 · 11 revisions

System Summary

The Editor State is where a user can make any changes to their level, whether placing tiles and objects, adjusting object properties, or exporting the level data.

The EditorManager script controls all of these functions, as it is attached to a Node2D that parents all the constituent nodes and receives signals from the UI components.


Connected Systems

List of connecting/parent/subsystems.

Connecting Systems:

Subsystems:


Related Controls

List of related controls.

Brush:

  • Left-Click: Places the brush's currently selected tile in the clicked cell.
  • Right-Click: Deletes a tile in the clicked cell.
  • Click & Drag: Places/deletes tiles in the hovered cell as long as the player holds.

Box Brush:

  • Click & Drag: Highlights a box-shaped area. (Left-Click for placement, Right-click for deletion)
  • Release Click: Sets the highlighted area and awaits a confirmation input.
  • Spacebar: Confirms and triggers the tile placement/deletion action.

Cursor:

  • Left-Click: Places the brush's currently selected entity in the clicked cell. Access the property menu of entities.
  • Right-Click: Deletes an entity in the clicked cell.
  • Click & Drag: Move any tile or object around to move it on the canvas.

Bugs

List of known bugs. Be descriptive but keep it brief!

  • Bug 1
  • Bug 2

Feature List / Breakdown of Features

  • Tile Grid: The main canvas where tiles can be placed and deleted. Tiles and entities cannot be placed outside of this grid. Dynamically filled on level creation/load based on world size.
  • Preview Tile: A transparent version of the current tile type the user is placing.
    • Preview tiles will ill the entire highlighted area when using the box brush.
    • Appears with a red modulate if on an invalid placement area, following these conditions:
      • Being out of bounds
      • Hovering over an entity with the brush tool
      • Hovering over a tile with the cursor tool
    • Entities are not highlighted when inside a box brush preview area.
  • Tools: Different tools can be selected with different functionalities, the cursor tool allows for the placement of objects, and the brush tool can be used to drag place tiles on the screen.

Future Work / Risks

List and description of upcoming work/risks.

Future Work: 2. Implement exporting the level into a file folder. 3. Implement importing a level from a file folder.

Risks:

  • The Tile types are distinguished by an atlas source ID. This must be in synchronization with the global TileType enumerator. Desync issues may result otherwise.

Miscellaneous Notes

A place for miscellaneous notes pertaining to this system.

  • Note 1
    • Subnote 1
  • Note 2

Clone this wiki locally