summaryrefslogtreecommitdiffstats
path: root/src/crsm.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/crsm.cpp')
-rw-r--r--src/crsm.cpp27
1 files changed, 17 insertions, 10 deletions
diff --git a/src/crsm.cpp b/src/crsm.cpp
index 1e292fb..400b50f 100644
--- a/src/crsm.cpp
+++ b/src/crsm.cpp
@@ -2319,19 +2319,26 @@ CMD_FUNCTION_IMPL(afkAdmin)
else
{
Session.AfkAdmin = true;
- afkAdminTimer.start();
- if(client.interface != Clonk || Session.Clonk.Admin.empty())
+ if(afkAdminTimer.isActive())
{
- respond(client, "Der Rundenadmin wird nach weiteren " + QString::number(Config.Hosting.AfkAdminTime) + "s Inaktivität freigegeben.\n");
+ respond(client, "Der Rundenadmin hat noch " + QString::number((afkAdminTimer.remainingTime() + 500) / 1000) + "s Zeit um zu reagieren.\n");
}
- writeToServer("/alert\n");
- if(!Session.Clonk.Admin.empty())
- {
- writeToServer(Session.Clonk.Admin.nick + "! Wenn du dich nicht in den nächsten " + QString::number(Config.Hosting.AfkAdminTime) + "s meldest, wird der Rundenadmin freigegeben.\n");
- }
- if(!Session.IRC.Admin.empty())
+ else
{
- respond(Session.IRC.Admin, Session.IRC.Admin.nick + "! Wenn du dich nicht in den nächsten " + QString::number(Config.Hosting.AfkAdminTime) + "s meldest, wird der Rundenadmin freigegeben.\n");
+ afkAdminTimer.start();
+ if(client.interface != Clonk || Session.Clonk.Admin.empty())
+ {
+ respond(client, "Der Rundenadmin wird nach weiteren " + QString::number(Config.Hosting.AfkAdminTime) + "s Inaktivität freigegeben.\n");
+ }
+ writeToServer("/alert\n");
+ if(!Session.Clonk.Admin.empty())
+ {
+ writeToServer(Session.Clonk.Admin.nick + "! Wenn du dich nicht in den nächsten " + QString::number(Config.Hosting.AfkAdminTime) + "s meldest, wird der Rundenadmin freigegeben.\n");
+ }
+ if(!Session.IRC.Admin.empty())
+ {
+ respond(Session.IRC.Admin, Session.IRC.Admin.nick + "! Wenn du dich nicht in den nächsten " + QString::number(Config.Hosting.AfkAdminTime) + "s meldest, wird der Rundenadmin freigegeben.\n");
+ }
}
}
return Success;