diff --git a/src/game/g_main.pas b/src/game/g_main.pas
index 20419ecc0299fcfc9ae8b4fc982f8f77ff58bcf1..a9c986e32885092b38454fa39251b12f85931b66 100644 (file)
--- a/src/game/g_main.pas
+++ b/src/game/g_main.pas
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;