diff --git a/code/controllers/subsystem/vote.dm b/code/controllers/subsystem/vote.dm
index dffe4c3dac..32a85a306b 100644
--- a/code/controllers/subsystem/vote.dm
+++ b/code/controllers/subsystem/vote.dm
@@ -366,9 +366,6 @@ SUBSYSTEM_DEF(vote)
C.player_details.player_actions += V
V.Grant(C.mob)
generated_actions += V
- if((vote_type in SSpersistence.saved_votes) && (C.ckey in SSpersistence.saved_votes[vote_type]))
- voted[C.ckey] = SSpersistence.saved_votes[vote_type][C.ckey]
- saved += C.ckey
if(forced)
var/datum/browser/popup = new(C, "vote", "Voting Panel",nwidth=600,nheight=700)
popup.set_window_options("can_close=0")
@@ -432,6 +429,8 @@ SUBSYSTEM_DEF(vote)
. += "(Save vote)"
else
. += "(Saved!)"
+ if((mode in SSpersistence.saved_votes) && (C.ckey in SSpersistence.saved_votes[mode]))
+ . += "(Load vote from save)"
. += "(Reset votes)"
if(admin)
. += "(Cancel Vote) "
@@ -499,6 +498,10 @@ SUBSYSTEM_DEF(vote)
SSpersistence.saved_votes[mode] = list()
SSpersistence.saved_votes[mode][usr.ckey] = voted[usr.ckey]
saved += usr.ckey
+ if("load")
+ if((mode in SSpersistence.saved_votes) && (usr.ckey in SSpersistence.saved_votes[mode]))
+ voted[usr.ckey] = SSpersistence.saved_votes[mode][usr.ckey]
+ saved += usr.ckey
else
submit_vote(round(text2num(href_list["vote"])))
usr.vote()