From 9d3d43f3340030db8855ebc394e969f10d00dc30 Mon Sep 17 00:00:00 2001 From: Rui Date: Fri, 13 May 2016 01:38:29 +1000 Subject: [PATCH] Fix #4111 ("Provided world path doesn't exist" if choosing singleplayer on first run") Bug and whitespace error fixed (Zeno) --- builtin/mainmenu/init.lua | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/builtin/mainmenu/init.lua b/builtin/mainmenu/init.lua index 6dd345ff4..7f0c1e386 100644 --- a/builtin/mainmenu/init.lua +++ b/builtin/mainmenu/init.lua @@ -77,13 +77,28 @@ local function init_globals() if PLATFORM == "Android" then local world_list = core.get_worlds() - local world_index = table.indexof(world_list, "singleplayerworld") + local world_index - if world_index == -1 then + local found_singleplayerworld = false + for i, world in ipairs(world_list) do + if world.name == "singleplayerworld" then + found_singleplayerworld = true + world_index = i + break + end + end + + if not found_singleplayerworld then core.create_world("singleplayerworld", 1) world_list = core.get_worlds() - world_index = table.indexof(world_list, "singleplayerworld") + + for i, world in ipairs(world_list) do + if world.name == "singleplayerworld" then + world_index = i + break + end + end end gamedata.worldindex = world_index