From 40aed624e5bb14b062f5ecfddee9f8233e3ddd23 Mon Sep 17 00:00:00 2001 From: "p.kosyh" Date: Wed, 16 Jun 2010 10:09:41 +0000 Subject: [PATCH] check_version is now do require 'goto' --- stead/goto.lua | 22 ++++++++++------------ stead/stead.lua | 3 +++ 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/stead/goto.lua b/stead/goto.lua index 6db491b..bb0fea8 100644 --- a/stead/goto.lua +++ b/stead/goto.lua @@ -45,24 +45,23 @@ go = function (self, where, back) self.where = deref(where); 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; - end + 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; + end + res = par('^^',res,v); if not back then ref(where).__from__ = deref(was); end - ret() if not stead.in_goto_call then @@ -82,7 +81,6 @@ go = function (self, where, back) res = par('^^',res,v); end - if need_scene then -- or isForcedsc(ref(where)) then -- i'am not sure... return par('^^',res,ref(where):scene()); end diff --git a/stead/stead.lua b/stead/stead.lua index 6d1f50e..b410c7c 100644 --- a/stead/stead.lua +++ b/stead/stead.lua @@ -2409,6 +2409,9 @@ function check_version(v) if stead.version < v then error ([[The game requires instead engine of version ]] ..v.. [[ or higher. http://instead.googlecode.com]]) end + if v >= "1.2.0" then + require ("goto") + end end --- here the game begins