-
Notifications
You must be signed in to change notification settings - Fork 0
Main Menu
This scene holds three distinct but connected parts. The Main Menu Screen, New Level Overlay, and Load Level Overlay.
Connecting Systems:
- None
Root Page. Three main parts. The Levelsmith labs logo is displayed in the top left corner, with the version at the opposite side. The left side houses the three buttons: New Level, Import Level, and Open Level. The two buttons link to New Level Overlay and Load Level Overlay, which are hidden by default. Underneath the buttons is the level list with the displayed level names, favorited levels will appear at the top of the list. Underneath all of those is the exit editor button which closes the application. On the right side is a preview of a level, this will be a screenshot of the level. Underneath that is the name of the level with a button to favorite the level. Underneath all of those, there are three main sections. The left section houses two buttons: Duplicate level and delete level. To the right of that is the metadata of the level, and to the right of that are the buttons to play level and edit level.
Allows you to name a level and set the height and width of the new level. Two buttons to create the level which brings you to the editor state with that level loaded. The cancel button closes the overlay and brings you back to the main menu. There is an error banner that will appear when an error appears.
Allows you to import a level through a file path. A button allows you to open file explorer to select a file to import in. Open brings you to the editor state of the loaded level. Cancel closes the overlay and returns to the main menu. There is an error banner that will appear when an error appears.
Displays a grid list of all the levels currently stored in the user's directory, allowing the user to load any level by double clicking on them. This list will only display valid levels, so if any files are missing, it will not appear in the list.
Name the most important variables, their type, and what their purpose is
-
Buttons= An export group of a series of clickable buttons on the main menu. -
Overlays= An export group of overlays that can be displayed to the user on the main menu. -
New Level= An export group for all the UI related to creating a new level. -
Import Level= An export group for all the UI related to importing an already existing level. -
Duplicate Level= An export group for all the UI related to duplicating an already existing level. -
MetaData= An export group for all the UI labels and textures that get replaced when selecting a level with different metadata. -
exportLevelButton= A button that exports the selected level to the user's given folder. -
levelList= A reference to the VBoxContainer that will contain all the level list items. -
Level List Item= An exported reference to the level list item packed scene, used to instantiate new level list items as needed. -
globalSettingsButton= A button that opens up the global settings menu for the entire tool.
Name of the most important functions, their parameters, and what they do.
-
func ready() -> void: Assigns all proper signals, and does appropriate signals per being web/application build. -
func overlay_show/hide...() -> void: Shows or hides the appropriate overlay to the user. -
func import_level() -> void: Imports and loads the level from the given directory. Fails if the file path given is incorrect to what is expected.
Future Work:
- Add the global theme to the menu
- Replace placeholder preset
Risks: None
- This is the root page and the project will need to open it first when program is run.
Resources
Known Issues
Future Work
Globals
Managers
- Main Menu Manager
- Master Manager
- Camera Manager
- Hotkey Manager
- Import Export Manager
- Audio Manager
- Animation Manager
- PopUp Manager
UI
Managers
- Editor Manager
- Tile Manager
- Entity Manager
- Icon Manager
- Preview Manager
- Tool Manager
- Asset Manager
- Custom Cursor Manager
Tiles & Entities
- Grid Lines
- Preview Line
- Tiles & Entities
- Enemies
- Patrolling Enemy
- Flying Enemy
- Shooting Enemy
- Stationary Enemy
- Moving Platform
- Property Editing
Asset Swapping
UI
Managers
Player