levels = {[[ 0000000000 0........0 0........0 0........0 0........0 0........0 0........0 0s.......0 0........0 0000000000 ]] } 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 level = \""..v.."\";\n break;" end --finish and write to_write = [[#include "levels.h" void get_level(unsigned char level_id, char level[]) { switch (level_id) { ]]..to_write.."\n }\n}\n" io.write(to_write)