mirror of https://github.com/OpenTTD/OpenTTD
(svn r7250) -Codechange: Shuffle sprite loading and character width caching around a bit. This reduces the number of times the sprites are loaded from 5 to 2, just for the intro game.
parent
8d175ccb13
commit
c079c83eb6
|
@ -252,18 +252,19 @@ void GenerateWorld(int mode, uint size_x, uint size_y)
|
|||
/* Make sure everything is done via OWNER_NONE */
|
||||
_current_player = OWNER_NONE;
|
||||
|
||||
/* Load the right landscape stuff */
|
||||
GfxLoadSprites();
|
||||
LoadStringWidthTable();
|
||||
|
||||
InitializeGame(IG_DATE_RESET, _gw.size_x, _gw.size_y);
|
||||
PrepareGenerateWorldProgress();
|
||||
|
||||
/* Re-init the windowing system */
|
||||
ResetWindowSystem();
|
||||
LoadStringWidthTable();
|
||||
|
||||
/* Create toolbars */
|
||||
SetupColorsAndInitialWindow();
|
||||
|
||||
/* Load the right landscape stuff */
|
||||
GfxLoadSprites();
|
||||
if (_network_dedicated ||
|
||||
(_gw.thread = OTTDCreateThread(&_GenerateWorld, NULL)) == NULL) {
|
||||
DEBUG(misc, 1) ("[Sl] Cannot create savegame thread, reverting to single-threaded mode...");
|
||||
|
|
3
gfx.c
3
gfx.c
|
@ -1613,6 +1613,9 @@ void LoadStringWidthTable(void)
|
|||
{
|
||||
uint i;
|
||||
|
||||
/* Initialize the unicode to sprite mapping table */
|
||||
InitializeUnicodeGlyphMap();
|
||||
|
||||
/* Normal font */
|
||||
for (i = 0; i != 224; i++) {
|
||||
_stringwidth_table[FS_NORMAL][i] = GetGlyphWidth(FS_NORMAL, i + 32);
|
||||
|
|
|
@ -1659,6 +1659,7 @@ static int32 ClickChangeClimateCheat(int32 p1, int32 p2)
|
|||
if (p1 == 4) p1 = 0;
|
||||
_opt.landscape = p1;
|
||||
GfxLoadSprites();
|
||||
LoadStringWidthTable();
|
||||
MarkWholeScreenDirty();
|
||||
return _opt.landscape;
|
||||
}
|
||||
|
|
13
openttd.c
13
openttd.c
|
@ -281,9 +281,6 @@ static void LoadIntroGame(void)
|
|||
CLRBITS(_display_opt, DO_TRANS_BUILDINGS); // don't make buildings transparent in intro
|
||||
_opt_ptr = &_opt_newgame;
|
||||
|
||||
GfxLoadSprites();
|
||||
LoadStringWidthTable();
|
||||
|
||||
// Setup main window
|
||||
ResetWindowSystem();
|
||||
SetupColorsAndInitialWindow();
|
||||
|
@ -439,11 +436,6 @@ int ttd_main(int argc, char *argv[])
|
|||
// This must be done early, since functions use the InvalidateWindow* calls
|
||||
InitWindowSystem();
|
||||
|
||||
GfxLoadSprites();
|
||||
/* Initialize the unicode to sprite mapping table */
|
||||
InitializeUnicodeGlyphMap();
|
||||
LoadStringWidthTable();
|
||||
|
||||
DEBUG(driver, 1) ("Loading drivers...");
|
||||
LoadDriver(SOUND_DRIVER, _ini_sounddriver);
|
||||
LoadDriver(MUSIC_DRIVER, _ini_musicdriver);
|
||||
|
@ -463,7 +455,6 @@ int ttd_main(int argc, char *argv[])
|
|||
/* Make sure _patches is filled with _patches_newgame if we switch to a game directly */
|
||||
if (_switch_mode != SM_NONE) {
|
||||
_opt = _opt_newgame;
|
||||
GfxLoadSprites();
|
||||
UpdatePatches();
|
||||
}
|
||||
|
||||
|
@ -655,11 +646,8 @@ static void StartScenario(void)
|
|||
return;
|
||||
}
|
||||
|
||||
GfxLoadSprites();
|
||||
|
||||
// Reinitialize windows
|
||||
ResetWindowSystem();
|
||||
LoadStringWidthTable();
|
||||
|
||||
SetupColorsAndInitialWindow();
|
||||
|
||||
|
@ -1157,6 +1145,7 @@ bool AfterLoadGame(void)
|
|||
|
||||
// Load the sprites
|
||||
GfxLoadSprites();
|
||||
LoadStringWidthTable();
|
||||
|
||||
/* Connect front and rear engines of multiheaded trains and converts
|
||||
* subtype to the new format */
|
||||
|
|
Loading…
Reference in New Issue