From d05cc357ae9ef7fb3f7f9a3cab0557e035199989 Mon Sep 17 00:00:00 2001 From: Lee Salzman Date: Sat, 26 Jan 2013 02:15:14 +0200 Subject: [PATCH] lockmaprotation option --- server-init.cfg | 3 +++ src/fpsgame/server.cpp | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/server-init.cfg b/server-init.cfg index 3cc2cf4..9a1b67c 100644 --- a/server-init.cfg +++ b/server-init.cfg @@ -50,6 +50,9 @@ updatemaster 1 // restrictpausegame 1 // whether or not to allow players to vote on maps not in the rotation +// when 1 requires master +// when 2 requires admin +// when 0 allows any votes (default) // lockmaprotation 0 ffamaps = [ diff --git a/src/fpsgame/server.cpp b/src/fpsgame/server.cpp index 78dd526..2f6d92b 100644 --- a/src/fpsgame/server.cpp +++ b/src/fpsgame/server.cpp @@ -452,7 +452,7 @@ namespace server vector maprotations; int curmaprotation = 0; - VAR(lockmaprotation, 0, 0, 1); + VAR(lockmaprotation, 0, 0, 2); void maprotationreset() { @@ -2065,7 +2065,7 @@ namespace server if(idx < 0) return; map = maprotations[idx].map; } - if(lockmaprotation && !ci->privilege && !ci->local && findmaprotation(reqmode, map) < 0) + if(lockmaprotation && !ci->local && ci->privilege < (lockmaprotation > 1 ? PRIV_ADMIN : PRIV_MASTER) && findmaprotation(reqmode, map) < 0) { sendf(sender, 1, "ris", N_SERVMSG, "This server has locked the map rotation."); return;