|
OpenTTD Source
14.0-beta3
|
Go to the source code of this file.
Functions | |
| void | AskExitGame () |
| void | AskExitToGameMenu () |
| int | openttd_main (int argc, char *argv[]) |
| Main entry point for this lovely game. More... | |
| void | StateGameLoop () |
| State controlling game loop. More... | |
| void | HandleExitGameRequest () |
| void | SwitchToMode (SwitchMode new_mode) |
| bool | RequestNewGRFScan (struct NewGRFScanCallback *callback=nullptr) |
| Request a new NewGRF scan. More... | |
| void | GenerateSavegameId () |
| Generate an unique savegame ID. | |
| void | OpenBrowser (const std::string &url) |
| void | ChangeAutosaveFrequency (bool reset) |
| Reset the interval of the autosave. More... | |
Variables | |
| GameMode | _game_mode |
| SwitchMode | _switch_mode |
| The next mainloop command. | |
| std::chrono::steady_clock::time_point | _switch_mode_time |
| The time when the switch mode was requested. | |
| std::atomic< bool > | _exit_game |
| bool | _save_config |
| PauseMode | _pause_mode |
| The current pause mode. | |
Some generic types.
Definition in file openttd.h.
| enum DisplayOptions |
Display Options.
| enum PauseMode : byte |
Modes of pausing we've got.
| enum SwitchMode |
Mode which defines what mode we're switching to.
| Enumerator | |
|---|---|
| SM_NEWGAME | New Game --> 'Random game'. |
| SM_RESTARTGAME | Restart --> 'Random game' with current settings. |
| SM_RELOADGAME | Reload the savegame / scenario / heightmap you started the game with. |
| SM_EDITOR | Switch to scenario editor. |
| SM_LOAD_GAME | Load game, Play Scenario. |
| SM_MENU | Switch to game intro menu. |
| SM_SAVE_GAME | Save game. |
| SM_SAVE_HEIGHTMAP | Save heightmap. |
| SM_GENRANDLAND | Generate random land within scenario editor. |
| SM_LOAD_SCENARIO | Load scenario from scenario editor. |
| SM_START_HEIGHTMAP | Load a heightmap and start a new game from it. |
| SM_LOAD_HEIGHTMAP | Load heightmap from scenario editor. |
| SM_RESTART_HEIGHTMAP | Load a heightmap and start a new game from it with current settings. |
| SM_JOIN_GAME | Join a network game. |
| void ChangeAutosaveFrequency | ( | bool | reset | ) |
Reset the interval of the autosave.
If reset is not set, this does not set the elapsed time on the timer, so if the interval is smaller, it might result in an autosave being done immediately.
| reset | Whether to reset the timer back to zero, or to continue. |
Definition at line 1533 of file openttd.cpp.
References _autosave_interval, _settings_client, TimerGameRealtime::AUTOSAVE, GUISettings::autosave_interval, and ClientSettings::gui.
| int openttd_main | ( | int | argc, |
| char * | argv[] | ||
| ) |
Main entry point for this lovely game.
| argc | The number of arguments passed to this game. |
| argv | The values of the arguments. |
Definition at line 518 of file openttd.cpp.
| bool RequestNewGRFScan | ( | NewGRFScanCallback * | callback | ) |
Request a new NewGRF scan.
This will be executed on the next game-tick. This is mostly needed to ensure NewGRF scans (which are blocking) are done in the game-thread, and not in the draw-thread (which most often triggers this request).
| callback | Optional callback to call when NewGRF scan is completed. |
Definition at line 1546 of file openttd.cpp.
| void StateGameLoop | ( | ) |
State controlling game loop.
The state must not be changed from anywhere but here. That check is enforced in DoCommand.
Definition at line 1427 of file openttd.cpp.
References _network_server, _networking, _pause_mode, Game::GameLoop(), HasModalProgress(), PerformanceMeasurer::Paused(), PFE_GAMELOOP, PFE_GL_AIRCRAFT, PFE_GL_ECONOMY, PFE_GL_LANDSCAPE, PFE_GL_ROADVEHS, PFE_GL_SHIPS, PFE_GL_TRAINS, PM_UNPAUSED, Layouter::ReduceLineCache(), PerformanceAccumulator::Reset(), StateGameLoop_LinkGraphPauseControl(), and UpdateLandscapingLimits().
Referenced by ClientNetworkGameSocketHandler::GameLoop().