summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgpcf <gpcf@gpcf.eu>2024-04-21 18:52:15 +0200
committergpcf <gpcf@gpcf.eu>2024-04-21 18:52:15 +0200
commitd948b1e901b38bf515d39e1a28402a45f91bdef1 (patch)
tree27a320e1150743be795a24c7fb5e73fd3aadf193
downloadadvtrains_gitexporter-d948b1e901b38bf515d39e1a28402a45f91bdef1.tar.gz
advtrains_gitexporter-d948b1e901b38bf515d39e1a28402a45f91bdef1.tar.bz2
advtrains_gitexporter-d948b1e901b38bf515d39e1a28402a45f91bdef1.zip
first working commit
-rw-r--r--.gitmodules3
-rw-r--r--gitexporter.lua44
m---------serialize_lib0
3 files changed, 47 insertions, 0 deletions
diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 0000000..1f4cfc1
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "serialize_lib"]
+ path = serialize_lib
+ url = https://git.bananach.space/serialize_lib.git/
diff --git a/gitexporter.lua b/gitexporter.lua
new file mode 100644
index 0000000..013704b
--- /dev/null
+++ b/gitexporter.lua
@@ -0,0 +1,44 @@
+-- advtrains to git exporter
+
+require "lfs"
+
+minetest = {} -- hack around serializelib
+minetest.get_modpath = function () return "serialize_lib" end
+minetest.log = function() end
+minetest.get_current_modname = function() end
+base_path = "envs"
+
+function ensure_dir(path)
+ if not (lfs.attributes(path, "mode") == "directory") then
+ lfs.mkdir(path)
+ end
+end
+function env_path(env)
+ return base_path.."/"..env
+end
+
+function node_file(env, pos)
+ base = env_path(env).."/nodes"
+ ensure_dir(base)
+ return base.."/"..pos..".lua"
+end
+
+dofile("serialize_lib/init.lua")
+
+tb = serialize_lib.read_table_from_file("advtrains_atlatc.ls")
+
+
+ensure_dir(base_path)
+for env, data in pairs(tb.envs) do
+ pth = env_path(env)
+ ensure_dir(pth)
+ f = io.open(pth.."/init_code.lua", "w")
+ f:write(data.init_code)
+end
+
+for k, j in pairs(tb.active.nodes) do
+ f = io.open(node_file(j.env,k), "w")
+ if f then
+ f:write(j.code or "")
+ end
+end
diff --git a/serialize_lib b/serialize_lib
new file mode 160000
+Subproject d4593491efbcab47efd918d7918b97b4621828b