diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index a88bc4a890..854abc56c8 100755 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -484,7 +484,7 @@ SUBSYSTEM_DEF(ticker) SSvote.initiate_vote("dynamic","server",hideresults=FALSE,votesystem=RANKED_CHOICE_VOTING,forced=TRUE) else SSvote.initiate_vote("roundtype","server",hideresults=TRUE,votesystem=PLURALITY_VOTING,forced=TRUE) - SSvote.end_time = SSticker.start_at - 100 + SSvote.end_time = max(SSvote.end_time,SSticker.start_at - 200) to_chat(world, "\nVoting time has been extended to [DisplayTimeText(SSvote.end_time-world.time)].") /datum/controller/subsystem/ticker/Recover() diff --git a/code/controllers/subsystem/vote.dm b/code/controllers/subsystem/vote.dm index 83364db0de..aa8f7a3045 100644 --- a/code/controllers/subsystem/vote.dm +++ b/code/controllers/subsystem/vote.dm @@ -40,6 +40,14 @@ SUBSYSTEM_DEF(vote) client_popup.set_content(interface(C)) client_popup.open(0) next_pop = world.time+VOTE_COOLDOWN + if(vote_system == RANKED_CHOICE_VOTING) + for(var/client/C in GLOB.clients) + if((C.ckey in voted) && voted[C.ckey].len < choices.len && !(C in voting)) + client_popup = new(C, "vote", "Voting Panel", nwidth=600,nheight=600) + client_popup.set_window_options("can_close=0") + client_popup.set_content(interface(C)) + client_popup.open(0) + /datum/controller/subsystem/vote/proc/reset() @@ -165,6 +173,14 @@ SUBSYSTEM_DEF(vote) log_vote(text) remove_action_buttons() to_chat(world, "\n[text]") + switch(vote_system) + if(APPROVAL_VOTING,PLURALITY_VOTING) + for(var/i=1,i<=choices.len,i++) + SSblackbox.record_feedback("tally","voting",choices[choices[i]],choices[i]) + if(RANKED_CHOICE_VOTING) + for(var/i=1,i<=voted.len,i++) + for(var/j=1,j<=voted[i].len,j++) + SSblackbox.record_feedback("tally","voting",1,"[j]\th: "+choices[choices[j]]) if(obfuscated) //CIT CHANGE - adds obfuscated votes. this messages admins with the vote's true results var/admintext = "Obfuscated results" if(vote_system == RANKED_CHOICE_VOTING) @@ -222,7 +238,7 @@ SUBSYSTEM_DEF(vote) else to_chat(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 . /datum/controller/subsystem/vote/proc/submit_vote(vote) @@ -367,11 +383,14 @@ SUBSYSTEM_DEF(vote) . += "