--
-- Initialize some very basic things
-print = core.debug
+function core.debug(...) core.log(table.concat({...}, "\t")) end
+if core.print then
+ local core_print = core.print
+ -- Override native print and use
+ -- terminal if that's turned on
+ function print(...)
+ core_print(table.concat({...}, "\t"))
+ end
+ core.print = nil -- don't pollute our namespace
+end
math.randomseed(os.time())
os.setlocale("C", "numeric")
minetest = core
local commonpath = scriptdir.."common"..DIR_DELIM
local asyncpath = scriptdir.."async"..DIR_DELIM
+dofile(commonpath.."strict.lua")
dofile(commonpath.."serialize.lua")
dofile(commonpath.."misc_helpers.lua")
if INIT == "game" then
dofile(gamepath.."init.lua")
elseif INIT == "mainmenu" then
- dofile(core.get_mainmenu_path()..DIR_DELIM.."init.lua")
+ local mainmenuscript = core.setting_get("main_menu_script")
+ if mainmenuscript ~= nil and mainmenuscript ~= "" then
+ dofile(mainmenuscript)
+ else
+ dofile(core.get_mainmenu_path()..DIR_DELIM.."init.lua")
+ end
elseif INIT == "async" then
dofile(asyncpath.."init.lua")
else