2019-08-14 04:24:04 -07:00
|
|
|
voxelizer={}
|
|
|
|
minetest.mkdir(minetest.get_worldpath().."/media") -- Create media dir
|
2020-04-17 04:16:16 -07:00
|
|
|
local os_execute_base = os.execute or (minetest.request_insecure_environment() or
|
2019-10-31 13:53:57 -07:00
|
|
|
error("Please add voxelizer to the trusted mods in settings, or disable it. See the Readme for details.")).os.execute
|
2020-06-01 11:00:58 -07:00
|
|
|
local function os_execute(command, ...)
|
2020-04-17 04:16:16 -07:00
|
|
|
local args = {}
|
|
|
|
for i, a in pairs{...} do
|
|
|
|
args[i] = table.concat(modlib.table.map(modlib.text.split(a, "'"), function(p) return "'"..p.."'" end), [["'"]])
|
|
|
|
end
|
2020-06-01 11:00:58 -07:00
|
|
|
return os_execute_base(command.." "..table.concat(args, " "))
|
2020-04-17 04:16:16 -07:00
|
|
|
end
|
2020-02-29 03:55:17 -08:00
|
|
|
modlib.mod.extend("voxelizer", "conf") -- Load JSON configuration stored in worldpath
|
|
|
|
modlib.mod.extend("voxelizer", "vector") -- Own vector lib, operating on lists
|
|
|
|
modlib.mod.extend("voxelizer", "closest_color") -- Closest color finder, uses linear search / k-d tree depending on number of colors
|
|
|
|
modlib.mod.extend("voxelizer", "texture_reader") -- Texture reader, reads textures, uses Java program
|
2019-10-31 13:53:57 -07:00
|
|
|
voxelizer.set_os_execute(os_execute) -- Passing insecure os.execute while keeping it local
|
2020-02-29 03:55:17 -08:00
|
|
|
modlib.mod.extend("voxelizer", "dithering") -- Error diffusion dithering
|
|
|
|
modlib.mod.extend("voxelizer", "obj_reader") -- OBJ reader, reads simple OBJ models
|
|
|
|
modlib.mod.extend("voxelizer", "node_map_reader") -- Node map reader, reads minetestmapper-colors.txt like files
|
|
|
|
modlib.mod.extend("voxelizer", "main") -- Main : Actual API for placing of models using VoxelManip
|
|
|
|
modlib.mod.extend("voxelizer", "chatcommands") -- Chatcommands for making use of the API
|
2019-09-10 07:24:37 -07:00
|
|
|
voxelizer.set_os_execute(os_execute) -- Passing insecure os.execute while keeping it local
|
2019-08-14 04:24:04 -07:00
|
|
|
|
|
|
|
-- Tests : Only uncomment if you actually want to test something !
|
|
|
|
--[[minetest.register_on_mods_loaded(function()
|
2020-02-29 03:55:17 -08:00
|
|
|
modlib.mod.extend("voxelizer", "test")
|
2019-08-14 04:24:04 -07:00
|
|
|
end)]]
|