savemembers moved to stead, __do_xact hidden

This commit is contained in:
p.kosyh 2011-07-29 05:30:46 +00:00
parent f242abe811
commit 5affea737b
8 changed files with 23 additions and 22 deletions

View file

@ -81,7 +81,7 @@ function disp_obj()
if need then if need then
h:write(stead.string.format("%s = disp_obj();\n", name)); h:write(stead.string.format("%s = disp_obj();\n", name));
end end
savemembers(h, self, name, false); stead.savemembers(h, self, name, false);
end end
} }
return v; return v;

View file

@ -224,7 +224,7 @@ function menu_save(self, name, h, need)
print ("Warning: menu "..name.." can not be saved!"); print ("Warning: menu "..name.." can not be saved!");
return return
end end
savemembers(h, self, name, need); stead.savemembers(h, self, name, need);
end end
MENU_TAG_ID = 10000 MENU_TAG_ID = 10000

View file

@ -310,7 +310,7 @@ function inp(n, info, txt)
h:write(stead.string.format("%s = inp (%q, %q, %q);\n", h:write(stead.string.format("%s = inp (%q, %q, %q);\n",
name, self.nam, self.info, self._txt)) name, self.nam, self.info, self._txt))
end end
savemembers(h, self, name, false); stead.savemembers(h, self, name, false);
end end
return obj(v) return obj(v)
end end

View file

@ -82,7 +82,7 @@ function vobj_save(self, name, h, need)
stead.tostring(dsc), stead.tostring(dsc),
stead.tostring(w))); stead.tostring(w)));
end end
savemembers(h, self, name, false); stead.savemembers(h, self, name, false);
end end
function vobj_act(self, ...) function vobj_act(self, ...)

View file

