#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 |
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 1213 of file openttd.cpp.
References _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().
Company* DoStartupNewCompany | ( | bool | is_ai, | |
CompanyID | company = INVALID_COMPANY | |||
) |
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 AllocateMap(), CheckTrainAttachment(), CmdStartStopVehicle(), DoCommand(), BaseMedia< Tbase_set >::GetSet(), GetStringWithArgs(), MallocError(), 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 298 of file openttd.cpp.
References Dimension::height, max(), ShowInfoF(), and Dimension::width.
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 914 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(), GetKeyboardLayout(), GetSavegameFormat(), ini_load_settings(), 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 323 of file openttd.cpp.
References _cargopacket_pool, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tcache, Tzero >::CleanPool(), GamelogReset(), 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 863 of file openttd.cpp.
References _settings_client, _settings_game, _settings_newgame, ClientSettings::company, COMPANY_FIRST, GameSettings::difficulty, GetSaveLoadErrorString(), INVALID_STRING_ID, MarkWholeScreenDirty(), ResetWindowSystem(), SaveOrLoad(), SCENARIO_DIR, SetDParamStr(), SetLocalCompany(), 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 1088 of file openttd.cpp.
References _pause_mode, Aircraft::acache, AnimateAnimatedTiles(), CallWindowTickEvent(), ClearStorageChanges(), Train::ConsistChanged(), DIAGDIR_NE, DIAGDIR_NW, SpecializedVehicle< Aircraft, VEH_AIRCRAFT >::From(), SpecializedVehicle< Train, VEH_TRAIN >::From(), SpecializedVehicle< RoadVehicle, VEH_ROAD >::From(), RoadStop::GetEntry(), Station::goods, IncreaseDate(), IsGeneratingWorld(), IsStandardRoadStopTile(), SpecializedVehicle< T, Type >::Next(), NUM_CARGO, OWNER_NONE, PM_UNPAUSED, RoadVehicle::rcache, 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(), and InitializeLanguagePacks().