From a4dedb53dc55a1f5034d9117637653e65093c6a3 Mon Sep 17 00:00:00 2001
From: "p.kosyh"
Date: Wed, 16 Jun 2010 10:25:29 +0000
Subject: [PATCH] roll back new goto
---
stead/goto.lua | 18 ++++++++++--------
1 file changed, 10 insertions(+), 8 deletions(-)
diff --git a/stead/goto.lua b/stead/goto.lua
index bb0fea8..95543cf 100644
--- a/stead/goto.lua
+++ b/stead/goto.lua
@@ -45,15 +45,17 @@ go = function (self, where, back)
self.where = deref(where);
end
- v, r = call(ref(where), 'enter', deref(was));
- if r == false then
- self.where = was;
- return par('^^', res, v), ret(r)
- end
+ if not back or not isDialog(ref(self.where)) or isDialog(ref(where)) then
+ v, r = call(ref(where), 'enter', deref(was));
+ if r == false then
+ self.where = was;
+ return par('^^', res, v), ret(r)
+ end
- need_scene = true;
- if ref(where) ~= ref(self.where) then -- jump !!!
- need_scene = false;
+ need_scene = true;
+ if ref(where) ~= ref(self.where) then -- jump !!!
+ need_scene = false;
+ end
end
res = par('^^',res,v);