summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/initfile.cc
diff options
context:
space:
mode:
Diffstat (limited to 'crawl-ref/source/initfile.cc')
-rw-r--r--crawl-ref/source/initfile.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/crawl-ref/source/initfile.cc b/crawl-ref/source/initfile.cc
index 61e05b9aa6..1846407171 100644
--- a/crawl-ref/source/initfile.cc
+++ b/crawl-ref/source/initfile.cc
@@ -612,6 +612,7 @@ void game_options::reset_options()
dump_item_origin_price = -1;
drop_mode = DM_SINGLE;
+ pickup_mode = -1;
flush_input[ FLUSH_ON_FAILURE ] = true;
flush_input[ FLUSH_BEFORE_COMMAND ] = false;
@@ -1919,6 +1920,15 @@ void game_options::read_option_line(const std::string &str, bool runscript)
else
drop_mode = DM_SINGLE;
}
+ else if (key == "pickup_mode")
+ {
+ if (field.find("multi") != std::string::npos)
+ pickup_mode = 0;
+ else if (field.find("single") != std::string::npos)
+ pickup_mode = -1;
+ else
+ pickup_mode = read_bool_or_number(field, pickup_mode, "auto:");
+ }
// Catch-all else, copies option into map
else
{