diff --git a/data/game.lua b/data/game.lua index d7f1e41..a381699 100644 --- a/data/game.lua +++ b/data/game.lua @@ -65,9 +65,10 @@ game={ if file then io.output(file) io.write("level="..game.level.."\n") - local hero = actors.search("jailer") + local hero = actors.search(actors.main.name) io.write("x="..hero.x.."\n") io.write("y="..hero.y.."\n") + io.write("o="..hero.o.."\n") io.write("[FLAGS]\n") for k,v in pairs(flags) do io.write(k.."="..v.."\n") @@ -84,15 +85,36 @@ game={ load=function() local i=1 file = io.open(configfolder().."slot"..i..".txt", "r") + local level_name = "" + local new_flags={} + local new_objects={} if file then io.input(file) + local k,v=getkeyval(io.read()) + level_name=v + local k,v=getkeyval(io.read()) actors.main.x=tonumber(v) + local k,v=getkeyval(io.read()) actors.main.y=tonumber(v) + local k,v=getkeyval(io.read()) actors.main.o=v + io.read() -- ignore "[FLAGS]" line + local line = io.read() + while line ~= "[OBJECTS]" do + local k,v=getkeyval(line) + new_flags[k]=v + line = io.read() + end + line = io.read() + while line do + table.insert(new_objects, line) + line = io.read() + end io.close(file) end fade.fadeout() --game.resume() - actors.main.x=10 - actors.main.y=8 - game.init("test") + --actors.main.x=10 + --actors.main.y=8 + + game.init(level_name,new_flags,new_objects) end, update=function() diff --git a/data/main.lua b/data/main.lua index 344e9e8..dbfc803 100644 --- a/data/main.lua +++ b/data/main.lua @@ -50,3 +50,8 @@ function menu_update() color(1) prnt("JAIL'S ADVENTURE 2",10,10) end + +function getkeyval(str) + local c1,c2=string.find(str,"=") + return string.sub(str,1,c1-1), string.sub(str,c2+1) +end