From 6e238db846ecd8619c97c9eb890aa4537cb96d05 Mon Sep 17 00:00:00 2001 From: Markus Mittendrein Date: Sat, 4 Jun 2016 16:06:51 +0200 Subject: Check for running afk admin timer in afk admin command --- src/crsm.cpp | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) (limited to 'src') 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; -- cgit v1.2.3-54-g00ecf