blob: 595922262641cfd1c754f2c413bdc4f38747e09a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
function core.parse_pos(param)
local p = {}
p.x, p.y, p.z = string.match(param, "^([~|%d.-]+)[, ] *([~|%d.-]+)[, ] *([~|%d.-]+)$")
for k, v in pairs(p) do
if p[k] == "~" then
p[k] = 0
else
p[k] = tonumber(v)
end
end
if p.x and p.y and p.z then
return true, p
end
return false, "Invalid position (" .. param .. ")"
end
function core.parse_relative_pos(param)
local success, pos = core.parse_pos(param)
if success then pos = vector.round(vector.add(core.localplayer:get_pos(), pos)) end
return success, pos
end
core.anticheat_protection = minetest.settings:get_bool("anticheat_protection")
|