diff --git a/src/game/Doom2DF.lpr b/src/game/Doom2DF.lpr
index 1e358b9224d6d6a94f33242dc3fca5cbd417fccb..33a069dc79288ea61dd312f8b0742dd285afe121 100644 (file)
--- a/src/game/Doom2DF.lpr
+++ b/src/game/Doom2DF.lpr
{$ENDIF}
{$IFDEF ENABLE_RENDER}
- {$IF DEFINED(USE_OPENGL) OR DEFINED(USE_GLES1) OR DEFINED(USE_GLSTUB)}
- {$I ../shared/vampimg.inc}
- r_animations in 'opengl/r_animations.pas',
- r_console in 'opengl/r_console.pas',
- r_game in 'opengl/r_game.pas',
- {$IFDEF ENABLE_GFX}
- r_gfx in 'opengl/r_gfx.pas',
- {$ENDIF}
- r_graphics in 'opengl/r_graphics.pas',
- r_items in 'opengl/r_items.pas',
- r_map in 'opengl/r_map.pas',
- r_monsters in 'opengl/r_monsters.pas',
- r_netmaster in 'opengl/r_netmaster.pas',
- r_player in 'opengl/r_player.pas',
- r_playermodel in 'opengl/r_playermodel.pas',
- r_render in 'opengl/r_render.pas',
- r_texture in 'opengl/r_texture.pas',
- r_textures in 'opengl/r_textures.pas',
- r_weapons in 'opengl/r_weapons.pas',
- r_window in 'opengl/r_window.pas',
- {$IFDEF ENABLE_TOUCH}
- r_touch in 'opengl/r_touch.pas',
- {$ENDIF}
- {$IFDEF ENABLE_MENU}
- r_gui in 'opengl/r_gui.pas',
- {$ENDIF}
- {$ELSEIF DEFINED(USE_STUBRENDER)}
+ {$IF DEFINED(USE_STUBRENDER)}
r_render in 'renders/stub/r_render.pas',
- {$ELSEIF DEFINED(USE_NEWGL)}
+ {$ELSEIF DEFINED(USE_OPENGL) OR DEFINED(USE_GLES1) OR DEFINED(USE_GLSTUB) OR DEFINED(USE_NEWGL)}
{$I ../shared/vampimg.inc}
r_render in 'renders/opengl/r_render.pas',
r_atlas in 'renders/opengl/r_atlas.pas',
r_fonts in 'renders/opengl/r_fonts.pas',
r_common in 'renders/opengl/r_common.pas',
r_console in 'renders/opengl/r_console.pas',
- r_gui in 'renders/opengl/r_gui.pas',
+ {$IFDEF ENABLE_MENU}
+ r_gui in 'renders/opengl/r_gui.pas',
+ {$ENDIF}
+ r_loadscreen in 'renders/opengl/r_loadscreen.pas',
+ {$IFDEF ENABLE_TOUCH}
+ r_touch in 'renders/opengl/r_touch.pas',
+ {$ENDIF}
+ {$IFDEF ENABLE_HOLMES}
+ r_fui_gfx_gl in 'renders/opengl/r_fui_gfx_gl.pas',
+ r_holmes in 'renders/opengl/r_holmes.pas',
+ {$ENDIF}
{$ELSE}
{$FATAL render driver not selected}
{$ENDIF}
fui_wadread in '../flexui/fui_wadread.pas',
fui_common in '../flexui/fui_common.pas',
- fui_gfx_gl in '../flexui/fui_gfx_gl.pas',
+ fui_gfx in '../flexui/fui_gfx.pas',
fui_events in '../flexui/fui_events.pas',
fui_style in '../flexui/fui_style.pas',
fui_flexlay in '../flexui/fui_flexlay.pas',
if not fuiAddWad('./data/flexui.wad') then fuiAddWad('./flexui.wad');
end;
try
- fuiGfxLoadFont('win8', 'flexui/fonts/win8.fuifont');
- fuiGfxLoadFont('win14', 'flexui/fonts/win14.fuifont');
- fuiGfxLoadFont('win16', 'flexui/fonts/win16.fuifont');
- fuiGfxLoadFont('dos8', 'flexui/fonts/dos8.fuifont');
- fuiGfxLoadFont('msx6', 'flexui/fonts/msx6.fuifont');
+ gxGfxLoadFont('win8', 'flexui/fonts/win8.fuifont');
+ gxGfxLoadFont('win14', 'flexui/fonts/win14.fuifont');
+ gxGfxLoadFont('win16', 'flexui/fonts/win16.fuifont');
+ gxGfxLoadFont('dos8', 'flexui/fonts/dos8.fuifont');
+ gxGfxLoadFont('msx6', 'flexui/fonts/msx6.fuifont');
except on e: Exception do
begin
writeln('ERROR loading FlexUI fonts');
{$ENDIF}
end;
+ procedure ProcessLoading;
+ var update: Boolean;
+ begin
+ {$IFDEF ENABLE_SYSTEM}
+ update := sys_HandleInput() = False;
+ {$ELSE}
+ update := True;
+ {$ENDIF}
+ if update then
+ begin
+ e_SoundUpdate;
+ // TODO: At the moment, I left here only host network processing, because the client code must
+ // handle network events on its own. Otherwise separate network cases that use different calls to
+ // enet_host_service() WILL lose their packets (for example, resource downloading). So they have
+ // to handle everything by themselves. But in general, this MUST be removed completely, since
+ // updating the window should never affect the network. Use single enet_host_service(), period.
+ if NetMode = NET_SERVER then g_Net_Host_Update();
+ end
+ end;
+
procedure Startup;
begin
Randomize;
DebugOptions;
g_Net_InitLowLevel;
// TODO init serverlist
+ {$IFDEF ENABLE_RENDER}
+ r_Render_SetProcessLoadingCallback(@ProcessLoading);
+ {$ENDIF}
+ g_Game_SetLoadingText(Format('Doom 2D: Forever %s', [GAME_VERSION]), 0, False);
+ g_Game_SetLoadingText('', 0, False);
{$IFDEF ENABLE_HOLMES}
InitHolmes;
{$ENDIF}
{$ENDIF}
Time_Old := GetTickCount64();
while not ProcessMessage() do begin end;
+ {$IFDEF ENABLE_RENDER}
+ r_Render_SetProcessLoadingCallback(nil);
+ {$ENDIF}
g_Console_WriteGameConfig;
{$IFDEF ENABLE_MENU}
g_GUI_Destroy;