summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--crawl-ref/source/maps.cc10
1 files changed, 9 insertions, 1 deletions
diff --git a/crawl-ref/source/maps.cc b/crawl-ref/source/maps.cc
index 912780d62d..e4f598dff6 100644
--- a/crawl-ref/source/maps.cc
+++ b/crawl-ref/source/maps.cc
@@ -742,13 +742,21 @@ static weighted_map_names mg_find_random_vaults(
}
}
- return (wms);
+ return (wms);
+}
+
+static bool weighted_map_more_likely(
+ const weighted_map_name &a,
+ const weighted_map_name &b)
+{
+ return (a.second > b.second);
}
static void mg_report_random_vaults(
FILE *outf, const level_id &place, bool wantmini)
{
weighted_map_names wms = mg_find_random_vaults(place, wantmini);
+ std::sort(wms.begin(), wms.end(), weighted_map_more_likely);
int weightsum = 0;
for (int i = 0, size = wms.size(); i < size; ++i)
weightsum += wms[i].second;