diff --git a/code/controllers/subsystem/voting.dm b/code/controllers/subsystem/voting.dm index 677757deeaa..d413809558e 100644 --- a/code/controllers/subsystem/voting.dm +++ b/code/controllers/subsystem/voting.dm @@ -118,10 +118,14 @@ var/datum/subsystem/vote/SSvote if(restart) var/active_admins = 0 for(var/client/C in admins) - if(!C.is_afk()) - active_admins++ - if(active_admins <= 0) + if(!C.is_afk() && check_rights_for(C, R_SERVER)) + active_admins = 1 + break + if(!active_admins) world.Reboot("Restart vote successful.", "end_error", "restart vote") + else + world << "Notice:Restart vote will not restart the server automatically because there are active admins on." + message_admins("A restart vote has passed, but there are active admins on with +server, so it has been canceled. If you wish, you may restart the server.") return .