summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/vehicle_base.h4
-rw-r--r--src/window.cpp4
2 files changed, 8 insertions, 0 deletions
diff --git a/src/vehicle_base.h b/src/vehicle_base.h
index 59584da78..f923c2d79 100644
--- a/src/vehicle_base.h
+++ b/src/vehicle_base.h
@@ -23,6 +23,7 @@
#include "transport_type.h"
#include "group_type.h"
#include "base_consist.h"
+#include "network/network.h"
#include <list>
#include <map>
@@ -1072,6 +1073,9 @@ struct SpecializedVehicle : public Vehicle {
*/
inline void UpdateViewport(bool force_update, bool update_delta)
{
+ /* Skip updating sprites on dedicated servers without screen */
+ if (_network_dedicated) return;
+
/* Explicitly choose method to call to prevent vtable dereference -
* it gives ~3% runtime improvements in games with many vehicles */
if (update_delta) ((T *)this)->T::UpdateDeltaXY(this->direction);
diff --git a/src/window.cpp b/src/window.cpp
index 1fce1f3a8..bc92416b6 100644
--- a/src/window.cpp
+++ b/src/window.cpp
@@ -3031,6 +3031,10 @@ void UpdateWindows()
w->ProcessHighlightedInvalidations();
}
+ /* Skip the actual drawing on dedicated servers without screen.
+ * But still empty the invalidation queues above. */
+ if (_network_dedicated) return;
+
static int we4_timer = 0;
int t = we4_timer + 1;