Fix bone-attached entities (#10015)
[oweals/minetest.git] / builtin / game / features.lua
1 -- Minetest: builtin/features.lua
2
3 core.features = {
4         glasslike_framed = true,
5         nodebox_as_selectionbox = true,
6         get_all_craft_recipes_works = true,
7         use_texture_alpha = true,
8         no_legacy_abms = true,
9         texture_names_parens = true,
10         area_store_custom_ids = true,
11         add_entity_with_staticdata = true,
12         no_chat_message_prediction = true,
13         object_use_texture_alpha = true,
14         object_independent_selectionbox = true,
15         httpfetch_binary_data = true,
16         formspec_version_element = true,
17         area_store_persistent_ids = true,
18         pathfinder_works = true,
19         object_step_has_moveresult = true,
20 }
21
22 function core.has_feature(arg)
23         if type(arg) == "table" then
24                 local missing_features = {}
25                 local result = true
26                 for ftr in pairs(arg) do
27                         if not core.features[ftr] then
28                                 missing_features[ftr] = true
29                                 result = false
30                         end
31                 end
32                 return result, missing_features
33         elseif type(arg) == "string" then
34                 if not core.features[arg] then
35                         return false, {[arg]=true}
36                 end
37                 return true, {}
38         end
39 end