// Copyright (c) Wojciech Figat. All rights reserved. #pragma once #include "Engine/Core/Types/BaseTypes.h" /// /// Build game header flags. /// enum class GameHeaderFlags { None = 0x0, ShowSplashScreen = 0x01, }; DECLARE_ENUM_OPERATORS(GameHeaderFlags); #if !USE_EDITOR #include "ApplicationBase.h" #include "Engine/Platform/CreateWindowSettings.h" /// /// The main game class. /// /// class GameBase : public ApplicationBase { public: /// /// Determines whether game is showing splash screen. /// /// True if splash screen is in use, otherwise false. static bool IsShowingSplashScreen(); /// /// Initializes the main window settings. /// /// The settings. static void InitMainWindowSettings(CreateWindowSettings& settings); public: // [ApplicationBase] static int32 LoadProduct(); static Window* CreateMainWindow(); static bool Init(); static void BeforeRun(); static void BeforeExit(); }; #endif