summaryrefslogtreecommitdiff
path: root/src/network/network_server.cpp
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2010-10-17 17:36:23 +0000
committerrubidium <rubidium@openttd.org>2010-10-17 17:36:23 +0000
commitb4ce7fad7f79f100ef1aae22f9f79aa0b6a7d743 (patch)
tree6c14df857e98a982add7813a800c121297510642 /src/network/network_server.cpp
parent7cc8a363d84fe013406703ae324bf5c22383fb2a (diff)
downloadopenttd-b4ce7fad7f79f100ef1aae22f9f79aa0b6a7d743.tar.xz
(svn r20967) -Add: infrastructure to send information to remote admins at specific intervals (dihedral)
Diffstat (limited to 'src/network/network_server.cpp')
-rw-r--r--src/network/network_server.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/network/network_server.cpp b/src/network/network_server.cpp
index ab2bd1632..ca446dfed 100644
--- a/src/network/network_server.cpp
+++ b/src/network/network_server.cpp
@@ -15,6 +15,7 @@
#include "../debug.h"
#include "../strings_func.h"
#include "../date_func.h"
+#include "network_admin.h"
#include "network_server.h"
#include "network_udp.h"
#include "network.h"
@@ -1702,14 +1703,26 @@ void NetworkServer_Tick(bool send_frame)
NetworkUDPAdvertise();
}
+/** Yearly "callback". Called whenever the year changes. */
void NetworkServerYearlyLoop()
{
NetworkCheckRestartMap();
+ NetworkAdminUpdate(ADMIN_FREQUENCY_ANUALLY);
}
+/** Monthly "callback". Called whenever the month changes. */
void NetworkServerMonthlyLoop()
{
NetworkAutoCleanCompanies();
+ NetworkAdminUpdate(ADMIN_FREQUENCY_MONTHLY);
+ if ((_cur_month % 3) == 0) NetworkAdminUpdate(ADMIN_FREQUENCY_QUARTERLY);
+}
+
+/** Daily "callback". Called whenever the date changes. */
+void NetworkServerDailyLoop()
+{
+ NetworkAdminUpdate(ADMIN_FREQUENCY_DAILY);
+ if ((_date % 7) == 3) NetworkAdminUpdate(ADMIN_FREQUENCY_WEEKLY);
}
const char *GetClientIP(NetworkClientInfo *ci)