@ -14,7 +14,7 @@ prefs = obj {
local name = get_savepath() .. '/prefs'; local name = get_savepath() .. '/prefs';
local h = stead.io.open(name,"w"); local h = stead.io.open(name,"w");
if not h then return false end if not h then return false end
savemembers(h, s, 'prefs', true); stead.savemembers(h, s, 'prefs', true);
h:flush(); h:flush();
h:close(); h:close();
end, end,

View file

@ -463,7 +463,7 @@ function obj_save(self, name, h, need)
print ("Warning: object "..name.." can not be saved!"); print ("Warning: object "..name.." can not be saved!");
return return
end end
savemembers(h, self, name, need); stead.savemembers(h, self, name, need);
end end
function obj_str(self) function obj_str(self)
@ -668,7 +668,7 @@ function list_save(self, name, h, need)
h:write(name.." = list({});\n"); h:write(name.." = list({});\n");
need = true; need = true;
end end
savemembers(h, self, name, need); stead.savemembers(h, self, name, need);
end end
function list_name(self, name, dis) function list_name(self, name, dis)
@ -931,7 +931,7 @@ function room_save(self, name, h, need)
print ("Warning: room "..name.." can not be saved!"); print ("Warning: room "..name.." can not be saved!");
return return
end end
savemembers(h, self, name, need); stead.savemembers(h, self, name, need);
end end
function room(v) --constructor function room(v) --constructor
@ -1166,7 +1166,7 @@ function phrase_save(self, name, h, need)
stead.tostring(self.ans), stead.tostring(self.ans),
stead.tostring(self.do_act))); stead.tostring(self.do_act)));
end end
savemembers(h, self, name, false); stead.savemembers(h, self, name, false);
end end
function phrase_look(self, n) function phrase_look(self, n)
@ -1417,7 +1417,7 @@ end
function player_save(self, name, h) function player_save(self, name, h)
h:write(tostring(name)..".where = '"..stead.deref(self.where).."';\n"); h:write(tostring(name)..".where = '"..stead.deref(self.where).."';\n");
savemembers(h, self, name, false); stead.savemembers(h, self, name, false);
end end
function player(v) function player(v)
@ -1699,7 +1699,7 @@ stead.clearvar = function(v)
end end
clearvar = stead.clearvar clearvar = stead.clearvar
function savemembers(h, self, name, need) stead.savemembers = function(h, self, name, need)
local k,v local k,v
for k,v in pairs(self) do for k,v in pairs(self) do
local need2 local need2
@ -1717,6 +1717,7 @@ function savemembers(h, self, name, need)
end end
end end
end end
savemembers = stead.savemembers;
stead.savevar = function(h, v, n, need) stead.savevar = function(h, v, n, need)
local r,f local r,f
@ -1778,7 +1779,7 @@ stead.savevar = function(h, v, n, need)
h:write(n.." = {};\n"); h:write(n.." = {};\n");
end end
savemembers(h, v, n, need); stead.savemembers(h, v, n, need);
return; return;
end end
@ -1864,7 +1865,7 @@ function game_save(self, name, file)
if file ~= nil then if file ~= nil then
file:write(name..".pl = '"..stead.deref(self.pl).."'\n"); file:write(name..".pl = '"..stead.deref(self.pl).."'\n");
savemembers(file, self, name, false); stead.savemembers(file, self, name, false);
return nil, true return nil, true
end end
@ -2280,7 +2281,7 @@ function allocator_save(s, name, h, need, auto)
end end
end end
end end
savemembers(h, s, name, false); stead.savemembers(h, s, name, false);
if s.auto_allocated then if s.auto_allocated then
s.auto_saved = true s.auto_saved = true
end end
@ -2310,7 +2311,7 @@ function vobj_save(self, name, h, need)
stead.tostring(w))); stead.tostring(w)));
end end
savemembers(h, self, name,false); stead.savemembers(h, self, name,false);
end end
function vobj_act(self, ...) function vobj_act(self, ...)
@ -2342,7 +2343,7 @@ function vroom_save(self, name, h, need)
if need then if need then
h:write(name.." = vroom('"..self.nam.."','"..stead.deref(self.where).."');\n"); h:write(name.." = vroom('"..self.nam.."','"..stead.deref(self.where).."');\n");
end end
savemembers(h, self, name,false); stead.savemembers(h, self, name,false);
end end
function vroom_enter(self, ...) function vroom_enter(self, ...)
@ -2929,7 +2930,7 @@ stead.objects = function(s)
end, end,
objects = { objects = {
save = function(self, name, h, need) save = function(self, name, h, need)
savemembers(h, self, name, true); stead.savemembers(h, self, name, true);
end, end,
}, },
}; };

View file

@ -13,7 +13,7 @@ function isForSave(k, v, s) -- k - key, v - value, s -- parent table
return stead.string.find(k, '_') == 1 return stead.string.find(k, '_') == 1
end end
function __vars_add(s, v, set) local function __vars_add(s, v, set)
local k, o local k, o
for k,o in pairs(v) do for k,o in pairs(v) do
if tonumber(k) then if tonumber(k) then
@ -34,7 +34,7 @@ function __vars_add(s, v, set)
end end
end end
function __vars_fill(v) local function __vars_fill(v)
local k,o local k,o
if type(v) ~= 'table' then if type(v) ~= 'table' then
return return

View file

@ -22,12 +22,12 @@ xact = function(n, f) -- just simple action!
end end
h:write(stead.string.format("%s = xact(%q, %s);\n", name, self.nam, f)) h:write(stead.string.format("%s = xact(%q, %s);\n", name, self.nam, f))
end end
savemembers(h, self, name, false); stead.savemembers(h, self, name, false);
end end
return v return v
end end
__do_xact = function(str, self) local __do_xact = function(str, self)
local aarg = {} local aarg = {}
local function parg(v) local function parg(v)
stead.table.insert(aarg, v); stead.table.insert(aarg, v);
@ -116,7 +116,7 @@ function xdsc(n)
if need then if need then
h:write(stead.string.format("%s = xdsc(%q);\n", name, self.disp)) h:write(stead.string.format("%s = xdsc(%q);\n", name, self.disp))
end end
savemembers(h, self, name, false); stead.savemembers(h, self, name, false);
end end
return obj(v) return obj(v)
end end