27#pragma region static_functions
31 return cMainMenuScene;
43#pragma region overriden_functions
47 return std::make_unique<MainMenuScene>(*
this);
53 auto onUpdate(
float dt) ->
void override;
60 auto load(
const Stream& stream) ->
void override;
61 auto save(
Stream& stream)
const ->
void override;
69#pragma region MainMenuScene_functions
73#pragma region messaging_functions
90#pragma region member_variables
94#pragma region helper_functions
98#pragma region static_variables
sys::Json Stream
Definition AudioObject.h:20
The base class for components, holding all of their shared All components should inherit from this.
nlohmann::json json
Definition Json.cpp:19
ComponentTypeEnum
This enum lists out every type of component we have.
Definition Component.h:39
Component(ComponentTypeEnum type, const char *typeName)
Definition Component.cpp:72
GameObject(std::string typeName, gobj::Type parentType, gobj::Type type)
constructor for gameobject.
Definition GameObject.cpp:24
Definition MainMenuScene.h:25
friend auto from_json(const json &j, MainMenuScene &n) -> void
Definition MainMenuScene.cpp:88
~MainMenuScene() override=default
auto quitButtonPressed(const Message *message) -> Message
Definition MainMenuScene.cpp:195
auto onEnterEngine() -> void override
hook that is called when a GameObject enters the Engine tree.
Definition MainMenuScene.cpp:66
static auto getEnum() -> ComponentTypeEnum
Definition MainMenuScene.h:29
auto optionsButtonPressed(const Message *message) -> Message
Definition MainMenuScene.cpp:179
auto onRender() -> void override
called every frame after update has been called for every object.
Definition MainMenuScene.cpp:62
friend auto to_json(json &j, const MainMenuScene &n) -> void
Definition MainMenuScene.cpp:81
auto creditsButtonPressed(const Message *message) -> Message
Definition MainMenuScene.cpp:171
auto save(Stream &stream) const -> void override
Implementations will load the state of a GameObject to a th::Json object.
Definition MainMenuScene.cpp:76
auto playerCountSceneButton4Pressed(const Message *message) -> Message
Definition MainMenuScene.cpp:236
auto componentShowMenu() -> void override
Definition MainMenuScene.h:50
auto operator=(const MainMenuScene &) -> MainMenuScene &=default
auto howToPlayButtonPressed(const Message *message) -> Message
Definition MainMenuScene.cpp:187
static auto bindLuaTypes(sol::state &lua) -> void
Definition MainMenuScene.h:28
auto playerCountSceneButton2Pressed(const Message *message) -> Message
Definition MainMenuScene.cpp:214
auto onUpdate(float dt) -> void override
called once every frame.
Definition MainMenuScene.cpp:57
auto startButtonPressed(const Message *message) -> Message
Definition MainMenuScene.cpp:157
auto operator=(MainMenuScene &&other) noexcept -> MainMenuScene &=default
auto playerCountSceneButton1Pressed(const Message *message) -> Message
Definition MainMenuScene.cpp:203
auto clone() const -> std::unique_ptr< GameObject > override
makes a copy a GameObject even if it's held polymorphically
Definition MainMenuScene.h:45
auto load(const Stream &stream) -> void override
Implementations will load the state of a GameObject from a th::Json Object.
Definition MainMenuScene.cpp:71
auto linkMessages() -> void
Definition MainMenuScene.cpp:96
auto endWindow() -> void override
currently unused, but intended to but was assumed to be necessary for a proper ImGui editor
Definition MainMenuScene.h:55
auto playerCountSceneButton3Pressed(const Message *message) -> Message
Definition MainMenuScene.cpp:225
MainMenuScene()
Definition MainMenuScene.cpp:36