From 78487719618ccceeb3743985ac720a0c199db2f3 Mon Sep 17 00:00:00 2001 From: "p.kosyh" Date: Sun, 1 Nov 2009 18:41:14 +0000 Subject: [PATCH] safe lifeoff from life --- stead/stead.lua | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/stead/stead.lua b/stead/stead.lua index a1f1bff..8ab0d6f 100644 --- a/stead/stead.lua +++ b/stead/stead.lua @@ -1148,7 +1148,10 @@ end function game_life(self) local i,o local av,v - + + stead.in_life_call = true; + stead.lifes_off = list {}; -- lifes to off + for i,o in opairs(self.lifes) do local vv local pre @@ -1161,7 +1164,12 @@ function game_life(self) av = par(' ', av, vv); end end + end + stead.in_life_call = false; + for i,o in ipairs(stead.lifes_off) do + lifeoff(o); end + stead.lifes_off = nil; return v, av; end @@ -1727,6 +1735,10 @@ function lifeon(what) end function lifeoff(what) + if stead.in_life_call then + stead.lifes_off:add(what); + return + end game.lifes:del(what); end