62 lines
1.4 KiB
Lua
62 lines
1.4 KiB
Lua
-- . air
|
|
-- 0 solid
|
|
-- - placeholder tile
|
|
-- v spike
|
|
|
|
levels = {[[
|
|
----------------------------
|
|
-00000000000000000000000000-
|
|
-0........................0-
|
|
-0........................0-
|
|
-0........................0-
|
|
-0........................0-
|
|
-0........................0-
|
|
-0........................0-
|
|
-0........................0-
|
|
-0........................00
|
|
-0.........................-
|
|
-0.........................-
|
|
-0.........................-
|
|
-0.......................000
|
|
-0.......................00-
|
|
-00000000000000000000000000-
|
|
----------------------------
|
|
]],
|
|
[[
|
|
----------------------------
|
|
-00000000000000000000000000-
|
|
-00000000000000000000000000-
|
|
-000000000000000000000000000
|
|
-00000000000...............-
|
|
-0000000000................-
|
|
-0000000000....0000000000000
|
|
-0000000000.....00000000000-
|
|
-00000000..........00000000-
|
|
000000.............00000000-
|
|
-..........-.00000000000000-
|
|
-..........0000000000000000-
|
|
-.......0000000000000000000-
|
|
000000000000000000000000000-
|
|
-00000000000000000000000000-
|
|
-00000000000000000000000000-
|
|
----------------------------
|
|
]],
|
|
}
|
|
|
|
to_write = ""
|
|
|
|
--remove all "\n" from level strings
|
|
for i, v in ipairs(levels) do
|
|
v = string.gsub(v, "\n", "")
|
|
to_write = to_write.." case "..(i-1)..":\n memcpy(level, \""..v.."\", "..#v..");\n break;\n"
|
|
end
|
|
|
|
--finish and write
|
|
to_write = [[#include "levels.h"
|
|
#include <gint/std/string.h>
|
|
void set_level(int level_id, char *level) {
|
|
switch (level_id)
|
|
{
|
|
]]..to_write.." }\n}\n"
|
|
io.write(to_write)
|