diff options
author | Y. Wang <y5nw@protonmail.com> | 2025-05-01 15:38:40 +0000 |
---|---|---|
committer | orwell <orwell@bleipb.de> | 2025-05-05 21:08:24 +0200 |
commit | 0ebb7b79a5c1a919ed81ffd6d38a929bae536718 (patch) | |
tree | baabd28b1d8718edaa316ba97af151a44172c9b6 /advtrains_signals_japan/init.lua | |
parent | d4835199f9fe1a605995e2842bd984a0bbc49ba7 (diff) | |
download | advtrains-0ebb7b79a5c1a919ed81ffd6d38a929bae536718.tar.gz advtrains-0ebb7b79a5c1a919ed81ffd6d38a929bae536718.tar.bz2 advtrains-0ebb7b79a5c1a919ed81ffd6d38a929bae536718.zip |
Fix creation of JP signal models
Diffstat (limited to 'advtrains_signals_japan/init.lua')
-rw-r--r-- | advtrains_signals_japan/init.lua | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/advtrains_signals_japan/init.lua b/advtrains_signals_japan/init.lua index 1140b6b..728a91f 100644 --- a/advtrains_signals_japan/init.lua +++ b/advtrains_signals_japan/init.lua @@ -15,6 +15,19 @@ local light_distant = light_purple local light_off = signal_face_texture do + local model_dir = core.get_modpath("advtrains_signals_japan") .. DIR_DELIM .. "models" + local function add_model(name, content) + local fn = "advtrains_signals_japan_" .. name + if core.features.dynamic_add_media_startup then + core.dynamic_add_media { + filename = fn, + filedata = content, + } + else + core.mkdir(model_dir) + core.safe_file_write(model_dir .. DIR_DELIM .. fn, content) + end + end local model_path_prefix = table.concat({minetest.get_modpath("advtrains_signals_japan"), "models", "advtrains_signals_japan_"}, DIR_DELIM) local function vertex(x, y, z) @@ -122,7 +135,7 @@ do pole_vertices = table.concat(pole_vertices, "\n") pole_objdef = table.concat(pole_objdef, "\n") pole_uv = table.concat(pole_uv, "\n") - minetest.safe_file_write(model_path_prefix .. "pole.obj", table.concat({pole_vertices, pole_uv, pole_objdef}, "\n")) + add_model("pole.obj", table.concat({pole_vertices, pole_uv, pole_objdef}, "\n")) -- generate signals for lightcount = 5, 6 do @@ -231,7 +244,7 @@ do face_vertices = table.concat(face_vertices, "\n") face_uv = table.concat(face_uv, "\n") face_objdef = table.concat(face_objdef, "\n") - minetest.safe_file_write(model_path_prefix .. lightcount .. "_" .. rotname .. ".obj", table.concat({ + add_model(lightcount .. "_" .. rotname .. ".obj", table.concat({ pole_vertices, face_vertices, table.concat(light_vertices, "\n"), |