aboutsummaryrefslogtreecommitdiff
path: root/builtin
diff options
context:
space:
mode:
Diffstat (limited to 'builtin')
-rw-r--r--builtin/builtin.lua1
-rw-r--r--builtin/chatcommands.lua2
-rw-r--r--builtin/features.lua28
3 files changed, 30 insertions, 1 deletions
diff --git a/builtin/builtin.lua b/builtin/builtin.lua
index bf33cbe6b..f10c6c7cf 100644
--- a/builtin/builtin.lua
+++ b/builtin/builtin.lua
@@ -24,4 +24,5 @@ dofile(minetest.get_modpath("__builtin").."/chatcommands.lua")
dofile(minetest.get_modpath("__builtin").."/static_spawn.lua")
dofile(minetest.get_modpath("__builtin").."/detached_inventory.lua")
dofile(minetest.get_modpath("__builtin").."/falling.lua")
+dofile(minetest.get_modpath("__builtin").."/features.lua")
diff --git a/builtin/chatcommands.lua b/builtin/chatcommands.lua
index 9f14749f4..f548fb01d 100644
--- a/builtin/chatcommands.lua
+++ b/builtin/chatcommands.lua
@@ -675,7 +675,7 @@ minetest.register_chatcommand("msg", {
if found then
if minetest.env:get_player_by_name(sendto) then
minetest.log("action", "PM from "..name.." to "..sendto..": "..message)
- minetest.chat_send_player(sendto, "PM from "..name..": "..message)
+ minetest.chat_send_player(sendto, "PM from "..name..": "..message, false)
minetest.chat_send_player(name, "Message sent")
else
minetest.chat_send_player(name, "The player "..sendto.." is not online")
diff --git a/builtin/features.lua b/builtin/features.lua
new file mode 100644
index 000000000..0eef2519d
--- /dev/null
+++ b/builtin/features.lua
@@ -0,0 +1,28 @@
+-- Minetest: builtin/features.lua
+
+minetest.features = {
+ "glasslike_framed" = true,
+ "nodebox_as_selectionbox" = true,
+ "chat_send_player_param3" = true,
+ "get_all_craft_recipes_works" = true,
+ "use_texture_alpha" = true,
+}
+
+function minetest.has_feature(arg)
+ if type(arg) == "table" then
+ missing_features = {}
+ result = true
+ for ft, _ in pairs(arg) do
+ if not minetest.features[ftr] then
+ missing_features[ftr] = true
+ result = false
+ end
+ end
+ return result, missing_features
+ elseif type(arg) == "string" then
+ if not minetest.features[arg] then
+ return false, {[arg]=true}
+ end
+ return true, {}
+ end
+end