Skip to content

Main Menu

ishusharma13 edited this page Sep 11, 2024 · 3 revisions

Main Menu Overview

The Main Menu is the primary interface through which players can navigate the game. It serves as the entry point to various game functionalities, such as starting a new game, loading a saved game, accessing settings, viewing help information, and exiting the game.

Key Components

MainMenuDisplay

  • The MainMenuDisplay class is responsible for rendering the main menu UI and handling user interactions. It organizes the layout of buttons and screens within the main menu, including the start, load, minigames, settings, help, and exit options.
  • The class manages the background, applies user settings, and ensures a responsive design across different screen sizes.

Buttons and Interactions

  • Start Button: Initiates a new game session.
  • Load Button: Opens the interface to load a saved game.
  • Minigames Button: Provides access to various in-game minigames.
  • Settings Button: Opens the settings menu where players can adjust game options such as display settings, audio levels, and more.
  • Help Button: Displays a help window with multiple slides, providing guidance on game mechanics like movement, combat, and storyline.
  • Exit Button: Prompts the player with a confirmation dialog to exit the game.

Help Window

  • The help window is an interactive guide featuring multiple slides (MovementSlide, CombatSlide, StorylineSlide, MinigamesSlide, StatsSlide). Each slide offers detailed information about specific aspects of the game, helping players understand controls, objectives, and game mechanics.
  • Navigation between slides is handled through "Previous" and "Next" buttons, with additional support for keyboard navigation.

Settings Menu Integration

  • The settings menu can be accessed via the main menu and allows players to customize game settings. Changes made in the settings menu are applied immediately to ensure a seamless gaming experience.

Responsive Design

  • The main menu is designed to adjust dynamically based on screen resolution and fullscreen/windowed mode, ensuring a consistent experience across different devices and display settings.

UML diagram

UML sprint 2

Clone this wiki locally