summaryrefslogtreecommitdiff
path: root/src/gamestate.h
diff options
context:
space:
mode:
authorMike Buland <eichlan@xagasoft.com>2011-12-29 14:49:02 -0700
committerMike Buland <eichlan@xagasoft.com>2011-12-29 14:49:02 -0700
commit162ccd918698f53ef9ff7ba80091969d93aa789d (patch)
treeb01d84a31a5fec69a07cdbef75fa777529dfacc7 /src/gamestate.h
parent533310f646f1b1a00250a361f627967c420f1eef (diff)
downloadstage-162ccd918698f53ef9ff7ba80091969d93aa789d.tar.gz
stage-162ccd918698f53ef9ff7ba80091969d93aa789d.tar.bz2
stage-162ccd918698f53ef9ff7ba80091969d93aa789d.tar.xz
stage-162ccd918698f53ef9ff7ba80091969d93aa789d.zip
Situation code actually processes now.
Most of the AstNode types are unhandled yet.
Diffstat (limited to 'src/gamestate.h')
-rw-r--r--src/gamestate.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gamestate.h b/src/gamestate.h
index 7a8f81a..83d8594 100644
--- a/src/gamestate.h
+++ b/src/gamestate.h
@@ -15,7 +15,12 @@ public:
15 15
16 void parse( class AstBranch *pAst ); 16 void parse( class AstBranch *pAst );
17 17
18 void init();
19
20 void gotoSituation( const Bu::String &sName );
21
18 Variable pop() { return lStack.peekPop(); } 22 Variable pop() { return lStack.peekPop(); }
23 Variable popDeref();
19 void push( const Variable &v ) { lStack.push( v ); } 24 void push( const Variable &v ) { lStack.push( v ); }
20 25
21 void callFunction( const Bu::String &sName ); 26 void callFunction( const Bu::String &sName );
@@ -31,6 +36,8 @@ public:
31 Variable getVariable( const Bu::String &sName, ScopeId id=sidLocal ); 36 Variable getVariable( const Bu::String &sName, ScopeId id=sidLocal );
32 void setVariable( const Bu::String &sName, const Variable &v, ScopeId id=sidLocal ); 37 void setVariable( const Bu::String &sName, const Variable &v, ScopeId id=sidLocal );
33 38
39 Variable deref( const Variable &src );
40
34private: 41private:
35 void parse( const AstBranch::NodeList &lCode ); 42 void parse( const AstBranch::NodeList &lCode );
36 43