settings.lua 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. ---@meta
  2. ---Setting-related
  3. ------------------
  4. -- Returns a `Settings` object.
  5. ---@param filename string
  6. ---@return mt.Settings
  7. function Settings(filename) end
  8. -- The settings have the format `key = value`.
  9. ---@class mt.Settings
  10. local settings = {}
  11. -- Returns a value.
  12. ---@param key string
  13. ---@return string
  14. function settings:get(key) end
  15. -- Returns a boolean.
  16. --
  17. -- * `default` is the value returned if `key` is not found.
  18. -- * Returns `nil` if `key` is not found and `default` not specified.
  19. ---@param key string
  20. ---@param default? boolean
  21. ---@return boolean?
  22. function settings:get_bool(key, default) end
  23. -- Returns a `NoiseParams` table.
  24. ---@param key string
  25. ---@return mt.NoiseParams
  26. function settings:get_np_group(key) end
  27. -- * Returns `{flag = true/false, ...}` according to the set flags.
  28. -- * Is currently limited to mapgen flags `mg_flags` and mapgen-specific flags like `mgv5_spflags`.
  29. ---@param key string
  30. ---@return table
  31. function settings:get_flags(key) end
  32. -- * Setting names can't contain whitespace or any of `="{}#`.
  33. -- * Setting values can't contain the sequence `\n"""`.
  34. -- * Setting names starting with "secure." can't be set on the main settings object (`minetest.settings`).
  35. ---@param key string
  36. ---@param value any
  37. function settings:set(key, value) end
  38. -- See `set()`.
  39. ---@param key string
  40. ---@param value boolean
  41. function settings:set_bool(key, value) end
  42. -- Set a `NoiseParams` table.
  43. ---@param key string
  44. ---@param value mt.NoiseParams
  45. function settings:set_np_group(key, value) end
  46. -- Returns a boolean (`true` for success).
  47. ---@param key string
  48. ---@return boolean
  49. function settings:remove(key) end
  50. -- Returns `{key1,...}`.
  51. ---@return table
  52. function settings:get_names() end
  53. -- Writes changes to file.
  54. --
  55. -- Returns a boolean (`true` for success).
  56. ---@return boolean
  57. function settings:write() end
  58. -- Returns `{[key1]=value1,...}`.
  59. ---@return table
  60. function settings:to_table() end
  61. -- Settings object containing all of the settings from the main config file (`minetest.conf`).
  62. ---@type mt.Settings
  63. minetest.settings = minetest.settings
  64. -- Loads a setting from the main settings and parses it as a position (in the format `(1,2,3)`).
  65. --
  66. -- Returns a position or `nil`.
  67. ---@param name string
  68. ---@return mt.Vector?
  69. function minetest.setting_get_pos(name) end