openttd.cpp File Reference

Functions related to starting OpenTTD. More...

#include "stdafx.h"
#include "variables.h"
#include "openttd.h"
#include "blitter/factory.hpp"
#include "sound/sound_driver.hpp"
#include "music/music_driver.hpp"
#include "video/video_driver.hpp"
#include "fontcache.h"
#include "gfxinit.h"
#include "gui.h"
#include "mixer.h"
#include "sound_func.h"
#include "window_func.h"
#include "saveload/saveload.h"
#include "landscape.h"
#include "company_func.h"
#include "command_func.h"
#include "news_func.h"
#include "fileio_func.h"
#include "fios.h"
#include "aircraft.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 "functions.h"
#include "elrail_func.h"
#include "rev.h"
#include "highscore.h"
#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 ()
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)
 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 ShowScreenshotResult (bool b)
static void MakeNewGameDone ()
static void MakeNewGame (bool from_heightmap)
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


Detailed Description

Functions related to starting OpenTTD.

Definition in file openttd.cpp.


Function Documentation

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 1114 of file openttd.cpp.

References _settings_client, AUTOSAVE_DIR, buf, GenerateDefaultSaveName(), ClientSettings::gui, INVALID_STRING_ID, GUISettings::keep_all_autosave, lastof, GUISettings::max_num_autosaves, SaveOrLoad(), SL_OK, and strecat().

Company* DoStartupNewCompany ( bool  is_ai  ) 

Create a new company and sets all company variables default values.

Parameters:
is_ai is a ai company?
Returns:
the company struct

Definition at line 425 of file company_cmd.cpp.

void CDECL error ( const char *  s,
  ... 
)

Error handling for fatal non-user errors.

Parameters:
s the string to print.
Note:
Does NEVER return.

Definition at line 103 of file openttd.cpp.

static void ParseResolution ( Dimension res,
const char *  s 
) [static]

Extract the resolution from the given string and store it in the 'res' parameter.

Parameters:
res variable to store the resolution in.
s the string to decompose.

Definition at line 274 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.

Parameters:
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 851 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.

Parameters:
str the text to show.

Definition at line 123 of file openttd.cpp.

References buf, and 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 300 of file openttd.cpp.

References 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 801 of file openttd.cpp.

References _settings_client, _settings_game, _settings_newgame, GUISettings::autorenew, GUISettings::autorenew_money, GUISettings::autorenew_months, CMD_SET_AUTOREPLACE, COMPANY_FIRST, GameSettings::difficulty, DoCommandP(), GetSaveLoadErrorString(), ClientSettings::gui, INVALID_STRING_ID, MarkWholeScreenDirty(), ResetWindowSystem(), SaveOrLoad(), SCENARIO_DIR, SetDParamStr(), SetLocalCompany(), 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 1024 of file openttd.cpp.

References AnimateAnimatedTiles(), CallWindowTickEvent(), ClearStorageChanges(), IsGeneratingWorld(), OWNER_NONE, TrainConsistChanged(), and UpdateAircraftCache().

void CDECL usererror ( const char *  s,
  ... 
)

Error handling for fatal user errors.

Parameters:
s the string to print.
Note:
Does NEVER return.

Definition at line 83 of file openttd.cpp.

References buf, and lengthof.

Referenced by HandleInvalidSpriteRequest(), and InitializeLanguagePacks().


Generated on Sun Mar 15 22:49:56 2009 for openttd by  doxygen 1.5.6