summaryrefslogtreecommitdiff
path: root/network.c
diff options
context:
space:
mode:
authorludde <ludde@openttd.org>2005-07-29 21:55:49 +0000
committerludde <ludde@openttd.org>2005-07-29 21:55:49 +0000
commit228d439c5c13cbb63ce083962d7631e6b6e701e9 (patch)
treee54247689fb0e4dc3a6c923797c3f345649582a2 /network.c
parente91cb150a4f0edbf810490886a4734f5bc308160 (diff)
downloadopenttd-228d439c5c13cbb63ce083962d7631e6b6e701e9.tar.xz
(svn r2755) Fix: Fix a desync issue with autoreplace
Diffstat (limited to 'network.c')
-rw-r--r--network.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/network.c b/network.c
index 6998ff1a7..a16d95b1c 100644
--- a/network.c
+++ b/network.c
@@ -1205,8 +1205,15 @@ void NetworkGameLoop(void)
if (!NetworkReceive()) return;
if (_network_server) {
+ bool send_frame = false;
+
// We first increase the _frame_counter
_frame_counter++;
+ // Update max-frame-counter
+ if (_frame_counter > _frame_counter_max) {
+ _frame_counter_max = _frame_counter + _network_frame_freq;
+ send_frame = true;
+ }
NetworkHandleLocalQueue();
@@ -1218,7 +1225,7 @@ void NetworkGameLoop(void)
_sync_seed_2 = _random_seeds[0][1];
#endif
- NetworkServer_Tick();
+ NetworkServer_Tick(send_frame);
} else {
// Client