diff --git a/src/game/g_game.pas b/src/game/g_game.pas
index 47251204f2b021a78262a60f265d830d63308bda..b1a10ea8ba434ccaf0394d86b186678309e2ffaa 100644 (file)
--- a/src/game/g_game.pas
+++ b/src/game/g_game.pas
begin
if (NetEvent.kind = ENET_EVENT_TYPE_RECEIVE) then
begin
- if (NetEvent.channelID = NET_CHAN_DOWNLOAD_EX) then
- begin
- // ignore all download packets, they're processed by separate code
- enet_packet_destroy(NetEvent.packet);
- continue;
- end;
Ptr := NetEvent.packet^.data;
if not InMsg.Init(Ptr, NetEvent.packet^.dataLength, True) then
begin
end;
end;
- ProcessLoading(true);
-
+ ProcessLoading(True);
if g_Net_UserRequestExit() then
begin
State := 0;
if NetMode = NET_SERVER then
begin
+ // reset full state flags
+ if NetClients <> nil then
+ for I := 0 to High(NetClients) do
+ NetClients[I].FullUpdateSent := False;
+
MH_SEND_GameEvent(NET_EV_MAPSTART, gGameSettings.GameMode, Map);
// Ìàñòåðñåðâåð
end;
g_ActiveWindow := nil;
-
- ProcessLoading(true);
+ ProcessLoading(True);
end;
procedure g_Game_StepLoading(Value: Integer = -1);
end
else
CurValue := Value;
+
if (ShowCount > LOADING_SHOW_STEP) or (Value > -1) then
begin
ShowCount := 0;
- ProcessLoading();
+ ProcessLoading(False);
end;
end;
end;