aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorParamat <paramat@users.noreply.github.com>2019-07-25 20:46:28 +0100
committerGitHub <noreply@github.com>2019-07-25 20:46:28 +0100
commit0cde6fc5525e361a2fd197df2e64895019bbb8ec (patch)
tree24ff6ca38da55df2fd77df57fc5a7a60be3e341e
parent245a31d6b74a5e8ba87d35e9f6e9ebf970b7b3b4 (diff)
downloadminetest-0cde6fc5525e361a2fd197df2e64895019bbb8ec.tar.gz
minetest-0cde6fc5525e361a2fd197df2e64895019bbb8ec.tar.bz2
minetest-0cde6fc5525e361a2fd197df2e64895019bbb8ec.zip
Re-order mapgens in mainmenu and 'all settings' mapgen selection (#8705)
v6 always last to discourage selection. Special mapgens flat, fractal, singlenode, next to last. Of these, singlenode last to discourage selection. Of the remaining, v5 last due to age, v7 first due to being the default.
-rw-r--r--builtin/settingtypes.txt2
-rw-r--r--src/mapgen/mapgen.cpp14
-rw-r--r--src/mapgen/mapgen.h9
3 files changed, 16 insertions, 9 deletions
diff --git a/builtin/settingtypes.txt b/builtin/settingtypes.txt
index 7d546cbd6..931fe26da 100644
--- a/builtin/settingtypes.txt
+++ b/builtin/settingtypes.txt
@@ -1329,7 +1329,7 @@ profiler_print_interval (Engine profiling data print interval) int 0
# Creating a world in the main menu will override this.
# Current mapgens in a highly unstable state:
# - The optional floatlands of v7 (disabled by default).
-mg_name (Mapgen name) enum v7 v5,v6,v7,valleys,carpathian,fractal,flat,singlenode
+mg_name (Mapgen name) enum v7 v7,valleys,carpathian,v5,flat,fractal,singlenode,v6
# Water surface level of the world.
water_level (Water level) int 1
diff --git a/src/mapgen/mapgen.cpp b/src/mapgen/mapgen.cpp
index 67e9d644d..2a6bcf347 100644
--- a/src/mapgen/mapgen.cpp
+++ b/src/mapgen/mapgen.cpp
@@ -81,15 +81,21 @@ struct MapgenDesc {
//// Built-in mapgens
////
+// Order used here defines the order of appearence in mainmenu.
+// v6 always last to discourage selection.
+// Special mapgens flat, fractal, singlenode, next to last. Of these, singlenode
+// last to discourage selection.
+// Of the remaining, v5 last due to age, v7 first due to being the default.
+// The order of 'enum MapgenType' in mapgen.h must match this order.
static MapgenDesc g_reg_mapgens[] = {
- {"v5", true},
- {"v6", true},
{"v7", true},
+ {"valleys", true},
+ {"carpathian", true},
+ {"v5", true},
{"flat", true},
{"fractal", true},
- {"valleys", true},
{"singlenode", true},
- {"carpathian", true},
+ {"v6", true},
};
STATIC_ASSERT(
diff --git a/src/mapgen/mapgen.h b/src/mapgen/mapgen.h
index 4740c424e..b10aa7b9e 100644
--- a/src/mapgen/mapgen.h
+++ b/src/mapgen/mapgen.h
@@ -102,15 +102,16 @@ private:
std::list<GenNotifyEvent> m_notify_events;
};
+// Order must match the order of 'static MapgenDesc g_reg_mapgens[]' in mapgen.cpp
enum MapgenType {
- MAPGEN_V5,
- MAPGEN_V6,
MAPGEN_V7,
+ MAPGEN_VALLEYS,
+ MAPGEN_CARPATHIAN,
+ MAPGEN_V5,
MAPGEN_FLAT,
MAPGEN_FRACTAL,
- MAPGEN_VALLEYS,
MAPGEN_SINGLENODE,
- MAPGEN_CARPATHIAN,
+ MAPGEN_V6,
MAPGEN_INVALID,
};