Set server_announce to world.mt and respect modes when changing subgame

This commit is contained in:
Sokomine 2015-07-02 16:26:09 +02:00 committed by est31
parent 8a85e5e58d
commit 0a0378fece
3 changed files with 12 additions and 1 deletions

@ -322,7 +322,7 @@ function menu_worldmt(selected, setting, value)
end end
function menu_worldmt_legacy(selected) function menu_worldmt_legacy(selected)
local modes_names = {"creative_mode", "enable_damage"} local modes_names = {"creative_mode", "enable_damage", "server_announce"}
for _, mode_name in pairs(modes_names) do for _, mode_name in pairs(modes_names) do
local mode_val = menu_worldmt(selected, mode_name) local mode_val = menu_worldmt(selected, mode_name)
if mode_val ~= nil then if mode_val ~= nil then

@ -103,6 +103,9 @@ local function main_button_handler(this, fields, name, tabdata)
if fields["cb_server_announce"] then if fields["cb_server_announce"] then
core.setting_set("server_announce", fields["cb_server_announce"]) core.setting_set("server_announce", fields["cb_server_announce"])
local selected = core.get_textlist_index("srv_worlds")
menu_worldmt(selected, "server_announce", fields["cb_server_announce"])
return true return true
end end

@ -38,6 +38,14 @@ local function singleplayer_refresh_gamebar()
core.set_topleft_text(gamemgr.games[j].name) core.set_topleft_text(gamemgr.games[j].name)
core.setting_set("menu_last_game",gamemgr.games[j].id) core.setting_set("menu_last_game",gamemgr.games[j].id)
menudata.worldlist:set_filtercriteria(gamemgr.games[j].id) menudata.worldlist:set_filtercriteria(gamemgr.games[j].id)
local index = filterlist.get_current_index(menudata.worldlist,
tonumber(core.setting_get("mainmenu_last_selected_world")))
local selected = core.get_textlist_index("sp_worlds")
if not index or index < 1 then
index = math.min(core.get_textlist_index("sp_worlds"),
#menudata.worldlist:get_list())
end
menu_worldmt_legacy(index)
return true return true
end end
end end