Bomberman Multiplayer
Authoritative multiplayer networking layer for Bomberman.
Loading...
Searching...
No Matches
MenuScene.h
1#ifndef _BOMBERMAN_SCENES_MENU_SCENE_H_
2#define _BOMBERMAN_SCENES_MENU_SCENE_H_
3
4#include <SDL.h>
5#include <memory>
6
7#include "Entities/Music.h"
8#include "Entities/Text.h"
9#include "Scenes/Scene.h"
10
11namespace bomberman
12{
17 enum class MenuItem
18 {
19 None,
20 Start,
21 Online,
22 Exit,
23 Last
24 };
29 class MenuScene : public Scene
30 {
31 public:
37 MenuScene(Game* game);
42 virtual void onEnter() override;
47 virtual void onExit() override;
53 virtual void onEvent(const SDL_Event& event) override;
54
55 private:
60 void onMenuItemSelect();
65 void onMenuItemPress();
66
67 std::shared_ptr<Text> startText = nullptr; // menu start
68 std::shared_ptr<Text> onlineText = nullptr; // menu online
69 std::shared_ptr<Text> exitText = nullptr; // menu exit
70 std::shared_ptr<Music> menuMusic = nullptr; // menu music
71 MenuItem currentSelectedMenu = MenuItem::Start; // current selected menu
72
73 // const colors for menu selection
74 const SDL_Color colorStandard = {255, 255, 255, 255};
75 const SDL_Color colorSelected = {66, 134, 244, 255};
76 };
77} // namespace bomberman
78
79#endif // _BOMBERMAN_SCENES_MENU_SCENE_H_
Definition Game.h:23
Menu Scene.
Definition MenuScene.h:30
virtual void onEnter() override
Called when scene was activated.
Definition MenuScene.cpp:99
virtual void onEvent(const SDL_Event &event) override
Trigger on SDL2 event if scene is active.
Definition MenuScene.cpp:109
virtual void onExit() override
Called when scene was deactivated.
Definition MenuScene.cpp:104
Scene base class.
Definition Scene.h:17