diff --git a/src/game/g_main.pas b/src/game/g_main.pas
index 20419ecc0299fcfc9ae8b4fc982f8f77ff58bcf1..3da02c2a7969c7b3dcba276fafe2e44dcce79b0e 100644 (file)
--- a/src/game/g_main.pas
+++ b/src/game/g_main.pas
implementation
uses
-{$INCLUDE ../nogl/noGLuses.inc}
{$IFDEF ENABLE_HOLMES}
g_holmes, sdlcarcass, fui_ctls, fui_wadread, fui_style, fui_gfx_gl,
{$ENDIF}
SDL2,
{$ENDIF}
wadreader, e_log, g_window,
- e_graphics, e_input, g_game, g_console, g_gui,
+ r_graphics, e_input, g_game, g_console, g_gui,
e_sound, g_options, g_sound, g_player, g_basic,
g_weapons, SysUtils, g_triggers, MAPDEF, g_map, e_res,
g_menu, g_language, g_net, g_touch, g_system, g_res_downloader,
- conbuf, envvars,
+ conbuf, envvars, r_game,
xparser;
procedure Update ();
begin
+ // remember old mobj positions, prepare for update
+ g_Game_PreUpdate();
+ // server: receive client commands for new frame
+ // client: receive game state changes from server
+ if (NetMode = NET_SERVER) then g_Net_Host_Update()
+ else if (NetMode = NET_CLIENT) then g_Net_Client_Update();
+ // think
g_Game_Update();
+ // server: send any accumulated outgoing data to clients
+ if NetMode = NET_SERVER then g_Net_Flush();
end;
procedure Draw ();
begin
- g_Game_Draw();
+ r_Game_Draw();
end;