Gamemode Vote in the Lobby (#46)

* ;^)

* auto gamemode vote in the lobby
This commit is contained in:
TalkingCactus
2016-09-18 13:05:23 -04:00
committed by GitHub
parent 24c10b1b7f
commit a715f6299b
3 changed files with 20 additions and 1 deletions

View File

@@ -36,6 +36,7 @@ var/datum/subsystem/ticker/ticker
var/triai = 0 //Global holder for Triumvirate
var/tipped = 0 //Did we broadcast the tip of the day yet?
var/modevoted = 0 //Have we sent a vote for the gamemode?
var/selected_tip // What will be the tip of the day?
var/timeLeft = 1200 //pregame timer
@@ -88,6 +89,10 @@ var/datum/subsystem/ticker/ticker
return
timeLeft -= wait
if(timeLeft <= 1200 && !modevoted) //Vote for the round type
send_gamemode_vote()
modevoted = TRUE
if(timeLeft <= 300 && !tipped)
send_tip_of_the_round()
tipped = TRUE
@@ -545,3 +550,7 @@ var/datum/subsystem/ticker/ticker
queued_players = ticker.queued_players
cinematic = ticker.cinematic
maprotatechecked = ticker.maprotatechecked
/datum/subsystem/ticker/proc/send_gamemode_vote(var/)
SSvote.initiate_vote("roundtype","server")

View File

@@ -121,6 +121,13 @@ var/datum/subsystem/vote/SSvote
restart = 1
else
master_mode = .
if("roundtype")
if (ticker && ticker.mode)
return message_admins("A vote has tried to change the gamemode, but the game has already started. Aborting.")
master_mode = .
log_admin("Mode has been voted for and switched to: [master_mode].")
world << "<span class='adminnotice'><b>The mode is now: [master_mode]</b></span>"
world.save_mode(master_mode)
if(restart)
var/active_admins = 0
for(var/client/C in admins)
@@ -169,6 +176,9 @@ var/datum/subsystem/vote/SSvote
choices.Add("Restart Round","Continue Playing")
if("gamemode")
choices.Add(config.votable_modes)
if("roundtype")
choices.Add("secret")
choices.Add("extended")
if("custom")
question = stripped_input(usr,"What is the vote for?")
if(!question)