]> git.lizzy.rs Git - minetest.git/blobdiff - builtin/game/voxelarea.lua
Add VoxelArea() constructor (#12886)
[minetest.git] / builtin / game / voxelarea.lua
index 62f07d928f9021eb9717c015d62ec43b4ce20d29..a9195213bdbd3ea74a8b7e385027d2a3de7831e8 100644 (file)
@@ -8,7 +8,10 @@ VoxelArea = {
        zstride = 0,
 }
 
-function VoxelArea:new(o)
+local class_metatable = {}
+setmetatable(VoxelArea, class_metatable)
+
+local function new(self, o)
        o = o or {}
        setmetatable(o, self)
        self.__index = self
@@ -20,6 +23,12 @@ function VoxelArea:new(o)
        return o
 end
 
+function class_metatable:__call(MinEdge, MaxEdge)
+       return new(self, {MinEdge = MinEdge, MaxEdge = MaxEdge})
+end
+
+VoxelArea.new = new
+
 function VoxelArea:getExtent()
        local MaxEdge, MinEdge = self.MaxEdge, self.MinEdge
        return vector_new(