Skip to content

Commit c3dead7

Browse files
kilbithkwolekr
authored andcommittedJul 10, 2015
Fix remnant bugs on mainmenu
- Stop attempting to start a world when no world's created/selected in server tab - Better world's indexes handling between subgames lists
1 parent 1a1774a commit c3dead7

File tree

2 files changed

+12
-6
lines changed

2 files changed

+12
-6
lines changed
 

Diff for: ‎builtin/mainmenu/tab_server.lua

+6-3
Original file line numberDiff line numberDiff line change
@@ -113,12 +113,12 @@ local function main_button_handler(this, fields, name, tabdata)
113113
world_doubleclick or
114114
fields["key_enter"] then
115115
local selected = core.get_textlist_index("srv_worlds")
116-
if selected ~= nil then
116+
gamedata.selected_world = menudata.worldlist:get_raw_index(selected)
117+
if selected ~= nil and gamedata.selected_world ~= 0 then
117118
gamedata.playername = fields["te_playername"]
118119
gamedata.password = fields["te_passwd"]
119120
gamedata.port = fields["te_serverport"]
120121
gamedata.address = ""
121-
gamedata.selected_world = menudata.worldlist:get_raw_index(selected)
122122

123123
core.setting_set("port",gamedata.port)
124124
if fields["te_serveraddr"] ~= nil then
@@ -133,8 +133,11 @@ local function main_button_handler(this, fields, name, tabdata)
133133
end
134134

135135
core.start()
136-
return true
136+
else
137+
gamedata.errormessage =
138+
fgettext("No world created or selected!")
137139
end
140+
return true
138141
end
139142

140143
if fields["world_create"] ~= nil then

Diff for: ‎builtin/mainmenu/tab_singleplayer.lua

+6-3
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,13 @@ local function singleplayer_refresh_gamebar()
4040
menudata.worldlist:set_filtercriteria(gamemgr.games[j].id)
4141
local index = filterlist.get_current_index(menudata.worldlist,
4242
tonumber(core.setting_get("mainmenu_last_selected_world")))
43-
local selected = core.get_textlist_index("sp_worlds")
4443
if not index or index < 1 then
45-
index = math.min(core.get_textlist_index("sp_worlds"),
46-
#menudata.worldlist:get_list())
44+
local selected = core.get_textlist_index("sp_worlds")
45+
if selected ~= nil and selected < #menudata.worldlist:get_list() then
46+
index = selected
47+
else
48+
index = #menudata.worldlist:get_list()
49+
end
4750
end
4851
menu_worldmt_legacy(index)
4952
return true

0 commit comments

Comments
 (0)