diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 4b04dd0046..710c072e94 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -1,4 +1,4 @@ -//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:33 +#define SAVE_RESET -1 var/list/preferences_datums = list() @@ -199,7 +199,8 @@ datum/preferences dat += "Slot - " dat += "Load slot - " dat += "Save slot - " - dat += "Reload slot" + dat += "Reload slot - " + dat += "Reset slot" else dat += "Please create an account to save your preferences." @@ -248,6 +249,11 @@ datum/preferences load_character(text2num(href_list["changeslot"])) sanitize_preferences() close_load_dialog(usr) + else if(href_list["resetslot"]) + if("No" == alert("This will reset the current slot. Continue?", "Reset current slot?", "No", "Yes")) + return 0 + load_character(SAVE_RESET) + sanitize_preferences() else return 0 diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index d3fad955d6..22eab43de5 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -67,11 +67,20 @@ if(!S) return 0 S.cd = "/" if(!slot) slot = default_slot - slot = sanitize_integer(slot, 1, config.character_slots, initial(default_slot)) - if(slot != default_slot) - default_slot = slot - S["default_slot"] << slot - S.cd = "/character[slot]" + if(slot != SAVE_RESET) // SAVE_RESET will reset the slot as though it does not exist, but keep the current slot for saving purposes. + slot = sanitize_integer(slot, 1, config.character_slots, initial(default_slot)) + if(slot != default_slot) + default_slot = slot + S["default_slot"] << slot + else + S["default_slot"] << default_slot + + if(slot != SAVE_RESET) + S.cd = "/character[slot]" + player_setup.load_character(S) + else + player_setup.load_character(S) + S.cd = "/character[default_slot]" player_setup.load_character(S) return 1 diff --git a/html/changelogs/PsiOmegaDelta - IAmKind.yml b/html/changelogs/PsiOmegaDelta - IAmKind.yml new file mode 100644 index 0000000000..a0e7423b73 --- /dev/null +++ b/html/changelogs/PsiOmegaDelta - IAmKind.yml @@ -0,0 +1,36 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: PsiOmegaDelta + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Resetting a character slot now requires confirmation." diff --git a/html/changelogs/zuhayr-saves.yml b/html/changelogs/zuhayr-saves.yml new file mode 100644 index 0000000000..c20096f478 --- /dev/null +++ b/html/changelogs/zuhayr-saves.yml @@ -0,0 +1,36 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Zuhayr + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Added a reset slot button to chargen." \ No newline at end of file