X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fgame%2Fg_main.pas;h=2d9d7e4eb2df64e2d08e858a4dea80816045716d;hb=681c1fa10d6cc9999d4cd0a284723fa0a8f4dec6;hp=c78c2bf3445b05e611879014aec397b9b80a9336;hpb=5472594f32e33da0c66606ec9eebc8f798ef6b54;p=d2df-sdl.git diff --git a/src/game/g_main.pas b/src/game/g_main.pas index c78c2bf..2d9d7e4 100644 --- a/src/game/g_main.pas +++ b/src/game/g_main.pas @@ -40,7 +40,8 @@ uses e_graphics, e_input, g_game, g_console, g_gui, e_sound, g_options, g_sound, g_player, g_weapons, SysUtils, g_triggers, MAPDEF, g_map, - MAPSTRUCT, g_menu, g_language, g_net, utils; + MAPSTRUCT, g_menu, g_language, g_net, + utils, conbuf, envvars; var charbuff: Array [0..15] of Char; @@ -62,7 +63,10 @@ begin e_WriteLog('Read config file', MSG_NOTIFY); g_Options_Read(GameDir + '/' + CONFIG_FILENAME); - e_WriteToStdOut := {$IFDEF HEADLESS}True;{$ELSE}False;{$ENDIF} +{$IFDEF HEADLESS} + conbufDumpToStdOut := true; +{$ENDIF} + e_WriteToStdOut := False; //{$IFDEF HEADLESS}True;{$ELSE}False;{$ENDIF} //GetSystemDefaultLCID() @@ -72,7 +76,13 @@ begin g_Language_Set(gLanguage); {$IFDEF HEADLESS} + {$IFDEF USE_SDLMIXER} + sdlflags := SDL_INIT_TIMER or SDL_INIT_AUDIO or $00004000; + // HACK: shit this into env and hope for the best + SetEnvVar('SDL_AUDIODRIVER', 'dummy'); + {$ELSE} sdlflags := SDL_INIT_TIMER or $00004000; + {$ENDIF} {$ELSE} {$IFDEF USE_SDLMIXER} sdlflags := SDL_INIT_EVERYTHING; @@ -104,9 +114,20 @@ end; procedure Init(); var a: Integer; + NoSound: Boolean; begin Randomize; +{$IFDEF HEADLESS} + {$IFDEF USE_SDLMIXER} + NoSound := False; // hope env has set SDL_AUDIODRIVER to dummy + {$ELSE} + NoSound := True; // FMOD backend will sort it out + {$ENDIF} +{$ELSE} + NoSound := False; +{$ENDIF} + e_WriteLog('Init Input', MSG_NOTIFY); e_InitInput(); @@ -118,7 +139,7 @@ begin if (not gNoSound) then begin e_WriteLog('Initializing sound system', MSG_NOTIFY); - e_InitSoundSystem({$IFDEF HEADLESS}True{$ELSE}False{$ENDIF}); + e_InitSoundSystem(NoSound); end; e_WriteLog('Init game', MSG_NOTIFY);