aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--builtin/mainmenu/dlg_create_world.lua25
1 files changed, 14 insertions, 11 deletions
diff --git a/builtin/mainmenu/dlg_create_world.lua b/builtin/mainmenu/dlg_create_world.lua
index 380f0654f..13061ee40 100644
--- a/builtin/mainmenu/dlg_create_world.lua
+++ b/builtin/mainmenu/dlg_create_world.lua
@@ -33,18 +33,21 @@ local function create_world_formspec(dialogdata)
end
end
- local gamepath = core.get_game(gameidx).path
- local gameconfig = Settings(gamepath.."/game.conf")
-
- local disallowed_mapgens = (gameconfig:get("disallowed_mapgens") or ""):split()
- for key, value in pairs(disallowed_mapgens) do
- disallowed_mapgens[key] = value:trim()
- end
+ local game_by_gameidx = core.get_game(gameidx)
+ if game_by_gameidx ~= nil then
+ local gamepath = game_by_gameidx.path
+ local gameconfig = Settings(gamepath.."/game.conf")
+
+ local disallowed_mapgens = (gameconfig:get("disallowed_mapgens") or ""):split()
+ for key, value in pairs(disallowed_mapgens) do
+ disallowed_mapgens[key] = value:trim()
+ end
- if disallowed_mapgens then
- for i = #mapgens, 1, -1 do
- if table.indexof(disallowed_mapgens, mapgens[i]) > 0 then
- table.remove(mapgens, i)
+ if disallowed_mapgens then
+ for i = #mapgens, 1, -1 do
+ if table.indexof(disallowed_mapgens, mapgens[i]) > 0 then
+ table.remove(mapgens, i)
+ end
end
end
end