13 #include "SDL_keyboard.h"
14 #include <sigc++/sigc++.h>
43 #if ENABLE_SERVER_AGENT
120 enum class InternalRequests {
125 std::vector<InternalRequests> internalRequests;
129 std::shared_ptr<Lifecycle> m_loader;
130 std::shared_ptr<Lifecycle> m_mainMenu;
131 std::shared_ptr<Lifecycle> m_gameLoop;
135 static void Init(
const std::map<std::string, std::string> &options,
bool no_gui =
false);
178 #if ENABLE_SERVER_AGENT
179 static ServerAgent *serverAgent;
193 amountOfBackgroundStarsDisplayed =
Clamp(pc, 0.0f, 1.0f);
194 bRefreshBackgroundStars =
true;
199 const bool bRet = bRefreshBackgroundStars;
200 bRefreshBackgroundStars =
false;
228 static void HandleKeyDown(SDL_Keysym *key);
231 static const Uint32 SYNC_JOBS_PER_LOOP = 1;
232 static std::unique_ptr<AsyncJobQueue> asyncJobQueue;
233 static std::unique_ptr<SyncJobQueue> syncJobQueue;
235 static bool menuDone;
237 static View *currentView;
243 static float gameTickAlpha;
244 static float frameTime;
248 static bool navTunnelDisplayed;
249 static bool speedLinesDisplayed;
250 static bool hudTrailsDisplayed;
251 static bool bRefreshBackgroundStars;
252 static float amountOfBackgroundStarsDisplayed;
256 static std::unique_ptr<Graphics::Drawables::TexturedQuad> renderQuad;
259 static bool doingMouseGrab;
261 static bool isRecordingVideo;
262 static FILE *ffmpegFile;
268 static App *m_instance;
int cities
Definition: Pi.h:71
int planets
Definition: Pi.h:70
DetailLevel()
Definition: Pi.h:67
Definition: GameConfig.h:9
Definition: RenderState.h:25
Definition: RenderTarget.h:38
Definition: Renderer.h:39
Definition: GuiApplication.h:18
Definition: JobQueue.h:101
Definition: JobQueue.h:250
Definition: LuaConsole.h:15
Definition: LuaNameGen.h:14
Definition: LuaSerializer.h:12
Definition: LuaTimer.h:10
Definition: ModelCache.h:20
Definition: ObjectViewerView.h:15
bool HeadlessMode()
Definition: Pi.h:81
App()
Definition: Pi.h:104
void HandleRequests()
Definition: Pi.cpp:834
void RunJobs()
Definition: Pi.cpp:880
JobSet * GetAsyncStartupQueue() const
Definition: Pi.cpp:472
void SetStartPath(const SystemPath &startPath)
Definition: Pi.cpp:267
void Shutdown() override
Definition: Pi.cpp:408
JobSet * GetCurrentLoadStepQueue() const
Definition: Pi.cpp:477
void PreUpdate() override
Definition: Pi.cpp:862
void Startup() override
Definition: Pi.cpp:315
bool HandleEvent(SDL_Event &ev) override
Definition: Pi.cpp:815
void PostUpdate() override
Definition: Pi.cpp:870
static void SetMouseGrab(bool on)
Definition: Pi.cpp:1224
static bool showDebugInfo
Definition: Pi.h:205
static LuaNameGen * luaNameGen
Definition: Pi.h:176
static JobQueue * GetSyncJobQueue()
Definition: Pi.h:223
static void SetAmountBackgroundStars(const float pc)
Definition: Pi.h:191
static void RequestEndGame()
Definition: Pi.cpp:1183
static View * GetView()
Definition: Pi.h:189
static void StartGame(Game *game)
Definition: Pi.cpp:707
static bool DrawGUI
Definition: Pi.h:225
static GameConfig * config
Definition: Pi.h:220
static std::string GetSaveDir()
Definition: Pi.cpp:1177
static ModelCache * modelCache
Definition: Pi.h:213
static bool AreHudTrailsDisplayed()
Definition: Pi.h:158
static void RequestQuit()
Definition: Pi.cpp:1188
static Sound::MusicPlayer & GetMusicPlayer()
Definition: Pi.h:211
static bool AreSpeedLinesDisplayed()
Definition: Pi.h:156
static float GetMoveSpeedShiftModifier()
Definition: Pi.cpp:1216
static int statNumPatches
Definition: Pi.h:186
static Graphics::Renderer * renderer
Definition: Pi.h:212
static SDLGraphics * sdl
Definition: Pi.h:215
static float GetGameTickAlpha()
Definition: Pi.h:144
static void SetHudTrailsDisplayed(bool state)
Definition: Pi.h:159
static Random rng
Definition: Pi.h:184
static void SetShowDebugInfo(bool enabled)
Definition: Pi.h:148
static Input::Manager * input
Definition: Pi.h:207
static JobQueue * GetAsyncJobQueue()
Definition: Pi.h:222
static Game * game
Definition: Pi.h:217
static void SetNavTunnelDisplayed(bool state)
Definition: Pi.h:155
static void SetSpeedLinesDisplayed(bool state)
Definition: Pi.h:157
static const char SAVE_DIR_NAME[]
Definition: Pi.h:171
static void OnChangeDetailLevel()
Definition: Pi.cpp:1205
static float GetFrameTime()
Definition: Pi.h:143
static Player * player
Definition: Pi.h:208
static LuaSerializer * luaSerializer
Definition: Pi.h:173
static bool IsNavTunnelDisplayed()
Definition: Pi.h:154
static PiGui::Instance * pigui
Definition: Pi.h:182
static float GetAmountBackgroundStars()
Definition: Pi.h:196
static LuaTimer * luaTimer
Definition: Pi.h:174
static TransferPlanner * planner
Definition: Pi.h:209
static bool MustRefreshBackgroundClearFlag()
Definition: Pi.h:197
static void SetGameTickAlpha(float alpha)
Definition: Pi.h:146
static void Init(const std::map< std::string, std::string > &options, bool no_gui=false)
Definition: Pi.cpp:254
static App * GetApp()
Definition: Pi.h:152
static std::unique_ptr< LuaConsole > luaConsole
Definition: Pi.h:210
static DetailLevel detail
Definition: Pi.h:219
static Intro * intro
Definition: Pi.h:214
static void ToggleShowDebugInfo()
Definition: Pi.h:149
static bool DoingMouseGrab()
Definition: Pi.h:162
static int statSceneTris
Definition: Pi.h:185
static void SetView(View *v)
Definition: Pi.cpp:1197
static SceneGraph::Model * FindModel(const std::string &, bool allowPlaceholder=true)
Definition: Pi.cpp:1156
Definition: SoundMusic.h:22
Definition: SystemPath.h:13
Definition: TransferPlanner.h:8
const T & Clamp(const T &x, const T &min, const T &max)
Definition: libs.h:69
Definition: Background.h:13
Definition: LuaBody.cpp:28
Definition: CityOnPlanet.h:23