28 lines
718 B
Lua
28 lines
718 B
Lua
local user_props = file.read_combined_object("config/user-props.toml")
|
|
local names = {}
|
|
for name, _ in pairs(user_props) do
|
|
table.insert(names, name)
|
|
end
|
|
-- remove undefined properties
|
|
for id, blockprops in pairs(block.properties) do
|
|
for propname, value in pairs(blockprops) do
|
|
if propname:find(':') and not table.has(names, propname) then
|
|
print("erase property", propname)
|
|
blockprops[propname] = nil
|
|
end
|
|
end
|
|
end
|
|
|
|
local function make_read_only(t)
|
|
setmetatable(t, {
|
|
__newindex = function()
|
|
error("table is read-only")
|
|
end
|
|
})
|
|
end
|
|
|
|
make_read_only(block.properties)
|
|
for k,v in pairs(block.properties) do
|
|
make_read_only(v)
|
|
end
|