-Minetest Lua Mainmenu API Reference 0.4.16
-========================================
+Minetest Lua Mainmenu API Reference 5.1.0
+=========================================
Introduction
-------------
Filesystem:
core.get_builtin_path()
^ returns path to builtin root
-core.get_modpath() (possible in async calls)
-^ returns path to global modpath
-core.get_clientmodpath() (possible in async calls)
-^ returns path to global client-side modpath
-core.get_gamepath() (possible in async calls)
-^ returns path to global gamepath
-core.get_texturepath() (possible in async calls)
-^ returns path to default textures
core.create_dir(absolute_path) (possible in async calls)
^ absolute_path to directory to create (needs to be absolute)
^ returns true/false
^ returns list of available video drivers' settings name and 'friendly' display name
^ e.g. { {name="opengl", friendly_name="OpenGL"}, {name="software", friendly_name="Software Renderer"} }
^ first element of returned list is guaranteed to be the NULL driver
+core.get_mapgen_names([include_hidden=false]) -> table of map generator algorithms
+ registered in the core (possible in async calls)
+core.get_cache_path() -> path of cache
Formspec:
core.update_formspec(formspec)
core.set_clouds(<true/false>)
core.set_topleft_text(text)
core.show_keys_menu()
-core.file_open_dialog(formname,caption)
-^ shows a file open dialog
+core.show_path_select_dialog(formname, caption, is_file_select)
+^ shows a path select dialog
^ formname is base name of dialog response returned in fields
^ -if dialog was accepted "_accepted"
-^^ will be added to fieldname containing the path
+^ will be added to fieldname containing the path
^ -if dialog was canceled "_cancelled"
^ will be added to fieldname value is set to formname itself
+^ if `is_file_select` is `true`, a file and not a folder will be selected
^ returns nil or selected file/folder
core.get_screen_info()
^ returns {
window_height = <current window height>
}
-Games:
-core.get_game(index)
-^ returns {
- id = <id>,
- path = <full path to game>,
- gamemods_path = <path>,
- name = <name of game>,
- menuicon_path = <full path to menuicon>,
- DEPRECATED:
- addon_mods_paths = {[1] = <path>,},
-}
-core.get_games() -> table of all games in upper format (possible in async calls)
-core.get_mapgen_names([include_hidden=false]) -> table of map generator algorithms
- registered in the core (possible in async calls)
+### Content and Packages
+
+Content - an installed mod, modpack, game, or texture pack (txt)
+Package - content which is downloadable from the content db, may or may not be installed.
+
+* core.get_modpath() (possible in async calls)
+ * returns path to global modpath
+* core.get_clientmodpath() (possible in async calls)
+ * returns path to global client-side modpath
+* core.get_gamepath() (possible in async calls)
+ * returns path to global gamepath
+* core.get_texturepath() (possible in async calls)
+ * returns path to default textures
+* core.get_game(index)
+ * returns:
+
+ {
+ id = <id>,
+ path = <full path to game>,
+ gamemods_path = <path>,
+ name = <name of game>,
+ menuicon_path = <full path to menuicon>,
+ author = "author",
+ DEPRECATED:
+ addon_mods_paths = {[1] = <path>,},
+ }
+
+* core.get_games() -> table of all games in upper format (possible in async calls)
+* core.get_content_info(path)
+ * returns
+
+ {
+ name = "name of content",
+ type = "mod" or "modpack" or "game" or "txp",
+ description = "description",
+ author = "author",
+ path = "path/to/content",
+ depends = {"mod", "names"}, -- mods only
+ optional_depends = {"mod", "names"}, -- mods only
+ }
+
Favorites:
core.get_favorites(location) -> list of favorites (possible in async calls)
^ loglevel one of "error", "action", "info", "verbose"
Settings:
-core.setting_set(name, value)
-core.setting_get(name) -> string or nil (possible in async calls)
-core.setting_setbool(name, value)
-core.setting_getbool(name) -> bool or nil (possible in async calls)
-core.setting_save() -> nil, save all settings to config file
+core.settings:set(name, value)
+core.settings:get(name) -> string or nil (possible in async calls)
+core.settings:set_bool(name, value)
+core.settings:get_bool(name) -> bool or nil (possible in async calls)
+core.settings:save() -> nil, save all settings to config file
+
+For a complete list of methods of the Settings object see
+[lua_api.txt](https://github.com/minetest/minetest/blob/master/doc/lua_api.txt)
Worlds:
core.get_worlds() -> list of worlds (possible in async calls)
-No access to global lua variables, don't even try
-Limited set of available functions
e.g. No access to functions modifying menu like core.start,core.close,
- core.file_open_dialog
-
-
-Class reference
-----------------
-Settings: see lua_api.txt
+ core.show_path_select_dialog