diff options
author | Anthony Zhang <azhang9@gmail.com> | 2013-03-20 17:31:00 -0400 |
---|---|---|
committer | Anthony Zhang <azhang9@gmail.com> | 2013-03-20 17:31:00 -0400 |
commit | 65c218c3e2b6fbac804af6b04b633574a64e5d9c (patch) | |
tree | eae5aabdda35bd330972c6fa8d1ba7e4494a693c /worldedit | |
parent | d1828affffb332dceb0665753a4b6c1cb151df5b (diff) |
Dynamic module loading - you can now delete any file in the worldedit mod except init.lua, and the relevant functionality will simply not be included.
Diffstat (limited to 'worldedit')
-rw-r--r-- | worldedit/compatibility.lua | 2 | ||||
-rw-r--r-- | worldedit/init.lua | 19 |
2 files changed, 15 insertions, 6 deletions
diff --git a/worldedit/compatibility.lua b/worldedit/compatibility.lua index 3b9c889..0ea2333 100644 --- a/worldedit/compatibility.lua +++ b/worldedit/compatibility.lua @@ -1,3 +1,5 @@ +worldedit = worldedit or {}
+
worldedit.allocate_old = worldedit.allocate
worldedit.deserialize_old = worldedit.deserialize
worldedit.metasave = function(pos1, pos2, filename)
diff --git a/worldedit/init.lua b/worldedit/init.lua index aaf70ae..f3eb9bb 100644 --- a/worldedit/init.lua +++ b/worldedit/init.lua @@ -1,7 +1,14 @@ local path = minetest.get_modpath("worldedit")
-dofile(path .. "/manipulations.lua")
-dofile(path .. "/primitives.lua")
-dofile(path .. "/visualization.lua")
-dofile(path .. "/serialization.lua")
-dofile(path .. "/code.lua")
-dofile(path .. "/compatibility.lua")
\ No newline at end of file +
+local loadmodule = function(path)
+ return pcall(function()
+ dofile(path)
+ end)
+end
+
+loadmodule(path .. "/manipulations.lua")
+loadmodule(path .. "/primitives.lua")
+loadmodule(path .. "/visualization.lua")
+loadmodule(path .. "/serialization.lua")
+loadmodule(path .. "/code.lua")
+loadmodule(path .. "/compatibility.lua")
\ No newline at end of file |