Functions related to starting OpenTTD. More...
#include "stdafx.h"#include "variables.h"#include "blitter/factory.hpp"#include "sound/sound_driver.hpp"#include "music/music_driver.hpp"#include "video/video_driver.hpp"#include "fontcache.h"#include "gui.h"#include "sound_func.h"#include "window_func.h"#include "base_media_base.h"#include "saveload/saveload.h"#include "landscape.h"#include "company_func.h"#include "command_func.h"#include "news_func.h"#include "fios.h"#include "aircraft.h"#include "roadveh.h"#include "train.h"#include "console_func.h"#include "screenshot.h"#include "network/network.h"#include "network/network_func.h"#include "signs_base.h"#include "ai/ai.hpp"#include "ai/ai_config.hpp"#include "settings_func.h"#include "genworld.h"#include "group.h"#include "strings_func.h"#include "date_func.h"#include "vehicle_func.h"#include "gamelog.h"#include "cheat_type.h"#include "animated_tile_func.h"#include "roadstop_base.h"#include "functions.h"#include "elrail_func.h"#include "rev.h"#include "highscore.h"#include "thread/thread.h"#include "station_base.h"#include "crashlog.h"#include "company_base.h"#include "engine_base.h"#include "engine_func.h"#include "core/random_func.hpp"#include "newgrf_commons.h"#include "town.h"#include "industry.h"#include <stdarg.h>#include "table/strings.h"Go to the source code of this file.
Data Structures | |
| struct | MyGetOptData |
Functions | |
| void | CallLandscapeTick () |
| void | IncreaseDate () |
| Increases the tick counter, increases date and possibly calls procedures that have to be called daily, monthly or yearly. | |
| void | DoPaletteAnimations () |
| void | MusicLoop () |
| void | ResetMusic () |
| void | ProcessAsyncSaveFinish () |
| Handle async save finishes. | |
| void | CallWindowTickEvent () |
| Dispatch WE_TICK event over all windows. | |
| void | SetDifficultyLevel (int mode, DifficultySettings *gm_opt) |
| Company * | DoStartupNewCompany (bool is_ai, CompanyID company=INVALID_COMPANY) |
| Create a new company and sets all company variables default values. | |
| void | ShowOSErrorBox (const char *buf, bool system) |
| void | InitializeRailGUI () |
| Resets the rail GUI - sets default railtype to build and resets the signal GUI. | |
| void CDECL | usererror (const char *s,...) |
| Error handling for fatal user errors. | |
| void CDECL | error (const char *s,...) |
| Error handling for fatal non-user errors. | |
| void CDECL | ShowInfoF (const char *str,...) |
| Shows some information on the console/a popup box depending on the OS. | |
| static void | ShowHelp () |
| Show the help message when someone passed a wrong parameter. | |
| static int | MyGetOpt (MyGetOptData *md) |
| static void | ParseResolution (Dimension *res, const char *s) |
| Extract the resolution from the given string and store it in the 'res' parameter. | |
| static void | InitializeDynamicVariables () |
| static void | ShutdownGame () |
| Unitializes drivers, frees allocated memory, cleans pools, . | |
| static void | LoadIntroGame () |
| void | MakeNewgameSettingsLive () |
| int | ttd_main (int argc, char *argv[]) |
| void | HandleExitGameRequest () |
| static void | MakeNewGameDone () |
| static void | MakeNewGame (bool from_heightmap, bool reset_settings) |
| static void | MakeNewEditorWorldDone () |
| static void | MakeNewEditorWorld () |
| void | StartupCompanies () |
| void | StartupDisasters () |
| void | StartupEconomy () |
| static void | StartScenario () |
| Start Scenario starts a new game based on a scenario. | |
| bool | SafeSaveOrLoad (const char *filename, int mode, GameMode newgm, Subdirectory subdir) |
| Load the specified savegame but on error do different things. | |
| void | SwitchToMode (SwitchMode new_mode) |
| void | StateGameLoop () |
| State controlling game loop. | |
| static void | DoAutosave () |
| Create an autosave. | |
| void | GameLoop () |
Variables | |
| StringID | _switch_mode_errorstr |
| byte | _savegame_sort_order |
Functions related to starting OpenTTD.
Definition in file openttd.cpp.
| static void DoAutosave | ( | ) | [static] |
Create an autosave.
The default name is "autosave#.sav". However with the setting 'keep_all_autosave' the name defaults to company-name + date
Definition at line 1215 of file openttd.cpp.
References _networking, _settings_client, AUTOSAVE_DIR, GenerateDefaultSaveName(), ClientSettings::gui, INVALID_STRING_ID, GUISettings::keep_all_autosave, lastof, GUISettings::max_num_autosaves, SaveOrLoad(), ShowErrorMessage(), SL_OK, and strecat().
Create a new company and sets all company variables default values.
| is_ai | is a ai company? | |
| company | CompanyID to use for the new company |
Definition at line 461 of file company_cmd.cpp.
| void CDECL error | ( | const char * | s, | |
| ... | ||||
| ) |
Error handling for fatal non-user errors.
| s | the string to print. |
Definition at line 117 of file openttd.cpp.
References lengthof, and CrashLog::SetErrorMessage().
Referenced by AIInfo::AddLabels(), AIInfo::AddSetting(), AllocateMap(), ScriptFileInfo::CheckMethod(), CheckTrainAttachment(), CmdStartStopVehicle(), DoCommand(), BaseMedia< Tbase_set >::GetSet(), GetStringWithArgs(), AIScanner::ImportLibrary(), LoadFreeTypeFont(), MallocError(), NetworkExecuteLocalCommandQueue(), ReallocError(), and strecpy().
| static void ParseResolution | ( | Dimension * | res, | |
| const char * | s | |||
| ) | [static] |
Extract the resolution from the given string and store it in the 'res' parameter.
| res | variable to store the resolution in. | |
| s | the string to decompose. |
Definition at line 297 of file openttd.cpp.
References max(), and ShowInfoF().
| bool SafeSaveOrLoad | ( | const char * | filename, | |
| int | mode, | |||
| GameMode | newgm, | |||
| Subdirectory | subdir | |||
| ) |
Load the specified savegame but on error do different things.
If loading fails due to corrupt savegame, bad version, etc. go back to a previous correct state. In the menu for example load the intro game again.
| filename | file to be loaded | |
| mode | mode of loading, either SL_LOAD or SL_OLD_LOAD | |
| newgm | switch to this mode of loading fails due to some unknown error | |
| subdir | default directory to look for filename, set to 0 if not needed |
Definition at line 916 of file openttd.cpp.
References SaveOrLoad(), SL_OK, and SL_REINIT.
| void CDECL ShowInfoF | ( | const char * | str, | |
| ... | ||||
| ) |
Shows some information on the console/a popup box depending on the OS.
| str | the text to show. |
Definition at line 137 of file openttd.cpp.
References lengthof.
Referenced by CheckExternalFiles(), GetFontByFaceName(), GetKeyboardLayout(), GetSavegameFormat(), ini_load_settings(), LoadFreeTypeFont(), IniFile::LoadFromDisk(), ParseResolution(), and string_to_val().
| static void ShutdownGame | ( | ) | [static] |
Unitializes drivers, frees allocated memory, cleans pools, .
.. Generally, prepares the game for shutting down
Definition at line 322 of file openttd.cpp.
References _cargopacket_pool, _network_available, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tcache, Tzero >::CleanPool(), GamelogReset(), NetworkShutDown(), DriverFactoryBase::ShutdownDrivers(), AI::Uninitialize(), and UnInitWindowSystem().
| static void StartScenario | ( | ) | [static] |
Start Scenario starts a new game based on a scenario.
Eg 'New Game' --> select a preset scenario This starts a scenario based on your current difficulty settings
Definition at line 865 of file openttd.cpp.
References _settings_client, _settings_game, _settings_newgame, ClientSettings::company, COMPANY_FIRST, GameSettings::difficulty, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tcache, Tzero >::PoolItem<&_company_pool >::Get(), GetSaveLoadErrorString(), INVALID_STRING_ID, MarkWholeScreenDirty(), SmallFiosItem::mode, SmallFiosItem::name, ResetWindowSystem(), SaveOrLoad(), SCENARIO_DIR, SetDParamStr(), SetLocalCompany(), Company::settings, ShowErrorMessage(), and SL_OK.
| 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 1090 of file openttd.cpp.
References _pause_mode, Aircraft::acache, AnimateAnimatedTiles(), CallWindowTickEvent(), GoodsEntry::cargo, Vehicle::cargo, ClearStorageChanges(), Train::ConsistChanged(), DIAGDIR_NE, DIAGDIR_NW, Vehicle::First(), SpecializedVehicle< Aircraft, VEH_AIRCRAFT >::From(), SpecializedVehicle< Train, VEH_TRAIN >::From(), SpecializedVehicle< RoadVehicle, VEH_ROAD >::From(), AI::GameLoop(), RoadStop::GetEntry(), Station::goods, IncreaseDate(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tcache, Tzero >::PoolItem< Tpool >::index, CargoList< Tinst >::InvalidateCache(), VehicleCargoList::InvalidateCache(), IsGeneratingWorld(), IsStandardRoadStopTile(), SpecializedVehicle< T, Type >::Next(), NUM_CARGO, OWNER_NONE, PM_UNPAUSED, RoadVehicle::rcache, BaseVehicle::type, UpdateAircraftCache(), VEH_AIRCRAFT, VEH_ROAD, VEH_TRAIN, and RoadStop::xy.
| void CDECL usererror | ( | const char * | s, | |
| ... | ||||
| ) |
Error handling for fatal user errors.
| s | the string to print. |
Definition at line 97 of file openttd.cpp.
References lengthof.
Referenced by HandleInvalidSpriteRequest(), InitializeLanguagePacks(), and DriverFactoryBase::SelectDriver().
1.6.1